🌟

【Roblox開発】Tagを使って特定のオブジェクトを取得してみる

2024/08/10に公開

はじめに

今回はタグ機能を利用して指定のタグがついたオブジェクトを収集する方法を共有します。

公式Reference

https://create.roblox.com/docs/reference/engine/classes/Instance#HasTag

実装

オブジェクトの配置とその設定

配置

タグの設定

タグの一覧の+マークを押すとタグの新規作成と一覧が表示されます。

FirstPartSecondPartにそれぞれタグを設定

SamplePartには先ほど作成したタグをすべて付けます・

コード

指定のタグを持っているか判別

local partFolder = workspace.PartFolder

--PartFolderの中身をすべて取得
local parts = partFolder:GetDescendants()

--フォルダの中のPartを取得しタグを確認
for i, part in pairs(parts) do
	if part:IsA("Part") then
		if part:HasTag("First") then
			print(part.Name)
		end
	end
end

HasTag()で指定のタグを持っているか確認できます。

そのオブジェクトが持つすべてのタグを取得

local samplePart = workspace.SamplePart

--samplePartのタグをすべて取得
local tags = samplePart:GetTags()

--タグを1つずつ表示
for i, tag in pairs(tags) do
	print(tag)
end

GetTagsでそのオブジェクトが持つすべてのタグを取得できます。

全体コード

local partFolder = workspace.PartFolder

--PartFolderの中身をすべて取得
local parts = partFolder:GetDescendants()

--フォルダの中のPartを取得しタグを確認
for i, part in pairs(parts) do
	if part:IsA("Part") then
		if part:HasTag("First") then
			print(part.Name)
		end
	end
end

local samplePart = workspace.SamplePart

--samplePartのタグをすべて取得
local tags = samplePart:GetTags()

--タグを1つずつ表示
for i, tag in pairs(tags) do
	print(tag)
end

実行

https://youtu.be/2GrlLIAsrLI

Landelテックブログ

Discussion