• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 72,  comments - 4,  trackbacks - 0

            mythos中的ai是并發的棧式狀態機:

            拿wolf作為例子:
            一。配置文件:
            在ai目錄中的wolf.xml配置它所有的行為(包括每個行為發生機率,參數,以及執行函數):
            其中執行函數以及對應skillid如下:
            1.
              <nBehaviorId>move - approach target</nBehaviorId>
              <nSkillId>monster melee</nSkillId>
            2.
              <nBehaviorId>skill - do skill</nBehaviorId>
              <nSkillId>monster melee</nSkillId>
            3.
              <nBehaviorId>skill - do skill</nBehaviorId>
              <nSkillId>Fidget</nSkillId>
            4.
              <nBehaviorId>move - wander</nBehaviorId>
              <nSkillId/>

            二。ai更新:
               SrvGameTick--》GameEventsProcess--》AI_Update()
              在AI_Update中遍歷執行該unit的所有行為(behavior) :
              1. sBehaviorApproachTarget()
                 查找對應的目標,發出朝它移動指令
                
              1. sBehaviorDoSkill()
                 如果有目標則執行sSkillExecute進行技能施放
                
              2. ...類似功能處理
             
              。。。
             
              【說明】:
                mythos的行為是并發的棧式,最大可以有5個棧, 用
                int nIndex = tContext.pnStack[ tContext.nStackCurr ]這樣的結構進行處理,
                通過pTable->pBehaviors[ nIndex ]得到對應的行為處理函數進行執行處理。
                   
                a. 并發:
                每執行完一個行為函數后 tContext.pnStack[ tContext.nStackCurr ]++; 這樣就換到unit的下一個行為函數再執行。
               
                b. 進入棧(子函數):
                tContext.nStackCurr為棧下標,初始tContext.nStackCurr=0,即為第0個棧,
                可以設置tContext.nStackCurr++;并且tContext.pnStack[ tContext.nStackCurr ]=nBranchTo(要走的分支號)。這樣來
                執行分支函數。 當分支函數完成時tContext.nStackCurr--再回來上一級。
               
                另外有些行為函數是執行一次的,執行完了就會把它從列表中刪除。下次不會再遍歷到.


            posted on 2012-08-13 09:51 flipcode 閱讀(186) 評論(0)  編輯 收藏 引用
            日韩欧美亚洲综合久久| 99久久精品午夜一区二区| 亚洲精品综合久久| 久久久免费精品re6| 九九久久精品国产| 中文字幕热久久久久久久| 伊人久久大香线焦综合四虎| 一级女性全黄久久生活片免费 | 久久精品人人做人人爽电影| 99久久精品国产一区二区| 2021国内久久精品| 一本久久a久久精品综合夜夜 | 91久久精品国产91性色也| 久久精品国产99国产精品亚洲| 久久久精品免费国产四虎| 亚洲日韩中文无码久久| 精品久久人人妻人人做精品| 久久人人爽人人爽人人AV| 久久综合色区| 久久91这里精品国产2020| 久久综合丁香激情久久| 久久天天躁狠狠躁夜夜躁2O2O| 久久久黄色大片| 尹人香蕉久久99天天拍| 欧美午夜A∨大片久久| Xx性欧美肥妇精品久久久久久| 久久久噜噜噜久久中文福利| 2020国产成人久久精品| 亚洲性久久久影院| 日本国产精品久久| 亚洲精品久久久www| 亚洲人成无码网站久久99热国产| 韩国三级中文字幕hd久久精品| 国产精品成人久久久久三级午夜电影 | 国产婷婷成人久久Av免费高清| 久久久久久久女国产乱让韩| 无码任你躁久久久久久久| 亚洲精品成人网久久久久久| 久久久国产打桩机| 久久久女人与动物群交毛片| 成人免费网站久久久|