Geplaatst: 26 september 200717 jaren comment_784960 Ik heb dit al script voor teleporteren naar anderen in het spel: if(strcmp(cmd, "/goto",true) == 0) { new Float:x, Float:y, Float:z; tmp = strtok(cmdtext, idx); new giveplayerid = strval(tmp); new giveplayername[30]; new playername[30]; new string1[256]; new string2[256]; GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername)); GetPlayerName(playerid, playername, sizeof(playername)); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_RED,"USAGE: /goto <id>"); } if(!IsPlayerConnected(giveplayerid)){ SendClientMessage(playerid,COLOR_RED,"Warning: That player is not connected!!"); } else if(IsPlayerConnected(giveplayerid)) { GetPlayerPos(giveplayerid, Float:x, Float:y, Float:z); SetPlayerPos(playerid, Float:x, Float:y, (Float:z + 3)); format(string1, sizeof(string1), "*** Je bent geteleporteerd naar %s (id: %d)!", giveplayername, giveplayerid); format(string2, sizeof(string2), "*** %s (id: %d) is naar jou geteleporteerd!", playername, playerid); SendClientMessage(playerid, COLOR_GREEN, string1); SendClientMessage(giveplayerid, COLOR_YELLOW, string2); } return 1; } Als ID 0 (1e speler in server) wilt teleporteren met bijv. /goto 1 dan teleporteert hij de heletijd naar zijn eigen ook met /goto 4 bijv. Wat zit er fout?
Geplaatst: 29 september 200717 jaren comment_787529 Probeer mijne goto eens bij mij doet ie het if(strcmp(cmd, "/goto", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /goto [playerid/PartOfName]"); return 1; } new Float:plocx,Float:plocy,Float:plocz; new plo; if(IsStringAName(tmp)) { plo = GetPlayerID(tmp); } else { plo = strval(tmp); } if (IsPlayerConnected(plo)) { if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1) { if(Spectate[playerid] != 255) { Spectate[playerid] = 256; } GetPlayerPos(plo, plocx, plocy, plocz); if(PlayerInfo[plo][pInt] > 0) { SetPlayerInterior(playerid,PlayerInfo[plo][pInt]); PlayerInfo[playerid][pInt] = PlayerInfo[plo][pInt]; PlayerInfo[playerid][pLocal] = PlayerInfo[plo][pLocal]; } if(PlayerInfo[playerid][pInt] == 0) { SetPlayerInterior(playerid,0); } if(plocz > 530.0 && PlayerInfo[plo][pInt] == 0) //the highest land point in sa = 526.8 { SetPlayerInterior(playerid,1); PlayerInfo[playerid][pInt] = 1; } if (GetPlayerState(playerid) == 2) { new tmpcar = GetPlayerVehicleID(playerid); SetVehiclePos(tmpcar, plocx, plocy+4, plocz); TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0; } else { SetPlayerPos(playerid,plocx,plocy+2, plocz); } SendClientMessage(playerid, COLOR_GRAD1, " You have been teleported"); } else { SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!"); } } else { format(string, sizeof(string), " %d is not an active player.", plo); SendClientMessage(playerid, COLOR_GRAD1, string); } return 1;
Geplaatst: 29 september 200717 jaren Auteur comment_787578 Krijg 26 errors C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(61) : error 017: undefined symbol "strtok" C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(61) : error 033: array must be indexed (variable "cmd") C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(62) : error 017: undefined symbol "strtok" C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(62) : error 033: array must be indexed (variable "tmp") C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(75) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(86) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(105) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(117) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(133) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(155) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(179) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(189) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(199) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(212) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(223) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(234) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(238) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(253) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(255) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(264) : error 017: undefined symbol "strtok" C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(264) : error 033: array must be indexed (variable "tmp") C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(267) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(271) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(276) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(281) : error 079: inconsistent return types (array & non-array) C:\DOCUME~1\ADMINI~1\BUREAU~1\Server\FILTER~1\command.pwn(285) : error 079: inconsistent return types (array & non-array) Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 26 Errors.
Geplaatst: 11 oktober 200717 jaren Auteur comment_795259 ZONDE OM NIEUW ONDERWERP EROVER TEMAKEN> Ik heb goto nodig met /yesgoto en /nogoto misschien kan iemand die vinden of zelf maken? Goto is voor iedereen command liefst zo: /goto ID
Geplaatst: 11 oktober 200717 jaren comment_795367 als je ff uitlegt wat je met /nogoto en /yesgoto wilt hebben.. if(!strcmp(cmdtext, "/goto", true, 5)) // wordt er "/goto" ingevoerd? { new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID new Float: PlayerPosition[ 3 ]; // float om spelers positie in op te slaan if(!IsPlayerConnected(targetPlayer)) return 1; // speelt targetPlayer uberhaubt wel? if(IsPlayerAdmin(playerid)) // is de speler die het cmd heeft ingevoerd admin? { GetPlayerPos(targetPlayer, PlayerPosition[ 0 ], PlayerPosition[ 1 ], PlayerPosition[ 2 ]); // krijg de positie van targetPlayer SetPlayerPos(playerid, PlayerPosition[ 0 ], PlayerPosition[ 1 ], PlayerPosition[ 2 ]); // zet de spelers positie naar die van targetPlayer } return 1; } dit is een voorbeeld van een /goto command zonder strtok te gebruiken, heb het alleen niet getest, dus het kan mss niet werken..
Geplaatst: 11 oktober 200717 jaren comment_795386 als je ff uitlegt wat je met /nogoto en /yesgoto wilt hebben.. >>een hele mooie code<< dit is een voorbeeld van een /goto command zonder strtok te gebruiken, heb het alleen niet getest, dus het kan mss niet werken.. Heb het snel even getest, en werkt perfect!
Geplaatst: 11 oktober 200717 jaren Auteur comment_795420 met /nogoto zet je goto naar jouw uit dus dan kunnen ze niet naar /goto doen en met /yesgoto zet je het weer aan.
Geplaatst: 11 oktober 200717 jaren comment_795464 Zet bovenaan je script: new AllowGoto[MAX_PLAYERS]; Zet bij public OnPlayerConnect: AllowGoto[playerid] = 1; // Standaard mogen admins wél naar spelers teleporten en bij het commando-gedeelte: if(!strcmp(cmdtext, "/goto", true, 5)) { new targetPlayer = strval(cmdtext[ 6 ]); new Float: PlayerPosition[ 3 ]; if(!IsPlayerConnected(targetPlayer)) return 1; if(IsPlayerAdmin(playerid)) if(AllowGoto[targetPlayer] == 0) { SendClientMessage(playerid, COLOR_RED, "The player doesn't want you to teleport to him/her"); return 1; } { GetPlayerPos(targetPlayer, PlayerPosition[ 0 ], PlayerPosition[ 1 ], PlayerPosition[ 2 ]); SetPlayerPos(playerid, PlayerPosition[ 0 ], PlayerPosition[ 1 ], (PlayerPosition[ 2 ]+10)); } return 1; } if (strcmp("/yesgoto", cmdtext, true) == 0) { AllowGoto[playerid] = 1; SendClientMessage(playerid, COLOR_GREEN, "Now everybody can teleport to you"); return 1; } if (strcmp("/nogoto", cmdtext, true) == 0) { AllowGoto[playerid] = 0; SendClientMessage(playerid, COLOR_GREEN, "Now nobody can teleport to you"); return 1; } Credits voor /goto commando voor Flame^ Ik heb hem getest, en het werkt prima. Bewerkt: 11 oktober 200717 jaren door Sandra18[NL]
Geplaatst: 11 oktober 200717 jaren Auteur comment_795482 Geen errors het doet het alleen server crasht na een halve minuut.
Geplaatst: 11 oktober 200717 jaren comment_795557 Geen errors het doet het alleen server crasht na een halve minuut. Heeft niks met dit commando te maken. Je zal zelf wel zonder script-ervaring hebben lopen 'knoeien' aan een script.
Geplaatst: 11 oktober 200717 jaren Auteur comment_795567 Lama Dont cry omdat je server niet liep met 1 a 2 mensen op 1 dag
Geplaatst: 11 oktober 200717 jaren comment_795581 LamaDont cry omdat je server niet liep met 1 a 2 mensen op 1 dag Daarom jank ik niet hoor, kon ik verwachten omdat mijn server maar een half uur per dag online was Maargoed, was meer bezig met leren scripten dat sa-mp zelf spelen. Tip: zou jij ook eens moeten doen Ook had ik besloten om beginnende scripters op weg te helpen. Op dat gebied heb ik meer succes gelukkig Grtz Bewerkt: 11 oktober 200717 jaren door Sandra18[NL]
Geplaatst: 12 oktober 200717 jaren comment_795595 Dont cry omdat je server niet liep met 1 a 2 mensen op 1 dag Om eerlijk te zijn zie ook alleen jou met nog iemand anders spelen op je server en voorde rest niemand anders.
Geplaatst: 12 oktober 200717 jaren comment_795606 Goh probeer je hier nu ook al ruzie te krijgen las vegas? (aka Dust) nogoto en yesgoto was een goed idee van mij he?, heb geen spijt van je ban Groeten namens alle spelers uit de Simbad De Zeeman server, Bewerkt: 12 oktober 200717 jaren door Simbad
Geplaatst: 12 oktober 200717 jaren Auteur comment_795621 Goh probeer je hier nu ook al ruzie te krijgen las vegas? (aka Dust)nogoto en yesgoto was een goed idee van mij he?, heb geen spijt van je ban Groeten namens alle spelers uit de Simbad De Zeeman server, zijn er ook 3 jij chris en snakkerd Ban johan nou is lukt je toch niet Dont cry omdat je server niet liep met 1 a 2 mensen op 1 dag Om eerlijk te zijn zie ook alleen jou met nog iemand anders spelen op je server en voorde rest niemand anders. HIj staat ook bijna niet aan geen zin om zelf tehosten w8 tot ik hem kan hosten maja paypal is nietzo snel Zo goed? Yesgoto en Nogoto werkt niet eens Bewerkt: 12 oktober 200717 jaren door Las Vegas
Geplaatst: 12 oktober 200717 jaren comment_795622 Dat is wat jij denkt en zegt, en nogoto en yesgoto werkt prima maar jij denkt heel vaak dingen te weten, of je wilt vaak dingen direct weten, en als je iets langer na denkt had je daar zelf op kunnen komen en dat scheelt dit forum een hoop nutteloze topics, tenminste het viel me op sinds je uit me server bent verwijderd hoeveel topics er hier zijn aangemaakt door jou. Edit: oja en btw waarom zou ik johan niet kunnen bannen, hij mag dan een dynamisch ip hebben maar een subnet ban kom je niet onderuit lijkt mij.. ( als je uberhoupt snapt wat ik bedoel ) Bewerkt: 12 oktober 200717 jaren door Simbad
Ik heb dit al script voor teleporteren naar anderen in het spel:
if(strcmp(cmd, "/goto",true) == 0)
{
new Float:x, Float:y, Float:z;
tmp = strtok(cmdtext, idx);
new giveplayerid = strval(tmp);
new giveplayername[30];
new playername[30];
new string1[256];
new string2[256];
GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
GetPlayerName(playerid, playername, sizeof(playername));
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_RED,"USAGE: /goto <id>");
}
if(!IsPlayerConnected(giveplayerid)){
SendClientMessage(playerid,COLOR_RED,"Warning: That player is not connected!!");
}
else if(IsPlayerConnected(giveplayerid)) {
GetPlayerPos(giveplayerid, Float:x, Float:y, Float:z);
SetPlayerPos(playerid, Float:x, Float:y, (Float:z + 3));
format(string1, sizeof(string1), "*** Je bent geteleporteerd naar %s (id: %d)!", giveplayername, giveplayerid);
format(string2, sizeof(string2), "*** %s (id: %d) is naar jou geteleporteerd!", playername, playerid);
SendClientMessage(playerid, COLOR_GREEN, string1);
SendClientMessage(giveplayerid, COLOR_YELLOW, string2);
}
return 1;
}
Als ID 0 (1e speler in server) wilt teleporteren met bijv. /goto 1 dan teleporteert hij de heletijd naar zijn eigen ook met /goto 4 bijv.
Wat zit er fout?