Pastebin
API
tools
faq
paste
Login
Sign up
Please fix the following errors:
New Paste
Syntax Highlighting
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end local Player,game,owner = owner,game local RealPlayer = Player do print("FE Compatibility code by Mokiros") local rp = RealPlayer script.Parent = rp.Character --RemoteEvent for communicating local Event = Instance.new("RemoteEvent") Event.Name = "UserInput_Event" --Fake event to make stuff like Mouse.KeyDown work local function fakeEvent() local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end} t.connect = t.Connect return t end --Creating fake input objects with fake variables local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()} local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil end} --Merged 2 functions into one by checking amount of arguments CAS.UnbindAction = CAS.BindAction --This function will trigger the events that have been :Connect()'ed local function te(self,ev,...) local t = m[ev] if t and t._fakeEvent then for _,f in pairs(t.Functions) do f(...) end end end m.TrigEvent = te UIS.TrigEvent = te Event.OnServerEvent:Connect(function(plr,io) if plr~=rp then return end m.Target = io.Target m.Hit = io.Hit if not io.isMouse then local b = io.UserInputState == Enum.UserInputState.Begin if io.UserInputType == Enum.UserInputType.MouseButton1 then return m:TrigEvent(b and "Button1Down" or "Button1Up") end for _,t in pairs(CAS.Actions) do for _,k in pairs(t.Keys) do if k==io.KeyCode then t.Function(t.Name,io.UserInputState,io) end end end m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false) end end) Event.Parent = NLS([==[ local Player = game:GetService("Players").LocalPlayer local Event = script:WaitForChild("UserInput_Event") local Mouse = Player:GetMouse() local UIS = game:GetService("UserInputService") local input = function(io,a) if a then return end --Since InputObject is a client-side instance, we create and pass table instead Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) end UIS.InputBegan:Connect(input) UIS.InputEnded:Connect(input) local h,t --Give the server mouse data 30 times every second, but only if the values changed --If player is not moving their mouse, client won't fire events while wait(1/30) do if h~=Mouse.Hit or t~=Mouse.Target then h,t=Mouse.Hit,Mouse.Target Event:FireServer({isMouse=true,Target=t,Hit=h}) end end]==],Player.Character) ----Sandboxed game object that allows the usage of client-side methods and services --Real game object local _rg = game --Metatable for fake service local fsmt = { __index = function(self,k) local s = rawget(self,"_RealService") if s then return s[k] end end, __newindex = function(self,k,v) local s = rawget(self,"_RealService") if s then s[k]=v end end, __call = function(self,...) local s = rawget(self,"_RealService") if s then return s(...) end end } local function FakeService(t,RealService) t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService return setmetatable(t,fsmt) end --Fake game object local g = { GetService = function(self,s) return self[s] end, Players = FakeService({ LocalPlayer = FakeService({GetMouse=function(self)return m end},Player) },"Players"), UserInputService = FakeService(UIS,"UserInputService"), ContextActionService = FakeService(CAS,"ContextActionService"), } rawset(g.Players,"localPlayer",g.Players.LocalPlayer) g.service = g.GetService g.RunService = FakeService({ RenderStepped = _rg:GetService("RunService").Heartbeat, BindToRenderStep = function(self,name,_,fun) end, UnbindFromRenderStep = function(self,name) self._btrs[name]:Disconnect() end, },"RunService") setmetatable(g,{ __index=function(self,s) return _rg:GetService(s) or typeof(_rg[s])=="function" and function(_,...)return _rg[s](_rg,...)end or _rg[s] end, __newindex = fsmt.__newindex, __call = fsmt.__call }) --Changing owner to fake player object to support owner:GetMouse() game,owner = g,g.Players.LocalPlayer end wait(0.2) Player = game:GetService("Players").LocalPlayer PlayerGui = Player.PlayerGui Cam = workspace.CurrentCamera Backpack = Player.Backpack Character = Player.Character Humanoid = Character.Humanoid Mouse = Player:GetMouse() RootPart = Character["HumanoidRootPart"] Torso = Character["Torso"] Head = Character["Head"] RightArm = Character["Right Arm"] LeftArm = Character["Left Arm"] RightLeg = Character["Right Leg"] LeftLeg = Character["Left Leg"] RootJoint = RootPart["RootJoint"] Neck = Torso["Neck"] RightShoulder = Torso["Right Shoulder"] LeftShoulder = Torso["Left Shoulder"] RightHip = Torso["Right Hip"] LeftHip = Torso["Left Hip"] IT = Instance.new CF = CFrame.new VT = Vector3.new RAD = math.rad C3 = Color3.new UD2 = UDim2.new BRICKC = BrickColor.new ANGLES = CFrame.Angles EULER = CFrame.fromEulerAnglesXYZ COS = math.cos ACOS = math.acos SIN = math.sin ASIN = math.asin ABS = math.abs MRANDOM = math.random FLOOR = math.floor function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET) local NEWMESH = IT(MESH) if MESH == "SpecialMesh" then NEWMESH.MeshType = MESHTYPE if MESHID ~= "nil" and MESHID ~= "" then NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID end if TEXTUREID ~= "nil" and TEXTUREID ~= "" then NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID end end NEWMESH.Offset = OFFSET or VT(0, 0, 0) NEWMESH.Scale = SCALE NEWMESH.Parent = PARENT return NEWMESH end function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR) local NEWPART = IT("Part") NEWPART.formFactor = FORMFACTOR NEWPART.Reflectance = REFLECTANCE NEWPART.Transparency = TRANSPARENCY NEWPART.CanCollide = false NEWPART.Locked = true if ANCHOR == true then NEWPART.Anchored = true end NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR)) NEWPART.Name = NAME NEWPART.Size = SIZE NEWPART.Position = Torso.Position NEWPART.Material = MATERIAL NEWPART:BreakJoints() NEWPART.Parent = PARENT return NEWPART end --//=================================\\ --|| CUSTOMIZATION --\\=================================// Class_Name = "FireFist.exe" Weapon_Name = "Add-ons" Custom_Colors = { Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities. } Player_Size = 1 --Size of the player. Animation_Speed = 3 Animation_Speed2 = 0.7 Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60) local Speed = 25 local Effects2 = {} --//=================================\\ --|| END OF CUSTOMIZATION --\\=================================// local function weldBetween(a, b) local weldd = Instance.new("ManualWeld") weldd.Part0 = a weldd.Part1 = b weldd.C0 = CFrame.new() weldd.C1 = b.CFrame:inverse() * a.CFrame weldd.Parent = a return weldd end function createaccessory(attachmentpart,mesh,texture,scale,offset,color) local acs = Instance.new("Part") acs.CanCollide = false acs.Anchored = false acs.Size = Vector3.new(0,0,0) acs.CFrame = attachmentpart.CFrame acs.Parent = Character acs.BrickColor = color local meshs = Instance.new("SpecialMesh") meshs.MeshId = mesh meshs.TextureId = texture meshs.Parent = acs meshs.Scale = scale meshs.Offset = offset weldBetween(attachmentpart,acs) end function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE) if TYPE == "Gem" then local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0)) acs.Anchored = false acs.CanCollide = false acs.CFrame = PART.CFrame local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET) weldBetween(PART,acs) elseif TYPE == "Skull" then local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0)) acs.Anchored = false acs.CanCollide = false acs.CFrame = PART.CFrame local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET) weldBetween(PART,acs) elseif TYPE == "Eye" then local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0)) acs.Anchored = false acs.CanCollide = false acs.CFrame = PART.CFrame local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET) weldBetween(PART,acs) end end --//=================================\\ --|| USEFUL VALUES --\\=================================// local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) local CO1 = 0 local CO2 = 0 local CO3 = 0 local CO4 = 0 local CHANGEDEFENSE = 0 local CHANGEDAMAGE = 0 local CHANGEMOVEMENT = 0 local ANIM = "Idle" local ATTACK = false local EQUIPPED = false local HOLD = false local COMBO = 1 local LASTPOINT = nil local BLCF = nil local SCFR = nil local STAGGERHITANIM = false local STAGGERANIM = false local STUNANIM = false local CRITCHANCENUMBER = 0 local IDLENUMBER = 0 local DONUMBER = 0 local HANDIDLE = false local Rooted = false local MANA = 1000 local MAXMANA = MANA local SINE = 0 local CHANGE = 2 / Animation_Speed local WALKINGANIM = false local WALK = 0 local DISABLEJUMPING = false local ROBLOXIDLEANIMATION = IT("Animation") ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation" ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571" --ROBLOXIDLEANIMATION.Parent = Humanoid local WEAPONGUI = IT("ScreenGui", PlayerGui) WEAPONGUI.Name = "Weapon GUI" local Weapon = IT("Model") Weapon.Name = Weapon_Name local Effects = IT("Folder", Weapon) Effects.Name = "Effects" local ANIMATOR = Humanoid.Animator local ANIMATE = Character.Animate local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"} local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"} local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"} local HITBLOCKSOUNDS = {"199148933", "199148947"} local UNANCHOR = true local MAGICPARTICLE = "655109389" local SKILLTEXTCOLOR = C3(1,0.3,0) --//=================================\\ --\\=================================// --//=================================\\ --|| SAZERENOS' ARTIFICIAL HEARTBEAT --\\=================================// ArtificialHB = Instance.new("BindableEvent", script) ArtificialHB.Name = "ArtificialHB" script:WaitForChild("ArtificialHB") frame = Frame_Speed tf = 0 allowframeloss = false tossremainder = false lastframe = tick() script.ArtificialHB:Fire() game:GetService("RunService").Heartbeat:connect(function(s, p) tf = tf + s if tf >= frame then if allowframeloss then script.ArtificialHB:Fire() lastframe = tick() else for i = 1, math.floor(tf / frame) do script.ArtificialHB:Fire() end lastframe = tick() end if tossremainder then tf = 0 else tf = tf - frame * math.floor(tf / frame) end end end) --//=================================\\ --\\=================================// --//=================================\\ --|| SOME FUNCTIONS --\\=================================// function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS) return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS) end function PositiveAngle(NUMBER) if NUMBER >= 0 then NUMBER = 0 end return NUMBER end function NegativeAngle(NUMBER) if NUMBER <= 0 then NUMBER = 0 end return NUMBER end function Swait(NUMBER) if NUMBER == 0 or NUMBER == nil then ArtificialHB.Event:wait() else for i = 1, NUMBER do ArtificialHB.Event:wait() end end end function QuaternionFromCFrame(cf) local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() local trace = m00 + m11 + m22 if trace > 0 then local s = math.sqrt(1 + trace) local recip = 0.5 / s return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5 else local i = 0 if m11 > m00 then i = 1 end if m22 > (i == 0 and m00 or m11) then i = 2 end if i == 0 then local s = math.sqrt(m00 - m11 - m22 + 1) local recip = 0.5 / s return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip elseif i == 1 then local s = math.sqrt(m11 - m22 - m00 + 1) local recip = 0.5 / s return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip elseif i == 2 then local s = math.sqrt(m22 - m00 - m11 + 1) local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip end end end function QuaternionToCFrame(px, py, pz, x, y, z, w) local xs, ys, zs = x + x, y + y, z + z local wx, wy, wz = w * xs, w * ys, w * zs local xx = x * xs local xy = x * ys local xz = x * zs local yy = y * ys local yz = y * zs local zz = z * zs return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy)) end function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size) local fp=IT("Part") fp.formFactor=formfactor fp.Parent=parent fp.Reflectance=reflectance fp.Transparency=transparency fp.CanCollide=false fp.Locked=true fp.BrickColor=BrickColor.new(tostring(brickcolor)) fp.Name=name fp.Size=size fp.Position=Character.Torso.Position NoOutlines(fp) fp.Material=material fp:BreakJoints() return fp end function mesh(Mesh,part,meshtype,meshid,offset,scale) local mesh=IT(Mesh) mesh.Parent=part if Mesh=="SpecialMesh" then mesh.MeshType=meshtype mesh.MeshId=meshid end mesh.Offset=offset mesh.Scale=scale return mesh end function QuaternionSlerp(a, b, t) local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4] local startInterp, finishInterp; if cosTheta >= 0.0001 then if (1 - cosTheta) > 0.0001 then local theta = ACOS(cosTheta) local invSinTheta = 1 / SIN(theta) startInterp = SIN((1 - t) * theta) * invSinTheta finishInterp = SIN(t * theta) * invSinTheta else startInterp = 1 - t finishInterp = t end else if (1 + cosTheta) > 0.0001 then local theta = ACOS(-cosTheta) local invSinTheta = 1 / SIN(theta) startInterp = SIN((t - 1) * theta) * invSinTheta finishInterp = SIN(t * theta) * invSinTheta else startInterp = t - 1 finishInterp = t end end return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp end function Clerp(a, b, t) local qa = {QuaternionFromCFrame(a)} local qb = {QuaternionFromCFrame(b)} local ax, ay, az = a.x, a.y, a.z local bx, by, bz = b.x, b.y, b.z local _t = 1 - t return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t)) end function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME) local frame = IT("Frame") frame.BackgroundTransparency = TRANSPARENCY frame.BorderSizePixel = BORDERSIZEPIXEL frame.Position = POSITION frame.Size = SIZE frame.BackgroundColor3 = COLOR frame.BorderColor3 = BORDERCOLOR frame.Name = NAME frame.Parent = PARENT return frame end function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME) local label = IT("TextLabel") label.BackgroundTransparency = 1 label.Size = UD2(1, 0, 1, 0) label.Position = UD2(0, 0, 0, 0) label.TextColor3 = TEXTCOLOR label.TextStrokeTransparency = STROKETRANSPARENCY label.TextTransparency = TRANSPARENCY label.FontSize = TEXTFONTSIZE label.Font = TEXTFONT label.BorderSizePixel = BORDERSIZEPIXEL label.TextScaled = false label.Text = TEXT label.Name = NAME label.Parent = PARENT return label end function NoOutlines(PART) PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10 end function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1) local NEWWELD = IT(TYPE) NEWWELD.Part0 = PART0 NEWWELD.Part1 = PART1 NEWWELD.C0 = C0 NEWWELD.C1 = C1 NEWWELD.Parent = PARENT return NEWWELD end function CreateSound(ID, PARENT, VOLUME, PITCH) local NEWSOUND = nil coroutine.resume(coroutine.create(function() NEWSOUND = IT("Sound", PARENT) NEWSOUND.Volume = VOLUME NEWSOUND.Pitch = PITCH NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID Swait() NEWSOUND:play() game:GetService("Debris"):AddItem(NEWSOUND, 10) end)) return NEWSOUND end function CFrameFromTopBack(at, top, back) local right = top:Cross(back) return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z) end function CreateWave(inair,size,doesrotate,rotatedirection,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "FileMesh" mesh.MeshId = "http://www.roblox.com/asset/?id=20329976" mesh.Scale = VT(size,size,size) mesh.Offset = VT(0,0,-size/8) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,0,size/5) mesh.Offset = VT(0,0,-(mesh.Scale.X/8)) if doesrotate == true then wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0) end wave.Transparency = wave.Transparency + (0.5/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "FileMesh" mesh.MeshId = "http://www.roblox.com/asset/?id=1051557" mesh.Scale = VT(size,size,size) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,size/10,size/5) if doesrotate == true then wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0) end wave.Transparency = wave.Transparency + (0.5/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "FileMesh" mesh.MeshId = "http://www.roblox.com/asset/?id=102638417" mesh.Scale = VT(size,size,size) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,0,size/5) if doesrotate == true then wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0) end wave.Transparency = wave.Transparency + (0.5/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function CreateRing(inair,size,doesrotate,rotatedirection,waitt,cframe,spin1,spin2,color) local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "FileMesh" mesh.MeshId = "http://www.roblox.com/asset/?id=3270017" mesh.Scale = VT(size,size,size) mesh.Offset = VT(0,0,0) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5) if doesrotate == true then wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1) end wave.Transparency = wave.Transparency + (0.5/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function MagicSphere(size,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "Sphere" mesh.Scale = VT(size,size,size) mesh.Offset = VT(0,0,0) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5) wave.Transparency = wave.Transparency + (1/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function MagicSphere2(size,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(1,1,1), true) local mesh = IT("SpecialMesh",wave) mesh.MeshType = "Sphere" mesh.Scale = VT(size,size,size) mesh.Offset = VT(0,0,0) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale - VT(size/waitt,size/waitt,size/waitt) wave.Transparency = wave.Transparency - (1/waitt) end wave:remove() end)) end function BreakEffect(brickcolor,cframe,x1,y1,z1,material) local prt=part("Custom",workspace,material,0,0,brickcolor,"Effect",VT(0.5,0.5,0.5)) prt.Anchored=true prt.CFrame=cframe*EULER(math.random(-50,50),math.random(-50,50),math.random(-50,50)) local msh=mesh("SpecialMesh",prt,"Sphere","",VT(0,0,0),VT(x1,y1,z1)) coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb) CF=Part.CFrame Numbb=0 randnumb=math.random()-math.random() for i=0,1,0.05 do wait() CF=CF*CF(0,1,0) --Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0) Part.CFrame=CF*EULER(Numbb,0,0) Part.Transparency=i Numbb=Numbb+randnumb end Part.Parent=nil end),prt) end function MagicBlock(size,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size), true) local mesh = IT("BlockMesh",wave) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5) wave.CFrame = cframe * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))) wave.Transparency = wave.Transparency + (1/waitt) if wave.Transparency > 0.99 then wave:remove() end end end)) end function MagicBlock2(size,waitt,cframe,color) local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(size,size,size), true) local mesh = IT("BlockMesh",wave) wave.CFrame = cframe coroutine.resume(coroutine.create(function(PART) for i = 1, waitt do Swait() mesh.Scale = mesh.Scale - VT(1/waitt,1/waitt,1/waitt) wave.CFrame = cframe * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))) wave.Transparency = wave.Transparency - (1/waitt) end wave:Destroy() end)) end local EyeSizes={ NumberSequenceKeypoint.new(0,1,0), NumberSequenceKeypoint.new(1,0.2,0) } local EyeTrans={ NumberSequenceKeypoint.new(0,0.8,0), NumberSequenceKeypoint.new(1,1,0) } local PE=Instance.new("ParticleEmitter") PE.LightEmission=0.7 PE.Size=NumberSequence.new(EyeSizes) PE.Transparency=NumberSequence.new(EyeTrans) PE.Lifetime=NumberRange.new(0.35,0.35,0.35) PE.Rotation=NumberRange.new(0,360) PE.Rate=15 PE.Acceleration = Vector3.new(0,75,0) PE.Drag = 5 PE.Enabled = false PE.VelocitySpread = 999 PE.Speed = NumberRange.new(0,0,0) PE.Texture="http://www.roblox.com/asset/?id=1179557490" PE.ZOffset = 0 PE.Name = "Particles" function CreateParticles(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed) local particle = nil coroutine.resume(coroutine.create(function(PART) particle = PE:Clone() Swait() particle.Rate = 999 particle.Parent = art particle.Acceleration = accel if type == "Fire" then local EyeSizes={ NumberSequenceKeypoint.new(0,size,size/2), NumberSequenceKeypoint.new(1,size/4,size/8) } particle.Size = NumberSequence.new(EyeSizes) elseif type == "Smoke" then local EyeSizes={ NumberSequenceKeypoint.new(0,0.5,0), NumberSequenceKeypoint.new(1,5,0.5) } particle.Size = NumberSequence.new(EyeSizes) elseif type == "Solid" then local EyeSizes={ NumberSequenceKeypoint.new(0,0.5,0), NumberSequenceKeypoint.new(1,0.5,0) } particle.Size = NumberSequence.new(EyeSizes) end particle.Lifetime=NumberRange.new(lifetime) particle.Drag = drag if locked == true then particle.LockedToPart = true end particle.Speed = NumberRange.new(speed,speed,speed) particle.Texture = "http://www.roblox.com/asset/?id=296874871" particle.Enabled = isenabledbydefault particle.Color = ColorSequence.new(Color3.new(255/255, 75/255, 0)) end)) return particle end --//=================================\\ --\\=================================// --//=================================\\ --|| WEAPON CREATION --\\=================================// if Player_Size ~= 1 then for _, v in pairs (Weapon:GetChildren()) do if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then local p1 = v.Part1 v.Part1 = nil local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components() v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12) v.Part1 = p1 elseif v.ClassName == "Part" then for _, b in pairs (v:GetChildren()) do if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size) end end end end end function MakeForm(PART,TYPE) if TYPE == "Cyl" then local MSH = IT("CylinderMesh",PART) elseif TYPE == "Ball" then local MSH = IT("SpecialMesh",PART) MSH.MeshType = "Sphere" elseif TYPE == "Wedge" then local MSH = IT("SpecialMesh",PART) MSH.MeshType = "Wedge" end end function createaddon(position,size) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(0.25*Player_Size, size*0.8*Player_Size,size*0.8*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.45 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(0.25*Player_Size,size*Player_Size,size*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.425 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0)) end local FIST = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(1.025*Player_Size,2.025*Player_Size,1.025*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", FIST, RightArm, FIST, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) FIST.CanCollide = true local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,1.05*Player_Size,1.05*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.06*Player_Size,0.2*Player_Size,1.06*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.55*Player_Size,1.05*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.25*Player_Size,1.05*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.15 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0)) MakeForm(part,"Wedge") local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.25*Player_Size,1.05*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) MakeForm(part,"Wedge") local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.035*Player_Size,0.3*Player_Size,1.035*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.035*Player_Size,0.3*Player_Size,1.035*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.1*Player_Size,1.1*Player_Size,1.1*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) MakeForm(part,"Wedge") local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.15*Player_Size,1.15*Player_Size,1.15*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.05 * Player_Size, -0.505 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) MakeForm(part,"Wedge") local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, 0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0)) createaddon(0.4,0.4) createaddon(0.5,0.3) createaddon(0.6,0.2) local part = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(0.3*Player_Size,1.1*Player_Size,0.3*Player_Size),false) local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0)) for _, c in pairs(Weapon:GetChildren()) do if c.ClassName == "Part" then c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0) end end Weapon.Parent = Character Humanoid.Died:connect(function() ATTACK = true end) print(Class_Name.." loaded.") local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame") local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame") local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Fireball", SKILLTEXTCOLOR, 8, "SciFi", 0, 2, 1, "Text 1") local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Infernal drive", SKILLTEXTCOLOR, 8, "SciFi", 0, 2, 1, "Text 2") local MANABAR = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.82, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0),"Mana Bar") local MANACOVER = CreateFrame(MANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(0,0,0), C3(0, 0, 0),"Mana Cover") local MANATEXT = CreateLabel(MANABAR, "ENERGY ["..FLOOR(MANA).."]", C3(1, 1, 1), "Size32", "SciFi", 1, 2, 1, "Mana Text") --//=================================\\ --|| DAMAGE FUNCTIONS --\\=================================// function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR) local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT()) STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0)) local BODYGYRO = IT("BodyGyro", STATPART) local BODYPOSITION = IT("BodyPosition", STATPART) BODYPOSITION.P = 2000 BODYPOSITION.D = 100 BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge) if LABELTYPE == "Normal" then BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2)) elseif LABELTYPE == "Debuff" then BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2)) elseif LABELTYPE == "Interruption" then BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2)) end game:GetService("Debris"):AddItem(STATPART ,5) local BILLBOARDGUI = Instance.new("BillboardGui", STATPART) BILLBOARDGUI.Adornee = STATPART BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0) BILLBOARDGUI.StudsOffset = VT(-2, 2, 0) BILLBOARDGUI.AlwaysOnTop = false local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI) TEXTLABEL.BackgroundTransparency = 1 TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0) TEXTLABEL.Text = TEXT TEXTLABEL.Font = "SciFi" TEXTLABEL.FontSize="Size42" TEXTLABEL.TextColor3 = COLOR TEXTLABEL.TextStrokeTransparency = 1 TEXTLABEL.TextScaled = true TEXTLABEL.TextWrapped = true coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL) wait(0.2) for i=1, 5 do wait() THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0) end wait(1.2) for i=1, 5 do wait() THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2 THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2 THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0) end THEPART.Parent = nil end),STATPART, BODYPOSITION, TEXTLABEL) end --//=================================\\ --|| DAMAGING --\\=================================// function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier) if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid") local dmg = math.huge if humanoid.Health > 0 then if beserk == true then humanoid.Health = 0 else CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10) hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength if math.random(1,100) < critrate+1 then humanoid.Health = humanoid.Health - dmg*critmultiplier StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0)) else humanoid.Health = humanoid.Health - dmg StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0)) end local defence = Instance.new("BoolValue",hit.Parent) defence.Name = ("HitBy"..Player.Name) game:GetService("Debris"):AddItem(defence, 0.25) end end end end function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping) local dmg = math.huge for i,v in ipairs(workspace:GetChildren()) do if v:FindFirstChild("HitBy"..Player.Name) == nil then local body = v:GetChildren() for part = 1, #body do if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then if(body[part].Position - position).Magnitude < radius then if v.ClassName == "Model" then if v:FindFirstChild("Humanoid") then if v.Humanoid.Health ~= 0 then if CanBeDodgedByJumping == true then if body[part].Position.Y < position.Y+5 then if math.random(1,100) < critrate+1 then v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0)) else v.Humanoid.Health = v.Humanoid.Health - dmg StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0)) end local defence = Instance.new("BoolValue",v) defence.Name = ("HitBy"..Player.Name) game:GetService("Debris"):AddItem(defence, 0.25) end else if beserk == true then v.Humanoid.Health = 0 end if math.random(1,100) < critrate+1 then v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0)) else v.Humanoid.Health = v.Humanoid.Health - dmg StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0)) end local defence = Instance.new("BoolValue",v) defence.Name = ("HitBy"..Player.Name) game:GetService("Debris"):AddItem(defence, 0.25) end end end end body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength end end end if v.ClassName == "Part" then if v.Anchored == false and (v.Position - position).Magnitude < radius then v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength end end end end end function killnearest(position,range,maxstrength) for i,v in ipairs(workspace:GetChildren()) do local body = v:GetChildren() for part = 1, #body do if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then if(body[part].Position - position).Magnitude < range then if v.ClassName == "Model" then v:BreakJoints() end --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2}) body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength end end end if v.ClassName == "Part" then if v.Anchored == false and (v.Position - position).Magnitude < range then --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2}) v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength end end end end --//=================================\\ --|| ATTACK FUNCTIONS AND STUFF --\\=================================// function createfireball(size,explosionsize,pos,velocity) local FIREBALLCOLORS = {"Bright red", "Bright orange", "Bright yellow"} local FIREBALLHITSOUNDS = {"522282998", "527535379", "304448425"} local FIREBALL = IT("Part",Effects) FIREBALL.Shape = "Ball" FIREBALL.Size = VT(size,size,size) FIREBALL.Material = "Neon" FIREBALL.CFrame = CF(pos) FIREBALL.Transparency = 1 local bv = Instance.new("BodyVelocity") bv.maxForce = Vector3.new(1e9, 1e9, 1e9) bv.velocity = velocity bv.Parent = FIREBALL bv.Name = "MOVE" local HIT = false local harm = FIREBALL.Touched:Connect(function(hit) if HIT == false and hit.Parent.ClassName ~= "Accessory" and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= FIREBALL.Parent then HIT = true coroutine.resume(coroutine.create(function() FIREBALL.Anchored = true FIREBALL.CanCollide = false CreateSound(FIREBALLHITSOUNDS[MRANDOM(1, #FIREBALLHITSOUNDS)], FIREBALL, 3, 1) AoEDamage(FIREBALL.Position,explosionsize*2,35,45,25,false,3,2,false,true) for i = 1, 2 do MagicBlock(explosionsize/3/i,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) MagicSphere(explosionsize/2/i,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) end Swait(250) FIREBALL:remove() end)) end end) coroutine.resume(coroutine.create(function() repeat Swait() MagicBlock2(size,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) until HIT == true end)) return FIREBALL end function Erupt(cframe,size) coroutine.resume(coroutine.create(function() local FIREBALLCOLORS = {"Bright red", "Bright orange", "Bright yellow"} local FIREPILLARHITSOUNDS = {"171378971", "646619365", "472579737", "144140670"} for i = 1, 5 do CreateSwirl(0,i,true,-0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) Swait(15) end AoEDamage(cframe.p,size,35,45,25,false,3,2,false,true) local brick = IT("Part",Effects) brick.CanCollide = false brick.Anchored = true brick.Size = VT(0,0,0) brick.Transparency = 1 brick.Name = "POS" brick.CFrame = cframe game:GetService("Debris"):AddItem(brick, 5) AoEDamage(brick.Position,size*2,35,45,25,false,3,2,false,true) CreateSound(FIREPILLARHITSOUNDS[MRANDOM(1, #FIREPILLARHITSOUNDS)], brick, 3, 1) MagicSphere(size,25,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) MagicSphere(size/2,35,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) MagicSphere(size/3,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) MagicSphere2(size*5,25,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,0.35,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,0.1,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,-0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,-0.35,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) CreateSwirl(0,size,true,-0.1,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) MagicBlock(size/6,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)]) end)) end function Attack1() ATTACK = true for i=0, 1, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(75)), 0.15 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end local harm = FIST.Touched:Connect(function(hit) dealdamage(hit,15,18,0,false,0,0) end) CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10) for i=0, 1.5, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end harm:disconnect() ATTACK = false end function Attack2() ATTACK = true for i=0, 1.5, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end local harm = FIST.Touched:Connect(function(hit) dealdamage(hit,15,18,0,false,0,0) end) CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10) for i=0, 1.5, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end harm:disconnect() ATTACK = false end function Attack3() ATTACK = true for i=0, 1, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(75)), 0.15 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end local harm = FIST.Touched:Connect(function(hit) dealdamage(hit,25,28,0,false,0,0) end) CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10) for i=0, 1.5, 0.1 / Animation_Speed2 do Swait() MagicSphere2(2,15,RightArm.CFrame * CF(0,1.2,0),"CGA brown") RootPart.CFrame = RootPart.CFrame * CF(0,0,-0.3) RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end harm:disconnect() ATTACK = false end function turnto(pos) RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z)) end function Fireball() ATTACK = true Rooted = true CreateSound("169445572", RightArm, 2, 1.6) for i=0, 5, 0.1 / Animation_Speed2 do Swait() turnto(Mouse.Hit.p) MagicSphere(0.8,15,RightArm.CFrame * CF(0,-1.5,0),"CGA brown") RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end local aimpos = Mouse.Hit.p createfireball(4,8,RightArm.CFrame * CF(0,-5,0).p,CF(RightArm.CFrame * CF(0,-5,0).p,aimpos).lookVector*100) for i=0, 1.5, 0.1 / Animation_Speed2 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.4 / Animation_Speed2) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.2 / Animation_Speed2) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2) end ATTACK = false Rooted = false end function InfernalDrive() ATTACK = true Rooted = true for i=0, 1.5, 0.1 / Animation_Speed*3 do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-40)), 0.4 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) end CreateSound("217767125", LeftArm, 10, 1) Erupt(CF(Mouse.Hit.p),15) for i=0, 1.5, 0.1 / Animation_Speed do Swait() RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-40)), 0.4 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(30)) * ANGLES(RAD(80), RAD(-10), RAD(-20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) end ATTACK = false Rooted = false end --//=================================\\ --|| ASSIGN THINGS TO KEYS --\\=================================// Humanoid.Changed:connect(function(Jump) if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then Humanoid.Jump = false end end) function MouseDown(Mouse) if ATTACK == false then if COMBO == 1 then COMBO = "HALT" Attack1() COMBO = 2 elseif COMBO == 2 then COMBO = "HALT" Attack2() COMBO = 3 elseif COMBO == 3 then COMBO = "HALT" Attack3() COMBO = 1 end end end function MouseUp(Mouse) HOLD = false end function KeyDown(Key) if Key == "z" and MANA >= 250 and ATTACK == false then MANA = MANA - 250 Fireball() end if Key == "b" and MANA >= 800 and ATTACK == false then MANA = MANA - 800 InfernalDrive() end end function KeyUp(Key) end Mouse.Button1Down:connect(function(NEWKEY) MouseDown(NEWKEY) end) Mouse.Button1Up:connect(function(NEWKEY) MouseUp(NEWKEY) end) Mouse.KeyDown:connect(function(NEWKEY) KeyDown(NEWKEY) end) Mouse.KeyUp:connect(function(NEWKEY) KeyUp(NEWKEY) end) --//=================================\\ --\\=================================// function unanchor() if UNANCHOR == true then g = Character:GetChildren() for i = 1, #g do if g[i].ClassName == "Part" then g[i].Anchored = false end end end end --//=================================\\ --|| WRAP THE WHOLE SCRIPT UP --\\=================================// Humanoid.Changed:connect(function(Jump) if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then Humanoid.Jump = false end end) ANIMATE.Parent = nil local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION) IDLEANIMATION:Play() while true do Swait() SINE = SINE + CHANGE local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude local TORSOVERTICALVELOCITY = RootPart.Velocity.y local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position) local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character) local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16) if ANIM == "Walk" and TORSOVELOCITY > 1 then RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) end if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then ANIM = "Jump" if ATTACK == false then RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed) end elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then ANIM = "Fall" if ATTACK == false then RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed) end elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then ANIM = "Idle" if ATTACK == false then RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.15 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.15 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed) end elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then ANIM = "Walk" WALK = WALK + 1 / Animation_Speed if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then WALK = 0 if WALKINGANIM == true then WALKINGANIM = false elseif WALKINGANIM == false then WALKINGANIM = true end end --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed) if ATTACK == false then RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.15 / Animation_Speed) Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed) RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed) LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed) RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed) end end if #Effects2>0 then for e=1,#Effects2 do if Effects2[e]~=nil then local Thing=Effects2[e] if Thing~=nil then local Part=Thing[1] local Mode=Thing[2] local Delay=Thing[3] local IncX=Thing[4] local IncY=Thing[5] local IncZ=Thing[6] local Part2=Thing[8] if Thing[1].Transparency<=1 then if Thing[2]=="Block1" then Thing[1].CFrame=Thing[1].CFrame Mesh=Thing[1].Mesh Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6]) Thing[1].Transparency=Thing[1].Transparency+Thing[3] elseif Thing[2]=="Cylinder" then Mesh=Thing[1].Mesh Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6]) Thing[1].Transparency=Thing[1].Transparency+Thing[3] elseif Thing[2]=="Blood" then Mesh=Thing[7] Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0) Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6]) Thing[1].Transparency=Thing[1].Transparency+Thing[3] elseif Thing[2]=="Elec" then Mesh=Thing[1].Mesh Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9]) Thing[1].Transparency=Thing[1].Transparency+Thing[3] elseif Thing[2]=="Disappear" then Thing[1].Transparency=Thing[1].Transparency+Thing[3] end else Part.Parent=nil table.remove(Effects2,e) end end end end end unanchor() Humanoid.MaxHealth = "inf" Humanoid.Health = "inf" if Rooted == false then Disable_Jump = false Humanoid.WalkSpeed = Speed elseif Rooted == true then Disable_Jump = true Humanoid.WalkSpeed = 0 end if MANA ~= MAXMANA then MANA = MANA + 1 end MANACOVER:TweenSize(UD2(1 * (MANA / MAXMANA), 0, 1, 0), "Out", "Quad", 0.1, 0.1) MANATEXT.Text = "ENERGY ["..FLOOR(MANA).."]" end --//=================================\\ --\\=================================// --//====================================================\\-- --|| END OF SCRIPT --\\====================================================//--
Optional Paste Settings
Category:
None
Cryptocurrency
Cybersecurity
Fixit
Food
Gaming
Haiku
Help
History
Housing
Jokes
Legal
Money
Movies
Music
Pets
Photo
Science
Software
Source Code
Spirit
Sports
Travel
TV
Writing
Tags:
Syntax Highlighting:
None
Bash
C
C#
C++
CSS
HTML
JSON
Java
JavaScript
Lua
Markdown (PRO members only)
Objective C
PHP
Perl
Python
Ruby
Swift
4CS
6502 ACME Cross Assembler
6502 Kick Assembler
6502 TASM/64TASS
ABAP
AIMMS
ALGOL 68
APT Sources
ARM
ASM (NASM)
ASP
ActionScript
ActionScript 3
Ada
Apache Log
AppleScript
Arduino
Asymptote
AutoIt
Autohotkey
Avisynth
Awk
BASCOM AVR
BNF
BOO
Bash
Basic4GL
Batch
BibTeX
Blitz Basic
Blitz3D
BlitzMax
BrainFuck
C
C (WinAPI)
C Intermediate Language
C for Macs
C#
C++
C++ (WinAPI)
C++ (with Qt extensions)
C: Loadrunner
CAD DCL
CAD Lisp
CFDG
CMake
COBOL
CSS
Ceylon
ChaiScript
Chapel
Clojure
Clone C
Clone C++
CoffeeScript
ColdFusion
Cuesheet
D
DCL
DCPU-16
DCS
DIV
DOT
Dart
Delphi
Delphi Prism (Oxygene)
Diff
E
ECMAScript
EPC
Easytrieve
Eiffel
Email
Erlang
Euphoria
F#
FO Language
Falcon
Filemaker
Formula One
Fortran
FreeBasic
FreeSWITCH
GAMBAS
GDB
GDScript
Game Maker
Genero
Genie
GetText
Go
Godot GLSL
Groovy
GwBasic
HQ9 Plus
HTML
HTML 5
Haskell
Haxe
HicEst
IDL
INI file
INTERCAL
IO
ISPF Panel Definition
Icon
Inno Script
J
JCL
JSON
Java
Java 5
JavaScript
Julia
KSP (Kontakt Script)
KiXtart
Kotlin
LDIF
LLVM
LOL Code
LScript
Latex
Liberty BASIC
Linden Scripting
Lisp
Loco Basic
Logtalk
Lotus Formulas
Lotus Script
Lua
M68000 Assembler
MIX Assembler
MK-61/52
MPASM
MXML
MagikSF
Make
MapBasic
Markdown (PRO members only)
MatLab
Mercury
MetaPost
Modula 2
Modula 3
Motorola 68000 HiSoft Dev
MySQL
Nagios
NetRexx
Nginx
Nim
NullSoft Installer
OCaml
OCaml Brief
Oberon 2
Objeck Programming Langua
Objective C
Octave
Open Object Rexx
OpenBSD PACKET FILTER
OpenGL Shading
Openoffice BASIC
Oracle 11
Oracle 8
Oz
PARI/GP
PCRE
PHP
PHP Brief
PL/I
PL/SQL
POV-Ray
ParaSail
Pascal
Pawn
Per
Perl
Perl 6
Phix
Pic 16
Pike
Pixel Bender
PostScript
PostgreSQL
PowerBuilder
PowerShell
ProFTPd
Progress
Prolog
Properties
ProvideX
Puppet
PureBasic
PyCon
Python
Python for S60
QBasic
QML
R
RBScript
REBOL
REG
RPM Spec
Racket
Rails
Rexx
Robots
Roff Manpage
Ruby
Ruby Gnuplot
Rust
SAS
SCL
SPARK
SPARQL
SQF
SQL
SSH Config
Scala
Scheme
Scilab
SdlBasic
Smalltalk
Smarty
StandardML
StoneScript
SuperCollider
Swift
SystemVerilog
T-SQL
TCL
TeXgraph
Tera Term
TypeScript
TypoScript
UPC
Unicon
UnrealScript
Urbi
VB.NET
VBScript
VHDL
VIM
Vala
Vedit
VeriLog
Visual Pro Log
VisualBasic
VisualFoxPro
WHOIS
WhiteSpace
Winbatch
XBasic
XML
XPP
Xojo
Xorg Config
YAML
YARA
Z80 Assembler
ZXBasic
autoconf
jQuery
mIRC
newLISP
q/kdb+
thinBasic
Paste Expiration:
Never
Burn after read
10 Minutes
1 Hour
1 Day
1 Week
2 Weeks
1 Month
6 Months
1 Year
Paste Exposure:
Public
Unlisted
Private
Folder:
(members only)
Password
NEW
Enabled
Disabled
Burn after read
NEW
Paste Name / Title:
Create New Paste
Hello
Guest
Sign Up
or
Login
Sign in with Facebook
Sign in with Twitter
Sign in with Google
You are currently not logged in, this means you can not edit or delete anything you paste.
Sign Up
or
Login
Public Pastes
+12,000$ in 2 days
CSS | 35 min ago | 0.72 KB
Free Crypto Method
CSS | 35 min ago | 0.72 KB
Documents
35 min ago | 0.43 KB
Crypto admin access
35 min ago | 0.43 KB
fleet_agent
6 hours ago | 5.04 KB
Altur Song Lyrics
17 hours ago | 13.27 KB
CC:T GPS Beacon
1 day ago | 0.49 KB
R4 Moon SPI Screen With Wifi
Arduino | 1 day ago | 13.55 KB
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the
Cookies Policy
.
OK, I Understand
Not a member of Pastebin yet?
Sign Up
, it unlocks many cool features!