目的:基于引擎提供的两个接口“按键按下回调”(参数为按键id,任意按键按下时调用)和“按键抬起回掉”构建快捷键系统,要求能够通过此模块注册(组合)快捷键和注销(组合)快捷键,快捷键有绑定的函数,按下抬起被注册的快捷键时执行绑定的函数
流程:
按键按下之后引擎回掉“按键按下回调”函数,客户端记录当前这个按下的按键到一个列表中,当按键抬起回掉”函数响应的时候需要把对应的按键从列表中剔除,用于检测当前有哪些正在按下的按键,进而可以进行组合快捷键的判断。
全局快捷键模块记录着各个状态的快捷键-函数映射,状态代表玩家现在处于哪个场景中,这些场景可能是登陆、选人、设置、战斗等。然后根据快捷键-函数映射获取对应的函数并执行。此模块用来执行一些较为常用,功能变化较小的快捷键,例如ESC,enter

本文探讨了基于引擎接口构建的游戏快捷键系统,旨在实现快捷键注册与注销功能。系统分为全局快捷键模块和自定义注册快捷键,但存在耦合度高、灵活性低、维护困难等问题。提出了优化建议,包括降低模块间耦合、优化快捷键映射、避免组合快捷键复杂判断以及考虑更多事件类型以提高效率。
&spm=1001.2101.3001.5002&articleId=53858550&d=1&t=3&u=52a4c8e037a74dc1b1899bb6f0dadc2c)
890

被折叠的 条评论
为什么被折叠?



