Dialogue System for Unity 使用範例遊戲在進入特定對話節點時,畫面轉黑並移到場景中的指定位置。 建立一個 MyEvents.cs 腳本,程式碼如下: 建立一個空物件並套用此腳本。 開啟 [ Plugins > Pixel Crushers > Dialogue System > Prefabs > Art ] 資料夾,選取 SceneFaderCanvas 預製物件拖曳到場景的任何位置。 設定 MyEvents 物件的變數欄位: Player = PlayerCapsule Fade Anim = SceneFaderCanvas 選取場景上剛放進來的 SceneFaderCanvas 物件,開啟此物件 Animator 元件使用的 SceneFaderCanvas Animator Controller 動畫控制器 將原來的這個內容:~ 新增動畫狀態,改成如下:~ 新增 ShowAndHide (Trigger) 參數。~ 新增 Any State 到 Fade To Black 0 動作狀態的轉換箭頭。 ~ 選取此箭頭,設定 Conditions = ShowAndHide
開啟對話資料庫,選取需要移動玩家的對話節點,透過 Inspector 找到 Scene Event 按 + 新增場景事件, 將剛建立的 MyEvents 拖曳到物件欄位,選擇 MyEvents.GoWait 再將場景上對應的檢查點空物件拖曳到下方欄位。 移動前畫面變黑。
依玩家輸入改變名稱輸入使用者名稱,並在對話內容中顯示。 增加一個新變數 PlayerName 玩家名稱。 輸入玩家名稱-建立新對話 加入新的對話節點,請輸入玩家名稱。 選取場景中的 Text Field UI 確認文字輸入的物件名稱,稍後將用於 Lua code 。 TextInput 中文也可以 ChangeActorName 注意!必須連結到新的對話,玩家名稱才會出現在對話內容。
顯示玩家名稱顯示出現家名稱
簡易密碼判定使用 Dialogue System 判定玩家輸入的密碼,首先新增 Password (Text) 變數。 密碼判定功能使用的全部對話節點。 輸入密碼的節點 TextInput(Text Field UI,Password,Password) 密碼判定的節點輸入 Delay(0) 避免對話的等待時間。 密碼正確的對話節點。 進入系統。 密碼錯誤的對話節點。 重新輸入的對話節點,顯示訊息給玩家重新輸入密碼的提示。
按下 Play 測試遊戲。 輸入正確密碼,即可進入系統。 輸入錯誤密碼。 U U U U U U U U U U |