精華區beta GameDesign 關於我們 聯絡資訊
有了基本的動作STATE之後,Seeker總算有了最初的行為模式。 有仔細比對的人可能已經發現,在State的部分我還漏講了一些地方。 1.SEARCH: "持續一段時間的搜索判定" 但是我不希望我的Seeker只有在原地 四處張望而已,我希望他能夠東走走西走走,能擁有"四處尋找"的感覺 於是我在SEARCH狀態下另外給了一組subState SubState of SEARCH: [ MOVING <-------------> LOOK ] DETECT LOOK : 讓Seeker四處張望, 過一段時間之後給定下一個"LOOK"的位置 MOVING : 移動到剛剛經由LOOK給定的位置上 期間, 搜索蚊子的STATE "DETECT"是一直在進行的 這樣,就可以得到一隻在搜索蚊子時東跑跑,西看看的Seeker了 2. FIRE 這個State也被分成幾個SubState 在講這個之前,先來談談遊戲中的武器設定概念。 每把武器其實有 (1) ammo:在同一個位置發射的彈量 (2) changePosition : 跑位次數 兩個影響武器發射次數的參數 舉兩個極端的例子: 香菇氣球的攻擊,主要是從不同的角度製造干擾用彈幕 因此其參數設定上, ammo=1, changePosition=4 如此設定可以讓四顆香菇氣球 由不同的位置升空 而西瓜機關砲則是屬於直接攻擊型,有沒有跑位反而不是那麼重要 於是參數設定變成ammo=22, changePosition=1 因此,FIRE的subState就被設計成如下: subState of FIRE ChangeMode --------> Shoot <------------> ChangePosition ^ | ^------------------------------------------ 當完成武器的選擇, State由CHANGEMODE轉移到 SHOOT 當彈藥打完, 由SHOOT轉移到CHANGEPOSITION 當跑位次數到達設定, 轉回CHANGEMODE 至此,簡單的Seeker AI已經完成。 下一篇,我會講基本的子彈控制以及碰撞。 (續) 文章轉自暨大霞蔚山城 ★ HenryBBS (henry.twbbs.org) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.22.18.97