+-------------+ +-------------+ +-------------+
提示敌人回合 敌人准备行动 提示玩家回合
E_PHASE ----> E_MOVE ----> P_PHASE
+-------------+ +-------------+ +-------------+
| ^
| |---------------------------+
V |
+---------------------------------------+ |
固定AI: 运行AI. |
HP少于一半就 ai_main(selid,man[selid][27]); |
吃药.(如果有) 得到目标id ai_target,敌人移动的 |
位置ai_movetox,ai_movetoy. |
+---------------------------------------+ |
| |
AI的类型见代码 | |
V |
+-------------+ +-------------+
描绘敌人移动 下一个敌人
E_MOVE Next_E();
+-------------+ +-------------+
| ^
| |
V |
+-------------+ +-------------+ +-------------+ |
死亡脚本 | 攻击目标 | 没有 |
SCRIPT | | ----> 敌人待机 --->|
| 存在? | |
+-------------+ +-------------+ +-------------+ |
^ | |
| 死了 |有 |
| V |
+-------------+ +-------------+ |
| 是否打死了 | 描绘战斗 |
| 我方? |<---- E_BATTLE |
| | +--------------->|
+-------------+ +-------------+ | |
| 没死 | |
+--------------------+ | |
| | |
V | |没死
如果敌人死亡 +-------------+ +-------------+ +-------------+
并掉落道具 | 获得道具 | 死亡脚本 死了| 敌人是否 |
+--------------| GET_ITEM | SCRIPT <--- | 死亡? |
| | | | |
| +-------------+ +-------------+ +-------------+
道具满了?V | ^
+-------------+ | |
道具满了 | |
ITEM_FULL --------> | |
V |
+-------------+ +-------------+ +-------------+ +-------------+
| 我方是 | 升级 | 本次敌人 |
+--------------| 盗贼? | E_LVUP ---> | 行动完毕 |
| 是 +-------------+ +-------------+ +-------------+
| | 不是 ^ ^
V V | 是 |
+-------------+ +----------------+ +-------------+ |
偷钱 获得经验(若没满) | 升级了? | |不是
E_GOLD ----> E_EXP ----->| |--+
| |
+-------------+ +----------------+ +-------------+
盗贼每次进攻
可偷得钱币