Čo sú príkazové bloky a prečo ich mám používať?
Príkazové bloky sú komponenty redstone, ktoré pri napájaní vykonávajú príkazy konzoly. Príkazy konzoly môžu byť spustené z okna rozhovoru tým, že ich budete postupovať s lomkou "/". Príkazy sa používajú na modifikáciu herného sveta spôsobmi, ktoré nie sú možné ručne, a ak sa používajú správne v blokoch príkazov, poskytnite Minecraftu vlastný druh programovacieho jazyka. Kód sa skladá z dvoch vecí: logiky a vykonávania a väčšina programovacích jazykov vyžaduje, aby boli zapísané do textu. Minecraft kódovanie má inú cestu; logika a štruktúra programu závisí od toho, kde sú umiestnené bloky a ako sú pripojené, čo znamená, že môžete lietať nad svojim svetom a vidieť jednotlivé časti vášho programu rozdelené blokom za blokom.
Ok, tak ako začnem?
Táto príručka využíva nové príkazové bloky vo verzii 1.9. Bude fungovať na úrovni 1,8, ale môže vyžadovať trochu viac odborných znalostí.
Otvorte nový svet Minecraft (Superflat funguje najlepšie), uistite sa, že ste v režime Creative a stlačte tlačidlo "/". Toto je príkazové okno, ktoré je rovnaké ako okno s rozhovorom, s výnimkou toho, že vás začína '/' a všetko, čo začína s lomítkom dopredu, je príkaz. Prvý príkaz, ktorý môžete spustiť, je
/give @p minecraft:command_block
Poďme to rozdeliť. Príkaz "/ give" dáva položky do inventára hráčov a má dva argumenty: hráč a položku, ktorú dať. "@P" je a selektor cieľa. Voľba "@p" vyberie najbližší prehrávač. Môžete tiež použiť vaše používateľské meno Minecraft, ale ak spustíte príkaz z konzoly, budete vždy najbližším hráčom. Ostatné cieľové selektory sú "@ a" pre všetkých hráčov, "@ r" pre náhodný prehrávač a "@e" bude zacielený na všetkysubjektov. Subjekty zahŕňajú všetko, čo nie je blok, ako sú príšery, snehové gule, zvieratá a šípky.
Príkaz by mal úspešne vykonať a poskytnúť vám nový blok. Umiestnite ho kdekoľvek na zem, aby ste mohli začať.
Kliknite pravým tlačidlom na blok (alebo použite ľubovoľný kláves, ktorý používate na prístup k remeselníckym stolom a pecíam) a budete privítaní s GUI príkazového bloku.
- Impulz, ktorý beží príkazy nastúpajúci okraj z červeného prúdu. To znamená, že keď sú napájané, budú jedenkrát spustiť príkaz a zastaviť, aj keď budú naďalej napájané. Toto je predvolené nastavenie a je jediný dostupný v 1.8
- Opakujte, ktoré bežia príkazy každý kliešť sú napájané. Klika je ako rám a viac príkazov môže byť spustených v jedinom kliete, až 20 krát za sekundu.
- Reťazec, ktorý sa spustí iba vtedy, ak príkazový blok, ktorý smeruje do nej, vykonal príkaz. Tieto budú bežať v poradí, po sebe, v jedinom kliete, teda od názvu "reťazec".
Tlačidlo, ktoré hovorí "Bezpodmienečné", zastaví príkazový blok, aby skontroloval, či úspešne vykonal predchádzajúci blok v reťazci. Druhá možnosť, podmienená, sa spustí iba vtedy, ak predchádzajúci blok neohrozil žiadne chyby.
Tlačidlo, ktoré hovorí "Nevyžaduje Redstone", spustí príkaz len vtedy, ak je príkazový blok napájaný. Druhá možnosť, "Vždy aktívna", zastaví príkazový blok, aby zistil, či je napájaný a predpokladá, že je. Táto možnosť by sa nemala používať s blokmi príkazov impulzov, pretože z nich sú zbytočné.
Urobme reťaz, náš prvý "skript". Položte reťazec príkazového reťazca alebo dva smerom do prvého bloku príkazových impulzov takto:
Nič sa nestane. Je to preto, že sme ich doposiaľ neplnili príkazmi! Kliknite pravým tlačidlom na impulzný blok a upravte ho a vložte základný príkaz
say start
Všimnite si, ako nepotrebujeme dopredu lomítko v blokoch príkazov. Môžete použiť jeden, ak chcete, ale je to zbytočné. Príkaz "/ say" má jeden argument, text a hovorí z pohľadu toho, kto ho vykoná. Ak ho spustíte, zobrazí sa ako "
Môžete vyplniť bloky príkazov reťazca a napísať ďalšie veci do rozhovoru. Budú sa vykonať tak, aby boli bez meškania v rovnakom kliete. Ak ich chcete spustiť s oneskorením, musíte ich nastaviť pomocou redstone repeaterov. Spolu s "/ say" existujú ďalšie základné príkazy, ktoré robia viac vecí, ako "/ give", ktoré dávajú položky "/ effect", ktoré používajú efekty elixírov, "/ setblock" a "/ fill", a veľa ďalších. Veľká databáza príkazov nájdete na Minecraft Wiki spolu s ďalším užitočným obsahom.
Cieľové výbery
Pole "@p" sú skutočne oveľa výkonnejšie, ako sa zdá na prvý pohľad. Napríklad, ak by sme chceli zacieliť na všetky entity, použili by sme "@e", ale ak by sme chceli zacieliť len na Zombie, použili by sme
@e[type=Zombie]
Všimnite si zátvorky po "@e". Vnútri týchto zátvoriek sú cieľov selektora cieľa, ktorého úplný zoznam nájdete na Minecraft Wiki. Argument "typu" vyberá iba entity určitého typu, toto je "Zombie". Ak by sme chceli zacieliť všetky Zombie do 10 blokov príkazového bloku, použili by sme
@e[type=Zombie,r=10]
Keď "r" je argumentom polomeru. Môžete sa tiež zamerať na umiestnenie, meno, tím a skóre.
Řetězové príkazy
Ukážme ďalší príkaz, ktorý nie je ako ostatné. Príkaz je "/ execute". Tento príkaz zaberie iný príkaz a vykoná ho z pohľadu inej entity. Štruktúra "/ execute" je
/execute @target X Y Z /command
X, Y a Z sú súradnice pre spustenie príkazu. To nezáleží na väčšine príkazov, ale veľa, ak používaterelatívna poloha. Relatívna poloha začína znakom "~" a za ním nasleduje kladné alebo záporné číslo, ktoré udáva, koľko blokov od pôvodu označuje "~ ~ ~". Takže napríklad ak by sme chceli spustiť "/ say", ako by hovoril Villager, môžeme nastaviť príkaz takto:
/execute @e[type=Villager] ~ ~ ~ /say Hey
Tento príkaz spôsobí, že sa od každého dedinčana dostane správa. Toto nie je optimálne, ak máme viac ako jednu osobu alebo viac ako jedného dedinčana, takže si znova preformulujeme tento príkaz:
/execute @a ~ ~ ~ /execute @e[type=Villager,c=1] ~ ~ ~ /tell @p Hey
Je to oveľa zložitejšia ako prvá a zahŕňa zapojenie dvoch príkazov "/ execute" dohromady. Prvý "/ execute" príkazu beží na každom hráčovi, potom druhý skontroluje presne jedného dedinčana v okolí a potom má Villager povedať najbližšiemu hráčovi "Hej". Tým sa zabezpečí, že na osobu bude hovoriť iba jeden Villager.
Výučba syntaxe
V Minecraft je určite veľa príkazov, že každá z nich má svoju vlastnú syntax. Pomocné ponuky pre každý príkaz vám zvyčajne rýchlo povedia, aké argumenty príkaz potrebuje a Minecraft Wiki obsahuje podrobný zoznam toho, čo každý robí. Nie je to tak veľa, ako presne vedieť, čo robí každý príkaz, ale vedieť, ako ich používať spoločne. Minecraft je hra, koniec koncov, takže hranie s príkazmi je súčasťou procesu učenia.