PDA

View Full Version : sscanf warning


tixzor
18/06/2012, 07:49 PM
when using /gotoid cmd ,i get error on server_log,
[12:58:26] sscanf warning: Format specifier does not match parameter count.

here is script



CMD:gotoid(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_ERROR,"SERVER: Nemozes koristiti tu komandu jer nisi admin lvl 2! ");
new targetid, string[128];
if(sscanf(params, "uz[6]", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_ERROR, "SERVER: Taj igrac nije online!");
else
{
new pName[24];
GetPlayerName(targetid,pName,128);
format(string, sizeof(string), "SERVER: Teleportiro si se kod [%d]%s.",targetid, pName);
SendClientMessage(playerid,COLOR_RED,string);
SetPlayerInterior(playerid,GetPlayerInterior(targe tid));
new Float:TPX, Float:TPY, Float:TPZ;
GetPlayerPos(targetid, TPX, TPY, TPZ);
SetPlayerPos(playerid, TPX, TPY, TPZ+1);
}
return 1;
}

WagnerPM
18/06/2012, 07:58 PM
CMD:gotoid(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_ERROR,"SERVER: Nemozes koristiti tu komandu jer nisi admin lvl 2! ");
new targetid, string[128];
if(sscanf(params, "uz[6]", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_ERROR, "SERVER: Taj igrac nije online!");
{
new pName[24];
GetPlayerName(targetid,pName,128);
format(string, sizeof(string), "SERVER: Teleportiro si se kod [%d]%s.",targetid, pName);
SendClientMessage(playerid,COLOR_RED,string);
SetPlayerInterior(playerid,GetPlayerInterior(targe tid));
new Float:TPX, Float:TPY, Float:TPZ;
GetPlayerPos(targetid, TPX, TPY, TPZ);
SetPlayerPos(playerid, TPX, TPY, TPZ+1);
}
return 1;
}

tixzor
19/06/2012, 06:41 AM
CMD:gotoid(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_ERROR,"SERVER: Nemozes koristiti tu komandu jer nisi admin lvl 2! ");
new targetid, string[128];
if(sscanf(params, "uz[6]", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_ERROR, "SERVER: Taj igrac nije online!");
{
new pName[24];
GetPlayerName(targetid,pName,128);
format(string, sizeof(string), "SERVER: Teleportiro si se kod [%d]%s.",targetid, pName);
SendClientMessage(playerid,COLOR_RED,string);
SetPlayerInterior(playerid,GetPlayerInterior(targe tid));
new Float:TPX, Float:TPY, Float:TPZ;
GetPlayerPos(targetid, TPX, TPY, TPZ);
SetPlayerPos(playerid, TPX, TPY, TPZ+1);
}
return 1;
}

again error.

Skaizo
19/06/2012, 08:20 AM
CMD:gotoid(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_ERROR,"SERVER: Nemozes koristiti tu komandu jer nisi admin lvl 2! ");
new targetid, string[128];
if(sscanf(params, "r", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_ERROR, "SERVER: Taj igrac nije online!");
{
new pName[24];
GetPlayerName(targetid,pName,128);
format(string, sizeof(string), "SERVER: Teleportiro si se kod [%d]%s.",targetid, pName);
SendClientMessage(playerid,COLOR_RED,string);
SetPlayerInterior(playerid,GetPlayerInterior(targe tid));
new Float:TPX, Float:TPY, Float:TPZ;
GetPlayerPos(targetid, TPX, TPY, TPZ);
SetPlayerPos(playerid, TPX, TPY, TPZ+1);
}
return 1;
}

ReneG
19/06/2012, 08:28 AM
The command only uses one parameter, that is a targetid.

Change if(sscanf(params, "uz[6]", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");
to
if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_SYNTAX, "POMOC: /goto [PlayerID/PartOfName]");

u is the userid specifier. That's all you need for this command.