mathmasterphil

Vanita

Mar 6th, 2015
321
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 26.80 KB | None | 0 0
  1. ----------mediafire-------------------------wait()
  2. script.Parent = nil
  3. name = 'Lightning Blade'
  4. attacking = false
  5. PLAYERS = Game:service'Players'
  6. ply = PLAYERS.LocalPlayer
  7. char = ply.Character
  8. torso = char.Torso
  9.  
  10. cfn,ang,v3n,ud2n,V2 = CFrame.new,CFrame.Angles,Vector3.new,UDim2.new,Vector2.new
  11. mcos,msin,mtan,md,mr = math.cos,math.sin,math.tan,math.rad,math.random
  12. debris = game:service'Debris'
  13. floatforce = 196.25
  14.  
  15. rs,ls = torso['Right Shoulder'],torso['Left Shoulder']
  16. rarm = char["Right Arm"]
  17. larm = char["Left Arm"]
  18. rleg = char["Right Leg"]
  19. lleg = char["Left Leg"]
  20.  
  21. rs = torso["Right Shoulder"]
  22. ls = torso["Left Shoulder"]
  23. rh = torso["Right Hip"]
  24. lh = torso["Left Hip"]
  25. neck = torso["Neck"]
  26. rw,lw = nil,nil
  27. rhw,lhw = nil,nil
  28.  
  29. asset = 'rbxassetid://'
  30. normposr = cfn(1.5,.5,0)
  31. normposl = cfn(-1.5,.5,0)
  32. normposl2 = cfn(.5,-1.5,0)
  33. normposr2 = cfn(-.5,-1.5,0)
  34. normposn = CFrame.new(0,1,0,-1,-0,-0,0,0,1,0,1,0)
  35.  
  36. pcall(function() char.HAWK:Destroy() end)
  37. m = Instance.new("Model",char) m.Name = 'HAWK'
  38.  
  39. for i = 0,1 do --------UTILITIES START-------
  40. function fade(a,b,c,d)
  41.         if type(a) ~= 'table' then
  42.                 for i = b,c,d do
  43.                         a.Transparency = i
  44.                         wait()
  45.                 end
  46.         else
  47.                 for i = b,c,d do
  48.                         for _,v in pairs(a) do
  49.                                 v.Transparency = i
  50.                         end
  51.                         wait()
  52.                 end
  53.         end
  54. end
  55.  
  56. function FilterTab(tab,what)
  57. Result = {}
  58. local function filter2(a)
  59.         if type(a) == 'string' then
  60.                 return a
  61.         else
  62.                 return a.className
  63.         end
  64. end
  65.  
  66. for i,v in pairs(tab) do
  67.         if type(what) ~= 'table' then
  68.                 if v:IsA(filter2(what)) then
  69.                         table.insert(Result,v)
  70.                 end
  71.         else
  72.                 for i,q in pairs(what) do
  73.                         if v:IsA(filter2(q)) then
  74.                                 table.insert(Result,v)
  75.                         end
  76.                 end
  77.         end
  78. end
  79. return Result
  80. end
  81.  
  82.  
  83. function colorslide(object,targetcolor,bool)
  84. local function a()
  85.         if type(object) ~= 'table' then
  86.                 rgb1,rgb2 =object.Color, BrickColor.new(targetcolor).Color
  87.                 for i = 0,1,.2 do
  88.                         object.Color = Color3.new(
  89.                                 (rgb1.r * (1-i))+(rgb2.r * i),
  90.                                 (rgb1.g * (1-i))+(rgb2.g * i),
  91.                                 (rgb1.b * (1-i))+(rgb2.b * i)
  92.                         )
  93.                 wait()
  94.                 end
  95.                 object.Color = rgb2
  96.         else
  97.                 rgb1,rgb2 = object[1].Color,BrickColor.new(targetcolor).Color
  98.                 for i = 0,1,.2 do
  99.                         for _,v in pairs(object) do
  100.                                 v.Color = Color3.new(
  101.                                         (rgb1.r * (1-i))+(rgb2.r * i),
  102.                                         (rgb1.g * (1-i))+(rgb2.g * i),
  103.                                         (rgb1.b * (1-i))+(rgb2.b * i)
  104.                                 )
  105.                         end
  106.                         wait()
  107.                 end
  108.                 for _,v in pairs(object) do v.Color = rgb2 end
  109.         end        
  110. end
  111. if bool then T.C(a) else a() end
  112. end
  113.  
  114. function l(a,x,y,z,b)
  115.         if b == nil then
  116.                 return a.CFrame*cfn(x,y,z)
  117.         else
  118.                 return a*cfn(x,y,z)
  119.         end
  120. end
  121. function zeero(mot,a) local oldvelocity = mot.MaxVelocity  mot.MaxVelocity = 1.7E+308
  122.         if a == nil then mot.DesiredAngle = 0
  123.         else mot.DesiredAngle = a
  124.         end
  125.         while mot.DesiredAngle ~= mot.CurrentAngle do wait() end
  126.         mot.MaxVelocity = oldvelocity
  127. end
  128. function ventta(mot)
  129.         while mot.DesiredAngle ~= mot.CurrentAngle do wait() end
  130. end
  131.  
  132. function genNew(ClassName, Parent, Properties)
  133.         local nObj = Instance.new(ClassName, Parent)
  134.         if Properties["FormFactor"] then
  135.                 nObj["FormFactor"] = Properties["FormFactor"]
  136.         end
  137.         for Prop, Value in pairs(Properties) do
  138.                 nObj[Prop] = Value
  139.         end
  140.         return nObj
  141. end
  142.  
  143. T = {["P"] = function(x,y,z,color,transparency,cancollide,anchored,parent,typee)
  144.                 if typee == 'wedge' then
  145.                         c = Instance.new("WedgePart",m)
  146.                         elseif typee == 'seat' then
  147.                                 c = Instance.new("Seat",m)
  148.                         elseif typee == 'vseat' then
  149.                                 c = Instance.new("VehicleSeat",m)
  150.                         else
  151.                                 c = Instance.new("Part",m)
  152.                 end
  153.                 c.TopSurface,c.BottomSurface = 0,0
  154.                 c.Locked = true
  155.                 c.formFactor = "Custom"
  156.                 c.Size = Vector3.new(x,y,z)
  157.                 if color ~= "random" then
  158.                         c.BrickColor = BrickColor.new(color)
  159.                         else c.BrickColor = BrickColor:random()
  160.                 end
  161.                 c.Transparency = transparency
  162.                 c.CanCollide = cancollide
  163.                 if anchored ~= nil then c.Anchored = anchored end
  164.                 if parent ~= nil then c.Parent = parent end
  165.                 return c
  166.         end
  167.         ,
  168.         ["C"] = function(func) coroutine.resume(coroutine.create(func)) end
  169.         ,
  170.         ["W"] = function(part0,part1,x,y,z,rx,ry,rz,parent)
  171.                 w = Instance.new("Motor",m)
  172.                 if parent ~= nil then w.Parent = parent end
  173.                 w.Part0,w.Part1 = part0,part1
  174.                 w.C1 = CFrame.new(x,y,z) * CFrame.Angles(rx,ry,rz)
  175.                 w.MaxVelocity = .1
  176.                 return w
  177.         end
  178.         ,
  179.         ["BG"] = function(parent)
  180.                 local c = Instance.new("BodyGyro",parent)
  181.                 c.P = 20e+003
  182.                 c.cframe = parent.CFrame
  183.                 c.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge
  184.                 return c
  185.                 end
  186.         ,
  187.         ["BP"] = function(parent,position)
  188.                 local bp = Instance.new("BodyPosition",parent)
  189.                 bp.maxForce = Vector3.new()*math.huge
  190.                 bp.position = position
  191.                 return bp
  192.         end
  193.         ,
  194.         ["F"] = function(parent,size,heat,color,secondcolor,enabled)
  195.                 f = Instance.new("Fire",parent)
  196.                 f.Size = size
  197.                 f.Heat = heat
  198.                 if enabled ~= nil then f.Enabled = enabled end
  199.                 if color ~= nil then f.Color = BrickColor.new(color).Color end
  200.                 if secondcolor ~= nil then f.SecondaryColor = BrickColor.new(secondcolor).Color end
  201.                 return f
  202.         end
  203.         ,
  204.  
  205.         ["FM"] = function(parent,meshid,x,y,z,meshtexture)
  206.                 if meshid == "cylinder" then
  207.                         mesh = Instance.new("CylinderMesh",parent)
  208.                         mesh.Scale = Vector3.new(x,y,z)
  209.                         return mesh
  210.                 elseif meshid == 'block' then
  211.                         mesh = Instance.new("SpecialMesh",parent)
  212.                         mesh.MeshId = 'rbxassetid://9856898'
  213.                         mesh.Scale = v3n(x*parent.Size.x,y*parent.Size.y,z*parent.Size.z)*2
  214.                         if meshtexture then mesh.TextureId = 'rbxassetid://'..textureids[meshtexture] end
  215.                         return mesh
  216.                 end
  217.                 mesh = Instance.new("SpecialMesh",parent)
  218.  
  219.                 if meshid == 'wedge' then
  220.                         mesh.MeshType = 'Wedge'
  221.                 elseif meshid == 'sphere' then
  222.                         mesh.MeshType = 3
  223.                 elseif type(meshid) == "number" then
  224.                         mesh.MeshId = "rbxassetid://"..meshid
  225.                 else
  226.                         mesh.MeshId = "rbxassetid://"..meshids[meshid]
  227.                 end
  228.                 mesh.Scale = Vector3.new(x,y,z)
  229.                 if meshtexture then
  230.                         if type(meshtexture) == "number" then mesh.TextureId = "rbxassetid://"..meshtexture else
  231.                         mesh.TextureId = "rbxassetid://"..textureids[meshtexture] end
  232.                 end
  233.                 return mesh
  234.         end,
  235.  
  236.         ["Dec"] = function(parent,face,id,transparency)
  237.                 c = Instance.new("Decal",parent)
  238.                 c.Face = face
  239.                 c.Texture = id
  240.                 if transparency then c.Transparency = transparency end
  241.                 return c
  242.         end
  243. }
  244.  
  245. function FindHumanoid(a,b)
  246. local hum
  247.         for i,v in pairs(a:children()) do
  248.                 if v:IsA'Humanoid' then
  249.                         if not b then
  250.                                 if v.Parent ~= char then hum = v break end
  251.                         else hum = v break  end
  252.                 end
  253.         end
  254.         return hum
  255. end
  256. function damage(hit,amount,delay,color) ---- VAHINKO DAMAGE
  257. hum = FindHumanoid(hit)
  258.         if hum then
  259.                 if delay then
  260.                         local found = CheckTag(hum,'tag')
  261.                         if not found then
  262.                                 local tag = AddTag(hum,'tag')
  263.                                 debris:AddItem(tag,delay)
  264.                                 hum.Health = hum.Health - amount
  265.                                 local hed = hum.Parent.Head
  266.                                 local bbg = genNew('BillboardGui',hed,{
  267.                                         Adornee = hed;
  268.                                         Size = udim(3,3);
  269.                                         StudsOffset = v3n(mr(-2,2),mr(3,5),mr(-2,2));
  270.                                 })
  271.                                
  272.                                 local img = genNew('TextLabel',bbg,{
  273.                                         Text = amount;
  274.                                         TextScaled = true;
  275.                                         TextColor = bcol(color or 'Really black');
  276.                                         Size = UDim2.new(3,0,3,0);
  277.                                         BackgroundTransparency = 1;
  278.                                 })
  279.                                 T.C(function() wait(.1) for i = 3,.1,-.1 do bbg.Size = udim(i,i) wait() end bbg:Destroy() end)
  280.                                
  281.                         end
  282.                 else hum.Health = hum.Health - amount
  283.                 end
  284.                
  285.                 return hum
  286.         end
  287. end
  288.  
  289. rtorso = torso
  290.  
  291. function scale(msh,str,a,b,c,bool)
  292. local amount
  293. local dims = {x=0,y=0,z=0}
  294. local func = function()
  295.         for word in str:gmatch('%d+') do
  296.                 amount = word
  297.         end
  298.         amount = not amount and 1 or amount
  299.         for word in str:gmatch('%w') do
  300.                 if word == 'x' or word == 'y' or word == 'z' then
  301.                         dims[word] = amount
  302.                 end
  303.         end
  304.         if type(mesh) ~= 'table' then
  305.                 for i = a,b,c or .01 do
  306.                         msh.Scale = v3n(dims.x*i,dims.y*i,dims.z*i)
  307.                         wait()
  308.                 end
  309.         else
  310.                 for i = a,b,c or .01 do
  311.                         for _,v in pairs(mesh) do
  312.                                 v.Scale = v3n(dims.x*i,dims.y*i,dims.z*i)
  313.                         end
  314.                         wait()
  315.                 end
  316.         end
  317. end
  318. if bool then T.C(func) else func() end
  319. end
  320.  
  321.  
  322. lock = {["R"] =
  323.         function(a)
  324.                 if a == 1 then
  325.                         rabrick = T.P(1.1,1.1,1.1,"Dark stone grey",1,false,false)
  326.                         rw = T.W(rabrick,rtorso,1.5,.5,0,0,0,0)
  327.                         T.W(rarm,rabrick,0,-.5,0,0,0,0)
  328.                 elseif a == 2 then
  329.                         rlbrick = T.P(1,1,1,"Dark stone grey",1,false,false)
  330.                         rhw = T.W(rlbrick,rtorso,.5,-1.5,0,0,0,0)
  331.                         T.W(rleg,rlbrick,0,-.5,0,0,0,0)
  332.                 elseif a == 0 then
  333.                         rs.Parent = rtorso
  334.                         rw.Parent = nil
  335.                         rabrick:Destroy() rabrick = nil
  336.                 elseif a == -1 then
  337.                         rhw.Parent = nil
  338.                         rh.Parent = rtorso
  339.                         rlbrick:Destroy() rlbrick = nil
  340.                 end
  341.         end
  342.         , ["L"] = function(a)
  343.                 if a == 1 then
  344.                         labrick = T.P(1,1,1,"Dark stone grey",1,false,false)
  345.                         lw = T.W(labrick,rtorso,-1.5,.5,0,0,0,0)
  346.                         T.W(larm,labrick,0,-.5,0,0,0,0)
  347.                 elseif a == 2 then
  348.                         llbrick = T.P(1,1,1,"Dark stone grey",1,false,false)
  349.                         lhw = T.W(llbrick,rtorso,-.5,-1.5,0,0,0,0)
  350.                         T.W(lleg,llbrick,0,-.5,0,0,0,0)
  351.                 elseif a == 0 then
  352.                         ls.Parent = rtorso
  353.                         lw.Parent = nil
  354.                         labrick:Destroy() labrick = nil
  355.                 elseif a == -1 then
  356.                         lhw.Parent = nil
  357.                         lh.Parent = rtorso
  358.                         llbrick:Destroy() llbrick = nil
  359.                 end
  360.         end
  361. }
  362.  
  363. cfn,ang = CFrame.new,CFrame.Angles
  364. function spaas(position,radius,number,number2,color)
  365.         mode = Instance.new("Model",m)
  366.  
  367.         for i = 1,number2 do
  368.                 local pos = position+v3n(mr(-radius,radius),mr(-radius,radius),mr(-radius,radius))
  369.                 local mag = (position-pos).magnitude
  370.  
  371.                 local col = color or 'Toothpaste'
  372.                 local laz = T.P(.1,mag,.1,col,0,false,true,mode)
  373.  
  374.                 T.FM(laz,'cylinder',.3,1,.3)
  375.                 laz.CFrame = (cfn(position,pos)*cfn(0,0,-mag/2))*ang(math.pi/2,0,0)
  376.  
  377.                 cframe = (laz.CFrame*cfn(0,-mag/2,0)).p
  378.                 pos2 = cframe+v3n(mr(-radius,radius),mr(-radius,radius),mr(-radius,radius))
  379.                 mag2 = (cframe-pos2).magnitude
  380.                 local laz2 = T.P(.1,mag2,.1,col,0,false,true,mode)
  381.                 T.FM(laz2,'cylinder',.3,1,.3)
  382.                 laz2.CFrame = (cfn(cframe,pos2)*cfn(0,0,-mag2/2))*ang(math.pi/2,0,0)
  383.  
  384.                 previo = laz2
  385.                 for i = 1,number do
  386.                         cframe = (previo.CFrame*cfn(0,-mag/2,0)).p
  387.                         pos2 = cframe+v3n(mr(-radius,radius),mr(-radius,radius),mr(-radius,radius))
  388.                         mag2 = (cframe-pos2).magnitude
  389.  
  390.                         local laz2 = T.P(.1,mag2,.1,col,0,false,true,mode)
  391.                         T.FM(laz2,'cylinder',.3,1,.3)
  392.                         laz2.CFrame = (cfn(cframe,pos2)*cfn(0,0,-mag2/2))*ang(math.pi/2,0,0)
  393.  
  394.                         previo = laz2
  395.                 end
  396.  
  397.         end
  398.         debris:AddItem(mode,.1)
  399.         return mode
  400. end
  401.  
  402. function lightning(startpos,endpos,times,offse,livetime,col)
  403. local curpos = startpos
  404. for i = 1,times do
  405.         mag = (startpos-endpos).magnitude offs = {-offse,offse}
  406.         offset = v3n(offs[mr(1,2)],offs[mr(1,2)],offs[mr(1,2)])
  407.         laz = T.P(.1,.1,mag/times,col,0,false,true,m)
  408.         apos = (cfn(curpos,endpos)*cfn(0,0,-mag/times)).p+offset
  409.         if times == i then
  410.                 mag2 = (curpos-endpos).magnitude
  411.                 laz.Size = v3n(.1,.1,mag2)
  412.                 laz.CFrame = cfn(curpos,endpos)*cfn(0,0,-mag2/2)
  413.         else
  414.                 laz.CFrame = cfn(curpos,apos)*cfn(0,0,-mag/times/2)
  415.         end
  416.         curpos = laz.CFrame*cfn(0,0,-mag/times/2).p debris:AddItem(laz,livetime)
  417. end
  418. end
  419.  
  420. ------MESHIDS---
  421. meshids = {["penguin"] = 15853464, ["ring"] = 3270017,
  422. ["spike"] = 1033714,["cone"] = 1082802,["crown"] = 20329976,["crossbow"] = 15886761,
  423. ["cloud"] = 1095708,["mjolnir"] = 1279013,["diamond"] = 9756362, ["hand"] = 37241605,
  424. ["fist"] = 65322375,["skull"] = 36869983,["totem"] = 35624068,["spikeb"] = 9982590,["dragon"] = 58430372,["fish"] = 31221717, ["coffee"] = 15929962,["spiral"] = 1051557,
  425. ["ramen"] = 19380188,["lightning"] = 72583597,["bullet"]=2697549,['cheese'] = 1090700,["pan"] = 24342877,["ketchup"] = 29690481,
  426. ["duck"] = 9419831,["unicorn"]=84003494,["luatophat"] = 42157240,["rooster"] = 24101267}---some meshids
  427. textureids = {["cone"] = 1082804,["rainbow"] = 28488599,["fish"] = 31221733, ["coffee"] = 24181455,["monster"] = 33366441,["ramen"] = 19380153,
  428. ["cheese"] = 1090703,['rooster'] = 24258160}
  429.  
  430.  
  431. function AddTag(object,tagname)        local tag = Instance.new("BoolValue",object) tag.Name = tagname return tag end
  432. function CheckTag(object,tagname) local found = object:FindFirstChild(tagname) if found then return found else return _ end end
  433. function RemoveTag(object,tagname) local found = CheckTag(object,tagname) if found then found:Remove() end end
  434.  
  435. waitbp = function(a,r) while (a.Parent.Position-a.position).magnitude > r do wait() end end
  436.  
  437. function FindGround(position,radius,ignore)
  438.         if ignore then
  439.                 ig = ignore table.insert(ig,m)
  440.         else ig = {m}
  441.         end
  442.         local ray = Ray.new(position,Vector3.FromNormalId(Enum.NormalId.Bottom)*radius)
  443.         local obj,pos2 = Workspace:FindPartOnRayWithIgnoreList(ray,ig)
  444.         if obj and pos2 then return obj,pos2 else return nil end
  445. end
  446.  
  447. function calcp(a,b) --- Direction CFrame
  448.         return cfn(a,v3n(b.x,a.y,b.z))
  449. end
  450.  
  451. --------ANIMATING FUNCTION--------
  452. tw = function(Weld, Stop, Step,a)
  453. local func = function()
  454.         local Start = Weld.C0
  455.         local X1, Y1, Z1 = Start:toEulerAnglesXYZ()
  456.         local Stop = Stop
  457.         local X2, Y2, Z2 = Stop:toEulerAnglesXYZ()
  458.        
  459.         for i = 0, 1, Step or .1 do
  460.                 Weld.C0 = CFrame.new( (Start.p.X * (1 - i)) + (Stop.p.X * i),
  461.                                 (Start.p.Y * (1 - i)) + (Stop.p.Y * i),
  462.                                 (Start.p.Z * (1 - i)) + (Stop.p.Z * i)) * CFrame.fromEulerAnglesXYZ(
  463.                                 (X1 * (1 - i)) + (X2 * i), (Y1 * (1 - i)) + (Y2 * i),
  464.                                 (Z1 * (1 - i)) + (Z2 * i) )
  465.                 wait()
  466.         end
  467.        
  468.         Weld.C0 = Stop
  469. end
  470. if a then T.C(function() func() end) else func() end
  471. end
  472. ------------------------------------
  473.  
  474. function weldall(q)
  475. if q == 1 then a,b = 1,2 else a,b = -1,0 end
  476. for i = a,b do lock.R(i) lock.L(i) end
  477. end
  478. function FindPlayers(a,b,c) --- Finds Players near a part
  479. local list = {}
  480. for i,v in pairs(Workspace:children()) do
  481.         if v:IsA("Model") then
  482.                 for _,q in pairs(v:children()) do
  483.                         if q:IsA("Humanoid") then
  484.                         if q.Health > -1 then
  485.                                 if c and q.Parent ~= char then
  486.                                         if (q.Torso.Position-a).magnitude < b then
  487.                                                 table.insert(list,v)
  488.                                         end
  489.                                 elseif not c then
  490.                                         if (q.Torso.Position-a).magnitude < b then
  491.                                                 table.insert(list,v)
  492.                                         end
  493.                                 end
  494.                         end
  495.                         end
  496.                 end
  497.         end
  498. end
  499. return list
  500. end
  501. end
  502.  
  503. rweld = _
  504. faketorso = _
  505. function faketor()
  506.         if rtorso == torso then
  507.                 torso.Transparency = 1
  508.                 faketorso = T.P(2,2,1,'Really black',0,false,false,char) faketorso.Name = 'Fakey'
  509.                 rweld = T.W(faketorso,torso,0,0,0,0,0,0)
  510.                 rtorso = faketorso
  511.                 for i,v in pairs({lh,ls,rh,rs}) do v.Part0 = rtorso end
  512.         elseif rtorso ~= torso then
  513.                 rtorso = torso
  514.                 for i,v in pairs({lh,ls,rh,rs}) do v.Part0 = rtorso end
  515.                 faketorso:Remove()
  516.                 rweld:Remove()
  517.                 torso.Transparency = 0
  518.         end
  519. end
  520. faketor()
  521.  
  522. hop = Instance.new("HopperBin",ply.Backpack)
  523. hop.Name = name
  524.  
  525. hdl = T.P(.25,2.5,.25,'Really red',0,false,false) T.FM(hdl,'cylinder',1,1,1)
  526. hw = T.W(hdl,rarm,0,-1,0,-math.pi/2,math.pi/2,0)
  527.  
  528. p = T.P(.4,.5,.4,'Really black',0,false,false)
  529. T.W(p,hdl,0,-1.25,0,0,0,0)
  530.  
  531. p2 = T.P(.1,.4,.1,'Really red',0,false,false) T.FM(p2,'cylinder',1,1,1)
  532. w = T.W(p2,p,.15,-.2,0,0,0,md(40)) w.C1 = w.C1*cfn(0,-.18,0)
  533. p22 = T.P(.1,.1,.11,'Black',0,false,false) T.FM(p22,'cylinder',1.01,.5,1.01)
  534. T.W(p22,p2,0,-.1,0,0,0,0)
  535.  
  536. p2 = T.P(.1,.4,.1,'Really red',0,false,false) T.FM(p2,'cylinder',1,1,1)
  537. w = T.W(p2,p,-.15,-.2,0,0,0,md(-40)) w.C1 = w.C1*cfn(0,-.18,0)
  538. p22 = T.P(.1,.1,.11,'Black',0,false,false) T.FM(p22,'cylinder',1.01,.5,1.01)
  539. T.W(p22,p2,0,-.1,0,0,0,0)
  540.  
  541. p3 = T.P(.5,1,.3,'Really red',0,false,false) T.FM(p3,'block',1,1,1)
  542. T.W(p3,hdl,0,1.25,0,0,0,0)
  543.  
  544. p32 = T.P(.3,1,.3,'Really red',0,false,false,m,'wedge')
  545. T.W(p32,p3,-.4,0,0,0,math.pi/2,0)
  546.  
  547. p32 = T.P(.3,1,.3,'Really red',0,false,false,m,'wedge')
  548. T.W(p32,p3,.4,0,0,0,-math.pi/2,0)
  549.  
  550. p4 = T.P(.4,.9,.2,'Really black',0,false,false)
  551. T.W(p4,p3,0,0,.15,0,0,0)
  552. p4 = T.P(.4,.9,.2,'Really black',0,false,false)
  553. T.W(p4,p3,0,0,-.15,0,0,0)
  554.  
  555. blade = T.P(.5,4,.5,'Really black',0,false,false) T.FM(blade,'block',1,1,.3)
  556. T.W(blade,p3,0,2.5,0,0,0,0)
  557.  
  558. tip1 = T.P(.5,1,.25,'Really black',0,false,false) T.FM(tip1,'wedge',.3,1,1)
  559. T.W(tip1,blade,-.25/2,2.5,0,0,math.pi/2,0)
  560.  
  561. tip1 = T.P(.5,1,.25,'Really black',0,false,false) T.FM(tip1,'wedge',.3,1,1)
  562. T.W(tip1,blade,.25/2,2.5,0,0,-math.pi/2,0)
  563.  
  564. lock.R(1) lock.L(1)
  565.  
  566. function retur()
  567.  
  568. if neck2 then
  569.         tw(neck2,cfn()*ang(0,md(-75),0),.1,'')
  570. end
  571.  
  572. tw(rweld,cfn()*ang(0,md(75),0),.1,'')
  573. tw(hw,cfn()*ang(math.pi/2,0,0),.1,'')
  574. tw(lw,cfn()*ang(md(-30),0,md(90)),.1,'')
  575. tw(rw,cfn()*ang(md(-130),md(30),0))
  576.  
  577. if neck2 then necko(0) end
  578.  
  579. end
  580. retur()
  581.  
  582. touch = T.P(.5,5,.5,'Really black',1,false,false)
  583. T.W(touch,blade,0,.5,0,0,0,0)
  584.  
  585. T.C(function()
  586. while wait(3) do
  587.         for i = 2.5,-2.5,-5/10 do
  588.                 spaas((touch.CFrame*cfn(0,i,0)).p,1,1,1,'Really black')
  589.                 wait()
  590.         end
  591. end end)
  592.  
  593. function blast()
  594. local con = touch.Touched:connect(function(hit) local hum = damage(hit.Parent,10,.1)
  595. if hum then if not CheckTag(hum,'t') then local t = AddTag(hum,'t')
  596.         T.C(function() local norm = hum.WalkSpeed hum.WalkSpeed = 0 wait(2)
  597.         hum.WalkSpeed = norm t:Destroy() end)
  598. end
  599. end
  600. end)
  601.         tw(rweld,cfn()*ang(0,md(-80),0),.1,'')
  602.         tw(hw,cfn(0,-1.5,0)*ang(math.pi/2,md(90),0),.1,'')
  603.         tw(rw,cfn()*ang(md(-90),md(90),0))
  604.         con:disconnect()
  605.         retur()
  606. end
  607.  
  608. function slash()
  609. local con = touch.Touched:connect(function(hit) local hum = damage(hit.Parent,30,.1)
  610. if hum then
  611.         hum.Torso.Velocity = calcp(torso.Position,hum.Torso.Position).lookVector*100
  612.         T.C(function() hum.Sit = true wait(1) hum.Sit = false end)
  613. end
  614.  
  615. end)
  616. ---ATTACK---
  617. tw(hw,cfn()*ang(math.pi/2,md(40),0),.1,'')
  618. tw(rweld,cfn()*ang(0,md(-50),0),.1,'')
  619. tw(rw,cfn()*ang(md(-90),md(-40),0),.1,'')
  620. tw(lw,cfn()*ang(0,0,md(30)))
  621. tw(rw,cfn()*ang(md(-110),md(85),0),.1,'')
  622. tw(hw,cfn(0,-1,0)*ang(math.pi/2,md(70),0),1.,'')
  623. tw(rweld,cfn()*ang(0,md(90),0))
  624. con:disconnect()
  625. retur()
  626. end
  627.  
  628. function suprai(mouse) if not mouse.Target then return end
  629.         tw(lw,cfn()*ang(md(-160),md(30),0))
  630.         char:MoveTo(mouse.hit.p)
  631.         retur()
  632. end
  633.  
  634. function fireball() cf = lw.C0
  635.         tw(lw,cf*ang(0,md(40),0))
  636.         local p = T.P(1,1,1,'Really red',0,false,false) T.FM(p,'sphere',1,1,1)
  637.         T.F(p,1,1,'Silver','Flame reddish orange')
  638.         wl = T.W(p,larm,0,-1,0,0,0,0)
  639.         tw(lw,cf*ang(0,md(-20),0),1/3)
  640.         wl:Destroy()
  641.         p.Touched:connect(function(hit) local hum = damage(hit.Parent,20,1)
  642.                 if hum then
  643.                         local ef = T.P(1,1,1,'Flame reddish orange',0,false,true) local msh = T.FM(ef,'skull',1,1,1)
  644.                         ef.CFrame = cfn(p.Position)
  645.                         p:Destroy()
  646.                         for i = 0,1,.1 do ef.Transparency = i msh.Scale = v3n(i*30,i*30,i*30) wait() end
  647.                         if not CheckTag(hum,'o') then local t = AddTag(hum,'o')
  648.                        
  649.                         T.C(function() local waiting = false local speed = hum.WalkSpeed  hum.WalkSpeed = -math.abs(speed) waiting = true
  650.                         T.C(function() wait(5) waiting = false end)
  651.                         while waiting do for i = 1,5 do
  652.                                 local p = T.P(1,1,1,'Black',0,false,true) p.CFrame = hum.Torso.CFrame*cfn(mr(-5,5),mr(-5,5),mr(-5,5))
  653.                                 T.C(function() fade(p,0,1,.1) p:Destroy() end)
  654.                                 end
  655.                                 wait(.5)
  656.                         end
  657.                         hum.WalkSpeed = math.abs(speed)
  658.                         t:Destroy()
  659.                         end)
  660.                        
  661.                 end
  662.                 ef:Destroy()
  663.                 end
  664.         end)
  665.        
  666.         Instance.new("BodyForce",p).force = torso.CFrame.lookVector*60+v3n(0,p:GetMass()*floatforce,0)
  667.         debris:AddItem(p,3)
  668.         tw(lw,cf)
  669. end
  670.  
  671. neck2 = _
  672. function necko(a) if a == 1 then
  673.         neck2 = T.W(char.Head,faketorso,0,1.5,0,0,0,0) normposn2 = neck2.C0
  674. elseif a == 0 then
  675.         neck2:Remove() neck2 = _
  676. end end
  677.  
  678.  
  679. function BEWM() lock.L(1) lock.R(1)
  680.         tw(rweld,cfn(),.1,'')
  681.         tw(lhw,cfn(0,1,0),.1,'')
  682.         tw(hw,cfn(0,-1,0)*ang(0,md(45),0),.1,'')
  683.         tw(rw,cfn(0,.7,0)*ang(md(-90),md(-40),0),.1,'')
  684.         tw(lw,cfn(0,.7,0)*ang(md(-90),md(40),0))
  685.        
  686.         local rcf,lcf = rw.C0,lw.C0
  687.        
  688.         necko(1)
  689.         tw(rweld,cfn(0,-5,0),.1,'')
  690.         tw(rw,rcf*ang(md(-50),0,0),.1,'')
  691.         tw(lw,lcf*ang(md(-50),0,0),.1,'')
  692.         tw(neck2,cfn(0,0,-.3)*ang(md(-30),0,0))
  693.  
  694.         tw(hw,cfn(0,-1,0)*ang(0,0,md(50)),.1,'')
  695.         tw(rw,cfn(0,.1,0)*ang(md(-30),md(-20),0),.1,'')
  696.         tw(lw,lcf*ang(md(30),0,0),.1,'')
  697.         tw(rweld,cfn(),.1,'')
  698.         tw(neck2,cfn(0,0,.3)*ang(md(30),0,0))
  699.         retur()
  700. end
  701.  
  702. klist = {
  703. {'f',function() blast() end};
  704. {'g',function(a) suprai(a) end};
  705. {'q',function() fireball() end};
  706. {'e',function() BEWM() end};
  707. }
  708.  
  709. hop.Selected:connect(function(mouse)
  710.         mouse.Button1Up:connect(function() holding = false end)
  711.         mouse.KeyUp:connect(function(a) for i,v in pairs(klist) do if a == v[1] and v[3] ~= nil then holding = false end end end)
  712.         mouse.KeyDown:connect(function(key)
  713.                 if attacking then return end
  714.                 for i,v in pairs(klist) do
  715.                         if key == v[1] then attacking = true v[2](mouse) attacking = false end
  716.                 end
  717.         end)
  718.         mouse.Button1Down:connect(function()
  719.                 if attacking then return end
  720.                 attacking = true slash(mouse) attacking = false end)
  721. end)
  722. --mediafire
  723. print 'Hello world!'
Add Comment
Please, Sign In to add comment