Sscanf help!
#1

pawn Код:
command(goto, playerid, params[])
{
    new admin[25];
    new pid;
    new player[25];
    new string[128];
   
    GetPlayerName(playerid, admin, 25);
    GetPlayerName(pid, player, 25);
    if(sscanf(params, "u", pid)) return SendClientMessage(playerid, COLOUR_WHITE, "Hint: /goto [Playerid/Name]");
    if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOUR_WHITE, "That player is not connected.");
    new Float:px, Float:py, Float:pz;
    GetPlayerPos(pid, px, py, pz );
    SetPlayerPos(playerid, px, py, pz );
    format(string, sizeof(string),"**You have successfully teleported to %s!**",player);
    SendClientMessage(playerid, COLOUR_TAN,string);
    return 1;
}
Thats my command everything works apart from it says "You've teleported to Cloudysky" even if you teleport to someone else.
Reply
#2

pawn Код:
format(string, sizeof(string),"**You have successfully teleported to %s!**",pid;
SendClientMessage(playerid, COLOUR_TAN,string);
try this:P
Reply
#3

Quote:
Originally Posted by cloudysky
Посмотреть сообщение
pawn Код:
command(goto, playerid, params[])
{
    new admin[25];
    new pid;
    new player[25];
    new string[128];
   
    GetPlayerName(playerid, admin, 25);
    GetPlayerName(pid, player, 25);
    if(sscanf(params, "u", pid)) return SendClientMessage(playerid, COLOUR_WHITE, "Hint: /goto [Playerid/Name]");
    if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOUR_WHITE, "That player is not connected.");
    new Float:px, Float:py, Float:pz;
    GetPlayerPos(pid, px, py, pz );
    SetPlayerPos(playerid, px, py, pz );
    format(string, sizeof(string),"**You have successfully teleported to %s!**",player);
    SendClientMessage(playerid, COLOUR_TAN,string);
    return 1;
}
Thats my command everything works apart from it says "You've teleported to Cloudysky" even if you teleport to someone else.
Delete "GetPlayerName(pid, player, 25);" and put it before "format(string, sizeof(string),"**You have successfully teleported to %s!**",player);".
Reply
#4

Quote:
Originally Posted by Roko_foko
Посмотреть сообщение
Delete "GetPlayerName(pid, player, 25);" and put it before "format(string, sizeof(string),"**You have successfully teleported to %s!**",player);".
Thanks it worked.

One more question is my server.exe I get this message when using my Kick Command.

"Strings without a length are depreciated please add a destination size."

pawn Код:
command(kick, playerid, params[])
{
    new admin[25];
    new pid;
    new player[25];
    new reason[128];
    new string[128];
   
    GetPlayerName(playerid, admin, 25);
    if(sscanf(params, "us", pid, reason)) return SendClientMessage(playerid, COLOUR_WHITE, "Hint: /kick [Playerid/Name] [Reason]");
    if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOUR_WHITE, "That player ID is not connected.");
    GetPlayerName(pid, player, 25);
    format(string, sizeof(string),"**Server Admin %s has kicked %s. Reason: %s.**",admin, player, reason);
    SendClientMessageToAll(COLOUR_ALERT,string);
    SendClientMessage(pid, COLOUR_WHITE, "You have been kicked!" );
    Kick(pid);
    return 1;
}
Reply
#5

pawn Код:
if(sscanf(params, "us[128]", pid, reason))
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)