So, someone DM me in Discord, and I answered. Him was askin’ me to do a Tornado Tool system, it was simple so I accepted.
I scripted almost everything, did animations but… I don’t know how to do something…
Here is how it is right now:
https://gyazo.com/be9abb03bfba08070e862f4444919aff
Here is the Script:
local Tornado = script.Parent
local Animations = Tornado.Animations
local TornadoIdle = Animations.TornadoIdle
local TornadoUse = Animations.TornadoUse
Debounce = false
local Track01
Tornado.Equipped:Connect(function()
Track01 = Tornado.Parent.Humanoid:LoadAnimation(TornadoIdle)
Track01.Looped = true
Track01:Play()
end)
Tornado.Unequipped:Connect(function()
if Track01 then
Track01:Stop()
end
end)
local Track02
Tornado.Activated:Connect(function()
if Debounce == false then
Debounce = true
Track02 = Tornado.Parent.Humanoid:LoadAnimation(TornadoUse)
Track02.Looped = false
Tornado.Handle.Transparency = 0
Track02:Play()
wait(1.28)
Tornado.Handle.Transparency = 1
wait(11.72)
Debounce = false
end
end)
I need help with a thing. Him said: ‘tornado that shoots where the mouse is pointing ’. I need help just with that, the other things I know how to do.
Tsu Washington / SovietFurryBruh.
I think you will need to get the mouse’s position in 3d space , Here’s an article
I’m going to see if I can script it myself
1 Like
Okay, I’ll try to do that. I’ll need to use a LocalScript to fire a event, right?
Yeah, you will need to send the mouse.hit variable over the remote event and then use it to send the tornado in the players mouse direction
1 Like
Okay, thanks for the help buddy.
No problem! Glad to help!
(If you need anymore help just ask)
1 Like
Sooooo, I did what you said. And it kinda works… ‘Kinda’.
https://gyazo.com/d7dd6842de1defd0ba54fb26bd7fc1f9
I did this in the script:
local TornadoClone = Tornado.Handle:Clone()
TornadoClone.Parent = game.Workspace
TornadoClone.Name = 'TornadoHitPart'
local BodyForce = Instance.new('BodyForce', TornadoClone)
BodyForce.Force = Vector3.new(MousePos, MousePos, MousePos)
realYumiYumee:
new
Hmmm So the mousePos is the variable sent over through the remote event?
1 Like
Here is the RemoteEvent script:
local Tornado = script.Parent
local TornadoEvent = Tornado:WaitForChild('TornadoEvent')
local Player = game:GetService('Players').LocalPlayer
local Mouse = Player:GetMouse()
Tornado.Activated:Connect(function()
TornadoEvent:FireServer(Mouse.Hit.Position)
end)
I already tried Mouse.Hit
too.
realYumiYumee:
Mouse
Can I see the server side script as well. I think that will help me see the issue
1 Like
Here:
local Tornado = script.Parent
local TornadoEvent = Tornado:WaitForChild('TornadoEvent')
local Animations = Tornado.Animations
local TornadoIdle = Animations.TornadoIdle
local TornadoUse = Animations.TornadoUse
local Tornado02 = game:GetService('ReplicatedStorage').Tornado
Debounce = false
local Track01
TornadoEvent.OnServerEvent:Connect(function(Player, MousePos)
local Track02
if Debounce == false then
Debounce = true
Track02 = Tornado.Parent.Humanoid:LoadAnimation(TornadoUse)
Track02.Looped = false
Tornado.Handle.Transparency = 0
Track02:Play()
wait(1.28)
local TornadoClone = Tornado.Handle:Clone()
TornadoClone.Parent = game.Workspace
TornadoClone.Name = 'TornadoHitPart'
local BodyForce = Instance.new('BodyForce', TornadoClone)
BodyForce.Force = Vector3.new(MousePos, MousePos, MousePos)
Tornado.Handle.Transparency = 1
wait(11.72)
Debounce = false
end
end)
Tornado.Equipped:Connect(function()
Track01 = Tornado.Parent.Humanoid:LoadAnimation(TornadoIdle)
Track01.Looped = true
Track01:Play()
end)
Tornado.Unequipped:Connect(function()
if Track01 then
Track01:Stop()
end
end)
I’ll do some coffee right now, so, maybe it take some time to I answer.
1 Like
Maybe try this: ```
BodyForce.Force = Vector3.new(MousePos.X, MousePos.Y, MousePos.Z)
1 Like
Ohhhhhh, thanks for helping me, I’ll test this right now.
Yoooo, that worked. Thanks for helping me a lot with that.
Oh wow, No problem!
(I really didn’t think that would work!)
1 Like
Lol. [ characteeerrrsss thiiiinnngggg. ]
1 Like