нейросеть подсказала и помогла написать скрипт, чтобы игроки в роли Милиция могли выдавать штрафы другим игрокам через команду. кто знает подскажите. вот текст скрипта -- Количество монет, которое можно выписать на штраф local maxFineAmount = 300
-- Функция, которая применяет штраф local function applyFine(recipient, fineAmount) if recipient.Money then local currentMoney = recipient.Money .Value local newMoney = currentMoney - fineAmount if newMoney >= 0 then recipient.Money .Value = newMoney local fineMessage = "Вы нарушили правила и получили штраф в сумме " .. fineAmount .. " монет." local messagePart = Instance.new ("TextLabel") messagePart.Parent = game.CoreGui messagePart.Text = fineMessage messagePart.TextSize = 14 messagePart.BackgroundColor3 = Color3.fromRGB(255, 0, 0) messagePart.Position = UDim2.new (0, 0, 1, 0) wait(2) -- Ожидание 2 секунд перед удалением сообщения messagePart:Destroy() else print("Штраф слишком большой!") end else print("Игрок не имеет монет") end end
-- Функция для выполнения штрафов local function applyFines() if game.Players.LocalPlayer and game.Players.LocalPlayer.Character and game.Players.LocalPlayer.Character:FindFirstChild("Humanoid") then local humanoid = game.Players.LocalPlayer.Character:FindFirstChild("Humanoid") for i, child in pairs(humanoid:GetPlayingAnimationTracks()) do if child:IsA("AnimationTrack") then local track = child local animation = track.Animation if animation:IsA("Animation") and animation.Name == "Attack" then -- Изменить название анимации "Attack" на название анимации, которая используется для атак local animationInfo = animation:GetInfo() local target = animationInfo.Target if target and target.Parent and target.Parent:FindFirstChild("Humanoid") then local targetHumanoid = target.Parent:FindFirstChild("Humanoid") if targetHumanoid then local fineAmount = math.random(100, maxFineAmount) -- Установить случайную сумму штрафа в диапазоне от 100 до 300 монет applyFine(targetHumanoid, fineAmount) end end end end end end end
local maxFineAmount = 300
-- Функция, которая применяет штраф
local function applyFine(recipient, fineAmount)
if recipient.Money then
local currentMoney = recipient.Money .Value
local newMoney = currentMoney - fineAmount
if newMoney >= 0 then
recipient.Money .Value = newMoney
local fineMessage = "Вы нарушили правила и получили штраф в сумме " .. fineAmount .. " монет."
local messagePart = Instance.new ("TextLabel")
messagePart.Parent = game.CoreGui
messagePart.Text = fineMessage
messagePart.TextSize = 14
messagePart.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
messagePart.Position = UDim2.new (0, 0, 1, 0)
wait(2) -- Ожидание 2 секунд перед удалением сообщения
messagePart:Destroy()
else
print("Штраф слишком большой!")
end
else
print("Игрок не имеет монет")
end
end
-- Функция для выполнения штрафов
local function applyFines()
if game.Players.LocalPlayer and game.Players.LocalPlayer.Character and game.Players.LocalPlayer.Character:FindFirstChild("Humanoid") then
local humanoid = game.Players.LocalPlayer.Character:FindFirstChild("Humanoid")
for i, child in pairs(humanoid:GetPlayingAnimationTracks()) do
if child:IsA("AnimationTrack") then
local track = child
local animation = track.Animation
if animation:IsA("Animation") and animation.Name == "Attack" then -- Изменить название анимации "Attack" на название анимации, которая используется для атак
local animationInfo = animation:GetInfo()
local target = animationInfo.Target
if target and target.Parent and target.Parent:FindFirstChild("Humanoid") then
local targetHumanoid = target.Parent:FindFirstChild("Humanoid")
if targetHumanoid then
local fineAmount = math.random(100, maxFineAmount) -- Установить случайную сумму штрафа в диапазоне от 100 до 300 монет
applyFine(targetHumanoid, fineAmount)
end
end
end
end
end
end
end
--