看板 GameDesign 關於我們 聯絡資訊
抱歉 忘了先說 是使用Unity製作 各位大大晚安 這學期因為修課的關係 需要寫出一個遊戲 今天在寫某個小怪可以隨機生成怪物 暫且叫他spawn egg 可是我想限制生成在某個數量內 並且可動態調整 我目前spawn egg中不斷生成怪物 是使用動畫的事件來實現 然後這個spawn egg與其他小怪都繼承自一個abstract class 用以控制一些基本小怪共有的參數 (例如:血量小於0會摧毀怪物也寫在這裡面) 我的問題是我該怎麼樣確認spawn egg生成出來的怪物被我消滅 從而達到控制其最多的生成 (比如說我最多想生成3隻怪物 玩家若消滅其中一隻 spawn egg會再生出一隻填補他) 不知道這樣打清不清楚 先感謝各位了 ----- Sent from JPTT on my Samsung SM-A515F. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.172.184 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1607690529.A.3C1.html ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/11/2020 20:45:08 ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/11/2020 20:46:55 ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/11/2020 20:48:24
foxofking: 我程式菜鳥。EGG生出的怪套個tag,再用find指令抓數量 12/11 20:53
foxofking: 然後用range指令限制給EGG如何? 12/11 20:54
foxofking: 打錯,不是用RANGE,用if判斷式之類的 12/11 20:58
感謝回覆 Find可以找數量嗎?有沒有完整的API呢?感恩 ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/11/2020 21:16:01
death123456: 用一個List怪物出生就丟進去 死掉就拿出來 然後count 12/11 21:35
感恩 我查一下List
death123456: 小於x就生怪 大概就這種概念 只是可以再更嚴謹一點 12/11 21:35
death123456: 啊 仔細看問題後 你應該要有一個egg manager之類的東 12/11 21:36
death123456: 西來控制生怪 怪物死亡之類的腳本 12/11 21:36
※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/11/2020 21:39:16
SecondRun: 你可以讓spawn egg去跟manager要資料 12/12 01:26
感謝 我一開始的確有讓怪物嘗試access spawn egg的生怪數量 可能是我太菜了 換了好幾種寫法都沒成功 不過感謝回答 晚點來試試
SecondRun: 或者讓spawn的怪物都有egg的資料 死掉時通知egg 12/12 01:27
LayerZ: 你應該要做個主控端,EggManager或是EggFactory,生怪紀錄 12/12 02:27
ok 意思是spawn egg別跟一般怪物一樣繼承同一個abstract class而是額外去處理他們的死亡機制嗎?
LayerZ: 死亡就回來這邊做死亡處理 12/12 02:27
ZooseWu: 同意樓上 在Start跟manager新增 ondestroy時減少 12/12 04:36
感謝 我查一下這個API ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/12/2020 10:13:18 ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/12/2020 10:14:07 ※ 編輯: Alex548291 (1.200.172.184 臺灣), 12/12/2020 10:15:36
death123456: Manager我個人會使用Singleton寫 比較簡單好上手 另 12/12 17:12
death123456: 外可以試著使用物件池Objectpool的概念作怪物子彈等 12/12 17:12
death123456: 等需要重複生成的物件 這個是效能處理很基本的東西 12/12 17:12
death123456: 以後一定會用到 12/12 17:12