我有我的NPC,其構造類似下面的狀態機處理事件,在狀態機
execute state
[[[pred1 pred2....] state1]
[[pred3 pred4....] state2]
[[pred5 pred6....] staten]]
會發生什麼是當前的狀態完成後,它開始通過美國/謂詞列表和迭代儘快返回全部爲true的謂詞列表將跳轉到與之相關聯的狀態。
某些事件可能發生在所有狀態,比如玩家命令npc去某個地方。就像任何其他狀態轉換一樣,我可以檢查謂詞並更改狀態,但是將相同的代碼添加到每個狀態似乎有點跛腳。所以我想知道人們如何處理狀態機中的事件?