SHOW:
|
|
- or go back to the newest paste.
| 1 | - | local s = Instance.new("Sound")
|
| 1 | + | Character = game.Players.LocalPlayer.Character |
| 2 | - | s.Name = "BGMusic" |
| 2 | + | Head = Character.Head |
| 3 | - | s.SoundId = "https://www.roblox.com/asset/?id=690672961" |
| 3 | + | |
| 4 | - | s.Pitch = 1 |
| 4 | + | CV="Blue" |
| 5 | - | s.Volume = 1 |
| 5 | + | p = game.Players.LocalPlayer |
| 6 | - | s.Looped = true |
| 6 | + | char = p.Character |
| 7 | - | s.archivable = false |
| 7 | + | local txt = Instance.new("BillboardGui", char)
|
| 8 | - | s.Parent = game.Workspace |
| 8 | + | txt.Adornee = char .Head |
| 9 | - | wait(0.1) |
| 9 | + | txt.Name = "_status" |
| 10 | - | s:play() |
| 10 | + | txt.Size = UDim2.new(2, 0, 1.2, 0) |
| 11 | txt.StudsOffset = Vector3.new(-9, 8, 0) | |
| 12 | local text = Instance.new("TextLabel", txt)
| |
| 13 | text.Size = UDim2.new(10, 0, 7, 0) | |
| 14 | text.FontSize = "Size24" | |
| 15 | text.TextScaled = true | |
| 16 | text.TextTransparency = 0 | |
| 17 | text.BackgroundTransparency = 1 | |
| 18 | text.TextTransparency = 0 | |
| 19 | text.TextStrokeTransparency = 0 | |
| 20 | text.Font = "Cartoon" | |
| 21 | text.TextStrokeColor3 = Color3.new(0,0,.50) | |
| 22 | ||
| 23 | v=Instance.new("Part")
| |
| 24 | v.Name = "ColorBrick" | |
| 25 | v.Parent=p.Character | |
| 26 | v.FormFactor="Symmetric" | |
| 27 | v.Anchored=true | |
| 28 | v.CanCollide=false | |
| 29 | v.BottomSurface="Smooth" | |
| 30 | v.TopSurface="Smooth" | |
| 31 | v.Size=Vector3.new(10,5,3) | |
| 32 | v.Transparency=1 | |
| 33 | v.CFrame=char.Torso.CFrame | |
| 34 | v.BrickColor=BrickColor.new(CV) | |
| 35 | v.Transparency=1 | |
| 36 | text.TextColor3 = Color3.new(0,0,.50) | |
| 37 | v.Shape="Block" | |
| 38 | text.Text = "Random Powerful Person" | |
| 39 | ||
| 40 | local s = Instance.new("Sound",char)
| |
| 41 | s.Name = "BGMusic" | |
| 42 | s.SoundId = "rbxassetid://690672961" | |
| 43 | s.Pitch = 1 | |
| 44 | s.Volume = 10 | |
| 45 | s.Looped = true | |
| 46 | s.archivable = false | |
| 47 | s.Parent = char.Head | |
| 48 | wait(0.1) | |
| 49 | s:play() | |
| 50 | ||
| 51 | math.randomseed(tick()) | |
| 52 | plr = game:service("Players").LocalPlayer
| |
| 53 | ch, char = plr.Character, plr.Character | |
| 54 | hum = ch.Humanoid | |
| 55 | tor, torso, rootpart, rj = ch.Torso, ch.Torso, ch.HumanoidRootPart, ch.HumanoidRootPart.RootJoint | |
| 56 | m, mouse = plr:GetMouse(), plr:GetMouse() | |
| 57 | cfn, ang, mr, int = CFrame.new, CFrame.Angles, math.rad, Instance.new | |
| 58 | bc = BrickColor.new | |
| 59 | head = ch.Head | |
| 60 | cam = workspace.CurrentCamera | |
| 61 | rj.C0 = cfn() | |
| 62 | rj.C1 = cfn() | |
| 63 | lib = {}
| |
| 64 | lib.cone = "1033714" | |
| 65 | lib.ring = "3270017" | |
| 66 | lib.yato = "579392805" | |
| 67 | rbx = "rbxassetid://" | |
| 68 | v3 = Vector3.new | |
| 69 | cn = CFrame.new | |
| 70 | ca2 = CFrame.Angles | |
| 71 | mf = math.floor | |
| 72 | mran = math.random | |
| 73 | rn = mran | |
| 74 | mrad = math.rad | |
| 75 | rd = mrad | |
| 76 | mdeg = math.deg | |
| 77 | dg = mdeg | |
| 78 | function ca(x, y, z) | |
| 79 | return ca2(mrad(x), mrad(y), mrad(z)) | |
| 80 | end | |
| 81 | function mran2(a, b) | |
| 82 | return mran(a * 1000, b * 1000) / 1000 | |
| 83 | end | |
| 84 | ud = UDim2.new | |
| 85 | bn = BrickColor.new | |
| 86 | c3 = Color3.new | |
| 87 | function getSound(id) | |
| 88 | game:service("ContentProvider"):Preload("rbxassetid" .. tostring(id))
| |
| 89 | local s = int("Sound", ch.Head)
| |
| 90 | s.SoundId = "rbxassetid://" .. tostring(id - 1) | |
| 91 | s.Volume = 1 | |
| 92 | return s | |
| 93 | end | |
| 94 | local combostring = "" | |
| 95 | local attackstring = "" | |
| 96 | blocksound = getSound(260433722) | |
| 97 | blocksound.Pitch = 1 | |
| 98 | startsound = getSound(588738950) | |
| 99 | startsound.Pitch = 1 | |
| 100 | endsound = getSound(588736246) | |
| 101 | endsound.Pitch = 1 | |
| 102 | endsound.Volume = 2 | |
| 103 | swsound = getSound(588736970) | |
| 104 | swexp = getSound(365002939) | |
| 105 | swexp.Pitch = 1 | |
| 106 | spexp = getSound(365002939) | |
| 107 | spexp.Pitch = 1.2 | |
| 108 | startsound2 = getSound(260433769) | |
| 109 | startsound2.Pitch = 0.8 | |
| 110 | startsound3 = getSound(260433769) | |
| 111 | startsound3.Pitch = 0.89 | |
| 112 | chargesound = getSound(181004944) | |
| 113 | chargesound.Pitch = 1 | |
| 114 | basicsound = getSound(588736246) | |
| 115 | basicsound.Pitch = 1.2 | |
| 116 | dodgesound = getSound(177162407) | |
| 117 | dodgesound.Pitch = 1.4 | |
| 118 | landsound = getSound(315775190) | |
| 119 | rushsound = getSound(134012323) | |
| 120 | swoosh = getSound(231917988) | |
| 121 | swoosh.Volume = 2 | |
| 122 | aerialcharge = getSound(265109959) | |
| 123 | aerialcharge.Pitch = 1.1 | |
| 124 | curse = getSound(231917971) | |
| 125 | glass = getSound(130779172) | |
| 126 | magictone1 = getSound(588738950) | |
| 127 | tweenTable = {}
| |
| 128 | altTweenTable = {}
| |
| 129 | local alljoints = {}
| |
| 130 | textTable = {}
| |
| 131 | local fx = {}
| |
| 132 | moves = {}
| |
| 133 | connectlist = {}
| |
| 134 | cooldowns = {}
| |
| 135 | movers = {}
| |
| 136 | local linetable = {}
| |
| 137 | local run = false | |
| 138 | idle = false | |
| 139 | local animPlaying = false | |
| 140 | local runLeg = false | |
| 141 | canRunLeg = false | |
| 142 | local deb = false | |
| 143 | local basicswitch = false | |
| 144 | local canExecuteMoves = true | |
| 145 | maxmana = 90000 | |
| 146 | mana = 90000 | |
| 147 | chain = 0 | |
| 148 | hum.MaxHealth = 90000 | |
| 149 | spawn(function() | |
| 150 | wait() | |
| 151 | hum.Health = 90000 | |
| 152 | end) | |
| 153 | local managui = int("ScreenGui", plr.PlayerGui)
| |
| 154 | managui.Name = "Mana Gui" | |
| 155 | local frame = int("Frame", managui)
| |
| 156 | frame.Size = UDim2.new(0.15, 0, 0.02, 0) | |
| 157 | frame.Position = UDim2.new(0.83, 0, 0.7, 0) | |
| 158 | frame.BackgroundColor3 = BrickColor.new("Black").Color
| |
| 159 | frame.BorderColor3 = BrickColor.new("Really black").Color
| |
| 160 | frame.BorderSizePixel = 6 | |
| 161 | local manabartext = int("TextLabel", frame)
| |
| 162 | manabartext.ZIndex = 2 | |
| 163 | manabartext.Size = UDim2.new(1, 0, 1, 0) | |
| 164 | manabartext.TextColor3 = BrickColor.new("White").Color
| |
| 165 | manabartext.TextStrokeTransparency = 1 | |
| 166 | manabartext.Font = "SourceSansLight" | |
| 167 | manabartext.Text = tostring(mana) .. "/" .. tostring(maxmana) | |
| 168 | manabartext.FontSize = "Size18" | |
| 169 | manabartext.BackgroundTransparency = 1 | |
| 170 | local manabar = int("Frame", frame)
| |
| 171 | manabar.Size = UDim2.new(1, 0, 1, 0) | |
| 172 | manabar.BorderSizePixel = 0 | |
| 173 | manabar.BackgroundColor3 = BrickColor.new("Bright blue").Color
| |
| 174 | manabar.Size = UDim2.new(mana / maxmana, 0, 1, 0) | |
| 175 | local chainframe = int("Frame", managui)
| |
| 176 | chainframe.Size = frame.Size | |
| 177 | chainframe.BackgroundTransparency = 1 | |
| 178 | chainframe.Position = frame.Position + UDim2.new(0.07, 0, -0.05, 0) | |
| 179 | local chaintext = int("TextLabel", chainframe)
| |
| 180 | chaintext.BackgroundTransparency = 1 | |
| 181 | chaintext.TextStrokeColor3 = BrickColor.new("White").Color
| |
| 182 | chaintext.TextStrokeTransparency = 0 | |
| 183 | chaintext.Size = UDim2.new(1, 0, 1, 0) | |
| 184 | chaintext.Font = "Antique" | |
| 185 | chaintext.FontSize = "Size48" | |
| 186 | chaintext.Text = "0x" | |
| 187 | ypcall(function() | |
| 188 | ch.Animate:Destroy() | |
| 189 | ch.Humanoid.Animator:Destroy() | |
| 190 | end) | |
| 191 | if ch:findFirstChild("Riven") then
| |
| 192 | ch.Riven:Destroy() | |
| 193 | end | |
| 194 | local tube = int("Model", ch)
| |
| 195 | tube.Name = "Riven" | |
| 196 | script.Parent = tube | |
| 197 | function Weld(p0, p1, x, y, z, rx, ry, rz, par) | |
| 198 | p0.Position = p1.Position | |
| 199 | local w = Instance.new("Motor", par or p0)
| |
| 200 | w.Part0 = p1 | |
| 201 | w.Part1 = p0 | |
| 202 | w.C0 = CFrame.new(x or 0, y or 0, z or 0) * CFrame.Angles(rx or 0, ry or 0, rz or 0) | |
| 203 | w.MaxVelocity = 0.1 | |
| 204 | return w | |
| 205 | end | |
| 206 | function clerp(c1, c2, sp) | |
| 207 | local R1, R2, R3 = c1:toEulerAnglesXYZ() | |
| 208 | local R21, R22, R23 = c2:toEulerAnglesXYZ() | |
| 209 | return CFrame.new(c1.X + (c2.X - c1.X) * sp, c1.Y + (c2.Y - c1.Y) * sp, c1.Z + (c2.Z - c1.Z) * sp) * CFrame.Angles(R1 + (R21 - R1) * sp, R2 + (R22 - R2) * sp, R3 + (R23 - R3) * sp) | |
| 210 | end | |
| 211 | function Tween(Weld, Stop, Step, a) | |
| 212 | ypcall(function() | |
| 213 | local function func() | |
| 214 | local Start = Weld.C1 | |
| 215 | local X1, Y1, Z1 = Start:toEulerAnglesXYZ() | |
| 216 | local Stop = Stop | |
| 217 | local X2, Y2, Z2 = Stop:toEulerAnglesXYZ() | |
| 218 | if not Step then | |
| 219 | Step = 0.1 | |
| 220 | end | |
| 221 | table.insert(tweenTable, {
| |
| 222 | th = 0, | |
| 223 | Weld = Weld, | |
| 224 | Step = Step, | |
| 225 | Start = Start, | |
| 226 | X1 = X1, | |
| 227 | Y1 = Y1, | |
| 228 | Z1 = Z1, | |
| 229 | Stop = Stop, | |
| 230 | X2 = X2, | |
| 231 | Y2 = Y2, | |
| 232 | Z2 = Z2 | |
| 233 | }) | |
| 234 | end | |
| 235 | if a then | |
| 236 | coroutine.wrap(func)() | |
| 237 | else | |
| 238 | func() | |
| 239 | end | |
| 240 | end) | |
| 241 | end | |
| 242 | function altTween(Weld, Stop, Step, a) | |
| 243 | ypcall(function() | |
| 244 | local function func() | |
| 245 | local Start = Weld.C1 | |
| 246 | local X1, Y1, Z1 = Start:toEulerAnglesXYZ() | |
| 247 | local Stop = Stop | |
| 248 | local X2, Y2, Z2 = Stop:toEulerAnglesXYZ() | |
| 249 | if not Step then | |
| 250 | Step = 0.1 | |
| 251 | end | |
| 252 | table.insert(altTweenTable, {
| |
| 253 | th = 0, | |
| 254 | Weld = Weld, | |
| 255 | Step = Step, | |
| 256 | Start = Start, | |
| 257 | X1 = X1, | |
| 258 | Y1 = Y1, | |
| 259 | Z1 = Z1, | |
| 260 | Stop = Stop, | |
| 261 | X2 = X2, | |
| 262 | Y2 = Y2, | |
| 263 | Z2 = Z2 | |
| 264 | }) | |
| 265 | end | |
| 266 | if a then | |
| 267 | coroutine.wrap(func)() | |
| 268 | else | |
| 269 | func() | |
| 270 | end | |
| 271 | end) | |
| 272 | end | |
| 273 | function weld(p0, p1, c0) | |
| 274 | local w = Instance.new("Weld", p0)
| |
| 275 | w.Part0 = p0 | |
| 276 | w.Part1 = p1 | |
| 277 | w.C0 = c0 | |
| 278 | return w | |
| 279 | end | |
| 280 | function cp(parent, color, size, anchored, cancollide) | |
| 281 | local newp = Instance.new("Part", parent)
| |
| 282 | newp.TopSurface = "SmoothNoOutlines" | |
| 283 | newp.BottomSurface = "SmoothNoOutlines" | |
| 284 | newp.FrontSurface = "SmoothNoOutlines" | |
| 285 | newp.BackSurface = "SmoothNoOutlines" | |
| 286 | newp.RightSurface = "SmoothNoOutlines" | |
| 287 | newp.LeftSurface = "SmoothNoOutlines" | |
| 288 | newp.FormFactor = "Custom" | |
| 289 | newp.BrickColor = bc(color) | |
| 290 | local rn = math.random(3) | |
| 291 | if rn == 1 then | |
| 292 | end | |
| 293 | newp.Size = size | |
| 294 | newp.Anchored = anchored | |
| 295 | newp.CanCollide = cancollide | |
| 296 | newp:BreakJoints() | |
| 297 | return newp | |
| 298 | end | |
| 299 | function destroyJoints() | |
| 300 | for i = 1, 5 do | |
| 301 | for _, v in pairs(alljoints) do | |
| 302 | ypcall(function() | |
| 303 | v:Destroy() | |
| 304 | table.remove(alljoints, _) | |
| 305 | end) | |
| 306 | end | |
| 307 | end | |
| 308 | end | |
| 309 | function initializeJoints() | |
| 310 | destroyJoints() | |
| 311 | rabr = cp(tube, "White", Vector3.new(1, 1, 1), false, false) | |
| 312 | rabr.Transparency = 1 | |
| 313 | rabr.Name = "Locker" | |
| 314 | rabr.Position = torso.Position | |
| 315 | rw = Weld(rabr, torso, 1.5, 0.5, 0, 0, 0, 0) | |
| 316 | rw.Parent = tube | |
| 317 | rw.Name = "rw" | |
| 318 | w = Instance.new("Weld", tube)
| |
| 319 | w.Part0, w.Part1 = ch["Right Arm"], rabr | |
| 320 | w.C1 = CFrame.new(0, -0.5, 0) | |
| 321 | labr = cp(tube, "White", Vector3.new(1, 1, 1), false, false) | |
| 322 | labr.Transparency = 1 | |
| 323 | labr.Name = "Locker" | |
| 324 | labr.Position = torso.Position | |
| 325 | lw = Weld(labr, torso, -1.5, 0.5, 0, 0, 0, 0) | |
| 326 | lw.Parent = tube | |
| 327 | lw.Name = "lw" | |
| 328 | ww = Instance.new("Weld", tube)
| |
| 329 | ww.Part0, ww.Part1 = ch["Left Arm"], labr | |
| 330 | ww.C1 = CFrame.new(0, -0.5, 0) | |
| 331 | rlabr = cp(tube, "White", Vector3.new(1, 1, 1), false, false) | |
| 332 | rlabr.Transparency = 1 | |
| 333 | rlabr.Name = "Locker" | |
| 334 | rlabr.Position = torso.Position | |
| 335 | rlw = Weld(rlabr, torso, 0.5, -1.5, 0, 0, 0, 0) | |
| 336 | rlw.Parent = tube | |
| 337 | rlw.Name = "rlw" | |
| 338 | wl = Instance.new("Weld", tube)
| |
| 339 | wl.Part0, wl.Part1 = ch["Right Leg"], rlabr | |
| 340 | wl.C1 = CFrame.new(0, -0.5, 0) | |
| 341 | llabr = cp(tube, "White", Vector3.new(1, 1, 1), false, false) | |
| 342 | llabr.Transparency = 1 | |
| 343 | llabr.Name = "Locker" | |
| 344 | llabr.Position = torso.Position | |
| 345 | llw = Weld(llabr, torso, -0.5, -1.5, 0, 0, 0, 0) | |
| 346 | llw.Parent = tube | |
| 347 | llw.Name = "llw" | |
| 348 | wwl = Instance.new("Weld", tube)
| |
| 349 | wwl.Part0, wwl.Part1 = ch["Left Leg"], llabr | |
| 350 | wwl.C1 = CFrame.new(0, -0.5, 0) | |
| 351 | nk = cp(tube, "White", Vector3.new(1, 1, 1), false, false) | |
| 352 | nk.Transparency = 1 | |
| 353 | nk.Name = "Locker" | |
| 354 | nk.Position = torso.Position | |
| 355 | neck = Weld(nk, torso, 0, 2, 0, 0, 0, 0) | |
| 356 | neck.Parent = tube | |
| 357 | neck.Name = "neck" | |
| 358 | www = Instance.new("Weld", tube)
| |
| 359 | www.Part0, www.Part1 = ch.Head, nk | |
| 360 | www.C1 = CFrame.new(0, -0.5, 0) | |
| 361 | table.insert(alljoints, rabr) | |
| 362 | table.insert(alljoints, labr) | |
| 363 | table.insert(alljoints, rw) | |
| 364 | table.insert(alljoints, lw) | |
| 365 | table.insert(alljoints, w) | |
| 366 | table.insert(alljoints, ww) | |
| 367 | table.insert(alljoints, rlabr) | |
| 368 | table.insert(alljoints, llabr) | |
| 369 | table.insert(alljoints, rlw) | |
| 370 | table.insert(alljoints, llw) | |
| 371 | table.insert(alljoints, wl) | |
| 372 | table.insert(alljoints, wwl) | |
| 373 | table.insert(alljoints, nk) | |
| 374 | table.insert(alljoints, neck) | |
| 375 | table.insert(alljoints, www) | |
| 376 | end | |
| 377 | function cyl(prt) | |
| 378 | local c = int("CylinderMesh", prt)
| |
| 379 | return c | |
| 380 | end | |
| 381 | function blo(prt) | |
| 382 | local c = int("BlockMesh", prt)
| |
| 383 | c.Name = "bmsh" | |
| 384 | return c | |
| 385 | end | |
| 386 | function sphere(prt) | |
| 387 | local c = int("SpecialMesh", prt)
| |
| 388 | c.MeshType = "Sphere" | |
| 389 | return c | |
| 390 | end | |
| 391 | initializeJoints() | |
| 392 | function reset() | |
| 393 | if run == false and animPlaying == false then | |
| 394 | altTweenTable = {}
| |
| 395 | Tween(llw, cfn(0, -0.08 * math.sin(tick() * 1.5), 0) * ang(0, 0, mr(5))) | |
| 396 | Tween(rlw, cfn(0, -0.08 * math.sin(tick() * 1.5), 0) * ang(0, 0, mr(-5))) | |
| 397 | Tween(rw, cfn(0, 0.1 * math.sin(tick() * 1.5), 0) * ang(0, 0, mr(-15) + mr(-5 * math.sin(tick() * 1.5)))) | |
| 398 | Tween(lw, cfn(0, 0.1 * math.sin(tick() * 1.5), 0) * ang(0, 0, mr(15) + mr(5 * math.sin(tick() * 1.5)))) | |
| 399 | Tween(neck, cfn()) | |
| 400 | Tween(rj, cfn(0, 0.08 * math.sin(tick() * 1.5), 0), 0.3) | |
| 401 | end | |
| 402 | end | |
| 403 | function resetLegs() | |
| 404 | altTweenTable = {}
| |
| 405 | Tween(llw, cfn()) | |
| 406 | Tween(rlw, cfn()) | |
| 407 | end | |
| 408 | function walkCycle() | |
| 409 | if run == true and animPlaying == false then | |
| 410 | tweenTable = {}
| |
| 411 | Tween(rj, cfn()) | |
| 412 | Tween(llw, cfn(0, 0, -0.2 * math.sin(tick() * 8)) * ang(mr(10) + mr(40 * math.sin(tick() * 8)), 0, 0), 0.6) | |
| 413 | Tween(rlw, cfn(0, 0, 0.2 * math.sin(tick() * 8)) * ang(mr(10) + mr(-40 * math.sin(tick() * 8)), 0, 0), 0.6) | |
| 414 | Tween(rw, cfn() * ang(mr(-40), 0, mr(-30)), 0.07) | |
| 415 | Tween(lw, cfn() * ang(mr(20), 0, mr(20)), 0.07) | |
| 416 | end | |
| 417 | end | |
| 418 | function walkLegs() | |
| 419 | if runLeg == true then | |
| 420 | altTweenTable = {}
| |
| 421 | altTween(llw, cfn(0, 0, -0.2 * math.sin(tick() * 8)) * ang(mr(20) + mr(50 * math.sin(tick() * 8)), 0, 0), 0.6) | |
| 422 | altTween(rlw, cfn(0, 0, 0.2 * math.sin(tick() * 8)) * ang(mr(20) + mr(-50 * math.sin(tick() * 8)), 0, 0), 0.6) | |
| 423 | end | |
| 424 | end | |
| 425 | function dealDamage(man, damage, crit, multi, lifesteal) | |
| 426 | if man and man:findFirstChild("Humanoid") and man.Head then
| |
| 427 | local dm = damage | |
| 428 | local cr = false | |
| 429 | local hm = man.Humanoid | |
| 430 | if crit and crit > 0 then | |
| 431 | local c = math.random(crit) | |
| 432 | if c == 1 then | |
| 433 | cr = true | |
| 434 | end | |
| 435 | end | |
| 436 | if cr == true then | |
| 437 | if not multi then | |
| 438 | dm = dm * 1.5 | |
| 439 | else | |
| 440 | dm = dm * multi | |
| 441 | end | |
| 442 | end | |
| 443 | hm:TakeDamage(dm) | |
| 444 | if lifesteal then | |
| 445 | local plife = lifesteal * dm | |
| 446 | if hum.Health < hum.MaxHealth then | |
| 447 | hum.Health = hum.Health + plife | |
| 448 | local bbg = int("BillboardGui", tube)
| |
| 449 | bbg.Size = UDim2.new(1, 0, 1, 0) | |
| 450 | bbg.StudsOffset = Vector3.new(0, 2, 0) | |
| 451 | bbg.StudsOffset = bbg.StudsOffset + Vector3.new(math.random(-math.random(50) / 10, math.random(50) / 10), 0, math.random(-math.random(50) / 10, math.random(50) / 10)) | |
| 452 | bbg.Adornee = ch.Head | |
| 453 | bbg.AlwaysOnTop = true | |
| 454 | local tlabl = int("TextLabel", bbg)
| |
| 455 | tlabl.Size = UDim2.new(1, 0, 1, 0) | |
| 456 | tlabl.Text = tostring(plife) | |
| 457 | tlabl.BackgroundTransparency = 1 | |
| 458 | tlabl.TextColor3 = BrickColor.new("Bright green").Color
| |
| 459 | tlabl.TextStrokeColor3 = BrickColor.new("White").Color
| |
| 460 | tlabl.TextStrokeTransparency = 0 | |
| 461 | tlabl.Font = "Antique" | |
| 462 | tlabl.FontSize = "Size60" | |
| 463 | table.insert(textTable, bbg) | |
| 464 | end | |
| 465 | end | |
| 466 | chain = chain + 1 | |
| 467 | if hm.MaxHealth >= 99999 then | |
| 468 | hm.Parent:BreakJoints() | |
| 469 | end | |
| 470 | local bbg = int("BillboardGui", tube)
| |
| 471 | bbg.Size = UDim2.new(1, 0, 1, 0) | |
| 472 | bbg.StudsOffset = Vector3.new(0, 2, 0) | |
| 473 | bbg.StudsOffset = bbg.StudsOffset + Vector3.new(math.random(-math.random(50) / 10, math.random(50) / 10), 0, math.random(-math.random(50) / 10, math.random(50) / 10)) | |
| 474 | bbg.Adornee = man.Head | |
| 475 | bbg.AlwaysOnTop = true | |
| 476 | local tlabl = int("TextLabel", bbg)
| |
| 477 | tlabl.Size = UDim2.new(1, 0, 1, 0) | |
| 478 | tlabl.Text = tostring(dm) | |
| 479 | tlabl.BackgroundTransparency = 1 | |
| 480 | tlabl.TextColor3 = BrickColor.new("Really black").Color
| |
| 481 | tlabl.TextStrokeColor3 = BrickColor.new("White").Color
| |
| 482 | if cr == true then | |
| 483 | tlabl.TextColor3 = BrickColor.new("Really red").Color
| |
| 484 | tlabl.TextStrokeColor3 = BrickColor.new("Really black").Color
| |
| 485 | end | |
| 486 | tlabl.TextStrokeTransparency = 0 | |
| 487 | tlabl.Font = "Antique" | |
| 488 | tlabl.FontSize = "Size60" | |
| 489 | table.insert(textTable, bbg) | |
| 490 | return dm | |
| 491 | end | |
| 492 | end | |
| 493 | local tp = cp(tube, "White", Vector3.new(1, 1, 1)) | |
| 494 | tp.Transparency = 1 | |
| 495 | weld(ch["Right Arm"], tp, cfn(0, -1, 0)) | |
| 496 | function addFx(item, int, final, func) | |
| 497 | table.insert(fx, {
| |
| 498 | item = item, | |
| 499 | int = int, | |
| 500 | func = func, | |
| 501 | final = final, | |
| 502 | stepval = 0 | |
| 503 | }) | |
| 504 | end | |
| 505 | function addMove(name, key, cooldown, func, manacost) | |
| 506 | moves[name] = {
| |
| 507 | key = key, | |
| 508 | cooldown = cooldown, | |
| 509 | func = func, | |
| 510 | manacost = manacost | |
| 511 | } | |
| 512 | end | |
| 513 | function drawLine(point_a, point_b, bc_code, angle) | |
| 514 | local dist = (point_a - point_b).magnitude | |
| 515 | if dist > 1 then | |
| 516 | local rad = dist / 2 | |
| 517 | local line = Instance.new("Part", tube)
| |
| 518 | line.Anchored = true | |
| 519 | line.FormFactor = "Custom" | |
| 520 | line.BrickColor = BrickColor.new(bc_code) | |
| 521 | line.TopSurface = "SmoothNoOutlines" | |
| 522 | line.BottomSurface = "SmoothNoOutlines" | |
| 523 | line.LeftSurface = "SmoothNoOutlines" | |
| 524 | line.RightSurface = "SmoothNoOutlines" | |
| 525 | line.FrontSurface = "SmoothNoOutlines" | |
| 526 | line.BackSurface = "SmoothNoOutlines" | |
| 527 | line.Material = "Neon" | |
| 528 | line.CanCollide = false | |
| 529 | line.Size = Vector3.new(0.7, 0.7, dist) | |
| 530 | Instance.new("BlockMesh", line).Name = "blok"
| |
| 531 | line.CFrame = CFrame.new(point_a, point_b) * CFrame.new(0, 0, -rad) | |
| 532 | return line | |
| 533 | end | |
| 534 | end | |
| 535 | function depleteMana(amount) | |
| 536 | if mana > 0 then | |
| 537 | if mana - amount > 0 then | |
| 538 | mana = mana - amount | |
| 539 | return true | |
| 540 | else | |
| 541 | return false | |
| 542 | end | |
| 543 | end | |
| 544 | end | |
| 545 | function executeMove(name) | |
| 546 | if canExecuteMoves == true and ch and hum and hum.Health > 0 then | |
| 547 | local can = true | |
| 548 | for _, v in pairs(cooldowns) do | |
| 549 | if v.move == name then | |
| 550 | can = false | |
| 551 | break | |
| 552 | end | |
| 553 | end | |
| 554 | if can == true then | |
| 555 | local can2 = true | |
| 556 | if moves[name].manacost then | |
| 557 | local a = depleteMana(moves[name].manacost) | |
| 558 | if not a then | |
| 559 | can2 = false | |
| 560 | end | |
| 561 | end | |
| 562 | if can2 then | |
| 563 | moves[name].func() | |
| 564 | end | |
| 565 | end | |
| 566 | end | |
| 567 | end | |
| 568 | function addToCList(what, key) | |
| 569 | local a = {
| |
| 570 | what, | |
| 571 | key = key, | |
| 572 | up = false | |
| 573 | } | |
| 574 | table.insert(connectlist, a) | |
| 575 | return a | |
| 576 | end | |
| 577 | function waitForUp(what) | |
| 578 | repeat | |
| 579 | wait() | |
| 580 | until what.up == true | |
| 581 | end | |
| 582 | function addMover(what, step, func) | |
| 583 | table.insert(movers, {
| |
| 584 | mover = what, | |
| 585 | step = step, | |
| 586 | lastpoint = what.CFrame, | |
| 587 | func = func | |
| 588 | }) | |
| 589 | end | |
| 590 | local CreateRegion3FromLocAndSize = function(Position, Size) | |
| 591 | local SizeOffset = Size / 2 | |
| 592 | local Point1 = Position - SizeOffset | |
| 593 | local Point2 = Position + SizeOffset | |
| 594 | return Region3.new(Point1, Point2) | |
| 595 | end | |
| 596 | local righthandle = cp(tube, "White", Vector3.new(1, 1, 1)) | |
| 597 | weld(ch["Right Arm"], righthandle, cfn(0, -1, 0)) | |
| 598 | righthandle.Transparency = 1 | |
| 599 | local lefthandle = cp(tube, "White", Vector3.new(1, 1, 1)) | |
| 600 | weld(ch["Left Arm"], lefthandle, cfn(0, -1, 0)) | |
| 601 | lefthandle.Transparency = 1 | |
| 602 | function addCoolDown(move) | |
| 603 | local a = {
| |
| 604 | timeleft = moves[move].cooldown, | |
| 605 | move = move | |
| 606 | } | |
| 607 | table.insert(cooldowns, a) | |
| 608 | end | |
| 609 | addMove("block_normal", "f", 0.5, function()
| |
| 610 | deb = true | |
| 611 | idle = false | |
| 612 | local ws = hum.WalkSpeed | |
| 613 | tor.CFrame = CFrame.new(tor.Position, Vector3.new(mouse.Hit.p.X, tor.Position.Y, mouse.Hit.p.Z)) | |
| 614 | hum.WalkSpeed = 0 | |
| 615 | tweenTable = {}
| |
| 616 | animPlaying = true | |
| 617 | local pcf = tor.CFrame | |
| 618 | Tween(rj, cfn() * ang(0, mr(-45), 0), 0.2) | |
| 619 | Tween(rw, cfn() * ang(mr(-86), mr(-15), 0), 0.2) | |
| 620 | Tween(lw, cfn() * ang(0, mr(5), mr(20)), 0.2) | |
| 621 | blocksound:Play() | |
| 622 | local block = cp(workspace, "Really black", Vector3.new(8, 6, 1), true, true) | |
| 623 | block.CFrame = pcf * CFrame.new(0, 0, -5) | |
| 624 | block.Material = "Neon" | |
| 625 | local bm = blo(block) | |
| 626 | bm.Scale = Vector3.new(0, 0, 0.9) | |
| 627 | addFx(block, 0.05, nil, function() | |
| 628 | bm.Scale = bm.Scale + Vector3.new(0.05, 0.05, 0) | |
| 629 | end) | |
| 630 | local a = addToCList("block_connect", "f")
| |
| 631 | waitForUp(a) | |
| 632 | addCoolDown("block_normal")
| |
| 633 | hum.WalkSpeed = ws | |
| 634 | deb = false | |
| 635 | addFx(block, 0.05, "destroy", function() | |
| 636 | block.Transparency = block.Transparency + 0.05 | |
| 637 | block.bmsh.Scale = block.bmsh.Scale + Vector3.new(0.07, 0.07, 0) | |
| 638 | end) | |
| 639 | idle = true | |
| 640 | reset() | |
| 641 | animPlaying = false | |
| 642 | end, 15) | |
| 643 | addMove("curse", "g", 10, function()
| |
| 644 | deb = true | |
| 645 | idle = false | |
| 646 | animPlaying = true | |
| 647 | canRunLeg = true | |
| 648 | tweenTable = {}
| |
| 649 | altTweenTable = {}
| |
| 650 | Tween(rj, cfn() * ang(0, mr(-90), 0), 0.2) | |
| 651 | Tween(rw, cfn() * ang(0, 0, mr(-90)), 0.2) | |
| 652 | Tween(lw, cfn() * ang(0, mr(5), mr(20)), 0.2) | |
| 653 | tor.CFrame = CFrame.new(tor.Position, Vector3.new(mouse.Hit.p.X, tor.Position.Y, mouse.Hit.p.Z)) | |
| 654 | wait(0.15) | |
| 655 | curse:Play() | |
| 656 | addCoolDown("curse")
| |
| 657 | local bullet = cp(tube, "Really black", Vector3.new(1, 1, 1)) | |
| 658 | bullet.CFrame = CFrame.new(righthandle.CFrame.p, Vector3.new(m.Hit.p.X, m.Hit.p.Y, m.Hit.p.Z)) | |
| 659 | bullet.Transparency = 1 | |
| 660 | local bulletfx = bullet:clone() | |
| 661 | bulletfx.Transparency = 1 | |
| 662 | bulletfx.Parent = bullet | |
| 663 | bulletfx.Anchored = true | |
| 664 | sphere(bulletfx) | |
| 665 | local angle = 0 | |
| 666 | local lastpoint = bullet.CFrame | |
| 667 | addMover(bullet, 0.8, function() | |
| 668 | angle = angle + 1 | |
| 669 | local angles = CFrame.Angles(0, 0, mr(angle)) | |
| 670 | bulletfx.CFrame = bullet.CFrame | |
| 671 | local fxp = cp(tube, "Really black", Vector3.new(1, 1, 1), true) | |
| 672 | fxp.CFrame = bulletfx.CFrame | |
| 673 | local bmesh = int("SpecialMesh", fxp)
| |
| 674 | bmesh.MeshType = "FileMesh" | |
| 675 | bmesh.MeshId = rbx .. lib.ring | |
| 676 | bmesh.Scale = Vector3.new(2, 2, 2) | |
| 677 | addFx(fxp, 0.07, "destroy", function() | |
| 678 | bulletfx.CFrame = bullet.CFrame | |
| 679 | bmesh.Scale = bmesh.Scale - Vector3.new(0.1, 0.1, 0) | |
| 680 | fxp.Transparency = fxp.Transparency + 0.07 | |
| 681 | end) | |
| 682 | end) | |
| 683 | bullet.Touched:connect(function(p) | |
| 684 | if not p:isDescendantOf(ch) then | |
| 685 | do | |
| 686 | local thing | |
| 687 | local region = CreateRegion3FromLocAndSize(bullet.Position, bullet.Size * 2) | |
| 688 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 50)) do
| |
| 689 | if v.Parent and v.Parent:findFirstChild("Humanoid") then
| |
| 690 | thing = v | |
| 691 | break | |
| 692 | end | |
| 693 | end | |
| 694 | local mgp = cp(tube, "White", Vector3.new(1, 1, 1), true) | |
| 695 | mgp.Transparency = 1 | |
| 696 | mgp.CFrame = bullet.CFrame | |
| 697 | game.Debris:AddItem(mgp, 3) | |
| 698 | local tsound = glass:clone() | |
| 699 | tsound.Volume = 2 | |
| 700 | tsound.Parent = mgp | |
| 701 | tsound:Play() | |
| 702 | local position = bullet.CFrame | |
| 703 | if thing and thing.Parent then | |
| 704 | dealDamage(thing.Parent, 50000, 50000) | |
| 705 | do | |
| 706 | local humin = thing.Parent.Humanoid | |
| 707 | spawn(function() | |
| 708 | for i = 1, 10 do | |
| 709 | wait(1) | |
| 710 | if thing.Parent then | |
| 711 | dealDamage(thing.Parent, 0.05 * humin.MaxHealth, 10000, 10000, 10000) | |
| 712 | end | |
| 713 | end | |
| 714 | end) | |
| 715 | end | |
| 716 | end | |
| 717 | local blast = cp(tube, "Really black", Vector3.new(2, 2, 2), true, false) | |
| 718 | blast.Material = "Neon" | |
| 719 | local spm2 = blo(blast) | |
| 720 | spm2.Name = "mesh" | |
| 721 | blast.CFrame = CFrame.new(position.X, position.Y, position.Z) * ang(mr(math.random(90)), mr(math.random(90)), mr(math.random(90))) | |
| 722 | if p.Name == "Torso" or p.Parent and p.Parent:findFirstChild("Torso") then
| |
| 723 | blast.CFrame = p.Parent.Torso.CFrame * ang(mr(math.random(90)), mr(math.random(90)), mr(math.random(90))) | |
| 724 | end | |
| 725 | for i = 1, 5 do | |
| 726 | do | |
| 727 | local fx = blast:clone() | |
| 728 | fx.Parent = tube | |
| 729 | fx.CFrame = blast.CFrame * ang(mr(math.random(90)), mr(math.random(90)), mr(math.random(90))) | |
| 730 | addFx(fx, 0.05, "destroy", function() | |
| 731 | fx.mesh.Scale = fx.mesh.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 732 | fx.Transparency = fx.Transparency + 0.05 | |
| 733 | end) | |
| 734 | end | |
| 735 | end | |
| 736 | addFx(blast, 0.05, "destroy", function() | |
| 737 | spm2.Scale = spm2.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 738 | blast.Transparency = blast.Transparency + 0.05 | |
| 739 | end) | |
| 740 | bullet:Destroy() | |
| 741 | bulletfx:Destroy() | |
| 742 | end | |
| 743 | end | |
| 744 | end) | |
| 745 | game.Debris:AddItem(bullet, 3) | |
| 746 | local bv = int("BodyVelocity", bullet)
| |
| 747 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 748 | bv.Velocity = bullet.CFrame.lookVector * 150 | |
| 749 | wait(0.5) | |
| 750 | reset() | |
| 751 | deb = false | |
| 752 | canRunLeg = false | |
| 753 | animPlaying = false | |
| 754 | end, 60) | |
| 755 | local bg = false | |
| 756 | addMove("beam", "e", 5, function()
| |
| 757 | tweenTable = {}
| |
| 758 | animPlaying = true | |
| 759 | idle = false | |
| 760 | deb = true | |
| 761 | local pcf = tor.CFrame | |
| 762 | canRunLeg = true | |
| 763 | startsound:Play() | |
| 764 | chargesound.Looped = true | |
| 765 | chargesound:Play() | |
| 766 | Tween(rj, cfn() * ang(0, mr(-90), 0), 0.2) | |
| 767 | Tween(rw, cfn() * ang(0, 0, mr(-90)), 0.2) | |
| 768 | Tween(lw, cfn() * ang(0, mr(5), mr(20)), 0.2) | |
| 769 | bg = true | |
| 770 | local a = addToCList("beam_connect", "e")
| |
| 771 | local charge = cp(tube, "Really black", Vector3.new(1, 1, 1)) | |
| 772 | charge.Material = "Neon" | |
| 773 | local spm = int("SpecialMesh", charge)
| |
| 774 | spm.MeshType = "Sphere" | |
| 775 | spm.Name = "sphere" | |
| 776 | weld(ch["Right Arm"], charge, cfn(0, -2, 0)) | |
| 777 | local up = false | |
| 778 | local multiplier = 1 | |
| 779 | local cn = chargesound.DidLoop:connect(function() | |
| 780 | local fx = charge:clone() | |
| 781 | fx.Parent = tube | |
| 782 | fx.CFrame = charge.CFrame | |
| 783 | weld(charge, fx, cfn()) | |
| 784 | addFx(fx, 0.07, "destroy", function() | |
| 785 | if fx and fx:findFirstChild("sphere") then
| |
| 786 | fx.sphere.Scale = fx.sphere.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 787 | fx.Transparency = fx.Transparency + 0.07 | |
| 788 | end | |
| 789 | end) | |
| 790 | end) | |
| 791 | spawn(function() | |
| 792 | repeat | |
| 793 | wait() | |
| 794 | if spm.Scale.X < 2 then | |
| 795 | spm.Scale = spm.Scale + Vector3.new(0.05, 0.05, 0.05) | |
| 796 | multiplier = multiplier + 0.1 | |
| 797 | end | |
| 798 | until up == true | |
| 799 | end) | |
| 800 | waitForUp(a) | |
| 801 | cn:Disconnect() | |
| 802 | up = true | |
| 803 | addCoolDown("beam")
| |
| 804 | chargesound:Stop() | |
| 805 | endsound:Play() | |
| 806 | local ringFx = cp(tube, "Really black", Vector3.new(2, 2, 2), true, false) | |
| 807 | ringFx.CFrame = charge.CFrame * ang(mr(-90), 0, 0) | |
| 808 | ringFx.Material = "Neon" | |
| 809 | local spm = int("SpecialMesh", ringFx)
| |
| 810 | spm.MeshId = rbx .. lib.ring | |
| 811 | spm.Scale = Vector3.new(2, 2, 2) | |
| 812 | addFx(ringFx, 0.08, "destroy", function() | |
| 813 | spm.Scale = spm.Scale + Vector3.new(0.2, 0.2, 0) | |
| 814 | ringFx.Transparency = ringFx.Transparency + 0.08 | |
| 815 | end) | |
| 816 | local beam = cp(tube, "Really black", Vector3.new(1, 1, 1), true, false) | |
| 817 | local ray = Ray.new(charge.CFrame.p, (mouse.Hit.p - charge.CFrame.p).unit * 300) | |
| 818 | local part, position = workspace:FindPartOnRay(ray, ch, false, true) | |
| 819 | local distance = (charge.CFrame.p - position).magnitude | |
| 820 | beam.Size = Vector3.new(1, 1, distance) | |
| 821 | beam.Material = "Neon" | |
| 822 | beam.CFrame = CFrame.new(charge.CFrame.p, position) * CFrame.new(0, 0, -distance / 2) | |
| 823 | local blast = cp(tube, "Really black", Vector3.new(8, 8, 8), true, false) | |
| 824 | blast.Material = "Neon" | |
| 825 | blast.CFrame = CFrame.new(position.X, position.Y, position.Z) | |
| 826 | local region = CreateRegion3FromLocAndSize(blast.Position, blast.Size * 2) | |
| 827 | local people = {}
| |
| 828 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 100)) do
| |
| 829 | if v and v.Parent and v.className == "Part" and v.Parent:findFirstChild("Humanoid") then
| |
| 830 | local can = false | |
| 831 | if not v.Parent:findFirstChild("HitDeb") then
| |
| 832 | can = true | |
| 833 | end | |
| 834 | if can == true then | |
| 835 | local db = Instance.new("StringValue", v.Parent)
| |
| 836 | db.Name = "HitDeb" | |
| 837 | game.Debris:AddItem(db, 0.5) | |
| 838 | local humin = v.Parent.Humanoid | |
| 839 | if humin then | |
| 840 | local php = humin.Health | |
| 841 | dealDamage(humin.Parent, 20 * multiplier, 10000) | |
| 842 | humin.Sit = true | |
| 843 | humin.PlatformStand = true | |
| 844 | if php <= humin.Health and humin.MaxHealth ~= math.huge then | |
| 845 | print("equal")
| |
| 846 | humin:TakeDamage(20 * multiplier) | |
| 847 | end | |
| 848 | end | |
| 849 | end | |
| 850 | end | |
| 851 | end | |
| 852 | local blastsound = getSound(262562443) | |
| 853 | blastsound.Parent = blast | |
| 854 | blastsound.Volume = 5 | |
| 855 | blastsound:Play() | |
| 856 | blastsound:Stop() | |
| 857 | blastsound:Play() | |
| 858 | canRunLeg = false | |
| 859 | runLeg = false | |
| 860 | animPlaying = false | |
| 861 | tweenTable = {}
| |
| 862 | local spm2 = int("SpecialMesh", blast)
| |
| 863 | spm2.MeshType = "Sphere" | |
| 864 | addFx(blast, 0.008, "destroy", function() | |
| 865 | spm2.Scale = spm2.Scale + Vector3.new(0.05, 0.05, 0.05) | |
| 866 | blast.Transparency = blast.Transparency + 0.008 | |
| 867 | end) | |
| 868 | addFx(beam, 0.1, "destroy", function() | |
| 869 | beam.Transparency = beam.Transparency + 0.1 | |
| 870 | end) | |
| 871 | addFx(charge, 0.1, "destroy", function() | |
| 872 | charge.Transparency = charge.Transparency + 0.1 | |
| 873 | end) | |
| 874 | bg = false | |
| 875 | run = false | |
| 876 | idle = true | |
| 877 | reset() | |
| 878 | deb = false | |
| 879 | end, 60) | |
| 880 | addMove("downslam", "q", 4, function()
| |
| 881 | currentkey = key | |
| 882 | deb = true | |
| 883 | animPlaying = true | |
| 884 | altTweenTable = {}
| |
| 885 | tweenTable = {}
| |
| 886 | local rv = tor.CFrame.upVector | |
| 887 | local bv = int("BodyVelocity", tor)
| |
| 888 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 889 | bv.Velocity = rv * -150 | |
| 890 | rushsound:Play() | |
| 891 | Tween(rj, cfn() * ang(mr(180), 0, 0)) | |
| 892 | Tween(rw, cfn() * ang(mr(-180), 0, 0)) | |
| 893 | Tween(lw, cfn() * ang(mr(-180), 0, 0)) | |
| 894 | addCoolDown("downslam", 4)
| |
| 895 | spawn(function() | |
| 896 | while true do | |
| 897 | wait() | |
| 898 | do | |
| 899 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 900 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 901 | local b = blo(cfx) | |
| 902 | addFx(cfx, 0.05, "destroy", function() | |
| 903 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 904 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 905 | end) | |
| 906 | if Vector3.new(0, tor.Velocity.Y, 0).magnitude < 2 then | |
| 907 | break | |
| 908 | end | |
| 909 | end | |
| 910 | end | |
| 911 | end) | |
| 912 | wait() | |
| 913 | bv:Destroy() | |
| 914 | multiplier = 1 | |
| 915 | repeat | |
| 916 | wait() | |
| 917 | until Vector3.new(0, tor.Velocity.Y, 0).magnitude < 2 | |
| 918 | local bhit, pos = FindGround(cn(tor.CFrame.p), ch) | |
| 919 | local blast = cp(tube, "Really black", Vector3.new(10, 10, 10), true, false) | |
| 920 | blast.CFrame = pos | |
| 921 | local region = CreateRegion3FromLocAndSize(blast.Position, blast.Size * 3) | |
| 922 | local people = {}
| |
| 923 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 100)) do
| |
| 924 | if v and v.Parent and v.className == "Part" and v.Parent:findFirstChild("Humanoid") then
| |
| 925 | local can = false | |
| 926 | if not v.Parent:findFirstChild("HitDeb") then
| |
| 927 | can = true | |
| 928 | end | |
| 929 | if can == true then | |
| 930 | local db = Instance.new("StringValue", v.Parent)
| |
| 931 | db.Name = "HitDeb" | |
| 932 | game.Debris:AddItem(db, 0.5) | |
| 933 | local humin = v.Parent.Humanoid | |
| 934 | if humin then | |
| 935 | local php = humin.Health | |
| 936 | dealDamage(humin.Parent, 20 * multiplier, 10000) | |
| 937 | humin.Sit = true | |
| 938 | humin.PlatformStand = true | |
| 939 | if php <= humin.Health and humin.MaxHealth ~= math.huge then | |
| 940 | print("equal")
| |
| 941 | humin:TakeDamage(20 * multiplier) | |
| 942 | end | |
| 943 | end | |
| 944 | end | |
| 945 | end | |
| 946 | end | |
| 947 | local sp = sphere(blast) | |
| 948 | blast.Material = "Neon" | |
| 949 | landsound:Play() | |
| 950 | addFx(blast, 0.02, "destroy", function() | |
| 951 | sp.Scale = sp.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 952 | blast.Transparency = blast.Transparency + 0.02 | |
| 953 | end) | |
| 954 | animPlaying = false | |
| 955 | deb = false | |
| 956 | end, 40) | |
| 957 | addMove("aerialsword", "r", 15, function()
| |
| 958 | deb = true | |
| 959 | animPlaying = true | |
| 960 | tweenTable = {}
| |
| 961 | altTweenTable = {}
| |
| 962 | canExecuteMoves = false | |
| 963 | idle = false | |
| 964 | run = false | |
| 965 | aerialcharge:Play() | |
| 966 | Tween(rw, cfn() * ang(mr(-90), 0, 0)) | |
| 967 | local bp, bgg | |
| 968 | local a = addToCList("aerialsword", "r")
| |
| 969 | local still = true | |
| 970 | bp = int("BodyPosition", tor)
| |
| 971 | bp.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 972 | bp.Position = tor.Position | |
| 973 | local sphr = cp(tube, "Really black", Vector3.new(8, 8, 8), true) | |
| 974 | sphr.Transparency = 1 | |
| 975 | sphr.Material = "Neon" | |
| 976 | local spho = sphere(sphr) | |
| 977 | spho.Name = "spho" | |
| 978 | spho.Scale = Vector3.new(0, 0, 0) | |
| 979 | sphr.CFrame = tor.CFrame | |
| 980 | addFx(sphr, 0.07, nil, function() | |
| 981 | spho.Scale = spho.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 982 | sphr.Transparency = sphr.Transparency - 0.07 | |
| 983 | end) | |
| 984 | Delay(6, function() | |
| 985 | if not a.up then | |
| 986 | a.up = true | |
| 987 | end | |
| 988 | end) | |
| 989 | repeat | |
| 990 | wait(0.3) | |
| 991 | local b = depleteMana(35) | |
| 992 | if b then | |
| 993 | swsound:Play() | |
| 994 | do | |
| 995 | local fx = sphr:clone() | |
| 996 | fx.Parent = tube | |
| 997 | fx.CFrame = sphr.CFrame | |
| 998 | addFx(fx, 0.07, "destroy", function() | |
| 999 | fx.spho.Scale = fx.spho.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1000 | fx.Transparency = fx.Transparency + 0.07 | |
| 1001 | end) | |
| 1002 | local sw = int("Part")
| |
| 1003 | game.Debris:AddItem(sw, 6) | |
| 1004 | sw.CanCollide = false | |
| 1005 | sw.Anchored = false | |
| 1006 | sw.BrickColor = BrickColor.new("Really black")
| |
| 1007 | sw.Material = "Neon" | |
| 1008 | sw.Size = Vector3.new(1, 1, 2) | |
| 1009 | sw.CFrame = CFrame.new(righthandle.CFrame.p, Vector3.new(m.Hit.p.X, m.Hit.p.Y, m.Hit.p.Z)) | |
| 1010 | sw.Parent = tube | |
| 1011 | sw.Transparency = 1 | |
| 1012 | addFx(sw, 0.1, nil, function() | |
| 1013 | sw.Transparency = sw.Transparency - 0.1 | |
| 1014 | end) | |
| 1015 | local spm = int("SpecialMesh", sw)
| |
| 1016 | spm.MeshType = "FileMesh" | |
| 1017 | spm.MeshId = rbx .. lib.yato | |
| 1018 | spm.Scale = Vector3.new(0.05, 0.05, 0.05) | |
| 1019 | local vel = int("BodyVelocity", sw)
| |
| 1020 | vel.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1021 | vel.Velocity = sw.CFrame.lookVector * 152 | |
| 1022 | sw.CFrame = sw.CFrame * ang(0, mr(180), 0) | |
| 1023 | sw.Touched:connect(function(p) | |
| 1024 | if p:IsDescendantOf(ch) == false then | |
| 1025 | sw.Anchored = true | |
| 1026 | do | |
| 1027 | local mgp = cp(tube, "White", Vector3.new(1, 1, 1), true, false) | |
| 1028 | mgp.CFrame = sw.CFrame | |
| 1029 | mgp.Transparency = 1 | |
| 1030 | game.Debris:AddItem(mgp, 2) | |
| 1031 | ssp = swexp:clone() | |
| 1032 | ssp.Parent = mgp | |
| 1033 | ssp.Volume = 2 | |
| 1034 | ssp:Play() | |
| 1035 | local blast = cp(tube, "Really black", Vector3.new(8, 8, 8), true) | |
| 1036 | blast.CFrame = sw.CFrame | |
| 1037 | local sp = sphere(blast) | |
| 1038 | addFx(sw, 0.05, "destroy", function() | |
| 1039 | sw.Transparency = sw.Transparency + 0.05 | |
| 1040 | spm.Scale = spm.Scale + Vector3.new(0.01, 0.01, 0.01) | |
| 1041 | end) | |
| 1042 | addFx(blast, 0.07, "destroy", function() | |
| 1043 | blast.Transparency = blast.Transparency + 0.07 | |
| 1044 | sp.Scale = sp.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1045 | end) | |
| 1046 | local region = CreateRegion3FromLocAndSize(blast.Position, blast.Size * 2) | |
| 1047 | local people = {}
| |
| 1048 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 100)) do
| |
| 1049 | if v and v.Parent and v.className == "Part" and v.Parent:findFirstChild("Humanoid") then
| |
| 1050 | local can = false | |
| 1051 | if not v.Parent:findFirstChild("HitDeb") then
| |
| 1052 | can = true | |
| 1053 | end | |
| 1054 | if can == true then | |
| 1055 | local db = Instance.new("StringValue", v.Parent)
| |
| 1056 | db.Name = "HitDeb" | |
| 1057 | game.Debris:AddItem(db, 0.2) | |
| 1058 | local humin = v.Parent.Humanoid | |
| 1059 | if humin then | |
| 1060 | local php = humin.Health | |
| 1061 | dealDamage(humin.Parent, 20 + math.random(50000), 50000) | |
| 1062 | humin.Sit = true | |
| 1063 | if php <= humin.Health and humin.MaxHealth ~= math.huge then | |
| 1064 | print("equal")
| |
| 1065 | humin:TakeDamage(20000) | |
| 1066 | end | |
| 1067 | end | |
| 1068 | end | |
| 1069 | end | |
| 1070 | end | |
| 1071 | end | |
| 1072 | end | |
| 1073 | end) | |
| 1074 | end | |
| 1075 | else | |
| 1076 | a.up = true | |
| 1077 | end | |
| 1078 | until a.up == true | |
| 1079 | addFx(sphr, 0.07, "destroy", function() | |
| 1080 | sphr.Transparency = sphr.Transparency + 0.07 | |
| 1081 | spho.Scale = spho.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1082 | end) | |
| 1083 | still = false | |
| 1084 | spawn(function() | |
| 1085 | wait(0.3) | |
| 1086 | canExecuteMoves = true | |
| 1087 | end) | |
| 1088 | bp:Destroy() | |
| 1089 | tor.Anchored = false | |
| 1090 | deb = false | |
| 1091 | animPlaying = false | |
| 1092 | reset() | |
| 1093 | end, 200) | |
| 1094 | addMove("basic", "mb1", 0.1, function()
| |
| 1095 | tweenTable = {}
| |
| 1096 | animPlaying = true | |
| 1097 | deb = true | |
| 1098 | canRunLeg = true | |
| 1099 | tor.CFrame = CFrame.new(tor.Position, Vector3.new(mouse.Hit.p.X, tor.Position.Y, mouse.Hit.p.Z)) | |
| 1100 | bg = true | |
| 1101 | idle = false | |
| 1102 | basicsound:Play() | |
| 1103 | if basicswitch == false then | |
| 1104 | Tween(rw, cfn() * ang(mr(-100), mr(45), 0), 0.2) | |
| 1105 | Tween(rj, cfn() * ang(0, mr(-45), 0), 0.2) | |
| 1106 | else | |
| 1107 | Tween(lw, cfn() * ang(mr(-100), mr(-45), 0), 0.2) | |
| 1108 | Tween(rj, cfn() * ang(0, mr(45), 0), 0.2) | |
| 1109 | end | |
| 1110 | wait(0.06) | |
| 1111 | local bullet = cp(tube, "Really black", Vector3.new(1, 1, 1), false, false) | |
| 1112 | bullet.Transparency = 1 | |
| 1113 | if basicswitch == false then | |
| 1114 | bullet.CFrame = righthandle.CFrame | |
| 1115 | bullet.CFrame = CFrame.new(righthandle.CFrame.p, Vector3.new(m.Hit.p.X, m.Hit.p.Y, m.Hit.p.Z)) | |
| 1116 | basicswitch = true | |
| 1117 | else | |
| 1118 | bullet.CFrame = lefthandle.CFrame | |
| 1119 | bullet.CFrame = CFrame.new(lefthandle.CFrame.p, Vector3.new(m.Hit.p.X, m.Hit.p.Y, m.Hit.p.Z)) | |
| 1120 | basicswitch = false | |
| 1121 | end | |
| 1122 | local bv = int("BodyVelocity", bullet)
| |
| 1123 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1124 | bv.Velocity = bullet.CFrame.lookVector * 150 | |
| 1125 | local bulletfx = cp(tube, "Really black", Vector3.new(1, 1, 1), true, false) | |
| 1126 | bulletfx.CFrame = bullet.CFrame | |
| 1127 | bulletfx.Material = "Neon" | |
| 1128 | sphere(bulletfx) | |
| 1129 | local angle = 0 | |
| 1130 | local lastpoint = bulletfx.CFrame | |
| 1131 | addCoolDown("basic")
| |
| 1132 | addMover(bullet, 0.8, function() | |
| 1133 | angle = angle + 1 | |
| 1134 | local angles = CFrame.Angles(math.rad(angle), mr(angle), 0) | |
| 1135 | bulletfx.CFrame = bullet.CFrame | |
| 1136 | bulletfx.CFrame = bulletfx.CFrame * angles | |
| 1137 | if 1 < (lastpoint.p - bulletfx.CFrame.p).magnitude then | |
| 1138 | do | |
| 1139 | local line = drawLine(lastpoint.p, bulletfx.CFrame.p, "Really black", angles) | |
| 1140 | addFx(line, 0.05, "destroy", function() | |
| 1141 | line.blok.Scale = line.blok.Scale + Vector3.new(0.05, 0.05, 0) | |
| 1142 | line.Transparency = line.Transparency + 0.05 | |
| 1143 | end) | |
| 1144 | lastpoint = bulletfx.CFrame | |
| 1145 | end | |
| 1146 | end | |
| 1147 | end) | |
| 1148 | bullet.Touched:connect(function(p) | |
| 1149 | if not p:isDescendantOf(ch) then | |
| 1150 | do | |
| 1151 | local thing | |
| 1152 | local region = CreateRegion3FromLocAndSize(bullet.Position, bullet.Size * 2) | |
| 1153 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 50)) do
| |
| 1154 | if v.Parent and v.Parent:findFirstChild("Humanoid") then
| |
| 1155 | thing = v | |
| 1156 | break | |
| 1157 | end | |
| 1158 | end | |
| 1159 | local explosound = getSound(142070128) | |
| 1160 | explosound.Volume = 0.8 | |
| 1161 | explosound.Pitch = 1.2 | |
| 1162 | explosound.Parent = p | |
| 1163 | explosound:Play() | |
| 1164 | local position = bullet.CFrame | |
| 1165 | if thing and thing.Parent then | |
| 1166 | dealDamage(thing.Parent, 20000, 50000) | |
| 1167 | end | |
| 1168 | local blast = cp(tube, "Really black", Vector3.new(2, 2, 2), true, false) | |
| 1169 | blast.Material = "Neon" | |
| 1170 | local spm2 = sphere(blast) | |
| 1171 | blast.CFrame = CFrame.new(position.X, position.Y, position.Z) | |
| 1172 | addFx(blast, 0.05, "destroy", function() | |
| 1173 | spm2.Scale = spm2.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1174 | blast.Transparency = blast.Transparency + 0.05 | |
| 1175 | end) | |
| 1176 | bullet:Destroy() | |
| 1177 | bulletfx:Destroy() | |
| 1178 | end | |
| 1179 | end | |
| 1180 | end) | |
| 1181 | game.Debris:AddItem(bullet, 2.5) | |
| 1182 | game.Debris:AddItem(bulletfx, 2.5) | |
| 1183 | wait(0.1) | |
| 1184 | idle = true | |
| 1185 | reset() | |
| 1186 | deb = false | |
| 1187 | animPlaying = false | |
| 1188 | bg = false | |
| 1189 | end, 20) | |
| 1190 | local dumbbox, dhand | |
| 1191 | local darknum = 1 | |
| 1192 | addMove("darkslash", "r", 2, function()
| |
| 1193 | local oldspeed = hum.WalkSpeed | |
| 1194 | hum.WalkSpeed = 0 | |
| 1195 | local meshd = "http://www.roblox.com/asset/?id=12171188" | |
| 1196 | tweenTable = {}
| |
| 1197 | altTweenTable = {}
| |
| 1198 | deb = true | |
| 1199 | animPlaying = true | |
| 1200 | canRunLeg = true | |
| 1201 | startsound2:Play() | |
| 1202 | local sp = cp(tube, "Really black", Vector3.new(10, 10, 10), false, false) | |
| 1203 | sp.CFrame = tor.CFrame | |
| 1204 | sp.Transparency = 0.5 | |
| 1205 | local sph = sphere(sp) | |
| 1206 | addFx(sp, 0.07, "destroy", function() | |
| 1207 | sph.Scale = sph.Scale - Vector3.new(0.05, 0.05, 0.05) | |
| 1208 | sp.Transparency = sp.Transparency + 0.035 | |
| 1209 | end) | |
| 1210 | spawn(function() | |
| 1211 | for i = 1, 10 do | |
| 1212 | wait() | |
| 1213 | do | |
| 1214 | local cool1 = cp(tube, "Really black", Vector3.new(1.5, 1.5, 1.5), true) | |
| 1215 | local ms1 = blo(cool1) | |
| 1216 | cool1.CFrame = righthandle.CFrame * ang(mr(math.random(90)), mr(math.random(90)), mr(math.random(90))) | |
| 1217 | addFx(cool1, 0.07, "destroy", function() | |
| 1218 | ms1.Scale = ms1.Scale + Vector3.new(0.08, 0.08, 0.08) | |
| 1219 | cool1.Transparency = cool1.Transparency + 0.07 | |
| 1220 | end) | |
| 1221 | end | |
| 1222 | end | |
| 1223 | end) | |
| 1224 | addCoolDown("darkslash")
| |
| 1225 | local allahsword = cp(tube, "White", Vector3.new(1, 1, 1)) | |
| 1226 | local critmultiplier = 2.4 | |
| 1227 | local spm = int("SpecialMesh", allahsword)
| |
| 1228 | spm.MeshType = "FileMesh" | |
| 1229 | spm.MeshId = meshd | |
| 1230 | allahsword.Transparency = 1 | |
| 1231 | tor.CFrame = CFrame.new(tor.Position, Vector3.new(mouse.Hit.p.X, tor.Position.Y, mouse.Hit.p.Z)) | |
| 1232 | local tv = Vector3.new(tor.CFrame.lookVector.X, 0, tor.CFrame.lookVector.Z) | |
| 1233 | local col = BrickColor.new("Really black").Color
| |
| 1234 | spm.TextureId = rbx .. "132155326" | |
| 1235 | spm.Name = "mesh" | |
| 1236 | spm.VertexColor = Vector3.new(0, 0, 0) | |
| 1237 | spm.Scale = Vector3.new(1, 1, 1) | |
| 1238 | addFx(allahsword, 0.05, nil, function() | |
| 1239 | allahsword.Transparency = allahsword.Transparency - 0.05 | |
| 1240 | end) | |
| 1241 | weld(ch["Right Arm"], allahsword, cfn(0, -4, -0.5) * ang(mr(110), 0, mr(180))) | |
| 1242 | Tween(rj, cfn() * ang(0, mr(-90), 0)) | |
| 1243 | Tween(rw, cfn(0.5, 0.5, 0.5) * ang(mr(-55), mr(-35), 0)) | |
| 1244 | Tween(lw, cfn(-0.5, 0.5, 0.5) * ang(mr(-55), mr(35), 0)) | |
| 1245 | Delay(0.08, function() | |
| 1246 | local tstvel = int("BodyVelocity", tor)
| |
| 1247 | tstvel.MaxForce = Vector3.new(math.huge, 0, math.huge) | |
| 1248 | tstvel.Velocity = tv * 35 | |
| 1249 | game.Debris:AddItem(tstvel, 0.24) | |
| 1250 | end) | |
| 1251 | wait(0.22) | |
| 1252 | local hitbox = cp(tube, "White", Vector3.new(2, 12, 2)) | |
| 1253 | hitbox.Transparency = 1 | |
| 1254 | hitbox.CFrame = allahsword.CFrame | |
| 1255 | dumbbox = hitbox | |
| 1256 | dumbhand = allahsword | |
| 1257 | swoosh:Play() | |
| 1258 | spawn(function() | |
| 1259 | for i = 1, 10 do | |
| 1260 | wait() | |
| 1261 | do | |
| 1262 | local trl = allahsword:clone() | |
| 1263 | trl.Parent = tube | |
| 1264 | trl.CFrame = allahsword.CFrame | |
| 1265 | addFx(trl, 0.07, "destroy", function() | |
| 1266 | trl.Transparency = trl.Transparency + 0.07 | |
| 1267 | end) | |
| 1268 | end | |
| 1269 | end | |
| 1270 | end) | |
| 1271 | addFx(allahsword, 0.05, "destroy", function() | |
| 1272 | allahsword.Transparency = allahsword.Transparency + 0.05 | |
| 1273 | spm.Scale = spm.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1274 | end) | |
| 1275 | hitbox.Touched:connect(function(v) | |
| 1276 | if v and v.Parent and v.Parent:findFirstChild("Humanoid") and not v:IsDescendantOf(ch) then
| |
| 1277 | local can = false | |
| 1278 | if not v.Parent:findFirstChild("HitDeb") then
| |
| 1279 | can = true | |
| 1280 | end | |
| 1281 | if can == true then | |
| 1282 | local sls = getSound(220834020) | |
| 1283 | sls.Pitch = 1 + math.random(3) / 10 | |
| 1284 | sls.Parent = v | |
| 1285 | sls:Play() | |
| 1286 | local db = Instance.new("StringValue", v.Parent)
| |
| 1287 | db.Name = "HitDeb" | |
| 1288 | game.Debris:AddItem(db, 0.5) | |
| 1289 | dealDamage(v.Parent, 20 + math.random(20000), 20000, critmultiplier) | |
| 1290 | end | |
| 1291 | end | |
| 1292 | end) | |
| 1293 | Tween(rj, cfn(0, 0, 0) * ang(mr(0), mr(90), 0)) | |
| 1294 | Tween(rw, cfn(0.5, 0.8, 0) * ang(mr(-80), mr(-35), 0)) | |
| 1295 | Tween(lw, cfn(-0.5, 0.8, 0) * ang(mr(-90), mr(35), 0)) | |
| 1296 | wait(0.2) | |
| 1297 | hitbox:Destroy() | |
| 1298 | hum.WalkSpeed = oldspeed | |
| 1299 | reset() | |
| 1300 | animPlaying = false | |
| 1301 | canRunLeg = false | |
| 1302 | deb = false | |
| 1303 | end, 80) | |
| 1304 | addMove("darkspikes", "t", 0.4, function()
| |
| 1305 | local lv = tor.CFrame | |
| 1306 | tweenTable = {}
| |
| 1307 | animPlaying = true | |
| 1308 | deb = true | |
| 1309 | canRunLeg = true | |
| 1310 | magictone1:Play() | |
| 1311 | Tween(rj, cfn() * ang(0, mr(25), 0), 0.2) | |
| 1312 | Tween(rw, cfn() * ang(mr(25), mr(-20), 0), 0.2) | |
| 1313 | wait(0.2) | |
| 1314 | Tween(rj, cfn() * ang(0, mr(-55), 0), 0.15) | |
| 1315 | Tween(rw, cfn() * ang(mr(-115), mr(45), 0), 0.15) | |
| 1316 | Tween(neck, cfn() * ang(0, mr(55), 0)) | |
| 1317 | local spot = 4 | |
| 1318 | for i = 1, 10 do | |
| 1319 | wait(0.1) | |
| 1320 | do | |
| 1321 | local v = lv.lookVector * spot | |
| 1322 | spot = spot + 14 | |
| 1323 | local spike = cp(tube, "Really black", Vector3.new(10, 1, 10), true, false) | |
| 1324 | spike.CFrame = lv * CFrame.new(0, 0, -spot) | |
| 1325 | local dam = cp(tube, "Really black", Vector3.new(7, 10, 7), true, false) | |
| 1326 | local dml = cyl(dam) | |
| 1327 | local angls = CFrame.Angles(spike.CFrame:toEulerAnglesXYZ()) | |
| 1328 | local bhit, pos = FindGround(cn(spike.CFrame.p), ch) | |
| 1329 | if bhit then | |
| 1330 | spike.CFrame = pos * CFrame.new(0, 0, 0) | |
| 1331 | do | |
| 1332 | local mgp = cp(tube, "White", Vector3.new(1, 1, 1), true, false) | |
| 1333 | mgp.Transparency = 1 | |
| 1334 | mgp.CFrame = spike.CFrame | |
| 1335 | game.Debris:AddItem(mgp, 2) | |
| 1336 | local sn = spexp:clone() | |
| 1337 | sn.Parent = mgp | |
| 1338 | sn.Volume = 2 | |
| 1339 | sn:Play() | |
| 1340 | dam.CFrame = spike.CFrame * CFrame.new(0, 5, 0) | |
| 1341 | local blast = dam | |
| 1342 | local region = CreateRegion3FromLocAndSize(blast.Position, blast.Size * 2) | |
| 1343 | local people = {}
| |
| 1344 | for _, v in pairs(workspace:findPartsInRegion3WithIgnoreList(region, {ch}, 100)) do
| |
| 1345 | if v and v.Parent and v.className == "Part" and v.Parent:findFirstChild("Humanoid") then
| |
| 1346 | local can = false | |
| 1347 | if not v.Parent:findFirstChild("HitDeb") then
| |
| 1348 | can = true | |
| 1349 | end | |
| 1350 | if can == true then | |
| 1351 | local db = Instance.new("StringValue", v.Parent)
| |
| 1352 | db.Name = "HitDeb" | |
| 1353 | game.Debris:AddItem(db, 0.2) | |
| 1354 | local humin = v.Parent.Humanoid | |
| 1355 | if humin then | |
| 1356 | local php = humin.Health | |
| 1357 | dealDamage(humin.Parent, 10 + math.random(30000), 20000) | |
| 1358 | local testvel = int("BodyVelocity", v)
| |
| 1359 | testvel.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1360 | testvel.Velocity = lv.lookVector * 100 | |
| 1361 | game.Debris:addItem(testvel, 1) | |
| 1362 | humin.Sit = true | |
| 1363 | if php <= humin.Health and humin.MaxHealth ~= math.huge then | |
| 1364 | print("equal")
| |
| 1365 | humin:TakeDamage(20000) | |
| 1366 | end | |
| 1367 | end | |
| 1368 | end | |
| 1369 | end | |
| 1370 | end | |
| 1371 | local cl = cyl(spike) | |
| 1372 | addFx(spike, 0.05, "destroy", function() | |
| 1373 | cl.Scale = cl.Scale - Vector3.new(0.05, 0, 0.05) | |
| 1374 | spike.Transparency = spike.Transparency + 0.05 | |
| 1375 | end) | |
| 1376 | addFx(dml, 0.05, "destroy", function() | |
| 1377 | dml.Scale = dml.Scale - Vector3.new(0.05, -0.05, 0.05) | |
| 1378 | dam.Transparency = dam.Transparency + 0.05 | |
| 1379 | end) | |
| 1380 | end | |
| 1381 | else | |
| 1382 | spike:Destroy() | |
| 1383 | end | |
| 1384 | end | |
| 1385 | end | |
| 1386 | wait(0.7) | |
| 1387 | deb = false | |
| 1388 | canRunLeg = false | |
| 1389 | animPlaying = false | |
| 1390 | reset() | |
| 1391 | end, 30) | |
| 1392 | mouse.Button1Down:connect(function() | |
| 1393 | executeMove("basic")
| |
| 1394 | end) | |
| 1395 | local vt | |
| 1396 | local dodgecool = false | |
| 1397 | function iPart(tab) | |
| 1398 | local v = Instance.new(tab.type or "Part") | |
| 1399 | if tab.type ~= "CornerWedgePart" then | |
| 1400 | v.formFactor = "Custom" | |
| 1401 | end | |
| 1402 | v.CanCollide = false | |
| 1403 | v.TopSurface = 0 | |
| 1404 | v.BottomSurface = 0 | |
| 1405 | v.Size = v3(tab[2], tab[3], tab[4]) | |
| 1406 | if tab.co then | |
| 1407 | v.BrickColor = bn(tab.co) | |
| 1408 | end | |
| 1409 | if tab.tr then | |
| 1410 | v.Transparency = tab.tr | |
| 1411 | end | |
| 1412 | if tab.rf then | |
| 1413 | v.Reflectance = tab.rf | |
| 1414 | end | |
| 1415 | if tab.cf then | |
| 1416 | v.CFrame = tab.cf | |
| 1417 | end | |
| 1418 | if tab.an then | |
| 1419 | v.Anchored = tab.an | |
| 1420 | end | |
| 1421 | v.Parent = tab[1] | |
| 1422 | LastMade = v | |
| 1423 | return v | |
| 1424 | end | |
| 1425 | function iNew(tab) | |
| 1426 | local v = Instance.new(tab[1]) | |
| 1427 | for Ind, Val in pairs(tab) do | |
| 1428 | if Ind ~= 1 and Ind ~= 2 then | |
| 1429 | v[Ind] = Val | |
| 1430 | end | |
| 1431 | end | |
| 1432 | v.Parent = tab[2] == 0 and LastMade or tab[2] | |
| 1433 | LastMade = v | |
| 1434 | return v | |
| 1435 | end | |
| 1436 | local ppart = iPart({
| |
| 1437 | nil, | |
| 1438 | 0.2, | |
| 1439 | 0.2, | |
| 1440 | 0.2 | |
| 1441 | }) | |
| 1442 | ppart.Material = "SmoothPlastic" | |
| 1443 | ppart.TopSurface = "SmoothNoOutlines" | |
| 1444 | ppart.BottomSurface = "SmoothNoOutlines" | |
| 1445 | ppart.RightSurface = "SmoothNoOutlines" | |
| 1446 | ppart.LeftSurface = "SmoothNoOutlines" | |
| 1447 | ppart.Transparency = 0 | |
| 1448 | ppart.Anchored = true | |
| 1449 | local CFrameFromTopBack = function(at, top, back) | |
| 1450 | local right = top:Cross(back) | |
| 1451 | return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z) | |
| 1452 | end | |
| 1453 | function Triangle(a, b, c) | |
| 1454 | local edg1 = (c - a):Dot((b - a).unit) | |
| 1455 | local edg2 = (a - b):Dot((c - b).unit) | |
| 1456 | local edg3 = (b - c):Dot((a - c).unit) | |
| 1457 | if edg1 <= (b - a).magnitude and edg1 >= 0 then | |
| 1458 | a, b = a, b | |
| 1459 | elseif edg2 <= (c - b).magnitude and edg2 >= 0 then | |
| 1460 | a, b, c = b, c, a | |
| 1461 | elseif edg3 <= (a - c).magnitude and edg3 >= 0 then | |
| 1462 | a, b, c = c, a, b | |
| 1463 | else | |
| 1464 | print("unreachable")
| |
| 1465 | end | |
| 1466 | local len1 = (c - a):Dot((b - a).unit) | |
| 1467 | local len2 = (b - a).magnitude - len1 | |
| 1468 | local width = (a + (b - a).unit * len1 - c).magnitude | |
| 1469 | local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, -(b - a).unit) | |
| 1470 | local list = {}
| |
| 1471 | if len1 > 0.01 then | |
| 1472 | do | |
| 1473 | local w1 = iNew({
| |
| 1474 | "WedgePart", | |
| 1475 | Pack, | |
| 1476 | FormFactor = "Custom", | |
| 1477 | BrickColor = ppart.BrickColor, | |
| 1478 | Transparency = ppart.Transparency, | |
| 1479 | Reflectance = ppart.Reflectance, | |
| 1480 | Material = ppart.Material, | |
| 1481 | CanCollide = ppart.CanCollide | |
| 1482 | }) | |
| 1483 | w1.Parent = tube | |
| 1484 | local sz = v3(0.2, width, len1) | |
| 1485 | w1.Size = sz | |
| 1486 | local sp = iNew({
| |
| 1487 | "SpecialMesh", | |
| 1488 | w1, | |
| 1489 | MeshType = "Wedge", | |
| 1490 | Scale = v3(0, 1, 1) * sz / w1.Size | |
| 1491 | }) | |
| 1492 | w1:BreakJoints() | |
| 1493 | w1.Anchored = true | |
| 1494 | w1.Transparency = 0.7 | |
| 1495 | Spawn(function() | |
| 1496 | for i = 0, 1, 0.1 do | |
| 1497 | wait() | |
| 1498 | w1.Transparency = w1.Transparency + 0.03 | |
| 1499 | end | |
| 1500 | end) | |
| 1501 | w1.CFrame = maincf * ca2(math.pi, 0, math.pi / 2) * cn(0, width / 2, len1 / 2) | |
| 1502 | table.insert(list, w1) | |
| 1503 | end | |
| 1504 | end | |
| 1505 | if len2 > 0.01 then | |
| 1506 | do | |
| 1507 | local w2 = iNew({
| |
| 1508 | "WedgePart", | |
| 1509 | Pack, | |
| 1510 | FormFactor = "Custom", | |
| 1511 | BrickColor = ppart.BrickColor, | |
| 1512 | Transparency = ppart.Transparency, | |
| 1513 | Reflectance = ppart.Reflectance, | |
| 1514 | Material = ppart.Material, | |
| 1515 | CanCollide = ppart.CanCollide | |
| 1516 | }) | |
| 1517 | local sz = v3(0.2, width, len2) | |
| 1518 | w2.Size = sz | |
| 1519 | local sp = iNew({
| |
| 1520 | "SpecialMesh", | |
| 1521 | w2, | |
| 1522 | MeshType = "Wedge", | |
| 1523 | Scale = v3(0, 1, 1) * sz / w2.Size | |
| 1524 | }) | |
| 1525 | w2:BreakJoints() | |
| 1526 | w2.Anchored = true | |
| 1527 | w2.Transparency = 0.7 | |
| 1528 | Spawn(function() | |
| 1529 | for i = 0, 1, 0.1 do | |
| 1530 | wait() | |
| 1531 | w2.Transparency = w2.Transparency + 0.03 | |
| 1532 | end | |
| 1533 | end) | |
| 1534 | w2.CFrame = maincf * ca2(math.pi, math.pi, -math.pi / 2) * cn(0, width / 2, -len1 - len2 / 2) | |
| 1535 | w2.Parent = tube | |
| 1536 | table.insert(list, w2) | |
| 1537 | end | |
| 1538 | end | |
| 1539 | return unpack(list) | |
| 1540 | end | |
| 1541 | bclf = ch["Right Arm"].CFrame | |
| 1542 | scfr = bclf | |
| 1543 | ca = CFrame.Angles | |
| 1544 | cn = CFrame.new | |
| 1545 | v3 = Vector3.new | |
| 1546 | function Raycast(Pos, Dir, Ign) | |
| 1547 | return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit * 300), Ign) | |
| 1548 | end | |
| 1549 | function FindGround(cf, ig) | |
| 1550 | local ax, ay, az = cf:toEulerAnglesXYZ() | |
| 1551 | local bhit, bpos = Raycast(cf.p, cf.p - (cf.p + v3(0, 200, 0)), ig) | |
| 1552 | if bhit and bpos then | |
| 1553 | return bhit, cn(bpos) * ca(ax, ay, az) | |
| 1554 | end | |
| 1555 | end | |
| 1556 | currentkey = "" | |
| 1557 | mouse.KeyDown:connect(function(key) | |
| 1558 | if key == "q" and currentkey == "32" and Vector3.new(0, tor.Velocity.Y, 0).magnitude > 2 then | |
| 1559 | executeMove("downslam")
| |
| 1560 | elseif key == "r" and currentkey == "32" and Vector3.new(0, tor.Velocity.Y, 0).magnitude > 2 then | |
| 1561 | executeMove("aerialsword")
| |
| 1562 | end | |
| 1563 | if string.byte(key) == 32 and canExecuteMoves == true then | |
| 1564 | combostring = combostring .. "." | |
| 1565 | if combostring:match("..") and dodgecool == false then
| |
| 1566 | currentkey = tostring(string.byte(key)) | |
| 1567 | animPlaying = true | |
| 1568 | altTween(rj, cfn() * ang(mr(-15), 0, 0)) | |
| 1569 | altTween(rw, cfn() * ang(mr(10), 0, mr(-15))) | |
| 1570 | altTween(lw, cfn() * ang(mr(10), 0, mr(15))) | |
| 1571 | dodgecool = true | |
| 1572 | combostring = "" | |
| 1573 | local rv = tor.CFrame.upVector | |
| 1574 | local bv = int("BodyVelocity", tor)
| |
| 1575 | dodgesound:Play() | |
| 1576 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1577 | bv.Velocity = rv * 150 | |
| 1578 | spawn(function() | |
| 1579 | for i = 1, 14 do | |
| 1580 | wait() | |
| 1581 | do | |
| 1582 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 1583 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 1584 | local b = blo(cfx) | |
| 1585 | addFx(cfx, 0.05, "destroy", function() | |
| 1586 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 1587 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1588 | end) | |
| 1589 | end | |
| 1590 | end | |
| 1591 | end) | |
| 1592 | wait() | |
| 1593 | bv:Destroy() | |
| 1594 | wait(0.4) | |
| 1595 | reset() | |
| 1596 | dodgecool = false | |
| 1597 | wait(0.4) | |
| 1598 | if currentkey == "32" then | |
| 1599 | currentkey = "" | |
| 1600 | end | |
| 1601 | if not deb then | |
| 1602 | animPlaying = false | |
| 1603 | end | |
| 1604 | end | |
| 1605 | end | |
| 1606 | if key == "d" and canExecuteMoves == true then | |
| 1607 | combostring = combostring .. "d" | |
| 1608 | if combostring:match("dd") and dodgecool == false then
| |
| 1609 | dodgecool = true | |
| 1610 | combostring = "" | |
| 1611 | local rv = cam.CFrame.rightVector | |
| 1612 | local bv = int("BodyVelocity", tor)
| |
| 1613 | dodgesound:Play() | |
| 1614 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1615 | bv.Velocity = rv * 150 | |
| 1616 | spawn(function() | |
| 1617 | for i = 1, 16 do | |
| 1618 | wait() | |
| 1619 | do | |
| 1620 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 1621 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 1622 | local b = blo(cfx) | |
| 1623 | addFx(cfx, 0.05, "destroy", function() | |
| 1624 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 1625 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1626 | end) | |
| 1627 | end | |
| 1628 | end | |
| 1629 | end) | |
| 1630 | wait() | |
| 1631 | bv:Destroy() | |
| 1632 | wait(0.4) | |
| 1633 | dodgecool = false | |
| 1634 | end | |
| 1635 | elseif key == "w" and canExecuteMoves == true then | |
| 1636 | combostring = combostring .. "w" | |
| 1637 | if combostring:match("ww") and dodgecool == false then
| |
| 1638 | dodgecool = true | |
| 1639 | combostring = "" | |
| 1640 | local rv = cam.CFrame:vectorToWorldSpace(Vector3.new(0, 0, -1)) | |
| 1641 | local bv = int("BodyVelocity", tor)
| |
| 1642 | dodgesound:Play() | |
| 1643 | bv.MaxForce = Vector3.new(math.huge, 0, math.huge) | |
| 1644 | bv.Velocity = rv * 150 | |
| 1645 | spawn(function() | |
| 1646 | for i = 1, 16 do | |
| 1647 | wait() | |
| 1648 | do | |
| 1649 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 1650 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 1651 | local b = blo(cfx) | |
| 1652 | addFx(cfx, 0.05, "destroy", function() | |
| 1653 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 1654 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1655 | end) | |
| 1656 | end | |
| 1657 | end | |
| 1658 | end) | |
| 1659 | wait() | |
| 1660 | bv:Destroy() | |
| 1661 | wait(0.4) | |
| 1662 | dodgecool = false | |
| 1663 | end | |
| 1664 | elseif key == "s" and canExecuteMoves == true then | |
| 1665 | combostring = combostring .. "s" | |
| 1666 | if combostring:match("ss") and dodgecool == false then
| |
| 1667 | dodgecool = true | |
| 1668 | combostring = "" | |
| 1669 | local rv = cam.CFrame:vectorToWorldSpace(Vector3.new(0, 0, 1)) | |
| 1670 | local bv = int("BodyVelocity", tor)
| |
| 1671 | dodgesound:Play() | |
| 1672 | bv.MaxForce = Vector3.new(math.huge, 0, math.huge) | |
| 1673 | bv.Velocity = rv * 150 | |
| 1674 | spawn(function() | |
| 1675 | for i = 1, 16 do | |
| 1676 | wait() | |
| 1677 | do | |
| 1678 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 1679 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 1680 | local b = blo(cfx) | |
| 1681 | addFx(cfx, 0.05, "destroy", function() | |
| 1682 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 1683 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1684 | end) | |
| 1685 | end | |
| 1686 | end | |
| 1687 | end) | |
| 1688 | wait() | |
| 1689 | bv:Destroy() | |
| 1690 | wait(0.4) | |
| 1691 | dodgecool = false | |
| 1692 | end | |
| 1693 | elseif key == "a" and canExecuteMoves == true then | |
| 1694 | combostring = combostring .. "a" | |
| 1695 | if combostring:match("aa") and dodgecool == false then
| |
| 1696 | dodgecool = true | |
| 1697 | combostring = "" | |
| 1698 | local rv = cam.CFrame.rightVector | |
| 1699 | local bv = int("BodyVelocity", tor)
| |
| 1700 | dodgesound:Play() | |
| 1701 | bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) | |
| 1702 | bv.Velocity = rv * -150 | |
| 1703 | spawn(function() | |
| 1704 | for i = 1, 16 do | |
| 1705 | wait() | |
| 1706 | do | |
| 1707 | local cfx = cp(tube, "Really black", Vector3.new(6, 6, 6), true, false) | |
| 1708 | cfx.CFrame = tor.CFrame * CFrame.Angles(math.rad(math.random(90)), math.rad(math.random(90)), 0) | |
| 1709 | local b = blo(cfx) | |
| 1710 | addFx(cfx, 0.05, "destroy", function() | |
| 1711 | cfx.Transparency = cfx.Transparency + 0.05 | |
| 1712 | b.Scale = b.Scale + Vector3.new(0.1, 0.1, 0.1) | |
| 1713 | end) | |
| 1714 | end | |
| 1715 | end | |
| 1716 | end) | |
| 1717 | wait() | |
| 1718 | bv:Destroy() | |
| 1719 | wait(0.4) | |
| 1720 | dodgecool = false | |
| 1721 | end | |
| 1722 | end | |
| 1723 | if key == "f" then | |
| 1724 | if deb == false then | |
| 1725 | executeMove("block_normal")
| |
| 1726 | end | |
| 1727 | elseif key == "e" then | |
| 1728 | if deb == false then | |
| 1729 | executeMove("beam")
| |
| 1730 | end | |
| 1731 | elseif key == "t" then | |
| 1732 | if deb == false then | |
| 1733 | executeMove("darkspikes")
| |
| 1734 | end | |
| 1735 | elseif key == "g" then | |
| 1736 | if deb == false then | |
| 1737 | executeMove("curse")
| |
| 1738 | end | |
| 1739 | elseif key == "r" and deb == false and Vector3.new(0, tor.Velocity.Y, 0).magnitude < 2 and currentkey ~= "32" then | |
| 1740 | executeMove("darkslash")
| |
| 1741 | end | |
| 1742 | end) | |
| 1743 | mouse.KeyUp:connect(function(key) | |
| 1744 | for _, v in pairs(connectlist) do | |
| 1745 | if v.up == false and v.key == key then | |
| 1746 | v.up = true | |
| 1747 | table.remove(connectlist, _) | |
| 1748 | end | |
| 1749 | end | |
| 1750 | end) | |
| 1751 | mouse.Button1Up:connect(function() | |
| 1752 | for _, v in pairs(connectlist) do | |
| 1753 | if v.up == false then | |
| 1754 | v.up = true | |
| 1755 | table.remove(connectlist, _) | |
| 1756 | end | |
| 1757 | end | |
| 1758 | end) | |
| 1759 | local oldsize = mana / maxmana | |
| 1760 | local oldchain = 0 | |
| 1761 | spawn(function() | |
| 1762 | while wait(1) do | |
| 1763 | if deb == false then | |
| 1764 | if chain == oldchain then | |
| 1765 | chain = 0 | |
| 1766 | end | |
| 1767 | oldchain = chain | |
| 1768 | end | |
| 1769 | end | |
| 1770 | end) | |
| 1771 | game:service("RunService").Stepped:connect(function()
| |
| 1772 | chaintext.Text = tostring(chain) .. "x" | |
| 1773 | manabartext.Text = tostring(mana) .. "/" .. tostring(maxmana) | |
| 1774 | if mana / maxmana ~= oldsize then | |
| 1775 | manabar:TweenSize(UDim2.new(mana / maxmana, 0, 1, 0), "Out", "Sine", 1, true) | |
| 1776 | oldsize = mana / maxmana | |
| 1777 | end | |
| 1778 | if dumbbox then | |
| 1779 | dumbbox.CFrame = dumbhand.CFrame * cfn(0, 0, 4) * ang(mr(-90), 0, 0) | |
| 1780 | end | |
| 1781 | for _, v in pairs(textTable) do | |
| 1782 | if 1 > v.TextLabel.TextTransparency then | |
| 1783 | v.TextLabel.TextTransparency = v.TextLabel.TextTransparency + 0.02 | |
| 1784 | v.TextLabel.TextStrokeTransparency = v.TextLabel.TextStrokeTransparency + 0.02 | |
| 1785 | v.StudsOffset = v.StudsOffset + Vector3.new(0, 0.02, 0) | |
| 1786 | else | |
| 1787 | v:Destroy() | |
| 1788 | table.remove(textTable, _) | |
| 1789 | end | |
| 1790 | end | |
| 1791 | if Vector3.new(tor.Velocity.X, 0, tor.Velocity.Z).magnitude > 2 then | |
| 1792 | run = true | |
| 1793 | elseif Vector3.new(tor.Velocity.X, 0, tor.Velocity.Z).magnitude < 2 then | |
| 1794 | run = false | |
| 1795 | idle = true | |
| 1796 | end | |
| 1797 | if Vector3.new(tor.Velocity.X, 0, tor.Velocity.Z).magnitude > 2 and canRunLeg == true then | |
| 1798 | runLeg = true | |
| 1799 | elseif Vector3.new(tor.Velocity.X, 0, tor.Velocity.Z).magnitude < 2 and canRunLeg == true then | |
| 1800 | runLeg = false | |
| 1801 | resetLegs() | |
| 1802 | end | |
| 1803 | for _, v in pairs(movers) do | |
| 1804 | if v.mover and v.mover:IsDescendantOf(tube) then | |
| 1805 | v.func() | |
| 1806 | else | |
| 1807 | table.remove(movers, _) | |
| 1808 | end | |
| 1809 | end | |
| 1810 | if bg and 0 < hum.Health then | |
| 1811 | tor.CFrame = CFrame.new(tor.Position, Vector3.new(mouse.Hit.p.X, tor.Position.Y, mouse.Hit.p.Z)) | |
| 1812 | end | |
| 1813 | for _, v in pairs(fx) do | |
| 1814 | if 1 > v.stepval then | |
| 1815 | v.func() | |
| 1816 | v.stepval = v.stepval + v.int | |
| 1817 | elseif v.final then | |
| 1818 | if v.final == "destroy" then | |
| 1819 | v.item:Destroy() | |
| 1820 | table.remove(fx, _) | |
| 1821 | end | |
| 1822 | else | |
| 1823 | table.remove(fx, _) | |
| 1824 | end | |
| 1825 | end | |
| 1826 | for _, v in pairs(tweenTable) do | |
| 1827 | if v.Weld.C1 == v.Stop then | |
| 1828 | table.remove(tweenTable, _) | |
| 1829 | elseif v.th < 1 - v.Step then | |
| 1830 | v.th = v.th + v.Step | |
| 1831 | i = v.th | |
| 1832 | v.Weld.C1 = v.Weld.C1:lerp(CFrame.new(v.Start.p.X * (1 - i) + v.Stop.p.X * i, v.Start.p.Y * (1 - i) + v.Stop.p.Y * i, v.Start.p.Z * (1 - i) + v.Stop.p.Z * i) * CFrame.fromEulerAnglesXYZ(v.X1 * (1 - i) + v.X2 * i, v.Y1 * (1 - i) + v.Y2 * i, v.Z1 * (1 - i) + v.Z2 * i), 1) | |
| 1833 | else | |
| 1834 | v.Weld.C1 = v.Stop | |
| 1835 | end | |
| 1836 | end | |
| 1837 | for _, v in pairs(altTweenTable) do | |
| 1838 | if v.Weld.C1 == v.Stop then | |
| 1839 | table.remove(tweenTable, _) | |
| 1840 | elseif v.th < 1 - v.Step then | |
| 1841 | v.th = v.th + v.Step | |
| 1842 | i = v.th | |
| 1843 | v.Weld.C1 = v.Weld.C1:lerp(CFrame.new(v.Start.p.X * (1 - i) + v.Stop.p.X * i, v.Start.p.Y * (1 - i) + v.Stop.p.Y * i, v.Start.p.Z * (1 - i) + v.Stop.p.Z * i) * CFrame.fromEulerAnglesXYZ(v.X1 * (1 - i) + v.X2 * i, v.Y1 * (1 - i) + v.Y2 * i, v.Z1 * (1 - i) + v.Z2 * i), 1) | |
| 1844 | else | |
| 1845 | v.Weld.C1 = v.Stop | |
| 1846 | end | |
| 1847 | end | |
| 1848 | end) | |
| 1849 | local oldcombo | |
| 1850 | local thingz = false | |
| 1851 | spawn(function() | |
| 1852 | while wait(0.1) do | |
| 1853 | for _, v in pairs(cooldowns) do | |
| 1854 | if 0.1 > v.timeleft then | |
| 1855 | table.remove(cooldowns, _) | |
| 1856 | else | |
| 1857 | v.timeleft = v.timeleft - 0.1 | |
| 1858 | end | |
| 1859 | end | |
| 1860 | end | |
| 1861 | end) | |
| 1862 | spawn(function() | |
| 1863 | while wait(0.1) do | |
| 1864 | if thingz == false then | |
| 1865 | oldcombo = combostring | |
| 1866 | thingz = true | |
| 1867 | else | |
| 1868 | if string.len(oldcombo) == string.len(combostring) then | |
| 1869 | combostring = "" | |
| 1870 | oldcombo = "" | |
| 1871 | end | |
| 1872 | thingz = false | |
| 1873 | end | |
| 1874 | end | |
| 1875 | end) | |
| 1876 | while wait() do | |
| 1877 | if mana < maxmana and not deb and not animPlaying then | |
| 1878 | mana = mana + 2 | |
| 1879 | if mana == maxmana + 1 then | |
| 1880 | mana = maxmana | |
| 1881 | end | |
| 1882 | end | |
| 1883 | if animPlaying == true and runLeg == true then | |
| 1884 | walkLegs() | |
| 1885 | end | |
| 1886 | if run == true and animPlaying == false then | |
| 1887 | altTweenTable = {}
| |
| 1888 | tweenTable = {}
| |
| 1889 | walkCycle() | |
| 1890 | elseif idle == true and animPlaying == false then | |
| 1891 | tweenTable = {}
| |
| 1892 | reset() | |
| 1893 | end | |
| 1894 | end |