95 lines
5.2 KiB
Python
Executable File
95 lines
5.2 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
# mcpipy.com retrieved from URL below, written by burnaron
|
|
# http://www.minecraftforum.net/topic/1689199-my-first-script-bunkermaticpy/
|
|
|
|
import mcpi.minecraft as minecraft
|
|
import mcpi.block as block
|
|
from math import *
|
|
import server
|
|
|
|
mc = minecraft.Minecraft.create(server.address)
|
|
x1 = -4
|
|
y1 = 3
|
|
z1 = 9
|
|
long_tun = 10
|
|
long_arc_ch = 8
|
|
long_ch = 26
|
|
long_m_ch = long_ch - 2 * long_arc_ch
|
|
deepness = 60
|
|
high_c_ch = 3
|
|
|
|
# FASE 1: cleaning zone
|
|
mc.setBlocks(x1-2,y1,z1-2,x1+2,y1+20,z1+2,0)
|
|
mc.setBlocks(x1-(long_tun+long_ch+1),y1-(deepness+1),z1-(long_tun+long_ch+1),x1+long_tun+long_ch+1,y1-(deepness-long_arc_ch-2-1),z1+long_tun+long_ch+1,1)
|
|
|
|
# FASE 2: establishing access
|
|
mc.setBlocks(x1-1.5,y1+2,z1-1.5,x1+1.5,y1-deepness,z1+1.5,1)
|
|
mc.setBlocks(x1-1,y1+2,z1-1,x1-1,y1-deepness,z1-1,0)
|
|
|
|
# FASE 3: establishing main tunnels, central chamber & and access stairs
|
|
# FASE 3.1: establishing central chamber
|
|
mc.setBlocks(x1-1,y1-deepness,z1-1,x1+1,y1-(deepness-high_c_ch),z1+1,0)
|
|
|
|
# FASE 3.2: establishing main tunnels
|
|
mc.setBlocks(x1-(long_tun+long_ch),y1-deepness,z1,x1+long_tun+long_ch,y1-(deepness-1),z1,0)
|
|
mc.setBlocks(x1,y1-deepness,z1-(long_tun+long_ch),x1,y1-(deepness-1),z1+long_tun+long_ch,0)
|
|
|
|
# FASE 3.3: establishing access stairs
|
|
mc.setBlocks(x1-1,y1+2,z1-1,x1-1,y1-deepness,z1-1,65,3)
|
|
|
|
# FASE 4: establishing main chambers
|
|
for pos in range(0,long_arc_ch):
|
|
mc.setBlocks(x1+long_tun+pos,y1-deepness,z1-pos,x1+long_tun+pos,y1-(deepness-2)+pos,z1+pos,0)
|
|
mc.setBlocks(x1-long_tun-pos,y1-deepness,z1-pos,x1-long_tun-pos,y1-(deepness-2)+pos,z1+pos,0)
|
|
mc.setBlocks(x1-pos,y1-deepness,z1+long_tun+pos,x1+pos,y1-(deepness-2)+pos,z1+long_tun+pos,0)
|
|
mc.setBlocks(x1-pos,y1-deepness,z1-long_tun-pos,x1+pos,y1-(deepness-2)+pos,z1-long_tun-pos,0)
|
|
|
|
mc.setBlocks(x1+long_tun+long_arc_ch,y1-deepness,z1-long_arc_ch,x1+long_tun+long_arc_ch+long_m_ch,y1-(deepness-2)+long_arc_ch,z1+long_arc_ch,0)
|
|
mc.setBlocks(x1-(long_tun+long_arc_ch),y1-deepness,z1-long_arc_ch,x1-(long_tun+long_arc_ch)-long_m_ch,y1-(deepness-2)+long_arc_ch,z1+long_arc_ch,0)
|
|
mc.setBlocks(x1-long_arc_ch,y1-deepness,z1+long_tun+long_arc_ch,x1+long_arc_ch,y1-(deepness-2)+long_arc_ch,z1+long_tun+long_arc_ch+long_m_ch,0)
|
|
mc.setBlocks(x1-long_arc_ch,y1-deepness,z1-(long_tun+long_arc_ch),x1+long_arc_ch,y1-(deepness-2)+long_arc_ch,z1-(long_tun+long_arc_ch)-(long_m_ch),0)
|
|
|
|
for pos in range(0,long_arc_ch):
|
|
mc.setBlocks(x1+long_tun+long_arc_ch+long_m_ch+pos,y1-deepness,z1-long_arc_ch+pos,x1+long_tun+long_arc_ch+long_m_ch+pos,y1-(deepness-2)+long_arc_ch-pos,z1+long_arc_ch-pos,0)
|
|
mc.setBlocks(x1-(long_tun+long_arc_ch)-long_m_ch-pos,y1-deepness,z1-long_arc_ch+pos,x1-(long_tun+long_arc_ch)-long_m_ch-pos,y1-(deepness-2)+long_arc_ch-pos,z1+long_arc_ch-pos,0)
|
|
mc.setBlocks(x1-long_arc_ch+pos,y1-deepness,z1+long_tun+long_arc_ch+long_m_ch+pos,x1+long_arc_ch-pos,y1-(deepness-2)+long_arc_ch-pos,z1+long_tun+long_arc_ch+long_m_ch+pos,0)
|
|
mc.setBlocks(x1-long_arc_ch+pos,y1-deepness,z1-(long_tun+long_arc_ch)-long_m_ch-pos,x1+long_arc_ch-pos,y1-(deepness-2)+long_arc_ch-pos,z1-(long_tun+long_arc_ch)-long_m_ch-pos,0)
|
|
|
|
# FASE 5: establishing lights & doors:
|
|
# FASE 5.1: central chamber lights:
|
|
mc.setBlock(x1,y1-(deepness-2),z1+1,50)
|
|
mc.setBlock(x1+1,y1-(deepness-2),z1,50)
|
|
mc.setBlock(x1,y1-(deepness-2),z1-1,50)
|
|
mc.setBlock(x1-1,y1-(deepness-2),z1,50)
|
|
|
|
# FASE 5.2: main chambers lights
|
|
for pos in range(2,long_arc_ch):
|
|
mc.setBlock(x1+pos,y1-(deepness-2),z1+long_tun+pos,50)
|
|
mc.setBlock(x1-pos,y1-(deepness-2),z1+long_tun+pos,50)
|
|
mc.setBlock(x1+pos,y1-(deepness-2),z1-long_tun-pos,50)
|
|
mc.setBlock(x1-pos,y1-(deepness-2),z1-long_tun-pos,50)
|
|
mc.setBlock(x1+long_tun+pos,y1-(deepness-2),z1+pos,50)
|
|
mc.setBlock(x1+long_tun+pos,y1-(deepness-2),z1-pos,50)
|
|
mc.setBlock(x1-long_tun-pos,y1-(deepness-2),z1+pos,50)
|
|
mc.setBlock(x1-long_tun-pos,y1-(deepness-2),z1-pos,50)
|
|
|
|
for pos in range(0,long_m_ch,2):
|
|
mc.setBlock(x1+long_arc_ch,y1-(deepness-2),z1+long_tun+long_arc_ch+pos,50)
|
|
mc.setBlock(x1-long_arc_ch,y1-(deepness-2),z1+long_tun+long_arc_ch+pos,50)
|
|
mc.setBlock(x1+long_arc_ch,y1-(deepness-2),z1-(long_tun+long_arc_ch)-pos,50)
|
|
mc.setBlock(x1-long_arc_ch,y1-(deepness-2),z1-(long_tun+long_arc_ch)-pos,50)
|
|
mc.setBlock(x1+long_tun+long_arc_ch+pos,y1-(deepness-2),z1+long_arc_ch,50)
|
|
mc.setBlock(x1+long_tun+long_arc_ch+pos,y1-(deepness-2),z1-long_arc_ch,50)
|
|
mc.setBlock(x1-(long_tun+long_arc_ch)-pos,y1-(deepness-2),z1+long_arc_ch,50)
|
|
mc.setBlock(x1-(long_tun+long_arc_ch)-pos,y1-(deepness-2),z1-long_arc_ch,50)
|
|
|
|
for pos in range(0,7):
|
|
mc.setBlock(x1+long_arc_ch-pos,y1-(deepness-2),z1+long_tun+long_arc_ch+long_m_ch+pos,50)
|
|
mc.setBlock(x1-long_arc_ch+pos,y1-(deepness-2),z1+long_tun+long_arc_ch+long_m_ch+pos,50)
|
|
mc.setBlock(x1+long_arc_ch-pos,y1-(deepness-2),z1-(long_tun+long_arc_ch)-long_m_ch-pos,50)
|
|
mc.setBlock(x1-long_arc_ch+pos,y1-(deepness-2),z1-(long_tun+long_arc_ch)-long_m_ch-pos,50)
|
|
mc.setBlock(x1+long_tun+long_arc_ch+long_m_ch+pos,y1-(deepness-2),z1+long_arc_ch-pos,50)
|
|
mc.setBlock(x1+long_tun+long_arc_ch+long_m_ch+pos,y1-(deepness-2),z1-long_arc_ch+pos,50)
|
|
mc.setBlock(x1-(long_tun+long_arc_ch)-long_m_ch-pos,y1-(deepness-2),z1+long_arc_ch-pos,50)
|
|
mc.setBlock(x1-(long_tun+long_arc_ch)-long_m_ch-pos,y1-(deepness-2),z1-long_arc_ch+pos,50) |