--//Local Script local UIS = game:GetService("UserInputService") local mouse = game.Players.LocalPlayer:GetMouse() local debounce = false
--PC UIS.InputBegan:Connect(function(key, processed) if processed or debounce then return end debounce = true
if key.UserInputType == Enum.UserInputType.Keyboard then if key.KeyCode == Enum.KeyCode.Z then game.ReplicatedStorage.Events.FireBall:FireServer(mouse.Hit.Position) end end wait(1) debounce = false
end)
--Mobile if UIS.TouchEnabled then UIS.TouchTap:Connect(function(position, processed) if processed or debounce then return end debounce = true
game.ReplicatedStorage.Events.FireBall:FireServer(mouse.Hit.Position) wait(1) debounce = false end)
end
--//Server Script game.ReplicatedStorage.Events.FireBall.OnServerEvent:Connect(function(player, mousePos) local effects = game.ReplicatedStorage.FireBallEffects local fireBall = effects.FireBall:Clone() local explosion = effects.Explosion:Clone() local character = player.Character
--Fireball fireBall.Position = character.HumanoidRootPart.Position fireBall.Parent = workspace local velocity = Instance.new("BodyVelocity", fireBall) velocity.Velocity = CFrame.new(fireBall.Position, mousePos).LookVector * 100 --Explosion fireBall.Touched:Connect(function(hit) if hit:IsDescendantOf(character) or hit:FindFirstChild("ParticleEmitter") then return end explosion.Position = fireBall.Position fireBall:Destroy() explosion.Parent = workspace if hit.Parent:FindFirstChild("Humanoid") then hit.Parent:FindFirstChild("Humanoid"):TakeDamage(20) end wait(1) explosion:Destroy() end)
end)