Transcript mineraft.py

Login using your own username and password
Go to programming -> geany
Enter the following program:
from mcpi .minecraft import Minecraft
mc = Minecraft.create()
mc.postToChat(“write your message here”)
stone = 1
x, y, z = mc.player.getPos()
mc.setBlocks(x+1, y+1, z+1, x+11, y+11, z+11, stone)
Open LX Terminal, enter these 2 commands
su pi
sudo minecraft-pi
• Start a new game of
mine craft.
• Press the tab key to
get your mouse out
of the game
• Go back to geany,
save your program
file under your
username with the
name mineraft.py
• Run your program
by clicking the
button
Inputs
• In the game of minecraft, what are the
available inputs?
Outputs
• In minecraft, what are the outputs?
Computer Systems
• What inputs and outputs can you use with a
computer system such as a raspberry pi?
• Can these inputs and outputs be combined with
the minecraft game?
Python input, Minecraft output
• Try this …
from mcpi .minecraft import Minecraft
mc = Minecraft.create()
name = raw_input(“What is your name? “)
mc.postToChat(“Hi ” + name)
API Blocks
LAPIS_LAZULI_ORE 21
=======================LAPIS_LAZULI_BLOCK 22
AIR
0
SANDSTONE
24
STONE
1
BED
26
GRASS
2
COBWEB
30
DIRT
3
GRASS_TALL
31
COBBLESTONE
4
WOOL
35
WOOD_PLANKS
5
FLOWER_YELLOW
37
SAPLING
6
FLOWER_CYAN
38
BEDROCK
7
MUSHROOM_BROWN
39
WATER_FLOWING
8 MUSHROOM_RED
40
WATER
8
GOLD_BLOCK
41
WATER_STATIONARY 9 IRON_BLOCK
42
What happens
LAVA_FLOWING
10
STONE_SLAB_DOUBLE 43
LAVA
10
STONE_SLAB
44
if you change
LAVA_STATIONARY 11 BRICK_BLOCK
45
this value?
SAND
12
TNT
46
GRAVEL
13
BOOKSHELF
47
GOLD_ORE
14
MOSS_STONE
48
IRON_ORE
15
OBSIDIAN
49
COAL_ORE
16
TORCH
50
What is this “while
WOOD
17
FIRE
51
True:” doing?
LEAVES
18
STAIRS_WOOD
53
GLASS
20
CHEST
54
SNOW
78
DIAMOND_ORE
56 ICE
79
DIAMOND_BLOCK
57 SNOW_BLOCK
80
CRAFTING_TABLE
58 CACTUS
81
FARMLAND
60
CLAY
82
FURNACE_INACTIVE 61 SUGAR_CANE
83
FURNACE_ACTIVE
62 FENCE
85
DOOR_WOOD
64 GLOWSTONE_BLOCK 89
LADDER
65
BEDROCK_INVISIBLE 95
STAIRS_COBBLESTONE 67STONE_BRICK
FENCE_GATE
107
98
DOOR_IRON
71
GLOWING_OBSIDIAN 246
GLASS_PANE
102
73 MELON
NETHER_REACTOR_CORE 247 REDSTONE_ORE
103
Using Loops
from mcpi.minecraft import Minecraft
from time import sleep
mc = Minecraft.create()
Block_type = 38
while True:
x, y, z = mc.player.getPos()
mc.setBlock(x, y, z, block_type)
sleep(0.1)
Homework
• Describe a way that you might modify the
inputs and outputs of minecraft using Python
to make it do something that’s new.