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)