状态机
跳转到导航
跳转到搜索
这个页面或章节尚在编辑中。
请注意,部分内容可能尚未完成或存在错误。您也可以编辑页面帮助我们完善内容。
请注意,部分内容可能尚未完成或存在错误。您也可以编辑页面帮助我们完善内容。
这个页面或章节尚在编辑中。
请注意,部分内容可能尚未完成或存在错误。您也可以编辑页面帮助我们完善内容。
请注意,部分内容可能尚未完成或存在错误。您也可以编辑页面帮助我们完善内容。
本条目需要随游戏客户端更新长期维护。
本条目的最后更新时,参考的游戏客户端(简体中文)版本号为2.7.61。
该版本客户端中每个角色类单位都有15个共用的状态机。
该版本客户端中每个敌人类单位都有18个共用的状态机。
本条目的最后更新时,参考的游戏客户端(简体中文)版本号为2.7.61。
该版本客户端中每个角色类单位都有15个共用的状态机。
该版本客户端中每个敌人类单位都有18个共用的状态机。
本条目需要随游戏客户端更新长期维护。
本条目的最后更新时,参考的游戏客户端(简体中文)版本号为2.7.61。
该版本客户端中每个角色类单位都有15个共用的状态机。
该版本客户端中每个敌人类单位都有18个共用的状态机。
本条目的最后更新时,参考的游戏客户端(简体中文)版本号为2.7.61。
该版本客户端中每个角色类单位都有15个共用的状态机。
该版本客户端中每个敌人类单位都有18个共用的状态机。
状态机
在游戏中, 每个干员、召唤物、装置、敌人都是实体, 自身均持有一个层次状态机(HSM)
所有状态都是平级关系且互斥, 但仍然可能会有多个状态机短暂并行的可能性
角色类单位的状态
角色类单位的状态(Character.States)
| 索引 | 枚举 | 状态名称 | 状态现象 | 状态解释 |
|---|---|---|---|---|
| 0 | DEFAULT | 默认 | 使用DEFAULT动画但静止不动 | 初始状态。通常用于部署前的Dummy,正常情况下会立刻切入其他状态机 |
| 1 | IDLE | 待机 | 播放待机动画 | 最常见的状态。尝试使用绑定的普通攻击能力/阻挡攻击能力,成功使用时切换到COMBAT或ATTACK进行攻击。 |
| 2 | ATTACK | 攻击 | 播放攻击动画 | 普通攻击能力期间占位用。 |
| 3 | COMBAT | 阻挡攻击 | 播放阻挡攻击动画 | 阻挡攻击能力期间占位用。检测到不存在阻挡对象时强行切回IDLE状态。 |
| 4 | SKILL | 技能 | 播放技能动画 | 非模式切换类技能的状态, 每帧检测技能可用、能力可用及打断, 不可用或被打断时强制切换IDLE状态。 |
| 5 | STUN | 晕眩 | 播放晕眩动画或动画被暂停 | 播放STUN动画或动画暂停;若检测到不可切换到STUN状态, 则切换到DEFAULT状态。此状态下禁止切换到除DEAD、DOZE状态或REBORN状态外的状态。 |
| 6 | DEAD | 死亡 | 播放死亡动画 | 高权重状态,可强制覆盖其他状态。被标记为死亡,默认下禁止切出和切换到其他状态。 |
| 7 | BORN | 部署 | 播放部署动画 | 部署后自动进入IDLE状态,若有对话则进入DIALOG状态。 因任意原因退出该状态机时视为“部署完成”(部署保护失效) |
| 8 | DISAPPEAR | 消失 | - | |
| 9 | FROZEN | 冻结 | 动画被暂停 | 该状态机下持有缴械,动画暂停, 禁止切换到除DYING和DEAD状态外的状态。 |
| 10 | REBORN | 重生 | 播放重生动画 | 在内部计时器未走完无法被切出。该状态下持有无敌+不可阻挡。 |
| 11 | DYING | 濒死 | 生命值设为0,在动画播放完后强制切换到DEAD状态。在此期间不可被切换到除DEAD状态外的任何状态。 | |
| 12 | DIALOG | 对话 | 触发对话 | 对话结束后仅允许切换到IDLE状态。该状态机下持有无敌+不可阻挡。 |
| 13 | DOZE | 小睡 | 无法行动 | 禁止切换到除DEAD状态或DYING状态外的任何状态。 该状态机下持有无敌+不可阻挡+缴械+无法选中,以及隐藏免疫。 |
| -1 | TERMINAL | 终端? |
敌人类单位的状态
敌人类单位的状态(Enemy.States)
| 索引 | 枚举 | 状态名称 | 状态现象 | 状态解释 |
|---|---|---|---|---|
| 0 | DEFAULT | 默认 | 使用DEFAULT动画但静止不动 | 初始状态。正常情况下会立刻切入MOVE状态机 |
| 1 | MOVE | 移动 | 播放移动动画 | 主状态。每Tick根据条件切换状态,同时尝试索敌成功后切换到COMBAT或ATTACK,若不满足切换条件则继续停留或移动。 |
| 2 | ATTACK | 攻击 | 播放攻击动画 | 进入时检查索敌,若缺失或无法攻击则切回MOVE状态。每帧检查异常状态,若有则切换到异常状态的状态,攻击结束后回退到MOVE状态。 |
| 3 | COMBAT | 阻挡攻击 | 播放阻挡攻击动画 | 逻辑同ATTACK,但索敌主目标默认固定为阻挡者。 |
| 4 | STUN | 眩晕 | 动画被暂停 | 每帧检测是否处于眩晕,结束后切回DEFAULT状态。禁止切换到除UNBALANCE,FALLDOWN,REBORN,DEAD以外的状态。 |
| 5 | DEAD | 死亡 | 播放死亡动画 | 高权重状态,可强制覆盖其他状态。被标记为死亡,禁止切换到除自身以外的任何状态。 |
| 6 | BORN | 出生 | 该状态期间会被大部分能力视为不可选中。结束后自动进入DEFAULT状态。 | |
| 7 | REACH_EXIT | 抵达路径终点 | 抵达路径终点 | 禁止切换到除自身以外的任何状态。若敌人被设置为扣除关卡生命值,则会扣除相应的关卡生命值。 |
| 8 | REBORN | 重生 | 播放重生动画 | 该状态机下持有无敌+不可阻挡+失衡免疫。禁止切换到除自身外的任何状态。 |
| 9 | UNBALANCE | 失衡 | 动画被暂停,拥有初速 | 无法主动移动,激活物理系统,,每帧检查物理速度与施力,物理速度降为0且没有施力时切回DEFAULT状态。 该状态机下持有不可阻挡。 |
| 10 | FALLDOWN | 坠落 | 模型变黑且变小 | 结束后会被标记为死亡。 |
| 11 | DISAPPEAR | 消失 | 模型消失 | 该状态机下持有无敌+不可阻挡+失衡免疫 该状态机期间会被大部分能力视为不可选中。 |
| 12 | BLINK | 闪现 | 位置闪现 | 在一定时间内实现闪现。该状态机下持有无敌+不可阻挡+失衡免疫,禁止切换到MOVE、ATTACK、COMBAT、STUN、PALSY、FROZEN状态。 |
| 13 | FROZEN | 冻结 | 动画被暂停 | 动画被暂停。结束后切换到DEFAULT状态。该状态机下持有缴械。禁止切换到除UNBALANCE、FALLDOWN、REBORN、DEAD以外的状态。 |
| 14 | LEVITATE | 浮空 | 模型浮空 | 模型浮空,该状态机下持有不可阻挡+失衡免疫+缴械。禁止切换到除DEAD和REBORN以外的状态。 |
| 15 | DIALOG | 对话 | 该状态机下持有无敌+不可阻挡+无法攻击。 | |
| 16 | PALSY | 麻痹震颤 | 模型摇晃 | 动画暂停,模型摇晃,无法攻击。结束后切回DEFAULT状态。禁止切换到除UNBALANCE、FALLDOWN、REBORN和DEAD以外的状态。 |
| -1 | TERMINAL | 终端? |
注:不同的干员、敌人、召唤物和装置的状态行为可能会有所不同,这里基于Character类和Enemy类解释。