local player = game.Players.LocalPlayer local mouse = player:GetMouse() -- Функция для создания и запуска огненного шара local function throwFireball() local fireball = Instance.new("Part") fireball.Size = Vector3.new(1, 1, 1) fireball.Shape = Enum.PartType.Ball fireball.Material = Enum.Material.Neon fireball.Position = player.Character.Head.Position + (player.Character.Head.CFrame.LookVector * 3) fireball.Anchored = false fireball.CanCollide = true fireball.Parent = workspace -- Функция для создания радужного эффекта local function updateColor() while fireball do for i = 0, 1, 0.1 do local color = Color3.fromHSV(i, 1, 1) -- Генерация радужного цвета fireball.BrickColor = BrickColor.new(color) wait(0.1) -- Задержка между изменениями цвета end end end -- Запускаем обновление цвета в отдельном потоке coroutine.wrap(updateColor)() -- Добавляем физику к огненному шару local bodyVelocity = Instance.new("BodyVelocity") bodyVelocity.Velocity = (mouse.Hit.p - fireball.Position).unit * 50 -- скорость полета bodyVelocity.MaxForce = Vector3.new(4000, 4000, 4000) bodyVelocity.Parent = fireball -- Удаляем огненный шар через 5 секунд game:GetService("Debris"):AddItem(fireball, 5) end -- Привязываем функцию к событию нажатия клавиши mouse.Button1Down:Connect(throwFireball)