if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end local Player,Mouse,mouse,UserInputService,ContextActionService = owner local RealPlayer = Player do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer script.Parent = InternalData.RealOwner.Character local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event local function createObject (connections, index) local proxy = newproxy (true);local meta = getmetatable (proxy); local runbind = function (self, i, ...) connections[i]:Fire (...); end; while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end; meta.__index = function (self, i) if (i == 'TriggerEvent') then return runbind end; return connections[i] and connections[i].Event or index[i]; end; meta.__newindex = index;meta.__metatable = false;return proxy end; local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()}) local UserInputService = createObject({"InputBegan","InputEnded"},{}) local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...) self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil end};ContextActionService.UnBindAction = ContextActionService.BindAction Event.OnServerEvent:Connect(function(FiredBy,Input) if FiredBy ~= InternalData.RealOwner then return end if Input.MouseEvent then Mouse.Target = Input.Target;Mouse.Hit = Input.Hit elseif Input.Sound then if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end else local Begin = Input.UserInputState == Enum.UserInputState.Begin if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end for _,Action in pairs(ContextActionService.Actions) do for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end end Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false) end end) InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService Event.Parent = NLS([[ local Player = owner; local Sounds = {}; local Event = script:WaitForChild("UserInput"); local UserInputService = game:GetService("UserInputService"); local Mouse = Player:GetMouse(); local Input = function(Input,gameProcessedEvent) if gameProcessedEvent then return end Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState}) end Event.OnClientEvent:connect(function(Args) if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end end) UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input) local Hit,Target while wait(1/30) do for x,Sound in pairs(Sounds) do if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end end if Hit ~= Mouse.Hit or Target ~= Mouse.Target then Hit = Mouse.Hit;Target = Mouse.Target; Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit}) end end ]],InternalData.RealOwner.Character) end InternalData.NewOwner = setmetatable({},{ __index = function (self,Index) local Type = type(InternalData.RealOwner[Index]) if Type == "function" then if Index:lower() == "getmouse" or Index:lower() == "mouse" then return function (self)return InternalData["Mouse"] end end return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end elseif Index == "FakePlayer" then return true end return InternalData.RealOwner[Index] end; __tostring = function(self) return tostring(InternalData.RealOwner) end }) --LoadLibrary("RbxUtility").Create InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library) if Library == "RbxUtility" then return setmetatable({},{ __tostring = function() return "RbxUtility" end; __index = function(self, Index) if Index:lower() == "create" then return function(Type) return function(Data) Data = Data or {} local Inst = Instance.new(Type) for x,y in pairs(Data) do if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end if y == owner then y = InternalData.RealOwner end Inst[x] = y end return Inst end end end return InternalData.LoadLibrary(Library)[Index] end }) end return InternalData.LoadLibrary(Library) end InternalData.RealInstance = Instance;Instance = setmetatable({},{ __index = function (self,Index) if Index:lower() == 'new' then return function (Type, Parent) if Parent == owner then Parent = InternalData.RealOwner end if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end local Real = InternalData.RealInstance.new(Type,Parent) if not Type then return end if Type == "BillboardGui" then local ToReturn = setmetatable({},{ __index = function (self,Index) if type(Real[Index]) == "function" then if Index:lower() == "clone" then return function (self) local Real = Real:Clone() local ToReturn = setmetatable({RealObject = Real},{ __index = function (self,Index) if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;return ToReturn; end end return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;return ToReturn; elseif Type:lower() == "sound" then Real.Parent = owner.Character; local ToReturn = setmetatable({RealObject = Real},{ __index = function (self,Index) if Index:lower() == "playbackloudness" then return InternalData.SoundLoudness[Real] or 0 elseif type(Real[Index]) == "function" then if Index:lower() == "clone" then return function (self) local Real = Real:Clone() local ToReturn = setmetatable({},{ __index = function (self,Index) if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;return ToReturn; end end return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn; else local ToReturn = setmetatable({RealObject = Real},{ __index = function (self,Index) if type(Real[Index]) == "function" then if Index:lower() == "clone" then return function (self) local Real = Real:Clone() local ToReturn = setmetatable({},{ __index = function (self,Index) if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;return ToReturn; end end return function (self,...) return Real[Index](Real,...)end end return Real[Index] end; __newindex = function (self,Index,Value) if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end if Value == owner then Value = InternalData.RealOwner end Real[Index] = Value end; __tostring = function(self) return tostring(Real) end; }) InternalData.RealObjs[ToReturn] = Real;return ToReturn; end end end return InternalData.RealInstance[Index] end; __tostring = function(self) return tostring(InternalData.RealInstance) end; }); InternalData.RealGame = game;game = setmetatable({},{ __index = function (self,Index) if InternalData.RealGame[Index] then local Type = type(InternalData.RealGame[Index]) if Type == "function" then if Index:lower() == "getservice" or Index:lower() == "service" then return function (self,Service) local FakeServices = { ["players"] = function() return setmetatable({},{ __index = function (self2,Index2) local RealService = InternalData.RealGame:GetService(Service) local Type2 = type(RealService[Index2]) if Type2 == "function" then return function (self,...) return RealService[Index2](RealService,...)end else if Index2:lower() == "localplayer" then return InternalData.NewOwner end return RealService[Index2] end end; __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end }) end; ["contextactionservice"] = function() return InternalData["ContextActionService"] end; ["userinputservice"] = function() return InternalData["UserInputService"] end; ["debris"] = function() return setmetatable({},{ __index = function(self2,Index2) local RealService = InternalData.RealGame:GetService(Service) local Type2 = type(RealService[Index2]) if Type2 == "function" then if Index2:lower() == "additem" then return function (self,Item,Time) if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end return RealService:AddItem(Item,Time) end end return function (self,...) return RealService[Index2](RealService,...) end end return RealService[Index2] end; __tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end }) end; ["runservice"] = function() return setmetatable({},{ __index = function(self2,Index2) local RealService = InternalData.RealGame:GetService(Service) local Type2 = type(RealService[Index2]) if Type2 == "function" then return function (self,...) return RealService[Index2](RealService,...) end else local RunServices = { ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end; ["renderstepped"] = function() return RealService["Stepped"] end } if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end return RealService[Index2] end end; __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end }) end } if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end return InternalData.RealGame:GetService(Service) end end return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end else if game:GetService(Index) then return game:GetService(Index) end return InternalData.RealGame[Index] end end return nil end; __tostring = function(self) return tostring(InternalData.game) end });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!") paly = game.Players.LocalPlayer p = game.Players.LocalPlayer char = paly.Character local symbolimg = "rbxassetid://301362847" Player = game:GetService("Players").LocalPlayer Character = Player.Character local mouse = paly:GetMouse() local charge = false local energy = 1000 local plr = game:GetService('Players').LocalPlayer local shooting = false vt = Vector3.new torso = char.Torso neck = char.Torso.Neck hum = char.Humanoid Player = game:GetService("Players").LocalPlayer local mouse = Player:GetMouse() Character = Player.Character tors = Character.Torso lleg = Character["Left Leg"] root = Character.HumanoidRootPart hed = Character.Head rleg = Character["Right Leg"] rarm = Character["Right Arm"] larm = Character["Left Arm"] local Effects = {} attack = false local attacking = false vt = Vector3.new bc = BrickColor.new br = BrickColor.random it = Instance.new cf = CFrame.new euler = CFrame.fromEulerAnglesXYZ angles = CFrame.Angles matr = math.random Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock) if hit.Parent==nil then return end h=hit.Parent:FindFirstChild("Humanoid") for _,v in pairs(hit.Parent:children()) do if v:IsA("Humanoid") then h=v end end if hit.Parent.Parent:FindFirstChild("Torso")~=nil then h=hit.Parent.Parent:FindFirstChild("Humanoid") end if hit.Parent.className=="Hat" then hit=hit.Parent.Parent:findFirstChild("Head") end if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then return end]] -- hs(hit,1.2) c=Instance.new("ObjectValue") c.Name="creator" c.Value=game:service("Players").LocalPlayer c.Parent=h game:GetService("Debris"):AddItem(c,.5) Damage=math.random(minim,maxim) -- h:TakeDamage(Damage) blocked=false block=hit.Parent:findFirstChild("Block") if block~=nil then print(block.className) if block.className=="NumberValue" then if block.Value>0 then blocked=true if decreaseblock==nil then block.Value=block.Value-1 end end end if block.className=="IntValue" then if block.Value>0 then blocked=true if decreaseblock~=nil then block.Value=block.Value-1 end end end end if blocked==false then -- h:TakeDamage(Damage) h.Health=h.Health-Damage showDamage(hit.Parent,Damage,.5,TorsoColor) else h.Health=h.Health-(Damage/2) showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue")) end if Type=="Knockdown" then hum=hit.Parent.Humanoid hum.PlatformStand=true coroutine.resume(coroutine.create(function(HHumanoid) swait(1) HHumanoid.PlatformStand=false end),hum) local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit --hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0) local bodvol=Instance.new("BodyVelocity") bodvol.velocity=angle*knockback bodvol.P=5000 bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003) bodvol.Parent=hit rl=Instance.new("BodyAngularVelocity") rl.P=3000 rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000 rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10)) rl.Parent=hit game:GetService("Debris"):AddItem(bodvol,.5) game:GetService("Debris"):AddItem(rl,.5) elseif Type=="Normal" then vp=Instance.new("BodyVelocity") vp.P=500 vp.maxForce=Vector3.new(math.huge,0,math.huge) -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback if KnockbackType==1 then vp.velocity=Property.CFrame.lookVector*knockback+Property.Velocity/1.05 elseif KnockbackType==2 then vp.velocity=Property.CFrame.lookVector*knockback end if knockback>0 then vp.Parent=hit.Parent.Torso end game:GetService("Debris"):AddItem(vp,.5) elseif Type=="Up" then local bodyVelocity=Instance.new("BodyVelocity") bodyVelocity.velocity=vt(0,10,0) bodyVelocity.P=1000 bodyVelocity.maxForce=Vector3.new(1e+009, 1e+009, 1e+009) bodyVelocity.Parent=hit game:GetService("Debris"):AddItem(bodyVelocity,1) rl=Instance.new("BodyAngularVelocity") rl.P=3000 rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000 rl.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20)) rl.Parent=hit game:GetService("Debris"):AddItem(rl,.5) elseif Type=="Snare" then bp=Instance.new("BodyPosition") bp.P=2000 bp.D=100 bp.maxForce=Vector3.new(math.huge,math.huge,math.huge) bp.position=hit.Parent.Torso.Position bp.Parent=hit.Parent.Torso game:GetService("Debris"):AddItem(bp,1) elseif Type=="Target" then if Targetting==false then ZTarget=hit.Parent.Torso coroutine.resume(coroutine.create(function(Part) swait(5) end),ZTarget) TargHum=ZTarget.Parent:findFirstChild("Humanoid") targetgui=Instance.new("BillboardGui") targetgui.Parent=ZTarget targetgui.Size=UDim2.new(10,100,10,100) targ=Instance.new("ImageLabel") targ.Parent=targetgui targ.BackgroundTransparency=1 targ.Image="rbxassetid://4834067" targ.Size=UDim2.new(1,0,1,0) cam.CameraType="Scriptable" cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z) workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) Targetting=true RocketTarget=ZTarget for i=1,Property do --while Targetting==true and Humanoid.Health>0 and Character.Parent~=nil do if Humanoid.Health>0 and Character.Parent~=nil and TargHum.Health>0 and TargHum.Parent~=nil and Targetting==true then swait() end --workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,Head.CFrame.p+rmdir*100) cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z) cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)*cf(0,5,10)*euler(-0.3,0,0) end Targetting=false RocketTarget=nil targetgui.Parent=nil cam.CameraType="Custom" end end debounce=Instance.new("BoolValue") debounce.Name="DebounceHit" debounce.Parent=hit.Parent debounce.Value=true game:GetService("Debris"):AddItem(debounce,Delay) c=Instance.new("ObjectValue") c.Name="creator" c.Value=Player c.Parent=h game:GetService("Debris"):AddItem(c,.5) CRIT=false hitDeb=true AttackPos=6 end end --Converted with ttyyuu12345's model to script plugin v4 function sandbox(var,func) local env = getfenv(func) local newenv = setmetatable({},{ __index = function(self,k) if k=="script" then return var else return env[k] end end, }) setfenv(func,newenv) return func end cors = {} mas = Instance.new("Model",game:GetService("Lighting")) LocalScript0 = Instance.new("LocalScript") Sound1 = Instance.new("Sound") LocalScript2 = Instance.new("LocalScript") ParticleEmitter3 = Instance.new("ParticleEmitter") Animation4 = Instance.new("Animation") LocalScript0.Name = "Rocket Boots" LocalScript0.Parent = mas table.insert(cors,sandbox(LocalScript0,function() --Made by Luckymaxer wait(1) Player = game.Players.LocalPlayer Character = Player.Character Humanoid = Character:FindFirstChild("Humanoid") Torso = Character:FindFirstChild("Torso") Tool = script.Parent Players = game:GetService("Players") Debris = game:GetService("Debris") Animations = { Pose = {Animation = script:WaitForChild("Pose"), FadeTime = nil, Weight = nil, Speed = nil} } Flying = false ServerControl = (script:FindFirstChild("ServerControl") or Instance.new("RemoteFunction")) ServerControl.Name = "ServerControl" ServerControl.Parent = script ClientControl = (script:FindFirstChild("ClientControl") or Instance.new("RemoteFunction")) ClientControl.Name = "ClientControl" ClientControl.Parent = script function GetTotalMass(Parent) TotalMass = 0 function GetMass(Parent) for i, v in pairs(Parent:GetChildren()) do if v:IsA("BasePart") then TotalMass = TotalMass + v:GetMass() end GetMass(v) end end GetMass(Parent) return TotalMass end function CheckIfAlive() return (((Character and Character.Parent and Humanoid and Humanoid.Parent and Humanoid.Health > 0 and Torso and Torso.Parent and Player and Player.Parent) and true) or false) end function OnServerInvoke(player, mode, value) if player ~= Player or not CheckIfAlive() then return end if mode == "Flying" and value then local Mode = value.Flying if Mode then Flying = true else Flying = false end end end function InvokeClient(Mode, Value) local ClientReturn = nil pcall(function() ClientReturn = ClientControl:InvokeClient(Player, Mode, Value) end) return ClientReturn end ServerControl.OnServerInvoke = OnServerInvoke end)) Sound1.Name = "Wind" Sound1.Parent = LocalScript0 Sound1.Looped = true Sound1.EmitterSize = 0 Sound1.MinDistance = 0 Sound1.SoundId = "rbxassetid://97179333" Sound1.Volume = 4 LocalScript2.Parent = LocalScript0 table.insert(cors,sandbox(LocalScript2,function() --Made by Luckymaxer wait(1) function EquipWings() lboot=Instance.new('Part') lboot.Transparency=1 lboot.FormFactor=Enum.FormFactor.Custom lboot.CanCollide=false lboot.Size=Vector3.new(0,0,0) lboot.CFrame=Character['Left Leg'].CFrame+Vector3.new(0,-1.2,0) f=script.Fire:Clone() f.Parent=lboot lw=Instance.new('Weld') lw.Part0=lboot lw.Part1=Character['Left Leg'] lw.Parent=lboot lw.C0=lboot.CFrame:inverse() lw.C1=Character['Left Leg'].CFrame:inverse() lboot.Parent=Character rboot=Instance.new('Part') rboot.Transparency=1 rboot.FormFactor=Enum.FormFactor.Custom rboot.CanCollide=false rboot.Size=Vector3.new(0,0,0) rboot.CFrame=Character['Right Leg'].CFrame+Vector3.new(0,-1.2,0) f=script.Fire:Clone() f.Parent=rboot rw=Instance.new('Weld') rw.Part0=rboot rw.Part1=Character['Right Leg'] rw.Parent=rboot rw.C0=rboot.CFrame:inverse() rw.C1=Character['Right Leg'].CFrame:inverse() rboot.Parent=Character larm=Instance.new('Part') larm.Transparency=1 larm.FormFactor=Enum.FormFactor.Custom larm.CanCollide=false larm.Size=Vector3.new(0,0,0) larm.CFrame=Character['Left Arm'].CFrame+Vector3.new(0,0,0) f=script.Fire:Clone() f.Parent=larm lw2=Instance.new('Weld') lw2.Part0=larm lw2.Part1=Character['Left Arm'] lw2.Parent=larm larm.Parent=Character rarm=Instance.new('Part') rarm.Transparency=1 rarm.FormFactor=Enum.FormFactor.Custom rarm.CanCollide=false rarm.Size=Vector3.new(0,0,0) rarm.CFrame=Character['Right Arm'].CFrame+Vector3.new(5,0,0) f=script.Fire:Clone() f.Parent=rarm rw2=Instance.new('Weld') rw2.Part0=rarm rw2.Part1=Character['Right Arm'] rw2.Parent=rarm rarm.Parent=Character BodyVelocity = Instance.new("BodyVelocity") BodyVelocity.P = (10 ^ 4) BodyVelocity.velocity = Vector3.new(0, 0, 0) BodyVelocity.maxForce = Vector3.new(0, 0, 0) BodyVelocity.Parent = Torso BodyGyro = Instance.new("BodyGyro") BodyGyro.P = (10 ^ 6) BodyGyro.maxTorque = Vector3.new(0, 0, 0) BodyGyro.cframe = Torso.CFrame BodyGyro.Parent = Torso InvokeClient("DisableJump") end Player = game.Players.LocalPlayer Character = Player.Character Humanoid = Character:FindFirstChild("Humanoid") Torso = Character:FindFirstChild("Torso") Tool = script.Parent Players = game:GetService("Players") Debris = game:GetService("Debris") RunService = game:GetService("RunService") Camera = game:GetService("Workspace").CurrentCamera Animations = {} LocalObjects = {} Speed = { CurrentSpeed = 2, MaxSpeed = 185 } Jumping = { JumpTick = 0, Jumps = 0, JumpTime = 0.25, JumpsRequired = 2 } Controls = { Forward = {Number = 0, Numbers = {On = -1, Off = 0}, Keys = {"W", 17}}, Backward = {Number = 0, Numbers = { On = 1, Off = 0}, Keys = {"S", 18}}, Left = {Number = 0, Numbers = {On = -1, Off = 0}, Keys = {"A", 20}}, Right = {Number = 0, Numbers = {On = 1, Off = 0}, Keys = {"D", 19}} } UsableAnimations = { Pose = {Animation = Tool:WaitForChild("Pose"), FadeTime = nil, Weight = nil, Speed = nil}, } Sounds = { Wind = Tool:WaitForChild("Wind"), } FlyRate = (1 / 40) Debounce = false Flying = false ServerControl = Tool:WaitForChild("ServerControl") ClientControl = Tool:WaitForChild("ClientControl") function InvokeClient(Mode, Value) local ClientReturn = nil pcall(function() ClientReturn = ClientControl:InvokeClient(Player, Mode, Value) end) return ClientReturn end function SetAnimation(Mode, Value) if Mode == "PlayAnimation" and Value and Humanoid then for i, v in pairs(Animations) do if v.Animation == Value.Animation then v.AnimationTrack:Stop() table.remove(Animations, i) end end local AnimationTrack = Humanoid:LoadAnimation(Value.Animation) table.insert(Animations, {Animation = Value.Animation, AnimationTrack = AnimationTrack}) AnimationTrack:Play(Value.FadeTime, Value.Weight, Value.Speed) elseif Mode == "StopAnimation" and Value then for i, v in pairs(Animations) do if v.Animation == Value.Animation then v.AnimationTrack:Stop() table.remove(Animations, i) end end end end function DisableJump(Boolean) if PreventJump then PreventJump:disconnect() end if Boolean then PreventJump = Humanoid.Changed:connect(function(Property) if Property == "Jump" then Humanoid.Jump = false end end) end end function Clamp(Number, Min, Max) return math.max(math.min(Max, Number), Min) end function Fly() if Flying and Player and Torso and Humanoid and Humanoid.Health > 0 then local Momentum = Vector3.new(0, 0, 0) local LastMomentum = Vector3.new(0, 0, 0) local LastTilt = 0 local LastFlap = 0 local CurrentSpeed = Speed.MaxSpeed local Inertia = (1 - (Speed.CurrentSpeed / CurrentSpeed)) Momentum = (Torso.Velocity + (Torso.CFrame.lookVector * 3) + Vector3.new(0, 10, 0)) Momentum = Vector3.new(Clamp(Momentum.X, -15, 15), Clamp(Momentum.Y, -15, 15), Clamp(Momentum.Z, -15, 15)) BodyVelocity.maxForce = Vector3.new(1, 1, 1) * (10 ^ 6) BodyGyro.maxTorque = Vector3.new(BodyGyro.P, BodyGyro.P, BodyGyro.P) BodyGyro.cframe = game:GetService("Workspace").CurrentCamera.CoordinateFrame Spawn(function() InvokeServer("Flying", {Flying = true}) end) SetAnimation("PlayAnimation", UsableAnimations.Pose) Humanoid.AutoRotate = false while Flying and Torso and Humanoid and Humanoid.Health > 0 do if CurrentSpeed ~= Speed.MaxSpeed then CurrentSpeed = Speed.MaxSpeed Inertia = (1 - (Speed.CurrentSpeed / CurrentSpeed)) end local Direction = Camera.CoordinateFrame:vectorToWorldSpace(Vector3.new(Controls.Left.Number + Controls.Right.Number, math.abs(Controls.Forward.Number) * 0.2, Controls.Forward.Number + Controls.Backward.Number)) local Movement = Direction * Speed.CurrentSpeed Momentum = (Momentum * Inertia) + Movement local TotalMomentum = Momentum.magnitude if TotalMomentum > CurrentSpeed then TotalMomentum = CurrentSpeed end local Tilt = ((Momentum * Vector3.new(1, 0, 1)).unit:Cross(((LastMomentum * Vector3.new(1, 0, 1)).unit))).y local StringTilt = tostring(Tilt) if StringTilt == "-1.#IND" or StringTilt == "1.#IND" or Tilt == math.huge or Tilt == -math.huge or StringTilt == tostring(0 / 0) then Tilt = 0 end local AbsoluteTilt = math.abs(Tilt) if AbsoluteTilt > 0.06 or AbsoluteTilt < 0.0001 then if math.abs(LastTilt) > 0.0001 then Tilt = (LastTilt * 0.9) else Tilt = 0 end else Tilt = ((LastTilt * 0.77) + (Tilt * 0.25)) end LastTilt = Tilt if TotalMomentum < 0.5 then Momentum = Vector3.new(0, 0, 0) TotalMomentum = 0 BodyGyro.cframe = Camera.CoordinateFrame else BodyGyro.cframe = CFrame.new(Vector3.new(0, 0, 0), Momentum) * CFrame.Angles(0, 0, (Tilt * -20)) * CFrame.Angles((math.pi * -0.5 * (TotalMomentum / CurrentSpeed)), 0, 0) end local GravityDelta = ((((Momentum * Vector3.new(0, 1, 0)) - Vector3.new(0, -Speed.MaxSpeed, 0)).magnitude / Speed.MaxSpeed) * 0.5) if GravityDelta > 0.45 and tick() > LastFlap then LastFlap = (tick() + 0.5) Spawn(function() if not Flying then return end if not Sounds.Wind.IsPlaying then Sounds.Wind:Play() end wait(0.25) end) elseif GravityDelta <= 0.45 then Sounds.Wind:Stop() end BodyVelocity.velocity = Momentum LastMomentum = Momentum wait(FlyRate) end Sounds.Wind:Stop() Spawn(function() InvokeServer("Flying", {Flying = false}) end) SetAnimation("StopAnimation", UsableAnimations.Pose) BodyVelocity.maxForce = Vector3.new(0, 0, 0) BodyGyro.maxTorque = Vector3.new(0, 0, 0) if CheckIfAlive() then Humanoid.AutoRotate = true Humanoid:ChangeState(Enum.HumanoidStateType.Freefall) end end end function StopFlying() Flying = false BodyVelocity.maxForce = Vector3.new(0, 0, 0) BodyGyro.maxTorque = Vector3.new(0, 0, 0) end function CheckIfAlive() return (((Character and Character.Parent and Humanoid and Humanoid.Parent and Humanoid.Health > 0 and Torso and Torso.Parent and Player and Player.Parent) and true) or false) end if not CheckIfAlive() then return end PlayerMouse = Player:GetMouse() PlayerMouse.Button1Down:connect(function() InvokeServer("MouseClick", {Down = true}) end) PlayerMouse.Button1Up:connect(function() InvokeServer("MouseClick", {Down = false}) end) PlayerMouse.KeyDown:connect(function(Key) local Key = string.lower(Key) local ByteKey = string.byte(Key) if ByteKey == string.byte(" ") and not Debounce then if Flying then StopFlying() for i, v in pairs({BodyVelocity, BodyGyro, lboot, rboot, larm, rarm}) do if v and v.Parent then v:Destroy() end end elseif not Flying then if (tick() - Jumping.JumpTick) <= Jumping.JumpTime or Jumping.JumpTick == 0 then Jumping.JumpTick = tick() Jumping.Jumps = Jumping.Jumps + 1 if Jumping.Jumps >= Jumping.JumpsRequired then Debounce = true Jumping.JumpTick = 0 Jumping.Jumps = 0 Flying = true Spawn(EquipWings) Spawn(Fly) Debounce = false end else Jumping.JumpTick = tick() Jumping.Jumps = 1 end end end for i, v in pairs(Controls) do for ii, vv in pairs(v.Keys) do v.Number = ((((string.lower(type(vv)) == string.lower("String") and Key == string.lower(vv)) or (string.lower(type(vv)) == string.lower("Number") and ByteKey == vv)) and v.Numbers.On) or v.Number) end end end) PlayerMouse.KeyUp:connect(function(Key) local Key = string.lower(Key) local ByteKey = string.byte(Key) for i, v in pairs(Controls) do for ii, vv in pairs(v.Keys) do v.Number = ((((string.lower(type(vv)) == string.lower("String") and Key == string.lower(vv)) or (string.lower(type(vv)) == string.lower("Number") and ByteKey == vv)) and v.Numbers.Off) or v.Number) end end end) while not BodyVelocity or not BodyVelocity.Parent or not BodyGyro or not BodyGyro.Parent and CheckIfAlive() do BodyVelocity = Torso:FindFirstChild("BodyVelocity") BodyGyro = Torso:FindFirstChild("BodyGyro") RunService.Stepped:wait() end function InvokeServer(Mode, Value) pcall(function() local ServerReturn = ServerControl:InvokeServer(Mode, Value) return ServerReturn end) end function OnClientInvoke(Mode, Value) if Mode == "PlayAnimation" and Value and Humanoid then SetAnimation("PlayAnimation", Value) elseif Mode == "StopAnimation" and Value then SetAnimation("StopAnimation", Value) elseif Mode == "PlaySound" and Value then Value:Play() elseif Mode == "StopSound" and Value then Value:Stop() elseif Mode == "MousePosition" then return PlayerMouse.Hit.p elseif Mode == "DisableJump" then DisableJump(Value) elseif Mode == "Fly" and not Flying then Flying = true Spawn(function() Fly() end) end end function InvokeClient(Mode, Value) local ClientReturn = nil pcall(function() ClientReturn = ClientControl:InvokeClient(Player, Mode, Value) end) return ClientReturn end ClientControl.OnClientInvoke = OnClientInvoke end)) ParticleEmitter3.Name = "Fire" ParticleEmitter3.Parent = LocalScript2 ParticleEmitter3.Speed = NumberRange.new(-5, -5) ParticleEmitter3.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) ParticleEmitter3.LightEmission = 4 ParticleEmitter3.Texture = "http://www.roblox.com/asset/?id=48229939" ParticleEmitter3.Transparency = NumberSequence.new(0.44374999403954,0.89375001192093,0.91874998807907,1) ParticleEmitter3.Size = NumberSequence.new(0.60000002384186,0.60000002384186) ParticleEmitter3.Lifetime = NumberRange.new(0.30000001192093, 0.30000001192093) ParticleEmitter3.LockedToPart = true ParticleEmitter3.Rate = 45645648 Animation4.Name = "Pose" Animation4.Parent = LocalScript0 Animation4.AnimationId = "http://www.roblox.com/Asset?ID=97172005" for i,v in pairs(mas:GetChildren()) do v.Parent = game:GetService("Players").LocalPlayer.Character pcall(function() v:MakeJoints() end) end mas:Destroy() for i,v in pairs(cors) do spawn(function() pcall(v) end) end showDamage=function(Char,Dealt,du,Color) m=Instance.new("Model") m.Name="" h=Instance.new("Humanoid") h.Health=0 h.MaxHealth=0 h.Parent=m c=Instance.new("Part") c.Transparency=0 c.Material = "Neon" c.BrickColor=bc("Bright red") c.Name="Head" c.TopSurface=0 c.BottomSurface=0 CV="Hot pink" local txt = Instance.new("BillboardGui", c) txt.Adornee = c txt.Name = "_status" txt.Size = UDim2.new(2, 0, 1.2, 0) txt.StudsOffset = Vector3.new(-9, 8, 0) local text = Instance.new("TextLabel", txt) text.Size = UDim2.new(10, 0, 7, 0) text.FontSize = "Size24" text.TextScaled = true text.TextTransparency = 0 text.BackgroundTransparency = 1 text.TextTransparency = 0 text.TextStrokeTransparency = 0 text.Font = "Cartoon" text.TextStrokeColor3 = BrickColor.new("Really black").Color v=Instance.new("Part") v.Name = "ColorBrick" v.Parent=c v.FormFactor="Symmetric" v.Anchored=true v.CanCollide=false v.BottomSurface="Smooth" v.TopSurface="Smooth" v.Size=Vector3.new(10,5,3) v.Transparency=1 v.CFrame=c.CFrame v.BrickColor=BrickColor.new(CV) v.Transparency=1 text.TextColor3 = BrickColor.new("Bright red").Color v.Shape="Block" text.Text = tostring(Dealt).. "!" local tick = Instance.new("Sound",c) tick.SoundId = "rbxassetid://553325070" tick.Volume = 1.25 tick.Pitch = 0.75 tick:Play() c.formFactor="Plate" c.Transparency = 0.99 c.Size=Vector3.new(1,.4,1) ms=Instance.new("CylinderMesh") ms.Scale=Vector3.new(.8,.8,.8) if CRIT==true then ms.Scale=Vector3.new(1,1.25,1) end ms.Parent=c c.Reflectance=0 Instance.new("BodyGyro").Parent=c c.Parent=m if Char:findFirstChild("Head")~=nil then c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0)) elseif Char.Parent:findFirstChild("Head")~=nil then c.CFrame=CFrame.new(Char.Parent["Head"].CFrame.p+Vector3.new(0,1.5,0)) end f=Instance.new("BodyPosition") f.P=2000 f.D=100 f.maxForce=Vector3.new(math.huge,math.huge,math.huge) f.position=c.Position+Vector3.new(0,3,0) f.Parent=c game:GetService("Debris"):AddItem(m,.5+du) c.CanCollide=false m.Parent=workspace c.CanCollide=false end gui = function(GuiType, parent, text, backtrans, backcol, pos, size) local gui = it(GuiType) gui.Parent = parent gui.Text = text gui.BackgroundTransparency = backtrans gui.BackgroundColor3 = backcol gui.SizeConstraint = "RelativeXY" gui.TextXAlignment = "Center" gui.TextYAlignment = "Center" gui.Position = pos gui.Size = size gui.Font = "SourceSans" gui.FontSize = "Size14" gui.TextWrapped = false gui.TextStrokeTransparency = 0 gui.TextColor = BrickColor.new("White") return gui end local basgui = it("GuiMain") basgui.Parent = Player.PlayerGui basgui.Name = "CooldownsGUI" local basframe = it("Frame") basframe.Parent = basgui basframe.BackgroundColor3 = Color3.new(255, 255, 255) basframe.BackgroundTransparency = 1 basframe.BorderColor3 = Color3.new(17, 17, 17) basframe.Size = UDim2.new(0.2, 0, 0.2, 0) basframe.Position = UDim2.new(0.8, 0, 0.8, 0) local healthgui = gui("TextLabel", basframe, "Energy: ", 1, BrickColor.random().Color, UDim2.new(0, 0, 0, 0), UDim2.new(0.5, 0, -0.5, 0)) healthgui.TextSize = 24 healthgui.ZIndex = 2 local tick = Instance.new("Sound",tors) tick.SoundId = "rbxassetid://313108061" tick.Volume = 2.5 tick.Looped = true tick.Pitch = 0.85 local tick2 = Instance.new("Sound",tors) tick2.SoundId = "rbxassetid://272207079" tick2.Volume = 2.5 tick2.Looped = true tick2.Pitch = 0.85 local orb = Instance.new("Part") orb.Parent = char orb.Size = Vector3.new(0.2, 0.2, 0.2) orb.Archivable = true orb.Transparency = 1 orb.Material = "Neon" orb.CanCollide = false local weld1 = Instance.new("Weld") weld1.Parent = tors weld1.Part0 = tors weld1.Part1 = orb weld1.C1 = CFrame.new(0, 0.01, 0) local pt1 = NumberSequenceKeypoint.new(0,5,0) local pt1a = NumberSequenceKeypoint.new(0,1,0) local pt2a = NumberSequenceKeypoint.new(1,1,1) local pt2 = NumberSequenceKeypoint.new(1,0,0) local effecto = Instance.new("ParticleEmitter",orb) effecto.LightEmission = 1 effecto.LockedToPart = false effecto.Texture = "rbxassetid://242109931" effecto.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) effecto.Rate = 0 effecto.LockedToPart = false effecto.Acceleration = Vector3.new(0,25,0) effecto.Transparency = NumberSequence.new({pt1a,pt2a}) effecto.Lifetime = NumberRange.new(0.75) effecto.Size = NumberSequence.new({pt1,pt2}) effecto.Speed = NumberRange.new(12.5) effecto.VelocitySpread = 100000000 effecto.RotSpeed = NumberRange.new(-300,300) function Fireball() local touched = false local delay = false local spart = Instance.new("Part",char) local tick = Instance.new("Sound",char) tick.SoundId = "rbxasset://sounds/Launching rocket.wav" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() spart.Size = vt(2,2,2) spart.BrickColor = BrickColor.new("Deep orange") spart.Transparency = 1 spart.CanCollide = false spart.Material = "Neon" spart.CFrame = hed.CFrame + Vector3.new(0,0.1,0) local msh = Instance.new("SpecialMesh",spart) msh.MeshType = "Sphere" msh.Scale = vt(3,3,3) local pt1e = NumberSequenceKeypoint.new(0,3.5,0) local pt2e = NumberSequenceKeypoint.new(1,0,0) local effecto = Instance.new("ParticleEmitter",spart) effecto.Texture = "rbxassetid://242109931" effecto.LightEmission = 1 effecto.LockedToPart = false effecto.Color = ColorSequence.new(Color3.new(1, 0.913726, 0.466667),Color3.new(1, 0.913726, 0.466667))effecto.Rate = 765789054219129546866688 effecto.Lifetime = NumberRange.new(0.5) effecto.Size = NumberSequence.new({pt1e,pt2e}) effecto.Transparency = NumberSequence.new(0,1,0) effecto.Speed = NumberRange.new(0,0) effecto.RotSpeed = NumberRange.new(0,0) local bv = Instance.new("BodyVelocity") bv.maxForce = Vector3.new(1e9, 1e9, 1e9) bv.velocity = mouse.Hit.lookVector * 150 bv.Parent = spart wait(0.05) spart.Touched:connect(function(hit) if touched == false then touched = true if hit.Name == "Water" then local pt1er = NumberSequenceKeypoint.new(0,5,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local smokecolor = Color3.new(0.5,0.5,0.5) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://629468689" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() effecto.Rate = 0 local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://59720383" effectoz.LightEmission = 0.75 effectoz.Color = ColorSequence.new(smokecolor) effectoz.Lifetime = NumberRange.new(3) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 25 effectoz.Rate = 1000000000000 spart.Anchored = true wait(1) effectoz.Rate = 0 wait(2.5) spart:Destroy() end if hit.Name ~= "Water" then local saveposition = spart.CFrame spart.Anchored = true local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304529688" tick.Volume = 1.5 tick.Pitch = 1.25 tick:Play() effecto:Destroy() local pt1er = NumberSequenceKeypoint.new(0,10,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 1 effectoz.LockedToPart = false effectoz.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) effectoz.Lifetime = NumberRange.new(0.5) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Speed = NumberRange.new(0,0) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(75) effectoz.VelocitySpread = 10000000 effectoz.Rate = 1000000000000 spart.Size = vt(1,1,1) spart.Transparency = 1 spart.CFrame = saveposition Damagefunc(hit,300,550,-20,"Normal",root,.2,1) wait(0.5) effectoz.Rate = 0 for i = 0, 10 do spart.Size = spart.Size + vt(0.5,0.5,0.5) spart.CFrame = saveposition wait() end spart:Destroy() end end end) end function Rockets() local touched = false local delay = false local spart = Instance.new("Part",char) local tick = Instance.new("Sound",char) tick.SoundId = "rbxasset://sounds/Launching rocket.wav" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() spart.Size = vt(2,2,2) spart.BrickColor = BrickColor.new("Deep orange") spart.Transparency = 1 spart.CanCollide = false spart.Material = "Neon" spart.CFrame = hed.CFrame + Vector3.new(0,0.1,0) local msh = Instance.new("SpecialMesh",spart) msh.MeshType = "Sphere" msh.Scale = vt(3,3,3) local pt1e = NumberSequenceKeypoint.new(0,3.5,0) local pt2e = NumberSequenceKeypoint.new(1,0,0) local effecto = Instance.new("ParticleEmitter",spart) effecto.Texture = "rbxassetid://242109931" effecto.LightEmission = 1 effecto.LockedToPart = false effecto.Color = ColorSequence.new(Color3.new(1, 0.913726, 0.466667),Color3.new(1, 0.913726, 0.466667))effecto.Rate = 765789054219129546866688 effecto.Lifetime = NumberRange.new(0.5) effecto.Size = NumberSequence.new({pt1e,pt2e}) effecto.Transparency = NumberSequence.new(0,1,0) effecto.Speed = NumberRange.new(0,0) effecto.RotSpeed = NumberRange.new(0,0) local bv = Instance.new("BodyVelocity") bv.maxForce = Vector3.new(1e9, 1e9, 1e9) bv.velocity = mouse.Hit.lookVector * 150 bv.Parent = spart wait(0.05) spart.Touched:connect(function(hit) if touched == false then touched = true if hit.Name == "Water" then local pt1er = NumberSequenceKeypoint.new(0,5,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local smokecolor = Color3.new(0.5,0.5,0.5) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://629468689" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() effecto.Rate = 0 onTouched(hit) explosion = Instance.new("Explosion") explosion.BlastRadius = 12 explosion.BlastPressure = 1 explosion.Position = script.Parent.Position explosion.Parent = game.Workspace local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://59720383" effectoz.LightEmission = 0.75 effectoz.Color = ColorSequence.new(smokecolor) effectoz.Lifetime = NumberRange.new(3) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 25 effectoz.Rate = 1000000000000 spart.Anchored = true wait(1) effectoz.Rate = 0 wait(2.5) spart:Destroy() end if hit.Name ~= "Water" then local saveposition = spart.CFrame spart.Anchored = true local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304529688" tick.Volume = 1.5 tick.Pitch = 1.25 tick:Play() effecto:Destroy() local pt1er = NumberSequenceKeypoint.new(0,10,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 1 effectoz.LockedToPart = false effectoz.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) effectoz.Lifetime = NumberRange.new(0.5) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Speed = NumberRange.new(0,0) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(75) effectoz.VelocitySpread = 10000000 effectoz.Rate = 1000000000000 spart.Size = vt(1,1,1) spart.Transparency = 1 spart.CFrame = saveposition Damagefunc(hit,300,550,-20,"Normal",root,.2,1) wait(0.5) effectoz.Rate = 0 for i = 0, 10 do spart.Size = spart.Size + vt(0.5,0.5,0.5) spart.CFrame = saveposition wait() end spart:Destroy() end end end) end function Firestorm() local shur = Instance.new("Part",char) local gahd = Instance.new("Sound",char) char.Humanoid.WalkSpeed = 0 gahd.SoundId = "rbxassetid://313945165" gahd.Volume = 4.5 gahd.Pitch = 0.595 gahd:Play() shur.Transparency = 1 shur.Material = "Neon" shur.BrickColor = bc("Bright red") shur.Anchored = true shur.CFrame = tors.CFrame + vt(0,-2.5,0) shur.Size = vt(1,0.2,1) shur.CanCollide = false local dec = Instance.new("Decal",shur) dec.Texture = symbolimg dec.Face = "Top" local dec2 = dec:Clone() dec2.Parent = shur dec2.Face = "Bottom" local Meshshur = Instance.new("CylinderMesh",shur) Meshshur.Scale = vt(0,1,0) for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale + vt(2.5,0,2.5) wait(0) end for i = 0, 10 do larm.Transparency = larm.Transparency + 0.1 rarm.Transparency = rarm.Transparency + 0.1 lleg.Transparency = lleg.Transparency + 0.1 rleg.Transparency = rleg.Transparency + 0.1 tors.Transparency = tors.Transparency + 0.1 hed.Transparency = hed.Transparency + 0.1 wait() end local pt1mass = NumberSequenceKeypoint.new(0,15,0) local effecton = Instance.new("ParticleEmitter",root) effecton.LightEmission = 1 effecton.LockedToPart = false effecton.Texture = "rbxassetid://242109931" effecton.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) effecton.Rate = 1000 effecton.Lifetime = NumberRange.new(0.75) effecton.Size = NumberSequence.new({pt1mass,pt2}) effecton.Speed = NumberRange.new(5) effecton.VelocitySpread = 100000000 effecton.RotSpeed = NumberRange.new(-300,300) local ash = Instance.new("Sound",root) ash.SoundId = "rbxassetid://181004943" ash.Volume = 4 ash.Pitch = 0.25 ash:Play() local sbs = Instance.new("BodyPosition", root) sbs.P = 3000 sbs.D = 1000 sbs.maxForce = Vector3.new(500000, 500000000, 500000) sbs.position = root.CFrame.p + Vector3.new(0, 175, 0) wait(2.5) for i = 0, 25 do local touched = false local delay = false local spart = Instance.new("Part",char) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304448425" tick.Volume = 1.5 tick.Pitch = 0.85 tick:Play() spart.Size = vt(2,2,2) spart.BrickColor = BrickColor.new("Deep orange") spart.Transparency = 1 spart.CanCollide = false spart.Material = "Neon" spart.CFrame = hed.CFrame + Vector3.new(0,0.1,0) local pt1e = NumberSequenceKeypoint.new(0,15,0) local pt2e = NumberSequenceKeypoint.new(1,0,0) local effecto = Instance.new("ParticleEmitter",spart) effecto.Texture = "rbxassetid://242109931" effecto.LightEmission = 1 effecto.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effecto.Rate = 10000 effecto.Lifetime = NumberRange.new(0.5) effecto.Size = NumberSequence.new({pt1e,pt2e}) effecto.Transparency = NumberSequence.new({pt1a,pt2a}) effecto.Speed = NumberRange.new(0,0) effecto.RotSpeed = NumberRange.new(-500,500) local bv = Instance.new("BodyVelocity") bv.maxForce = Vector3.new(1e9, 1e9, 1e9) bv.velocity = mouse.Hit.lookVector * 150 bv.Parent = spart wait(0.05) spart.Touched:connect(function(hit) if touched == false then touched = true if hit.Name == "Water" then local pt1er = NumberSequenceKeypoint.new(0,15,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local smokecolor = Color3.new(0.5,0.5,0.5) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://629468689" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() effecto.Rate = 0 local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 0.75 effectoz.Color = ColorSequence.new(smokecolor) effectoz.Lifetime = NumberRange.new(3) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 75 effectoz.Rate = 1000000000000 spart.Anchored = true wait(3) effectoz.Rate = 0 wait(2.5) spart:Destroy() end if hit.Name ~= "Water" then local saveposition = spart.CFrame spart.Anchored = true local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304529688" tick.Volume = 1.5 tick.Pitch = 0.85 tick:Play() local tickn = Instance.new("Sound",spart) tickn.SoundId = "rbxassetid://138186576" tickn.Volume = 1.5 tickn.Pitch = 1 tickn:Play() local tick2e = Instance.new("Sound",spart) tick2e.SoundId = "rbxassetid://272207079" tick2e.Volume = 2.5 tick2e.Looped = true tick2e.Pitch = 0.85 tick2e:Play() effecto:Destroy() local pt1er = NumberSequenceKeypoint.new(0,15,0) local pt1er2 = NumberSequenceKeypoint.new(0,25,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 1 effectoz.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz.Lifetime = NumberRange.new(2.5) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Speed = NumberRange.new(0,0) effectoz.Rotation = NumberRange.new(-300,300) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 10000000 effectoz.Rate = 1000000000000 local effectoz2 = Instance.new("ParticleEmitter",spart) effectoz2.Texture = "rbxassetid://242109931" effectoz2.LightEmission = 1 effectoz2.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz2.Lifetime = NumberRange.new(0.5) effectoz2.Size = NumberSequence.new({pt1er2,pt2er}) effectoz2.Speed = NumberRange.new(0,0) effectoz2.Rotation = NumberRange.new(-300,300) effectoz2.RotSpeed = NumberRange.new(-500,500) effectoz2.Speed = NumberRange.new(250) effectoz2.VelocitySpread = 10000000 effectoz2.Rate = 1000000000000 spart.Size = vt(25,25,25) spart.Transparency = 1 spart.CFrame = saveposition wait(0.5) Damagefunc(hit,50,60,-20,"Normal",root,.2,1) effectoz2.Rate = 0 wait(5) effectoz.Rate = 0 tick2e:Stop() wait(2.5) spart:Destroy() end end end) wait(0.215) end wait(1) effecton.Rate = 0 for i = 0, 10 do larm.Transparency = larm.Transparency - 0.1 rarm.Transparency = rarm.Transparency - 0.1 lleg.Transparency = lleg.Transparency - 0.1 rleg.Transparency = rleg.Transparency - 0.1 tors.Transparency = tors.Transparency - 0.1 hed.Transparency = hed.Transparency - 0.1 wait() end sbs:Destroy() char.Humanoid.WalkSpeed = 16 for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale - vt(2.5,0,2.5) wait(0) end effecton:Destroy() shur:Destroy() end function SplashFire() local shur = Instance.new("Part",char) local gahd = Instance.new("Sound",char) char.Humanoid.WalkSpeed = 0 gahd.SoundId = "rbxassetid://313945165" gahd.Volume = 2.5 gahd.Pitch = 0.625 gahd:Play() shur.Transparency = 1 shur.Material = "Neon" shur.BrickColor = bc("Bright red") shur.Anchored = true shur.CFrame = tors.CFrame + vt(0,-2.5,0) shur.Size = vt(1,0.2,1) shur.CanCollide = false local dec = Instance.new("Decal",shur) dec.Texture = symbolimg dec.Face = "Top" local dec2 = dec:Clone() dec2.Parent = shur dec2.Face = "Bottom" local Meshshur = Instance.new("CylinderMesh",shur) Meshshur.Scale = vt(0,1,0) for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale + vt(1,0,1) wait(0) end for i = 0, 10 do larm.Transparency = larm.Transparency + 0.1 rarm.Transparency = rarm.Transparency + 0.1 lleg.Transparency = lleg.Transparency + 0.1 rleg.Transparency = rleg.Transparency + 0.1 tors.Transparency = tors.Transparency + 0.1 hed.Transparency = hed.Transparency + 0.1 wait() end local pt1mass = NumberSequenceKeypoint.new(0,15,0) local effecton = Instance.new("ParticleEmitter",root) effecton.LightEmission = 1 effecton.Texture = "rbxassetid://242109931" effecton.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effecton.Rate = 1000 effecton.Lifetime = NumberRange.new(0.75) effecton.Size = NumberSequence.new({pt1mass,pt2}) effecton.Speed = NumberRange.new(5) effecton.VelocitySpread = 100000000 effecton.RotSpeed = NumberRange.new(-300,300) local ash = Instance.new("Sound",root) ash.SoundId = "rbxassetid://181004943" ash.Volume = 4 ash.Pitch = 0.5 ash:Play() local sbs = Instance.new("BodyPosition", root) sbs.P = 3000 sbs.D = 1000 sbs.maxForce = Vector3.new(500000, 500000000, 500000) sbs.position = root.CFrame.p + Vector3.new(0, 200, 0) wait(1) sbs.position = root.CFrame.p - Vector3.new(0, 500, 0) wait(0.1) sbs:Destroy() wait(0.15) effecton.Rate = 0 local spart = Instance.new("Part",char) spart.Size = vt(2,2,2) spart.BrickColor = BrickColor.new("Deep orange") spart.Transparency = 1 spart.CanCollide = false spart.Material = "Neon" spart.Anchored = true spart.CFrame = root.CFrame + Vector3.new(0,0.1,0) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304529688" tick.Volume = 1.5 tick.Pitch = 0.85 tick:Play() local tickn = Instance.new("Sound",spart) tickn.SoundId = "rbxassetid://138186576" tickn.Volume = 1.5 tickn.Pitch = 1 tickn:Play() local tick2e = Instance.new("Sound",spart) tick2e.SoundId = "rbxassetid://272207079" tick2e.Volume = 2.5 tick2e.Looped = true tick2e.Pitch = 0.85 tick2e:Play() local pt1er = NumberSequenceKeypoint.new(0,10,0) local pt1er2 = NumberSequenceKeypoint.new(0,20,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 1 effectoz.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz.Lifetime = NumberRange.new(2.5) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Speed = NumberRange.new(0,0) effectoz.Rotation = NumberRange.new(-300,300) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(5) effectoz.VelocitySpread = 10000000 effectoz.Rate = 1000000000000 local effectoz2 = Instance.new("ParticleEmitter",spart) effectoz2.Texture = "rbxassetid://242109931" effectoz2.LightEmission = 1 effectoz2.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz2.Lifetime = NumberRange.new(0.5) effectoz2.Size = NumberSequence.new({pt1er2,pt2er}) effectoz2.Speed = NumberRange.new(0,0) effectoz2.Rotation = NumberRange.new(-300,300) effectoz2.RotSpeed = NumberRange.new(-500,500) effectoz2.Speed = NumberRange.new(100) effectoz2.VelocitySpread = 10000000 effectoz2.Rate = 1000000000000 spart.Size = vt(35,5,35) spart.Transparency = 1 spart.CFrame = root.CFrame wait(0.5) spart.Touched:connect(function(hit) Damagefunc(hit,25,30,-20,"Normal",root,.2,1) end) ash:Destroy() effectoz2.Rate = 0 wait(5) effecton:Destroy() effectoz.Rate = 0 tick2e:Stop() wait(2.5) spart:Destroy() wait(1) for i = 0, 10 do larm.Transparency = larm.Transparency - 0.1 rarm.Transparency = rarm.Transparency - 0.1 lleg.Transparency = lleg.Transparency - 0.1 rleg.Transparency = rleg.Transparency - 0.1 tors.Transparency = tors.Transparency - 0.1 hed.Transparency = hed.Transparency - 0.1 wait() end sbs:Destroy() char.Humanoid.WalkSpeed = 16 for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale - vt(1,0,1) wait(0) end shur:Destroy() end function MassiveFireBall() local shur = Instance.new("Part",char) local gahd = Instance.new("Sound",char) char.Humanoid.WalkSpeed = 0 gahd.SoundId = "rbxassetid://313945165" gahd.Volume = 2.5 gahd.Pitch = 0.6 gahd:Play() shur.Transparency = 1 shur.Material = "Neon" shur.BrickColor = bc("Bright red") shur.Anchored = true shur.CFrame = tors.CFrame + vt(0,-2.5,0) shur.Size = vt(1,0.2,1) shur.CanCollide = false local dec = Instance.new("Decal",shur) dec.Texture = symbolimg dec.Face = "Top" local dec2 = dec:Clone() dec2.Parent = shur dec2.Face = "Bottom" local Meshshur = Instance.new("CylinderMesh",shur) Meshshur.Scale = vt(0,1,0) for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale + vt(1.25,0,1.25) wait(0) end local touched = false local delay = false local spart = Instance.new("Part",char) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304448425" tick.Volume = 1.5 tick.Pitch = 0.85 tick:Play() spart.Size = vt(2,2,2) spart.BrickColor = BrickColor.new("Deep orange") spart.Transparency = 1 spart.CanCollide = false spart.Material = "Neon" spart.CFrame = hed.CFrame + Vector3.new(0,0.1,0) local pt1e = NumberSequenceKeypoint.new(0,15,0) local pt2e = NumberSequenceKeypoint.new(1,0,0) local effecto = Instance.new("ParticleEmitter",spart) effecto.Texture = "rbxassetid://242109931" effecto.LightEmission = 1 effecto.LockedToPart = false effecto.Color = ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569)) effecto.Rate = 10000 effecto.Lifetime = NumberRange.new(0.5) effecto.Size = NumberSequence.new({pt1e,pt2e}) effecto.Transparency = NumberSequence.new({pt1a,pt2a}) effecto.Speed = NumberRange.new(0,0) effecto.RotSpeed = NumberRange.new(-500,500) local bv = Instance.new("BodyVelocity") bv.maxForce = Vector3.new(1e9, 1e9, 1e9) bv.velocity = mouse.Hit.lookVector * 150 bv.Parent = spart wait(0.05) spart.Touched:connect(function(hit) if touched == false then touched = true if hit.Name == "Water" then local pt1er = NumberSequenceKeypoint.new(0,15,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local smokecolor = Color3.new(0.5,0.5,0.5) local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://629468689" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() effecto.Rate = 0 local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 0.75 effectoz.Color = ColorSequence.new(smokecolor) effectoz.Lifetime = NumberRange.new(3) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Rotation = NumberRange.new(-300,300) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 75 effectoz.Rate = 1000000000000 spart.Anchored = true wait(3) effectoz.Rate = 0 wait(2.5) spart:Destroy() end if hit.Name ~= "Water" then local saveposition = spart.CFrame spart.Anchored = true local tick = Instance.new("Sound",spart) tick.SoundId = "rbxassetid://304529688" tick.Volume = 1.5 tick.Pitch = 0.85 tick:Play() local tickn = Instance.new("Sound",spart) tickn.SoundId = "rbxassetid://138186576" tickn.Volume = 1.5 tickn.Pitch = 1 tickn:Play() local tick2e = Instance.new("Sound",spart) tick2e.SoundId = "rbxassetid://272207079" tick2e.Volume = 2.5 tick2e.Looped = true tick2e.Pitch = 0.85 tick2e:Play() effecto:Destroy() local pt1er = NumberSequenceKeypoint.new(0,15,0) local pt1er2 = NumberSequenceKeypoint.new(0,25,0) local pt2er = NumberSequenceKeypoint.new(1,0,0) local effectoz = Instance.new("ParticleEmitter",spart) effectoz.Texture = "rbxassetid://242109931" effectoz.LightEmission = 1 effectoz.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz.Lifetime = NumberRange.new(2.5) effectoz.Size = NumberSequence.new({pt1er,pt2er}) effectoz.Speed = NumberRange.new(0,0) effectoz.Rotation = NumberRange.new(-300,300) effectoz.Transparency = NumberSequence.new({pt1a,pt2a}) effectoz.RotSpeed = NumberRange.new(-500,500) effectoz.Speed = NumberRange.new(10) effectoz.VelocitySpread = 10000000 effectoz.Rate = 1000000000000 local effectoz2 = Instance.new("ParticleEmitter",spart) effectoz2.Texture = "rbxassetid://242109931" effectoz2.LightEmission = 1 effectoz2.Color = ColorSequence.new(ColorSequence.new(Color3.new(0.992157, 1, 0.67451),Color3.new(1, 0.658824, 0.321569))) effectoz2.Lifetime = NumberRange.new(0.5) effectoz2.Size = NumberSequence.new({pt1er2,pt2er}) effectoz2.Speed = NumberRange.new(0,0) effectoz2.Rotation = NumberRange.new(-300,300) effectoz2.RotSpeed = NumberRange.new(-500,500) effectoz2.Speed = NumberRange.new(250) effectoz2.VelocitySpread = 10000000 effectoz2.Rate = 1000000000000 spart.Size = vt(25,25,25) spart.Transparency = 1 spart.CFrame = saveposition wait(0.5) Damagefunc(hit,50,60,-20,"Normal",root,.2,1) effectoz2.Rate = 0 wait(5) effectoz.Rate = 0 tick2e:Stop() wait(2.5) spart:Destroy() end end end) char.Humanoid.WalkSpeed = 16 wait(1) for i = 0, 25 do shur.CFrame = tors.CFrame + vt(0,-2.95,0) Meshshur.Scale = Meshshur.Scale - vt(1.25,0,1.25) wait(0) end shur:Destroy() end mouse.KeyDown:connect(function(k) k = k:lower() if k == "q" and attacking == false then if plr.Character and mouse.Hit and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') and plr.Character.Torso:FindFirstChild('Left Shoulder') then shooting = true local Head = plr.Character.Head local LeftShoulder = plr.Character.Torso["Left Shoulder"] local LeftArm = plr.Character["Left Arm"] local MousePosition = mouse.Hit.p local ToMouse = (MousePosition - Head.Position).unit local Angle = math.acos(ToMouse:Dot(Vector3.new(0, 1, 0))) local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (LeftArm.Size.X / 2)), ((Head.Size.Y / 2) - (LeftArm.Size.Z / 2)), 0))) local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(1 ,0, 1)).unit local Look = (Head.CFrame.lookVector * Vector3.new(1, 0, 1)).unit local LateralAngle = math.acos(ToMouseRightArm:Dot(Look)) if tostring(LateralAngle) == "-1.#IND" then LateralAngle = 0 end tick.SoundId = "http://www.roblox.com/asset/?id=267083313" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() tick.Looped = false local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm) if LateralAngle > (math.pi / 2) then LateralAngle = (math.pi / 2) end if Cross.Y < 0 then LateralAngle = -LateralAngle end LeftShoulder.C0 = CFrame.new(LeftShoulder.C0.p) * CFrame.Angles(((math.pi / 2) - Angle), ((math.pi / -2) + LateralAngle), math.pi/-2) wait() wait(1) LeftShoulder.C0 = CFrame.new(LeftShoulder.C0.p)*CFrame.Angles(0,math.pi/-2,0) shooting = false end if energy >= 10 then energy = energy - 10 attacking = true Fireball() attacking = false end end if k == "r" and attacking == false then if energy >= 50 then energy = energy - 50 attacking = true MassiveFireBall() attacking = false end end if k == "t" and attacking == false then if energy >= 100 then energy = energy - 100 attacking = true Rockets() attacking = false end end if k == "e" and attacking == false then if plr.Character and mouse.Hit and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') and plr.Character.Torso:FindFirstChild('Right Shoulder') then shooting = true local Head = plr.Character.Head local RightShoulder = plr.Character.Torso["Right Shoulder"] local RightArm = plr.Character["Right Arm"] local MousePosition = mouse.Hit.p local ToMouse = (MousePosition - Head.Position).unit local Angle = math.acos(ToMouse:Dot(Vector3.new(0, 1, 0))) local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (RightArm.Size.X / 2)), ((Head.Size.Y / 2) - (RightArm.Size.Z / 2)), 0))) local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(1 ,0, 1)).unit local Look = (Head.CFrame.lookVector * Vector3.new(1, 0, 1)).unit local LateralAngle = math.acos(ToMouseRightArm:Dot(Look)) if tostring(LateralAngle) == "-1.#IND" then LateralAngle = 0 end tick.SoundId = "http://www.roblox.com/asset/?id=267083313" tick.Volume = 1.5 tick.Pitch = 1 tick:Play() tick.Looped = false local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm) if LateralAngle > (math.pi / 2) then LateralAngle = (math.pi / 2) end if Cross.Y < 0 then LateralAngle = -LateralAngle end RightShoulder.C0 = CFrame.new(RightShoulder.C0.p) * CFrame.Angles(((math.pi / 2) - Angle), ((math.pi / 2) + LateralAngle), math.pi/2) wait() wait(1) RightShoulder.C0 = CFrame.new(RightShoulder.C0.p)*CFrame.Angles(0,math.pi/2,0) shooting = false end if energy >= 10 then energy = energy - 10 attacking = true Fireball() attacking = false end end if k == "0" and attacking == false then if charge == false then tick:Resume() tick2:Resume() charge = true attacking = true if charge == true then effecto.Rate = 10000 end end end end) mouse.KeyUp:connect(function(k) k = k:lower() if k == "0" then charge = false tick:Pause() tick2:Pause() attacking = false effecto.Rate = 0 end end) while wait() do healthgui.Text = "Energy: " ..math.floor(energy).. "/1000" if charge == true then while true do healthgui.Text = "Energy: " ..math.floor(energy).. "/1000" energy = energy + 0.75 wait() if energy > 1000 then energy = 1000 end if charge == false then break end end end if energy > 1000 then energy = 1000 end end