Ich denke mal da du ein GF benutzt, existiert bereits eine for-Schleife, ändere playerid in i
also so:
if(PlayerInfo[i][pLevel] == 1)
{
bonus = 3200;
}
mfg.^^
Ich denke mal da du ein GF benutzt, existiert bereits eine for-Schleife, ändere playerid in i
also so:
if(PlayerInfo[i][pLevel] == 1)
{
bonus = 3200;
}
mfg.^^
Du musst den stock ganz unten in dein Script einfügen, sodass es in keinem Callback (public) steht !
mfg.
Ich habe aber ein GF und wenn ich das playerid nicht definiere gehts nicht
Ja sage mal, kannst du lesen oder willst du mich hier verarschen
Lies es nochmal und frag google, was das genau ist:
und playerid, deklariert man nicht mit new playerid....entweder du nutzt es als Parameter oder du musst eine for/while Schleife machen !
mfg.
Ja ich habe in GF aber mann muss noch playerid definieren // Kaliber muss davor noch ein ! ???
Du hast doch meinen Code gesehen, mach das einfach so und nimm diese >= raus, das ist quatsch !
und playerid, deklariert man nicht mit new playerid....entweder du nutzt es als Parameter oder du musst eine for/while Schleife machen !
mfg.
Alles Geklappt aber ich ill es ingame nicht bonus nennen hat jmd ein Vorschlag wie man es nennt
Gehalt ?
Lohn ?
mfg.
@PuSchKiiN_x3
Das ist Blödsinn mit deinen returns, damit beendest du die if-Abfrage und nur 1x = ist auch falsch und 2 Klammern am ende auch !
Wenn, dann so:
if(strcmp(cmd,"/bonus",true)==0)
{
if(!IsPlayerConnected(playerid)) return 1;
if(SpielerInfo[playerid][pLevel] == 1)
{
GivePlayerMoney(playerid,3200);
}
else if(SpielerInfo[playerid][pLevel] == 2)
{
GivePlayerMoney(playerid,3800);
}
else if(SpielerInfo[playerid][pLevel] == 3)
{
GivePlayerMoney(playerid,4400);
}
else if(SpielerInfo[playerid][pLevel] == 4)
{
GivePlayerMoney(playerid,5200);
}
else if(SpielerInfo[playerid][pLevel] == 5)
{
GivePlayerMoney(playerid,5800);
}
return 1;
}
Du musst natürlich deins löschen
Kann ich das da genau hinfügen oder muss ich dafür ne eigene function/stock erstellen
Kannst das direkt einfügen...
mfg.
Schreibe die Abfrage mal so:
stock GetPlayerName(playerid)
{
new name[24];
GetPlayerName(playerid, name, 24);
return name;
}
mfg.
So:
new bonus = 0;
if(GetPlayerLevel(playerid) == 1)
{
bonus = 3200;
}
else if(GetPlayerLevel(playerid) == 2)
{
bonus = 3800;
}
else if(GetPlayerLevel(playerid) == 3)
//usw...
mfg.
if(strcmp(cmd, "/chat", true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, rot, "Verwendung: /chat[text]");
new string[128];
format(string, 128,"SERVER: %s",result);
SendClientMessageToAll(rot, string);
return 1;
}
mfg.
Wenn du ocmd nutzt, dann so:
ocmd:chat(playerid, params[])
{
new text[64], string[128];
if(sscanf(params,"s",text)) return SendClientMessage(playerid,rot,"Verwendung: /Chat [text]");
format(string,128,"SERVER: %s",text);
SendClientMessageToAll(rot, string);
return 1;
}
mfg.
Hast du den Ordner "Accounts" in den scriptfiles angelegt ?
mfg.
Der Befehl ist ja mal Schwachsinn
Schreibe den so:
CMD:ban(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin !");//Das ist jetzt rcon; ersetze es
new pID, reason[64], string[128], name[24], name1[24];
if(sscanf(params,"us",pID,reason)) return SendClientMessage(playerid,COLOR_RED,"Verwendung: /ban [playerid] [Grund]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler ist nicht online !");
if(pID == playerid) return SendClientMessage(playerid,COLOR_RED,"Du kannst dich nicht selber bannen !");
GetPlayerName(playerid, name, 24);
GetPlayerName(pID, name1, 24);
PlayerInfo[pID][pBanned] = 1;
format(string, 128,"Admin %s hat Spieler %s gebannt ! Grund: %s",name,name1,reason);
SendClientMessage(playerid,COLOR_RED,string);
Ban(pID);
return 1;
}
mfg.
Ja weil das die Standart map ist.
Das ist was anderes
Ja
Schau doch aufs Bild, seine Objekte werden alle gestreamt, aber der Boden (die Standartmap) ist unsichtbar
mfg.
Alles anzeigenDarum sind die ja auch interiorunabhägig
Ursachen können sein:
- das Objekt ist in bestimmten Winkeln der Kamera nicht sichtbar
- das Objekt ist in SA:MP nicht sichtbar
- das Objekt ist zu hoch
Aber es ist ja allgemein nicht da, deswegen tipp ich ehr auf eins oder zwei
Du Irrst, geh mal nach San Fierro und setz mal deinen Interior auf 1 und die wirst nur 1/4 der Map sehen
mfg.
Objekte sind Interior unabhängig, sofern sie nicht von einem Streamer erstellt werden.
Ja, deshalb sieht er ja auch seine Objekte, aber er redet von der Rest Map und die sieht man wenn man in einem Interior > 0 ist teilweise nicht
mfg.
Der stock ist falsch, schreibe den so:
stock SF8Member(playerid)
{
if(PlayerInfo[playerid][pMember] ==1 || PlayerInfo[playerid][pLeader] ==1) return 1;
return 0;
}
und die Abfrage ist auch falsch
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
if(GetPlayerVehicleID(playerid) == IsASF8Car(GetPlayerVehicleID(playerid)))
{
if(!SF8Member(playerid))
{
SendClientMessage(playerid,ROT,"Du bist kein Mitglied der SF8");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
}
return 1;
}
mfg.
Weil du in einem Interior bist
Schreibe das in dein Script, wenn du spawnst:
SetPlayerInterior(playerid, 0);
mfg.
Nicht möglich, da der Checkpoint im Wasser oder im Haus liegen könnte und man nicht immer die Z Koordinate bestimmen kann, d.h. man weiß nicht ob der Checkpoint jetzt perfekt auf dem Boden liegt oder unter der Erde, aus diesem Grund ist das nicht möglich, aber du kannst auch viele Routen speichern einfach und die dann zufällig auswählen lassen
Was das zufällig betrifft findest du hier alles: Random
mfg.
Leute wenn ihr keine Ahnung habt einfach mal leise sein
Hier, dein Cuff Befehl an sich ist schon extrem buggy, schreibe den mal so:
ocmd:cuff(playerid,params[])
{
new pID, Float:X,Float:Y,Float:Z, string[128];
if(IsSpielerInFraktion(playerid,1) || IsSpielerInFraktion(playerid,3))return SendClientMessage(playerid,Grau,"Du bist nicht beim SAPD/FBI");
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,Grau,"Benutze: /cuff [ID/Teilname]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Grau,"Dieser Spieler ist nicht online !");
if(pID == playerid) return SendClientMessage(playerid,Grau,"Du kannst dich nicht selber fesseln !");
if(GetPVarInt(pID,"Cuff")==1) return SendClientMessage(playerid,Grau,"Der angegebene Spieler hat schon Handschellen an den Händen.");
GetPlayerPos(playerid,X,Y,Z);
if(!IsPlayerInRangeOfPoint(pID, 10.0, X,Y,Z))return SendClientMessage(playerid,Grau,"Der Spieler ist nicht in deiner Nähe.");
SetPlayerSpecialAction(pID, SPECIAL_ACTION_CUFFED);
format(string,sizeof(string),"%s hat den Verbrecher %s Handschellen angelegt.",SpielerName(playerid),SpielerName(pID));
for(new i; i<100; i++)
{
if(!IsPlayerInRangeOfPoint(i, 10.0, X, Y, Z)) continue;
SendClientMessage(i, Grau, string);
}
return 1;
}
mfg.
//Edit:
if-Abfragen