15.08.2017, 20:25
PHP код:
if(strcmp(cmd, "/setname", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_ERROR, "Syntax: /setname (playerid) (new name)");
return 1;
}
new giveplayerid = ReturnUser(tmp);
if(PInfo[playerid][AdminLevel] >= 2)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_ERROR, "Syntax: /setname (playerid) (new name)");
return 1;
}
new checkquery[128];
format(checkquery, sizeof(checkquery), "SELECT `username` FROM `users` WHERE `username` = '%s'", tmp);
mysql_reconnect();
mysql_query(checkquery);
mysql_store_result();
if(mysql_num_rows() > 0)
{
SendClientMessage(playerid, COLOR_ERROR, "ERROR: That name is already registered !");
return 1;
}
else
{
new oldname[MAX_PLAYER_NAME];
format(oldname, sizeof(oldname), "%s", PlayerName(giveplayerid));
mysql_real_escape_string(oldname,oldname);
format(string, sizeof(string), "* You have renamed the player {00FF00}%s {FFFFFF}to {00FF00}%s", PlayerName(giveplayerid), tmp);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Your name has been changed from %s to %s", PlayerName(giveplayerid), tmp);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Administrator %s(%d) has set %s's name to {00FF00}%s", PlayerName(playerid),playerid, PlayerName(giveplayerid), tmp);
SendClientMessageToAll(COLOR_WHITE, string);
SetPlayerName(giveplayerid, tmp);
mysql_free_result();
new deletequery[128];
mysql_reconnect();
format(deletequery,sizeof(deletequery),"INSERT INTO namechanges (cUsername, wUsername, Processed) VALUES ('%s', '%s', '1')",oldname, tmp);
mysql_query(deletequery);
format(deletequery, sizeof(deletequery), "UPDATE users SET username = '%s' WHERE username = '%s'", tmp, oldname);
mysql_query(deletequery);
SaveAccount(giveplayerid);
if(PInfo[giveplayerid][House1] > 0)
{
new query[200];
format(query,sizeof(query),"UPDATE houses SET OwnedBy='%s' WHERE OwnedBy='%s'", tmp, oldname);
mysql_reconnect();
mysql_query(query);
}
if(PInfo[giveplayerid][House2] > 0)
{
new query[200];
format(query,sizeof(query),"UPDATE houses SET OwnedBy='%s' WHERE OwnedBy='%s'", tmp, oldname);
mysql_reconnect();
mysql_query(query);
}
format(deletequery,sizeof(deletequery),"SELECT NULL from pvehicles WHERE OwnedBy='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
new exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE pvehicles SET OwnedBy='%s' WHERE OwnedBy='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM airlines WHERE Owner='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE airlines SET Owner='%s' WHERE Owner='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM paylog WHERE Username='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE paylog SET Username='%s' WHERE Username='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM paylog WHERE Receiver='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE paylog SET Receiver='%s' WHERE Receiver='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM paylog WHERE Fromwho='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE paylog SET Fromwho='%s' WHERE Fromwho='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM skins WHERE owner='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE skins SET owner='%s' WHERE owner='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM tickets WHERE Receiver='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE tickets SET Receiver='%s' WHERE Receiver='%s'",tmp,oldname);
mysql_query(deletequery);
}
format(deletequery,sizeof(deletequery),"SELECT NULL FROM tickets WHERE Administrator='%s'", oldname);
mysql_query(deletequery);
mysql_store_result();
exists = mysql_num_rows();
mysql_free_result();
if(exists > 0)
{
format(deletequery,sizeof(deletequery),"UPDATE tickets SET Administrator='%s' WHERE Administrator='%s'",tmp,oldname);
mysql_query(deletequery);
}
AdminLog(playerid, "/setname", tmp, oldname);
return 1;
}
}
}
}
else
{
SendClientMessage(playerid, COLOR_ERROR, "Unknown command. Type /commands for a list of available commands to use.");
}
}
return 1;
}
Plz help