Moin,
Jemand eine kleine Vorlage für einen kleinen Admin Chat?
SpielerInfo[playerid][pTeam] | 1 = Supportteam 2 = Teamleiter 3 = Server Owner
Rang sollte mit angezeigt werden.
Moin,
Jemand eine kleine Vorlage für einen kleinen Admin Chat?
SpielerInfo[playerid][pTeam] | 1 = Supportteam 2 = Teamleiter 3 = Server Owner
Rang sollte mit angezeigt werden.
Also das mit den Rängen kannste (Würd ich sagen) mit case's machen und den Chat an sich mit: stock SendMessageToAdmins(text[])
{
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(IsPlayerAnAdmin(i,1))
{
SendClientMessage(i,FARBE,text);
}
}
}
Und dann eben mit deiner Adminvariable, eignet sich auch äußerst gut für ein Report System.
Weiß jetzt noch nicht genau wie ich das jetzt machen soll
Also der Chat an sich ist nicht schwer, jedoch das mit den Rängen weis ich selbst nicht so genau, ich keine mit cases würde gehen, Admin Rang 1 Syncmaster: Text würde einfach gehen, aber dnn würde bei Supps halt Admin Rang 1 stehen oder so.
Und wie müsste der Befehl jz ungefähr aufgebaut sein?
Also, wenns dir bis morgen keiner schreibt, schreib ich dir eins, kannst dir ja schonmal Gedanken machen wie das funktionieren könnte, bin gerade an meinem iPad
Befehl,
Adminabfrage,
Ssccanf abfrage,
format,
senden via oben genannten funktion.
Ja, das ist die grobe Zusammenfassung. Wie wärs wenn du dir Gedanken machst und selber versuchst das zu schreiben und wir helfen dir dann?
Befehl,
Adminabfrage,
Ssccanf abfrage,
format,
senden via oben genannten funktion.
Ich bin grad iwie Planlos, wie genau ich denn Text halt auslesen lassen soll.. Die Abfrage hab ich schon, und der Stock is auch drin.
Mit sscanf abfragen.
Das hab ich jetzt gemacht.
Weiter weis ich grad iwie net
ocmd:a(playerid,params[])
{
if(SpielerInfo[playerid][pTeam] <= 0)
{
new text[264],adminname[MAX_PLAYER_NAME],adminrank[20];
GetPlayerName(playerid,adminname,MAX_PLAYER_NAME);
switch(SpielerInfo[pID][pTeam])
{
case 0:{adminrank="Supportteam";}
case 2:{adminrank="Teamleiter";}
case 3:{adminrank="Server Owner";}
}
return 1;
}
}
Schau mal hier unter ocmd:pm... Dann musste das i bei der sscanf Abfrage wegnehmen, und halt alles anpassen.
http://pastebin.com/LdT10ZEund dann den SendMessageToAdmins Stock mit einbauen. Außerdem solltest bei der Adminabfrage >0 sein und nicht =>0 weil er soll ja über Alevel 0 sein.
Der Pastebin Link funktioniert nicht.
ocmd:a(playerid,params[])
{
new text[128];
if(sscanf(params,"s",text))return SendClientMessage(playerid,RED,"Benutze: /a [Nachricht]");
format(text,sizeof(text),"Admin %s: %s",SpielerName(playerid),text);
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerAnAdmin(i,1)
{
SendMessageToAdmins(i,FARBE,text);
}
}
}
return 1;
}
So wenn ich mich nicht irre(bin Tablet)
ocmd:a(playerid,params[])
{
if(SpielerInfo[playerid][pTeam] <= 0)
{
new text[264],adminname[MAX_PLAYER_NAME],adminrank[20];
GetPlayerName(playerid,adminname,MAX_PLAYER_NAME);
if(sscanf(params,"is[128]",playerid,text)) return SendClientMessage(playerid,0x0091FFFF,"Benutze: /a [Nachricht]");
switch(SpielerInfo[playerid][pTeam])
{
case 0:{adminrank="Supportteam";}
case 2:{adminrank="Teamleiter";}
case 3:{adminrank="Server Owner";}
}format(text,sizeof(text),"%s %s: %s",adminrank,SpielerName(playerid),text);
SendMessageToTeam(text);
return 1;
}
return 1;
}
stock SendMessageToTeam(text[])
{
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(SpielerInfo[i][pTeam] <= 0)
{
SendClientMessage(i,0x0091FFFF,text);
}
}
}
So, das habe ich jz selber zusammen gebaut, so richtg?
If(sscanf(params,"s[128]", playerid...
Und mit dem Case bin ich mir nicht sicher
//Text nicht formatiert.
Also so wie ich es jetzt habe, funktioniert es nicht.
Das kann ich auf dem Tablet relativ schlecht erklären, schau dir mal den Post von Felix an, und wenn morgen noch Bedarf besteht, kann ich ja mal gucken, was sich machen lässt.
If(sscanf(params,"s[128]", playerid...
Und mit dem Case bin ich mir nicht sicher
//Text nicht formatiert.
Habe denn Text jetzt formatiert ,klappt jedoch nicht.