Hi Leute,
ich mache heute mein erstes Tutorial.
Ich hoffe es hilft euch weiter.
Für dieses Tutorial benötigt ihr ein Register System.
Falls ihr kein habt, SuFu.
Fangen wir an:
Als Erstes, muss in euer Registerbefehl oder Dialog folgendes rein:
ShowPlayerDialog(playerid, 1000, DIALOG_STYLE_MSGBOX, "Tutorial", "Willkommen!\n \nEs folgt nun ein kleines Tutorial.\n \nPasse bitte gut auf, denn am Ende werden Dir ein paar Fragen gestellt","Weiter","Abbruch");
Es wird nun, wenn der Spieler sich registriert hat, ein Dialog erstellt.
ShowPlayerDialog dürfte nun klar sein, playerid, auch, die 1000 ist die Dialog id, DIALOG_STYLE_MSGBOX ist der Style in diesem Fall kann man nix auswählen es kommt einfach nur eine Nachricht, "Tutorial" ist die Überschrift dannach kommt die Nachricht und der Weiter Button.
Jetzt muss bei OnDialogResponse dieses hier rein:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1000)// wenn die Dialog id 1000 ist
{
if(response)//Wenn er auf weiter geklickt hat
{
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", " Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");//das gleiche wie oben erklärt
}
else// wenn er auf Abbrechen gedrückt hat wird ihm eine Nachicht gesendet und er wird gekickt
{
SendClientMessage(playerid, COLOR_RED, "Um auf unserem Server spielen zu können, muss das Tutorial gemacht werden!");
Kick(playerid);
}
}
if(dialogid == 1001)// wie oben
{
if(response)//Wie oben
{
ShowPlayerDialog(playerid, 1002, DIALOG_STYLE_MSGBOX, "Tutorial", " Verboten ist:\n\n -Sinnlos DM\n\n -Totparken von Usern\n\n -Beleidigen anderer Spieler\n\n Die oben genannten Sachen werden mit einem Prisonaufenthalt bestraft\n\n Solltest du von anderen Spielern belästigt werden oder wenn du Hacker erwischt,\n\n Benutze: /report","Weiter","");// oben erklärt
}
}
if(dialogid == 1002)// wie oben
{
if(response)// wie oben
{
ShowPlayerDialog(playerid, 1003, DIALOG_STYLE_MSGBOX, "Tutorial", " Auf unserem Server gibt es mehrer wichtige Orte.\n\nDiese erreichst du mit /navi\n\nSolltest du Hilfe benötigen:\n\n-Benutze zuerst /help\n\n-Wenn du dort keine Lösung findest, frage andere User\n\n Solltest du dann immer noch nicht die Lösung zu deinem Problem haben kannst du mit /sup einen Supportet frgen.","Weiter","");// wie oben
}
}
if(dialogid == 1003)// wie oben
{
if(response)// wie oben
{
ShowPlayerDialog(playerid, 1004, DIALOG_STYLE_LIST, "Frage 1: Welche von den 3 Sachen muss beachtet werden?", "A: Ampeln\n\nB: Höchstgeschwindigkeit 80 km/h\n\nC: Links vor Rechts","Ok","");// in DIALOG_STYLE_LIST kann er nun etwas auswählen
}
}
if(dialogid == 1004)// wie oben
{
if(response)// wie oben
{
if(listitem == 0)// soo nun wenn er die erste antwort ausgewählt hat(in Pawno fängt eigentlich alles mit 0 an)
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// die nachicht
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// bezweckt, dass er da Tutorial wiederhohlen muss
}
if(listitem == 1)//wenn er das 2. ausgewählt hat
{
SendClientMessage(playerid, COLOR_RED, "Richtig!");// wie oben
ShowPlayerDialog(playerid, 1005, DIALOG_STYLE_LIST, "Frage 2: Was ist Verboten?", "Totparken von Usern, User beleidigen, Sinnlos DM\n\nTotparken von Usern, zu langsam fahren, Sinnlos DM\n\nTotparken von Usern, Rechts vor Links, Sinnlos DM","Ok","");// wird ihm der Nächste Dialog gezeigt
}
if(listitem == 2)//wnn er das 3. ausgewählt hat
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// wie oben
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// wie oben
}
}
}
if(dialogid == 1005)// wie oben
{
if(response)// wie oben
{
if(listitem == 0)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Richtig!");// wie oben
ShowPlayerDialog(playerid, 1006, DIALOG_STYLE_LIST, "Frage 3: Was solltest du zuerst machen, wenn du Hilfe benötigst?", "/sup\n\nAndere User fragen\n\n/help","Ok","");// wie oben
}
if(listitem == 1)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// wie oben
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// wie oben
}
if(listitem == 2)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// wie oben
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// wie oben
}
}
}
if(dialogid == 1006)// wie oben
{
if(response)// wie oben
{
if(listitem == 0)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// wie oben
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// wie oben
}
if(listitem == 1)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Bitte lies das Tutorial sorgfältiger!");// wie oben
ShowPlayerDialog(playerid, 1001, DIALOG_STYLE_MSGBOX, "Tutorial", "Auf unserem Server müssen Ampeln nicht beachtet werden.\n\nEs gilt jedoch Rechts vor Links.\n\nDa dies ein Deutscher Server ist, wird auf der rechten Fahrbahn gefahren.\n\nDie höchst Geschwindigket in der Stadt beträgt 80 km/h.", "Weiter" ,"");// wie oben
}
if(listitem == 2)// wie oben
{
SendClientMessage(playerid, COLOR_RED, "Richtig!");// wie oben
ShowPlayerDialog(playerid, 1007, DIALOG_STYLE_MSGBOX, "Tutorial","Da du nun bestens bescheid weist,\n\nwünscht dir das Team viel Spaß!!!\n\nKlicke nun auf Spawn!", "Spawn", "");// ist jetzt wieder eine Nachicht
}
}
}
if(dialogid == 1007)// wie oben
{
if(response)// wie oben
{
SpawnPlayer(playerid);// Lässt den Spieler Spawnen
}
}
return 0;//ganz wichtig bei Dialogen immer am Ende return 0;
}
Jetzt muss noch nach ganz oben ins Script:
#define COLOR_RED 0xFF0000AA
dürfte klar sein
Zuletzt noch eine erklärung:
Das \n was ihr bei ShowPlayerDialog seht ist um in einer neuen Zeile weiter schreiben zu lassen.
Sry für Rechtschreibfehler, nobody is perfect!
Fragen bitte per PM oder hier in den Thread.
MfG Ber912
//edit Paar Rechtschreibfehler verbessert
//edit 2 Pawn Code eingerückt