Peršokti į turinį

[uGames.EU || mc-support.lt] Įskiepių (plugin) kūrimo pamoka. - Komandos. - 2 pamoka


Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3947 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

Įskiepių (plugin) kūrimo pamoka. - Komandos. - 2 pamoka || by Nogalosa.

Hello again,

antrojoje pamokoje pamokysiu kurt komandas. ^_^.

P.s. nuo šio laiko gali viskas tapti šiek tiek komplikuotai. Jei pridariau klaidų kur nors, tiesiog komentuokite. ;)

P.s.s. pamokas darau kuo paprastesnes, nes pažiūrėjęs kitas pamokas matau, kad jos nieko nepaaiškina, bei yra daromos "sunkiuoju keliu".

Praeitą pamoka nepaaiškinau, ką daro

getServer().getLogger().info("...");

getServer() - gauname serverio kintamajį. (Tokie patys kaip String(tekstas), int(sveikas skaičius), float(skaičius su kableliu) tik, kad šis kintamasis vadinasi Server). Jo funkcijos leidžia įvairius veiksmus su serveriu.

. - tiesiog pasako, kad toliau bus vykdoma kažkokia funkcija su šiuo kintamuoju.

getLogger() - taip pat gauname kintamajį pavadinimu Logger. Jis padeda rašyti įvairų tekstą į konsolę.

info() - veiksmas/funkcija kuri parašo tekstą į konsolę su [iNFO] pradžia.

Kaip matote, šiuo metu naudojama pora veiksmų/funkcijų. Tai yra kintamūjų gavimo funkcijos kurios gražina kažkokį tai kintamajį (getServer(),getLogger()) arba paprastos funkcijos, kurios nieko negražina ir jos tiesiog įvygdomos (void) (info()).

Taigi, išeina maždaug taip: gauname serverį > serverio paprašome Logger'io, ir serveris jį mums duoda > Loggerio paprašome, kad įvygdytu funkcija info().

Iš kur gauname getServer()? Jeigu parašytume this.getServer(), vietoje getServer() jis išmestų tą patį (sutrumpinome :D). this tiesiog gražina pačia class'ę.

Funkcijų gale reikia dėti ;

Taip java kalboje susideda visas programavimas. (Kinda easy, yea? :D)

Sooo, laikas pradėti kurti komandas. ^_^

Įrašykite po onDisable(){} funkcijos šį kodą:

 public boolean onCommand(CommandSender siuntejas, Command komanda, String komandosPavadinimas, String[] argumentai) {

return false;
}

(importuokite, ką reikia).

Dabar kodas tūrėtų atrodyti taip:

3CEHU.png

Matome bukkit funkciją, kuri skirta "gaudyti" komandas. Ji įvykdoma, kai žaidėjas parašo kokią nors komandą.

Paaiškinti nelabai ką turiu, nes pats nelabai suprantu, kaip bukkitas priverčia ją veikt. (LOL)

So. Pradedame kurti pirmą komandą. Aš kursiu /test.

Virš return false; pridėkite šį kodą:

 if(komandosPavadinimas.equalsIgnoreCase("test")){

}

Manau labai gerai patys suprantate, ką šis palyginimas daro.

Jei komandos pavadinimas nepaisant didžiųjų raidžių yra test, tada {}.

Liko padaryti funkciją, kuri nusiunčia paprastą žinutę žaidėjui.

Tarp {} parašykite:

siuntejas.sendMessage("Tu parašei /test.");

Kodas dabar tūrėtų atrodyti taip:

3CFt5.png

Šiuo atvėjų tekstą rašys baltai. Kaip padaryti spalvotą?

Į String kintamajį (tekstas) galima parašyti kitus kintamuosius, kurie gali gražinti ką nors užrašomo pvz. int (skaičius).

"Šioks toks tekstas " + 10

Tai parašytų Šioks toks tekstas 10

Atkreipkite dėmesį į pliusą. Jis padedamas tarp kintamųjų (String kintamasis rašosi tarp ").

Dabar mums reikalingas naujas kintamasis pavadinimu ChatColor.

Pabandome:

ChatColor.GREEN + "Tu parašei /test."

Pagal java, mums išmestų taip: §aTu parašei /test.

Apdorojus minecraftui, mums išmestų taip: Tu parašei /test.

Taigi, pridėkime ChatColor į savo sendMessage() funkciją. Aš naudosiu geltoną spalvą:

siuntejas.sendMessage(ChatColor.YELLOW + "Tu parašei /test.");

Liko pridėti kelis dalykus į plugin.yml.

Po version pridėkite kodą:

commands:
test:
description: Testas.

test: - komanda.

description: - komandos apibūdinimas, kuris bus rodomas per /help.

3CGdn.png

Išexportuokite ir testuokite :)

Pamoką skubėjau rašyti, jei kils nesklandumų ar bus kur nors įsivėlus klaida, komentuokite. :)

Štai ir antrosios pamokos pabaiga.

Labai prašau nekopijuoti šios temos be mano sutikimo.

www.uGames.EU

+rep maybe?

Redaguota , nario -=NOGALOSA=- uGames.EU
Nuoroda į komentarą
Dalintis per kitą puslapį

Labai šaunu, kad kuri tokias pamokas, bet dėje nemanau jog jos yra naudingos, nes tie, kurie daugiau tuo domisi, tai ir taip moka pasidaryt darbo vietą, atsisiųst tinkama Eclipse ir inportuoti bukkit API, bei sukoduoti šias elementarias funkcijas, visa tai juk aiškiai parašyta tame, pačiame paprasčiausiame bukkit įskiepių kūrimo tutoriale, taigi, jis baigiasi daug maš taip, kaip ir tavo ir nemanau jog jį reikėjo verst į LT kalbą... Taigi, o kaip toliau viskas vyksta, sudėtingesnės funkcijos, įvairūs pavyzdžiai, išsamūs jų paaiškinimai, manau domintu daug didesnį kiekį žmonių, na ir mane patį... Norėtųsi tų tavo tutorialų tęsinio! ;)

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3947 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ą...