Урок Roblox StudioЗанятие 2 / 8

Командные зоны

Создать две команды

Командные зоны
Иллюстрация к теме занятия

Цель урока

Научиться создавать команды и назначать игрока на сервере.

Подготовка

Teams → два Team: Blue и Red, у обоих AutoAssignable=false. Workspace → два Part: BlueZone и RedZone (Anchored=true). ServerScriptService → Script TeamZones.

Пошаговая работа

  1. Создай две команды и две площадки.
  2. Добавь Script и запусти тест с двумя игроками.
  3. Наступи на площадку: проверь значение Team в свойствах игрока.

Код Luau

В примерах с двумя скриптами помести части кода в указанные разные объекты.

local Teams = game:GetService("Teams")
local Players = game:GetService("Players")
local zones = {
    BlueZone = Teams:WaitForChild("Blue"),
    RedZone = Teams:WaitForChild("Red"),
}
local cooldown = {}
for zoneName, team in pairs(zones) do
    local zone = workspace:WaitForChild(zoneName)
    zone.Touched:Connect(function(hit)
        local character = hit:FindFirstAncestorOfClass("Model")
        local player = character and Players:GetPlayerFromCharacter(character)
        if not player or cooldown[player] then return end
        cooldown[player] = true
        player.Team = team
        player.Neutral = false
        task.delay(1, function() cooldown[player] = nil end)
    end)
end
Players.PlayerRemoving:Connect(function(player) cooldown[player] = nil end)

Проверяем результат

Команда меняется только при касании соответствующей зоны; состояние видно на сервере.

Типичная ошибка

Названия BlueZone, RedZone, Blue и Red должны совпадать с Explorer.

Дополнительное задание

Добавь командный цвет в GUI и проверь, что выбор одного игрока не влияет на другого.

Перед публикацией: протестируй код в Roblox Studio с двумя игроками и добавь собственные скриншоты редактора.

Проверь свою работу

Перед тестом убедись, что ты выполнил практику самостоятельно.

Эти отметки — личная памятка, они не влияют на звёзды.

Проверь себя

Ответь на вопросы урока. Успешный тест даёт одну звезду в личном кабинете.

⭐ Проверь свои знания

5 вопросов по теме урока. За 4 правильных ответа получишь звезду. Повторные попытки разрешены.

1. Где должно окончательно назначаться свойство player.Team?
2. Что произойдёт, если два игрока коснутся красной зоны?
3. Как корректно сравнить команду игрока?
4. Что делать с повторными касаниями зоны Touched?
5. Для чего полезны две тестовые учётные записи?