Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CMD:spec(playerid, params[])
- {
- new giveplayerid, splayer[25];
- if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_ERROR, "You need to login first.");
- if(sscanf(params,"s[25]", splayer)) return SendClientMessage(playerid, COLOR_SYN, "(SERVER):{FFFFFF} /spec <Player ID/Nume>");
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 1)
- {
- if(GetPlayers(splayer) == INVALID_PLAYER_ID) return InvalidPlayer(playerid);
- else if(GetPlayers(splayer) == 1000) return ToManyResults(playerid);
- else if(GetPlayers(splayer) == 1001) return ShowResults(playerid, splayer);
- else giveplayerid = GetPlayers(splayer);
- if(giveplayerid == playerid) return SendClientMessage(playerid, COLOR_ERROR, "You cannot spec yourself.");
- format(gString, sizeof(gString), "%s Este spec pe %s.",GetName(playerid),GetName(giveplayerid));
- if(PlayerInfo[playerid][pAdmin]) CMDRaport(gString, 1, 0);
- else CMDRaport(gString, 0, 1);
- BeforeSpectate[playerid][pState] = GetPlayerState(playerid);
- BeforeSpectate[playerid][pWorld] = GetPlayerVirtualWorld(playerid);
- BeforeSpectate[playerid][pInt] = GetPlayerInterior(playerid);
- BeforeSpectate[playerid][pSpectating] = true;
- new Float: x, Float: y, Float: z;
- GetPlayerPos(playerid, x, y, z);
- if(!IsPlayerInAnyVehicle(playerid))
- {
- BeforeSpectate[playerid][pOldPos][0] = x;
- BeforeSpectate[playerid][pOldPos][1] = y;
- BeforeSpectate[playerid][pOldPos][2] = z;
- }
- else
- BeforeSpectate[playerid][pInVehicle] = GetPlayerVehicleID(playerid);
- TogglePlayerSpectating(playerid, true);
- PlayerTextDrawShow(playerid, SpecText[playerid]);
- if(IsPlayerInAnyVehicle(giveplayerid))
- {
- SetPlayerInterior(playerid, GetPlayerInterior(giveplayerid));
- SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(giveplayerid));
- PlayerSpectateVehicle(playerid,GetPlayerVehicleID(giveplayerid));
- }
- else
- {
- SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
- SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(giveplayerid));
- PlayerSpectatePlayer(playerid,giveplayerid);
- }
- OldState[giveplayerid] = GetPlayerState(giveplayerid);
- new Name[32];
- GetPlayerName(giveplayerid, Name, sizeof(Name));
- format(gString, sizeof(gString),"You have started to spectate %s.",Name);
- SendClientMessage(playerid,COLOR_SYN2,gString);
- SpectatorID[playerid] = giveplayerid;
- }
- else
- {
- SendClientMessage(playerid, COLOR_ERROR, "Your admin/helper level is not high enough to use this command.");
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement