- easyDialog -
Å ta je easyDialog?
easyDialog je još jedan dodatak za dialoge, cilj easyDialog.inc-a je da olakša upotrebu dosadnih dialoga.
Prednosti i Mane
Prednosti:
> Lako se koristi & modular friendly je!
> Poboljšava organizaciju (urednost) moda za 300%
> Rešen je problem IDova, easyDialog koristi "named dialog" tako da više nema potrebe za deklaracijom IDova koji svima prave problem!
> ViÅ¡e nema potrebe da pravite stringove, to jest ima ali u većini sluÄajeva Vam neće trebati!
Feature OnDialogResponse easyDialog.inc
Crash Proof No Yes
Named Dialogs No Yes
Calling a dialog manually No Yes
Custom callback for handling No YesMane:
> Za sada ih nisam primetio i verujem da ih nema!
Funkcije; Callbackovi; Primeri
Funkcije:
> Prikazivanje dialoga:
Dialog_Show(playerid, dialog, style, caption[], info[], button1[], button2[], {Float,_}:...);> Zatvaranje otvorenog dialoga:
Dialog_Close(playerid);> Prikazivanje dialoga: Vraća 1 kao rezultat ukoliko je dialog prikazan igraÄu.
Dialog_Opened(playerid);Callbackovi:
> Ovaj include ( easyDialog.inc ) donosi novi callback : OnDialogPerformed!
> Ovaj callback se poziva pre nego Å¡to je Dialog prikazan igraÄu, return 0; će obustavati izvrÅ¡avanje dialoga.
Primer:
CMD:weapons(playerid, params[])
{
Dialog_Show(playerid, WeaponMenu, DIALOG_STYLE_LIST, "Weapon Menu", "9mm\nSilenced 9mm\nDesert Eagle\nShotgun\nSawn-off Shotgun\nCombat Shotgun", "Select", "Cancel");
return 1;
}
Dialog:WeaponMenu(playerid, response, listitem, inputtext[])
{
if(response)
{
new str;
format(str, 64, "Izabrali ste '%s'.", inputtext);
GivePlayerWeapon(playerid, listitem + 22, 500);
SendClientMessage(playerid, -1, str);
}
return 1;
}
public OnDialogPerformed(playerid, dialog[], response, success)
{
if(!strcmp(dialog, "WeaponMenu") && IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, 0xFF0000FF, "Ne mozete biti u vozilu, dialog je obustavljen!");
return 0;
}
return 1;
}NOTICE: Ne morate da pravite stringove ukoliko želite samo prenošenje argumenata na specifier-e, posle button2[] idu argumenti!