Hey, wollt euch ein simples tutorial zeigen, wie man ein GPS/Navi Command macht, das ein Dialog erscheint und es zu einen Checkpoint hinführt!
Fangen wir mal an!
unter includes erstellt ihr ein neuen define für diesen Dialog der dann erscheinen soll wenn man /gps macht! Das sieht so aus:
#define DIALOG_GPS 5 Es hat die Zahl 5 da ich schon 4 weitere Dialoge habe, bei mir sieht es so aus:
//DefinesDIALOG
#define DIALOG_TUTORIAL 1
#define DIALOG_REGISTER 2
#define DIALOG_LOGIN 3
#define DIALOG_JOBLIST 4
#define DIALOG_GPS 5
Also wenn ihr keine anderen Dialoge habt, stellt ihr die Zahl 0 oder 1 hinter dem #define DIALOG_GPS
Dann geht ihr zu OnPlayerCommandText und mach ein command dafür
if(strcmp(cmdtext,"/gps",true)==0)
{
ShowPlayerDialog(playerid,DIALOG_GPS, DIALOG_STYLE_LIST, "Important places", "Driving school\n Tutorial\n BSN\n Jobcenter", "Find", "Cancel");
return 1;
}
// /gps ist der Command der eingegeben werden soll. Für "Important places kommt der Titel der dann in der Box erscheint,
Dann kommen die Orte die man Finden kann. Auch die könnt ihr ändern aber
immer mit \n kommt das nächste. \n steht für den nächsten Absatz. Mit
leertaste wird das nicht klappen^^. Und dann die Buttons, Find oder
Cancel, ich habs jezt in Englisch da ich einen Englischen RP Script
mache, natürlich Selfmade!
Danach geht ihr auf OnDialogResponse und stellt ein, was erscheinen soll wenn man den Dialog aufruft.
if(dialogid==DIALOG_GPS) //Dialog ID, wenn dialog Beispiel ist, soll...
{
if(response)//Wenn sie auf den Linken Button drücken...
switch(listitem)//Wenn ein Item von der Liste ausgewählt wurde
{
case 0://Erste Item, bei mir ist es z.B dann Driving School, da ich das als erstes in der Tabelle eingefügt hab
{
SetPlayerCheckpoint(playerid,-1687.2301,377.7286,6.7881,3.0);// Der Checkpoint wird gesetzt, playerid, xyz, und 3,0 für die größe des Checkpoints
SendClientMessage(playerid, WHITE, "Follow the Checkpoint!.");// Die Nachricht. Bitte WHITE nicht benutzen, wenn ihr die Farbe noch nicht defeniert habt.
}
case 1://Item 2 aus der liste
{
SetPlayerCheckpoint(playerid,1097.2717,-1794.5433,13.6046,3.0);
SendClientMessage(playerid, WHITE, "Follow the Checkpoint!.");
}
case 2://Item 3 aus der liste
{
SetPlayerCheckpoint(playerid,1211.7794,-924.3547,42.5275,3.0);
SendClientMessage(playerid, WHITE, "Follow the Checkpoint!.");
}
case 3://Item 4 aus der liste
{
SetPlayerCheckpoint(playerid,591.8506,-1244.0804,17.6145,3.0);
SendClientMessage(playerid, WHITE, "Follow the Checkpoint!.");
}
}
return 1;
}
Und das wars