พ่อแม่และเด็ก

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

แทนที่จะรันสคริปต์จาก ServerScriptService คุณอาจต้องการแนบสคริปต์ไปยังส่วนตัวอย่างเช่น การใช้สคริปต์เพื่อเปลี่ยนส่วนให้เป็นกับดักหรือทำให้ส่วนหนึ่งให้แต้มผู้เล่นเมื่อสัมผัสโดยเข้าใจวิธีที่สคริปต์และส่วนเกี่ยวข้องกันในระดับชั้นวาระ คุณสามารถสร้างสคริปต์ที่ทำงานโดยอัตโนมัติโดยไม่ต้องระบุชื่อส่วนที่จะใช้

เพื่อทำเช่นนี้คุณต้องเข้าใจ ความสัมพันธ์ระหว่างพ่อและลูก พ่อแม่และเด็กเป็นวิธีที่จะอธิบายลำดับชั้นระหว่างวัตถุที่แตกต่างกันทุกครั้งที่คุณเพิ่มส่วนใหม่ลงในพื้นที่ทำงาน พื้นที่ทำงานเป็นวัตถุบิดา และส่วนกลายเป็นวัตถุลูกเมื่อคุณเพิ่มสคริปต์ใน ServerScriptService บริการ ServerScriptService เป็นพ่อและสคริปต์เป็นลูกใหม่

ตั้งค่าโครงการและสคริปต์

เพื่อสาธิตความสัมพันธ์ระหว่างพ่อและลูก คุณจะเริ่มต้นด้วยส่วนเดียวที่เปลี่ยนสีแล้วซ้ำสคริปต์ไปทั่วหลายส่วน

  1. สร้างส่วนใหม่และเปลี่ยนชื่อใหม่ บทเรียนนี้จะใช้ ColorPart

  2. คลิกขวาที่ ส่วน และเลือก สอดอัตโนมัติ > สคริปต์ใหม่ เปลี่ยนชื่อสคริปต์ ColorChanger

  3. คัดลอกและวางโค้ดด้านล่างไปยัง ColorChanger รุ่นนี้ของโค้ดเป็นเช่นเดียวกับที่คุณใช้ก่อน มันจะกำหนดส่วนเฉพาะให้กับตัวแปร

    เปลี่ยนสีของ ColorPart

    local Workspace = game:GetService("Workspace")
    local colorPart = Workspace.ColorPart
    colorPart.Color = Color3.fromRGB(50, 240, 255)

4.ทดสอบและตรวจสอบว่าส่วนจะเปลี่ยนสีตามที่ต้องการ

ความสัมพันธ์ระหว่างพ่อและลูก

พ่อ เป็นอะไรก็ได้ที่มีวัตถุ เช่น สคริปต์หรือชิ้นส่วนที่แนบไว้ด้านล่าง ทุกอย่างภายใต้พ่อเป็นบุตร ของมัน .ในตัวอย่างด้านล่าง ColorPart เป็นพ่อ และ ColorChanger เป็นลูก

ด้วยสคริปต์ปัจจุบันคุณสามารถเปลี่ยนสีของส่วนเดียว ชื่อ ColorPart ได้เท่านั้นเพื่อเปลี่ยนสีของส่วนใดส่วนหนึ่ง คุณสามารถออกแบบโค้ดเพื่อทำงานกับวัตถุพ่วงของสคริปต์ ไม่ว่าจะเรียกว่าอะไรก็ตามรหัส script.Parent จะขึ้นไปในระดับชั้นและค้นหาวัตถุที่สคริปต์แนบมา

ใช้สคริปต์.Parent

script.Parent สามารถกำหนดให้กับตัวแปรเช่นค่าอื่นใดด้วยสัญลักษณ์ =

  1. ในสคริปต์ให้แทนที่ส่วนที่มีชื่อด้วย script.Parent ตรวจสอบโค้ดด้านล่าง

    เปลี่ยนสีของวัตถุราก

    local colorPart = script.Parent
    colorPart.Color = Color3.fromRGB(50, 240, 255)

ทดสอบชิ้นส่วนที่ใช้ซ้ำ

ตอนนี้ตัวแปรจะอ้างอิงถึงส่วนใดก็ได้ที่สคริปต์ถูกแนบมา คุณสามารถทำสำเนาได้เท่าที่ต้องการ

  1. คลิกขวาที่ส่วนสีและเลือกซ้ำหรือใช้ปุ่มลัด CtrlD ( D ).สร้างอย่างน้อยสามชิ้นส่วนทั้งหมด

  2. เรียกเกมเพื่อตรวจสอบว่าทุกส่วนเปลี่ยนสี

สรุป

แทนที่จะอ้างอิงชิ้นส่วนโดยตรงตามชื่อและตำแหน่งเสมอ script.Parent สามารถใช้เป็นทางเลือกได้รหัสนั้นจะคว้าพ่อหรือวัตถุที่สคริปต์ติดอยู่ดังนั้นจึงทำให้สคริปต์ทำการแก้ไขได้การใช้รหัสเช่น script.Parent จะมีประโยชน์ในการทำให้โค้ดของคุณสามารถใช้ซ้ำได้ข้อเสียหนึ่งอย่างที่ต้องจำคือตอนนี้คุณมีสคริปต์หลายตัวที่ต้องการการอัปเดตหากต้องการเปลี่ยนโค้ด