Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

cDbar.inc - Sukurk progressbar'ą su viena eilute!


coDemo`r

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2879 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

cDbar.inc

SUKURK PROGRESSBAR'Ą SU VIENA EILUTE!

 

Sveiki, esu coDemo ir sukūriau jums progressbaro kūrimo include, viskas labai paprasta!

 

Su šiuo include galėsite:

  • Sukurti judantį progressbar'ą su viena eilute.
  • Progressbarui paskirti tekstą.
  • Nustatyti per kiek laiko jis turės užsikrauti.
  • Kraunantis progressbar'ui betkuriuo metu galėsite jį sunaikinti.
  • TAIP, TAI VIENKARTINIS PROGRESSBARAS.

• Kaip sukurti progressbar'ą ir kokios kitos funkcijos?

    - Viskas labai paprasta!

 

1. Su komanda cD_StartBar sukuriate judantį progressbar'ą, komandos parametrai: žaidėjo id, jūsų tekstas ir laikas. (teksto maksimalus simbolių skaičius: 27, laikas nurodomas ms, t.y 1 sekundė = 1000ms).

- Pvz.: 

cD_StartBar(playerid, "Jusu tekstas", 10000);

» Progressbar'as užsikraus per 10 sekundžių (10000ms), virš kurio bus tekstas: "Jusu tekstas".

» Vienu metu gali krautis tik vienas progressbar'as.

» Progressbar'ą galite sustabdyti panaudoję komandą: 

cD_KillBar(playerid);

Kai progressbar'as užsikrauna iškviečiamas cD_OnProgressBarEnd callback'as

public cD_OnProgressBarEnd(playerid)

Kaip patikrinti, ar progressbar'as užsikrovęs?

if(IsBarActive(playerid)) return print("Progressbar'as dar kraunasi!");

VIDEO PAVYZDYS

Kodas, kuris bus naudojamas vaizdo įraše:

public cD_OnProgressBarEnd(playerid)
{
	SendClientMessage(playerid, -1, "Progressbar'as baigėsi!");
	return 1;
}

CMD:bar(playerid, params[])
{
    new
        i,
        s [ 27 ]
    ;
    if(sscanf(params, "s[27]d", s, i)) return SendClientMessage(playerid, -1, "{FF0000}BLOGAS SKAICIUS!");
    return cD_StartBar(playerid, s, i);
} 

HD 720p60 ON!

https://www.youtube.com/watch?v=0aL63r7kHAg

 

APIBENDRINIMAS

 

Progressbar'o sukūrimas:

cD_StartBar(playerid, "tekstas", laikas);
pvz.: cD_StartBar(playerid, "Kraunasi", 5000); //užsikraus per 5 sekundes

Progressbar'o sunaikinimas:

cD_KillBar(playerid);

Kai progressbar'as užsikrauna iškviečiamas cD_OnProgressBarEnd callback'as;

public cD_OnProgressBarEnd(playerid)

Kaip patikrinti, ar progressbar'as užsikrovęs?

if(IsBarActive(playerid)) return print("Progressbar'as dar kraunasi!");

Atsisiuntimas:

zippyshare: http://www39.zippyshare.com/v/QMdZVDAl/file.html

pastebin: http://pastebin.com/P1ApG9VB

 

Kūrėjas: coDemo

 

 

1xiQHKl.png

 

PRIVALOTE TURĖTI YSI APLANKĄ SAVO pawno > includes APLANKE!

Nuoroda į atsisiuntimą: https://github.com/Misiur/YSI-Includes

 

 

ATNAUJINTA:

2016-05-23 20:52

Redaguota , nario coDemo
Nuoroda į komentarą
Dalintis per kitą puslapį

Ateičiai:

  • galėtum leist nustatyti savo norimą poziciją,
  • leisti nustatyti savo reikšmę, o ne tik mažėti laikui einant,
  • nustatyt kelias spalvas, pasirinkti savo ir pan., padaryti kelis dydžius,
  • OnProgressBarEnd išgauti, kuris bar'as baigėsi ( ty. if(barid == zaidejoBar[playerid]) t.t. ).
Nuoroda į komentarą
Dalintis per kitą puslapį

(redaguota)

 

Ateičiai:

  • galėtum leist nustatyti savo norimą poziciją,
  • leisti nustatyti savo reikšmę, o ne tik mažėti laikui einant,
  • nustatyt kelias spalvas, pasirinkti savo ir pan., padaryti kelis dydžius,
  • OnProgressBarEnd išgauti, kuris bar'as baigėsi ( ty. if(barid == zaidejoBar[playerid]) t.t. ).

 

  • Punktų daugiau nei pačio pranešimo, lol
  • Pozicijai reiktų editoriaus, su kuriuo švariai nustatytum poziciją, kurio aš tikrai nedarysiu.
  • Nereikia leisti savo reikšmės, tam yra kita pamoka, kitos paskirties progressbarams ir aiškiai parašiau šitoje temoje, kad šitas progressbar'as vienkartinis..
  • Ateičiai visko galima prigalvot, kaip norėsiu taip ir bus :D
  • barid nereikia, nes čia globaliai veikia viskas, kaip ir checkpointai.
Redaguota , nario coDemo
Nuoroda į komentarą
Dalintis per kitą puslapį

  1. forward cD_OnProgressBarEnd(playerid);
  2. #define cD_function:%0(%1) forward %0(%1); public %0(%1)

 

 

think about it..  + Manau, kad Player texdraw reikia destroy'int kai žaidėjas atsijungia.. P.S. čia ne kritika, tik šeip pastebėjimai, tad būk malonus ir neužsipulk, kad aš nub'as ir tt. pats žinau....  :cry:

function:%0(%1) forward %0(%1); public %0(%1)
Redaguota , nario _kRego
Nuoroda į komentarą
Dalintis per kitą puslapį

 

think about it..  + Manau, kad Player texdraw reikia destroy'int kai žaidėjas atsijungia.. P.S. čia ne kritika, tik šeip pastebėjimai, tad būk malonus ir neužsipulk, kad aš nub'as ir tt. pats žinau....  :cry:

function:%0(%1) forward %0(%1); public %0(%1)

 

https://wiki.sa-mp.com/wiki/CreatePlayerTextDraw

 

Player-textdraws are automatically destroyed when a player disconnects.

Nuoroda į komentarą
Dalintis per kitą puslapį

Jog tai butu include turetum sukurti funkcija kuri leistu susikurti progressbara tam tikroje pozicijoje pvz

new cDBar:bar = cD_CreateBar(Text, X, Y, Color);

cD_StartBar(playerid, bar, interval);

 

 

Pati ideja gera, viskas neblogai, bet ispyldimas tolygus tiesiog kodo gabalui, kadangi norint pasiredaguoti Progressbara reikia modifikuoti sourca.

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2879 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...