Jump to content
Geplaatst:
comment_1031454

Hoi,

Wat is er mis met mijn /goto commando :?

if(!strcmp(cmdtext, "/goto", true, 5))
   {
       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?
       {
       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;
   }

Hij doet het namelijk niet.

gr Steve

Featured Replies

Geplaatst:
comment_1031470

Hmm probeer dit eens:

if(!strcmp(cmdtext, "/goto", true, 5))
{
new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID
new Float:X, FLoat:Y, Float:Z;
if(IsPlayerConnected(targetPlayer))
{
 GetPlayerPos(targetPlayer, Float:X, FLoat:Y, Float:Z); // krijg de positie van targetPlayer
 SetPlayerPos(playerid,Float:X, FLoat:Y, Float:Z); // zet de spelers positie naar die van targetPlayer
}
return 1;
}

Geplaatst:
  • Auteur
comment_1031501

Bedankt, maar ik weet al waar het aan lag.

Om te testen heb ik gebruikt, het woord /ga

Maar in de regel: if(!strcmp(cmdtext, "/ga", true, 5)), staat een nr 5.

Op het moment dat ik test met if(!strcmp(cmdtext, "/goto", true, 5)), doet hij het wel.

Alleen wil ik niet precies, op de zelfde plek uitkomen, kan ik ook bv 2 autolengte`s,

verderop komen?

Geplaatst:
comment_1031508

Ik krijg error bij je code jovu. Volgens mij zijn jullie strtok vergeten

Hier de mijne:

Dit boven aan je script:

#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_GREEN 0x00FF00AA

Dit bij OnPlayerCommandTekst-CallBack

if(strcmp(cmd,"/goto",true) == 0)
{
new tmp[256], targetplayer;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"SERVER: /goto [id]");
targetplayer = strval(tmp);
if(!IsPlayerConnected(targetplayer)) return SendClientMessage(playerid,COLOR_WHITE,"SERVER: Invalid ID.");
new Float:X, Float:Y, Float:Z;
GetPlayerPos(targetplayer,X,Y,Z);
if(IsPlayerInAnyVehicle(playerid))
{
	SetVehiclePos(GetPlayerVehicleID(playerid),X+2,Y,Z);
	SendClientMessage(playerid,COLOR_YELLOW,"You have been teleported");
}
else
{
	SetPlayerPos(playerid,X,Y,Z+2.5);
	SendClientMessage(playerid,COLOR_YELLOW,"You have been teleported");
}
return 1;
}

Bewerkt: door Juwayri

Geplaatst:
comment_1031523
Bedankt, maar ik weet al waar het aan lag.

Om te testen heb ik gebruikt, het woord /ga

Maar in de regel: if(!strcmp(cmdtext, "/ga", true, 5)), staat een nr 5.

Op het moment dat ik test met if(!strcmp(cmdtext, "/goto", true, 5)), doet hij het wel.

Alleen wil ik niet precies, op de zelfde plek uitkomen, kan ik ook bv 2 autolengte`s,

verderop komen?

Dat staat er bij mij al in ;)

Geplaatst:
  • Auteur
comment_1031553
Bedankt, maar ik weet al waar het aan lag.

Om te testen heb ik gebruikt, het woord /ga

Maar in de regel: if(!strcmp(cmdtext, "/ga", true, 5)), staat een nr 5.

Op het moment dat ik test met if(!strcmp(cmdtext, "/goto", true, 5)), doet hij het wel.

Alleen wil ik niet precies, op de zelfde plek uitkomen, kan ik ook bv 2 autolengte`s,

verderop komen?

Dat staat er bij mij al in ;)

Wat bedoel je,..

die 2 autolengte`s, of die /goto

Geplaatst:
comment_1031572
Bedankt, maar ik weet al waar het aan lag.

Om te testen heb ik gebruikt, het woord /ga

Maar in de regel: if(!strcmp(cmdtext, "/ga", true, 5)), staat een nr 5.

Op het moment dat ik test met if(!strcmp(cmdtext, "/goto", true, 5)), doet hij het wel.

Alleen wil ik niet precies, op de zelfde plek uitkomen, kan ik ook bv 2 autolengte`s,

verderop komen?

Dat staat er bij mij al in ;)

Wat bedoel je,..

die 2 autolengte`s, of die /goto

beide

Geplaatst:
comment_1031575

Als je zijn script eventjes doorleest, kun je het antwoord al snel vinden.

if(IsPlayerInAnyVehicle(playerid))
{
	SetVehiclePos(GetPlayerVehicleID(playerid),X+2,Y,Z);
	SendClientMessage(playerid,COLOR_YELLOW,"You have been teleported");

}

Bij de X komt er 2 bij op.

EDIT: Jaja, Juwayri is snel tegenwoordig :Y

Bewerkt: door jovu123

Geplaatst:
comment_1031704
 	if(!strcmp(cmdtext, "/goto", true, 5))
{
		if(!strlen(tmp)){
	SendClientMessage(playerid, 0xD2691EAA, "USAGE: /goto (id)");
	return 1;
	}
	new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID
	new Float:X, FLoat:Y, Float:Z; // float om spelers positie in op te slaan
	if(!IsPlayerConnected(targetPlayer)) return 1; // speelt targetPlayer uberhaubt wel?
	{
		GetPlayerPos(targetPlayer, X, X, X); // krijg de positie van targetPlayer
		SetPlayerPos(playerid,X, Y, Z+2.5); // zet de spelers positie naar die van targetPlayer
	}
	return 1;
}

Geplaatst:
  • Auteur
comment_1035235

C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(40) : warning 213: tag mismatch

C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(41) : warning 213: tag mismatch

C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(50) : warning 209: function "OnPlayerCommandText" should return a value

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

3 Warnings.

public OnPlayerCommandText(playerid, cmdtext[])
if(!strcmp(cmdtext, "/goto", true, 5))
   {

       new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID
       new Float:X, FLoat:Y, Float:Z; // float om spelers positie in op te slaan
       if(!IsPlayerConnected(targetPlayer)) return 1; // speelt targetPlayer uberhaubt wel?
       {
       GetPlayerPos(targetPlayer, X, Y, Z); // krijg de positie van targetPlayer
       SetPlayerPos(playerid,X, Y, Z+2.5); // zet de spelers positie naar die van targetPlayer
       }
       return 1;
   }

Dit krijg ik te zien, wat gaat er nu fout??

Geplaatst:
  • Auteur
comment_1035287
C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(40) : warning 213: tag mismatch

C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(41) : warning 213: tag mismatch

C:\PROGRA~1\ROCKST~1\GTASAN~1\TESTSE~1\ORIGIN~1\samp\FILTER~1\PROJEC~1.PWN(50) : warning 209: function "OnPlayerCommandText" should return a value

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

3 Warnings.

public OnPlayerCommandText(playerid, cmdtext[])
if(!strcmp(cmdtext, "/goto", true, 5))
   {

       new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID
       new Float:X, FLoat:Y, Float:Z; // float om spelers positie in op te slaan
       if(!IsPlayerConnected(targetPlayer)) return 1; // speelt targetPlayer uberhaubt wel?
       {
       GetPlayerPos(targetPlayer, X, Y, Z); // krijg de positie van targetPlayer
       SetPlayerPos(playerid,X, Y, Z+2.5); // zet de spelers positie naar die van targetPlayer
       }
       return 1;
   }

Dit krijg ik te zien, wat gaat er nu fout??

De derde heb ik opgelost, met het commando af te sluiten, met return 0

  • 2 weken later...
Geplaatst:
comment_1043778

bij mij krijg ik 1 error.. weet niet wat ik fout doe

if(!strcmp(cmdtext, "/goto", true, 5))
{
	if(!strlen(tmp)){
	SendClientMessage(playerid, 0xD2691EAA, "USAGE: /goto (id)");
	return 1;
	}
	new targetPlayer = strval(cmdtext[ 6 ]); // cmdtext[ 6 ] > alles wat na "/goto " wordt getypt > daar de waarde van pakken (strval) = targetID
	new Float:X, FLoat:Y, Float:Z; // float om spelers positie in op te slaan
	if(!IsPlayerConnected(targetPlayer)) return 1; // speelt targetPlayer uberhaubt wel?
	{
		GetPlayerPos(targetPlayer, X, X, X); // krijg de positie van targetPlayer
		SetPlayerPos(playerid,X, Y, Z+2.5); // zet de spelers positie naar die van targetPlayer
	}
	return 1;
	}
	return 0;
}

error is dit : D:\Games\SAMP-server\pawno\server.pwn(380) : warning 213: tag mismatch

regel 380 is deze: SetPlayerPos(playerid,X, Y, Z+2.5); // zet de spelers positie naar die van targetPlayer

iemand die het weet? ^_^

invix

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.