iT邦幫忙

2025 iThome 鐵人賽

DAY 29
0

print("第29九天囉~")


1. 使用情境

我們在for迴圈的單元跟Day16的尋找物件章節裡都有提過,可以使用if的判斷式,搭配IsA()函式來達到過濾物件的效果,但如果今天我們想要提取的物件是含有一模一樣的屬性與名稱,且沒有任何其他的屬性可以為兩者做分辨時,該如何繼續進行過濾呢?

這個時候,標籤就會是個非常好用的屬性。

2. 使用方法

首先,標籤這個屬性並沒有一個固定的service可以控制它,我們只能用以下函式來對標籤做改變
AddTag: 新增標籤
GetTags: 取得物件的所有標籤
RemoveTag: 移除標籤
HasTag: 回傳物件是否含有指定標籤

我們來舉個例子,今天我們使用一個for迴圈來遍歷workspace裡的所有物件

for _, item in pairs(workspace:GetChildren()) do
    print(item.Name)
end

現在,我想要只輸出帶有"Part"這個Tag的物件 (這不是屬性喔,這是我們自己為它加入的標籤,所以跟它的屬性沒有關係)

for _, item in pairs(workspace:GetChildren()) do
    if item:HasTag("Test") then
        print(item.Name)
    end
end

雖然說這個系統好像沒有那麼重要,但在某些特定時刻,我們必須要取得一些屬性一模一樣,但就是不同的物件,這時Tag就會派上用場了。

明天將會是這場賽事的最後一次應用單元


上一篇
Day 28: 遊戲內排行榜
下一篇
Day Final: 應用單元 (3)
系列文
透過Roblox Studio學習Lua語言與基本程式邏輯30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言