以後更新日誌就用這個標題了
=======分割線=======
注意:以下內容可能難以理解
這次講的是怎麼自己弄出一個控制檯!
控制檯這個東西可以幹很多事情,主要可以進行調試程序什麼的,弄出一個專屬的控制檯可以做很多事(像偷藏通關代碼什麼的……)(這段劃掉!)
不過這玩意並不好搞,我自己也只搞出了一小部分,放圖!
這個控制檯目前只有一個功能,就是切換角色(iris1用牌子切換角色太low了!)
一.進入控制檯
該部分代碼如下
這裡我用的是n鍵,而不是通常pc上的~鍵(手機黨:這才公平!)
請注意:該部分所有代碼都很重要!
圖中有幾點值得注意:
1.觸發器codeerror:語法檢查,後面會講
2.變量code:檢查控制檯的開啟狀態,這個變量用於調動其它觸發器的開關
3.顯示狀態:控制檯開啟過程中這一段不能少,原因之後會講
4.文本框:即控制檯主界面
5.觸發器code關閉:關閉自身,避免干擾代碼輸入
6.觸發器codeover開啟:檢測代碼是否輸入完畢
二.語法
這裡由於我是初次調試,因此將代碼輸入分了級,以後可能會有其它的方式,我之後會再發
這是其中的一段一級代碼,即目前這個控制檯的唯一功能(以後肯定要加其它的)
事件都通用這個,條件更換成相應的一級代碼即可。
接下來的輸入即為二級代碼的輸入界面。
這裡我直接將二級代碼的執行動作寫在這個觸發器裡,其實這樣並不合理,建議用這個格式為每級代碼的不同語句都另建一個觸發器以便調試,這樣上一級代碼的觸發器只需負責開關對應下一級的觸發器即可,不過因為這個分支只有兩級,這樣也沒什麼大問題。在處理多級代碼的時候,前幾級最好鏈接相應的觸發器,倒數第二級就可以用註冊觸發器和if語句的嵌套來實現
三.語句有效性的判斷
這就是我之前提到的codeerror觸發器,代碼如下
這一段代碼只用於一級代碼的判斷,如果需要判斷其它級別,則需要在每一級都註冊一個觸發器,並使用上一級的相應觸發器將其開啟,進入下一級時將其關閉
四:代碼輸入過程中的注意點
前面我講到要將角色的顯示狀態改為false,這是為了讓角色不會響應鍵位的操作,否則在輸入代碼的時候角色會突然去世,這將嚴重影響遊戲流程。因此這段代碼必不可少。前面的關閉code觸發器同理。
另外,在代碼輸入過程中,遊戲應該保持暫停,即使用這個動作輸入結束後恢復。
五:結束輸入
前面我有提到過一個變量code,這就是用於監測代碼是否輸入結束的,這需要在所有末級代碼的相應觸發器的最後將這一變量置於初始狀態,並由相應觸發器進行控制(這裡我用的名字是codeover)使角色重新可以響應操作,開啟進入控制檯的代碼,並關閉自身(還應該加一個恢復遊戲)
六:限制
在某些環境中,控制檯應該被禁用,相關代碼如下(這裡是因為進入商店,因為有相應的角色專屬,因此關閉控制檯功能)這裡展示的是在特定關卡禁用控制檯,只需關閉進入控制檯的觸發器即可(else處的語句用於出關卡後恢復功能)
如果是特定區域只需要使用矩形區域即可,進入時執行執行then後的語句,出去時執行else後的語句(請使用自定義技能(碰撞))
=======分割線=======
怎麼樣?是不是超級簡單?(狗頭)
有問題儘管在下面諮詢。
(從來沒寫過這麼長的帖子)