Hey. Ich hab gerad total den Überblick verloren...
Also. Ich möchte es so haben, das wenn man gerade niemanden spectatet, man nicht grundlos /specoff machen kann. Wenn man niemanden spectatet soll dann nach ausführen des Befehls stehen: Du spectatest gerade niemanden.
Aber irgendwie klappts nicht so ganz..
/* Befehl, um einen Spieler zu beobachten */
ocmd:spec(playerid, params[])
{
if(TutSpecen[playerid] == 1)
{
new pID, string[128];
if(!IsPlayerAnAdmin(playerid, 1)) return SendClientMessage(playerid, GRAU, "Für diesen Befehl benötigst du das folgende Adminlevel: {00FF00}Supporter {969696}[{00FF00}1{969696}] oder höher.");
if(sscanf(params, "u", pID)) return SendClientMessage(playerid, GRAU, "{FFFFFF}» {FF000F}Syntax: {FFFFFF}/Spec {969696}[Name/ID]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid, GRAU, "Dieser Spieler ist nicht online.");
SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(pID));
SetPlayerInterior(playerid, GetPlayerInterior(pID));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, pID);
format(string, sizeof(string), "Du beobachtest nun den Spieler %s.", SpielerName(pID));
SendClientMessage(playerid, WEIß, string);
TutSpecen[playerid] = 1;
return 1;
}
return 1;
}
/*Befehl, um die Beobachtung von einem Spieler auszuschalten*/
ocmd:specoff(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,GRAU,"Für diesen Befehl benötigst du das folgende Adminlevel: {00FF00}Supporter {969696}[{00FF00}1{969696}] oder höher.");
{
if(TutSpecen[playerid] == 1)
{
TogglePlayerSpectating(playerid,false);
PlayerSpectatePlayer(playerid,false);
SetPlayerInterior(playerid,false);
SetPlayerVirtualWorld(playerid,false);
SetSpawnInfo(playerid,0,0,-50.1974,-288.3651,5.4297,178.9876,0,0,0,0,0,0);
SpawnPlayer(playerid);
TogglePlayerControllable(playerid,1);
SetCameraBehindPlayer(playerid);
SendClientMessage(playerid,WEIß,"Du schaltest nun die Beobachtungsfunktion aus.");
return 1;
}
}
return 1;
}
Was ist daran falsch? Oo