[TuT] Izrada Dialoga (ovom slucaju DIALOG_STYLE_LIST)

Započeo McAfee, April 19, 2012, 19:37:09 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Gledao sam nesto po forumu i tutorialima i primetio da nema ovog tutoriala pa sam resio da vam ovjasnim kako da napravite najjednostavniji Dialog...

0.3 UPDATE!


1. Kao prvo treba dodati u OnPlayerCommandText komadnu za pokretanje MSGBOX ((ovo nemora moze i dolaskom na checkpoint ali mi cemo ovako). Komanda ce izgledati ovako kod nas.

if(strcmp(cmd, "/tutorial", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
ShowPlayerDialog(playerid,5001,DIALOG_STYLE_LIST ,"Dialogs Tutorial","\nTut1\nTut2\nTut3","Odaberi","Odustani");

}
}


ako koristite ZCMD ubacicete sledecu funkciju

CMD:tutorial(playerid, params[])
{

Znaci ubacite prvo ovo pa posle toga sve ono ostalo kao kod if(strcmp(cmd, "/test", true) == 0)
{

Samo naravno bez toga...


Sada malo da vam razjaznim sta sve ovo gore znaci!

Znaci imate sledece ShowPlayerDialog pa unutra stoji broj 5001

To vaj je broj za vas Dialog... Taj broj vam stavlja destinaciju za razradu dialoga koji ce nam trebati kasnije, jednom recju u taj dialog ubacujete kasnije funkcije ili bilo kakav tekst koji zelite da vide igraci.

Sledeca funkcija u dialogu je DIALOG_STYLE_LIST

To vam je funkcija za odabir kakav dialog zelite da imate... Nisu svi dialozi isti postoji 4 razlicita dialoga (MSGBOX,LIST,INPUT I PASSWORD)... Mi smo uzeli DIALOG_STYLE_LIST za ovaj nas tutorial. Necu vas zamarati ostalim dialozima posto za onoga ko nezna da barata njima i ovo ce biti tesko.

Idemo na sledece objasnjenje "Dialogs Tutorial"

To vam je kako ce taj Dialog da nosi naziv. Taj naziv se nalazi na vrhu dialoga

Sledece tu je i "\nTut1\nTut2\nTut3"

To su vam podelci u Dialogu znaci ovde imacete 3 podelka u dialogu(tut1, tut2, tut3) za svaki podelak trebate da ubacite odredjeni dialogid (TO CEMO KASNIJE UBACIVATI)
Sad kako znate da ima tri podelka? Pa jednostavno ovo sto stoji izmedju tutova \n vam pravi novi red na podelku... Zbog toga ce ovo stojati jedno ispod drugog.

2. UBACIVANJE FUNKCIJE U DIALOGID!!!

E sada kada ste sve ovo lepo napravili gore trebate da ubacite funkciju.
To radimo na sledeci nacin:
Prvo pritisnete ctrl + f i nadjete

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
Kada ste to nasli ubacujete dialogid to izgleda ovako
if(dialogid == 5001)
Primetili ste da ovde stoji broj 5001, to je broj naseg dialoga gore sto smo stavilo...
Sledece sto trebamo da ubacimo je
if(response) Ovo necu puno da objasnjavam to je respons za vas dialog
i na kraju ubacujete
if(listitem == 0)
To vam je definicja podelka znaci kada kliknete po podelku Tut1 ovo je definicija sta ubacujete ili koju funkciju ubacujete u taj podelak...

Uvako to sve treba da izgleda:
if(dialogid == 5001)
{
    if(response)
    {
        if(listitem == 0)
{
}
else if(listitem == 1)
{
}
else if(listitem == 2)
{
}
                     }
               }


Sada ispod ovih zagrada ubacujete sta ce oznacavati funkcija na primer mi cemo ubaciti u sve tri " http://balkan-samp.com/forum/index.php?topic=42348.msg318601#msg318601" - to je link tutoriala
i to ce sve izgledati ovako na serveru
if(dialogid == 5001)
{
    if(response)
    {
        if(listitem == 0)
{
                                       SendClientMessage(playerid, COLOR_LIGHTBLUE, "*  http://balkan-samp.com/forum/index.php?topic=42348.msg318601#msg318601.");
}
else if(listitem == 1)
{
                                       SendClientMessage(playerid, COLOR_LIGHTBLUE, "*  http://balkan-samp.com/forum/index.php?topic=42348.msg318601#msg318601.");
}
else if(listitem == 2)
{
                                       SendClientMessage(playerid, COLOR_LIGHTBLUE, "*  http://balkan-samp.com/forum/index.php?topic=42348.msg318601#msg318601.");
}
                     }
               }
Poslednja Izmena: April 19, 2012, 19:42:58 POSLE PODNE od McAfee
~~~ProSolution Roleplay Samp Server
ProSolution RolePlay Nas ip je: 193.192.59.107:7783

~~~ProSolution TeamSpeak 3~~~
iNfamous Team Speak 3 Server...  64.31.59.188:9999

~~~ProSolution Roleplay Forum
ProSolution RolePlay Nas forum je:

Fino uradjeno..svaka cast!
Poslednja Izmena: April 19, 2012, 19:39:16 POSLE PODNE od ^HuDiGa.amx ^^.


Citat: [BG]...Р৸illipS... poslato April 19, 2012, 19:41:53 POSLE PODNE
Ovaj tutorial nista nevalja sta je ovo bolje da si napravio neku komandu u zcmd i sve lepo objasnio..A ne ovako ovo neide niposto jer ovo nesluzi nicemu
if(IsPlayerConnected(playerid))
I mogao si staviti nesto u listitem da pocetnicima bude lakse uglavnom moglo je ovo mnogo bolje al pohvala za trud.

Po meni je ovo sasvim fino odradjeno,i lako je nauciti iz ovog ! .

Citat: ^HuDiGa.amx ^^. poslato April 19, 2012, 19:46:01 POSLE PODNE
Citat: [BG]...Р৸illipS... poslato April 19, 2012, 19:41:53 POSLE PODNE
Ovaj tutorial nista nevalja sta je ovo bolje da si napravio neku komandu u zcmd i sve lepo objasnio..A ne ovako ovo neide niposto jer ovo nesluzi nicemu
if(IsPlayerConnected(playerid))
I mogao si staviti nesto u listitem da pocetnicima bude lakse uglavnom moglo je ovo mnogo bolje al pohvala za trud.

Po meni je ovo sasvim fino odradjeno,i lako je nauciti iz ovog ! .
Ne mozes ti ovde nista nauciti, jedino ako ces pogresno da ucis.

I ajde nemojte vise pisati tutorijale ako i sami ne znate. Prvo naucite pa onda pisite. Ovako samo bzvz zatrpavate korisne tutorijale!