JavaScript (JS, ECMAScript, ES) is een veelzijdige programmeertaal die wereldwijd duizenden goedbetaalde banen levert... dus het kan een verrassing zijn dat je het kunt leren door Minecraft te spelen.
Microsoft MakeCode voor Minecraft probeert de wereld van softwareontwikkeling naar iedereen en iedereen met leuke, gratis projecten die uw code voor uw ogen tot leven brengen in de wereld van blokken.
Wat is Microsoft MakeCode?
Microsoft MakeCode is een leerplatform dat zich toelegt op het interessant en toegankelijk maken van onderwijs in de informatica. Het is gratis en open-source met een verscheidenheid aan methoden om te leren, bouwen en spelen.
Als je al eerder Minecraft hebt gespeeld, valt deze optie misschien op. Je kunt Python en JavaScript leren in deze sectie, of de blokeditor gebruiken om aan programmeerlogica te werken zonder je zorgen te maken over code. In dit artikel zullen we JS gebruiken.
Dit artikel laat je kennismaken met MakeCode voor Minecraftdoor het oorspronkelijke project, Chicken Rain, af te breken en een paar aangepaste scripts te introduceren - het eerste testament stelt u in staat om algemene instellingen te wijzigen (zoals weer of tijd), en de tweede stelt u in staat om een aangepaste te maken en af te spelen minigame.
Opmerking: Om te profiteren van de volledige functionaliteit van MakeCode voor Minecraft, heb je een Minecraft Bedrock-editie (Minecraft voor Windows 10) of Minecraft Education-editie account.
Opstelling: codeverbinding en een nieuwe wereld
Download en installeer om uw code te synchroniseren met uw Minecraft-client Microsoft Code-verbinding.
Kies uw versie van Minecraft en volg de stappen op het Minecraft voor Windows 10 Setup voor MakeCode pagina om Code Connection te installeren en uit te voeren.
Start met Code Connection actief Minecraft en creëer een nieuwe wereld (Speel> Werelden> Creëer nieuw> Creëer nieuwe wereld> Creëer) met cheats ingeschakeld. Activeer cheats moet zijn ingeschakeld om toegang te krijgen tot de volledige functionaliteit van MakeCode.
Start je nieuwe wereld en voer de opdracht die wordt weergegeven door Code Connection in de chat in om je teksteditor en gameclient te synchroniseren.
Verwant: De ultieme Cheat Sheet voor Minecraft-opdrachten
Nu Code Connection is opgezet en een nieuwe wereld op je wacht, ben je klaar om erin te springen en te beginnen met coderen!
Minecraft MakeCode: Chicken Rain
Het eerste beschikbare project is Kip regen. Deze tutorial in vijf stappen helpt je vertrouwd te raken met de MakeCode-gebruikersinterface (zoals de teksteditor, het menu, de afspeelknop en handige documentatie.)
Verwant: Wilt u programmeren leren? Sleutelbegrippen die u moet kennen
We zullen ook een rudimentaire blik werpen op 'variabelen' en 'functies', twee belangrijke bouwstenen van de informatica. Je hebt ook je eigen vloed van drijvende kippen als je klaar bent met het schrijven van het script.
Dit klinkt misschien niet zo veel als je van plan bent om volwaardige mods te maken, maar je code tot leven zien komen is een ongelooflijk gevoel dat veel ingenieurs voor het leven verslaafd maakt. Dit is je eerste stap!
Bekijk de prompt voordat u de code naar uw teksteditor kopieert. Dit is een goed voorbeeld om te laten zien hoe u zou moeten denken als een computerwetenschapper.
Opmerking: Begrijp je het jargon van de programmeur niet? Hier is een JavaScript-spiekbriefje.
- Eerst noemen we de functie van een object met mobs.spawn (). Dit is hoe we specificeren wat we willen dat de computer doet. We willen dat Minecraft een menigte voortbrengt.
- Geweldig, maar wat voor soort menigte? Hier specificeren we een variabele:KIP- om de computer te vertellen welke menigte we willen spawnen.
- mobs.spawn () neemt twee parameters in: mob-type en positie. We moeten de computer nog steeds vertellen waar we willen dat de menigte spawnt. We doen dit met pos (0, 10, 0) waar (0, 10, 0) is de XYZ-coördinaten met betrekking tot je Minecraft-personage.
mobs.spawn (KIP, pos (0, 10, 0))
Klik op de Afspeelknop om uw code uit te voeren. Schakel terug naar Minecraft en kijk omhoog! Als alles goed is verlopen, heb je een gevederde vriend voortgebracht.
Wat als we meer kippen willen (en eerlijk gezegd, wie niet?) Moeten we deze code gewoon een paar keer kopiëren en plakken en dan nogmaals op run drukken? Nou, dat kan, maar dat zou je niet moeten doen - een goede mantra om vroeg in het coderen te leren is "DROOG" (niet herhalen.) Dit zal je een efficiëntere ontwikkelaar maken.
Om dezelfde code meerdere keren uit te voeren, gebruiken we een lus.
Een "for" -lus zal de code die we erin plaatsen uitvoeren voor zoveel iteraties als we specificeren - in dit geval 100.
- Begin met voor() {}. De accolades worden gebruikt om het bereik van deze lus te definiëren - elke code binnen de accolades wordt meerdere keren uitgevoerd.
- We moeten de computer vertellen hoe vaak deze code moet worden uitgevoerd. Maak binnen de haakjes een variabele met laat en stel die variabele in op 0. Vervolgens specificeren we hoe vaak deze lus moet worden uitgevoerd door op te nemen ik <100. Ten slotte specificeren we wat er aan het einde van elke iteratie moet gebeuren - de waarde van onze variabele wordt verhoogd met één (i ++).
- Plak de code van de vorige stap in de accolades. Zorg ervoor dat u inspringt zoals aangegeven.
voor (laat i = 0; i <100; i ++) {
mobs.spawn (KIP, pos (0, 10, 0))
}
Klik op de Afspeelknop en wissel terug naar Minecraft. Kippenregen!
MakeCode voor Minecraft: meer plezier met JavaScript
Met je eerste regels JavaScript onder je riem, heb je toegang tot een aantal andere MakeCode-tutorials zoals Mega Jump of Save the Cake, of maak je een leeg document en laat je creativiteit de vrije loop.
Laten we eens kijken naar enkele aangepaste scripts om aan onze JS-vaardigheden te werken.
Verwant: Variabelen declareren in JavaScript
Tijd en andere instellingen beheren
Te laat uitslapen en uw boerderij niet verzorgen? Wilt u de klokken terugzetten? En waarom regent het altijd? Maak je geen zorgen, programmeren helpt je!
player.onItemInteracted (CLOCK, function () {
if (gameplay.isDaylightTime (DAY)) {
gameplay.timeSet (DayTime. Nacht)
} anders {
gameplay.timeSet (DayTime. Dag)
}
})
Dit codeblok introduceert het als anders verklaring, een hoofdbestanddeel van computerwetenschappelijke logica.
- Roep de functie van het "speler" -object aan dat wordt uitgevoerd wanneer u een bepaald item gebruikt, player.onItemInteracted (). Specificeer het item dat u wilt gebruiken, in dit geval een KLOKen stel de functie in die wordt uitgevoerd wanneer u met het item werkt functie () {}.
- Voeg een if else-instructie toe if () {} else {} om als een aan / uit-schakelaar te fungeren. Vul de parameters in if (gameplay.isDayLightTime (Day)) om te controleren hoe laat het is in Minecraft.
- Voeg de code toe die u wilt uitvoeren in het als accolades {gameplay.timeSet (DayTime. Nacht)}. Tot dusverre controleert uw code of het Dagen stelt het vervolgens in op Nacht als het is.
- Schrijf de code in je anders sectie {gameplay.timeSet (overdag. Dag)}. Laten we zeggen dat je als verklaring is niet vervuld (het is momenteel Nacht tijd in-game) - jouw anders code wordt uitgevoerd.
Klik op de Afspeelknop, wissel dan naar Minecraft en voer in /spelmodus 1 in de chat; open je inventaris en spawn in een klok. Klik een paar keer met de rechtermuisknop met de klok in je hand - als je de code correct hebt geschreven, wisselt je wereld tussen zon en maan.
De mogelijkheden van dit stukje logica zijn eindeloos. Gebruik het menu aan de linkerkant om allerlei opdrachten en variabelen te zien om mee te spelen. Maak je handen vuil; ontdek wat werkt en wat niet (en wat schijnbaar zou moeten werken, maar nog steeds niet). Dit is wat het betekent om de wereld van de informatica te verkennen.
MakeCode voor Minecraft Mini-game: Bat Hunter
player.onChat ("batHunt", function () {
gameplay.setGameMode (
OVERLEVING,
mobs.target (LOCAL_PLAYER)
)
gameplay.setDifficulty (NORMAAL)
mobs.give (
mobs.target (NEAREST_PLAYER),
BOOG,
1
)
mobs.give (
mobs.target (NEAREST_PLAYER),
PIJL,
64
)
voor (laat i = 0; i <32; i ++) {
mobs.spawn (BAT, randpos (
pos (-5, 0, -8),
pos (5, 0, 5)
))
}
})
let punten = 0
let addPoints = function () {
punten + = 1
player.say (`2 punten! Totaal: $ {points} `)
}
laat clearPoints = function () {
punten = 0
player.say ("Punten gewist.")
}
mobs.onMobKilled (BAT, addPoints)
player.onChat ("clearPoints", clearPoints)
Dit lijkt misschien een behoorlijke sprong ten opzichte van de vorige projecten, maar maak je geen zorgen; je kent al de meeste logica die in deze minigame zit. Het enige wat u hoeft te doen is een open geest te houden en de lege plekken in te vullen.
- We bellen een speler.onChat () functioneren als de setup. Dit zet je gamemode op Survival en je moeilijkheidsgraad op Normal, en geeft je vervolgens een Bow en 64 pijlen.
- Vervolgens zetten we een voor lus met een mobs.spawn () functieaanroep om in 32 vleermuizen te spawnen. We gebruiken randpos () om de reeks locaties te specificeren waarin de vleermuizen kunnen spawnen. Hierdoor zullen ze onvoorspelbaar om je heen zwermen.
- Nu hebben we het algoritme voor het volgen van punten ingesteld. Initialiseer een punten variabele met een waarde van 0. Maak nu een functie die 2 punten per bat-verwijdering bijhoudt. We gebruiken een letterlijke sjabloon om stringtekst ("2 punten!" Totaal :) te combineren met de waarde van een variabele ($ {punten}).
- Maak een vergelijkbare functie als in stap 3 om uw puntentotaal te wissen.
- Maak nu de instanties waarin deze functies moeten worden uitgevoerd. Wij willen addPoints om te rennen als een vleermuis wordt gedood, dus gebruiken we mobs.onMobKilled (BAT, addPoints). We willen dat clearPoints worden uitgevoerd wanneer u "clearPoints" typt in de chat.
Klik Speel en ontvang zoveel mogelijk punten! Ik raad aan om in een grote kamer te spelen (gooi misschien wat obstakels in zodat vleermuizen erachter kunnen komen) omdat buiten spelen het voor de vleermuizen maar al te gemakkelijk maakt om de verte in te vliegen.
Net als bij de andere scripts in deze tutorial, en alle andere code die je tegenkomt tijdens je informatica-reis, is deze code gewoon een basis om je eigen flair toe te voegen. Je zou een timer kunnen gebruiken om urgente elementen toe te voegen, of een scorebord om je vorige games bij te houden; wat je bouwt, wordt alleen beperkt door je eigen creativiteit.
MakeCode voor Minecraft Agent
De Agent is een handige NPC waarmee je multiplayer-interacties in je game voor één speler kunt testen, taken kunt automatiseren en nog veel meer.
MakeCode biedt begeleide tutorials voor Agent Checkers, navigeren door een doolhof met je Agent, en het heeft ook een overvloed aan Agent-gerelateerde broncode die je naar believen kunt aanpassen.
Duik dieper in JavaScript
We hopen dat MakeCode voor Minecraft uw codeerinteresses heeft gewekt! We staan achter haar missie om een nieuwe generatie programmeurs te creëren.
Terwijl u enkele essentiële JavaScript-methoden hebt geoefend, hebben we in dit artikel slechts het topje van de JavaScript-ijsberg onderzocht. Als u JavaScript wilt leren om klaar te zijn voor uw werk, moet u leren hoe JS samenwerkt met andere webtechnologieën zoals HTML en CSS. Je zou er verstandig aan doen om ook gemeenschappelijke datastructuren en algoritmen te bestuderen.
Als u webontwikkeling leert, is dit wat u moet weten over JavaScript en hoe het werkt met HTML en CSS.
Lees Volgende
- Programmeren
- JavaScript
- Minecraft
Marcus is een levenslange technologieliefhebber en schrijver bij MUO. In 2020 begon hij aan zijn freelance-carrière als schrijver, met betrekking tot trending tech, gadgets en apps. Als je Marcus vroeg: "Android of iPhone?" hij zou "iPhone" zeggen. Als je hem naar zijn favoriete mobiele game zou vragen, zou hij een paar minuten moeite hebben om na te denken voordat hij zou vragen "Mag ik je mijn top 5 geven?"
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.