无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網 會員登陸 & 注冊

自定義邏輯和通用邏輯分離

2023-07-26 17:26 作者:玉龍飛哥  | 我要投稿

在編寫游戲邏輯時發(fā)現(xiàn),有些邏輯是游戲對象的固定邏輯,內容會逐漸成型,內容固化后就不再修改了。有些是關卡邏輯,自定義情況比較嚴重,可能因為關卡調整而修改或移除;所以要做兩種邏輯的分離。以前做項目的時候,通用邏輯通常是程序邏輯,自定義邏輯為策劃邏輯,可以由策劃去編寫,通常以lua腳本或者圖形編程語言的形式開放給策劃自行組裝?,F(xiàn)在雖然只由我一個人來做,既做程序又做策劃,但還是覺得兩個邏輯分開,更方便維護;下面是我實現(xiàn)的一些步驟。

在進入場景時加載自定義腳本,約定腳本的名稱為LevelLogic + 場景的buildIndex(實際上用name可能會更靠譜一些,因為buildSetting里取消某個場景的編譯就會改變buildIndex的排序)

這里的腳本掛載體gameObject是一個跳轉場景不會被刪除的GameobjectManager

在倆開場景時刪除自定義腳本

所有的LevelLogic腳本繼承自一個基類腳本LevelLogicBase,具體LevelLogic的回調實際上是由執(zhí)行GameobjectManager上的回調來執(zhí)行的。

做過判空處理,所以具體的LevelLogic子腳本不存在也不會影響游戲邏輯,關卡移除時邏輯腳本可以直接刪掉。

對于事件的觸發(fā)可以看看UnityEvent的注冊和觸發(fā)方法,這里不再贅述了。

自定義邏輯和通用邏輯分離的評論 (共 條)

分享到微博請遵守國家法律
青田县| 衡水市| 承德市| 革吉县| 泰来县| 石门县| 谢通门县| 霍城县| 通榆县| 宁明县| 云林县| 泰州市| 龙南县| 石台县| 石狮市| 万载县| 富川| 平塘县| 常宁市| 咸宁市| 永顺县| 徐闻县| 余干县| 南投县| 谢通门县| 东山县| 汾西县| 额敏县| 姜堰市| 高州市| 麻阳| 犍为县| 乐陵市| 鄂伦春自治旗| 庐江县| 黄浦区| 沙湾县| 财经| 慈利县| 江口县| 樟树市|