GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Stramm - 2013. március 30. - 18:10:10

Cím: Dialogus valamit nem jól csinálok
Írta: Stramm - 2013. március 30. - 18:10:10
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;
}
Cím: Dialogus valamit nem jól csinálok
Írta: ZyZu. - 2013. március 30. - 20:18:54
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.
Cím: Dialogus valamit nem jól csinálok
Írta: Zsolesszka - 2013. március 31. - 00:14:49
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.