local ReplicatedStorage = game:GetService("ReplicatedStorage")
local CombatEvent = ReplicatedStorage:WaitForChild("CombatEvent")
print("⚔️ Скрипт Боя (с Маной) загружен")
-- === НАСТРОЙКА ЦЕНЫ ===
local MANA_COST = 20
CombatEvent.OnServerEvent:Connect(function(attacker, targetCharacter, victimAnimId)
print("Сигнал боя: " .. attacker.Name .. " -> " .. tostring(targetCharacter))
if not targetCharacter then return end
local victimHumanoid = targetCharacter:FindFirstChild("Humanoid")
if not victimHumanoid then return end
if targetCharacter == attacker.Character then return end
-- [СПИСАНИЕ МАНЫ У АТАКУЮЩЕГО]
local char = attacker.Character
if char then
local currentMana = char:GetAttribute("Mana") or 0
if currentMana < MANA_COST then return end -- Отмена, если маны нет
char:SetAttribute("Mana", currentMana - MANA_COST)
end
-- Урон и анимация
local damage = victimHumanoid.MaxHealth * 0.15
victimHumanoid:TakeDamage(damage)
if victimAnimId and victimAnimId ~= "rbxassetid://0" then
local animator = victimHumanoid:FindFirstChild("Animator") or Instance.new("Animator", victimHumanoid)
pcall(function()
local anim = Instance.new("Animation"); anim.AnimationId = victimAnimId
local track = animator:LoadAnimation(anim); track.Priority = Enum.AnimationPriority.Action; track:Play()
end)
end
end)