StudioService
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
StudioService ให้การเข้าถึงการกำหนดค่าของ Roblox Studio ช่วยให้สามารถนำไฟล์จากระบบไฟล์ของผู้ใช้ได้ และข้อมูลอื่น ๆ ที่ไม่เกี่ยวข้องมันมีจุดมุ่งหมายเพื่อใช้โดย Plugins เพื่อให้ประสบการณ์ผู้ใช้ที่สอดคล้อง
- ปลั๊กอินที่ต้องการให้ผู้ใช้นำไฟล์มาใช้ควรใช้ PromptImportFile หรือ PromptImportFiles เพื่อรับวัตถุ File
- ปลั๊กอินที่แสดงไอคอนของคลาสตัวอย่างสามารถใช้ GetClassIcon ได้
- ส่วนขยายที่สนใจสคริปต์ที่กําลังถูกแก้ไขอยู่ (ถ้ามี) สามารถอ่านได้จาก ActiveScript
สรุป
คุณสมบัติ
สะท้อนการแก้ไข LuaSourceContainer ที่กําลังดําเนินอยู่ (ถ้ามี)
กำหนดระยะในสตัดโดยซึ่งเครื่องมือลากและย้ายของ Studio ย้ายวัตถุในแต่ละจังหวะ
กำหนดองศาที่เครื่องมือหมุนของ Studio จะหมุนวัตถุที่เลือกในแต่ละจังหวะ
ท้องถิ่นที่ใช้อยู่ในขณะนี้โดย Studio, เช่น en_US .
กำหนดว่าเครื่องมือของ Studio จะใช้พื้นที่ท้องถิ่นของวัตถุหรือพื้นที่ทั่วโลก
วิธีการ
คุณสมบัติ
ActiveScript
ActiveScript หมายถึง LuaSourceContainer ที่กําลังถูกแก้ไขโดยผู้ใช้ในขณะนี้หากผู้ใช้ไม่ได้แก้ไขสคริปต์ จะเป็น nilต่อไปนี้เป็นตัวอย่างที่แสดงวิธีที่คุณสามารถใช้คุณสมบัตินี้เพื่อวัดระยะเวลาที่สคริปต์ใช้งานได้
local StudioService = game:GetService("StudioService")
local startTime = os.time()
local activeScript
local function onActiveScriptChanged()
local newActiveScript = StudioService.ActiveScript
if activeScript and newActiveScript ~= activeScript then
local deltaTime = os.time() - startTime
print(("You edited %s for %d:%2.d"):format(activeScript.Name, deltaTime // 60, deltaTime % 60))
end
startTime = os.time()
activeScript = newActiveScript
end
StudioService:GetPropertyChangedSignal("ActiveScript"):Connect(onActiveScriptChanged)
DraggerSolveConstraints
GridSize
ขนาดกริด กำหนดระยะในสตัดที่เครื่องมือลากและย้ายของ Studio ย้ายวัตถุในแต่ละจังหวะนี้กำหนดไว้ในแท็บ โมเดล ของแถบเครื่องมือของผู้ใช้
RotateIncrement
หมุนเพิ่ม กำหนดมุมในองศาที่เครื่องมือหมุนของ Studio จะหมุนวัตถุที่เลือกในแต่ละจังหวะนี้กำหนดไว้ในแท็บ โมเดล ของแถบเครื่องมือของผู้ใช้
Secrets
ShowConstraintDetails
ShowWeldDetails
StudioLocaleId
คุณสมบัติ StudioLocaleId มีโครงสร้างท้องถิ่นที่ใช้อยู่ในปัจจุบันโดย Studio เช่น en_US มันมีประโยชน์เมื่อทำการแปลงปลั๊กอิน
ต่อไปนี้เป็นตัวอย่างธรรมดาของการแปลเป็นภาษาท้องถิ่นโดยอิงจากค่าที่ส่งคืนโดยฟังก์ชันนี้
local locale = game:GetService("StudioService").StudioLocaleIdif locale == "en_US" thenprint("Howdy, ya'll")elseif locale == "en_GB" thenprint("'Ello, gov'na")elseif locale:sub(1, 2) == "en" thenprint("Hello")elseif locale == "fr_FR" thenprint("Bonjour")end
วิธีการ
GetClassIcon
รับไอคอนคลาส ให้คำศัพท์ที่ช่วยให้สามารถแสดงไอคอนหน้าต่างสํารวจของคลาสได้ เช่นเรียกฟังก์ชันนี้ด้วย "ส่วน" จะส่งค่าคุณสมบัติที่แสดงสัญลักษณ์ส่วนจากหน้าต่าง Explorer
ด้านล่างนี้เป็นการแสดงตารางตัวอักษรของค่าที่ส่งคืนเมื่อฟังก์ชันนี้ถูกเรียกด้วย "Part"
{Image = "rbxasset://textures/ClassImages.png",ImageRectOffset = Vector2.new(16, 0),ImageRectSize = Vector2.new(16, 16)}
ฟังก์ชันความสามารถด้านล่างอาจเป็นประโยชน์เมื่อแสดงไอคอนคลาส:
local StudioService = game:GetService("StudioService")
local imageLabel = script.Parent
local function displayClassIcon(image, className)
for k, v in StudioService:GetClassIcon(className) do
image[k] = v -- ตั้งค่าคุณสมบัติ
end
end
displayClassIcon(imageLabel, "Part")
พารามิเตอร์
ส่งค่ากลับ
GetUserId
ส่งคืนรหัสผู้ใช้ของ Studio หากพวกเขาล็อกอินแล้ว มิฉะนั้นจะคืน 0
ส่งค่ากลับ
ตัวอย่างโค้ด
The example prints the currently logged in user's ID.
-- Can only be used in a plugin
local StudioService = game:GetService("StudioService")
local Players = game:GetService("Players")
local loggedInUserId = StudioService:GetUserId()
local loggedInUserName = Players:GetNameFromUserIdAsync(loggedInUserId)
print("Hello,", loggedInUserName)
GizmoRaycast
พารามิเตอร์
ส่งค่ากลับ
PromptImportFile
ฟังก์ชันนี้จะขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์หนึ่ง ซึ่งจะถูกโหลดเป็น File
ดูเพิ่ม:
- StudioService:PromptImportFiles() , ฟังก์ชันเดียวกัน แต่สำหรับการโหลดรายการไฟล์แทนไฟล์เดียว
พารามิเตอร์
รายการประเภทไฟล์ที่ผู้ใช้สามารถเลือกได้ประเภทไฟล์จะได้รับการจัดรูปโดยไม่มีจุลภาคตัวอย่างเช่น "jpg", "png" จะอนุญาตให้เลือกไฟล์ JPG หรือ PNG เท่านั้นหากไม่มีตัวกรองที่ให้ไว้ ตัวกรองจะเป็น nil พิมพ์
ส่งค่ากลับ
PromptImportFiles
ฟังก์ชันนี้จะขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์หนึ่งหรือมากกว่าหนึ่งไฟล์ซึ่งจะถูกโหลดเป็น Files
โยนข้อผิดพลาดหากตัวกรองชนิดไฟล์เป็นรายการว่างเปล่า
ดูเพิ่ม:
- StudioService:PromptImportFile() , ฟังก์ชันเดียวกัน แต่สำหรับการโหลดไฟล์เดียวแทนรายการไฟล์
พารามิเตอร์
รายการประเภทไฟล์ที่ผู้ใช้สามารถเลือกได้ประเภทไฟล์จะได้รับการจัดรูปโดยไม่มีจุลภาคตัวอย่างเช่น "jpg", "png" จะอนุญาตให้เลือกไฟล์ JPG และ PNG เท่านั้นหากไม่มีตัวกรองที่ให้ไว้ ตัวกรองจะเป็น nil พิมพ์
ส่งค่ากลับ
นำเข้า Files ที่นำมาส่งคืนรายการว่างเปล่าหากไม่มีไฟล์ที่เลือกส่งคืน nil หากผู้ใช้เลือกไฟล์หนึ่งหรือมากกว่าหนึ่งไฟล์ที่มีขนาดใหญ่เกินไป (ขนาดไฟล์ใหญ่กว่า 100 ล้านไบต์)