Hallo ich wollte mal fragen ob ihr mir vielleicht ein /freeze und ein /unfreeze befehl machen könnt ... es kann auch ocmd sein wäre echt nett
PS Meine Admin Variable ist: if(IsAnAdmin(playerid,rang))
Hallo ich wollte mal fragen ob ihr mir vielleicht ein /freeze und ein /unfreeze befehl machen könnt ... es kann auch ocmd sein wäre echt nett
PS Meine Admin Variable ist: if(IsAnAdmin(playerid,rang))
Dort steht es
http://wiki.sa-mp.com/wiki/TogglePlayerControllable
Downloade dir ein gf script und kopier es raus
if(strcmp(cmd, "/unfreeze", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /unfreeze [playerid]");
return 1;
}
new playa;
playa = ReturnUser(tmp);
if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pSupporter] >= 1)
{
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
UnFreezePlayer(playa);
format(string, sizeof(string), "AdmCmd: %s UnFroze %s",sendername, giveplayer);
printf("%s",string);
format(string, sizeof(string), "AdmCmd: %s wurde von %s entfreezed",giveplayer ,sendername);
ABroadCast(COLOR_LIGHTRED,string,1);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Du darfst diesen Befehl nicht benutzen!");
}
}
return 1;
}
Und /freeze
if(strcmp(cmd, "/freeze", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /freeze [playerid]");
return 1;
}
new playa;
playa = ReturnUser(tmp);
if(PlayerInfo[playa][pAdmin] > 0)
{
SendClientMessage(playerid, COLOR_GRAD2, "Admins kannst du nicht Freezen");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
FreezePlayer(playa);
format(string, sizeof(string), "AdmCmd: %s Freeze %s",sendername, giveplayer);
printf("%s",string);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gefreezet",giveplayer ,sendername);
ABroadCast(COLOR_LIGHTRED,string,1);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Du darfst diesen Befehl nicht benutzen!");
}
}
return 1;
}
if(strcmp(cmd, "/unfreeze", true) == 0) { if(IsPlayerConnected(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /unfreeze [playerid]"); return 1; } new playa; playa = ReturnUser(tmp); if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pSupporter] >= 1) { if(IsPlayerConnected(playa)) { if(playa != INVALID_PLAYER_ID) { GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); UnFreezePlayer(playa); format(string, sizeof(string), "AdmCmd: %s UnFroze %s",sendername, giveplayer); printf("%s",string); format(string, sizeof(string), "AdmCmd: %s wurde von %s entfreezed",giveplayer ,sendername); ABroadCast(COLOR_LIGHTRED,string,1); } } } else { SendClientMessage(playerid, COLOR_GRAD1, "Du darfst diesen Befehl nicht benutzen!"); } } return 1; } Und /freeze if(strcmp(cmd, "/freeze", true) == 0) { if(IsPlayerConnected(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /freeze [playerid]"); return 1; } new playa; playa = ReturnUser(tmp); if(PlayerInfo[playa][pAdmin] > 0) { SendClientMessage(playerid, COLOR_GRAD2, "Admins kannst du nicht Freezen"); return 1; } if (PlayerInfo[playerid][pAdmin] >= 1) { if(IsPlayerConnected(playa)) { if(playa != INVALID_PLAYER_ID) { GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); FreezePlayer(playa); format(string, sizeof(string), "AdmCmd: %s Freeze %s",sendername, giveplayer); printf("%s",string); format(string, sizeof(string), "AdmCmd: %s wurde von %s gefreezet",giveplayer ,sendername); ABroadCast(COLOR_LIGHTRED,string,1); } } } else { SendClientMessage(playerid, COLOR_GRAD1, " Du darfst diesen Befehl nicht benutzen!"); } } return 1; }
Das geht bei mir nicht ... da ich ein Selfmade machen will und ich die meisten sachen nicht defined habe xD
Meine Errors
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(375) : error 017: undefined symbol "strtok"
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(375) : error 033: array must be indexed (variable "tmp")
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(382) : error 017: undefined symbol "ReturnUser"
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(383) : error 017: undefined symbol "PlayerInfo"
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(383) : warning 215: expression has no effect
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(383) : error 001: expected token: ";", but found "]"
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(383) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\Daniel.DANIEL-C7E8E796\Desktop\Selfmade\gamemodes\Selfmade2.pwn(383) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
7 Errors.
xD dass weiss ich gerad auch net, habs einfach von meinem rauskopiert
ocmd:freeze(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Info: Du bist kein Admin.");
new pID,string[128];
if(sscanf(params,"u",pID))return SendClientMessage(playerid,HELLBLAU,"FEHLER: /freeze [ID/Name]");
format(string,sizeof(string),"Info: Spieler %s wurde gefreezed von %s",sName(pID),sName(playerid));
TogglePlayerControllable(pID,0);
return 1;
}
Unfreeze hier
ocmd:unfreeze(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Info: Du bist kein Admin.");
new pID,string[128];
if(sscanf(params,"u",pID))return SendClientMessage(playerid,HELLBLAU,"FEHLER: /unfreeze [ID/Name]");
format(string,sizeof(string),"Info: Spieler %s wurde unfreezed von %s",sName(pID),sName(playerid));
TogglePlayerControllable(pID,1);
return 1;
}
Pass es auf dein Script an