无码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ā)方法,這里不再贅述了。

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

分享到微博請遵守國家法律
华宁县| 拜城县| 新竹市| 台南市| 张家界市| 达孜县| 汉源县| 朝阳县| 塘沽区| 嘉黎县| 宝坻区| 农安县| 华容县| 印江| 金华市| 通城县| 清涧县| 武邑县| 铅山县| 济南市| 清流县| 泰顺县| 虞城县| 兖州市| 延吉市| 金堂县| 龙陵县| 大庆市| 元氏县| 开化县| 镇江市| 周至县| 新兴县| 阿鲁科尔沁旗| 苏州市| 凤山市| 乌鲁木齐县| 海淀区| 茶陵县| 南召县| 香河县|