pyxen.input.mouse
访问鼠标位置、移动和按钮。
mouse = pyxen.input.mouse
属性
| 属性 | 类型 | 描述 |
|---|---|---|
present | bool | 平台是否支持鼠标 |
pos | Vector2 | 当前鼠标位置 |
delta | Vector2 | 自上一帧以来的移动量 |
按钮
mouse.leftmouse.rightmouse.middle
每个都是一个 Button 对象:
| 属性 | 类型 | 描述 |
|---|---|---|
down | bool | 按住时为 True |
pressed | bool | 按下那一帧为 True |
released | bool | 释放那一帧为 True |
value | float | 模拟值(通常为 1.0 或 0.0) |
frames | int | 按住的帧数;按下那一帧为 0 |
start_pos | Vector2 | 该按钮按下时的光标位置 |
if mouse.left.pressed:
print("Clicked!")
start_pos 在按下时捕获,并在该次按下的整个生命周期内保持不变,因此你可以用它测量一次拖动 —— 它是 touch.start_pos 的鼠标对应物。
示例:拖拽
if mouse.left.down:
drag = mouse.pos - mouse.left.start_pos # 从按下点到当前位置的向量
player.x = mouse.pos.x
player.y = mouse.pos.y
注意事项
- 所有属性都是只读的
delta每帧重置- 坐标取决于你的引擎模式,可能是世界空间或屏幕空间