Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- [[ Name: Archangel ]] --
- -- [[ Converted: Melon’s converter ]] --
- -- [[ Description: I don’t own this converter and the credits are melon for making the convert and my world for the reanimate]] --
- -- [[ Do not use ANYTHING without crediting melon or myworld. ]] --
- --[[
- Hats:
- https://www.roblox.com/catalog/3033908130/International-Fedora-France
- https://www.roblox.com/catalog/3398308134/International-Fedora-Canada
- https://www.roblox.com/catalog/3033910400/International-Fedora-Germany
- https://www.roblox.com/catalog/3409612660/International-Fedora-USA
- https://www.roblox.com/catalog/5552252553/Kinetic-Staff
- https://www.roblox.com/catalog/4819740796/Robox
- ]]--
- game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text="Welcome to Melon's FE Scripts",Color=Color3.fromRGB(255, 255, 255)})
- game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text="You are using: Glock 17",Color=Color3.fromRGB(255, 255, 255)})
- player = game.Players.LocalPlayer
- cplayer = player.Character
- game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text="Status: Loading Reanimate...",Color=Color3.fromRGB(255, 255, 255)})
- loadstring(game:HttpGet("https://raw.githubusercontent.com/MelonsStuff/ReanimatesAndAlignCode/main/omgitskorn_reanimate1"))()
- for i,v in pairs (cplayer:GetChildren()) do
- if v:IsA("Accessory") then
- v.Handle.Massless = true
- v.Handle.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
- end
- end
- local function gp(parent, name, className)
- if typeof(parent) == "Instance" then
- for i, v in pairs(parent:GetChildren()) do
- if (v.Name == name) and v:IsA(className) then
- return v
- end
- end
- end
- return nil
- end
- game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text="Status: Aligning...",Color=Color3.fromRGB(255, 255, 255)})
- task.wait(0.5)
- local hat2 = gp(cplayer, "MeshPartAccessory", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Torso"]
- att2.Position = Vector3.new(0, 0, 0)
- att2.Rotation = Vector3.new(180, 0, -15)
- local hat2 = gp(cplayer, "InternationalFedora", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Left Arm"]
- att2.Position = Vector3.new(-0, -0.2, -0)
- att2.Rotation = Vector3.new(-90, 0, 90)
- local hat2 = gp(cplayer, "InternationalFedora1", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Right Arm"]
- att2.Position = Vector3.new(0, -0.2, -0)
- att2.Rotation = Vector3.new(-90, 0, -90)
- local hat2 = gp(cplayer, "Crystal Staff", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Right Arm"]
- att2.Position = Vector3.new(-0.35, -1.25, -0)
- att2.Rotation = Vector3.new(180, 245, -145)
- local hat2 = gp(cplayer, "InternationalFedora2", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Left Leg"]
- att2.Position = Vector3.new(-0, -0.2, -0)
- att2.Rotation = Vector3.new(-90, 0, 90)
- local hat2 = gp(cplayer, "InternationalFedora3", "Accessory")
- local handle2 = gp(hat2, "Handle", "BasePart")
- local att2 = gp(handle2, "att1_Handle", "Attachment")
- att2.Parent = cplayer["Right Leg"]
- att2.Position = Vector3.new(0, -0.2, -0)
- att2.Rotation = Vector3.new(-90, 0, -90)
- task.wait(1)
- game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text="Status: Loaded!",Color=Color3.fromRGB(255, 255, 255)})
- wait(2)
- local InputService=game:GetService("UserInputService")
- local Camera=game.Workspace.CurrentCamera
- local Player=game.Players.LocalPlayer
- local Character=Player.Character
- local Head=Character.Head
- local Torso=Character.Torso
- local RootPart=Character.HumanoidRootPart
- local RootJoint=RootPart.RootJoint
- local Neck=Torso.Neck
- Camera.FieldOfView=90
- Camera.CameraType="Scriptable"
- InputService.MouseBehavior = Enum.MouseBehavior.LockCenter
- local v3=Vector3.new
- local cf=CFrame.new
- local components=cf().components
- local inverse=cf().inverse
- local fromAxisAngle=CFrame.fromAxisAngle
- local atan,atan2=math.atan,math.atan2
- local acos=math.acos
- local function toAxisAngleFromVector(v)
- local z=v.z
- return z*z<0.99999 and v3(v.y,-v.x,0).unit*acos(-z) or v3()
- end
- local function AxisAngleLookOrientation(c,v,t)--CFrame,Vector,Tween
- local c=c-c.p
- local rv=(inverse(c)*v).unit
- local rz=rv.z
- return rz*rz<0.99999 and c*fromAxisAngle(v3(rv.y,-rv.x,0),acos(-rz)*(t or 1)) or c
- end
- local function AxisAngleLookNew(v,t)--CFrame,Vector,Tween
- local rv=v.unit
- local rz=rv.z
- return rz*rz<0.99999 and fromAxisAngle(v3(rv.y,-rv.x,0),acos(-rz)*(t or 1)) or cf()
- end
- local function AxisAngleLook(c,v,t)--CFrame,Vector,Tween
- local rv=(inverse(c)*v).unit
- local rz=rv.z
- return rz*rz<0.99999 and c*fromAxisAngle(v3(rv.y,-rv.x,0),acos(-rz)*(t or 1)) or c
- end
- local Sensitivity=0.005
- local CameraDirection=Vector3.new(0,0,1)
- local function EulerAnglesYX(l)
- local x,z=l.x,l.z
- return atan(l.y/(x*x+z*z)^0.5),-atan2(x,-z)
- end
- local function AnglesXY(l)
- local z=l.z
- return atan2(l.y,-z),-atan2(l.x,-z)
- end
- local function MouseMoved(Input)
- if Input.UserInputType==Enum.UserInputType.MouseMovement then
- local dx,dy=Input.Delta.x*Sensitivity,Input.Delta.y*Sensitivity
- local m2=dx*dx+dy*dy
- if m2>0 then
- CameraDirection=(AxisAngleLookOrientation(RootPart.CFrame,CameraDirection)*fromAxisAngle(v3(-dy,-dx,0),m2^0.5)).lookVector
- end
- local RootOrientation=RootPart.CFrame-RootPart.Position
- local RelativeDirection=RootOrientation:inverse()*CameraDirection
- local AngX,AngY=AnglesXY(RelativeDirection)--RootOrientation:inverse()*
- if AngX<-1.57*11/12 then
- local y,z,c,s=RelativeDirection.y,RelativeDirection.z,math.cos(-1.57*11/12-AngX),-math.sin(-1.57*11/12-AngX)
- z,y=z*c-y*s,z*s+y*c
- CameraDirection=RootOrientation*v3(RelativeDirection.x<0 and -(1-y*y-z*z)^0.5 or (1-y*y-z*z)^0.5,y,z)
- elseif AngX>1.57*11/12 then
- local y,z,c,s=RelativeDirection.y,RelativeDirection.z,math.cos(1.57*11/12-AngX),-math.sin(1.57*11/12-AngX)
- z,y=z*c-y*s,z*s+y*c
- CameraDirection=RootOrientation*v3(RelativeDirection.x<0 and -(1-y*y-z*z)^0.5 or (1-y*y-z*z)^0.5,y,z)
- end
- end
- end
- local Mouse=Player:GetMouse()
- local Zoom=-0.5
- Mouse.KeyDown:connect(function(k)
- if k=="e" then
- Zoom=-0.5
- elseif k=="q" then
- Zoom=-0.5
- end
- end)
- InputService.InputChanged:connect(MouseMoved)
- Neck.C1=cf()
- local _
- local DirectionBound=3.14159/3
- local CurrentAngY=0
- local function CameraUpdate()
- Camera.CameraType="Scriptable"
- local cx,cz=CameraDirection.x,CameraDirection.z
- local rvx,rvz=RootPart.Velocity.x,RootPart.Velocity.z
- if rvx*rvx+rvz*rvz>4 and cx*rvx+cz*rvz<-0.5*(cx*cx+cz*cz)^0.5*(rvx*rvx+rvz*rvz)^0.5 then
- DirectionBound=math.min(DirectionBound*0.9,math.abs(CurrentAngY*0.9))
- else
- DirectionBound=DirectionBound*0.1+3.14159/3*0.9
- end
- local AngX,AngY=EulerAnglesYX((RootPart.CFrame-RootPart.Position):inverse()*CameraDirection)
- if AngY>DirectionBound then
- RootPart.CFrame=RootPart.CFrame*CFrame.Angles(0,AngY-DirectionBound,0)
- elseif AngY<-DirectionBound then
- RootPart.CFrame=RootPart.CFrame*CFrame.Angles(0,AngY+DirectionBound,0)
- end
- _,CurrentAngY=EulerAnglesYX((RootPart.CFrame-RootPart.Position):inverse()*CameraDirection)
- local CameraOrientation=AxisAngleLookNew((RootPart.CFrame-RootPart.Position):inverse()*CameraDirection,1)
- Neck.C0=CFrame.new(0,1,0)*CameraOrientation*CFrame.new(0,0.5,0)
- local PreCam=AxisAngleLook(RootPart.CFrame*cf(0,1,0),RootPart.CFrame*v3(0,1,0)+CameraDirection)*CFrame.new(0,0.825,0)
- if Zoom==8 then
- local Part,Position=Workspace:findPartOnRay(Ray.new(PreCam.p,PreCam.lookVector*-8),Character)
- Camera.CoordinateFrame=PreCam*CFrame.new(0,0,(Position-PreCam.p).magnitude)
- else
- Camera.CoordinateFrame=PreCam*CFrame.new(0,0,Zoom)
- end
- end
- game:GetService("RunService").RenderStepped:connect(CameraUpdate)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement