看板 GameDesign 關於我們 聯絡資訊
我是unity新手 想請問一個小問題 我想做到的效果是 "子彈物件不論打到什麼物件都會call該物件的hit method" "玩家和敵人發射的是同樣的子彈" 但是要call method之前要先用getComponent<>() 所以 OnTriggerEnter 裡的code就會變成 if (other.tag == "Player") { other.getComponent<Player>().hit(); Destroy(gameObject); } else if (other.tag == "Enemy") { other.getComponent<Enemy>().hit(); Destroy(gameObject); } 但是感覺上同樣的code寫兩次好像不太好 請問有什麼解決辦法嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.241.119 ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1459838434.A.112.html
BSpowerx: 可以用SendMessage,不過不確定哪個效能好 04/05 14:46
MBRSL: 用interface 04/05 15:10
MBRSL: Player和Enemy都implements hit() 04/05 15:11
keff456789: 感謝 對C#不是很熟.. 04/05 15:28
cjcat2266: 不熟,就去找資料一次學透徹吧 04/05 16:01
cjcat2266: 不然一知半解,每次碰到同個問題又從頭學,更花時間 04/05 16:02
cjcat2266: 這是我大學物理教授給的建議,我覺得很有道理 04/05 16:03