Selection
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
บริการเลือกควบคุม Instances ที่เลือกใน Roblox Studio
บริการนี้มีประโยชน์อย่างมากเมื่อพัฒนา Plugins เนื่องจากสามารถให้นักพัฒนาเข้าถึงและปรับแต่งการเลือกปัจจุบันได้
ขณะนี้เลือก Instances สามารถรับได้และตั้งโดยการใช้งาน Selection:Get() และ Selection:Set() ฟังก์ชัน เหตุการณ์ 1> Class.Selection.SelectionChanged1> จะเกิดขึ้นเมื่อการเลือกปั
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Selection และ Plugins โปรดดูที่ Plugin
การเลือกยังมักใช้ในแถบคําสั่งเพื่อตั้งค่าสมบัติที่ซ่อนอยู่หรือประมวลผลฟังก์ชันสําหรับ Instances ที่เลือก
หมายเหตุคลาสนี้ใช้ได้เฉพาะ Roblox Studio เท่านั้นและไม่มีความสามารถในการใช้กับเกม
ตัวอย่างโค้ด
local Selection = game:GetService("Selection")
for _, object in pairs(Selection:Get()) do
if object:IsA("BasePart") then
object.CFrame = object.CFrame * CFrame.Angles(0, math.pi / 2, 0)
end
end
คุณสมบัติ
SelectionThickness
วิธีการ
Add
พารามิเตอร์
ส่งค่ากลับ
Get
กลับรายการแรงงานที่เลือกไว้ในขณะนี้ Instances ใน Roblox Studio
หากไม่ได้เลือก Instances รายการ แผงที่กลับมาจะว่างเปล่า ฟังก์ชันนี้สามารถใช้ร่วมกับเหตุการณ์ Selection.SelectionChanged เพื่อรับเลือกได้ทุกครั้งเมื่อมันเปลี่ยนแปลง
หมายเหตุ, คุณสมบัตินี้ใช้ได้เฉพาะใน Plugins หรือบรรทัดคำสั่ง
สำหรับการเปลี่ยนแปลงการเลือกปัจจุบันโปรดดู Selection:Set()
ส่งค่ากลับ
รายการของตอนนี้เลือก Instances
ตัวอย่างโค้ด
local Selection = game:GetService("Selection")
for _, object in pairs(Selection:Get()) do
if object:IsA("BasePart") then
object.CFrame = object.CFrame * CFrame.Angles(0, math.pi / 2, 0)
end
end
local selection = game:GetService("Selection")
selection.SelectionChanged:Connect(function()
print("Selection contains " .. #selection:Get() .. " items.")
end)
Remove
พารามิเตอร์
ส่งค่ากลับ
Set
ตั้งค่าวัตถุที่เลือกไว้ใน Roblox Studio ในขณะนี้เป็น Instances ในรายการที่ให้
การเรียกใช้ฟังก์ชันนี้จะทำให้เหตุการณ์ Selection.SelectionChanged เกิดขึ้น ยกเว้นว่าค่าเลือกใหม่จะเหมือนกับค่าเลือกก่อนหน้า
โปรดทราบว่าคุณสมบัตินี้เขียนข้อมูลเก่าที่เลือกอยู่ อย่างไรก็ตามโดยใช้ Selection:Get() และใช้ Instance สามารถเพิ่มได้ในคุณสมบัติเก่าเช่นนี้:
local selected = Selection:Get()table.insert(selected, object)Selection:Set(selected)
พารามิเตอร์
Class.Instance|Instances รายการเพื่อตั้งค่าการเลือกปัจจุบัน
ส่งค่ากลับ
ตัวอย่างโค้ด
local Selection = game:GetService("Selection")
local newSelection = {}
for _, object in pairs(workspace:GetDescendants()) do
if object:IsA("BasePart") and object.BrickColor == BrickColor.new("Bright red") then
table.insert(newSelection, object)
end
end
Selection:Set(newSelection)
อีเวนต์
SelectionChanged
เกิดขึ้นเมื่อ Instances ที่เลือกใน Roblox Studio เปลี่ยนแปลง
หมายเหตุวิกฤตนี้ไม่ได้ให้การเลือกใหม่ ผู้พัฒนาจะต้องใช้คุณสมบัติ Selection:Get() เพื่อรับการเลือกปัจจุบัน
แม้ว่าเหตุการณ์นี้สามารถใช้ได้นอกปลั๊กอินและแถบคําสั่ง แต่มันเป็นเพียงการเลือกใน Roblox Studio และดังนั้นจึงไม่มีความสามารถภายนอก Studio
เพื่อเปลี่ยนการเลือกใช้งานฟังก์ชัน Selection:Set()
ตัวอย่างโค้ด
local selection = game:GetService("Selection")
selection.SelectionChanged:Connect(function()
print("Selection contains " .. #selection:Get() .. " items.")
end)