samp-async-dialogs

Započeo PATRIJARH SRPSKI, Mart 27, 2020, 15:29:18 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.



Ⅰ) Šta je ovo?
Jako je slično y_dialogsima (using inline), unutar same funkcije pravite response dialoga (potreban je PawnPlus, logično).

Ⅱ) Kako se instalira?
Lagano, sampctl p install AGraber/samp-async-dialogs ili samo rokneš async-dialogs.inc u -i folder i tjt.

Ⅲ) Kako se koristi?
Još lakše;
Napravio sam jedan kratak primer koji koristi sve što ovaj include nudi, ništa pretarano, samo da razumete dok me ne banuju:
[pawn]stock showAgeDialog(const playerid) {
   new ageDialog[e_DIALOG_RESPONSE_INFO];
   await_arr(ageDialog) ShowPlayerAsyncDialog(playerid, DIALOG_STYLE_INPUT, ""SERVER"Nalog > "WHITE"Koliko Vaš "SERVER"karaktera "WHITE"ima godina?", ""SERVER">> "WHITE"Molimo Vas da unesete željene godine Vašeg IC karaktera:", D_CONFIRM, D_CANCEL);
   
   if (ageDialog[E_DIALOG_RESPONSE_Response]) {
      PlayerAge[playerid] = ageDialog[E_DIALOG_RESPONSE_InputText];
      va_PlayerTextDrawSetString(playerid, PTD_Register[playerid][30], "%s", (PlayerGender[playerid] == 1) ? ("Zensko") : ("Musko"));
   }
}[/pawn]
>> new ageDialog[e_DIALOG_RESPONSE_INFO];
Kreirate ID dialoga tj. preko ovoga vežete dialog za e_DIALOG_RESPONSE_INFO enum.

Šta je unutar tog enuma?
Ovo brale, običan dialog jebo ga ne može zmaja stavit unutra:

[pawn]enum e_DIALOG_RESPONSE_INFO
{
   E_DIALOG_RESPONSE_Response,
   E_DIALOG_RESPONSE_Listitem,
   E_DIALOG_RESPONSE_InputText[128 + 1],
}[/pawn]

>> await_arr(ageDialog)
Šta je sad pa ovo?
Ništa što tebe zanima, treba da znaš samo da je to Macro unutar PawnPlusa tako da u istoj liniji moraš imati ShowPlayerAsyncDialog funkciju.

E_DIALOG_RESPONSE_Response je ono što sam već gore rekao, vezano za enum u kom su svi podaci, ovo je ako je odgovor bio true posle await-a, samo rokni else ispod ako ti treba ono što je inače if (!response).

PlayerAge[playerid] = ageDialog[E_DIALOG_RESPONSE_InputText];
E_DIALOG_RESPONSE_InputText, samo ime kaže, zamena za ono što je inače inputtext.

Tjt da ne serem puno, sve si skontao :)

I da, da dodam, postoji i ShowPlayerAsyncDialogStr(playerid, style, ConstStringTag:caption, ConstStringTag:info, ConstStringTag:button1, ConstStringTag:button2) koja koristi PawnPlus stringove (možete koristit str_format unutar same funkcije,  ne treba vam format u prevodu, dinamičan string razumeš me jebiga pisao sam tutorial vec skrolaj dole)


Citat: Galardo poslato Mart 27, 2020, 15:30:37 POSLE PODNE
DJESI MAKENZI LJUBAVI MOJA STARAAAA
Kud god da krenem tebi se vracam ponovoooooooooooooooooooooo

Makenzi, zaboravljas da je ovo Balkan, sampctl i PawnPlus se ovde ne koriste :D :D

Citat: V01D poslato Mart 27, 2020, 15:42:49 POSLE PODNE
Makenzi, zaboravljas da je ovo Balkan, sampctl i PawnPlus se ovde ne koriste :D :D
Ma jebiga, oće za par godina, cek da ih stigne tehnologija, i dalje su u 2009 :D

Korisno, lepo  :)
Web, C/C++ and PAWN Developer

Inace tek sada sam skontao da sam zab edit ime varijable tamo u va_, nmvz :D
Citat: Alex Collins poslato Mart 27, 2020, 16:22:06 POSLE PODNE
Korisno, lepo  :)
Fala