Beiträge von Weihnachtsmann
-
-
Der Server wird Erfolg haben
(Ironie off)
-
Guten Tag,
Ich hab ein problem und zwar wenn man ingame ist und /afk macht steht dort nur Verwendung: /afk und fertighier mein Code
ocmd:afk(playerid,params[])
{
if(sscanf(params,"u"))return SendClientMessage(playerid,ROT,"Verwendung: /afk");
SetPlayerPos(playerid,1571.4956,-1707.5524,35.9881);
SetPlayerCameraPos(playerid,1569.3649,-1710.6226,35.9881);
SetPlayerCameraLookAt(playerid,1569.3649,-1710.6226,35.9881);
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid,GOLD,"Du befindest dich nun im AFK-Modus um aus dem AFK-Modus zu gehen benutze /back");
GameTextForPlayer(playerid,"Du bist AFK",3000,1);
return 1;
}Guten Tag,
Ich hab ein problem und zwar wenn man ingame ist und /afk macht steht dort nur Verwendung: /afk und fertighier mein Code
ocmd:afk(playerid,params[])
{
if(sscanf(params,"u"))return SendClientMessage(playerid,ROT,"Verwendung: /afk");
SetPlayerPos(playerid,1571.4956,-1707.5524,35.9881);
SetPlayerCameraPos(playerid,1569.3649,-1710.6226,35.9881);
SetPlayerCameraLookAt(playerid,1569.3649,-1710.6226,35.9881);
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid,GOLD,"Du befindest dich nun im AFK-Modus um aus dem AFK-Modus zu gehen benutze /back");
GameTextForPlayer(playerid,"Du bist AFK",3000,1);
return 1;
}
if(sscanf(params,"u"))return SendClientMessage(playerid,ROT,"Verwendung: /afk"); entfernen - fertig -
Zitat
Mal abgesehen davon rot für Lewandowski eigentlich.
Mal abgesehn davon rot für Ribery eigentlich?! -
abgesehen davon das der aufbau deines Befehls völlige scheiße ist. Poste doch mal dein array "duell" so wie du es deklariert hast.
Man lernt- hab das Problem schon behoben bekommen.
Danke -
Wieso wird man geportet wenn man /accept duell eingibt obwohl man keine 'Einladung erhalten hat? vorhin ging es aber jetzt habe ich accept duell genannt und jetzt gehts net mehr, man wird einfach ohne einladung geportet.
also kann mann die ganze zeit /accept duell eingeben
ocmd:accept(playerid,params[])
{
new str[64],cmd[30];
new Random = random(sizeof(onespawn));
if(duell[playerid] == INVALID_PLAYER_ID) return SendClientMessage(playerid,GRAU,"Keine Einladung bekomme");
if(strcmp(cmd,"duell",true) == 0)
{
if(sscanf(params,"s[30]",cmd)) return SendClientMessage(playerid,GRAU,"Benutze: /accept [duell]");
SetPlayerInterior(playerid,6);
SetPlayerInterior(duell[playerid],6);
SetPlayerPos(duell[playerid],onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(duell[playerid],24,1337);
induell[playerid] = duell[playerid];
induell[duell[playerid]] =playerid;
}
return 1;
} -
Mach noch unter OnPlayerConnect
"induell[playerid] = INVALID_PLAYER_ID;"
Das sollte gehen
Was ist bei OnPlayerDeath fail? manchmal wird der Killer nicht neu gespawnt?if(duell[playerid] == 1 || duell[killerid] == 1)
{
format(str,128,"{FFBE00}[DUELL]{FEFEFE} Der Spieler %s hat das Duell gegen %s gewonnen!",PlayerName(killerid),PlayerName(playerid));
SendClientMessageToAll(DUNKELGELB,str);
SpawnPlayer(playerid);
SpawnPlayer(killerid);
induell[playerid] = 0;
induell[killerid] = 0;
duell[killerid] = 0;
duell[playerid] = 0;
} -
Dynamische Systeme
Häuser ingame erstellen, Bize´s ingame erstellen.
Gangfight System mit Gebieten
Gangwarsystem gegen andere Gangs (Streetfight). -
Jap
Da kommt ist im Duell wenn ich einen Einladen will obwohl er kein Duell hat -
da bidde ;D
OnPlayerConnect(playerid)
{
duell[playerid] = INVALID_PLAYER_ID;
}ocmd:duell(playerid,params[])
{
new pID,str[128];
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Spieler ist nicht online!");
if(playerid == pID) return SendClientMessage(playerid,GRAU,"[FEHLER] Du kannst dich nicht selbst einladen!");
if(induell[pID] != INVALID_PLAYER_ID) return SendClientMessage(playerid,GRAU,"Ist im Duell!");
format(str,128,"Spieler %s fordert dich zu einem Duell heraus - /accept duell um anzunehmen!",PlayerName(playerid));
SendClientMessage(pID,TURKIS,str);
format(str,128,"Du hast eine Duell Anfrage an %s gesendet!",PlayerName(pID));
SendClientMessage(playerid,TURKIS,str);
duell[pID]=playerid;
return 1;
}
ocmd:accept(playerid,params[])
{
new str[64],pID;
new Random = random(sizeof(onespawn));
if(duell[playerid] == INVALID_PLAYER_ID) return SendClientMessage(playerid,GRAU,"Keine Einladung bekomme");
SetPlayerInterior(playerid,6);
SetPlayerInterior(duell[playerid],6);
SetPlayerPos(duell[playerid],onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(duell[playerid],24,1337);
induell[playerid] = duell[playerid];
induell[duell[playerid]] =playerid;
return 1;
}Sollte so funktionieren
Vielen Dank, aber beim Befehl wird pID nicht benutzt kann ich entfernen ge? -
Zeig mir mal schnell den Code wo man jemanden eine Anfrage sendet
ich schreib dir den Code dann richtig um für accept
Aber dann bitte nicht einfach reinkopieren sondern die Unterschiede anschauen
Klar ich will auch was lernenoben im script
new induell[MAX_PLAYERS];
new duell[MAX_PLAYERS];OnPlayerDeath
if(duell[playerid] == 1 || duell[killerid] == 1)
{
format(str,128,"{FFBE00}[DUELL]{FEFEFE} Der Spieler %s hat das Duell gegen %s gewonnen!",PlayerName(killerid),PlayerName(playerid));
SendClientMessageToAll(DUNKELGELB,str);
SpawnPlayer(playerid);
SpawnPlayer(killerid);
induell[playerid] = 0;
induell[killerid] = 0;
duell[killerid] = 0;
duell[playerid] = 0;
}ocmd:duell(playerid,params[])
{
new pID,str[128];
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Spieler ist nicht online!");
if(playerid == pID) return SendClientMessage(playerid,GRAU,"[FEHLER] Du kannst dich nicht selbst einladen!");
if(induell[pID] == 1) return SendClientMessage(playerid,GRAU,"Ist im Duell!");
format(str,128,"Spieler %s fordert dich zu einem Duell heraus - /accept duell um anzunehmen!",PlayerName(playerid));
SendClientMessage(pID,TURKIS,str);
format(str,128,"Du hast eine Duell Anfrage an %s gesendet!",PlayerName(pID));
SendClientMessage(playerid,TURKIS,str);
duell[pID]=1;
return 1;
}
ocmd:accept(playerid,params[])
{
new str[64],pID;
new Random = random(sizeof(onespawn));
if(duell[playerid] == 0) return SendClientMessage(playerid,GRAU,"Keine Einladung bekomme");
SetPlayerInterior(playerid,6);
SetPlayerInterior(pID,6);
SetPlayerPos(pID,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(pID,24,1337);
induell[playerid] =1;
induell[pID] =1;
return 1;
} -
Pablo bitte... lösch das wieder XD
Du erstellt de Variable pID
Die hat somit den Wert "0" (Standard halt)jetzt fragst du die Variablen von ID 0 ab usw.
Du musst die ID einlesen mit sscanf oder so halt
Jedenfalls fragst du so immer id 0 abWenn du ID 0 bist wirst du wegen "playerid" geportet und dann nocheinmal wegen "pID"
Je nachdem wie du das machen willst
Gruß
Mit sscanf? - Blackout sry xd Kannst du mir eine Vorlage geben? -
Vielleicht weil pID erstellt aber nicht definiert wird?
Gruß
Vielleicht weil pID erstellt aber nicht definiert wird?
Gruß
wie definiert?
-
Wieso wird der Anfrager nicht mitgeportet? isn Duellsystem.
Ich werde geportet der es angenommen hat aber nicht der die Anfrage geschickt hat
ocmd:accept(playerid,params[])
{
new str[64],pID;
new Random = random(sizeof(onespawn));
if(duell[playerid] == 1 || duell[pID] == 1)
{
SetPlayerInterior(playerid,6);
SetPlayerInterior(pID,6);
SetPlayerPos(pID,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(pID,24,1337);
induell[playerid] =1;
induell[pID] =1;
}else{
SendClientMessage(playerid,GRAU,"Sie haben keine Einladung erhalten!");
}
return 1;
} -
Hätte auch Bock war auf Evielas Level 75 aber wurde gebannt
-
Mein Post war auf den ersten Post bezogen da ich diesen geschrieben habe bevor du deinen abgeschickt hast.
Zudem fehlt dennoch die global definierte targetid.
ne pID nicht duell
Stimmt bin verpallt haha ;/ -
if(sscanf(params,"u",Duell[pID][pInvite])) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");
und das
if(sscanf(params,"u",Duell[pID][pInvite])) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");zu
if(sscanf(params,"u",duell)) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]"); ge -
Ich wollte ein Duellsystem scripten, womit man einen Spieler eine Einladung senden kann, der Spieler die dann animmt und die beiden in einen Raum geportet werden.
Ich bekomme es aber mit dem /acccept Befehl und halb /duell Befehl nicht klar.
Wie können nur playerid(der einlädt) pID(der eingeladen wurde) in einen Raum geporten werden?bis jetzt
ocmd:duell(playerid,params[])
{
new str[64],pID;
if(sscanf(params,"u",Duell[pID][pInvite])) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Spieler ist nicht online!");
if(playerid == pID) return SendClientMessage(playerid,GRAU,"[FEHLER] Du kannst dich nicht selbst einladen!");
format(str,128,"Spieler %s fordert dich zu einem Duell heraus - /accept duell um anzunehmen!",PlayerName(playerid));
SendClientMessage(pID,TURKIS,str);
return 1;
}
ocmd:accept(playerid,params[])
{
new str[64];
return 1;
}mfg
-
Wie würde es gehen, ich will ein Anti Spam entwickeln, dies soll so aussehen.
Spieler Spammt 3Texte in 2Sekuden -> Eine Message das er aufhören soll 1/3 Warns,
Wenn er dann halt weiter spammt 2/3 Warns und dann 3/3Warns -> kick.
Aber wenn er Warns hat und 1Minute nicht mehr spammt, sollen die Warns verschwindenWie würde das gehen?
-
Unnötige Zeilen verschwendung.So müsste es gehen
if(GetPlayerScore(playerid) <= 3)return RemovePlayerFromVehicle(playerid);