Průvodce pro začátečníky k příkazovým blokům v Minecraftu
Minecraft je jedním z nejlepších způsobů, jak zavést do kódování mladé a nové lidi. Příkazové bloky se snadno naučí a používají a programování Java je hned za rohem s moduly Minecraft a pluginy Bukkit. Je to také velmi zábavné místo pro zkušené kodéry,.
Co jsou příkazové bloky a proč je mám použít??
Příkazové bloky jsou komponenty redstone, které provádějí příkazy konzoly při napájení. Příkazy konzoly mohou být spuštěny z okna rozhovoru tím, že je provedete lomítkem vpřed, '/'. Příkazy se používají k úpravě herního světa způsobem, který není možný ručně, a pokud je používán správně v bloku příkazů, dát Minecraft vlastní pseudo-programovací jazyk. Kód se skládá ze dvou věcí: logiky a provedení a většina programovacích jazyků vyžaduje, aby byly zapsány v textu. Minecraft kódování má jinou trasu; logika a struktura programu se určuje podle toho, kde jsou bloky umístěny a jak jsou propojeny, což znamená, že můžete letět nad svým světem a vidět různé části vašeho programu, rozložené blokově po bloku.
Ok, tak jak začít?
Tato příručka využívá nové příkazové bloky ve verzi 1.9. Bude pracovat v 1.8, ale může vyžadovat trochu více odborných znalostí.
Otevřete nový svět Minecraft (Superflat funguje nejlépe), ujistěte se, že jste v režimu Creative a stiskněte tlačítko "/". Jedná se o příkazové okno, které je stejné jako okno chatu, s výjimkou, že vás začíná s '/' a vše, co začíná předním lomítkem, je příkaz. První příkaz, který můžete spustit, je
/ give @p minecraft: command_block
Pojďme to rozdělit. Příkaz "/ give" dává položky do inventáře hráčů a má dva argumenty: hráč a položku, kterou je třeba dát. "@P" je a volič cíle. Volič "@p" vybere nejbližšího hráče. Můžete také použít své uživatelské jméno Minecraft, ale pokud spustíte příkaz z konzoly, budete vždy nejbližším hráčem. Ostatní voliče cílů jsou "@" pro všechny hráče, "@ r" pro náhodný hráč a "@e" bude zaměřeno na všechny subjektů. Subjekty zahrnují vše, co není blok, jako jsou monstra, sněhové koule, zvířata a šípy.
Příkaz by měl úspěšně spustit a dát vám nový blok. Umístěte jej kdekoli na zemi, abyste mohli začít.
Vidíte, že příkazový blok ukazuje směr, kterým ho umístíte, hodně jako zásobníky nebo pece. To bude důležité později.
Klikněte pravým tlačítkem myši na blok (nebo použijte libovolný klíč, který používáte pro přístup k craftovým stolům a pecím) a budete přivítali GUI příkazového bloku.
Zdá se, že je to trochu děsivé, ale nemusíte se obávat, že všechna tlačítka dělají něco. Tlačítko "Impulse" změní typ příkazového bloku. Existují tři různé typy příkazových bloků:
- Impulz, který spouští příkazy na stoupající hrana červeného proudu. To znamená, že když jsou napájeny, jednou spustit příkaz a zastaví, i když budou nadále napájeny. Toto je výchozí nastavení a je jediný dostupný v 1.8
- Opakujte, které příkazy běží každý klíště jsou napájeny. Klíšťata jsou jako rám a více příkazů lze spustit v jediném klíči, až 20krát za sekundu.
- Řetězec, který běží pouze tehdy, když příkazový blok, který směřuje do něj, provedl příkaz. Ty budou probíhat v pořádku po sobě, v jediném klíči, a proto bude název "Řetěz".
Tlačítko s názvem "Bezpodmínečné" zastaví příkazový blok z kontroly, zda předchozí blok v řetězci byl úspěšně spuštěn. Druhá možnost, "Podmíněná", se spustí pouze tehdy, pokud předchozí blok neohrožil žádné chyby.
Tlačítko "Needs Redstone" spustí příkaz pouze v případě, že je příkazový blok napájen. Druhá možnost "Vždy aktivní" zastaví příkazový blok, aby zkontroloval, zda je napájen a jen předpokládá, že je. Tato možnost by se neměla používat s bloky příkazů Impulse, protože je zbytečná.
Udělme řetězec, náš první "skript". Umístěte řetězec příkazového řetězce nebo dva obrácené do prvního příkazového bloku impulzů, například:
Ujistěte se, že řetězové bloky jsou nastaveny na hodnotu "Vždy aktivní". V opačném případě bychom museli umístit bloky červeného kamene nebo proud, které zabírají zbytečný prostor. Na počátku řetězce umístěte tlačítko na příkazový blok impulsu a stiskněte ho.
Nic se nestane. Je to proto, že jsme je ještě nevyplnili příkazy! Klikněte pravým tlačítkem na impulsní blok a upravte jej a vložte základní příkaz
řekněme začít
Všimněte si, jak nepotřebujeme přední lomítko v bloku příkazů. Můžete použít jeden, pokud chcete, ale je to zbytečné. Příkaz "/ say" má jeden argument, text a říká to z pohledu toho, kdo ho provede. Pokud ji spustíte, zobrazí se jako "zpráva" stejně jako běžný chat. Pokud je spuštěn z příkazového bloku, bude to "[@] message". Případně existuje "/ tell", což trvá argument hráče, a "/ tellraw", který je jako "/ tell", kromě toho, že místo textů přebírá surovou JSON.
Bloky příkazových řetězců můžete vyplnit, abyste psali více věcí. Budou provedeny tak, aby byly bez odkladu ve stejném klíči. Chcete-li je spustit se zpožděním, musíte je nastavit pomocí opakovačů redstone. Spolu s příkazem "/ say" existují další základní příkazy, které dělají více věcí, jako "/ give", které dávají položky "/ effect", které používají účinky "/ setblock" a "/ fill" , a mnoho dalších. Velkou databázi příkazů lze nalézt na Minecraft Wiki spolu s dalším užitečným obsahem.
Cílové výběry
Voliče cílů "@ p" jsou ve skutečnosti mnohem silnější než na první pohled. Například pokud bychom chtěli cílit na všechny entity, použijeme "@e", ale pokud bychom chtěli cílit pouze na Zombie,
@e [typ = Zombie]
Všimněte si závorky po "@e". Uvnitř těchto závorek jsou cílové voliče argumentů, jehož úplný seznam naleznete na Minecraft Wiki. Argument "typu" vybírá pouze entity určitého typu, toto je "Zombie". Pokud bychom chtěli cílit na všechny zombie v rámci 10 bloků příkazového bloku, měli bychom použít
@e [typ = Zombie, r = 10]
Tím, že "r" je argument radiusu. Můžete se také zaměřit podle umístění, jména, týmu a skóre, mimo jiné.
Řetězové příkazy
Přijdeme další příkaz, který není jako ostatní. Příkaz je "/ execute". Tento příkaz zaujme jiný příkaz a provede jej z pohledu jiné entity. Struktura "/ execute" je
/ execute @target X Y Z / příkaz
X, Y a Z jsou souřadnice pro spuštění příkazu z. Většina příkazů nezáleží na tom, ale pokud používáte, je to hodně důležité relativní polohování. Relativní pozice začíná písmenem "~" a za ním následuje kladné nebo záporné číslo, které udává, kolik bloků od původu označuje "~ ~ ~". Takže například, pokud bychom chtěli spustit "/ say", jako by mluvil Villager, můžeme nastavit tento příkaz takto:
/ execute @e [type = Villager] ~ ~ ~ / say Hey
Tento příkaz způsobí, že všem, každému vesničanovi, se dostane zpráva. To není optimální, pokud máme více než jednu osobu nebo víc než jednoho vesničana, takže si přeformátujeme tento příkaz:
/ execute @a ~ ~ ~ / execute @e [typ = Villager, c = 1] ~ ~ ~ / tell @p Hey
Toto je mnohem složitější než první a zahrnuje zapojení dvou příkazů "/ execute" dohromady. První "/ execute" příkazu běží na každém hráči, pak druhý kontroluje přesně jedno Villager v okolí, a pak má Villager říct nejbližšího hráče "Hej". To zajišťuje, že na jednoho člověka jedná pouze jeden Villager.
Učení se syntaxi
V Minecraft je určitě spousta příkazů, že každá má vlastní syntaxi. Nabídky nápovědy pro každý příkaz vám obvykle rychle řeknou, jaké argumenty příkaz potřebuje, a Minecraft Wiki obsahuje podrobný seznam toho, co vlastní. Nejedná se o to, co přesně každý příkaz dělá, ale o tom, jak je používat společně. Minecraft je koneckonců hra, takže hraní s příkazy je součástí procesu učení.