Supportermobil in einer Dialog_Box

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo liebe Community,


    da ich das Thema "DialoxBox" nicht beim Scripten zu 100% behersche wollte


    ich euch mal um Hilfe fragen. ALso ich möchte gerne zwischen 3 Supportmobilen wechlen können in


    einer Dialog Box. D.H: Ich gebe /supmobil ein und eine DialogBox erscheint mit 3 Autotypen


    z.b


    - Commet,


    - SupperGt


    - Vortex



    Kann mir jetz bitte einer sagen wie ich das so aufrufen kann das mir die MSG Box angezeigt wird.


    Ich habe ein Stark Editiertes Godfather (selber editiert) und yaa ich benutze if(strcmp,cmd( <- Commands



    Ich bitte um Hilfe

  • #define DIALOG_SUBCARS


    danach:
    if(strcmp(cmdtext,"/supcars",true,10) == 0)
    {
    if(Adminabfrage)
    {
    ShowplayerDialog(playerid,DIALOG_SUBCARS,DIALOG_STYLE_LIST,"Cars","Comet\nSuper GT\n Infernus","Wählen","Abbrechen");
    }
    return 1;
    }


    dann weiter mit


    if(dialogid == DIALOG_SUBCARS)
    {
    if(responst == 0)
    {
    }
    if(response == 1)
    {
    switch(listitem)
    {
    case 0:
    {
    Was passieren soll
    }
    case 1:
    {
    Was passieren soll
    }
    case 2:
    {
    Was passieren soll
    }
    }
    }


    sollte so klappen, nicht getestet

    Back to the roots!

  • Ich erstelle es dir jetz einfach schnell bis gleich ;D


    Das ganz oben bei deinen anderen Defines


    #define supportcars


    Das bei OnPlayercommandtext


    // Mach noch eine Abfrage für admins hin
    if(strcmp(cmd, "/supportcars", true) == 0)
    {
    ShowPlayerDialog(playerid, supportcars ,DIALOG_STYLE_LIST, "Cars" ,"Commet\nInfernus\nSultan", "Holen", "Abbrechen");
    }




    Das bei On Dialog .....


    if(dialogid == supportcars)
    {
    new Float:X,Float:Y,Float:Z;



    if(response)
    {
    if(listitem == 0)
    {
    GetPlayerPos(playerid, X,Y,Z);
    CreateVehicle(480, X,Y,Z, 0.0, 3, 3, -1);
    }
    if(listitem == 1)
    {
    GetPlayerPos(playerid, X,Y,Z);
    CreateVehicle(411, X,Y,Z, 0.0, 3, 3, -1);
    }
    if(listitem == 2)
    {
    GetPlayerPos(playerid, X,Y,Z);
    CreateVehicle(560, X,Y,Z, 0.0, 3, 3, -1);
    }
    }
    }

    Einmal editiert, zuletzt von jaykay ()

  • danke yaykay aber mir kommen diese fehler:



    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : error 029: invalid expression, assumed zero
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : error 001: expected token: ";", but found ")"
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : error 029: invalid expression, assumed zero
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(25592) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


  • do.de - Domain-Offensive - Domains für alle und zu super Preisen

  • if(strcmp(cmd, "/supmobil", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (PlayerInfo[playerid][pSupporter] >= 1 || PlayerInfo[playerid][pAdmin] >= 2)
    {
    ShowPlayerDialog(playerid, supportcars ,DIALOG_STYLE_LIST, "Support Autos" ,"Commet\nTug\nNRG-500", "Spawnen", "Abbrechen");
    }
    }
    return 1;
    }


    das ist mein Code


    der Fehler wir in der Zeile angezeigt:



    ShowPlayerDialog(playerid, supportcars ,DIALOG_STYLE_LIST, "Support Autos" ,"Commet\nTug\nNRG-500", "Spawnen", "Abbrechen");

  • Das ist lediglich ein Klick Mehr. Du klickst auf Autos, dann zb auf Super GT und er wird direkt gespawnt.

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • if(strcmp(cmdtext,"/supmobil",true) == 0)
    {
    if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,0xFF0000FF,"Du bist kein Admin!");
    ShowPlayerDialog(playerid,342,DIALOG_STYLE_LIST,"Supporter Cars","Comet\nSuper GT\nInfernus","Nehmen","Zurück");
    return 1;
    }


    public OnDialogResponse(...)
    {
    if(dialogid == 342)
    {
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    switch(listitem)
    {
    case 0:{ CreateVehicle(480,X,Y,Z,0.0,-1,-1,-1);}
    case 1:{ CreateVehicle(506,X,Y,Z,0.0,-1,-1,-1);}
    case 2:{ CreateVehicle(411,X,Y,Z,0.0,-1,-1,-1);}
    }
    }
    return 1;
    }

  • Wer will den da was von mir nachmachen ? :D



    //Ganz oben:
    #define DIALOG_SUPPORTERAUTO 6987
    #define DIALOG_SUPPORTERAUTO_CARID 6988
    new SupporterAuto[MAX_PLAYERS];
    new SupporterCar[MAX_PLAYERS];


    //Die Commands:
    if(strcmp(cmdtext,"/supcar",true)==0)
    {
    if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pSupporter] >= 1)
    {
    new Float:x,Float:y,Float:z,Float:a;
    GetPlayerPos(playerid,x,y,z);
    GetPlayerFacingAngle(playerid,a);
    if(SupporterCar[playerid]==0)
    {
    ShowPlayerDialog(playerid,DIALOG_SUPPORTERAUTO,DIALOG_STYLE_LIST,"Wähle dein Supportfahrzeugtyp","Maverick\nNRG-500\nSultan\nBullet\nEigene CarID eingeben","Wählen","Beenden");
    return 1;
    }
    else if(SupporterCar[playerid]==1)
    {
    SetVehiclePos(SupporterAuto[playerid],x,y,z);
    SetVehicleZAngle(SupporterAuto[playerid],a);
    SendClientMessage(playerid,COLOR_GREEN,"Du hast dein Supporter Auto zu dir geholt!");
    PutPlayerInVehicle(playerid,SupporterAuto[playerid],0);
    return 1;
    }
    }
    else return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin oder Supporter!");
    return 1;
    }


    if(strcmp(cmdtext,"/supcardel",true)==0)
    {
    if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pSupporter] >= 1)
    {
    if(SupporterCar[playerid]==1)
    {
    DestroyVehicle(SupporterAuto[playerid]);
    SendClientMessage(playerid,COLOR_GREEN,"Du hast dein Supporter Auto Entfernt!");
    SupporterCar[playerid]=0;
    return 1;
    }
    else return SendClientMessage(playerid,COLOR_RED,"Du hast dir noch kein Supporter Auto geholt!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin oder Supporter!");
    }
    return 1;
    }


    //Unter OnDialogResponse:
    if(dialogid == DIALOG_SUPPORTERAUTO_CARID)
    {
    if(response==0)
    {
    ShowPlayerDialog(playerid,DIALOG_SUPPORTERAUTO,DIALOG_STYLE_LIST,"Wähle dein Supportfahrzeugtyp","Maverick\nNRG-500\nSultan\nBullet\nEigene CarID eingeben","Wählen","Beenden");
    }
    if(response==1)
    {
    if(strval(inputtext) < 400 || strval(inputtext) > 611)
    {
    SendClientMessage(playerid,COLOR_RED,"Die CarID muss größer als 400 und kleiner als 611 sein! Alle CarIDS findest du hier: http://wiki.sa-mp.com/wiki/Vehicle_Model_ID_List");
    ShowPlayerDialog(playerid,DIALOG_SUPPORTERAUTO_CARID,DIALOG_STYLE_INPUT,"Wähle dein Supportfahrzeugtyp","Bitte gebe hier die CarID des Fahrzeuges an,\n das du als Supporterfahrzeug nutzen möchtest:","Erstellen","Zurück");
    }
    else
    {
    SupporterAutoErstellen(playerid,strval(inputtext));
    }
    }
    }
    if(dialogid == DIALOG_SUPPORTERAUTO)
    {
    switch(listitem)
    {
    case 0:
    {
    SupporterAutoErstellen(playerid,487);
    }
    case 1:
    {
    SupporterAutoErstellen(playerid,522);
    }
    case 2:
    {
    SupporterAutoErstellen(playerid,560);
    }
    case 3:
    {
    SupporterAutoErstellen(playerid,541);
    }
    case 4:
    {
    ShowPlayerDialog(playerid,DIALOG_SUPPORTERAUTO_CARID,DIALOG_STYLE_INPUT,"Wähle dein Supportfahrzeugtyp","Bitte gebe hier die CarID des Fahrzeuges an,\n das du als Supporterfahrzeug nutzen möchtest:","Erstellen","Zurück");
    }
    }
    }


    //Ganz unten im Script:
    stock SupporterAutoErstellen(playerid,carid)
    {
    new Float:x,Float:y,Float:z,Float:a,string[256];
    GetPlayerPos(playerid,x,y,z);
    GetPlayerFacingAngle(playerid,a);
    SupporterAuto[playerid]=AddStaticVehicle(carid,x,y,z,a,1,1);
    PutPlayerInVehicle(playerid,SupporterAuto[playerid],0);
    new car=GetVehicleModel(GetPlayerVehicleID(playerid));
    format(string,256,"Du hast ein Supporter Fahrzeug erstellt. Fahrzeugname: %s.",CarName[car-400]);
    SendClientMessage(playerid,COLOR_GREEN,string);
    SetVehicleParamsEx(SupporterAuto[playerid],1,1,0,0,0,0,1);
    SupporterCar[playerid]=1;
    return 1;
    }
    //Unter OnPlayerDisconnect:
    DestroyVehicle(SupporterAuto[playerid]);


    MfG.
    Me


    //edit Code editiert

  • also ich habe jetz ein ganz anderes Tutorial im Interngefundne und es mal nachgemacht aber es funktioniert nicht...
    Was nciht funktioniert ist das wen Ich den Spawn butten drücke er mir nicht spawn sondern den Dialog verlässt, drücke ich aber auf Abbrechen dan
    Spawnt er mir das auto ...


    Codes:



    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/supmobil", cmdtext, true, 10) == 0)
    {
    ShowPlayerDialog(playerid,16,DIALOG_STYLE_LIST,"Support Fahrzeuge","Comet\nTug\nQuad","Spawnen","Abbrechen");
    return 1;
    }
    return 0;
    }



    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == 16)
    {
    if(response == 0)
    switch(listitem)
    {
    case 0:
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    new car = AddStaticVehicle(480,x,y,z,1.0290,159,160);
    PutPlayerInVehicle(playerid,car,0);
    SendClientMessage(playerid, Gelb, "Du hast dir einen Cometen gespawnt");
    sirene1[GetPlayerVehicleID(playerid)] = CreateObject(18646,0,0,0,0,0,0,100);
    AttachObjectToVehicle(sirene1[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),-0.5,0.0,0.85,0,0,0);
    UCL[GetPlayerVehicleID(playerid)] = 1;
    }
    case 1:
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    new car = AddStaticVehicle(583,x,y,z,1.0290,159,160);
    PutPlayerInVehicle(playerid,car,0);
    SendClientMessage(playerid, Gelb, "Du hast dir einen Tug gespawnt");


    }
    case 2:
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    new car = AddStaticVehicle(471,x,y,z,1.0290,0,151);
    PutPlayerInVehicle(playerid,car,0);
    SendClientMessage(playerid, Gelb, "Du hast dir eine Quad gespawnt");
    }
    }
    }
    return 1;
    }

  • @Inteligent:
    Bei mir kommen diese Warnings dan raus :P



    C:\Users\Oliver - Kai\Desktop\Sup.pwn(75) : error 017: undefined symbol "PlayerInfo"
    C:\Users\Oliver - Kai\Desktop\Sup.pwn(75) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\Sup.pwn(75) : error 001: expected token: ";", but found "]"
    C:\Users\Oliver - Kai\Desktop\Sup.pwn(75) : error 029: invalid expression, assumed zero
    C:\Users\Oliver - Kai\Desktop\Sup.pwn(75) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.