C2代码学习笔记(33)
四十、像素猎人游戏机
(二)控制“猎人”,左右上下移动
1.import ybc_robot #导入ybc_robot 模块
2.import ybc_tools #导入 ybc_tools 模块
3
4
5 # 创建 LED 点阵对象 lm
6 lm = ybc robot.LEDMatrix()
7 # 创建陀螺仪对象 gyr
8 gyr =ybc_robot.Gyro()
9
10# 生成猎人的像素点
11 x1 = 1
12 y1 = 1
13
14 # 使用循环结构与多分支结构的嵌套
15 # 开始控制猎人左、右、上、下移动
16 while True:
17 # 获取陀螺仪检测的数据,保存在变量 gdic 中
18 gdic = gyr.state()
19 #取出字典中键'angle_x'的值
20 # 保存在变量 gx 中
21 gx = gdic['angle x']
22 # 如果 gx 的值大于 110 并且 x1 的值小于 8
23 # 向右倾斜
24 if gx> 110 and x1 < 8:
25 x1= x1 + 1 #像素点向右移动1楼
26 #否则如果 gx 的值小于 70 并且 x1 的值大于1
27 # 向左倾斜
28 elif gx < 70 and xl > 1:
29 x1 = x1 - 1 #像素点向左移动1格
30 #取出字典中键'angle_y'的值
31 # 保存在变量 gy 中
32 gy = gdic['angle y']
33 # 如果 gy 的值大于 110 并且 y1 的值大于1
34 # 向上倾斜
35 if gy > 110 and yl > 1:
36 y1 = y1 - 1 #像素点向上移动1格
37 # 否则如果 gy 的值小于 70 并且 y1的值小于8
38 # 向下倾斜
39 elif gy < 70 and yl < 8:
40 y1 = y1 + 1 #像素点向下移动 1格
41 # 清空当前显示的点
42 lm.clear()
43 # 绘制移动后的像素点
44 lm.show dot(xl, y1)