-
Notifications
You must be signed in to change notification settings - Fork 0
/
block_drawer.py
55 lines (40 loc) · 1.03 KB
/
block_drawer.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Import Minecraft libraries
import mcpi.minecraft as minecraft
import mcpi.block
import random
TNT = mcpi.block.TNT.id
STONE = mcpi.block.STONE.id
SHELF = mcpi.block.BOOKSHELF.id
AIR = mcpi.block.AIR.id
ICE = mcpi.block.ICE.id
LAVA = mcpi.block.LAVA.id
GRID_SIZE = 16
OFFSET = 5
mc = minecraft.Minecraft.create()
def write_to_screen(message):
mc.postToChat(message)
def explode():
print "explode"
# mc.player.setPos(1,25,25) # Move player to be in front of TNT
# mc.player.
def set_view():
mc.player.setPos(26, 8, 25)
def save_checkpoint():
mc.saveCheckpoint()
def restore_checkpoint():
# restores state of world to last saved checkpoint
mc.restoreCheckpoint()
def clear():
for i in range(GRID_SIZE*2):
for j in range(GRID_SIZE*2):
mc.setBlock(0,i+ OFFSET,j,AIR)
def draw_block(x,y,inside):
rx= random.choice([-1,1])
ry= random.choice([-1,1])
x = (int(x*GRID_SIZE)*rx)+ GRID_SIZE
y = (int(y*GRID_SIZE)*ry) + GRID_SIZE
if inside:
block = TNT
else:
block = ICE
mc.setBlock(0,x+ OFFSET, y, block, 1) # Set to 1 to live