猫史档案馆


【Python作品分享】我的创意游戏-工程包【作品秀】

用户:飞翔的鹅飞翔的鹅查看:0 回复:0 评论:0 创建时间:2023-07-22T19:34:10


【作品展示】

center_image

 

【作品介绍】

 

【作品源代码】

import turtle


# -----------------------------------------------------------------
# 1.基本信息区,放置游戏相关的一些信息


size = 70
'''
0-空   1-墙壁   2-通道   3-目标   4-箱子
'''
grid = [[0, 0, 1, 1, 1, 0],
        [0, 0, 1, 3, 1, 1],
        [1, 1, 1, 2, 2, 1],
        [1, 3, 4, 4, 2, 1],
        [1, 1, 2, 2, 2, 1],
        [0, 1, 1, 1, 1, 1]]
width = len(grid[0])
height = len(grid)
origin_x = -(width-1) / 2 * size
origin_y = (height-1) / 2 * size

player_x = 1
player_y = 3

# ------------------------------------------------------------
# 2.功能模块区,主要放置函数
def draw(pen, img, x, y):
    global origin_x, origin_y, size
    pen.goto(origin_x + x * size, origin_y - y * size)
    pen.shape(img)
    pen.stamp()
def up():
    global player_y
    player_y -= 1


def down():
    global player_y
    player_y += 1


def left():
    global player_x
    player_x -= 1

def right():
    global player_x
    player_x += 1
# ------------------------------------------------------------
# 3.操作事件区,放置键鼠操作相关的内容


# ------------------------------------------------------------
# 4.场景素材区,添加游戏画面相关的素材
tile_shapes = ['空.gif', '墙壁.gif', '通道.gif', '目标.gif', '箱子.gif']
for i in tile_shapes:
    turtle.addshape(i)
turtle.addshape('编程猫.gif')

# ------------------------------------------------------------
# 5.画面绘制区,绘制场景用的画笔,绘制场景的代码
t = turtle.Pen()
t.penup()
t.hideturtle()
turtle.tracer(0)
while 1:
    t.clear()
    for i in range(width):
        for j in range(height):
            draw(t, tile_shapes[grid[j][i]], i, j)
    draw(t, '编程猫.gif', player_x, player_y)
    turtle.update()
    turtle.onkey(up, "Up")
    turtle.onkey(down, "Down")
    turtle.onkey(right, "Right")
    turtle.onkey(left, "Left")
    turtle.listen()

turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页