เรียนรู้
Engine Class
Teams
ไม่สามารถสร้าง
บริการ

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


สรุป
วิธีการ
RebalanceTeams():()
เลิกใช้แล้ว
สมาชิกที่ได้รับทอด
ตัวอย่างโค้ด
การปรับสมดุลทีมอย่างง่าย
local Teams = game:GetService("Teams")
-- สร้างทีมสองทีม
local redTeam = Instance.new("Team")
redTeam.TeamColor = BrickColor.new("Bright red")
redTeam.AutoAssignable = true
redTeam.Name = "ทีมแดง"
redTeam.Parent = Teams
local blueTeam = Instance.new("Team")
blueTeam.TeamColor = BrickColor.new("Bright blue")
blueTeam.AutoAssignable = true
blueTeam.Name = "ทีมฟ้า"
blueTeam.Parent = Teams
-- เริ่มนับจำนวนผู้เล่นในแต่ละทีม
local numberRed, numberBlue = 0, 0
local function playerAdded(team)
-- เพิ่มจำนวนทีมขึ้น 1
if team == redTeam then
numberRed = numberRed + 1
elseif team == blueTeam then
numberBlue = numberBlue + 1
end
end
local function playerRemoved(team)
-- ลดจำนวนทีมลง 1
if team == redTeam then
numberRed = numberRed - 1
elseif team == blueTeam then
numberBlue = numberBlue - 1
end
-- ตรวจสอบว่าทีมต่างกันเกินไปหรือไม่
local bigTeam, smallTeam = nil, nil
if (numberRed - numberBlue) > 2 then
bigTeam = redTeam
smallTeam = blueTeam
elseif (numberBlue - numberRed) > 2 then
bigTeam = blueTeam
smallTeam = redTeam
end
if bigTeam then
-- เลือกผู้เล่นแบบสุ่ม
local playerList = bigTeam:GetPlayers()
local player = playerList[math.random(1, #playerList)]
-- ตรวจสอบว่าผู้เล่นมีอยู่จริง
if player then
-- เปลี่ยนทีมของผู้เล่น
player.TeamColor = smallTeam.TeamColor
-- รีสปawn ผู้เล่น
player:LoadCharacterAsync()
end
end
end
-- ฟังการเพิ่ม / ลบผู้เล่น
blueTeam.PlayerAdded:Connect(function(_player)
playerAdded(blueTeam)
end)
blueTeam.PlayerRemoved:Connect(function(_player)
playerRemoved(blueTeam)
end)
redTeam.PlayerAdded:Connect(function(_player)
playerAdded(redTeam)
end)
redTeam.PlayerRemoved:Connect(function(_player)
playerRemoved(redTeam)
end)
ประตูทีมเท่านั้น
local Players = game:GetService("Players")
local door = Instance.new("Part")
door.Anchored = true
door.Size = Vector3.new(7, 10, 1)
door.Position = Vector3.new(0, 5, 0)
door.Parent = workspace
local debounce = false
door.Touched:Connect(function(hit)
if not debounce then
debounce = true
if hit then
local player = Players:GetPlayerFromCharacter(hit.Parent)
if player and player.TeamColor == BrickColor.new("Bright red") then
door.Transparency = 0.5
door.CanCollide = false
task.wait(3)
door.Transparency = 0
door.CanCollide = true
end
end
task.wait(0.5)
debounce = false
end
end)
การตรวจสอบการฆ่าสมาชิกทีม
local Players = game:GetService("Players")
function checkTeamKill(playerAttack, playerVictim)
if playerAttack.Team ~= playerVictim.Team or playerAttack.Neutral or playerVictim.Neutral then
return false
end
return true
end
local players = Players:GetPlayers()
checkTeamKill(players[1], players[2])

เอกสารอ้างอิงเกี่ยวกับ API
วิธีการ
GetTeams
ความสามารถ: Players
Teams:GetTeams():{Team}
ส่งค่ากลับ
ตัวอย่างโค้ด
ทีม GetTeams
local Teams = game:GetService("Teams")
local teams = Teams:GetTeams()
for _, team in pairs(teams) do
local players = team:GetPlayers()
print("ทีม", team.Name, "มี", #players, "ผู้เล่น")
end

RebalanceTeams
เลิกใช้แล้ว

©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ