我期待創造一個場景圖我的F#項目的財產以後這樣的:識別聯合和繼承
root
->player_bob
-->torch
->enemy_1
-->extravagant_hat
-->enemies_cat_jess
--->fleas
--->fur_ball
->loot
等等,等等。
每個項目需要保存一個遊戲對象的集合來表示它的孩子。
e.g enemy1的列表中包含一隻貓和一頂帽子和貓列表包含跳蚤和毛球
所以我打算讓他們都從包含描述對象的子對象的集合類繼承。
現在我的問題: 我應該向下轉換子對象遊戲對象的,並把它們存儲在「遊戲對象」基類 的清單,或建立一個識別工會如
type SceneObject =
|Character of Character //e.g player, enemy, cat
|Item of Item //e.g hat, torch, furball
和存儲對象作爲「場景對象」的列表以避免任何問題/開銷的上演,等等。以及允許我描述在碰撞檢測中不呈現和/或不使用對象的特殊情況,例如:聲音發射器,陷阱觸發器等。
歧視的工會+繼承組合是我最初的想法;不過,因爲我是FP新手,所以我認爲向專業人士提供最好的,實用的解決方法是明智的。
感謝,
JD
太棒了!這消除了對繼承的需求:¬) 謝謝Dario,我的一半學習FP的問題正在把我的腦袋從OO土地中拉出來。 – jdoig 2010-08-29 11:29:46