Szerző Téma: Dialogus valamit nem jól csinálok  (Megtekintve 366 alkalommal)

Nem elérhető Stramm

  • 193
    • Profil megtekintése
Dialogus valamit nem jól csinálok
« Dátum: 2013. Március 30. - 18:10:10 »
0 Show voters
Sziasztok nos én létrehoztam egy dialogot
-Ezzel csak annnyi a gondom hogy   public OnDialogResponse -nél nem jeleníti meg mármint
/help ez eddig jó viszont ha én rámegyek hogy jármûvekhez akkor kilép a dialogból
Én nem nagyon értek a dialogokhoz úgyhogy valaki megmondaná mi a baj?
 
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/help\", cmdtext, true, 10) == 0)
{
ShowPlayerDialog ( playerid, 2, DIALOG_STYLE_LIST, \"Parancsok\", \"Általános Parancsok\\nJármûvekhez\",\"Kiválaszt\", \"Mégse\" );
return 1;
}
return 0;
}
 
public OnDialogResponse ( playerid, dialogid, response, listitem, inputtext [ ] )
{
    if (dialogid == 1 )
    {
        if ( !response )
        {
              ShowPlayerDialog ( playerid, 0, DIALOG_STYLE_MSGBOX, \"Jármûvekhez\", \"Jármû lekérése: /v (Id) Vagy (Név)\\nJármû Felálítása:/vflip\\nJármûvel ugrálás: /carjump (Lõvésgomb)\\n\",\"Kiválaszt\", \"Mégse\" );
              return 1;
        }
        if ( listitem == 0 )
        {
              SendClientMessage ( playerid, 0xFF0000FF, \"Te az elsõ lehetõséget választottad!.\" );
        }
        if ( listitem == 1 )
        {
              SendClientMessage ( playerid, 0xFF0000FF, \"Te a második lehetõséget választottad!.\" );
        }
        return 1;
    }
    return 0;
}

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Dialogus valamit nem jól csinálok
« Válasz #1 Dátum: 2013. Március 30. - 20:18:54 »
0 Show voters
Persze, hogy azért nem jeleníti meg neked mert:
 
if(!response)

 
helyett ezt kell írni:
 
if(response)

 
Hogy miért? Egy ! jel van közte.. if(!response) ez a Cancel gomb és a sima if(response) pedig az Yes gombja.

Dialogus valamit nem jól csinálok
« Válasz #2 Dátum: 2013. Március 31. - 00:14:49 »
0 Show voters
A parancs 2-es dialogid-t küld az OnDialogResponse alatt viszont az egyest adtad meg, így nem csoda hogy nem történik semmi.
A dialogid azonosítja be hogy éppen melyik ShowPlayerDialog meghívása után kerüljön felhasználásra az OnDialogResponse alá írt kódsorozat.
A listitem a ShowPlayerDialog-nál használt DIALOG_STYLE_LIST-nél jön képbe, mikor \\n-el sorokat hoznak létre.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal