strtok problem
#1

Hi.
i have been scripting yestarday and i didn't had problem with that i wake up and i got this problem

Quote:

C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(509) : error 017: undefined symbol "strtok"
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(509) : error 033: array must be indexed (variable "cmd")
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(767) : error 017: undefined symbol "strtok"
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(767) : error 033: array must be indexed (variable "tmp")
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(774) : error 017: undefined symbol "strtok"
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(774) : error 033: array must be indexed (variable "tmp")
C:\Users\Remulis\Desktop\MoDDe Serveris\gamemodes\sf.pwn(500) : warning 203: symbol is never used: "idx"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


6 Errors.

Reply
#2

could you give a more detailed explination and maybe a part of code on which lines are the errors, please?

oo, reamis
Reply
#3

you either missed a bracket, or you haven;t defined strtok at all, please show the code.
Reply
#4

He doesn't have anything that related to strtok/cmd variable/tmp variable in his gamemode.
Reply
#5

Quote:

cmd = strtok(cmdtext, idx);

if (strcmp(cmdtext, "/meniu", true)==0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "|----------Meniu----------|");
SendClientMessage(playerid, COLOR_LIME, "Drag: /drag");
SendClientMessage(playerid, COLOR_LIME, "Stunt: /stunt");
SendClientMessage(playerid, COLOR_LIME, "Drift: /drift");
SendClientMessage(playerid, COLOR_LIME, "Darbai: /darbai");
SendClientMessage(playerid, COLOR_LIME, "Komandos: /komandos");
SendClientMessage(playerid, COLOR_RED, "|-------------------|");
return 1;
}

if (strcmp(cmdtext, "/drag", true)==0)
{
SetPlayerPos(playerid, -2681.8916, 1296.6348, 55.690;
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Drag zonoje, jei nori ir tu rasyk /drag", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/stunt", true)==0)
{
SetPlayerPos(playerid, -1373.3844,-258.4916,14.0000);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Stunt zonoje, jei nori ir tu rasyk /stunt", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/sf", true)==0)
{
SetPlayerPos(playerid, -1915.4753,278.5371,41.0469);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Sf mieste, jei nori ir tu rasyk /sf", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/lv", true)==0)
{
SetPlayerPos(playerid, 1430.7799,2653.1604,11.3926);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Lv mieste, jei nori ir tu rasyk /lv", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/ls", true)==0)
{
SetPlayerPos(playerid, 1734.6804,-1944.9839,13.5646);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Ls mieste, jei nori ir tu rasyk /ls", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/tune1", true)==0)
{
SetPlayerPos(playerid, -1935.9851,231.7287,34.1563);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Tune1, jei nori ir tu rasyk /tune1", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if(strcmp(cmdtext, "/nrg", true)==0)
{
if( PVeh[playerid] > 0 )
{
if(GetPlayerVehicleID(playerid) != PVeh[playerid])
{
if(IsPlayerInAnyVehicle(playerid))
{
RemovePlayerFromVehicle(playerid);
}
new Float: X, Float: Y, Float: Z, Float: Ang, Name[30];
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, Ang);
GetPlayerName(playerid, Name, sizeof( Name ));
PutPlayerInVehicle(playerid, PVeh[playerid], 0);
SetVehiclePos(PVeh[playerid], X, Y, Z);
SetVehicleZAngle(PVeh[playerid], Ang);
SetVehicleHealth(PVeh[playerid], 1000.0);
LinkVehicleToInterior(PVeh[playerid], GetPlayerInterior(playerid));
PlayerPlaySound(playerid, 1085, 0.0, 0.0, 0.0);
}
else
{
SendClientMessage(playerid,COLOR_RED, "Tu jau turi NRG.");
}
}
else
{
if(IsPlayerInAnyVehicle(playerid))
{
RemovePlayerFromVehicle(playerid);
}
new Float: X, Float: Y, Float: Z, Float: Ang, Name[30];
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, Ang);
GetPlayerName(playerid, Name, sizeof( Name ));
PVeh[playerid] = CreateVehicle(522, X, Y , Z, Ang, 75,3, 5000000);
PutPlayerInVehicle(playerid, PVeh[playerid], 0);
PlayerPlaySound(playerid, 1085, 0.0, 0.0, 0.0);
SetVehicleParamsForPlayer(PVeh[playerid], playerid, 0, 0);
for(new i=0; i <= MAX_PLAYERS; i++)
{
if ( IsPlayerConnected(i) )
{
if ( i != playerid )
{
SetVehicleParamsForPlayer(PVeh[playerid], i, 0, 1);
}
}
}
}
return 1;
}

if (strcmp(cmdtext, "/tune2", true)==0)
{
SetPlayerPos(playerid, -2709.7312,217.4238,4.1797);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Tune2, jei nori ir tu rasyk /tune2", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/tune3", true)==0)
{
SetPlayerPos(playerid, 2386.8020,1036.3203,10.8203);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Tune3, jei nori ir tu rasyk /tune3", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/tune", true)==0)
{
GameTextForPlayer(playerid,"~r~]~g~Tune:[~w~1-3~r~]",5000,4);
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);

return 1;
}

if (strcmp(cmdtext, "/tele", true)==0)
{
GameTextForPlayer(playerid,"~r~]~g~Tele:[~w~/sf /lv /ls~r~]",5000,4);
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);

return 1;
}

if (strcmp(cmdtext, "/drift", true)==0)
{
GameTextForPlayer(playerid,"~r~]~g~Drift:~r~[~w~1-3~r~]",5000,3);
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);

return 1;
}
if (strcmp(cmdtext, "/drift1", true)==0)
{
SetPlayerPos(playerid, -309.9550,1560.8075,75.3594);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Drift zonoje, jei nori ir tu rasyk /drift1", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;
}

if (strcmp(cmdtext, "/drift2", true)==0)
{
SetPlayerPos(playerid, -2404.6809, -580.1221, 132.7315);
TogglePlayerControllable(playerid, true);
new pName[30];
GetPlayerName(playerid, pName, 30);
format(string, 280, "%s dabar yra Drift 2 zonoje, jei nori ir tu rasyk /drift2", pName);
SendClientMessageToAll(COLOR_ORANGE, string);

return 1;

Reply
#6

I already told you... You don't have strtok function and two variables.
Reply
#7

pawn Код:
new cmd[256],tmp[256],idx;// at top of script

// at bottom of script.
strtok(const string[], &index)
{
  new length = strlen(string);
  while ((index < length) && (string[index] <= ' '))
  {
    index++;
  }
  new offset = index;
  new result[20];
  while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  {
    result[index - offset] = string[index];
    index++;
  }
  result[index - offset] = EOS;
  return result;
}
Reply
#8

Set the arrays to 128, not 256.


To Rks_:
http://forum.sa-mp.com/index.php?topic=78026.0
Reply
#9

Thanks menace.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)