Prbeszd panelek, dialogusok, ltrehozsa
forrs:Scream,SAMP FRUM
dvzlk mindenkit.
Tudom, ZeRo mr rt egy ilyesfajta leckt, de mivel trlve lett, gy gy gondoltam, j lenne, ha jra itt lenne,
s segtene a szkriptereknek / magn embereknek a lers.
( Ez sajt! )
Elsz
Mit is jelent a dialgus?
A dialgus az angol dialog (U.S.A) s a dialogue (Brit) szbl keletkezett. Jelentse: prbeszdek, prbeszd panelek
Milyen clt szolgl a dialgus?
Pldul, a 0.2.x -es idszakban (s ezeltt) a szoksos SendClientMessage() (zenet-kldses)
fggvnyt hasznltuk a jtkos dvzlsre.
A 0.3 -as idszak teht mr itt van, elrkezett. gy teht, az zenet dobozt is hasznlhatjuk zenet klds helyett
, ami sokkal megknnyti a mindennapi szkripter dolgainkat.
Bevezets: A prbeszd panelek
A dialgus fajti: zenet doboz (Message Box), Adatkezel doboz (Input Box) s Vlaszt doboz (vagyis: Lista,
kivlaszt doboz, angolul pedig: List)
Ezekre mind rni fogok lerst, s pldt egyarnt.
Az zenet doboz:
Az zenet doboz azt teszi elrhetv szmunkra, hogy a jtkosnak a prbeszd panellel egytt zenetet kldjnk neki.
A kivlaszt/lista doboz:
A kivlaszt, illetve a lista doboz azt teszi elrhetv szmunkra, hogy a jtkosnak a
prbeszd panellel egytt zenetet kldjnk neki, s majd a megadott szvegekbl kattintsra opcit vlaszthat. (pldul autt krhet le)
Az adatkezel/beviteli szveg kezel doboz:
Az adatkezel, illetve a beviteli szveg kezel doboz azt teszi elrhetv szmunkra, hogy a jtkosnak
a prbeszd panellel egytt egy olyan zenet kldjnk neki, amelybe bekell rjon 1, vagy tbb szmot, kdot, stb.
A prbeszd paneleknek sajt fggvnyk/funkcijuk van.
- Funkci: ShowPlayerDialog( paramterek );
- Fggvny: OnDialogResponse( paramterek );
Ezeket ksbb bvebben kifejtem.
Egy plda az adatkezel prbeszd panelre:
ShowPlayerDialog(playerid, DIALGUS_AZONOST, DIALOG_STYLE_INPUT, "Bejelentkez ablak","rd be a jelszavad!","Bejelentkez", "Mgse");
Elemezzk!
ShowPlayerDialog
playerid
DIALGUS_AZONOST
- Ez a prbeszd paneled azonostja. Ha tbb dialgusod van, s nem akarod hogy sszekeveredj bennk,
akkor itt egy kd rszlet, amit a mdod/szkripted tetejre msold be, s hasznld fel!
Kiegszt:
#define DIALOG_0 (0) #define DIALOG_1 (1) #define DIALOG_2 (2)
A kiegszt utn, elemezzk tovbb a plda szkriptet!
Tovbbi prbeszd panel defnicik:
DIALOG_STYLE_MSGBOX - zenet doboz
DIALOG_STYLE_LIST - Lista doboz (Kivlaszt doboz)
Bejelentkez ablak
rd be a jelszavad!
Bejelentkez
Mgse
Tovbbi pldk:
Plda az zenet klds prbeszd panelre:
ShowPlayerDialog(playerid, DIALOG_0, DIALOG_STYLE_MSGBOX, "Jzska gyerek", "Csumika teska.\nNzd meg te is a Gollam Show -t a j tybon!","Megnzem","Vissza!");
Ebben a pldban tallunk egy
\n
Tovbbi hasonl kombincik: \t Jelentse: Kihagyst kszt a sorok kzt. (Ugyanaz, mintha a PAWNO -ban megnyomnd a TAB gombot)
Plda a lista / kivlaszt prbeszd panelre:
ShowPlayerDialog(playerid, DIALOG_1, DIALOG_STYLE_LIST, "Vlaszd ki a harc stlusod!", "Kung-Fu\nBox\nElkaps s rgs","Kivlaszt","Mgse");
s, ugyebr mivel a gombok mg gyakorlatilag semmit sem csinlnak, gy ezt is neknk megkell csinlnunk.
Egy plda erre, s majd elemzs:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == DIALOG_0) { if(response == 1) { SendClientMessage(playerid, SAJT_SZIN, "Szp j estt!"); } else { SendClientMessage(playerid, PIROSKA, "A Mgsre kattintottl :("); } return 1; } return 0; }
Elemezzk!
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
if(dialogid == DIALOG_0)
if(response == 1)
Ami az else sz alatt van, az azt jelenti, hogy a jtkos a 2. gombra ment r. teht ltalban ez a nemet, vagy a mgst jelenti.
Komplett szkript:
A kezdknek ez elengedhetetlen, mivel csak gy fogjk megtanulni a prbeszd panelek hasznlatt.
![Wink](http://users.atw.hu/hun-sa-mp-forum/Smileys/new/wink.gif)
Plda szkript tartalma: 3 db mkd prbeszd panel
LETLTS.....
Utsz
HAMAROSAN KPEK VRHATAK!
A komplett szkript alapjn krek mindenkit, hogy tanulmnyozza a prbeszd panel ksztst!
Valamint, ha valami problma lenne a lerssal, akkor nyugodtan szljatok, javtom.
Ezek utn, kvnok mindenkinek kellemes prbeszd panel ksztst!
![Wink](http://users.atw.hu/hun-sa-mp-forum/Smileys/new/wink.gif)
![Smiley](http://users.atw.hu/hun-sa-mp-forum/Smileys/new/smiley.gif)
{color id} pl: Piros: {FF0000} ezt a szveg el pl.:
{FF0000}Ez egy Piros szveg!
„ Anyi krdsem lene hogy hogy lehet a dialgusban a szvegeket szinezni???
Ez rdelekhet mst is az egyebekhez vagy valakova ahol megtallhat fel kne rakni.
Mert tudom hogy lehet mert ltam csak netom hogy!!!