[轉錄][心得] 關於夏夜攻防戰 - 其五
有了基本的動作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
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章
21
31