18.09.2010, 11:15
Ok, I tried to make a SetPlayerName command using sscanf, but it gives me error argument type mismatch
Thanks.
pawn Код:
dcmd_setname(playerid, params[])
{
new id, nombre;
if(sscanf(params, "u,s", id, nombre)) SendClientMessage(playerid, COLOR_WHITE, "USO: /setname [id][nombre]");
else if(id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_GREY, "ID invбlida.");
else
{
if(adminlevel[playerid] >= 1) return SendClientMessage(playerid, COLOR_GREY, "No tenes permiso para usar este comando!");
{
new name1[30];
new name2[30];
new string[128];
GetPlayerName(playerid, name1, 30);
GetPlayerName(id, name2, 30);
printf("Administraciуn: %s ha cambiado el nombre de %s a %s", name1, name2, nombre);
format(string, 128, "Administraciуn: %s ha cambiado el nombre de %s a %s", name1, name2, nombre);
SendClientMessageToAll(ADMIN_RED, string);
format(string, 128, "Administraciуn: %s te ha cambiado el nombre de %s a %s", name1, name2, nombre);
SendClientMessage(id, ADMIN_RED, string);
switch(SetPlayerName(id, nombre)) //This is the error line
{
case -1: SendClientMessage(playerid, COLOR_GREY, "Ya hay otro usuario con ese nombre!");
case 0: SendClientMessage(playerid, COLOR_GREY, "Ya tiene ese nombre!");
case 1:
{
new str[64];
format(str, 64, "Cambiastes el nombre de %s a %s", name2, nombre);
SendClientMessage(playerid, COLOR_WHITE, str);
}
}
}
}
return 1;
}