StudioService

แสดงที่เลิกใช้งานแล้ว

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

ไม่สามารถสร้าง
บริการ
ไม่ซ้ำ

StudioService ให้การเข้าถึงการกำหนดค่าของ Roblox Studio ช่วยให้สามารถนำไฟล์จากระบบไฟล์ของผู้ใช้ได้ และข้อมูลอื่น ๆ ที่ไม่เกี่ยวข้องมันมีจุดมุ่งหมายเพื่อใช้โดย Plugins เพื่อให้ประสบการณ์ผู้ใช้ที่สอดคล้อง

  • ปลั๊กอินที่อนุญาตให้ผู้ใช้ย้ายวัตถุอาจพบ GridSize , RotateIncrement และ UseLocalSpace มีประโยชน์
  • ปลั๊กอินที่ต้องการให้ผู้ใช้นำไฟล์มาใช้ควรใช้ PromptImportFile หรือ PromptImportFiles เพื่อรับวัตถุ File
  • ปลั๊กอินที่แสดงไอคอนของคลาสตัวอย่างสามารถใช้ GetClassIcon ได้
  • ส่วนขยายที่สนใจสคริปต์ที่กําลังถูกแก้ไขอยู่ (ถ้ามี) สามารถอ่านได้จาก ActiveScript

สรุป

คุณสมบัติ

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    สะท้อนการแก้ไข LuaSourceContainer ที่กําลังดําเนินอยู่ (ถ้ามี)

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน
  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    กำหนดระยะในสตัดโดยซึ่งเครื่องมือลากและย้ายของ Studio ย้ายวัตถุในแต่ละจังหวะ

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    กำหนดองศาที่เครื่องมือหมุนของ Studio จะหมุนวัตถุที่เลือกในแต่ละจังหวะ

  • การรักษาความปลอดภัยของสคริปต์ Roblox
    อ่านพร้อมๆ กัน
  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน
  • อ่านอย่างเดียว
    ไม่ซ้ำ
    การรักษาความปลอดภัยของสคริปต์ Roblox
    อ่านพร้อมๆ กัน
  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    ท้องถิ่นที่ใช้อยู่ในขณะนี้โดย Studio, เช่น en_US .

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    กำหนดว่าเครื่องมือของ Studio จะใช้พื้นที่ท้องถิ่นของวัตถุหรือพื้นที่ทั่วโลก

วิธีการ

  • การรักษาความปลอดภัยของปลั๊กอิน

    ให้คำศัพท์ที่ช่วยให้สามารถแสดงไอคอนหน้าต่างสํารวจของคลาสได้

  • การรักษาความปลอดภัยของปลั๊กอิน

    ส่งคืนรหัสผู้ใช้ของ Studio หากพวกเขาล็อกอินแล้ว มิฉะนั้นจะคืน 0

  • GizmoRaycast(origin : Vector3,direction : Vector3,raycastParams : RaycastParams):RaycastResult?
    การรักษาความปลอดภัยของปลั๊กอิน
  • PromptImportFile(fileTypeFilter : Array):Instance
    ผลตอบแทน
    การรักษาความปลอดภัยของปลั๊กอิน

    ขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์หนึ่งเพื่อเพิ่มเป็น File

  • PromptImportFiles(fileTypeFilter : Array):Instances
    ผลตอบแทน
    การรักษาความปลอดภัยของปลั๊กอิน

    ขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์ที่จะเพิ่มเป็น Files

คุณสมบัติ

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

การรักษาความปลอดภัยของสคริปต์ Roblox
อ่านพร้อมๆ กัน

ShowConstraintDetails

อ่านอย่างเดียว
ไม่ซ้ำ
อ่านพร้อมๆ กัน

ShowWeldDetails

อ่านอย่างเดียว
ไม่ซ้ำ
การรักษาความปลอดภัยของสคริปต์ Roblox
อ่านพร้อมๆ กัน

StudioLocaleId

อ่านอย่างเดียว
ไม่ซ้ำ
อ่านพร้อมๆ กัน

คุณสมบัติ StudioLocaleId มีโครงสร้างท้องถิ่นที่ใช้อยู่ในปัจจุบันโดย Studio เช่น en_US มันมีประโยชน์เมื่อทำการแปลงปลั๊กอิน

ต่อไปนี้เป็นตัวอย่างธรรมดาของการแปลเป็นภาษาท้องถิ่นโดยอิงจากค่าที่ส่งคืนโดยฟังก์ชันนี้


local locale = game:GetService("StudioService").StudioLocaleId
if locale == "en_US" then
print("Howdy, ya'll")
elseif locale == "en_GB" then
print("'Ello, gov'na")
elseif locale:sub(1, 2) == "en" then
print("Hello")
elseif locale == "fr_FR" then
print("Bonjour")
end

UseLocalSpace

ไม่ซ้ำ
อ่านพร้อมๆ กัน

ใช้พื้นที่ท้องถิ่น กำหนดว่าเครื่องมือการเคลื่อนที่/หมุนของ Studio จะดำเนินการกับส่วน CFrame โดยใช้พื้นที่ท้องถิ่นของวัตถุหรือพื้นที่ทั่วโลกโดยค่าเริ่มต้นการตั้งค่านี้จะสลับกับ CtrlL หรือ Lปลั๊กอินสามารถอ่านค่านี้ได้หากพวกเขาใช้เครื่องมือการเคลื่อนไหววัตถุของตนเอง

วิธีการ

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")

พารามิเตอร์

className: string
ค่าเริ่มต้น: ""

ส่งค่ากลับ

GetUserId

การรักษาความปลอดภัยของปลั๊กอิน

ส่งคืนรหัสผู้ใช้ของ Studio หากพวกเขาล็อกอินแล้ว มิฉะนั้นจะคืน 0


ส่งค่ากลับ

ตัวอย่างโค้ด

The example prints the currently logged in user's ID.

StudioService:GetUserId

-- 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

การรักษาความปลอดภัยของปลั๊กอิน

พารามิเตอร์

origin: Vector3
ค่าเริ่มต้น: ""
direction: Vector3
ค่าเริ่มต้น: ""
raycastParams: RaycastParams
ค่าเริ่มต้น: "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}"

ส่งค่ากลับ

PromptImportFile

ผลตอบแทน
การรักษาความปลอดภัยของปลั๊กอิน

ฟังก์ชันนี้จะขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์หนึ่ง ซึ่งจะถูกโหลดเป็น File

ดูเพิ่ม:

  • StudioService:PromptImportFiles() , ฟังก์ชันเดียวกัน แต่สำหรับการโหลดรายการไฟล์แทนไฟล์เดียว

พารามิเตอร์

fileTypeFilter: Array

รายการประเภทไฟล์ที่ผู้ใช้สามารถเลือกได้ประเภทไฟล์จะได้รับการจัดรูปโดยไม่มีจุลภาคตัวอย่างเช่น "jpg", "png" จะอนุญาตให้เลือกไฟล์ JPG หรือ PNG เท่านั้นหากไม่มีตัวกรองที่ให้ไว้ ตัวกรองจะเป็น nil พิมพ์

ค่าเริ่มต้น: "{}"

ส่งค่ากลับ

นำเข้า File กลับ nil หากไม่มีไฟล์ที่เลือก หรือหากไฟล์ที่เลือกมีขนาดใหญ่เกินไป (ขนาดไฟล์ใหญ่กว่า 100 เมกะไบต์)

PromptImportFiles

Instances
ผลตอบแทน
การรักษาความปลอดภัยของปลั๊กอิน

ฟังก์ชันนี้จะขอให้ผู้ใช้ Studio ปัจจุบันเลือกไฟล์หนึ่งหรือมากกว่าหนึ่งไฟล์ซึ่งจะถูกโหลดเป็น Files

โยนข้อผิดพลาดหากตัวกรองชนิดไฟล์เป็นรายการว่างเปล่า

ดูเพิ่ม:

  • StudioService:PromptImportFile() , ฟังก์ชันเดียวกัน แต่สำหรับการโหลดไฟล์เดียวแทนรายการไฟล์

พารามิเตอร์

fileTypeFilter: Array

รายการประเภทไฟล์ที่ผู้ใช้สามารถเลือกได้ประเภทไฟล์จะได้รับการจัดรูปโดยไม่มีจุลภาคตัวอย่างเช่น "jpg", "png" จะอนุญาตให้เลือกไฟล์ JPG และ PNG เท่านั้นหากไม่มีตัวกรองที่ให้ไว้ ตัวกรองจะเป็น nil พิมพ์

ค่าเริ่มต้น: "{}"

ส่งค่ากลับ

Instances

นำเข้า Files ที่นำมาส่งคืนรายการว่างเปล่าหากไม่มีไฟล์ที่เลือกส่งคืน nil หากผู้ใช้เลือกไฟล์หนึ่งหรือมากกว่าหนึ่งไฟล์ที่มีขนาดใหญ่เกินไป (ขนาดไฟล์ใหญ่กว่า 100 ล้านไบต์)

อีเวนต์