Conan建筑实现 —— 魔方工具
這篇要講的是在開發過程中,我想到的一個批量刷建筑材料信息給建筑單位的輔助配表工具。
? ? ? ? 它(魔方工具)要解決的問題是這樣的:就拿墻來舉例吧,墻在建造到固定的位置的時候,要把自己提供的連接位置刷新到建筑單位里。這樣又帶來了一個問題,假如墻的上邊是一個提供的連接位置1(建筑單位的定義位置為準),那他就會把當前所在的建筑單位的1號位置暴露。之后比如有一個浮動的天花板(也就是建筑時候,玩家當前操作的天花板),需要1、2、3、4其中一個位置才能滿足建造。這時正好墻提供了建筑單位的1號位置。因此天花板可以在當前位置建造。
? ? ? ? 有沒有發現有個問題,就上面描述的情形是天花板和墻同時在同一個建筑單位里。按實際的策劃期望或者實際情況,這個墻的上邊同時給4個建筑單位提供了連接位置。如圖:
? ? ? 所以。假如當前的墻在右下方的建筑單位里,邊最終要給右下的建筑單位提供1號位,左下提供3號,左上提供7號,右上提供5號。
? ? ? 這么看的話,其實這些位置都是在游戲運行前就是明確的,所以我們可以通過一個配表的形式來進行對應關系的模擬,在程序運行的時候,直接讀表就知道刷新哪里的信息了。
? ? ? ?魔方出場。就上面描述的內容我們可以使用一個3階魔方(這個很重要,后期多建筑塊也要多次用它來獲取統一標準的運算參數)來進行處理。首先是位置標號,這個上面已經有了1-8。接下來是對魔方進行標號,這個怎么方便怎么來,一層一層的標號就行。如圖:把27個都進行標號,這個隨便標,我當時還玩的比較麻煩,按軸和旋轉進行標號的。原因是因為本來我以為用不了27個沒想到最后都得用。就變成這樣了,結果就是配表不舒服嗎?我覺得也沒有,這個內在規律也不好把握。總之把標號和位置對應好就行。
?
? ? ? ? ?我隨便表一個做個示范吧:就那剛才那個墻做吧。
? ? ? 我們配表規則是這樣的,當前建筑材料位置標號→目標建筑單位標號→目標建筑單位里的實際位置。只要確保是唯一映射的就行。? ?
如圖,就應該是:
? ? ? ? ?1→5→1;?2→5→2;?3→5→3;?4→5→4;5→5→5;6→5→6;7→5→7;8→5→8;1→6→3;1→15→7;1→14→5;2→8→4;2→17→8;2→14→6;?3→22→5;3→23→7;3→4→1;?4→2→2;4→20→6;4→23→8;
?
這樣我們就可以通過當前配表,找到共同有占用位置的建筑單位,進而通過建筑單位位置標號和標號的組合查到,對應的相鄰共同占用位置的目標相鄰建筑單位實際的位置是那個。進而對其進行信息刷新。
?
?
總結
以上是生活随笔為你收集整理的Conan建筑实现 —— 魔方工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Linux】环境变量|查看环境变量的方
- 下一篇: 计算机辅助药物设计试题,计算机辅助药物设