Hallo Leute.
Heute möchte ich ihnen gerne zeigen, dass wen ein Spieler den Server betretet, wird bei allen anderen Spieler angezeigt wer den Server betreten hat. Es ist ganz Simple.
Ich werde es euch einfach mal zeigen wie dies funktioniert.
Zuerst gehen wir zu
public OnPlayerConnect(playerid)
{
return 1;
}
Dort erstellen wir einen neuen String mit 128 Zeichen.
Dies geht folgender maßen:
public OnPlayerConnect(playerid)
{
new string[128];
return 1;
}
Dann erstellen wir uns ganz unten im Script ein stock damit wir den Spielernamen auslesen können.
Das geht folgender maßen:
stock SpielerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
return name;
}
Dann müssen wir unseren String den wir erstellt haben, formatieren & dort reinschreiben dass ein Spieler den Server betritt..
Das geht Folgender maßen:
format(string,sizeof(string),"[SPIELERINFO] Spieler %s hat den Server betreten",SpielerName(playerid));
Nun haben wir "string" formatiert.
das " %s " steht für den SpielerNamen, er wird ausgelesen wenn wir hinter "[SPIELERINFO] Spieler %s hat den Server betreten" "SpielerName(playerid) schreiben. Weil wir den Stock erstellt haben.
Nun müssen wir noch machen, dass alle die Nachricht bekommen das der Server betreten wird.
Wir müssen ein SendClientMessageToAll unter dem format machen. Dann wird dort nicht eingetragen "%s hat den Server betreten", sondern einfach nur "string" weil wir oben ja schon einen String erstellt haben und ihn formatiert haben.
Sieht dann so aus:
SendClientMessageToAll(0x00A91EFF,string);
Wenn wir dass alles gemacht haben, müsste dass dan so aussehen
public OnPlayerConnect(playerid)
{
new string[128];
format(string,sizeof(string),"[SPIELERINFO]Spieler %s hat den Server betreten",SpielerName(playerid));
SendClientMessageToAll(0x00A91EFF,string);
}
Nun würde InGame stehen dass jemand den Server betreten hat.
_____________________________________________________________________________
Jetzt kommen wir zum Server Verlassen.
Wir gehen einfach wieder zu
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
Wir machen einfach genau das gleich wie oben aber müssen den Stock nicht wieder erstellen. Da wir ihn ja schon haben.
Einfach dass kopieren mit dem "Betreten" und dann bei OnPlayerDissconect einfügen.
Sieht dann so aus:
public OnPlayerDisconnect(playerid, reason)
{
new string[128];
format(string,sizeof(string),"[SPIELERINFO]Spieler %s hat den Server verlassen",SpielerName(playerid));
SendClientMessageToAll(0xFF0000FF,string);
}
Nun würde auch Ingame stehen wenn jemand den Server verlässt.
_____________________________________________________________________________________
Ich Hoffe mein Tutorial hat einigen geholfen die sich nicht so auskennen.
Bitte bewerten
Mit Freundlichen Grüßen, TheFreak