Pretraga

Pritisnite Enter za pretragu ili Escape za zatvaranje

easyDialog : No IDs no sh*t!

Započeo Osamu Dazai
pre 6 godina
8,558
pregleda
26
postova
VinlandRP
Made Man
pre 6 godina
- 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:
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!

Shakur Daka
Kingpin
pre 6 godina
Al lepo izgleda Tutorial
VinlandRP
Made Man
pre 6 godina
ꜱʜᴀᴋᴜʀ ᴅᴀᴋᴀ wrote on August 28, 2019, 4:27 pm:
Al lepo izgleda Tutorial

Pogledaj i druge u opisu mog profila, trudimo se 😄
ᗪ乇Ҝ丂卂
Underboss
pre 6 godina
Super posluzice mnogima
VinlandRP
Made Man
pre 6 godina
Fiddleshock wrote on August 28, 2019, 6:32 pm:
Super posluzice mnogima

Hvala mawi!
marko077
Underboss
pre 6 godina
EasyDialog - Easy tutorial hehe , good job, kad ce ono za style code da vidimo? 😛
VinlandRP
Made Man
pre 6 godina
LANMY.pwN wrote on August 28, 2019, 6:52 pm:
EasyDialog - Easy tutorial hehe , good job, kad ce ono za style code da vidimo? 😛

Toga ima najviÅ¡e tako da polako, radim mod od nule sada pa nemam baÅ¡ vremena za kompleksne tutoriale 😛
MatriiX.aMx
Underboss
pre 6 godina
Smirite se obojica , nije ovdje mjesto da se svadjate ...
Tema
Gud job maj frend , korisno  😁
Nikola-.-
Kingpin
pre 6 godina
Opet sam propustio fajt ☹️ fakkk
@tema naisuuuu
VinlandRP
Made Man
pre 6 godina
ʙᴜɴᴛᴀ ꜰᴜᴊɪᴡᴀʀᴀ wrote on August 29, 2019, 6:17 am:
Opet sam propustio fajt ☹️ fakkk
@tema naisuuuu

Ma kakav fajt, ovo ti je #Teodorivc a.k.a kancer sa zbsamp-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.
VinlandRP
Made Man
pre 6 godina
Pobrisa ih vasic  😁
FunnyGamingDay - FGD
OG Legend
3
pre 6 godina
Ja se izvinjavam na kasnoj reakciji, nisam bio kuci. Postovi su pobrisani.

Former SA:MP server developer

VinlandRP
Made Man
pre 6 godina
Vasic wrote on August 29, 2019, 6:58 am:
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
Niko_Bitan
Street Runner
pre 6 godina
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  😄 😄
GivePlayerWeapon(playerid, listitem + 22, 500);

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
VinlandRP
Made Man
pre 6 godina
Dwayne_Hernandez wrote on August 29, 2019, 7:14 am:
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  😄 😄
GivePlayerWeapon(playerid, listitem + 22, 500);

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.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava