Welkom op Codingkids

Programmeren voor kinderen

Blokken plaatsen

Je kunt een blok ergens plaatsen met mc.setBlock()

Deze functie krijgt tussen de haakjes () de volgende waarde mee: de positie x, y en z, en het blok nummer. Op deze pagina kun je alle nummers van de Minecraft blokken zien.

x, y, z = mc.player.getPos()

mc.setBlock(x+1, y, z, 1)

Nu wordt er een steen blok naast je neergezet. Zie je het blok niet meteen, klik je muis in het spel en kijk even goed rond.

In de setBlock() functie staat weer x, y en z en nu ook id. De (x, y, z) is jou plek in het spel, maar nu x + 1) geeft één plek naast jou waar het blok komt. Het soort blok wordt bepaald door ID of blok nummer. In dit geval 1 is een steen blok.

Andere blokken die je kunt proberen zijn:

Lucht: 0 Gras: 2 Modder: 3

Op deze pagina kun je alle nummers van de Minecraft blokken vinden.

We gaan nu terwijl je naar het blok kijkt het blok veranderen in iets anders:

mc.setBlock(x+1, y, z, 2)

Je ziet nu het steen blok veranderen voor je ogen!

Blok namen gebruiken

In plaats van een nummer van de blokken ID, kun je ook de blok namen gebruiken.Je moet dan aan het begin van je programme een regel erbij typen:

from mcpi import block

Nu kun je het volgende schrijven om een blok te plaatsen:

mc.setBlock(x+3, y, z, block.STONE.id)

De namen van de blokken moeten in hoofdletters getypt worden, hier zijn een aantal voorbeelden van block namen om te gebruiken.

WOOD_PLANKS WATER_STATIONARY GOLD_ORE GOLD_BLOCK DIAMOND_BLOCK NETHER_REACTOR_CORE

Block als variabele

Als je het id nummer van een blok weet kun je het ook aan een variable geven. Je kunt een variabele maken met de naam van het blok of met het block.id om er een getal (integer) aan te geven. Bijvoorbeeld:

dirt = 3 mc.setBlock(x, y, z, dirt)

of het kan ook zo

dirt = block.DIRT.id mc.setBlock(x, y, z, dirt)

Speciale blokken

Er zijn blokken met extra kenmerken zoals van het blok Wol kun je ook de kleur geven. Daarvoor moet je nog een extra waarde aan setBlock geven, bijvoorbeeld:

wool = 35 mc.setBlock(x, y, z, wool, 1)

In dit voorbeeld betekent 1 de kleur oranje. Zonder de extra waarde krijg je de standaard (0) en dat is wit. Voorbeelden van kleuren zijn:

2: Paars 3: Licht Blauw 4: Geel

Probeer nog wat meer nummers en kijk welke kleur het wordt!

Een ander blok met extra waardes is hout (17): oak, spruce, birch, etc; tall grass (31): shrub, grass, fern; torch (50): pointing east, west, north, south; and more. Kijk hier API reference voor meer waardes.

Speciale blokken

In de volgende programma gaan we een Torch aan een Steen blok vastmaken. Het blok nummer voor Torch is 50. Verder kan de Torch nog de volgende waardes meekrijgen: 0, 1, 2, 3, 4 en 5.

0 betekent: op de vloer

1 betekent: gericht naar Oost

2 betekent: gericht naar West

3 betekent: gericht naar Zuid

4 betekent: gericht naar Noord

Probeer maar eens het programma hieronder:

from mcpi.minecraft import Minecraft import time mc=Minecraft.create() x, y, z = mc.player.getPos() mc.setBlock(x+2,y,z+2,1) mc.setBlock(x+2,y,z+1,50,3)

Kun jij nu dit programma aanvullen zodat er nog een blokje steen naast komt met daaraan een Torch gericht naar Zuid?

Tip: verander de waarde van x

Maak een trap

Net als blok 50 (Torch) is blok 53 (Stairs) ook een speciaal blok. Er zijn waardes voor Noord, Oost, Zuid en West.

0 betekent: richting Oost

1 betekent: richting West

2 betekent: richting Zuid

3 betekent: richting Noord

Probeer nu eens een trap te maken?

Hieronder een voorbeeld van het programma:

from mcpi.minecraft import Minecraft import time mc=Minecraft.create() x, y, z = mc.player.getPos() mc.setBlock(x+2,y,z+2,53,2) mc.setBlock(x+2,y+1,z+3,53,2) mc.setBlock(x+2,y+2,z+4,53,2) mc.setBlock(x+2,y+3,z+5,53,2) mc.setBlock(x+2,y+4,z+6,53,2)

Kun je ook een trap maken die naar beneden in de grond gaat?

Tip: Het is handig om ook wat lucht blokken te plaatsen anders kun je de trap niet naar beneden lopen.

from mcpi.minecraft import Minecraft import time mc=Minecraft.create() x, y, z = mc.player.getPos() mc.setBlock(x+2,y-1,z+3,53,3) mc.setBlock(x+2,y-1,z+4,0) mc.setBlock(x+2,y-1,z+5,0) mc.setBlock(x+2,y-1,z+6,0) mc.setBlock(x+2,y-2,z+4,53,3) mc.setBlock(x+2,y-2,z+5,0) mc.setBlock(x+2,y-2,z+6,0) mc.setBlock(x+2,y-3,z+5,53,3) mc.setBlock(x+2,y-3,z+6,0) mc.setBlock(x+2,y-4,z+6,53,3) mc.setBlock(x+2,y-4,z+6,0)

Je hebt nu wat geoefend met het plaatsen van verschillende soorten blokken en je kunt de posities x, y en z toepassen.

Het is tijd om naar de volgende les te gaan: Plaats meerdere blokken

Ondersteun deze website!

Copyright © 2016 Tamara Heskamp