Run it
Copy the script and paste it into your executor.
(a)
t = {}
=
=
=
=
=
=
=
=
=
=
assert = assert
StringBuilder = {
buffer = {}
}
StringBuilder:()
o = {}
(o, self)
self.__index = self
o.buffer = {}
o
StringBuilder:(s)
self.buffer[#self.buffer+] = s
StringBuilder:()
.(self.buffer)
JsonWriter = {
backslashes = {
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] =
}
}
JsonWriter:()
o = {}
o.writer = StringBuilder:()
(o, self)
self.__index = self
o
JsonWriter:(s)
self.writer:(s)
JsonWriter:()
self.writer:()
JsonWriter:(o)
t = (o)
t ==
self:()
t ==
self:(o)
t ==
self:(o)
t ==
self:(o)
t ==
self:(o)
t ==
self:(o)
t ==
self:(o)
t ==
self:(o)
JsonWriter:()
self:()
JsonWriter:(o)
self:((o))
JsonWriter:(s)
self:()
self:(.(s, , (n)
c = self.backslashes[n]
c c
.(, .(n))
))
self:()
JsonWriter:(t)
count =
isindex = (k)
(k) == k >
.(k) == k
k,v (t)
(k)
, ,
count = .(count, k)
, , , count
JsonWriter:(t)
ba, st, et, n = self:(t)
self:(st)
ba
i = , n
self:(t[i])
i < n
self:()
first = ;
k, v (t)
first
self:()
first = ;
self:(k)
self:()
self:(v)
self:(et)
JsonWriter:(o)
(.(
,
(o)))
JsonWriter:(o)
o == Null
self:()
self:(o)
StringReader = {
s = ,
i =
}
StringReader:(s)
o = {}
(o, self)
self.__index = self
o.s = s o.s
o
StringReader:()
i = self.i +
i <= #self.s
.(self.s, i, i)
StringReader:()
self.i = self.i+
self.i <= #self.s
.(self.s, self.i, self.i)
StringReader:()
self.s
JsonReader = {
escapes = {
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
}
}
JsonReader:(s)
o = {}
o.reader = StringReader:(s)
(o, self)
self.__index = self
o;
JsonReader:()
self:()
peek = self:()
peek ==
(.(
,
self:()))
peek ==
self:()
peek ==
self:()
peek ==
self:()
.(peek, )
self:()
peek ==
self:()
peek ==
self:()
peek ==
self:()
peek ==
self:()
self:()
JsonReader:()
self:{,,,}
JsonReader:()
self:{,,,,}
JsonReader:()
self:{,,,}
JsonReader:(t)
i, v (t)
self:() ~= v
(.(
,
.(t),
self:()))
JsonReader:()
result = self:()
peek = self:()
peek ~= .(
peek,
)
result = result .. self:()
peek = self:()
result = (result)
result ==
(.(
,
result))
result
JsonReader:()
result =
(self:() == )
self:() ~=
ch = self:()
ch ==
ch = self:()
self.escapes[ch]
ch = self.escapes[ch]
result = result .. ch
(self:() == )
fromunicode = (m)
.((m, ))
.(
result,
,
fromunicode)
JsonReader:()
(self:() == )
second = self:()
second ==
self:()
second ==
self:()
(.(
,
self:()))
JsonReader:()
done =
done
ch = self:()
ch == self:() ==
done =
done
ch ==
self:() ==
(.(
,
self:()))
self:()
JsonReader:()
ch = self:()
ch ~= ch ~=
ch = self:()
JsonReader:()
result = {}
(self:() == )
done =
self:() ==
done = ;
done
item = self:()
result[#result+] = item
self:()
self:() ==
done =
done
ch = self:()
ch ~=
(.(
,
self:(), ch))
( == self:())
result
JsonReader:()
result = {}
(self:() == )
done =
self:() ==
done =
done
key = self:()
(key) ~=
(.(
,
key))
self:()
ch = self:()
ch ~=
(.(
,
self:(),
ch))
self:()
val = self:()
result[key] = val
self:()
self:() ==
done =
done
ch = self:()
ch ~=
(.(
,
self:(),
ch))
(self:() == )
result
JsonReader:()
p = self:()
p ~= .(p, )
p ==
self:()
self:()
p = self:()
JsonReader:()
self.reader:()
JsonReader:()
self.reader:()
JsonReader:()
self.reader:()
(o)
writer = JsonWriter:()
writer:(o)
writer:()
(s)
reader = JsonReader:(s)
reader:()
()
Null
t.DecodeJSON = (jsonString)
(() () )
(jsonString) ==
(jsonString)
()
t.EncodeJSON = (jsonTable)
(() () )
(jsonTable)
t.MakeWedge = (x, y, z, defaultmaterial)
:():(x,y,z)
t.SelectTerrainRegion = (regionToSelect, color, selectEmptyCells, selectionParent)
terrain = :():()
terrain
(regionToSelect)
(color)
(regionToSelect) ==
(,(regionToSelect))
(color) ==
(,(color))
GetCell = terrain.GetCell
WorldToCellPreferSolid = terrain.WorldToCellPreferSolid
CellCenterToWorld = terrain.CellCenterToWorld
emptyMaterial = .CellMaterial.Empty
selectionContainer = .()
selectionContainer.Name =
selectionContainer.Archivable =
selectionParent
selectionContainer.Parent = selectionParent
selectionContainer.Parent = :()
updateSelection =
currentKeepAliveTag =
aliveCounter =
lastRegion =
adornments = {}
reusableAdorns = {}
selectionPart = .()
selectionPart.Name =
selectionPart.Transparency =
selectionPart.Anchored =
selectionPart.Locked =
selectionPart.CanCollide =
selectionPart.Size = .(,,)
selectionBox = .()
(region3)
theLowVec = region3.CFrame.p - (region3.Size/) + .(,,)
lowCell = (terrain,theLowVec)
theHighVec = region3.CFrame.p + (region3.Size/) - .(,,)
highCell = (terrain, theHighVec)
highIntVec = Vector3int16.(highCell.x,highCell.y,highCell.z)
lowIntVec = Vector3int16.(lowCell.x,lowCell.y,lowCell.z)
Region3int16.(lowIntVec,highIntVec)
(theColor)
selectionPartClone =
selectionBoxClone =
#reusableAdorns >
selectionPartClone = reusableAdorns[][]
selectionBoxClone = reusableAdorns[][]
.(reusableAdorns,)
selectionBoxClone.Visible =
selectionPartClone = selectionPart:()
selectionPartClone.Archivable =
selectionBoxClone = selectionBox:()
selectionBoxClone.Archivable =
selectionBoxClone.Adornee = selectionPartClone
selectionBoxClone.Parent = selectionContainer
selectionBoxClone.Adornee = selectionPartClone
selectionBoxClone.Parent = selectionContainer
theColor
selectionBoxClone.Color = theColor
selectionPartClone, selectionBoxClone
()
cellPos, adornTable (adornments)
adornTable.KeepAlive ~= currentKeepAliveTag
adornTable.SelectionBox.Visible =
.(reusableAdorns,{part = adornTable.SelectionPart, box = adornTable.SelectionBox})
adornments[cellPos] =
()
aliveCounter = aliveCounter +
aliveCounter >
aliveCounter =
aliveCounter
(region, color)
regionBegin = region.CFrame.p - (region.Size/) + .(,,)
regionEnd = region.CFrame.p + (region.Size/) - .(,,)
cellPosBegin = (terrain, regionBegin)
cellPosEnd = (terrain, regionEnd)
currentKeepAliveTag = ()
y = cellPosBegin.y, cellPosEnd.y
z = cellPosBegin.z, cellPosEnd.z
x = cellPosBegin.x, cellPosEnd.x
cellMaterial = (terrain, x, y, z)
cellMaterial ~= emptyMaterial
cframePos = (terrain, x, y, z)
cellPos = Vector3int16.(x,y,z)
updated =
cellPosAdorn, adornTable (adornments)
cellPosAdorn == cellPos
adornTable.KeepAlive = currentKeepAliveTag
color
adornTable.SelectionBox.Color = color
updated =
updated
selectionPart, selectionBox = (color)
selectionPart.Size = .(,,)
selectionPart.CFrame = .(cframePos)
adornTable = {SelectionPart = selectionPart, SelectionBox = selectionBox, KeepAlive = currentKeepAliveTag}
adornments[cellPos] = adornTable
()
lastRegion = regionToSelect
selectEmptyCells
selectionPart, selectionBox = (color)
selectionPart.Size = regionToSelect.Size
selectionPart.CFrame = regionToSelect.CFrame
adornments.SelectionPart = selectionPart
adornments.SelectionBox = selectionBox
updateSelection =
(newRegion, color)
newRegion newRegion ~= lastRegion
lastRegion = newRegion
selectionPart.Size = newRegion.Size
selectionPart.CFrame = newRegion.CFrame
color
selectionBox.Color = color
(regionToSelect, color)
updateSelection =
(newRegion, color)
newRegion newRegion ~= lastRegion
lastRegion = newRegion
(newRegion, color)
destroyFunc = ()
updateSelection =
selectionContainer selectionContainer:()
adornments =
updateSelection, destroyFunc
t.()
this = {}
mBindableEvent = .()
mAllCns = {}
this:(func)
self ~= this (, )
(func) ~=
(..(func), )
cn = mBindableEvent.Event:(func)
mAllCns[cn] =
pubCn = {}
pubCn:()
cn:()
mAllCns[cn] =
pubCn.Disconnect = pubCn.disconnect
pubCn
this:()
self ~= this (, )
cn, _ (mAllCns)
cn:()
mAllCns[cn] =
this:()
self ~= this (, )
mBindableEvent.Event:()
this:(...)
self ~= this (, )
mBindableEvent:(...)
this.Connect = this.connect
this.Disconnect = this.disconnect
this.Wait = this.wait
this.Fire = this.fire
this
(objectType)
(objectType) ~=
(, )
(dat)
dat = dat {}
obj = .(objectType)
parent =
ctor =
k, v (dat)
(k) ==
k ==
parent = v
obj[k] = v
(k) ==
(v) ~=
(..(v), )
v.Parent = obj
(k) == k.__eventname
(v) ~=
(..k.__eventname....(v), )
obj[k.__eventname]:(v)
k == t.Create
(v) ~=
(..(v), )
ctor
(, )
ctor = v
(..(k)....(v).., )
ctor
(obj)
parent
obj.Parent = parent
obj
t.Create = ({}, {__call = (tb, ...) (...) })
t.Create.E = (eventName)
{__eventname = eventName}
t.Help =
(funcNameOrFunc)
funcNameOrFunc == funcNameOrFunc == t.DecodeJSON
..
..
funcNameOrFunc == funcNameOrFunc == t.EncodeJSON
..
..
funcNameOrFunc == funcNameOrFunc == t.MakeWedge
..
..
..
..
funcNameOrFunc == funcNameOrFunc == t.SelectTerrainRegion
..
..
..
..
..
..
..
..
funcNameOrFunc == funcNameOrFunc == t.CreateSignal
..
..
..
..
..
..
..
funcNameOrFunc ==
..
..
..
..
funcNameOrFunc ==
..
..
..
..
funcNameOrFunc ==
..
..
..
..
..
..
funcNameOrFunc ==
..
..
..
..
..
..
funcNameOrFunc ==
..
..
..
..
t
()
Player=:().LocalPlayer
Character=Player.Character
PlayerGui=Player.PlayerGui
Backpack=Player.Backpack
Torso=Character.Torso
Head=Character.Head
Humanoid=Character.Humanoid
LeftArm=Character[]
LeftLeg=Character[]
RightArm=Character[]
RightLeg=Character[]
LS=Torso[]
LH=Torso[]
RS=Torso[]
RH=Torso[]
Neck=Torso.Neck
it=.new
attacktype=
attacktype2=
vt=.new
cf=.new
cn=.new
euler=.fromEulerAnglesXYZ
angles=.Angles
combo =
necko=(, , , -, -, -, , , , , , )
necko2=(, -, , -, -, -, , , , , , )
LHC0=(-,-,,-,-,-,,,,,,)
LHC1=(-,,,-,-,-,,,,,,)
RHC0=(,-,,,,,,,,-,-,-)
RHC1=(,,,,,,,,,-,-,-)
RootPart=Character.HumanoidRootPart
RootJoint=RootPart.RootJoint
RootCF=(-,,)
attack =
attackdebounce =
trispeed=
attackmode=
idle=
Anim=
stance =
ff =
noleg =
evadecooldown =
Humanoid.Animator.Parent =
equip =
Effects = {}
attackspeed =
df =
Swing =
sine =
change =
val =
speed =
rs = :().RenderStepped
cam = .CurrentCamera
RbxUtility = ()
Create = RbxUtility.Create
deb = :()
Humanoid.WalkSpeed =
freefall =
RootPart.Running.SoundId =
RootPart.Running.Volume =
boost =
Humanoid.JumpPower =
musicnum =
spd = .(RootPart.Velocity.x,,RootPart.Velocity.z).magnitude +
dir = .(RootPart.Velocity.x,,RootPart.Velocity.z).unit
GravPoint = RootPart.Velocity.y
NV = .(,,)
music = .(,PlayerGui)
music.Volume =
music.TimePosition =
music.Pitch =
music.SoundId =
music.Looped =
music:()
boostsound = .(,PlayerGui)
boostsound.Volume =
boostsound.TimePosition =
boostsound.Pitch =
boostsound.SoundId =
boostsound.Looped =
stompsound = .(,PlayerGui)
stompsound.Volume =
stompsound.TimePosition =
stompsound.Pitch =
stompsound.SoundId =
stompsound.Looped =
so = (id,par,vol,pit)
.(.(()
sou = .(,par )
sou.Volume=vol
sou.Pitch=pit
sou.SoundId=id
sou:()
:():(sou,)
))
RSH, LSH=,
RW, LW=.(), .()
RW.Name= LW.Name=
LH=Torso[]
RH=Torso[]
TorsoColor=Torso.BrickColor
(Part)
Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = ,,,,,
player=Player
ch=Character
RSH=ch.Torso[]
LSH=ch.Torso[]
RSH.Parent=
LSH.Parent=
RW.Name=
RW.Part0=ch.Torso
RW.C0=(, , )
RW.C1=(, , )
RW.Part1=ch[]
RW.Parent=ch.Torso
LW.Name=
LW.Part0=ch.Torso
LW.C0=(-, , )
LW.C1=(, , )
LW.Part1=ch[]
LW.Parent=ch.Torso
newWeld = (wp0, wp1, wc0x, wc0y, wc0z)
wld = .(, wp1)
wld.Part0 = wp0
wld.Part1 = wp1
wld.C0 = .(wc0x, wc0y, wc0z)
rs = :().RenderStepped
(RootPart, Torso, , -, )
Torso.Weld.C1 = .(, -, )
(Torso, LeftLeg, -, -, )
LeftLeg.Weld.C1 = .(, , )
(Torso, RightLeg, , -, )
RightLeg.Weld.C1 = .(, , )
Player=:().LocalPlayer
Character=Player.Character
mouse=Player:()
m=.(,Character)
(a, b)
weldd = .()
weldd.Part0 = a
weldd.Part1 = b
weldd.C0 = .()
weldd.C1 = b.CFrame:() * a.CFrame
weldd.Parent = a
weldd
ArtificialHB = .(, )
ArtificialHB.Name =
:()
frame = /
tf =
allowframeloss =
tossremainder =
lastframe = ()
.Heartbeat:()
:().Heartbeat:((s, p)
tf = tf + s
tf >= frame
allowframeloss
.Heartbeat:()
lastframe = ()
i = , .(tf / frame)
.Heartbeat:()
lastframe = ()
tossremainder
tf =
tf = tf - frame * .(tf / frame)
)
(num)
num == num ==
:().Stepped:()
i = , num
:().Stepped:()
(part)
part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = , , , , ,
part = (formfactor, parent, reflectance, transparency, brickcolor, name, size)
fp = ()
fp.formFactor = formfactor
fp.Parent = parent
fp.Reflectance = reflectance
fp.Transparency = transparency
fp.CanCollide =
fp.Locked =
fp.BrickColor = brickcolor
fp.Name = name
fp.Size = size
fp.Position = Torso.Position
(fp)
fp.BrickColor == BrickColor.()
fp.Material =
fp.BrickColor == BrickColor.()
fp.BrickColor = BrickColor.()
fp.Material =
fp.Material =
fp:()
fp
mesh = (Mesh, part, meshtype, meshid, offset, scale)
mesh = (Mesh)
mesh.Parent = part
Mesh ==
mesh.MeshType = meshtype
mesh.MeshId = meshid
mesh.Offset = offset
mesh.Scale = scale
mesh
weld = (parent, part0, part1, c0)
weld = ()
weld.Parent = parent
weld.Part0 = part0
weld.Part1 = part1
weld.C0 = c0
weld
F1 = .(, Character)
F1.Name =
F2 = .(, F1)
F2.Name =
Triangle = (a, b, c)
MagicBlock = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , ())
prt.Anchored =
prt.CanCollide =
prt.CFrame = cframe
prt.Name =
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
.(Effects, {prt, , , x3, y3, z3})
MagicCircle = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , ())
prt.Anchored =
prt.CanCollide =
prt.CFrame = cframe
prt.Name =
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
.(Effects, {prt, , , x3, y3, z3})
MagicWave = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , ())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
.(Effects, {prt, , , x3, y3, z3})
MagicCylinder = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , (, , ))
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
Effects[#Effects + ] = {prt, , , x3, y3, z3}
MagicCylinder2 = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , (, , ))
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
Effects[#Effects + ] = {prt, , , x3, y3, z3}
MagicBlood = (brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, F2, , , brickcolor, , ())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , (, , ), (x1, y1, z1))
:():(prt, )
.(Effects, {prt, , , x3, y3, z3})
ElecEffect = (cff, x, y, z)
prt = (, F2, , , BrickColor.(), , (, , ))
prt.Anchored =
prt.CFrame = cff * (.(-x, x), .(-y, y), .(-z, z))
prt.CFrame = (prt.Position)
:():(prt, )
xval = .() /
yval = .() /
zval = .() /
msh = (, prt, , , (, , ), (xval, yval, zval))
Effects[#Effects + ] = {prt, , , x, y, z, xval, yval, zval}
(Position, Distance, SinglePlayer)
SinglePlayer
(SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
List = {}
i, v (:())
v:()
v:()
v ~= Character
(v.Torso.Position - Position).magnitude <= Distance
.(List, v)
List
(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
Part = (){
Parent = Parent,
Reflectance = Reflectance,
Transparency = Transparency,
CanCollide = ,
Locked = ,
BrickColor = BrickColor.((BColor)),
Name = Name,
Size = Size,
Material = Material,
}
(Part)
Part
(Mesh, Part, MeshType, MeshId, OffSet, Scale)
Msh = (Mesh){
Parent = Part,
Offset = OffSet,
Scale = Scale,
}
Mesh ==
Msh.MeshType = MeshType
Msh.MeshId = MeshId
Msh
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, , Type)
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
Type == Type ==
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
Type ==
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, ,material)
prt=(,material,,,brickcolor,,(,,))
prt.Anchored=
prt.CFrame=cframe
msh=(,prt,,,(,,),(x1,y1,z1))
:():(prt,)
.(.((Part,Mesh,num)
i=,,
()
Part.Transparency=i
Mesh.Scale=Mesh.Scale+(x3,y3,z3)
Part.Parent=
),prt,msh,(.(,)+.())/)
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1, x3, y3, z3, )
prt = (, , , , brickcolor, , .())
prt.Anchored =
prt.CFrame = cframe
msh = (, prt, , , .(, , ), .(x1, y1, z1))
:():(prt, )
.(Effects, {
prt,
,
,
x3,
y3,
z3,
msh
})
(brickcolor, cframe, x1, y1, z1)
prt = (, , , , brickcolor, , .(, , ))
prt.Anchored =
prt.CFrame = cframe * .(.(-, ), .(-, ), .(-, ))
msh = (, prt, , , .(, , ), .(x1, y1, z1))
num = .(, ) /
:():(prt, )
.(Effects, {
prt,
,
num,
prt.CFrame,
.() - .(),
,
.(, ) /
})
lerp = (a, b, t)
a * ( - t) + b * t
(a,b,t)
qa = {(a)}
qb = {(b)}
ax, ay, az = a.x, a.y, a.z
bx, by, bz = b.x, b.y, b.z
_t = -t
(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,(qa, qb, t))
(cf)
mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:()
trace = m00 + m11 + m22
trace >
s = .( + trace)
recip = /s
(m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*
i =
m11 > m00
i =
m22 > (i == m00 m11)
i =
i ==
s = .(m00-m11-m22+)
recip = /s
*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
i ==
s = .(m11-m22-m00+)
recip = /s
(m01+m10)*recip, *s, (m21+m12)*recip, (m02-m20)*recip
i ==
s = .(m22-m00-m11+)
recip = /s (m02+m20)*recip, (m12+m21)*recip, *s, (m10-m01)*recip
(px, py, pz, x, y, z, w)
xs, ys, zs = x + x, y + y, z + z
wx, wy, wz = w*xs, w*ys, w*zs
xx = x*xs
xy = x*ys
xz = x*zs
yy = y*ys
yz = y*zs
zz = z*zs
.(px, py, pz,-(yy+zz), xy - wz, xz + wy,xy + wz, -(xx+zz), yz - wx, xz - wy, yz + wx, -(xx+yy))
(a, b, t)
cosTheta = a[]*b[] + a[]*b[] + a[]*b[] + a[]*b[]
startInterp, finishInterp;
cosTheta >=
( - cosTheta) >
theta = .(cosTheta)
invSinTheta = /.(theta)
startInterp = .((-t)*theta)*invSinTheta
finishInterp = .(t*theta)*invSinTheta
startInterp = -t
finishInterp = t
(+cosTheta) >
theta = .(-cosTheta)
invSinTheta = /.(theta)
startInterp = .((t-)*theta)*invSinTheta
finishInterp = .(t*theta)*invSinTheta
startInterp = t-
finishInterp = t
a[]*startInterp + b[]*finishInterp, a[]*startInterp + b[]*finishInterp, a[]*startInterp + b[]*finishInterp, a[]*startInterp + b[]*finishInterp
(part0, part1, c0, c1)
weeld=.(, part0)
weeld.Part0=part0
weeld.Part1=part1
weeld.C0=c0
weeld.C1=c1
weeld
(Pos, Dir, Max, Ignore)
:():(Ray.(Pos, Dir.unit * (Max )), Ignore)
f =
b = .(,cam)
c = .(, Torso)
c.Range =
c.Color = .(, ,)
c.Brightness =
:():(, , ()
b.Size = b.Size -
boost ==
c.Enabled =
cam.FieldOfView = (cam.FieldOfView, , )
freefall =
Humanoid.CameraOffset = Humanoid.CameraOffset:(.(,,),)
(BrickColor.(),RightLeg.CFrame*.(,-,)*(.(-,),.(-,),.(-,)),,,,,,,)
(BrickColor.(),LeftLeg.CFrame*.(,-,)*(.(-,),.(-,),.(-,)),,,,,,,)
hitfloor ~= Anim ~=
(BrickColor.(),RootPart.CFrame*.(,-,) ,,,, ,,,)
boost ==
cam.FieldOfView = (cam.FieldOfView, , )
c.Enabled =
)
mouse.KeyDown:((key)
.(key) ==
b.Size =
Swing =
freefall =
.(.(()
i = ,,
()
Humanoid.CameraOffset = Humanoid.CameraOffset:(.(.(-*,*),.(-*,*),.(-*,*)),)
))
Humanoid.WalkSpeed =
RootPart.Velocity = RootPart.CFrame.lookVector*
(BrickColor.(), RootPart.CFrame*.(,,-) , , , , , , , ,)
boost =
boostsound:()
)
mouse.KeyUp:((key)
.(key) ==
Swing =
Humanoid.WalkSpeed =
boost =
boostsound:()
)
mouse.KeyDown:((key)
.(key) ==
b.Size =
freefall =
Swing =
.(.(()
i = ,,
()
Humanoid.CameraOffset = Humanoid.CameraOffset:(.(.(-*,*),.(-*,*),.(-*,*)),)
))
Humanoid.WalkSpeed =
RootPart.Velocity = RootPart.CFrame.lookVector*
(BrickColor.(), RootPart.CFrame*.(,,-) , , , , , , , ,)
(BrickColor.(), RootPart.CFrame*.(,,-) , , , , , , , ,)
(BrickColor.(), RootPart.CFrame*.(,,-) , , , , , , , ,)
boost =
boostsound:()
)
mouse.KeyUp:((key)
.(key) ==
Swing =
Humanoid.WalkSpeed =
boost =
boostsound:()
)
lastwall =
jumped =
vwall =
mouse.KeyDown:((key)
key == hitfloor == attack ==
()
)
()
ray = Ray.(
RootPart.CFrame.p, RootPart.CFrame.lookVector *
)
hit, position, normal = :(ray, character)
hit
hit.Parent.Parent ~= Character hit.Parent ~= Character hit.Name ~= hit.CanCollide ==
vwall =
NV = .(,,)
spd = .(RootPart.Velocity.x,,RootPart.Velocity.z).magnitude +
dir = .(RootPart.Velocity.x,,RootPart.Velocity.z).unit
GravPoint = RootPart.Velocity.y
velo = .(,Torso)
velo.MaxForce = .(,,)
attack =
vwall == ray hit
()
change = + Humanoid.WalkSpeed/
Humanoid.WalkSpeed > Humanoid.WalkSpeed <
velo.Velocity = .(,,)
Humanoid.WalkSpeed > Humanoid.WalkSpeed <
velo.Velocity = .(,,)
Humanoid.WalkSpeed >
velo.Velocity = .(,,)
ray = Ray.(
RootPart.CFrame.p, RootPart.CFrame.lookVector *
)
hit, position, normal = :(ray, character)
Torso.Weld.C0 = (Torso.Weld.C0, .(, --*.(sine/), ) * (.(), .(), .()+ RootPart.RotVelocity.Y / ), )
Torso.Neck.C0 = (Torso.Neck.C0,necko *(.(-+*.(sine/)),.(),.(+*.(sine/)) + RootPart.RotVelocity.Y / ),)
RW.C0 = (RW.C0, .(, , ) * (.(--*.(sine/))+ RootPart.RotVelocity.Y / -, .(), .(+*.(sine/))- RootPart.RotVelocity.Y / ),)
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-90-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3+ Humanoid.WalkSpeed/272)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3+ Humanoid.WalkSpeed/272)
end
velo:Destroy()
wait(0.07)
if vwall == false then
RootPart.Velocity = -RootPart.CFrame.lookVector*68 + Vector3.new(0,86,0)
--[[]
for i = 0,5,0.2 do
rs:wait()
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
end
]]
for i = 0,4,0.1 do
swait()
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
end
attack = false
end
if vwall == true then
RootPart.Velocity = RootPart.CFrame.lookVector*38 + Vector3.new(0,86,0)
--[[]
for i = 0,5,0.2 do
rs:wait()
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
end
]]
for i = 0,4,0.15 do
swait()
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
end
attack = false
end
end
end
end
mouse.KeyUp:connect(function(key)
if key == 'b' and vwall == true then
vwall = false
end
end)
function Ldash()
evadecooldown = true
attack = true
k = math.random(1,2)
if k == 1 then
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
else
so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
end
--+173.8*i
for i = 0,.7,0.1 do
swait()
Head.Velocity = Head.CFrame.rightVector * -135
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(32)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(-9),math.rad(-14)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(30)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(30)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(12)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(8)), 0.2)
end
attack = false
wait(0.08)
evadecooldown = false
end
function Rdash()
evadecooldown = true
attack = true
k = math.random(1,2)
if k == 1 then
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
else
so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
end
--+173.8*i
for i = 0,.7,0.1 do
swait()
Head.Velocity = Head.CFrame.rightVector * 135
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-32)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(9),math.rad(14)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(-30)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(-30)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-8)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-12)), 0.2)
end
attack = false
wait(0.08)
evadecooldown = false
end
local sliding = false
function Slide()
local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
spd = spd + 30
local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
local GravPoint = RootPart.Velocity.y
if spd > 40 and hitfloor ~= nil then
noleg = true
attack = true
k = math.random(1,2)
if k == 1 then
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
else
so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
end
local NV = Vector3.new(0,0,0)
local bv = Instance.new("BodyVelocity", Torso)
bv.maxForce = Vector3.new(1/0,1/0,1/0)
bv.velocity = dir*spd
local bg = Instance.new("BodyGyro", Torso)
bg.maxTorque = Vector3.new(1/0,1/0,1/0)
bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
RootPart.Running.SoundId = "rbxassetid://1295468446"
RootPart.Running.TimePosition = 0
Humanoid.PlatformStand = true
while spd > 2 and hitfloor ~= nil and sliding == true do
swait()
spd = spd - 0.95
bv.velocity = dir*spd + Vector3.new(0,0,0)
bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2.3, 0) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(12)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(34),math.rad(0),math.rad(12)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(110), math.rad(0), math.rad(70)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -0.56, -0.2) * CFrame.Angles(math.rad(-24), math.rad(0), math.rad(0)), 0.2)
end
bv:Destroy()
bg:Destroy()
RootPart.Running.SoundId = "rbxassetid://758199523"
RootPart.Running.TimePosition = 0
Humanoid.PlatformStand = false
attack = false
sliding = false
wait(0.05)
evadecooldown = false
end
end
function land()
attack = true
RootPart.Velocity = Vector3.new(0,0,0)
WaveEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,-1,0) , 1, 1, 1, 3, 0.8, 3, 0.06)
so("http://www.roblox.com/asset/?id=1295424585", Torso, 3.5, 1)
coroutine.resume(coroutine.create(function()
for i = 0,1,0.1 do
swait()
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8)),0.44)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2, 0) * CFrame.Angles(math.rad(-16), math.rad(0), math.rad(0)), 0.5)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(0)),.5)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(87)),.5)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0) * angles(math.rad(0), math.rad(0), math.rad(-87)),.5)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, 0, -0.5) * CFrame.Angles(math.rad(16), math.rad(0), math.rad(0)), 0.5)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.14, 0.2) * CFrame.Angles(math.rad(-17), math.rad(0), math.rad(0)), 0.5)
end
attack = false
end))
end
function stomp()
attack = true
stompsound:Play()
while hitfloor == nil do
swait()
b.Size = 12
WaveEffect(BrickColor.new("Cyan"), LeftLeg.CFrame*CFrame.new(0,-2.4,0) , 1, 1, 1, 0.8, 0.8, 0.8, 0.14)
RootPart.Velocity = Vector3.new(0,RootPart.Velocity.y/1.6,0) +Vector3.new(0,-150,0)
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(0+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(60+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(0+4*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, .27+0.17*math.cos(sine/1.3), -0.56) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
end
stompsound:Stop()
land()
end
function changemusic()
musicnum = musicnum + 1
music.TimePosition = 0
local osix = false
local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude
if musicnum > 14 then
musicnum = 1
end
if musicnum == 1 then
music.SoundId = "rbxassetid://179029173"
end
if musicnum == 2 then
music.SoundId = "rbxassetid://146443855"
end
if musicnum == 3 then
music.SoundId = "rbxassetid://1342408291"
end
if musicnum == 4 then
music.SoundId = "rbxassetid://201219416"
end
if musicnum == 5 then
music.SoundId = "rbxassetid://1390472571"
end
if musicnum == 6 then
osix = true
music.SoundId = "rbxassetid://249974783"
end
if musicnum == 7 then
music.SoundId = "rbxassetid://1851880603"
end
if musicnum == 8 then
music.SoundId = "rbxassetid://412034984"
end
if musicnum == 9 then
music.SoundId = "rbxassetid://536915629"
end
if musicnum == 10 then
music.SoundId = "rbxassetid://1200005861"
end
if musicnum == 11 then
music.SoundId = "rbxassetid://1055930631"
end
if musicnum == 12 then
music.SoundId = "rbxassetid://300269553"
end
if musicnum == 13 then
music.SoundId = "rbxassetid://199897052"
end
if musicnum == 14 then
music.SoundId = "rbxassetid://638115895"
end
if spd < 14 then
Humanoid.Jump = true
if osix == false then
so("rbxassetid://537371462",PlayerGui,2,1)
end
RootPart.Velocity = Vector3.new(0,102,0)
attack = true
wait(0.08)
for i = 0,7,0.1 do
swait()
RootPart.Velocity = Vector3.new(0,2,0)
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
end
b.Size = 40
MoonEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,0) , 1, 1, 1, 8, 8, 8, 0.06)
if osix == true then
osix = false
so("rbxassetid://156821036",PlayerGui,2,1)
end
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -3, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 1)
for i = 0,5,0.1 do
swait()
RootPart.Velocity = Vector3.new(0,3.5,0)
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
end
attack = false
end
end
mouse.KeyDown:connect(function(key)
if key == 'q' and attack == false and evadecooldown == false then
Ldash()
end
end)
mouse.KeyDown:connect(function(key)
if key == 'e' and attack == false and evadecooldown == false then
Rdash()
end
end)
mouse.KeyDown:connect(function(key)
if key == 'c' and attack == false and evadecooldown == false and hitfloor ~= nil then
sliding = true
Slide()
end
end)
mouse.KeyDown:connect(function(key)
if key == 'c' and attack == false and hitfloor == nil then
stomp()
end
end)
local walljump = false
function walljumpp()
local ray = Ray.new(
Torso.CFrame.p, RootPart.CFrame.lookVector *5
)
local hit, position, normal = workspace:FindPartOnRay(ray, character)
if hit then
if hit.Parent.Parent ~= Character and hit.Parent ~= Character then
local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
GravPoint = 0
freefall = 0
walljump = true
Humanoid.AutoRotate = false
local velo = Instance.new("BodyVelocity",Torso)
velo.MaxForce = Vector3.new(400000,400000,400000)
--game.Debris:AddItem(velo,0.1)
attack = true
while hitfloor == nil and walljump == true and ray and hit do
swait()
freefall = 0
GravPoint = GravPoint - 0.36
ray = Ray.new(
RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
)
hit, position, normal = workspace:FindPartOnRay(ray, character)
velo.Velocity = vt(0,GravPoint,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.9) * CFrame.Angles(math.rad(5), math.rad(90), math.rad(8)), 0.2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(86)),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(120)),.2)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-6), math.rad(14), math.rad(-12)), 0.2)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(23)), 0.2)
end
if walljump == false then
k = math.random(1,3)
if k == 1 then
so("http://www.roblox.com/asset/?id=800121776", Head, 2.5, 1)
else if k == 2 then
so("http://www.roblox.com/asset/?id=804889329", Head, 2.5, 1)
else if k == 3 then
so("http://www.roblox.com/asset/?id=804907617", Head, 2.5, 1)
end
end
end
velo:Destroy()
attack = false
coroutine.resume(coroutine.create(function()
for i = 0,1,0.1 do
swait()
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
end
end))
Humanoid.AutoRotate = true
RootPart.Velocity = RootPart.CFrame.lookVector * -137 + Vector3.new(0,136,0)
wait(0.07)
RootPart.CFrame = CFrame.new(RootPart.CFrame.p,-RootPart.CFrame.lookVector)
end
if walljump == true then
attack = false
walljump = false
Humanoid.AutoRotate = true
velo:Destroy()
end
end
end
end
local homed = nil
function home()
if walljump ~= true then
for i, v in pairs(FindNearestTorso(Torso.CFrame.p, 80)) do
if v:FindFirstChild('Head') then
Grabbed = true
homed = v
end
end
if homed ~= nil and homed:FindFirstChildOfClass("Humanoid").Health > 1 and walljump == false then
so("http://www.roblox.com/asset/?id=162460823", Head, 1, .8)
local SBall = Instance.new("Part",Character)
SBall.Name = "Homing Ball"
SBall.CanCollide = false
SBall.Anchored = false
SBall.Transparency = 0.64
SBall.CFrame = CFrame.new(RootPart.CFrame.p)
SBall.BrickColor = BrickColor.new("Toothpaste")
SBall.Size = Vector3.new(1,1,1)
SBall.Material = "Neon"
SBallweld = Instance.new("Weld")
SBallweld.Parent = SBall
SBallweld.Part0 = RootPart
SBallweld.Part1 = SBall
SBallweld.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
SBallweld.Part0 = RootPart
local SBallmesh = Instance.new("SpecialMesh",SBall)
SBallmesh.MeshType = "Sphere"
SBallmesh.Scale = Vector3.new(6,6,6)
trail = Instance.new("Trail", Character)
a2 = Instance.new("Attachment", Torso) a2.Position = Vector3.new(0,2,0)
a3 = Instance.new("Attachment", Torso)a3.Position = Vector3.new(0,-2.5,0)
trail.Texture = "rbxassetid://0"
trail.Attachment0 = a2
trail.Attachment1 = a3
trail.Lifetime = 0.353
trail.MinLength = 0.03
trail.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,1)})
trail.Color = ColorSequence.new(Color3.new(0,1,1), Color3.new(0, 0,0))
trail.LightEmission = 4.8
trail.TextureLength = 0.034
trail.Enabled = true
attack = true
local position = Instance.new("BodyPosition",Torso)
position.P = 68350
position.maxForce = Vector3.new(math.huge,math.huge,math.huge)
while homed ~= nil and (homed.Torso.Position-RootPart.Position).magnitude > 8 do
swait()
SBall.CFrame = CFrame.new(RootPart.CFrame.p)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+420*math.abs(sine/3.2)), math.rad(0), math.rad(0)), 0.6)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
position.Position = homed.Torso.Position + Vector3.new(0,2,0)
end
local bodvol=Instance.new("BodyVelocity")
bodvol.velocity= RootPart.CFrame.lookVector*240 + Vector3.new(0,30,0)
bodvol.P= 35200
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
bodvol.Parent=homed.Head
game:GetService("Debris"):AddItem(bodvol, 0.2)
--homed:FindFirstChildOfClass("Humanoid"):TakeDamage(math.random(10,30))
position:Destroy()
trail.Enabled = false
SBall:Destroy()
RootPart.Velocity = Vector3.new(0,93.5,0)
coroutine.resume(coroutine.create(function()
for i = 0,5,0.26 do
swait()
Humanoid.CameraOffset = Vector3.new(0,0,0)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
end
homed = nil
attack = false
end))
end
end
end
mouse.KeyDown:connect(function(key)
wait(0.16)
if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
walljumpp()
end
if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
home()
end
if string.byte(key) == 32 and hitfloor == nil and attack == true and walljump == true then
walljump = false
end
end)
mouse.KeyDown:connect(function(key)
if key == 'm' and attack == false then
changemusic()
end
end)
mouse.KeyUp:connect(function(key)
wait(0.05)
if key == 'c' and sliding == true then
sliding = false
end
end)
local look = 0
while true do
swait()
sine = sine + change
--speed = speed + music.PlaybackLoudness/90
local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
local velderp=RootPart.Velocity.y
hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,workspace[Player.Name])
local TiltVelocity = CFrame.new(RootPart.CFrame:vectorToObjectSpace(RootPart.Velocity))
local rlegray = Ray.new(RightLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
local rlegpart, rlegendPoint = workspace:FindPartOnRay(rlegray, workspace[Player.Name])
local llegray = Ray.new(LeftLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
local llegpart, llegendPoint = workspace:FindPartOnRay(llegray, workspace[Player.Name])
local waterthing = Ray.new(RootPart.CFrame.p,Vector3.new(0,-1,0))
local start, position = workspace:FindPartOnRay(waterthing, workspace[Player.Name])
if start ~= nil and start.Material == "Water" then
RootPart.Velocity = RootPart.Velocity + Vector3.new(0,6,0)
end
RootPart.Running.Pitch = 0.76 + Humanoid.WalkSpeed/124
if torvel<1 and Swing == 2 then
boost = false
elseif torvel>1 and Swing == 2 then
boost = true
freefall = 0
end
if hitfloor ~= nil and freefall < 150 then
freefall = 0
end
if freefall > 150 and hitfloor ~= nil then
land()
freefall = 0
end
if RootPart.Velocity.y > 1 and hitfloor==nil then
Anim="Jump"
if attack==false then
change = 1
look = 0
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(4), math.rad(0), math.rad(0)), 0.07)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-10+2.05*math.cos(sine/5)),math.rad(0),math.rad(0)),0.07)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(50-2.05*math.cos(sine/5))), 0.07)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(-50+2.05*math.cos(sine/5))), 0.07)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, -0.6) * CFrame.Angles(math.rad(-25+3.05*math.cos(sine/5)), math.rad(-3), math.rad(0)), 0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.47, -0.7) * CFrame.Angles(math.rad(-12+3.05*math.cos(sine/5)), math.rad(0), math.rad(0)), 0.1)
end
elseif RootPart.Velocity.y < -1 and freefall <150 and hitfloor==nil then
Anim="Fall"
change = 1
freefall = freefall +0.77
if attack==false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(7+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(40+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(18+7*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.37+0.17*math.cos(sine/1.3), -0.2) * CFrame.Angles(math.rad(32+7*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
end
elseif RootPart.Velocity.y < -1 and freefall > 150 and hitfloor==nil then
Anim="FreeFall"
change = 1
if attack==false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(-90+3*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(110)), 0.07)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(-110)), 0.07)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-12+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3),0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(3), math.rad(-46)), 0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.17*math.cos(sine/1.3), 0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(46)), 0.1)
end
elseif torvel<1 and hitfloor~=nil then
Anim="Idle"
change = 1
if attack==false and equip == false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.04*math.cos(sine/40), -0) * CFrame.Angles(math.rad(0-0.81*math.cos(sine/40)), math.rad(-40), math.rad(0)), 0.1)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0+2.6*math.sin(sine/40)),math.rad(0),math.rad(40)),0.1)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(-2+1.3*math.cos(sine/40)), math.rad(0+4*math.sin(sine/40)), math.rad(6.3+2.2*math.cos(sine/40))),0.1)
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(2+1.3*math.cos(sine/40)), math.rad(0-4*math.sin(sine/40)), math.rad(-6.3-2.2*math.cos(sine/40))),0.1)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, llegendPoint.Y-LeftLeg.Position.Y+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(18+0.81*math.cos(sine/40)), math.rad(-2-0.81*math.cos(sine/40))),0.1)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.57, rlegendPoint.Y-RightLeg.Position.Y+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(-2+0.81*math.cos(sine/40)), math.rad(3-0.81*math.cos(sine/40))),0.1)
end
elseif torvel>1.5 and torvel<70 and hitfloor~=nil then
Anim="Walk"
change = 0.84+ Character.Humanoid.WalkSpeed/132
look = 0
if attack==false and equip == false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/2), -.8) * angles(math.rad(-26), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+20*math.sin(sine/2)),math.rad(0),math.rad(0+5*math.sin(sine/4)) + RootPart.RotVelocity.Y / 13),.1)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.1) * angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(15+2*math.sin(sine/4))- RootPart.RotVelocity.Y / 34),.15)
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3)
end
elseif torvel>=70 and torvel<200 and hitfloor~=nil then
Anim="Run"
change = 0.84+ Character.Humanoid.WalkSpeed/142
if attack==false and equip == false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1.5), -.8) * angles(math.rad(-37), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1.5)),math.rad(0),math.rad(0+5*math.sin(sine/3)) + RootPart.RotVelocity.Y / 13),.1)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.3) * angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(1+0*math.cos(sine/3))- RootPart.RotVelocity.Y / 34),.25)
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.3)*angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-1+0*math.cos(sine/3))+ RootPart.RotVelocity.Y / -34),.25)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.32*math.cos(sine/3), 0-0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0+134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.44)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.32*math.cos(sine/3),0+0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0-134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.44)
end
--[[
if attack==false then
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.4*math.cos(sine/5.5)/2, 0 *math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + -math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.4*math.cos(sine/5.5)/2,0 *-math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
end
]]
if attack==true and noleg == false then
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.24*math.cos(sine/5), 0.+0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0-74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.24*math.cos(sine/5),0.-0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0+74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
end
elseif torvel>=200 and hitfloor~=nil then
Anim="MachRun"
change = 0.84+ Character.Humanoid.WalkSpeed/182
if attack==false and equip == false then
Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1), -3.8) * angles(math.rad(-44), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .2)
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1)),math.rad(0),math.rad(0+5*math.sin(sine/2)) + RootPart.RotVelocity.Y / 13),.2)
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.5) * angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(-24+0*math.cos(sine/2))- RootPart.RotVelocity.Y / 34),.35)
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.5)*angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(24+0*math.cos(sine/2))+ RootPart.RotVelocity.Y / -34),.35)
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.42*math.cos(sine/2), 0-0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0+134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.52)
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.42*math.cos(sine/2),0+0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0-134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.52)
end
end
if 0 < #Effects then
for e = 1, #Effects do
if Effects[e] ~= nil then
local Thing = Effects[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]
if Thing[1].Transparency <= 1 then
if Thing[2] == "Block1" then
Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
Mesh = Thing[1]:FindFirstChild("Mesh")
if not Mesh then
Mesh = Instance.new("BlockMesh")
end
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]:FindFirstChild("Mesh")
if not Mesh then
Mesh = Instance.new("BlockMesh")
end
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[1]:FindFirstChild("Mesh")
if not Mesh then
Mesh = Instance.new("BlockMesh")
end
Thing[1].CFrame = Thing[1].CFrame * cf(0, 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]:FindFirstChild("Mesh")
if not Mesh then
Mesh = Instance.new("BlockMesh")
end
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
game:GetService("Debris"):AddItem(Part, 0)
table.remove(Effects, e)
end
end
end
end
end
endscript that makes you supra fast and be sanic use a reanimate to make it visible to everyone