美文网首页每日来一赞
C2代码学习笔记(34)

C2代码学习笔记(34)

作者: 寸寸生 | 来源:发表于2024-09-29 08:03 被阅读0次

    四十、像素猎人游戏机

    (三)控制“猎人”,捕 获像素点

    1.import ybc_robot #导入ybc_robot 模块

    2.import ybc_tools #导入 ybc_tools 模块

    3 import random #导入random 模块

    4

    5

    6 # 创建 LED 点阵对象 lm

    7 lm = ybc_robot.LEDMatrix()

    8 # 创建陀螺仪对象 gyr

    9 gyr =ybc robot.Gyro()

    10

    11# 生成猎人的像素点

    12 x1 = 1

    13 y1=1

    14

    15 # 随机生成猎人需要捕获的目标像素点

    16 x2 = random.randint(1,8)

    17 y2 = random.randint(1,8)

    18

    19 # 使用循环结构与多分支结构的嵌套

    20 # 开始控制猎人左、右、上、下移动捕获目标像素点

    21 while True:

    22       # 获取陀螺仪检测的数据,保存在变量gdic中

    23       gdic = gyr.state()

    24       # 取出字典中键'angle x'的值

    25       # 保存在变量 gx中

    26        gx= gdic['angle x']

    27       # 如果 gx 的值大于 110 并且 x1的值小于 8

    28       # 向右倾斜

    29       if gx> 110 and xl < 8:

    30            X1 = x1 +1 #像素点向右移动 1格

    31        # 否则如果 gx 的值小于 70 并且 x1 的值大于 1

    32        # 向左倾斜

    33        elif gx<70 and xl> 1:

    34             x1 =x1 -1 #像素点向左移动 1格

    35        #取出字典中键'angle y'的值

    36        # 保存在变量 gy 中

    37         gy = gdic['angle y']

    38         # 如果 gy 的值大于 110 并且 y1 的值大于 1

    39         # 向上倾斜

    40         if gy > 110 and yl > 1:

    41               y1 = y1 - 1 #像素点向上移动1格

    42          # 否则如果 gy 的值小于 70 并且 y1的值小于 8

    43         # 向下倾斜

    44         elif gy < 70 and yl < 8:

    45               y1 = y1 + 1 #像素点向下移动1格

    46         # 清空当前显示的点

    47         lm.clear()

    48         # 绘制猎人移动后的像素点

    49         lm.show dot(xl,y1)

    50         # 绘制目标像素点

    51         lm.show_dot(x2,y2)

    52         # 判断是否捕捉到目标像素点

    53         # 如果猎人移动的像素点和目标像素点位置一致

    54         if xl == x2 and yl == y2:

    55               break #退出程序,游戏结束

    相关文章

      网友评论

        本文标题:C2代码学习笔记(34)

        本文链接:https://www.haomeiwen.com/subject/vktlrjtx.html