mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 19:24:29 +08:00
refactor(input): 重构Godot输入模块为抽象基类并优化输入处理流程 将 `GodotInputModule` 重命名为 `AbstractGodotInputModule` 并改为抽象类, 以便支持更灵活的输入翻译器注册机制。引入 `GodotInputPhase` 枚举和 `GodotRawInput` 结构体以区分输入处理的不同阶段(捕获与冒泡)。 同时修改 `GodotInputTranslator` 仅在Bubble阶段生成游戏事件,提升输入处理精度。 ```
22 lines
541 B
C#
22 lines
541 B
C#
using Godot;
|
|
|
|
namespace GFramework.Godot.input;
|
|
|
|
/// <summary>
|
|
/// 表示Godot原始输入数据的只读结构体
|
|
/// </summary>
|
|
/// <param name="evt">输入事件对象</param>
|
|
/// <param name="phase">输入阶段</param>
|
|
public readonly struct GodotRawInput(InputEvent evt, GodotInputPhase phase)
|
|
{
|
|
/// <summary>
|
|
/// 获取输入事件对象
|
|
/// </summary>
|
|
public readonly InputEvent Event = evt;
|
|
|
|
/// <summary>
|
|
/// 获取输入阶段
|
|
/// </summary>
|
|
public readonly GodotInputPhase Phase = phase;
|
|
}
|