Чтобы добавить затемнение экрана при выборе убийцы в вашем коде Roblox, можно создать GUI с полупрозрачным черным фоном, который будет отображаться на экране. Вот шаги, как вы можете это сделать:
1. Создайте ScreenGui с ImageLabel, чтобы затемнить экран.
2. Включите затемнение экрана на время выбора убийцы.
Вот пример, как можно добавить эту функциональность в ваш код:
local module = require(script.RoundModule)
local ActivateDoors = require(script.Door)
local ActivateKeys = require(script.Key)
local map = nil
local item = game.Workspace.Knife:Clone()
local min_players = 1
-- Функция для затемнения экрана
local function darkenScreen()
local player = game.Players.LocalPlayer
local screenGui = Instance.new("ScreenGui")
local darkOverlay = Instance.new("Frame")
screenGui.Parent = player.PlayerGui
darkOverlay.Size = UDim2.new(1, 0, 1, 0)
darkOverlay.BackgroundColor3 = Color3.new(0, 0, 0)
darkOverlay.BackgroundTransparency = 0.5 -- Полупрозрачный
darkOverlay.Parent = screenGui
wait(2) -- Время, на которое затемним экран
screenGui:Destroy() -- Удаляем затемнение
end
while true do
module.CountDown(25, "Intermission")
if game.Players.NumPlayers > 0 then
map = game.ReplicatedStorage.Maps.Map:Clone()
map.Parent = workspace
ActivateDoors(map)
ActivateKeys(map)
-- Выбор убийцы
local killer = module.ChooseKiller()
workspace.Select:Play()
game.ReplicatedStorage.Status.Value = "Killer is " .. killer.Name
wait(1)
-- Вызов функции затемнения экрана
darkenScreen()
-- Скин
module.DressUp(killer, "Skin")
killer.Team = game.Teams.Killer
item.Parent = killer.Backpack
for index, player in pairs(game.Players:GetPlayers()) do
if player ~= killer then
player.Team = game.Teams.Playing
player.Character:PivotTo(map.PlayerSpawn.CFrame)
else
player.Character:PivotTo(map.KillerSpawn.CFrame)
end
end
game.ReplicatedStorage.GameInProgress.Value = true
local result = module.Round(240)
game.ReplicatedStorage.GameInProgress.Value = false
for index, player in pairs(game.Players:GetPlayers()) do
if player ~= killer then
if result == "killer lose" then
player.Stats.Money.Value += 100
end
else
if result == "killer won" then
player.Stats.Money.Value += 150
end
end
player.Team = game.Teams.Lobby
player:LoadCharacter()
end
map:Destroy()
wait(1)
else
game.ReplicatedStorage.Status.Value = "not enough players!(1/2)"
wait(3)
end
end