Herzlich Willkommen zu meinem ersten Tutorial!
In diesem Tutorial geht es um Join und Leave Messages mit Strings!
Was braucht man dafür?
-Grundkenntnisse
Nun zum Tutorial:
Als erstes müssen wir unter public OnPlayerConnect(playerid) einen string erstellen.
new string[128];
new spname[MAX_PLAYER_NAME];//steht für den Spieler der später Connected
Dann müssen wir den Namen des Spielers herausfinden und das machen wir so
GetPlayerName(playerid, spname, sizeof(spname));//GetPlayerName erklärt sich von selbst
Als nächstes müssen wir den string formatieren und eine Nachricht angeben die an die Spieler gesendet werden soll.
format(string,sizeof(string),"Der Spieler %s [ID: %d] hat den Server betreten", spname,playerid);//Das %s steht für den Namen z.B. Der Spieler iFeet[ID:4] hat den Server betreten
Nun geben wir noch an das die oben genannte Nachricht an alle Spieler gesendet werden soll die On sind
SendClientMessageToAll(Orange,string);//Somit wird der string auch in der Farbe abgesendet Ohne diese SendClientMessageToAll würde nichts passieren
Somit haben wir die Connect/Join Message erstellt
Nun gehen wir unter public OnPlayerDisconnect(playerid)
und erstellen da wieder einen string und einen weiteren für den Namen!
new disconnect[150];
spname[MAX_PLAYER_NAME];
Dann müssen wir wieder den Namen des Spielers abfragen!
Das machen wir wie oben schon angegeben
GetPlayerName(playerid,spname,MAX_PLAYER_NAME);
Jetzt beginnen wir damit festzulegen welche Nachricht kommen soll wenn
der Spieler
1.Die Verbindungen zum Server verliert
2.Er normal disconnected
3.Er gekickt wird
switch(reason)
{
case 0: format(string,sizeof (string),"Der Spieler %s hatte einen Timeout",spname);
case 1: format(string,sizeof (string),"Der Spieler %s hat den Server verlassen",spname);
case 2: format(string,sizeof (string),"Der Spieler %s wurde gekickt/gebannt",spname);
}
Jetzt kommt der Teil wo wieder eine Nachricht an die Spieler abgesendet wird
SendClientMessageToAll(Orange,string);
Jetzt nochmal die Zusammenfassung
Connect/Join Nachricht
public OnPlayerConnect(playerid)
new string[128];
new spname[MAX_PLAYER_NAME];
GetPlayerName(playerid, spname, sizeof(spname));
format(string,sizeof(string),"Der Spieler %s [ID: %d] hat den Server betreten", spname,playerid);
SendClientMessageToAll(Orange,string);
Disconnect/Leave Nachricht
public OnPlayerDisconnect(playerid)
new string[150];
spname[MAX_PLAYER_NAME];
GetPlayerName(playerid,spname,MAX_PLAYER_NAME);
switch(reason)
{
case 0: format(string,sizeof (string),"Der Spieler %s hatte einen Timeout",spname);
case 1: format(string,sizeof (string),"Der Spieler %s hat den Server verlassen",spname);
case 2: format(string,sizeof (string),"Der Spieler %s [ID: %d] wurde gekickt/gebannt",spname);
}
SendClientMessageToAll(0xFFAA00FF,spname);
Ich hoffe das Tutorial hat euch gefallen!
Es war mein erstes also sind Verbesserungswünsche und Kritik erlaubt
Bei weiteren fragen eine PM an mich schicken
Mit freundlichen Grüßen
iFeet