https://pastein.ru/t/cqj

  скопируйте уникальную ссылку для отправки

Загрузка данных


import mcpi.minecraft as minecraft
import mcpi.block as block
import random
import time
mc = minecraft.Minecraft.create()
pos = mc.player.getTilePos()
x = pos.x
y = 100
z = pos.z
mc.player.setTilePos(x, y, z)
tnt = block.TNT.id
grass = block.GRASS.id
air = block.AIR.id
scores = 0
countGrasses = 8
grasses = []
def place():
    for i in range(-1, 2):
        for k in range(-1, 2):
            grasses.append(mc.setBlock(x + i, y - 1, z + k, grass))
game = True
place()
 
while game:
    time.sleep(0.1)
 
    xr = random.randint(-1, 1) + x
    zr = random.randint(-1, 1) + z
    mc.setBlock(xr, y - 2, zr, tnt)
 
    searchMode = True
 
    while searchMode:
        player = mc.player.getTilePos()
        if player.y < 100:
            mc.postToChat("Мы упали с платформы! Игра окончена!")
            mc.setBlocks(x - 1, y - 2, z - 1, x + 1, y, z + 1, air)
            game = False
            break
        hit = mc.events.pollBlockHits()
        for h in hit:
            pos = h.pos
            if pos.x == xr and pos.y == y - 1 and pos.z == zr:
                mc.postToChat("О нет! Мы наткнулись на мину! Игра окончена!")
                mc.setBlocks(x - 1, y - 2, z - 1, x + 1, y, z + 1, air)
                searchMode = False
                game = False
                break
            else:
                mc.postToChat("Отлично! +1 Балл!")
                mc.setBlock(pos.x, pos.y, pos.z, air)
                scores += 1
                countGrasses -= 1
                mc.postToChat("Очки:" + str(scores))
                mc.postToChat("Блоки земли без динамита:" + str(countGrasses))
                if countGrasses == 0:
                    place()
                    countGrasses = 8
                    mc.setBlock(xr, y - 2, zr, air)
                    searchMode = False
                break