SHOW:
|
|
- or go back to the newest paste.
1 | --//Local Script | |
2 | local UIS = game:GetService("UserInputService") | |
3 | - | local mouse = game.Players.LocalPlayer:GetMouse() |
3 | + | |
4 | ||
5 | --PC | |
6 | UIS.InputBegan:Connect(function(key, processed) | |
7 | if processed or debounce then return end | |
8 | debounce = true | |
9 | ||
10 | if key.UserInputType == Enum.UserInputType.Keyboard then | |
11 | if key.KeyCode == Enum.KeyCode.Z then | |
12 | game.ReplicatedStorage.Events.FireBall:FireServer(mouse.Hit.Position) | |
13 | end | |
14 | end | |
15 | wait(1) | |
16 | debounce = false | |
17 | end) | |
18 | ||
19 | --Mobile | |
20 | if UIS.TouchEnabled then | |
21 | UIS.TouchTap:Connect(function(position, processed) | |
22 | if processed or debounce then return end | |
23 | debounce = true | |
24 | ||
25 | game.ReplicatedStorage.Events.FireBall:FireServer(mouse.Hit.Position) | |
26 | wait(1) | |
27 | debounce = false | |
28 | end) | |
29 | end | |
30 | ||
31 | ||
32 | --//Server Script | |
33 | game.ReplicatedStorage.Events.FireBall.OnServerEvent:Connect(function(player, mousePos) | |
34 | local effects = game.ReplicatedStorage.FireBallEffects | |
35 | local fireBall = effects.FireBall:Clone() | |
36 | local explosion = effects.Explosion:Clone() | |
37 | local character = player.Character | |
38 | ||
39 | --Fireball | |
40 | fireBall.Position = character.HumanoidRootPart.Position | |
41 | fireBall.Parent = workspace | |
42 | local velocity = Instance.new("BodyVelocity", fireBall) | |
43 | velocity.Velocity = CFrame.new(fireBall.Position, mousePos).LookVector * 100 | |
44 | ||
45 | --Explosion | |
46 | fireBall.Touched:Connect(function(hit) | |
47 | if hit:IsDescendantOf(character) or hit:FindFirstChild("ParticleEmitter") then return end | |
48 | explosion.Position = fireBall.Position | |
49 | fireBall:Destroy() | |
50 | explosion.Parent = workspace | |
51 | ||
52 | if hit.Parent:FindFirstChild("Humanoid") then | |
53 | hit.Parent:FindFirstChild("Humanoid"):TakeDamage(20) | |
54 | end | |
55 | ||
56 | wait(1) | |
57 | explosion:Destroy() | |
58 | end) | |
59 | end) |