破冰游戏:如何让玩家移动并避开障碍物?

时间:2017-06-01 02:01:01

标签: python

我使用python创建游戏,我不知道如何实现下一步。游戏是关于玩家在冰上行走并尽量不落入下面的水中。

球员不应该踩水,冰应该变成水,但我不知道该怎么做。我也不知道如何让球员移动到他们旁边的冰上。有没有办法做到这一点? 我使用了一个名为graphics的模块,这是我在被卡住之前到目前为止所尝试过的:

from graphics import *

COLUMN, ROW = 7, 10

WIN_W, WIN_H = 455, 320

WIN_SZ, GAP = 40, 5

COLORS = ['blue', 'white']

CIRCLE, RECTANGLE, COLOR = range(3)

player = 'X'

ices = []

def draw_ice(x, y):
    left = GAP + x * (WIN_SZ + GAP)
    top = GAP + y * (WIN_SZ + GAP)
    r = Rectangle(Point(left, top), Point(left + WIN_SZ, top + WIN_SZ))
    c = Circle(r.getCenter(), WIN_SZ / 4)
    bit = 1
    c.setFill(COLORS[bit])
    c.setOutline('white')
    r.draw(win)
    c.draw(win)
    ices[x][y] = [c, r, bool(bit)]

def draw_ices():
    for i in range(ROW):
        ices.append([])
        for j in range(COLUMN):
            ices[i].append(None)
            draw_ice(i, j)

def MS1():

    x_player = ices[0][3][CIRCLE]  # X / Red Player
    x_player.setFill('red')

    o_player = ices[9][3][CIRCLE]  # O / Red Player
    o_player.setFill('blue')

    while True:
        pt = win.getMouse()

        x = int((pt.x - GAP) / (WIN_SZ + GAP))
        y = int((pt.y - GAP) / (WIN_SZ + GAP))
        print((pt.x, pt.y), '-->', (x, y))

        ices[x][y][COLOR] = not ices[x][y][COLOR]
        ices[x][y][CIRCLE].setFill(COLORS[ices[x][y][COLOR]])

    win = GraphWin("Icebreaker", WIN_W, WIN_H)


def MS1():

这是我的代码图片: enter image description here

这是游戏说明 enter image description here

0 个答案:

没有答案