07.04.2010, 14:55
Please! Help me spec this command, because when I use spec off I lose my arms, money and my position. Anyone know how to fix it, so when I wear spec off I go back to previous position with arms and money they had. Thanks
Код:
dcmd_spec(playerid,params[]) { if(IsPlayerCommandLevel(playerid,"spec")) { if(!strlen(params)) return SendClientMessage(playerid,red,"Syntax Error: \"/SPEC <NICK OR ID | OFF>\"."); new id; if(!IsNumeric(params)) { if(!strcmp(params,"off",true)) { if(!Spec[playerid][Spectating]) return SendClientMessage(playerid,red,"ERROR: You must be spectating."); SendCommandMessageToAdmins(playerid,"SPEC OFF"); TogglePlayerSpectating(playerid,false); Spec[playerid][Spectating] = false; return SendClientMessage(playerid,yellow,"You have turned your spectator mode off."); } id = ReturnPlayerID(params); } else id = strval(params); if(IsPlayerConnected(id) && id != INVALID_PLAYER_ID && id != playerid) { SendCommandMessageToAdmins(playerid,"SPEC"); new string[256],name[24]; GetPlayerName(id,name,24); if(Spec[id][Spectating]) return SendClientMessage(playerid,red,"Error: You can not spectate a player already spectating."); if(Spec[playerid][Spectating] && Spec[playerid][SpectateID] == id) return SendClientMessage(playerid,red,"ERROR: You are already spectating this player."); Spec[playerid][Spectating] = true, Spec[playerid][SpectateID] = id; SetPlayerInterior(playerid,GetPlayerInterior(id)); TogglePlayerSpectating(playerid,true); if(!IsPlayerInAnyVehicle(id)) PlayerSpectatePlayer(playerid,id); else PlayerSpectateVehicle(playerid,GetPlayerVehicleID(id)); format(string,256,"You are now spectating player \"%s\".",name); return SendClientMessage(playerid,yellow,string); } else return SendClientMessage(playerid,red,"ERROR: You can not spectate yourself or a disconnected player."); } else return SendLevelErrorMessage(playerid,"spec"); }