ฟังก์ชันสามารถมีพารามิเตอร์มากกว่าหนึ่งได้จริง ทำให้สามารถส่งอาร์กิวเมนต์หลายอัน (ชิ้นของข้อมูล) เข้าสู่ฟังก์ชันได้ตัวอย่างเกมอาจกำลังกำหนดผู้เล่นให้กับทีมที่นี่คุณจะต้องการพารามิเตอร์ที่จะส่งในผู้เล่นและพารามิเตอร์ที่จะส่งในทีมที่จะกำหนดให้พวกเขา
เพื่อกำหนดพารามิเตอร์หลายอย่าง แยกชื่อพารามิเตอร์ด้วยจุลภาค
local function assignTeam(playerName, whichTeam)
end
ฝึกฝนด้วยพารามิเตอร์หลายอย่าง
เพื่อฝึกการทำงานกับพารามิเตอร์หลายอย่าง สร้างฟังก์ชันที่จัดเรียงวัตถุในเกมของคุณเป็นขยะหรือรีไซเคิล
- พารามิเตอร์ ครั้งแรก จะเป็นขยะซึ่งจะถูกทําลาย
- พารามิเตอร์ที่ ที่สอง จะใช้สำหรับการรีไซเคิลซึ่งจะทำให้เงางามและใหม่อีกครั้ง
ตั้งฟังก์ชัน
ตั้งฟังก์ชันครั้งแรกด้วยพารามิเตอร์หลายอย่างแล้วทดสอบการทำงานของคุณ
- สร้างสคริปต์ใหม่ใน ServerScriptService 2. เขียนฟังก์ชันใหม่ชื่อ sortGarbage() ด้วยพารามิเตอร์สองตัว trash และ recyclable
- ที่ด้านล่างของสคริปต์เรียกฟังก์ชัน
- ตรวจสอบโค้ดที่ผ่านมาอย่างรวดเร็วโดยใช้คำสั่งพิมพ์ภายในฟังก์ชัน
local function sortGarbage(trash, recyclable)
print("garbage test")
end
sortGarbage()
ใช้พารามิเตอร์หลายอย่าง
ภายในฟังก์ชัน พารามิเตอร์สามารถใช้ได้คล้ายกับตัวแปรในตัวอย่างนี้ trash ถูกทําลายแล้วจากนั้น recyclable จะได้รับประกายไฟโดยใช้ตัวเร่งอนุภาค
ลบคำสั่งพิมพ์และใช้ Instance.new() เพื่อสร้างส่วนปล่อยอนุภาคใหม่ตามที่แสดง ซึ่งจะใช้เพื่อให้รีไซเคิลมีประกาย
local function sortGarbage(trash,recyclable)-- สร้างส่งผู้ปล่อยอนุภาคใหม่local sparkle = Instance.new("ParticleEmitter")endsortGarbage()ทำลายสิ่งที่ส่งผ่านผ่านพารามิเตอร์ขยะเหมือนกับว่าขยะเป็นตัวแปรอื่น ๆ
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- ทำลายขยะtrash:Destroy()endsortGarbage()ผู้ปกครองตัวปล่อยอนุภาคให้กับผู้รีไซเคิล
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- ทำลายขยะและทำให้ของรีไซเคิลเงางามtrash:Destroy()sparkle.Parent = recyclableendsortGarbage()
ส่งมูลค่าผ่านพารามิเตอร์
ถึงเวลาที่ต้องนำขยะออกแล้ว! ด้วยพารามิเตอร์ที่กำหนดไว้แล้ว ฟังก์ชันพร้อมที่จะรับข้อมูลแล้ว
สร้างสองวัตถุโดยใช้ชิ้นส่วนพื้นฐานเพื่อแทนที่สิ่งที่คุณอาจโยนทิ้งหนึ่งควรเป็นขยะและหนึ่งรีไซเคิลได้ตรวจสอบให้แน่ใจว่ามีชื่อที่ไม่ซ้ำกัน
ที่ด้านบนของสคริปต์ เพิ่มตัวแปรสำหรับวัตถุที่คุณสร้าง ซึ่งจะเป็นอาร์กิวเมนต์ของคุณ
local Workspace = game:GetService("Workspace")local cementBlock = Workspace.Cementlocal glassBottle = Workspace.GlassBottleที่ด้านล่างของสคริปต์ที่ sortGarbage() ถูกเรียก ให้ส่งในแต่ละอาร์กิวเมนต์
local Workspace = game:GetService("Workspace")-- วัตถุที่จะใช้เป็นอาร์กิวเมนต์local cementBlock = Workspace.CementBlocklocal glassBottle = Workspace.GlassBottle--ทำลายขยะและทำความสะอาดของรีไซเคิลlocal function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")trash:Destroy()sparkle.Parent = recyclableend-- ส่งอาร์กิวเมนต์ผ่านsortGarbage(cementBlock, glassBottle)ทดสอบโค้ดของคุณ วัตถุที่ส่งในครั้งแรกจะถูกทําลาย วัตถุที่สองจะส่องแสง
ลำดับพารามิเตอร์
โดยปกติแล้วอาร์กิวเมนต์จะตรงกับพารามิเตอร์ตามลําดับที่พวกเขาถูกส่งตัวอย่างเช่น อาร์กิวเมนต์แรกจะใช้สำหรับพารามิเตอร์แรกอาร์กิวเมนต์ที่สองใช้สำหรับที่สอง
ในตัวอย่างของเรามีพารามิเตอร์สองตัว อะไรก็ตามที่ได้รับในครั้งแรกจะเป็นขยะเสมอ และอันที่สองจะเป็นขยะได้เสมอ
--ทำลายขยะและทำความสะอาดของรีไซเคิล
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
--ไปตามลำดับ ปูนซีเมนต์ถูกทำลายและขวดแก้วรีไซเคิล
sortGarbage(cementBlock, glassBottle)
--ขวดแก้วถูกทำลายและบล็อกซีเมนต์ถูกรีไซเคิล
sortGarbage(glassBottle, cementBlock)
หากคุณส่งเพียงอาร์กิวเมนต์เดียวเท่านั้น อาร์กิวเมนต์นั้นจะถูกปฏิบัติเป็นขยะหากคุณส่งอาร์กิวเมนต์สามอัน ไม่มีอะไรเกิดขึ้นกับอาร์กิวเมนต์ที่สามเพราะไม่มีพารามิเตอร์ที่สาม
สรุป
พารามิเตอร์เป็นตัวชั่วคราวที่ผ่านมาได้ในการส่งค่าไปยังฟังก์ชันอาร์กิวเมนต์คือค่าที่ได้รับผ่านตัวแทนที่ว่างเปล่าคุณสามารถสร้างพารามิเตอร์หลายอันโดยแยกชื่อของพวกเขาด้วยจุลภาคเมื่อเรียกฟังก์ชัน ลำดับที่ค่าถูกส่งไปยังฟังก์ชันที่ได้รับจะกำหนดว่าพารามิเตอร์ใดที่ใช้