Advertisement
mathmasterphil

Genchei

Feb 28th, 2015
297
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.36 KB | None | 0 0
  1. ply = game.Players.mathmasterphil
  2. char = ply.Character
  3. torso = char.Torso
  4. rs = torso["Right Shoulder"]
  5. rarm = char["Right Arm"]
  6. rw = Instance.new("Weld")
  7. attacking = false
  8.  
  9. function lock(a)
  10. if a == 1 then
  11. rw.Parent = torso
  12. rw.C0,rw.C1 = rs.C0,rs.C1
  13. rw.Part0,rw.Part1 = rs.Part0,rs.Part1
  14. rs.Parent = nil
  15. elseif a == 0 then
  16. rs.Parent = torso
  17. rw.Parent = nil
  18. end
  19. end
  20.  
  21. function infect(hit)
  22. for i,v in pairs(hit.Parent:GetChildren()) do
  23. if v:IsA("Humanoid") then
  24. if v:FindFirstChild("poison") == nil then
  25. Instance.new("BoolValue",v).Name = "poison"
  26.  
  27. coroutine.resume(coroutine.create(function()
  28. for i = 1,30 do
  29. wait()
  30. v.Health = v.Health - 1
  31.  
  32. local c = p1:Clone()
  33. c.Parent = m
  34. c.Size = Vector3.new(0.5,0.5,0.5)
  35. c.CFrame = v.Torso.CFrame + Vector3.new(math.random(-3,3),math.random(-3,3),math.random(-3,3))
  36. c.Anchored = true
  37. c.Transparency = 0.5
  38. c.Color = Color3.new(0,0.3,0)
  39.  
  40. delay(0.1,function()
  41. for i = 0.5,1,0.05 do
  42. wait()
  43. c.Transparency = i
  44. end
  45. c:Remove()
  46. end)
  47.  
  48. end
  49. v:FindFirstChild("poison"):Remove()
  50. end))
  51.  
  52. end
  53. end
  54. end
  55. end
  56.  
  57. m = Instance.new("Model",char)
  58.  
  59. hdl = Instance.new("Part",m)
  60. hdl.TopSurface,hdl.BottomSurface = 0,0
  61. hdl.formFactor = "Custom"
  62. hdl.CanCollide = false
  63. hdl.Size = Vector3.new(0.3,1.5,0.3)
  64. hdl.Color = Color3.new(0,5,0)
  65.  
  66. p1 = hdl:Clone()
  67. p1.Parent = m
  68. p1.Size = Vector3.new(1,4,0.2)
  69. p1.Color = Color3.new(0,0,0)
  70. p1.CanCollide = True
  71.  
  72. w = Instance.new("Weld",m)
  73. w.Part0,w.Part1 = p1,hdl
  74. w.C1 = CFrame.new(0,hdl.Size.y/2+p1.Size.y/2-0.05,0)
  75.  
  76. for i = -p1.Size.y/2,p1.Size.y/2,0.25 do
  77. c = Instance.new("WedgePart",m)
  78. c.TopSurface,c.BottomSurface = 0,0
  79. c.formFactor = "Custom"
  80. c.Parent = m
  81. c.Size = Vector3.new(0.1,0.1,0.2)
  82. c.BrickColor = BrickColor.new("Royal purple")
  83. c.CanCollide = True
  84.  
  85. w = Instance.new("Weld",m)
  86. w.Part0,w.Part1 = c,p1
  87. w.C1 = CFrame.new(-p1.Size.x/2-c.Size.x/2+0.05,i*0.95,0) * CFrame.Angles(0,math.pi/2,0)
  88. end
  89.  
  90.  
  91. p2 = Instance.new("WedgePart",m)
  92. p2.TopSurface,p2.BottomSurface = 0,0
  93. p2.formFactor = "Custom"
  94. p2.Size = Vector3.new(0.2,1,2)
  95. p2.Color = p1.Color
  96. p2.CanCollide = True
  97.  
  98.  
  99. w = Instance.new("Weld",m)
  100. w.Part0,w.Part1 = p2,p1
  101. w.C1 = CFrame.new(0,p1.Size.y/2+p2.Size.z/2-0.05,0) * CFrame.Angles(math.pi/2,0,math.pi/2)
  102.  
  103. for i = -p2.Size.z/2+0.25,p2.Size.z/2-0.25,0.2 do
  104. if i ~= 2 then
  105.  
  106. c = Instance.new("WedgePart",m)
  107. c.TopSurface,c.BottomSurface = 0,0
  108. c.formFactor = "Custom"
  109. c.Parent = m
  110. c.Size = Vector3.new(0.2,0.1,0.2)
  111. c.BrickColor = BrickColor.new("Royal purple")
  112. c.CanCollide = True
  113.  
  114. w = Instance.new("Weld",m)
  115. w.Part0,w.Part1 = c,p2
  116. w.C1 = CFrame.new(0,i/2+0.2,i+0.18) * CFrame.Angles(math.pi/2-math.rad(22),0,0)
  117.  
  118. end
  119. end
  120.  
  121. hw = Instance.new("Weld",m)
  122. hw.Part0,hw.Part1 = hdl,rarm
  123. hw.Name = "hw"
  124. hw.C1 = CFrame.new(0,-rarm.Size.y/2-0.15,0) * CFrame.Angles(math.pi/2,-math.pi/2,math.pi)
  125.  
  126. for i,v in pairs(m:GetChildren()) do
  127. if v:IsA("BasePart") and v ~= hdl then
  128. v.Touched:connect(damage)
  129. v.Touched:connect(infect)
  130. end
  131. end
  132.  
  133. hdl.Name = "Handle"
  134.  
  135.  
  136. h = Instance.new("HopperBin",ply.Backpack)
  137. h.Name = "Genchei"
  138.  
  139. s = 20
  140.  
  141. function ang(x,y,z)
  142. return CFrame.Angles(math.rad(x)*s,math.rad(y)*s,math.rad(z)*s)
  143. end
  144.  
  145. hold = false
  146. function lightning(mouse)
  147. attacking = true
  148. r = 4
  149. if mouse.Target ~= nil then
  150. c = Instance.new("Part",m)
  151. c.formFactor = "Custom"
  152. c.Size = Vector3.new(3,0.5,3)
  153. c.Anchored = true
  154. c.TopSurface,c.BottomSurface = 0,0
  155. c.CanCollide = false
  156. c.BrickColor = BrickColor.new("Royal purple")
  157.  
  158. Instance.new("CylinderMesh",c)
  159. hold = true
  160. while hold == true do
  161. wait()
  162. c.CFrame = CFrame.new(mouse.hit.p)
  163. end
  164.  
  165. for i = 1,90,s do
  166. wait()
  167. rw.C0 = rw.C0 * ang(0,0,1)
  168. end
  169.  
  170. r = 5
  171. for i = 1,360,60 do
  172. wait()
  173. c2 = Instance.new("Part",c)
  174. c2.Size = Vector3.new(1,5,1)
  175. c2.CanCollide = false
  176. c2.Touched:connect(damage)
  177. c2.TopSurface,c2.BottomSurface = 0,0
  178. c2.Transparency = 1
  179. c2.Color = Color3.new(1,1,1)
  180. c2.CFrame = c.CFrame + Vector3.new(math.cos(math.rad(i))*r,0,math.sin(math.rad(i))*r)
  181. c2.CFrame = CFrame.new(c2.Position,c.Position)
  182. c2.Anchored = true
  183.  
  184. Instance.new("FileMesh",c2).MeshId = "rbxasset://fonts/sword.mesh"
  185.  
  186. for i = 1,0.5,-0.1 do
  187. wait()
  188. c2.Transparency = i
  189. end
  190.  
  191. end
  192.  
  193. for i = 1,50 do
  194. wait()
  195. local p = Instance.new("Part",m)
  196. p.Size = Vector3.new(1,50,1)
  197. p.Anchored = true
  198. p.CFrame = c.CFrame + Vector3.new(math.random(-r,r),p.Size.y/2-1,math.random(-r,r))
  199. p.CanCollide = false
  200. p.BrickColor = BrickColor.new("Royal purple")
  201. Instance.new("CylinderMesh",p)
  202.  
  203. for i,v in pairs(Workspace:GetChildren()) do
  204. if v:IsA("Model") and v ~= char then
  205. for i,o in pairs(v:GetChildren()) do
  206. if o:IsA("Humanoid") then
  207. if (o.Torso.Position-(p.CFrame * CFrame.new(0,-p.Size.y/2,0)).p).magnitude <= 10 then
  208. o.Health = o.Health - 1.25
  209.  
  210. end
  211. end
  212. end
  213. end
  214. end
  215.  
  216. delay(0,function()
  217. for i = 0,1,0.1 do
  218. wait()
  219. p.Transparency = i
  220. end
  221. p:Remove()
  222. end)
  223. end
  224.  
  225. for i = 1,90,s do
  226. wait()
  227. rw.C0 = rw.C0 * ang(0,0,-1)
  228. end
  229.  
  230. c:Remove()
  231. end
  232. attacking = false
  233. end
  234.  
  235.  
  236. function wave()
  237. attacking = true
  238. s = 10
  239.  
  240. for i = 1,140,s do
  241. wait()
  242. rw.C0 = rw.C0 * ang(0,0,-1)
  243. end
  244. s = 20
  245. for i = 1,220,s do
  246. wait()
  247. rw.C0 = rw.C0 * ang(0,0,1)
  248. end
  249.  
  250. bp = Instance.new("BodyPosition",torso)
  251. bp.maxForce = Vector3.new() * math.huge
  252. bp.position = torso.Position + Vector3.new(0,50,0)
  253.  
  254. while (torso.Position-bp.position).magnitude > 1 do wait() end
  255.  
  256. bp.position = bp.position - Vector3.new(0,50,0)
  257.  
  258. while (torso.Position-bp.position).magnitude > 10 do wait() end
  259. bp:Remove()
  260.  
  261. for i = 1,(220-140)+80,s do
  262. wait()
  263. rw.C0 = rw.C0 * ang(0,0,-1)
  264. end
  265.  
  266. r = 4
  267. coroutine.resume(coroutine.create(function()
  268.  
  269. for o = 2,16,2 do
  270. for i = 1,360,10 do
  271. local c = p1:Clone()
  272. c.Parent = m
  273. c.Size = Vector3.new(1,o,1)
  274. c.Anchored = true
  275. c.CFrame = CFrame.new((p2.CFrame * CFrame.new(0,p2.Size.y/2,0)).p) + Vector3.new(math.cos(math.rad(i))*r,-c.Size.y,math.sin(math.rad(i))*r)
  276.  
  277. coroutine.resume(coroutine.create(function()
  278. for i = 1,c.Size.y do
  279. wait()
  280. c.CFrame = c.CFrame + Vector3.new(0,1,0)
  281. end
  282. for i = 1,c.Size.y do
  283. wait()
  284. c.CFrame = c.CFrame - Vector3.new(0,1,0)
  285. end
  286. c:Remove()
  287. end))
  288.  
  289. end
  290. r = r+3
  291. end
  292.  
  293. end))
  294.  
  295. for i = 1,80,s do
  296. wait()
  297. rw.C0 = rw.C0 * ang(0,0,1)
  298. end
  299.  
  300. attacking = false
  301. end
  302.  
  303. function Guard()
  304. r = 20
  305.  
  306. h = 30
  307.  
  308. for o = h,100,10 do
  309. for i = 0,360,30 do
  310. local c = p1:Clone()
  311. c.Parent = Workspace
  312. c.Size = Vector3.new(8,o,8)
  313. c.Anchored = true
  314. c.Material = "Slate"
  315. c.CanCollide = true
  316. c.BrickColor = BrickColor.new("Royal purple")
  317. c.CFrame = torso.CFrame + Vector3.new(math.cos(math.rad(i))*r,0,math.sin(math.rad(i))*r) - Vector3.new(0,c.Size.y,0)
  318.  
  319. coroutine.resume(coroutine.create(function()
  320. for i = 1,c.Size.y,2 do
  321. wait()
  322. c.CFrame = c.CFrame + Vector3.new(0,2,0)
  323. end
  324.  
  325. delay(3,function()
  326. for i = 1,c.Size.y do
  327. wait()
  328. c.CFrame = c.CFrame - Vector3.new(0,1,0)
  329. end
  330. c:Remove()
  331. end)
  332.  
  333.  
  334. end))
  335.  
  336. end
  337. r = r+10
  338. end
  339. end
  340.  
  341. function Raise()
  342. local c = hdl:Clone()
  343. c.Parent = m
  344. c.CanCollide = true
  345. c.Material = "Slate"
  346. c.BrickColor = BrickColor.new("Royal purple")
  347. c.Size = Vector3.new(10,50,10)
  348. c.Anchored = true
  349. c.CFrame = torso.CFrame - Vector3.new(0,c.Size.y/2,0)
  350.  
  351. for i = 1,c.Size.y-3 do
  352. wait()
  353. c.CFrame = c.CFrame + Vector3.new(0,1,0)
  354. end
  355. end
  356.  
  357. function slash(a)
  358. attacking = true
  359. for i = 1,70,s do
  360. wait()
  361. rw.C0 = rw.C0 * ang(0,1,0)
  362. end
  363. for i = 1,90,s do
  364. wait()
  365. rw.C0 = rw.C0 * ang(0,0,-1)
  366. end
  367. for i = 1,90,s do
  368. wait()
  369. rw.C0 = rw.C0 * ang(0,0,1)
  370. end
  371. for i = 1,70,s do
  372. wait()
  373. rw.C0 = rw.C0 * ang(0,-1,0)
  374. end
  375. attacking = false
  376. end
  377.  
  378. function wield(a)
  379. s = 17
  380. if a == 1 then
  381. for i = 1,85,s do
  382. wait()
  383. rw.C0 = rw.C0 * ang(-0.1,0,1)
  384. end
  385. elseif a == 0 then
  386. for i = 1,85,s do
  387. wait()
  388. rw.C0 = rw.C0 * ang(0.1,0,-1)
  389. end
  390. end
  391. s = 20
  392. end
  393.  
  394. function freeze(m)
  395. local trg = m.Target
  396. if (trg==nil) then return end
  397. local phit = game.Players:findFirstChild(trg.Parent.Name)
  398. if (phit~=nil) then
  399. if (phit==p) then return end
  400. local char = trg.Parent
  401. if (char:findFirstChild("Torso")==nil) then return end
  402. if (char:findFirstChild("fr_block")==nil) then
  403. local pa = Instance.new("Part")
  404. local bl = Instance.new("BlockMesh")
  405. bl.Parent = pa
  406. pa.Anchored = true
  407. pa.Name = "fr_block"
  408. pa.Transparency = 1
  409. pa.BrickColor = BrickColor.New("Royal purple")
  410. pa.FormFactor = "Custom"
  411. pa.Size = Vector3.new(6,7,6)
  412. pa.CFrame = char["Torso"].CFrame
  413. pa.Parent = char
  414. char.Humanoid.WalkSpeed = 0
  415. if (char.Humanoid.Health<char.Humanoid.MaxHealth/4) then
  416. char.Humanoid.Health = 0
  417. else
  418. char.Humanoid.Health = char.Humanoid.Health - char.Humanoid.MaxHealth/4
  419. end
  420. local g = char:GetChildren()
  421. for i = 1,#g do
  422. if (g[i]:IsA("Part")) then
  423. g[i].Anchored = true
  424. g[i].Reflectance = .3
  425. end
  426. end
  427. for i = 1,10 do
  428. pa.Transparency = pa.Transparency - .06
  429. pa.Reflectance = pa.Reflectance + .01
  430. wait(.01)
  431. end
  432. else
  433. if (phit~=nil) then
  434. local fr = char["fr_block"]
  435. local char = trg.Parent
  436. for i = 1,10 do
  437. fr.Transparency = fr.Transparency + .06
  438. fr.Reflectance = fr.Reflectance - .01
  439. wait(.01)
  440. end
  441. local g = char:GetChildren()
  442. for i = 1,#g do
  443. if (g[i]:IsA("Part")) then
  444. g[i].Anchored = false
  445. g[i].Reflectance = 0
  446. end
  447. end
  448. char.Humanoid.WalkSpeed = 16
  449. fr:remove()
  450. end
  451. end
  452. end
  453. end
  454.  
  455. function explode(m)
  456. local t = m.Hit.p
  457. local trg = m.Target
  458. if (trg==nil) then return end
  459. local e = Instance.new("Explosion")
  460. e.BlastRadius = 20
  461. e.BlastPressure = 20
  462. e.Position = t
  463. e.Parent = game.Workspace
  464. end
  465.  
  466. function fire(m)
  467. local trg = m.Target
  468. if (trg==nil) then return end
  469. local phit = game.Players:findFirstChild(trg.Parent.Name)
  470. if (phit~=nil) then
  471. local char = trg.Parent
  472. if (char:findFirstChild("Torso")==nil) then return end
  473. local f = Instance.new("Fire")
  474. f.Color = Color3.new(0,0,0)
  475. f.SecondaryColor = Color3.new(0,5,0)
  476. f.Parent = char.Torso
  477. f.Name = "BurnFire"
  478. coroutine.resume(coroutine.create(function()
  479. while (char.Humanoid.Health>0) do
  480. if (char.Humanoid.Health<2) then
  481. char.Humanoid.Health = 0
  482. char:BreakJoints()
  483. else
  484. char.Humanoid.Health = char.Humanoid.Health - 2
  485. end
  486. wait(.05)
  487. end
  488. end))
  489. end
  490. end
  491.  
  492. local rls = {nil, nil}
  493.  
  494. doArms=function(Com)
  495. if Com==true then
  496. Torso=p.Character.Torso
  497. RA=Torso:FindFirstChild("Right Shoulder")
  498. if RA==nil then
  499. return
  500. end
  501. LA=Torso:FindFirstChild("Left Shoulder")
  502. if LA==nil then
  503. return
  504. end
  505. rls[1]=Instance.new("Motor")
  506. local RightS = rls[1]
  507. RightS.Name="Right_Shoulder"
  508. RightS.C0=RA.C0
  509. RightS.C1=RA.C1
  510. RightS.Part0=RA.Part0
  511. RightS.Part1=RA.Part1
  512. RightS.MaxVelocity=.35
  513. RightS.Parent=Torso
  514. rls[2]=Instance.new("Motor")
  515. local LeftS = rls[2]
  516. LeftS.Name="Left_Shoulder"
  517. LeftS.C0=LA.C0
  518. LeftS.C1=LA.C1
  519. LeftS.Part0=LA.Part0
  520. LeftS.Part1=LA.Part1
  521. LeftS.MaxVelocity=.35
  522. LeftS.Parent=Torso
  523. RA.Parent=nil
  524. LA.Parent=nil
  525. RA.Part1=nil
  526. LA.Part1=nil
  527. else
  528. if (rls[1]==nil) or (rls[2]==nil) then return end
  529. local RightS = rls[1]
  530. local LeftS = rls[2]
  531. RightS.Part1=nil
  532. LeftS.Part1=nil
  533. RightS.Parent=nil
  534. LeftS.Parent=nil
  535. Torso=p.Character.Torso
  536. RA.Parent=Torso
  537. LA.Parent=Torso
  538. RA.Part1=nil
  539. LA.Part1=nil
  540. RA.Part1=p.Character["Right Arm"]
  541. LA.Part1=p.Character["Left Arm"]
  542. wait(.2)
  543. RA.Part0=Torso
  544. LA.Part0=Torso
  545. RA.Part1=p.Character["Right Arm"]
  546. LA.Part1=p.Character["Left Arm"]
  547. end
  548. end
  549.  
  550. function ReturnAngles()
  551. local RightS = rls[1]
  552. local LeftS = rls[2]
  553. RightS.DesiredAngle = 0
  554. LeftS.DesiredAngle = 0
  555. wait(1)
  556. doArms(false)
  557. end
  558.  
  559.  
  560. function kd(key,mouse)
  561. if attacking == false then
  562.  
  563. if key == "f" then lightning(mouse)
  564. elseif key == "g" then wave()
  565. elseif key == "r" then Guard()
  566. elseif key == "t" then Raise()
  567. elseif key == "z" then freeze(mouse)
  568. elseif key == "x" then explode(mouse)
  569. elseif key == "c" then fire(mouse)
  570.  
  571. end
  572.  
  573. end
  574. end
  575.  
  576. klist = {"f"}
  577.  
  578. function select(mouse)
  579. lock(1)
  580. wield(1)
  581.  
  582. mouse.KeyUp:connect(function(hit) for i,v in pairs(klist) do if hit == v then hold = false end end end)
  583. mouse.KeyDown:connect(function(key) kd(key,mouse) end)
  584. mouse.Button1Down:connect(function() if attacking == false then slash() end end)
  585. end
  586.  
  587. h.Selected:connect(select)
  588.  
  589. h.Deselected:connect(function() wield(0) lock(0) end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement