easyDialog : No IDs no sh*t!

Započeo Osamu Dazai, Avgust 28, 2019, 18:16:50 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

- 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 Yes


Mane:
> Za sada ih nisam primetio i verujem da ih nema!


Funkcije; Callbackovi; Primeri
Funkcije:
> Prikazivanje dialoga:
[pawn]Dialog_Show(playerid, dialog, style, caption[], info[], button1[], button2[], {Float,_}:...);[/pawn]

> Zatvaranje otvorenog dialoga:
[pawn]Dialog_Close(playerid);[/pawn]

> Prikazivanje dialoga: Vraća 1 kao rezultat ukoliko je dialog prikazan igraču.
[pawn]Dialog_Opened(playerid);[/pawn]


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:
[pawn]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[64];
      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;
}[/pawn]


NOTICE: Ne morate da pravite stringove ukoliko želite samo prenošenje argumenata na specifier-e, posle button2[] idu argumenti!


My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.


My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.


My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.

EasyDialog - Easy tutorial hehe , good job, kad ce ono za style code da vidimo? :P

One And Only
Old Member
Since AVGUST 2013. :)
GAME OVER - SCRIPTING
SINCE 2009 - 2020

Citat: LANMY.pwN poslato Avgust 28, 2019, 20:52:42 POSLE PODNE
EasyDialog - Easy tutorial hehe , good job, kad ce ono za style code da vidimo? :P
Toga ima najviše tako da polako, radim mod od nule sada pa nemam baš vremena za kompleksne tutoriale :P
My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.

Smirite se obojica , nije ovdje mjesto da se svadjate ...
Tema
Gud job maj frend , korisno  ;D
[ мαтяүx ]
- Pusti našu pjesmu , tebi čuvam zadnji ples -

Opet sam propustio fajt :( fakkk
@tema naisuuuu

Mnogo imaš ti još da jedeš kačamak.
skrr
Moj tutorijali: Bazilion indent warninga
WORK? : Smart Project 1.2 , Leskovacki Detmec, Rodjendanski  server


Penzionisani balkanski samp kripter


Citat: ʙᴜɴᴛᴀ ꜰᴜᴊɪᴡᴀʀᴀ poslato Avgust 29, 2019, 08:17:36 PRE PODNE
Opet sam propustio fajt :( fakkk
@tema naisuuuu
Ma kakav fajt, ovo ti je #Teodorivc a.k.a kancer sa zabranjeno-a koji ne zna da primi kritiku i dodje ovde da hejta a sto je najjace sve sto je napisao je bilo pogrešno/nije imalo veze sa mnom HAHA

@tema fala ti bebs.
My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.

Pobrisa ih vasic  ;D
My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.

Ja se izvinjavam na kasnoj reakciji, nisam bio kuci. Postovi su pobrisani.
• Website: www.vasic.dev
Web Development & Cyber Security

Citat: Vasic poslato Avgust 29, 2019, 08:58:32 PRE PODNE
Ja se izvinjavam na kasnoj reakciji, nisam bio kuci. Postovi su pobrisani.
Hvala, mislim nisam započeo prvi nego dečko u svakom tutorialu mora da kenja ili kada sam radio benchmark ja define max_players 1000 jer mi pre-defined 250 u stdlib-u i on se pravi pametan, bmk ali odgovorit cu mu svakako pa ti brisi haha
My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.

vec kada brises postove citaj ih, a nemoj brisati samo redom, kritiku nemoj brisat

kao sto smo vec utvrdili samo si prekopirao i preveo, zasto onda nisi ispravio osnovne greske, jer znas da nebi radile kako treba

nije potrebno deklarisati ID dialoga, ali zato moras pamtiti imena dialoga, sto dovodi do istog
urednije ne moze biti zato sto bi poziv bio na svakom dijelu skripte

dinamicno alociranje vs format native  :D :D

[pawn]GivePlayerWeapon(playerid, listitem + 22, 500);[/pawn]
poruku iznad prevedes, a ne ispravis osnovu, tvoj primjer tacnije tvoj primjer sto si preuzeo i preveo nije koristan
jer ko god bude koristio u vecini slucajeva mijenjat ce idove oruzja jer se kod nas koristi iskljucivo copy/paste

string prevelik
stil tablist nije podrzan

y_dialogs/y_inline dosta bolja solucija

vec kad zelis da ispadnes koristan, prilikom prevodjenja precesljaj kod, ispravi barem osnovu
ja pocinjem prvi, a ti se uspalis ko baklja :3

Poslednja Izmena: Avgust 29, 2019, 09:17:34 PRE PODNE od Dwayne_Hernandez

Citat: Dwayne_Hernandez poslato Avgust 29, 2019, 09:14:46 PRE PODNE
vec kada brises postove citaj ih, a nemoj brisati samo redom, kritiku nemoj brisat

kao sto smo vec utvrdili samo si prekopirao i preveo, zasto onda nisi ispravio osnovne greske, jer znas da nebi radile kako treba

nije potrebno deklarisati ID dialoga, ali zato moras pamtiti imena dialoga, sto dovodi do istog
urednije ne moze biti zato sto bi poziv bio na svakom dijelu skripte

dinamicno alociranje vs format native  :D :D

[pawn]GivePlayerWeapon(playerid, listitem + 22, 500);[/pawn]
poruku iznad prevedes, a ne ispravis osnovu, tvoj primjer tacnije tvoj primjer sto si preuzeo i preveo nije koristan
jer ko god bude koristio u vecini slucajeva mijenjat ce idove oruzja jer se kod nas koristi iskljucivo copy/paste

string prevelik
stil tablist nije podrzan

y_dialogs/y_inline dosta bolja solucija

vec kad zelis da ispadnes koristan, prilikom prevodjenja precesljaj kod, ispravi barem osnovu
ja pocinjem prvi, a ti se uspalis ko baklja :3

Kralju, kažem urendije jer modularno kada pišeš ne moraš da stavljaš tj deklraišeš IDove dialoga u jedan fajl i ne moraš hook OnDialogResponse non-stop nego samo Dialog:Ime(args)

I namerno nisam ništa dirao jer ovo je običan tutorial, neću koristiti PawnPlus u tutorialu koji je vezan za easyDialog jer nema veze jedan sa drugim jer možda neko ne zna šta je PawnPlus.

Iskreno nisam ni gledao kod, samo sam copy-paste primer i preveo poruke, sve osim primera sam ja pisao :)

y_dialog/y_inline nije bolja solucija, jednostavno ne možeš da koristiš obične dialoge sa njima (realno ne trebaju nam obični ali eto) i svakako ovo mi je bolje i urednije i ako sam koristio y_dialog, y_inline koristim svakako i bez y_dialog-a.

EDIT: Svakako sumnjam da iko ko želi da koristi ovo a da ne zna bar osnove, znao bi da promeni i ispravi greške jer me iskreno boli ćuna, meni je bitno da sam objasnio šta i kako, sada da li je y_dialog bolji nije tema za ovo nego za PAWN Scripting sekciju, poz.
Poslednja Izmena: Avgust 29, 2019, 09:50:30 PRE PODNE od Osamu Dazai
My tutorials: y_inline & y_dialog, Ternary Operator, y_flooding, y_bit, samp-logger, Pawn Plus I Deo ( Dynamic Strings ), Map Zones, TextDraw Buttons, y_iterate, easyDialog, samp-plugin-timerfix
My includes: TextDraw Buttons


Respect: Bunta, Vedran, Ivan Bagarić, Itz.Yansi, Rade Ćurić (ni ja ne verujem)
Biggest respect goes to: ADRFranklin


Citat: Vodka PlayObožavam te "skriptere" koji probleme rešavaju tako što menjaju mod svaka 2 dana, tako će sigurno naučiti.
Neko im nacrta u temi Å¡ta treba uraditi, al' ne vredi nisu svi za skriptanje.