Hi, I am working on a game based on an famous anime attack on titan, I am currently making the 3DMG(Three Dimensional Maneuver Gear) or the ODMG(Omni-Directional Mobility Gear )
it is a device which gives you the ability to fly in the air. It is enabled by using a grappling device, allowing the user to move around the map quickly and it is important for slaying titans in this game.
How does it works?
- The Gas emitter, blades and the grapple launchers are the main components of a 3DMG
.
-
Gas Emitter:-
It is placed on the lower torso of the user, It spreads a special type of gas that creates a force behind the user and pushes his body towards an aimed position. -
Grapple Launchers :-
It releases a rope made of hard structures, the end of the rope contains a grapple which binds to the surface of the objects that’s aimed, it is placed on the both sides of the lower torso of the user, It is used to create a direction for the gas emitter to push the user toward. -
Blades :-
The Blades are strong slicers used to slice a titan’s nape, It is the control for the gas emitter, when a cetain type of lever(which is located in the handle of a blade) is pressed it allows the gas to be spread.
What I’ve Tried so far :-
I’ve managed to create the grapple rope by using a beam and by using a texture for the effect.
Script :-
local Mouse = game.Players.LocalPlayer:GetMouse()
local Character = script.Parent.Parent
local HookAttachment = Instance.new("Attachment", Character.Hooks.LeftHook.leftgrapple)
game:GetService("UserInputService").InputBegan:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.E then
local HookPosition = Mouse.Hit.Position
local MAX_DISTANCE = 10
local Part = Instance.new("Part")
Part.Name = "HookPosition"
Part.Size = Vector3.new(1, 1, 1)
Part.Position = HookPosition
Part.Anchored = true
Part.Parent = workspace
Part.Transparency = 0
local Attachment0 = Instance.new("Attachment", Part)
local direction = (Part.Position - HookAttachment.Position).Unit
local newpostion = Vector3.new(HookAttachment.Position.X + MAX_DISTANCE, HookAttachment.Position.Y + MAX_DISTANCE, HookAttachment.Position.Z + MAX_DISTANCE) * direction
local Rope = game.ReplicatedStorage.GrappleRope:Clone()
Rope.Parent = workspace
Rope.Name = "Rope"
Rope.Beam.Attachment0 = HookAttachment
Rope.Beam.Attachment1 = Attachment0
if direction.X > MAX_DISTANCE and direction.Y > MAX_DISTANCE and direction.Z > MAX_DISTANCE then
Part.Position = newpostion
end
wait(0.5)
Part:Destroy()
Rope:Destroy()
end
end
What I need Help for? :-
I need help for the moving of the character of the user towards the aimed position.(I have searched in google and I watched some sites, they all refer in using body velocity but I don’t know about the physics stuff in roblox studio)
If anyone is having a Idea or suggestion, please share.`