SHOW:
|
|
- or go back to the newest paste.
| 1 | --==Made by LuisPambid==-- | |
| 2 | --==Soul Solid==-- | |
| 3 | ||
| 4 | - | local player=game.Players.DevilLinux |
| 4 | + | local player=game.Players.pok61111 |
| 5 | local char=player.Character | |
| 6 | repeat wait() until player and char | |
| 7 | local torso=char.Torso | |
| 8 | local head=char.Head | |
| 9 | local human=char.Humanoid | |
| 10 | local arm={Left=char["Left Arm"], Right=char["Right Arm"]}
| |
| 11 | local leg={Left=char["Left Leg"], Right=char["Right Leg"]}
| |
| 12 | local c=function(f) coroutine.resume(coroutine.create(f)) end | |
| 13 | local p=function(f) pcall(f) end | |
| 14 | local add={
| |
| 15 | Part=function(par, a, c, col, t, s, cf, ms) | |
| 16 | local p=Instance.new("Part", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new() end)
| |
| 17 | local m=Instance.new("BlockMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) end)
| |
| 18 | return p | |
| 19 | end, | |
| 20 | Wedge=function(par, a, c, col, t, s, cf, ms) | |
| 21 | local p=Instance.new("WedgePart", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new() end)
| |
| 22 | local m=Instance.new("SpecialMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) m.MeshType="Wedge" end)
| |
| 23 | return p | |
| 24 | end, | |
| 25 | Gui=function(ins, par, bc, bg, tc, fs, text, t, s, pos) | |
| 26 | local g=Instance.new(ins, par) pcall(function() g.BorderColor=BrickColor.new(bc) g.BackgroundColor=BrickColor.new(bg) g.TextColor=BrickColor.new(tc) g.FontSize=fs g.Font="ArialBold" g.Text=text g.Transparency=t g.Size=s g.Position=pos end) | |
| 27 | return g | |
| 28 | end, | |
| 29 | Weld=function(par, p1, cf) | |
| 30 | local w=Instance.new("Weld", par) pcall(function() w.Part0=w.Parent or par w.Part1=p1 w.C1=cf or CFrame.new() end)
| |
| 31 | return w | |
| 32 | end, | |
| 33 | Mesh=function(ins, par, s, of, t) | |
| 34 | local m=Instance.new(ins, par) pcall(function() m.Scale=s or Vector3.new() m.Offset=of or Vector3.new() m.MeshType=t end) | |
| 35 | return m | |
| 36 | end, | |
| 37 | Sound=function(parent, id, volume, pitch) | |
| 38 | local s=Instance.new("Sound", parent) pcall(function() s.SoundId=id s.Volume=volume s.Pitch=pitch end)
| |
| 39 | return s | |
| 40 | end, | |
| 41 | } | |
| 42 | local scriptname="Soul Solid" --Name here | |
| 43 | pcall(function() player.Backpack[scriptname]:remove() char[scriptname]:remove() char["Objects"]:remove() player.PlayerGui[scriptname]:remove() end) | |
| 44 | local model=Instance.new("Model", char) model.Name="Objects"
| |
| 45 | local modelB=Instance.new("Model", char) modelB.Name=scriptname
| |
| 46 | local gui=Instance.new("ScreenGui", player.PlayerGui) gui.Name=scriptname
| |
| 47 | local bin=Instance.new("HopperBin", player.Backpack) bin.Name=scriptname
| |
| 48 | local skincolor="New Yeller" | |
| 49 | local suitcolor="Really black" | |
| 50 | local body={}
| |
| 51 | local animate={}
| |
| 52 | local obj={}
| |
| 53 | function createParts() | |
| 54 | --==PARTS==-- | |
| 55 | body.Head=head:clone() body.Head.Parent=model body.Head.BrickColor=BrickColor.new(skincolor) body.Head.Transparency=0 | |
| 56 | body.Torso=add.Part(model, false, false, skincolor, 0, Vector3.new(2, 2, 1), nil) | |
| 57 | body.ArmLeft, body.ArmRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil) | |
| 58 | body.LegLeft, body.LegRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil) | |
| 59 | p(function() for i, v in pairs(char:children()) do v.Transparency=1 end end) | |
| 60 | p(function() for i, v in pairs(char:children()) do v["face"]:clone().Parent=body.Head v["face"]:remove() end end) | |
| 61 | p(function() for i, v in pairs(char:children()) do if v.ClassName=="Hat" then v:remove() end end end) | |
| 62 | --==WELDS==-- | |
| 63 | body.HeadW=add.Weld(body.Head, body.Torso, CFrame.new(0, 1.5, 0)) | |
| 64 | body.TorsoW=add.Weld(body.Torso, torso, nil) | |
| 65 | body.ArmLeftW, body.ArmRightW=add.Weld(body.ArmLeft, body.Torso, CFrame.new(-1.5, .5, 0)), add.Weld(body.ArmRight, body.Torso, CFrame.new(1.5, .5, 0)) | |
| 66 | body.LegLeftW, body.LegRightW=add.Weld(body.LegLeft, body.Torso, CFrame.new(-.5, -1.5, 0)), add.Weld(body.LegRight, body.Torso, CFrame.new(.5, -1.5, 0)) | |
| 67 | --==MESHES==-- | |
| 68 | add.Mesh("BlockMesh", body.ArmLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
| |
| 69 | add.Mesh("BlockMesh", body.ArmRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
| |
| 70 | add.Mesh("BlockMesh", body.LegLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
| |
| 71 | add.Mesh("BlockMesh", body.LegRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
| |
| 72 | --------------------------------------------------------------------------------------- | |
| 73 | animate={
| |
| 74 | ["Head"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 75 | body.HeadW.C1=CFrame.new(0, 1.5, 0)*cf | |
| 76 | end; | |
| 77 | ["Torso"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 78 | body.TorsoW.C1=cf | |
| 79 | end; | |
| 80 | ["ArmLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 81 | body.ArmLeftW.C1=CFrame.new(-1.5, .5, 0)*cf | |
| 82 | end; | |
| 83 | ["ArmRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 84 | body.ArmRightW.C1=CFrame.new(1.5, .5, 0)*cf | |
| 85 | end; | |
| 86 | ["LegLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 87 | body.LegLeftW.C1=CFrame.new(-.5, -1.5, 0)*cf | |
| 88 | end; | |
| 89 | ["LegRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end) | |
| 90 | body.LegRightW.C1=CFrame.new(.5, -1.5, 0)*cf | |
| 91 | end; | |
| 92 | } | |
| 93 | --==Objects==-- | |
| 94 | --Suit-- | |
| 95 | obj.ArmLeft, obj.ArmRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil) | |
| 96 | obj.ArmLeftW, obj.ArmRightW=add.Weld(obj.ArmLeft, body.ArmLeft, nil), add.Weld(obj.ArmRight, body.ArmRight, nil) | |
| 97 | obj.LegLeft, obj.LegRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil) | |
| 98 | obj.LegLeftW, obj.LegRightW=add.Weld(obj.LegLeft, body.LegLeft, nil), add.Weld(obj.LegRight, body.LegRight, nil) | |
| 99 | obj.Torso=add.Part(model, false, false, suitcolor, 0, Vector3.new(2, 2, 1), nil) | |
| 100 | obj.TorsoW=add.Weld(obj.Torso, body.Torso, nil) | |
| 101 | add.Mesh("BlockMesh", obj.ArmLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
| |
| 102 | add.Mesh("BlockMesh", obj.ArmRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
| |
| 103 | add.Mesh("BlockMesh", obj.LegLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
| |
| 104 | add.Mesh("BlockMesh", obj.LegRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
| |
| 105 | add.Mesh("BlockMesh", obj.Torso, Vector3.new(1.05, 1.05, 1.05), nil, nil)
| |
| 106 | --------------------------------------------------------------------------------------- | |
| 107 | obj.Handle=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.25, 2, .25), nil) | |
| 108 | obj.HandleW=add.Weld(obj.Handle, body.ArmRight, CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, 0)) | |
| 109 | for i=1, 5 do | |
| 110 | obj.Design=add.Part(modelB, false, false, "White", 0, Vector3.new(.3, .1, .1), nil) | |
| 111 | obj.DesignW=add.Weld(obj.Design, obj.Handle, CFrame.new(0, -1+i/3, 0)*CFrame.Angles(math.rad(45), 0, 0)) | |
| 112 | end | |
| 113 | --SEALS-- | |
| 114 | obj.Seal=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil) | |
| 115 | obj.SealM=add.Mesh("BlockMesh", obj.Seal, Vector3.new(.2, .5, 1), nil, nil)
| |
| 116 | obj.SealW=add.Weld(obj.Seal, obj.Handle, CFrame.new(0, -1.15, .1)) | |
| 117 | obj.Seal2=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil) | |
| 118 | obj.Seal2M=add.Mesh("BlockMesh", obj.Seal2, Vector3.new(.25, 1, .5), nil, nil)
| |
| 119 | obj.Seal2W=add.Weld(obj.Seal2, obj.Handle, CFrame.new(0, -1.1, 0)) | |
| 120 | obj.Seal3=add.Part(modelB, false,false, "White", 0, Vector3.new(.3, 2, .2), nil) | |
| 121 | obj.Seal3M=add.Mesh("BlockMesh", obj.Seal3, Vector3.new(1, 1, .5), nil, nil)
| |
| 122 | obj.Seal3W=add.Weld(obj.Seal3, obj.Handle, nil) | |
| 123 | --------------------------------------------------------------------------------------- | |
| 124 | obj.Guard=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.5, .2, .5), nil) | |
| 125 | obj.GuardW=add.Weld(obj.Guard, obj.Handle, CFrame.new(0, 1.1, 0)) | |
| 126 | obj.GuardB=add.Part(modelB, false, false, "White", 0, Vector3.new(.25, .2, .3), nil) | |
| 127 | obj.GuardBM=add.Mesh("BlockMesh", obj.GuardB, Vector3.new(.5, 1, 1), nil, nil)
| |
| 128 | obj.GuardBW=add.Weld(obj.GuardB, obj.Handle, CFrame.new(0, 1.25, 0)) | |
| 129 | obj.Blade=add.Part(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 4, .25), nil) obj.Blade.Reflectance=.5 | |
| 130 | obj.BladeM=add.Mesh("BlockMesh", obj.Blade, Vector3.new(.5, 1, 1), nil, nil)
| |
| 131 | obj.BladeW=add.Weld(obj.Blade, obj.Handle, CFrame.new(0, 3, 0)) | |
| 132 | obj.Point=add.Wedge(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 1, .25), nil) obj.Point.Reflectance=.5 | |
| 133 | obj.PointM=add.Mesh("SpecialMesh", obj.Point, Vector3.new(.5, 1, 1), nil, "Wedge")
| |
| 134 | obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, 2.5, 0)*CFrame.Angles(math.rad(0), 0, 0)) | |
| 135 | --==Signature(L)==-- | |
| 136 | obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, 1, .2), nil) | |
| 137 | obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.25, -.2)) | |
| 138 | obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, .2, .5), nil) | |
| 139 | obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.65, 0)) | |
| 140 | end | |
| 141 | function removeParts() | |
| 142 | p(function() | |
| 143 | for i, v in pairs(model:children()) do v:remove() end for i, v in pairs(modelB:children()) do v:remove() end for i, v in pairs(char:children()) do v.Transparency=0 end | |
| 144 | end) | |
| 145 | end | |
| 146 | --Variables-- | |
| 147 | local trailDeb=false | |
| 148 | local running=false | |
| 149 | local hitDeb=false | |
| 150 | local attacking=false | |
| 151 | local hitting=false | |
| 152 | local shield=false | |
| 153 | local keyDeb=false | |
| 154 | local keyDeb2=false | |
| 155 | local looping=false | |
| 156 | local w, a, s, d=false, false, false, false | |
| 157 | local combo=0 | |
| 158 | local speed=32 | |
| 159 | local attackspeed=.25 | |
| 160 | local dmg=math.random(5, 10) | |
| 161 | local looping2=false | |
| 162 | local rage=1 | |
| 163 | local Slash=add.Sound(torso, "rbxasset://sounds//swordslash.wav", 1, 1) | |
| 164 | local Dash=add.Sound(torso, "http://www.roblox.com/asset/?id=22968437", 1, 1) | |
| 165 | local Clang=add.Sound(torso, "http://www.roblox.com/asset/?id=11113679", 1, 1) | |
| 166 | local Heal=add.Sound(torso, "http://www.roblox.com/asset/?id=2101144", 1, 1) | |
| 167 | local Electricity=add.Sound(torso, "http://www.roblox.com/asset/?id=10756118", 1, 1) | |
| 168 | local attackLabel=add.Gui("TextLabel", gui, "Really black", "Really black", "White", "Size18", "Dash(C)", 0, UDim2.new(0, 150, 0, 50), UDim2.new(0, 0, 0, 150))
| |
| 169 | local attackLabel2=add.Gui("TextLabel", attackLabel, "Really black", "Really black", "White", "Size18", "Block(V)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
| |
| 170 | local attackLabel3=add.Gui("TextLabel", attackLabel2, "Really black", "Really black", "White", "Size18", "Jump(Space)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
| |
| 171 | local attackLabel4=add.Gui("TextLabel", attackLabel3, "Really black", "Really black", "White", "Size18", "Regenerate(X)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
| |
| 172 | local attackLabel5=add.Gui("TextLabel", attackLabel4, "Really black", "Really black", "White", "Size18", "Ultimate(Z)ON/OFF", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
| |
| 173 | function lightningGen(startPos, endPos) | |
| 174 | local magnitude=(startPos-endPos).magnitude | |
| 175 | local distance=(startPos+endPos)/2 | |
| 176 | local pattern=add.Part(workspace, true, false, "White", 1, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPos)) pattern.Name="Effect" | |
| 177 | local startPosProx=startPos | |
| 178 | for i=1, 9 do | |
| 179 | local startPosProx2=startPosProx | |
| 180 | local random=Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1)) | |
| 181 | local findSize=pattern.Size.z/10 | |
| 182 | local findOffSet=pattern.CFrame.lookVector*-1 | |
| 183 | local compute=i*findSize*findOffSet | |
| 184 | local newStartPos=startPos | |
| 185 | local newEndPos=CFrame.new(random+compute+newStartPos).p | |
| 186 | local magnitude=(startPosProx2-newEndPos).magnitude | |
| 187 | local distance=(startPosProx2+newEndPos)/2 | |
| 188 | local lightning=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPosProx2)) lightning.Name="Effect" | |
| 189 | c(function() | |
| 190 | for i=0, 1, .1 do wait() | |
| 191 | lightning.Transparency=i | |
| 192 | end | |
| 193 | lightning:remove() | |
| 194 | end) | |
| 195 | startPosProx=newEndPos | |
| 196 | end | |
| 197 | pattern:remove() | |
| 198 | end | |
| 199 | function computePos(pos, pos2) | |
| 200 | local pos3=Vector3.new(pos2.x, pos.y, pos2.z) | |
| 201 | torso.CFrame=CFrame.new(pos, pos3) | |
| 202 | return pos3 | |
| 203 | end | |
| 204 | function nearTorso(pos, dis) | |
| 205 | local temp | |
| 206 | local distance=dis | |
| 207 | for i, v in pairs(workspace:children()) do | |
| 208 | if v:isA("Model") then
| |
| 209 | temp=v:findFirstChild("Torso")
| |
| 210 | local humanoid=v:findFirstChild("Humanoid")
| |
| 211 | if temp and humanoid and v~=char and (temp.CFrame.p-pos).magnitude<distance then | |
| 212 | distance=(temp.CFrame.p-pos).magnitude | |
| 213 | return temp | |
| 214 | end | |
| 215 | end | |
| 216 | end | |
| 217 | end | |
| 218 | ||
| 219 | function hit(h) | |
| 220 | if hitting==true and looping2==true and h.Parent:findFirstChild("Humanoid")==nil and h~=nil and h.Parent~=char and h.Parent~=model and h.Parent~=modelB and h.Name~="Effect" and h.Name~="Base" and hitDeb==false then hitDeb=true
| |
| 221 | p(function() print("found")
| |
| 222 | local pYPos=h.Position.y-(h.Size.y/2) | |
| 223 | local sYPos=obj.Blade.Position.y | |
| 224 | if sYPos<=pYPos or sYPos>=(pYPos+h.Size.y) then return end | |
| 225 | local p=h:clone() p.Parent=workspace p.Anchored=false p.CanCollide=true --p.Name="Effect" | |
| 226 | local p2=h:clone() p2.Parent=workspace p2.Anchored=false p2.CanCollide=true --p2.Name="Effect" | |
| 227 | h:remove() | |
| 228 | p.formFactor="Custom" | |
| 229 | p2.formFactor="Custom" | |
| 230 | p.Size=Vector3.new(h.Size.x, sYPos-pYPos, h.Size.z) | |
| 231 | p2.Size=Vector3.new(h.Size.x, p2.Size.y-(sYPos-pYPos), h.Size.z) | |
| 232 | p.CFrame=h.CFrame*CFrame.new(0, -p2.Size.y/2, 0) | |
| 233 | p2.CFrame=h.CFrame*CFrame.new(0, p.Size.y/2, 0) | |
| 234 | c(function() wait(2) | |
| 235 | --[[p.Anchored=false p2.Anchored=false | |
| 236 | for i=0, 1, .05 do | |
| 237 | wait() | |
| 238 | p.Transparency=i p2.Transparency=i | |
| 239 | end]] | |
| 240 | p:remove() p2:remove() | |
| 241 | end) | |
| 242 | end) | |
| 243 | wait() | |
| 244 | hitDeb=false | |
| 245 | elseif hitting==true and game.Players[h.Parent.Name] and h.Parent~=char and hitDeb==false then hitDeb=true | |
| 246 | pcall(function() | |
| 247 | local hHuman=h.Parent:findFirstChild("Humanoid")
| |
| 248 | hHuman.Health=hHuman.Health-dmg | |
| 249 | --[[for i=1, 5 do | |
| 250 | local spark=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, 1, .2), obj.Point.CFrame*CFrame.Angles(math.random(-45, 45), math.random(-45, 45), math.random(-45, 45))) spark.Name="Effect" | |
| 251 | local sparkM=add.Mesh("BlockMesh", spark, Vector3.new(.5, 1, .5), nil, nil)
| |
| 252 | c(function() | |
| 253 | for i=0, 1, .05 do wait() | |
| 254 | spark.Transparency=i | |
| 255 | end spark:remove() | |
| 256 | end) | |
| 257 | end]] | |
| 258 | local fakeM=Instance.new("Model", workspace) fakeM.Name=dmg
| |
| 259 | local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0
| |
| 260 | local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head" | |
| 261 | local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil)
| |
| 262 | local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0)
| |
| 263 | game.Debris:addItem(fakeM, 2) | |
| 264 | end) | |
| 265 | wait(.2) | |
| 266 | hitDeb=false | |
| 267 | end | |
| 268 | end | |
| 269 | ||
| 270 | function trail(pos, cf) | |
| 271 | c(function() | |
| 272 | local old=(pos.CFrame*cf).p | |
| 273 | while trailDeb==true do | |
| 274 | wait() | |
| 275 | local new=(pos.CFrame*cf).p | |
| 276 | local mag=(old-new).magnitude | |
| 277 | local dis=(old+new)/2 | |
| 278 | local trail=add.Part(workspace, true, false, "Pastel light blue", 0, Vector3.new(.2, mag, .2), CFrame.new(dis, new)*CFrame.Angles(math.pi/2, 0, 0)) trail.Name="Effect" | |
| 279 | trail.Touched:connect(hit) | |
| 280 | local tMesh=add.Mesh("CylinderMesh", trail, Vector3.new(1, 1, 1), nil, nil)
| |
| 281 | old=new | |
| 282 | c(function() | |
| 283 | for i=1, 0, -.1 do | |
| 284 | wait() | |
| 285 | tMesh.Scale=tMesh.Scale*Vector3.new(i, 1, i) | |
| 286 | end | |
| 287 | trail:remove() | |
| 288 | end) | |
| 289 | c(function() | |
| 290 | for i=0, 1, .1 do | |
| 291 | wait() | |
| 292 | trail.Transparency=i | |
| 293 | end | |
| 294 | end) | |
| 295 | end | |
| 296 | end) | |
| 297 | end | |
| 298 | ||
| 299 | function onRunning() while attacking or looping do wait() end | |
| 300 | if w or a or s or d then | |
| 301 | animate.ArmLeft(CFrame.Angles(0, 0, math.rad(-15))) | |
| 302 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(15))) | |
| 303 | animate.LegLeft(CFrame.Angles(0, 0, math.rad(-5))) | |
| 304 | animate.LegRight(CFrame.Angles(0, 0, math.rad(5))) | |
| 305 | end | |
| 306 | end | |
| 307 | ||
| 308 | function doAttacks() combo=combo+1 rage=rage+1 print("Combo: "..combo)
| |
| 309 | if attacking==false and looping==false then attacking=true | |
| 310 | if combo==1 then hitting=true Slash:play() | |
| 311 | for i, v in pairs(modelB:children()) do v.Touched:connect(hit) end | |
| 312 | for i=0, 1, attackspeed do wait() | |
| 313 | animate.Torso(CFrame.Angles(0, -math.rad(45)*i, 0)) | |
| 314 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(90)*i)) | |
| 315 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)-(math.rad(135)*i), 0, 0) | |
| 316 | end | |
| 317 | trailDeb=true trail(obj.Point, CFrame.new(0, 1, 0)) | |
| 318 | for i=0, 1, attackspeed do wait() | |
| 319 | animate.Torso(CFrame.Angles(0, -math.rad(45)-(-math.rad(135)*i), 0)) | |
| 320 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(225)-(-math.rad(135)*i), 0, -math.rad(15)*i) | |
| 321 | end | |
| 322 | if combo>1 then combo=2 print("Combo: "..combo) Slash:play()
| |
| 323 | for i=1, 0, -attackspeed do wait() | |
| 324 | animate.Torso(CFrame.Angles(0, -math.rad(90)+(math.rad(90)*i), 0)) | |
| 325 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i)) | |
| 326 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i) | |
| 327 | end | |
| 328 | trailDeb=false | |
| 329 | for i=1, 0, -attackspeed do wait() | |
| 330 | animate.Torso(CFrame.Angles(0, -math.rad(90)*i, 0)) | |
| 331 | end | |
| 332 | attacking=false | |
| 333 | hitting=false | |
| 334 | combo=0 | |
| 335 | onRunning() | |
| 336 | return | |
| 337 | end | |
| 338 | trailDeb=false | |
| 339 | for i=1, 0, -.2 do wait() | |
| 340 | animate.Torso(CFrame.Angles(0, math.rad(90)*i, 0)) | |
| 341 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i)) | |
| 342 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i) | |
| 343 | end | |
| 344 | end | |
| 345 | attacking=false | |
| 346 | hitting=false | |
| 347 | combo=0 | |
| 348 | onRunning() | |
| 349 | end | |
| 350 | end | |
| 351 | ||
| 352 | local Abilities={
| |
| 353 | ["Dash"]=function() Dash:play() | |
| 354 | local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, 0, 1.5)*CFrame.Angles(math.rad(90), 0, 0)) aura.Name="Effect" | |
| 355 | local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
| |
| 356 | c(function() | |
| 357 | for i=0, 2, .1 do wait() | |
| 358 | auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i) | |
| 359 | end | |
| 360 | end) | |
| 361 | c(function() | |
| 362 | for i=0, 1, .1 do | |
| 363 | wait() | |
| 364 | aura.Transparency=i | |
| 365 | end | |
| 366 | pcall(function() aura:remove() end) | |
| 367 | end) | |
| 368 | torso.CFrame=torso.CFrame+torso.CFrame.lookVector*10 | |
| 369 | end; | |
| 370 | ["DashJump"]=function() Dash:play() | |
| 371 | local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(math.rad(180), 0, 0)) aura.Name="Effect" | |
| 372 | local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
| |
| 373 | c(function() | |
| 374 | for i=0, 2, .1 do wait() | |
| 375 | auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i) | |
| 376 | end | |
| 377 | end) | |
| 378 | c(function() | |
| 379 | for i=0, 1, .1 do | |
| 380 | wait() | |
| 381 | aura.Transparency=i | |
| 382 | end | |
| 383 | pcall(function() aura:remove() end) | |
| 384 | end) | |
| 385 | pcall(function() torso:findFirstChild("BodyPosition"):remove() end)
| |
| 386 | c(function() | |
| 387 | local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(0, math.huge, 0) bp.position=torso.Position+Vector3.new(0, 10, 0)
| |
| 388 | wait(3) | |
| 389 | bp:remove() | |
| 390 | end) | |
| 391 | end; | |
| 392 | ["Shield"]=function(mouse) human.WalkSpeed=0 | |
| 393 | local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=torso.Position
| |
| 394 | looping=true | |
| 395 | for i=0, 1, .2 do wait() | |
| 396 | animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0)) | |
| 397 | animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i)) | |
| 398 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i) | |
| 399 | end | |
| 400 | Clang:play() | |
| 401 | local shieldPart=add.Part(model, true, false, "White", 1, Vector3.new(15, 15, 4), torso.CFrame+torso.CFrame.lookVector*1.5) | |
| 402 | while looping do wait() computePos(torso.CFrame.p, mouse.Hit.p) shieldPart.CFrame=torso.CFrame+torso.CFrame.lookVector*1.5 | |
| 403 | shieldPart.Touched:connect(function(h) | |
| 404 | if h.Parent~=char and h.Parent~=modelB and h.Parent~=model and h.Name~="Trail" and h.Name~="Base" and hitDeb==false then hitDeb=true print(h.Name) | |
| 405 | Clang:play() | |
| 406 | c(function() | |
| 407 | --[[local effect=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), CFrame.new(h.CFrame.p, torso.CFrame.p)) effect.Name="Trail" | |
| 408 | local mesh=add.Mesh("SpecialMesh", effect, Vector3.new(1.5, 1.5, 1.5), nil, "File") mesh.MeshId="http://www.roblox.com/asset/?id=3270017"
| |
| 409 | c(function() | |
| 410 | for i=0, 1, .1 do | |
| 411 | wait() | |
| 412 | effect.Mesh.Scale=effect.Mesh.Scale+Vector3.new(i, i, i) | |
| 413 | end | |
| 414 | effect:remove() | |
| 415 | end) | |
| 416 | c(function() | |
| 417 | for i=0, 1, .1 do | |
| 418 | wait() | |
| 419 | effect.Transparency=i | |
| 420 | end | |
| 421 | end)]] | |
| 422 | h.Anchored=false | |
| 423 | local bp=Instance.new("BodyPosition", h) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=(CFrame.new(torso.CFrame.p, h.CFrame.p)*CFrame.new(0, 0, -h.Velocity.z*1.5)).p
| |
| 424 | local bg=Instance.new("BodyGyro", h) bg.maxTorque=Vector3.new(0, math.huge, 0) bg.cframe=CFrame.new(h.CFrame.p, torso.CFrame.p)
| |
| 425 | h.Velocity=Vector3.new(0, 0, 0) h.RotVelocity=Vector3.new(0, 0, 0) | |
| 426 | game.Debris:addItem(bp, .2) game.Debris:addItem(bg, .2) | |
| 427 | end) | |
| 428 | wait() | |
| 429 | hitDeb=false | |
| 430 | end | |
| 431 | end) | |
| 432 | end | |
| 433 | bp:remove() | |
| 434 | shieldPart:remove() | |
| 435 | for i=1, 0, -.2 do wait() | |
| 436 | animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0)) | |
| 437 | animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i)) | |
| 438 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i) | |
| 439 | end | |
| 440 | human.WalkSpeed=speed | |
| 441 | end; | |
| 442 | ["Regenerate"]=function(mouse) human.WalkSpeed=0 | |
| 443 | looping=true | |
| 444 | for i=0, 1, .1 do wait() | |
| 445 | animate.Torso(CFrame.new(0, -1*i, 0)) | |
| 446 | animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i)) | |
| 447 | animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i)) | |
| 448 | animate.LegLeft(CFrame.new(0, 1*i, -1*i)) | |
| 449 | animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0)) | |
| 450 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0) | |
| 451 | end | |
| 452 | while looping and human.Health<100 do wait() human.Health=human.Health+1 Heal:play() | |
| 453 | local aura=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect" | |
| 454 | local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(1, 1, 1), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
| |
| 455 | local aura2=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(5, 5, 5), body.Torso.CFrame*CFrame.new(math.random(-15, 15), math.random(-15, 15), math.random(-15, 15))*CFrame.Angles(math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45)))) | |
| 456 | aura2.Name="Effect" | |
| 457 | c(function() | |
| 458 | for i=0, 3, .2 do wait() | |
| 459 | auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i) | |
| 460 | end | |
| 461 | c(function() | |
| 462 | for i=.5, 1, .1 do | |
| 463 | wait() | |
| 464 | aura.Transparency=i aura2.Transparency=i | |
| 465 | end | |
| 466 | end) | |
| 467 | aura:remove() aura2:remove() | |
| 468 | end) | |
| 469 | end | |
| 470 | for i=1, 0, -.1 do wait() | |
| 471 | animate.Torso(CFrame.new(0, -1*i, 0)) | |
| 472 | animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i)) | |
| 473 | animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i)) | |
| 474 | animate.LegLeft(CFrame.new(0, 1*i, -1*i)) | |
| 475 | animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0)) | |
| 476 | obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0) | |
| 477 | end | |
| 478 | human.WalkSpeed=speed | |
| 479 | end; | |
| 480 | ["Ultimate"]=function() | |
| 481 | c(function() | |
| 482 | looping2=true | |
| 483 | speed=40 attackspeed=.25 dmg=dmg*2.5 | |
| 484 | while looping2 and human.Health>2 do wait(.2) human.Health=human.Health-2 Electricity:play() | |
| 485 | lightningGen(body.Torso.CFrame.p, body.Torso.Position+Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10))) | |
| 486 | local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect" | |
| 487 | local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
| |
| 488 | c(function() | |
| 489 | for i=0, 1, .1 do wait() | |
| 490 | auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i) | |
| 491 | end | |
| 492 | end) | |
| 493 | c(function() | |
| 494 | for i=0, 1, .1 do | |
| 495 | wait() | |
| 496 | aura.Transparency=i | |
| 497 | end | |
| 498 | aura:remove() | |
| 499 | end) | |
| 500 | end | |
| 501 | speed=32 attackspeed=.2 dmg=math.random(5, 10) | |
| 502 | keyDeb=false looping2=false | |
| 503 | end) | |
| 504 | end; | |
| 505 | } | |
| 506 | ||
| 507 | bin.Selected:connect(function(mouse) createParts() human.WalkSpeed=speed | |
| 508 | onRunning() | |
| 509 | while attacking do wait() end | |
| 510 | mouse.Button1Down:connect(doAttacks) | |
| 511 | mouse.KeyDown:connect(function(key) key=key:lower() | |
| 512 | if key=="w" then w=true onRunning() end | |
| 513 | if key=="a" then a=true onRunning() end | |
| 514 | if key=="s" then s=true onRunning() end | |
| 515 | if key=="d" then d=true onRunning() end | |
| 516 | if key=="c" and keyDeb2==false then keyDeb2=true Abilities.Dash() wait() keyDeb2=false end | |
| 517 | if key==" " and keyDeb2==false then keyDeb2=true Abilities.DashJump() wait() keyDeb2=false end | |
| 518 | if key=="v" and keyDeb==false then keyDeb=true Abilities.Shield(mouse) keyDeb=false end | |
| 519 | if key=="x" and keyDeb==false and human.Health<100 then keyDeb=true Abilities.Regenerate(mouse) keyDeb=false end | |
| 520 | if key=="z" and keyDeb==false and human.Health>5 then | |
| 521 | keyDeb=true | |
| 522 | Abilities.Ultimate(mouse) | |
| 523 | elseif key=="z" and keyDeb==true then | |
| 524 | keyDeb=false looping2=false | |
| 525 | end | |
| 526 | end) | |
| 527 | mouse.KeyUp:connect(function(key) key=key:lower() | |
| 528 | if key=="v" then looping=false end | |
| 529 | if key=="x" then looping=false end | |
| 530 | end) | |
| 531 | end) | |
| 532 | bin.Deselected:connect(function() removeParts() end)--mediafire |