《抖音弹幕游戏开发专栏》是优雅草建立的专栏,由优雅草资深开发工程师云桂提供实战教学配对发布有对应的视频教程,以下内容为技术文稿,卓伊凡辅助。
抖音弹幕游戏开发之第9集:pyautogui进阶 - 模拟鼠标操作·优雅草云桧·卓伊凡
第9集:pyautogui进阶 - 模拟鼠标操作
获取鼠标位置和屏幕尺寸
import pyautogui
import time
pyautogui.FAILSAFE = True
# 获取鼠标位置
x, y = pyautogui.position()
print(f"鼠标当前位置: X={x}, Y={y}")
# 获取屏幕尺寸
width, height = pyautogui.size()
print(f"屏幕尺寸: {width} x {height}")
屏幕坐标系:左上角是(0, 0),向右x增大,向下y增大。
移动鼠标
绝对位置移动
pyautogui.moveTo(500, 300, duration=1) # 移动到(500, 300),耗时1秒
相对位置移动
pyautogui.moveRel(200, 0, duration=0.5) # 向右移动200像素
pyautogui.moveRel(0, 100, duration=0.5) # 向下移动100像素
pyautogui.moveRel(-200, 0, duration=0.5) # 向左移动200像素
鼠标点击
pyautogui.click() # 左键单击
pyautogui.rightClick() # 右键单击
pyautogui.middleClick() # 中键单击
pyautogui.doubleClick() # 双击
pyautogui.click(500, 300) # 在指定位置点击
鼠标拖拽和滚轮
# 拖拽(按住左键移动)
pyautogui.drag(200, 100, duration=1)
# 滚轮
pyautogui.scroll(3) # 向上滚动
pyautogui.scroll(-3) # 向下滚动
游戏中的应用:视角旋转
# 模拟游戏视角左右转动
for _ in range(5):
pyautogui.moveRel(100, 0, duration=0.1) # 向右
pyautogui.moveRel(-100, 0, duration=0.1) # 向左
键盘鼠标组合
# 按住Shift并移动鼠标
pyautogui.keyDown('shift')
pyautogui.moveRel(100, 0, duration=0.5)
pyautogui.keyUp('shift')
# 按W前进的同时转动视角
pyautogui.keyDown('w')
pyautogui.moveRel(200, 0, duration=1)
pyautogui.keyUp('w')
注意事项
|------------|-------------------|
| 注意点 | 说明 |
| duration参数 | 控制移动速度,建议0.1-1秒 |
| 坐标系统 | 不同分辨率坐标不同,相对移动更灵活 |
| 游戏兼容性 | 移动太快可能被识别为外挂 |
本集总结
- ✅ 获取鼠标位置和屏幕尺寸
- ✅ moveTo和moveRel移动鼠标
- ✅ click、rightClick等点击操作
- ✅ drag拖拽和scroll滚轮操作
- ✅ 键盘鼠标组合使用
下一集:整合 - 弹幕触发键盘操作