5. diel - Skript - SkAddony - SkRayfall
SkRayFall je SkAddon, ktorý pridáva primárne grafické vylepšenia hry, ako napríklad podporu zobrazovanie Title, actionbarů, generovanie bossbarů, scoreboard, Particle, tvorba hologramov a plno ďalšieho. Dnes si ukážeme tie, ktoré pravdepodobne budete používať najčastejšie.
Title
Hneď zo začiatku sa naučíme veľmi užitočnú vec - zobrazovanie Title. Title je v Minecraftu text, ktorý vám prekryje obrazovku pre oznámenia nejaké správy (spravidla je u neho i subtitle). Dá sa teda využiť pre oznámenie nejaké informácie hráčom na serveri, či pre propagáciu nejakej služby na serveri ... využitie je veľa.
Základný kód pre odoslanie Title vyzerá takto:
send player title "<zpráva do titlu>" with subtitle "<zpráva do subtitlu>" for 10 seconds #zobrazit na 10 sekund hráči, který ten příkaz odeslal
My si teraz naprogramujeme jednoduchý skript pre odoslanie title všetkým hráčom s vlastnou správou:
command /zaslattitle [<text>]: trigger: if arg-1 is not set: #V případě, že argument za příkazem není nastaven (aby nám to nedělalo nepořádek) send "&cNastav zprávu!" else: set {_alert.zprava} to colored arg-1 #Pro nastavení barevnosti hodnoty v argumentu send player title "%{_alert.zprava}%" with subtitle "&aTitle vytvořený podle tutoriálu itnetwork.cz" for 10 seconds #Pošleme title s argumentem a subtitlem
Výsledok by mal vyzerať takto:
Hologramy
Pomocou SkRayFall možno taky vytvoriť hologramy - správy, ktoré sa zobrazia pomocou pomenovaných armorstandů vo vzduchu. Na túto funkciu budeme potrebovať plugin Holographic Displays
Kód pre vytvorenie hologramu:
create hologram <text hologramu> at <lokace> for <čas>
Teda si teraz vytvoríme taký skript, ktorý nám vypíše vopred vyplnenú hodnotu do hologramu:
command /hdcreate [<text>]: trigger: if arg-1 is not set: #V případě že argument za příkazem není nastaven send "&cNastav text hologramu!" else: set {_hologram.text} to colored arg-1 #Pro nastavení barevnosti hodnoty v argumentu create hologram "%{_hologram.text}%" at location of player for 10 seconds #Vytvoříme hologram s textem v příkazu, na místě kde se hráč nachází a na 10 sekund
Formátovanie hologramov vo Skriptu
Hologramy, vytvorené pomocou SkRayFall, sa dajú rôzne formátovať, a to pridaním riadkov, vloženie lietajúcich itemov do hologramu atď.
Farebnosť
Klasické farebné kódy, ktoré vytvoríme pomocou znaku & <číslo 0-9 alebo písmeno af>, tabuľku farieb nájdete tu
Odriadkovanie
Riadky v hologramu odřádkujeme bodkočiarkou (;), príklad:
create hologram "&ePrvní řádek!;&cDruhý řádek;&b;&ačtvrtý řádek, ten předemnou byl prázdný" at location of player for 10 seconds
Vloženie item do hologramu
Item do hologramu vložíme týmto kódom:
create hologram "ItemStack:Wool;&cNademnou levituje vlna!;&c;&b&litnetwork.cz" at location of player for 10 seconds
Particle (časticové efekty)
Na začiatku článku som spomenul, že s pomocou SkRayFall možno tvoriť aj tzv. Particle. Čo sú zač? Particle sú 2D časticové efekty, ktoré sa zobrazí na určitom mieste (napr. Po výbuchu, pri chodení či pri daždi). Pomocou SkRayFall je však možné vyvolať aj zámerne, a to iba kúskom kódu!
Keď používame SkRayFall, máme dostupné len niektoré Particle. Ich celý list môžete nájsť tu. Ak netušíte ako niektoré z nich vyzerajú, kompletný zoznam všetkých Particle a ich vzhľadov nájdete na Minecraft Wiki.
Využitie je rozmanité, či už pre upútanie pozornosti, "vyjadrenie" emócie hráčov či proste len na ozdobu. Ak sa budete veľmi nudiť, môžete z nich skúsiť vytvoriť napríklad aj nápisy či iné, zložitejšie obrazce
show [počet] <ID> particles at <lokace> for <hráč> [offset by (rozmístění ve směrech x, y a z)]
Počet značí koľko Particle (vyjadrených premennú ID) sa má na mieste (vyjadrené premennú lokácie) zobraziť pre hráčov (vyjadreného premennú hráč), poprípade v akých smeroch okolo lokácie (vyjadrené premennú rozmiestnenie).
Skúsme si teda teraz vytvoriť maličký skript na vyľakaní ľubovoľného hráča, ktorý po použití zobrazí particle "SMOKE" jeden blok od aktuálnej pozície hráča (do každého smeru)
command /baf [<offline player>]: trigger: if arg-1 is not set: #V případě že argument za příkazem není nastaven send "&cSpecifikuj hráče!" else: if arg-1 is online: #Kontrola jestli hráč, zadaný v argumentu za příkazem, je online show 420 "SMOKE_LARGE" particles at location of arg-1 for arg-1 offset by 1, 1, 1 #Zobrazí 120 kouřových particlů v lokaci hráče zvoleného v argumentu vždy 1 blok od hráče do všech směrů. Nezapomínejte uvést ID particlu do uvozovek! send "&0&lBAF!!!" to arg-1 send "&aVykonáno!" else: send "&cTento hráč není online!"
Výsledok by mal po použití príkazu vyzerať nejako takto:
Tablist
Pomaly sa blížime ku koncu dnešného tutoriálu a ako posledný sa budeme baviť o tablistech. Čo je to tablist?
Zoznam hráčov
Tablist je to, čo sa vám väčšinou zobrazí po stlačení klávesu Tab. Môžete tu vidieť všetky online hráčov na serveri. Možno už ste si niekedy všimli, že tam občas býva aj niečo navyše, a presne to sa teraz naučíme.
Header (hlavička) a footer (pätička) tablistu sa zobrazujú na týchto miestach:
Preto povedzme, že budeme chcieť hráčov v hlavičke pozdraviť a v pätičke ukázať aktuálny počet hráčov na serveri. Pre tento prípad si vytvoríme malý skript, ktorý každú sekundu zacyklí všetky online hráčov a nastaví im hlavičku a pätičku tablistu:
every 20 ticks: #Každou sekundu loop all players: #Zacyklíme všechny hráče na serveru set tab header to "&aAhoj %loop-player%&a!" and footer to "&6 Online hráči: &c%amount of players%" for loop-player #Nastavíme obsah tablistu pro zacyklené hráče
výsledok:
Upozornenie
Toto pravdepodobne nebude fungovať ak máte nainštalovaný plugin TitleManager, alebo iný plugin, ktorý vie upravovať tablisty, a v ňom zapnutú funkciu pre vlastné tablisty!
So SkRayFall sa dá však robiť aj veľa ďalších vecí a ich popis a ukázanie by vystačilo ešte na veľmi dlho.
Kompletnú dokumentáciu ku SkRayFall môžete nájsť tu. Kódy z dnešnej lekcie nájdete po kliknutí sem, SkRayFall zase stiahnete tu.