Actor

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

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

An Actor เป็นคอนเทนเนอร์สําหรับโค้ดที่สามารถแยกออกได้อย่างปลอดภัยในกระทู้ของตัวเองโดยใช้ task.desynchronize()นอกจากนี้ยังควรมีตัวอย่างที่ใช้โดยสคริปต์ของมัน

การดำเนินการดู Parallel Luau

สรุป

คุณสมบัติ

คุณสมบัติรับทอดมาจากModel
  • การรักษาความปลอดภัยของปลั๊กอิน
    อ่านพร้อมๆ กัน

    ตั้งระดับรายละเอียดบนโมเดลสำหรับประสบการณ์ที่มีการสตรีมตัวอย่างเปิดใช้งาน

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

    ควบคุมพฤติกรรมการสตรีมรูปแบบบน Models เมื่อการสตรีมตัวอย่างถูกเปิดใช้งาน

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

    ส่วนหลักของ Model หรือ nil ตั้งค่า

  • ไม่ซ้ำ
    ไม่สามารถเขียนสคริปต์
    อ่านพร้อมๆ กัน

    คุณสมบัติสำหรับเอดิเตอร์เท่านั้นที่ใช้เพื่อขยายโมเดลรอบจุดศูนย์กลางของมัน การตั้งค่าคุณสมบัตินี้จะเคลื่อนย้ายเครื่องชั่งเหมือนว่า Model/ScaleTo ถูกเรียกใช้บนมัน

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

    กำหนดตำแหน่งที่ศูนย์กลางของ ซึ่งไม่ได้มีชุด ตั้งอยู่

คุณสมบัติรับทอดมาจากPVInstance
  • ไม่ซ้ำ
    ไม่สามารถเขียนสคริปต์
    อ่านพร้อมๆ กัน
  • ไม่ซ้ำ
    ไม่สามารถเขียนสคริปต์
    อ่านพร้อมๆ กัน

วิธีการ

  • เขียนพร้อมๆ กัน

    ผูกการโทรกลับ Luau กับข้อความที่มีหัวข้อที่กำหนดไว้

  • เขียนพร้อมๆ กัน

    ผูกการโทรกลับ Luau กับข้อความที่มีหัวข้อที่กำหนดไว้

  • SendMessage(topic : string,message : Tuple):()
    เขียนพร้อมๆ กัน

    ส่งข้อความไปยังนักแสดง

วิธีการรับทอดมาจากModel
  • AddPersistentPlayer(playerInstance : Player):()

    ตั้งค่าโมเดลนี้ให้เป็นถาวรสำหรับผู้เล่นที่ระบุModel.ModelStreamingMode ต้องตั้งค่าเป็น PersistentPerPlayer เพื่อให้พฤติกรรมเปลี่ยนแปลงเนื่องจากการเพิ่ม

  • คืนคำอธิบายของระดับที่มีส่วนประกอบทั้งหมดของโมเดล

  • คืนขนาดของกล่องล้อมรอบขนาดเล็กที่มีทั้งหมด BaseParts ใน Model สอดคล้องกับ Model.PrimaryPart หากกำหนดไว้

  • คืนวัตถุทั้งหมด Player ที่วัตถุรูปแบบนี้มีอยู่อย่างถาวรพฤติกรรมแตกต่างกันขึ้นอยู่กับว่าวิธีนี้ถูกเรียกจาก Script หรือ LocalScript หรือไม่

  • ส่งคืนเครื่องชั่งหลักของโมเดลซึ่งเริ่มต้นที่ 1 สำหรับโมเดลที่สร้างขึ้นใหม่และจะเปลี่ยนเมื่อมันถูกขยายผ่าน Model/ScaleTo

  • MoveTo(position : Vector3):()

    ย้าย PrimaryPart ไปยังตำแหน่งที่กำหนด หากส่วนหลักไม่ได้ระบุไว้ ส่วนรากของโมเดลจะถูกใช้

  • RemovePersistentPlayer(playerInstance : Player):()

    ทำให้โมเดลนี้ไม่ยังคงอยู่สำหรับผู้เล่นที่ระบุแล้วModel.ModelStreamingMode ต้องตั้งค่าเป็น PersistentPerPlayer เพื่อให้พฤติกรรมเปลี่ยนแปลงเนื่องจากการลบ

  • ScaleTo(newScaleFactor : number):()

    ตั้งตัวคูณขนาดของโมเดลโดยปรับขนาดและตำแหน่งของโอนุการทั้งหมดเพื่อให้มีตัวคูณขนาดเท่ากับขนาดและตำแหน่งเดิมเมื่อตัวคูณขนาดอยู่ที่ 1

  • TranslateBy(delta : Vector3):()

    เปลี่ยน Model โดยออฟเซ็ตที่กำหนด Vector3 เพื่อรักษาการจัดตำแหน่งของรูปแบบหากอีก BasePart หรือ Terrain มีอยู่แล้วในตำแหน่งใหม่แล้ว ตัว Model จะซ้อนบนวัตถุที่กล่าวถึง

วิธีการรับทอดมาจากPVInstance
  • เขียนพร้อมๆ กัน

    รับจุดศูนย์กลางของ PVInstance .

  • PivotTo(targetCFrame : CFrame):()

    เปลี่ยน PVInstance พร้อมกับบรรดาลูกหลานทั้งหมดของมัน PVInstances ทำให้จุดศูนย์กลางอยู่ที่ตําแหน่งที่ระบุแล้ว CFrame

คุณสมบัติ

วิธีการ

BindToMessage

เขียนพร้อมๆ กัน

วิธีนี้ใช้เพื่อผูกการโทรกลับ Luau กับข้อความที่มีหัวข้อที่ระบุไว้เมื่อส่งข้อความ (โดยใช้ SendMessage() ) ไปยังหัวข้อที่ระบุจะเรียกการโทรกลับที่ให้ไว้ในบริบทการดําเนินการแบบเรียลไทม์ serial

หลายคำโทรกลับ Luau อาจผูกกับตัวแสดงเดียวหรือแม้แต่หัวข้อข้อความเดียว

หมายเหตุ: เฉพาะสคริปที่เป็นลูกหลานของนักแสดงเท่านั้นที่สามารถผูกกับข้อความของมันได้


local actor = script:GetActor()
-- พิมพ์ข้อความเมื่อข้อความทักทายถูกส่งไปยัง Actor
-- สคริปต์นี้เป็นลูกหลานของ
local connection = actor:BindToMessage("Greeting", function(message)
print("Received Greeting Message:", message)
end)

พารามิเตอร์

topic: string

หัวข้อที่ใช้เพื่อระบุประเภทข้อความ

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

ส่งค่ากลับ

วัตถุการเชื่อมต่อนี้สามารถใช้เพื่อยกเลิกการเรียก Luau จากการรับข้อความได้

BindToMessageParallel

เขียนพร้อมๆ กัน

วิธีนี้ใช้เพื่อผูกการโทรกลับ Luau กับข้อความที่มีหัวข้อที่ระบุไว้เมื่อส่งข้อความ (โดยใช้ SendMessage() ) ไปยังหัวข้อที่ระบุจะเรียกการโทรกลับที่ให้ไว้ในบริบทการดําเนินการแบบพาร์เลล **

หลายคำโทรกลับ Luau อาจผูกกับตัวแสดงเดียวหรือแม้แต่หัวข้อข้อความเดียว

หมายเหตุ: เฉพาะสคริปที่เป็นลูกหลานของนักแสดงเท่านั้นที่สามารถผูกกับข้อความของมันได้


local actor = script:GetActor()
-- พิมพ์ข้อความเมื่อข้อความทักทายถูกส่งไปยัง Actor
-- สคริปต์นี้เป็นลูกหลานของ
local connection = actor:BindToMessageParallel("Greeting", function(message)
print("Received Greeting Message:", message)
end)

พารามิเตอร์

topic: string

หัวข้อที่ใช้เพื่อระบุประเภทข้อความ

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

ส่งค่ากลับ

วัตถุการเชื่อมต่อนี้สามารถใช้เพื่อยกเลิกการเรียก Luau จากการรับข้อความได้

SendMessage

()
เขียนพร้อมๆ กัน

ส่งข้อความไปยัง Actor ข้อความจะถูกส่งแบบไม่ซิงโครไนซ์ดังนั้นผู้ส่งจะไม่บล็อกหรือให้เมื่อเรียกใช้วิธี SendMessage()

เนื่องจาก Actor รายเดียวอาจได้รับข้อความประเภทต่างๆ พารามิเตอร์ topic จะถูกใช้เพื่อแยกแยะระหว่างประเภทข้อความต่างๆ

ดู BindToMessage() สำหรับรายละเอียดเกี่ยวกับการรับข้อความที่ส่งโดยใช้ SendMessage()


-- สมมติว่า `actor` เป็นตัวแปรท้องถิ่นที่อ้างถึงตัวอย่าง Actor
actor:SendMessage("Greeting", "Hello World")

พารามิเตอร์

topic: string

หัวข้อที่ใช้เพื่อระบุข้อความที่ส่ง

ค่าเริ่มต้น: ""
message: Tuple

เนื้อหาของข้อความที่จะส่งให้กับ Actor

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

ส่งค่ากลับ

()

อีเวนต์