So habe ich meinen gemacht:
Oben im Script : new CHAT;
//openchat-Befehl
Der Befehl zum Öffnen muss halt durch deine Adminabfrage immer ersetzen
ocmd:openchat(playerid,params[])
{
new string[128];
if(!IstSpielerAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Zugriff verweigert. Benötigter Rang Super Moderator");
if(IstSpielerAdmin(playerid,3))
{
format(string,sizeof(string),"%s hat den OOC-Chat geöffnet",SpielerName(playerid));
SendClientMessageToAll(WEISS,string);
CHAT = 1;
}
return 1;
}
Befehl zum schließen:
//closechat-Befehl
ocmd:closechat(playerid,params[])
{
new string[128];
if(!IstSpielerAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Zugriff verweigert. Benötigter Rang: Super Moderator");
if(IstSpielerAdmin(playerid,3))
{
format(string,sizeof(string),"%s hat den OOC-Chat geschlossen",SpielerName(playerid));
SendClientMessageToAll(WEISS,string);
CHAT = 0;
return 1;
}
return 1;
}
Der Befehl zum schreiben:
ocmd:o(playerid,params[])
{
new string[128],string2[128],string3[128],text;
if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"Benutzung: /o [Text]");
if(GetPVarInt(playerid,"Adminlevel")==0)
{
if(CHAT == 0)
{
SendClientMessage(playerid,ROT,"Der OOC-Chat ist zur Zeit geschlossen..");
return 1;
}
}
if(GetPVarInt(playerid,"Adminlevel")>=1)
{
format(string2,sizeof(string2),"(( %s: %s ))",SpielerName(playerid),text);
SendClientMessageToAll(ROT,string2);
return 1;
}
if(CHAT == 1)
{
if(GetPVarInt(playerid,"Adminlevel")==0)
{
format(string,sizeof(string),"(( %s: %s ))",SpielerName(playerid),text);
SendClientMessageToAll(WEISS,string);
return 1;
}
if(GetPVarInt(playerid,"Adminlevel")>=1)
{
format(string3,sizeof(string3),"(( %s: %s ))",SpielerName(playerid),text);
SendClientMessageToAll(ROT,string3);
}
}
return 1;
}