5Jul
"Minecraft" yra vienas iš geriausių būdų, kaip jaunus ir naujus žmones pristatyti į kodavimą.Komandų blokai yra lengvai išmokti ir naudoti, o "Java" programavimas yra teisingas aplink kampą su "Minecraft mod" ir "Bukkit" papildintuvais. Tai taip pat yra labai įdomus vieta patyrusiems programuotojams, kad galėtumėte džiaugtis.
Kas yra komandų blokai ir kodėl juos reikia naudoti?
Komandų blokai yra "redstone" komponentas, kuris paleidžia konsolės komandas. Konsolės komandos gali būti paleidžiamos iš pokalbių lango, vykdant juos su brūkšniu "/".Komandos naudojami žaidimų pasauliui modifikuoti tokiais būdais, kurie nėra įmanoma rankiniu būdu, o naudojant tinkamai komandų blokuose - "Minecraft", tai yra savaime suprantama "psuedo" programavimo kalba. Kodą sudaro du dalykai: logika ir vykdymas, o dauguma programavimo kalbų reikalauja, kad jie būtų parašyti tekstu. Minecraft kodavimas vyksta kitaip;programos logika ir struktūra priklauso nuo to, kur yra blokai ir kaip jie yra prijungiami, o tai reiškia, kad galite skristi virš savo pasaulio ir pamatyti skirtingas jūsų programos dalis, išdėstytas blokais.
Gerai, taigi, kaip man pradėti?
Šiame vadove naudojami nauji komandų blokai 1.9 versijoje. Jis dirbs 1,8 karto, tačiau gali reikėti šiek tiek daugiau žinių.
Atidarykite naują "Minecraft" pasaulį( Superflat veikia geriausiai), įsitikinkite, kad esate "Creative" režime ir paspauskite mygtuką "/".Tai yra komandų langas, kuris yra tas pats kaip pokalbio langas, išskyrus tai, kad jis prasideda iš "/", o viskas, pradedant priekine brūkšniu, yra komanda. Pirmoji komanda, kurią galite paleisti, yra
/ give @p minecraft: command_block
Pabandykime tai žemyn. Komanda "/ give" perkelia daiktus į žaidėjų inventorių ir turi du argumentus: žaidėjas ir daiktas duoti."@p" yra tikslo selektorius. Parinkiklis "@p" pasirenka artimiausią žaidėją.Arba taip pat galite naudoti savo "Minecraft" naudotojo vardą, bet jei paleisti komandą iš konsolės, visada būsite artimiausias žaidėjas. Kiti tiksliniai parinktys yra "@a" visiems žaidėjams, "@r" atsitiktiniam žaidėjui, o "@e" bus taikomi visi subjektai. subjektai apima viską, kas nėra blokas, kaip monstras, sniego kamuolius, gyvūnus ir strutus.
komanda turėtų sėkmingai atlikti ir suteikti jums naują bloką.Padėkite jį bet kur ant žemės, kad pradėtumėte.
Jūs galite pamatyti, kad komandos bloko taškai nukreipiami į tą vietą, kuri yra tokia, kaip bunkeriai ar krosnys. Tai bus svarbu vėliau.
Dešiniuoju pelės klavišu spustelėkite bloką( arba naudokite bet kokį raktą, kurį naudojate, kad galėtumėte pasiekti apdorojimo stalus ir krosnis), ir jūs būsite pasveikinti su komandos bloko GUI.
Iš pradžių atrodo šiek tiek bauginantis, bet nesijaudinkite, visi šie mygtukai kažką daro. Mygtukas "Impulse" pakeičia komandų bloko tipą.Yra trys skirtingi komandų blokų tipai:
- Impulse, kuris paleidžia komandas pakilimo krašte iš raudonojo akmens srovės. Tai reiškia, kad kai jie maitinami, jie vieną kartą paleis savo komandą ir sustabdys, net jei jie ir toliau bus maitinami. Tai yra numatytasis nustatymas ir yra vienintelis iš 1,8
- Repeat, kuris paleidžia komandas kiekvienam žymekliui , kuriame jie yra maitinami. Piešinys yra kaip rėmas, o kelias komandas galima paleisti vienu paspaudimu, iki 20 kartų per sekundę.
- grandinė, kuri veikia tik tada, kai komandinis blokas, į kurį nukreipiamas į jį, paleidžia komandą.Tai bus vienas po kito, vienas po kito, taigi pavadinimas "grandinė".
Mygtukas, kuris sako "Be besąlygiško", sustabdo komandų bloko patikrinimą, ar sėkmingai įvykdytas ankstesnis grandinės blokas. Kitas variantas "Sąlyginis" prasideda tik tuo atveju, jei ankstesnis blokas nepadarė klaidų.
Mygtukas, kuris sako "Needs Redstone", paleidžia komandą, tik jei komandinis blokas yra maitinamas. Kitas variantas "visada aktyvus" sustabdo komandų bloko patikrinimą, ar jis yra maitinamas, ir tik priima tai.Ši parinktis neturėtų būti naudojama su "Impulse" komandų blokais, nes jie tampa nenaudingi.
Sukursime grandinę, mūsų pirmąjį "scenarijų".Uždėkite grandinės valdymo bloką arba du į pirmąjį impulsų komandų bloką, kaip šis:
Būtinai nustatykite grandinės blokus į "Visada aktyvus".Priešingu atveju mums reikės įdėti redstone blokus arba srovę, kuri užtruks nereikalingą erdvę.Užveskite impulsų komandų bloko mygtuką grandinės pradžioje ir paspauskite.
Nieko neįvyks. Taip yra dėl to, kad dar neužpildėme jų komandomis! Dešiniuoju pelės klavišu spustelėkite impulso bloką, kad jį redaguotumėte, ir įdiekite pagrindinę komandą
pasakykite start
Atkreipkite dėmesį, kaip mums nereikia į priekį nukreipti brūkšnelius komandų blokuose. Galite naudoti vieną, jei norite, bet tai nereikalinga."/ Say" komanda priima vieną argumentą, tekstą ir sako, kad tai, kas ją vykdo, požiūriu. Jei jį paleidžiate, jis bus rodomas kaip "& lt; username & gt;pranešimas "kaip ir įprastas pokalbis. Jei tai prasidėjo iš komandų bloko, tai bus "[@] pranešimas".Arba yra "/ pasakyti", kuriame yra žaidėjo argumentas, ir "/ tellraw", kuris yra toks, kaip "/ tell", išskyrus tai, kad vietoje teksto reikia žaliavinio JSON.
Galite užpildyti grandinės komandų blokus, norėdami rašyti daugiau dalykų pokalbiui. Jie bus įvykdyti taip, kad nedelsiant, tuo pačiu metu. Jei norite paleisti juos su vėlavimu, juos reikės nustatyti su "redstone repeaters".Kartu su "sakau", yra ir kitų pagrindinių komandų, kurios daro daugiau dalykų, tokių kaip "/ duoti", kuriuose pateikiami daiktai "/ effect", pagal kurį taikoma potion poveikis, "/ setblock" ir "/ fill", kurie keičia jūsų pasaulįir daugelis kitų.Didžiulę komandų duomenų bazę galite rasti "Minecraft Wiki", kartu su kitais naudingais duomenimis.
Target Selecters
"@p" tiksliniai parinktys iš tikrųjų yra daug galingesni nei atrodo iš pirmo žvilgsnio. Pavyzdžiui, jei norėtume nukreipti visus objektus, mes naudosime "@ e", bet jei norėtume nukreipti tik zombius, mes turėtume naudoti
@e [type = Zombie]
dėmesį skliaustuose po "@ e".Šiuose skliausteliuose yra tikslo selektoriaus argumentai , kurių pilną sąrašą galite rasti "Minecraft Wiki"."Tipo" argumentas atrenka tik tam tikro tipo objektus, o tas yra "Zombie".Jei norėjome nukreipti visus zombius į 10 blokų komandų bloką, mes turėtume naudoti
@e [type = Zombie, r = 10]
. "R" yra spindulio argumentas. Be to, galite tikslinti pagal vietą, vardą, komandą ir rezultatą.
chaining commands
Leiskite pristatyti kitą komandą, kuri nėra panaši į kitas. Komanda yra "/ execute".Ši komanda įveda kitą komandą kaip įvestą ir ją vykdo kito subjekto požiūriu."/ Execute" struktūra yra
/ execute @ targetx X Y Z / komanda
X, Y ir Z yra koordinatės paleisti komandą iš.Tai nesvarbu su daugeliu komandų, bet svarbu, jei naudojate santykinį pozicionavimą. Santykinė pozicija prasideda simboliu "~", o po jo yra teigiamas arba neigiamas skaičius, nurodantis, kiek blokų yra iš kilmės, pažymėtą "~ ~ ~".Pavyzdžiui, jei norėtume paleisti "/ pasakyti", kaip kažkas kalbėjo, mes galime nustatyti tokią komandą:
/ execute @e [type = Villager] ~ ~ ~ / say Hey
Ši komanda buspaskelbsiu pranešimą visiems, kiekvienam kaimiečiui. Tai nėra optimalus, jei turime daugiau nei vieną asmenį arba daugiau nei vieną kaimiečių, todėl pertvarkykime šią komandą:
/ execute @ a ~ ~ ~ / execute @e [type = Villager, c = 1] ~ ~ ~ / tell@p Hey
Tai daug sudėtingesnis nei pirmasis ir apima dviejų "/ execute" komandų sujungimą.Pirmasis "/ execute" komandos paleidžiamas kiekvienam žaidėjui, paskui antroji tikrina netoliese esantį "Villager", ir tada tas Villager pasakoja artimiausią žaidėją "Ei".Tai užtikrina, kad vienam žmogui kalba tik vienas Villager.
"Syntax
" mokymasis "Minecraft" tikrai turi daug komandų, kad kiekvienas turi savo sintaksę.Pagalbos meniu kiekvienai komandai paprastai greitai pasakys, kokie argumentai reikalingi komandai, ir Minecraft Wiki turi išsamų kiekvieno savininko sąrašą.Tai ne tiek daug apie tai, ką tiksliai žinote kiekviena komanda, bet ir apie tai, kaip juos naudoti kartu. Galų gale, "Minecraft" yra žaidimas, taigi žaidimas su komandomis yra mokymosi proceso dalis.