09.01.2015, 00:32
pawn Код:
CMD:setname(playerid, params[])
{
new playerb ,string[256], string2[128], file[64], idx, idx2, idx3, idx4, text[MAX_PLAYER_NAME];
if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
if(PlayerInfo[playerid][pAdmin] < 4 && !Approve[playerid]) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
if(!aDuty[playerid] && PlayerInfo[playerid][pAdmin] < 7) return SendClientMessage(playerid, COLOR_GREY, "You are not on Admin Duty.");
if(Approve[playerid]) Approve[playerid] = 0;
if(sscanf(params, "us[24]", playerb, text)) return SendClientMessage(playerid, USAGE, "[Usage]: /setname [playerid] [name]");
if(!IsPlayerLoggedIn(playerb)) return SendClientMessage(playerid, COLOR_GREY, "Invalid player id.");
// Start of detecting space in name
new end, temp[32], temp2[32];
end = strfind(text, " ",true);
if(end != -1)
{
strmid(temp, text, 0, end);
format(temp, sizeof(temp), "%s_", temp);
strdel(text, 0, end);
strmid(temp2, text, 1, strlen(text));
format(text, 24, "");
strcat(text, temp, sizeof(temp));
strcat(text, temp2, sizeof(temp2));
}
// End of detecting space in name
format(string, sizeof(string), "AdmCmd: %s has changed %s's name to %s.", RPN(playerid), RPN(playerb), text);
format(string2, sizeof(string2), " Administrator %s has changed your name to {FF6347}%s{FFFFFF}.", RPN(playerid), text);
format(file, sizeof(file), "users/%s.ini", text);
if(dini_Exists(file)) return SendClientMessage(playerid, COLOR_GREY, "Name already in use.");
idx = PlayerInfo[playerb][pBiz];
idx2 = PlayerInfo[playerb][pHouse];
idx3 = PlayerInfo[playerb][pVBiz];
idx4 = PlayerInfo[playerb][pVHouse];
new password[256];
format(file, sizeof(file), "users/%s.ini", RPNU(playerb));
format(password, sizeof(password), "%s", dini_Get(file, "Password"));
dini_Remove(file);
SetPlayerName(playerb, text);
PlayerInfo[playerb][pBiz] = idx;
format(file, sizeof(file), "users/%s.ini", RPNU(playerb));
dini_Create(file);
dini_Set(file, "Password", password);
SaveChar(playerb);
SendAdminMessage(COLOR_DARKRED, 1, string);
SendClientMessage(playerb, COLOR_WHITE, string2);
if(idx)
{
format(BizInfo[idx][bOwner], 32, "%s", text);
format(string, sizeof(string), "{33AA33}%s{FFFFFF}\nBusiness %s\nBusiness type: %s\n%s", BizInfo[idx][bName], BizInfo[idx][bOwner], RBT(idx), RBS(idx));
UpdateDynamic3DTextLabelText(BizInfo[idx][bText], COLOR_WHITE, string);
}
if(idx2)
{
idx = idx2;
format(HouseInfo[idx][hOwner], 32, "%s", text);
format(string, sizeof(string), "{00C0FF}House of %s\nHouse Type: %s\nStatus: %s", HouseInfo[idx][hOwner], HT(idx), RHS(idx));
UpdateDynamic3DTextLabelText(HouseInfo[idx][hText], COLOR_WHITE, string);
}
if(idx3)
{
idx = idx3;
format(BizInfo[idx][bOwner], 32, "%s", text);
format(string, sizeof(string), "{33AA33}%s{FFFFFF}\nBusiness %s\nBusiness type: %s\n%s", BizInfo[idx][bName], BizInfo[idx][bOwner], RBT(idx), RBS(idx));
UpdateDynamic3DTextLabelText(BizInfo[idx][bText], COLOR_WHITE, string);
}
if(idx4)
{
idx = idx4;
format(HouseInfo[idx][hOwner], 32, "%s", text);
format(string, sizeof(string), "{00C0FF}House of %s\nHouse Type: %s\nStatus: %s", HouseInfo[idx][hOwner], HT(idx), RHS(idx));
UpdateDynamic3DTextLabelText(HouseInfo[idx][hText], COLOR_WHITE, string);
}
return 1;
}