抱歉各位,昨天沒有紀錄
因為在追芙莉蓮...
Anyways,進入主題。
時間 2024/9/22 上午10:10
地點 我房間
昨天美化了對話系統的文字以及把可互動的物件的按住時間縮短並調整為一致,簡單來說就是又精修了一次。
那既然講到了這兩個東西,就來談談Roblox Studio裡的一些基本功能吧!
首先,在Roblox Studio裡所使用的語法為Lua,我個人認為它是一個非常好學習的程式語言,邏輯並不複雜,如果有辦法學會像Python或C++之類的語言我認為學習Lua會是沒有難度的。那首先先來看看上文提到的可互動物件。
在Roblox中,與物件互動的方式有很多,例如: 點擊、對物件按住某個按鍵持續幾秒、點擊物件上方的對話框並與之對話,甚至只要碰到物件也能互動。我這邊就先使用"對物件按住某個按鍵持續幾秒"來當作例子。
若要讓一個物件可互動,我們要先在物件身上新增一個"ProximityPrompt"(如圖)
新增好以後,我們要到屬性頁面調整一些參數(如圖)
你將會在屬性頁面看到許多數值可以調整,以下是每一個屬性可調整的參數:
Archivable 控制此互動物件是否可在用戶端與腳本端運作(講簡單一點就是要不要讓他能與玩家互動、被Script控制)
ActionText 互動文字(當玩家靠近此物互動物件時,會有一個UI出現在此物件身上並時刻面對著玩家,這個是UI上的文字)
ClassName 物件原始名稱(此物件再被創作者改變名字之前,他原本的名字)
ClickablePrompt 是否可點擊(玩家可以使用UI提示的按鍵,也可以使用滑鼠點擊,若數值為False則否)
Enabled 控制此互動物件是否可在用戶端運作(跟剛才的Archivable不同的是,這個屬性只控制玩家能否使用,若數值為False Script仍可控制)
Exclusivitly 控制此互動物件的UI顯示方式(可調整為永遠顯示、可與其他互動物件一起顯示、一次只顯示一個)
GamepadKeyCode 手把玩家需要對這個互動物件按的按鈕
HoldDuration 玩家要對此物件按住按鍵幾秒
KeyboardKeyCode 電腦玩家需要對這個互動物件按的按鈕
MaxActiavtionDistance 玩家與此物件可互動的最大範圍(單位為一格Stud,也就是一格在Studio中大小為1, 1, 1的Part)
Name 此互動物件的名稱(可以更改,但ClassName不可更改)
ObjectText 此互動物件的UI的小字(通常會做為要互動的物件的名稱,例如要對一個"食物"進行"吃"的動作,那可以在ActionText打上"Eat";在Object打上"Food")
Parent 此物件的母項(也就是他在誰裡面,而這個他就是子項,而誰就是母項)
RequiresLineOfSight 若在玩家的視角被阻擋的情況下,是否可以與此物件互動(此互動物件的母項與模型的中心點物件將不再此討論內)
Style 此互動物件的UI的類型(可調整為自訂或預設,通常情況下為預設,有一些做UI做到並ㄅㄧㄤˋ叫的創作者會把此控制項設為自訂,然後在自己設計UI)
UIOffset 此互動物件的UI的位置(單位為像素,而因為UI會一直面對著玩家所以無法調整Z軸,僅有X與Y軸可以調整)
以上就是互動物件常用的屬性,當然下面還有很多東西我沒有講到,但那些都得要在Script裡面才能調整,而且也不常使用到。
以目前第二張地圖裡的電腦物件為例子,若參數全部都調整好會像這樣:
而按住空白鍵時會長這樣:
--HoldDuration為兩秒
以上就是Roblox Studio中的"ProximityPrompt"的一些簡短介紹,以上介紹純粹是我製作Roblox遊戲時不斷的閱讀API以及在論壇上閱讀其他人的問題與解答所得出來的結論,若有任何問題或我對於哪個屬性的的見解有錯誤還請在下方糾正我。
下一個日誌將會探討關於UI的屬性。