Advertisement
Junebrehq2222

Untitled

Jan 26th, 2020
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 40.32 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. do
  4. print("FE Compatibility code by Mokiros")
  5. script.Parent = Player.Character
  6.  
  7. --RemoteEvent for communicating
  8. local Event = Instance.new("RemoteEvent")
  9. Event.Name = "UserInput_Event"
  10.  
  11. --Fake event to make stuff like Mouse.KeyDown work
  12. local function fakeEvent()
  13. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  14. t.connect = t.Connect
  15. return t
  16. end
  17.  
  18. --Creating fake input objects with fake variables
  19. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  20. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  21. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  22. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  23. end}
  24. --Merged 2 functions into one by checking amount of arguments
  25. CAS.UnbindAction = CAS.BindAction
  26.  
  27. --This function will trigger the events that have been :Connect()'ed
  28. local function te(self,ev,...)
  29. local t = m[ev]
  30. if t and t._fakeEvent and t.Function then
  31. t.Function(...)
  32. end
  33. end
  34. m.TrigEvent = te
  35. UIS.TrigEvent = te
  36.  
  37. Event.OnServerEvent:Connect(function(plr,io)
  38. if plr~=Player then return end
  39. if io.isMouse then
  40. m.Target = io.Target
  41. m.Hit = io.Hit
  42. else
  43. local b = io.UserInputState == Enum.UserInputState.Begin
  44. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  45. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  46. end
  47. for _,t in pairs(CAS.Actions) do
  48. for _,k in pairs(t.Keys) do
  49. if k==io.KeyCode then
  50. t.Function(t.Name,io.UserInputState,io)
  51. end
  52. end
  53. end
  54. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  55. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  56. end
  57. end)
  58. Event.Parent = NLS([==[
  59. local Player = game:GetService("Players").LocalPlayer
  60. local Event = script:WaitForChild("UserInput_Event")
  61.  
  62. local UIS = game:GetService("UserInputService")
  63. local input = function(io,a)
  64. if a then return end
  65. --Since InputObject is a client-side instance, we create and pass table instead
  66. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  67. end
  68. UIS.InputBegan:Connect(input)
  69. UIS.InputEnded:Connect(input)
  70.  
  71. local Mouse = Player:GetMouse()
  72. local h,t
  73. --Give the server mouse data 30 times every second, but only if the values changed
  74. --If player is not moving their mouse, client won't fire events
  75. while wait(1/30) do
  76. if h~=Mouse.Hit or t~=Mouse.Target then
  77. h,t=Mouse.Hit,Mouse.Target
  78. Event:FireServer({isMouse=true,Target=t,Hit=h})
  79. end
  80. end]==],Player.Character)
  81. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  82. end
  83.  
  84. --Made by 112isaiah
  85. --NAMES THAT START WITH A NUMBER WILL NOT WORK!
  86. --Script is not local
  87. --PRESS CTRL-F AND FIND ASALTYSKID AND CHANGE IT TO YOUR USER NAME
  88.  
  89. wt = 0.05 s = script it = Instance.new v3 = Vector3.new c3 = Color3.new ud = UDim2.new cf = CFrame.new ca = CFrame.Angles pi = math.pi rd = math.rad
  90.  
  91. bc = BrickColor.new ab = math.abs de = math.deg ts = tostring tn = tonumber ti = table.insert tr = table.remove
  92.  
  93. cr = coroutine.resume cc = coroutine.create
  94.  
  95. asset = "http://www.roblox.com/asset/?id="
  96.  
  97. sr = string.reverse sl = string.lower su = string.upper
  98.  
  99. Serv = {} Serv.p = game:GetService(sr("sreyalP")) Serv.l = game:GetService(sr("gnithgiL"))
  100.  
  101. Serv.is = game:GetService(sr("ecivreStresnI")) if game:findFirstChild(sr("revreSkrowteN")) then Serv.ns = game:GetService(sr("revreSkrowteN")) else NetworkServer = nil end
  102.  
  103. Serv.sg = game:GetService(sr("iuGretratS")) Serv.sp = game:GetService(sr("kcaPretratS")) Serv.d = game:GetService(sr("sirbeD"))
  104.  
  105. Decs = {}
  106.  
  107. Decs.Crack = "49173398" Decs.Cloud = "1095708" Decs.Spike = "1033714" Decs.Rock = "1290033" Decs.Crown = "1323306"
  108.  
  109. function ft(tablez,item) if not tablez or not item then return nil end for i=1,#tablez do if tablez[i] == item then return i end end return nil end
  110.  
  111. function re(par,obj) if type(par) ~= "userdata" or type(obj) ~= "string" then return nil end if par:findFirstChild(obj) then par[obj]:Remove() end end
  112.  
  113. function pa(pa,sh,x,y,z,c,a,tr,re,bc2) local fp = nil if sh ~= "Wedge" and sh ~= "CornerWedge" then fp = it("Part",pa) fp.Shape = sh fp.formFactor = "Custom" elseif sh == "Wedge" then fp = it("WedgePart",pa) fp.formFactor = "Custom"
  114.  
  115. elseif sh == "CornerWedge" then fp = it("CornerWedgePart",pa) end fp.Size = v3(x,y,z) fp.CanCollide = c fp.Anchored = false fp.BrickColor = bc(bc2) fp.Transparency = tr fp.Reflectance = re fp.BottomSurface = 0
  116.  
  117. fp.TopSurface = 0 fp.CFrame = t.CFrame + Vector3.new(0,50,0) fp.Velocity = Vector3.new(0,10,0) fp:BreakJoints() return fp end
  118.  
  119. function clearit(tab) for xx=1,#tab do tab[xx]:Remove() end end
  120.  
  121. function weld(pa,p0,p1,x,y,z,a,b,c) local fw = it("Weld",pa) fw.Part0 = p0 fw.Part1 = p1 fw.C0 = cf(x,y,z) *ca(a,b,c) return fw end
  122.  
  123. function spm(ty,pa,ss) local sp = it("SpecialMesh",pa) sp.MeshType = ty sp.Scale = Vector3.new(ss,ss,ss) end function mbm(pa,sx,sy,sz) local bm = Instance.new("BlockMesh",pa) bm.Scale = Vector3.new(sx,sy,sz) end
  124.  
  125. function ra(mn,mx,dc) local tms = 1 if dc == nil then dc = 0 end if type(dc) == "number" and dc > 5 then dc = 5 end for zx=1,dc do tms = tms*10 end return math.random(mn*tms,mx*tms)/tms end
  126.  
  127.  
  128. p = Serv.p.NinjaFoxMasterR
  129.  
  130. bp = p.Backpack
  131.  
  132. pg = p.PlayerGui
  133.  
  134. c = p.Character
  135.  
  136. he = c.Head
  137.  
  138. t = c.Torso
  139.  
  140. hu = c.Humanoid
  141.  
  142. mou = nil
  143.  
  144. re(c,"Hand")
  145.  
  146. s = 2
  147.  
  148.  
  149.  
  150. --tool var
  151.  
  152. Equip = false
  153.  
  154. HTrans = 0
  155.  
  156. HRef = 0
  157.  
  158. HCol = "a"
  159.  
  160. LaserCol = "New Yeller"
  161.  
  162. LaserCol2 = "Really red"
  163.  
  164. LaserCol3 = "Alder"
  165.  
  166. Posing = "Follow"
  167.  
  168. Facing = "Owner"
  169.  
  170. Anim = {}
  171.  
  172. Anim.a = "None"
  173.  
  174. Anim.b = "None"
  175.  
  176. Anim.Welding = 0
  177.  
  178. local fingwide = 1.5*s
  179.  
  180. local finghei = 2.8
  181.  
  182. local tiphei = 2.55
  183.  
  184. handoffset = v3(5,18,-8)*s
  185.  
  186. bgx,bgy,bgz = -90,0,0
  187.  
  188. w = {}
  189.  
  190. Button = false
  191.  
  192. --
  193.  
  194. BlastMesh = it("FileMesh")
  195.  
  196. BlastMesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  197.  
  198. RingMesh = it("FileMesh")
  199.  
  200. RingMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  201.  
  202. RockMesh = it("FileMesh")
  203.  
  204. DiamondMesh = it("FileMesh")
  205.  
  206. DiamondMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
  207.  
  208.  
  209. m = Instance.new("Model",c) m.Name = "Hand"
  210.  
  211. Palm = pa(m,"Block",6*s,7*s,fingwide*2,true,false,HTrans,HRef,HCol) mbm(Palm,1,1,0.6)
  212.  
  213. local x,y,z = Palm.Size.x,Palm.Size.y,Palm.Size.z
  214.  
  215. bPoint1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  216.  
  217. Point1 = weld(bPoint1,Palm,bPoint1,-x/2+(fingwide/2),y/2,0,0,0,0)
  218.  
  219. pPoint1 = pa(m,"Block",fingwide,finghei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint1,0.9,1,0.9)
  220.  
  221. wPoint1 = weld(pPoint1,bPoint1,pPoint1,0,pPoint1.Size.y/2,0,0,0,0)
  222.  
  223. bPoint2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  224.  
  225. Point2 = weld(bPoint2,pPoint1,bPoint2,0,pPoint1.Size.y/2,0,0,0,0)
  226.  
  227. pPoint2 = pa(m,"Block",fingwide,finghei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint2,0.9,1,0.9)
  228.  
  229. wPoint2 = weld(pPoint2,bPoint2,pPoint2,0,pPoint1.Size.y/2,0,0,0,0)
  230.  
  231. bPoint3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  232.  
  233. Point3 = weld(bPoint3,pPoint2,bPoint3,0,pPoint2.Size.y/2,0,0,0,0)
  234.  
  235. pPoint3 = pa(m,"Block",fingwide,tiphei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint3,0.9,1,0.9)
  236.  
  237. wPoint3 = weld(pPoint3,bPoint3,pPoint3,0,pPoint3.Size.y/2,0,0,0,0)
  238.  
  239. bMid1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  240.  
  241. Mid1 = weld(bMid1,Palm,bMid1,-x/2+((fingwide/2)+((fingwide)*1)),y/2,0,0,0,0)
  242.  
  243. pMid1 = pa(m,"Block",fingwide,(finghei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid1,0.9,1,0.9)
  244.  
  245. wMid1 = weld(pMid1,bMid1,pMid1,0,pMid1.Size.y/2,0,0,0,0)
  246.  
  247. bMid2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  248.  
  249. Mid2 = weld(bMid2,pMid1,bMid2,0,pMid1.Size.y/2,0,0,0,0)
  250.  
  251. pMid2 = pa(m,"Block",fingwide,(finghei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid2,0.9,1,0.9)
  252.  
  253. wMid2 = weld(pMid2,bMid2,pMid2,0,pMid1.Size.y/2,0,0,0,0)
  254.  
  255. bMid3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  256.  
  257. Mid3 = weld(bMid3,pMid2,bMid3,0,pMid2.Size.y/2,0,0,0,0)
  258.  
  259. pMid3 = pa(m,"Block",fingwide,(tiphei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid3,0.9,1,0.9)
  260.  
  261. wMid3 = weld(pMid3,bMid3,pMid3,0,pMid3.Size.y/2,0,0,0,0)
  262.  
  263. bRing1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  264.  
  265. Ring1 = weld(bRing1,Palm,bRing1,-x/2+((fingwide/2)+((fingwide)*2)),y/2,0,0,0,0)
  266.  
  267. pRing1 = pa(m,"Block",fingwide,(finghei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing1,0.9,1,0.9)
  268.  
  269. wRing1 = weld(pRing1,bRing1,pRing1,0,pRing1.Size.y/2,0,0,0,0)
  270.  
  271. bRing2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  272.  
  273. Ring2 = weld(bRing2,pRing1,bRing2,0,pRing1.Size.y/2,0,0,0,0)
  274.  
  275. pRing2 = pa(m,"Block",fingwide,(finghei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing2,0.9,1,0.9)
  276.  
  277. wRing2 = weld(pRing2,bRing2,pRing2,0,pRing1.Size.y/2,0,0,0,0)
  278.  
  279. bRing3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  280.  
  281. Ring3 = weld(bRing3,pRing2,bRing3,0,pRing2.Size.y/2,0,0,0,0)
  282.  
  283. pRing3 = pa(m,"Block",fingwide,(tiphei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing3,0.9,1,0.9)
  284.  
  285. wRing3 = weld(pRing3,bRing3,pRing3,0,pRing3.Size.y/2,0,0,0,0)
  286.  
  287. bPinkie1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  288.  
  289. Pinkie1 = weld(bPinkie1,Palm,bPinkie1,-x/2+((fingwide/2)+((fingwide)*3)),y/2,0,0,0,0)
  290.  
  291. pPinkie1 = pa(m,"Block",fingwide,(finghei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie1,0.9,1,0.9)
  292.  
  293. wPinkie1 = weld(pPinkie1,bPinkie1,pPinkie1,0,pPinkie1.Size.y/2,0,0,0,0)
  294.  
  295. bPinkie2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  296.  
  297. Pinkie2 = weld(bPinkie2,pPinkie1,bPinkie2,0,pPinkie1.Size.y/2,0,0,0,0)
  298.  
  299. pPinkie2 = pa(m,"Block",fingwide,(finghei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie2,0.9,1,0.9)
  300.  
  301. wPinkie2 = weld(pPinkie2,bPinkie2,pPinkie2,0,pPinkie1.Size.y/2,0,0,0,0)
  302.  
  303. bPinkie3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  304.  
  305. Pinkie3 = weld(bPinkie3,pPinkie2,bPinkie3,0,pPinkie2.Size.y/2,0,0,0,0)
  306.  
  307. pPinkie3 = pa(m,"Block",fingwide,(tiphei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie3,0.9,1,0.9)
  308.  
  309. wPinkie3 = weld(pPinkie3,bPinkie3,pPinkie3,0,pPinkie3.Size.y/2,0,0,0,0)
  310.  
  311. bThumb1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  312.  
  313. Thumb1 = weld(bThumb1,Palm,bThumb1,-x/2+(fingwide/7),-y*0.1,-fingwide*0.25,0,0,0)
  314.  
  315. pThumb1 = pa(m,"Block",fingwide*1.4,(finghei*1)*s,fingwide*1.4,true,false,HTrans,HRef,HCol) mbm(pThumb1,0.9,1,0.9)
  316.  
  317. wThumb1 = weld(pThumb1,bThumb1,pThumb1,0,pThumb1.Size.y/2,0,0,0,0)
  318.  
  319. bThumb2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  320.  
  321. Thumb2 = weld(bThumb2,pThumb1,bThumb2,0,pThumb1.Size.y/2,0,0,0,0)
  322.  
  323. pThumb2 = pa(m,"Block",fingwide*1.3,(finghei*1)*s,fingwide*1.3,true,false,HTrans,HRef,HCol) mbm(pThumb2,0.9,1,0.9)
  324.  
  325. wThumb2 = weld(pThumb2,bThumb2,pThumb2,0,pThumb1.Size.y/2,0,0,0,0)
  326.  
  327. bThumb3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  328.  
  329. Thumb3 = weld(bThumb3,pThumb2,bThumb3,0,pThumb2.Size.y/2,0,0,0,0)
  330.  
  331. pThumb3 = pa(m,"Block",fingwide*1.25,(tiphei*1)*s,fingwide*1.25,true,false,HTrans,HRef,HCol) mbm(pThumb3,0.9,1,0.9)
  332.  
  333. wThumb3 = weld(pThumb3,bThumb3,pThumb3,0,pThumb3.Size.y/2,0,0,0,0)
  334.  
  335.  
  336. w["a1"] = Pinkie1
  337.  
  338. w["a2"] = Pinkie2
  339.  
  340. w["a3"] = Pinkie3
  341.  
  342. w["b1"] = Ring1
  343.  
  344. w["b2"] = Ring2
  345.  
  346. w["b3"] = Ring3
  347.  
  348. w["c1"] = Mid1
  349.  
  350. w["c2"] = Mid2
  351.  
  352. w["c3"] = Mid3
  353.  
  354. w["d1"] = Point1
  355.  
  356. w["d2"] = Point2
  357.  
  358. w["d3"] = Point3
  359.  
  360. w["e1"] = Thumb1
  361.  
  362. w["e2"] = Thumb2
  363.  
  364. w["e3"] = Thumb3
  365.  
  366. w.e1.C1 = ca(0,rd(35),rd(-20))
  367.  
  368. w.e2.C1 = ca(rd(20),0,0)
  369.  
  370. w.e3.C1 = ca(rd(20),0,0)
  371.  
  372. w.d1.C1 = ca(0,0,rd(-3))
  373.  
  374. w.c1.C1 = ca(0,0,rd(-1))
  375.  
  376. w.b1.C1 = ca(0,0,rd(1))
  377.  
  378. w.a1.C1 = ca(0,0,rd(3))
  379.  
  380. function c1(wexx,smmx,xx,yy,zz)
  381.  
  382. coroutine.resume(coroutine.create(function()
  383.  
  384. local xx2,yy2,zz2 = wexx.C1:toEulerAnglesXYZ()
  385.  
  386. local aa,bb,cc = wexx.C0.x,wexx.C0.y,wexx.C0.z
  387.  
  388. local twa = smmx/wt
  389.  
  390. Anim.Welding = Anim.Welding + 1
  391.  
  392. for i=0,twa,1 do wexx.C0 = cf(aa,bb,cc)
  393.  
  394. wexx.C1 = ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i))
  395.  
  396. wait()
  397.  
  398. end
  399.  
  400. Anim.Welding = Anim.Welding - 1
  401.  
  402. end))
  403.  
  404. end
  405.  
  406. function CloseFing(fingz,spee) if spee == nil then spee = 1 end c1(w[fingz.. "1"],spee,80,0,0) c1(w[fingz.. "2"],spee,110,0,0) c1(w[fingz.. "3"],spee,30,0,0) end
  407.  
  408. function OpenFing(fingz,spee) if spee == nil then spee = 1 end c1(w[fingz.. "1"],spee,2,0,0) c1(w[fingz.. "2"],spee,2,0,0) c1(w[fingz.. "3"],spee,2,0,0) end
  409.  
  410. function HandSign(form,spee) form = form:lower() if spee == nil then spee = 1 end
  411.  
  412. if form == "f" then
  413.  
  414. CloseFing("d",spee) CloseFing("a",spee) CloseFing("b",spee)
  415.  
  416. c1(w["c1"],spee,0,0,0) c1(w["c2"],spee,0,0,0) c1(w["c3"],spee,0,0,0)
  417.  
  418. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  419.  
  420. elseif form == "fist" then
  421.  
  422. CloseFing("d",spee) CloseFing("a",spee) CloseFing("b",spee) CloseFing("c",spee)
  423.  
  424. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  425.  
  426. elseif form == "pointer" then
  427.  
  428. CloseFing("a",spee) CloseFing("b",spee) CloseFing("c",spee)
  429.  
  430. c1(w["d1"],spee,5,0,0) c1(w["d2"],spee,5,0,0) c1(w["d3"],spee,5,0,0)
  431.  
  432. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  433.  
  434. elseif form == "v" then
  435.  
  436. CloseFing("a",spee) CloseFing("b",spee)
  437.  
  438. c1(w["c1"],spee,1,0,15) c1(w["c2"],spee,1,0,0) c1(w["c3"],spee,1,0,0)
  439.  
  440. c1(w["d1"],spee,1,0,-15) c1(w["d2"],spee,1,0,0) c1(w["d3"],spee,1,0,0)
  441.  
  442. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  443.  
  444. elseif form == "free" or form == "five" then
  445.  
  446. OpenFing("a",spee) OpenFing("b",spee) OpenFing("c",spee) OpenFing("d",spee)
  447.  
  448. c1(w["e1"],spee,0,35,-20) c1(w["e2"],spee,20,0,0) c1(w["e3"],spee,20,0,0)
  449.  
  450. elseif form == "ride" then
  451.  
  452. c1(w["a1"],spee,60,0,0) c1(w["a2"],spee,-30,0,0) c1(w["a3"],spee,-30,0,0)
  453.  
  454. c1(w["b1"],spee,30,0,0) c1(w["b2"],spee,65,0,0) c1(w["b3"],spee,60,0,0)
  455.  
  456. c1(w["c1"],spee,30,0,0) c1(w["c2"],spee,65,0,0) c1(w["c3"],spee,60,0,0)
  457.  
  458. c1(w["d1"],spee,30,0,0) c1(w["d2"],spee,65,0,0) c1(w["d3"],spee,60,0,0)
  459.  
  460. c1(w["e1"],spee,-70,185,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  461.  
  462. elseif form == "gun" then
  463.  
  464. CloseFing("a",spee) CloseFing("b",spee)
  465.  
  466. c1(w["c1"],spee,0,0,1) c1(w["c2"],spee,0,0,0) c1(w["c3"],spee,0,0,0)
  467.  
  468. c1(w["d1"],spee,0,0,-1) c1(w["d2"],spee,0,0,0) c1(w["d3"],spee,0,0,0)
  469.  
  470. c1(w["e1"],spee,-60,90,0) c1(w["e2"],spee,20,0,0) c1(w["e3"],spee,-20,0,0)
  471.  
  472. elseif form == "wide" then
  473.  
  474. c1(w["a1"],spee,-3,0,45) c1(w["a2"],spee,-3,0,0) c1(w["a3"],spee,-3,0,0)
  475.  
  476. c1(w["b1"],spee,-3,0,15) c1(w["b2"],spee,-3,0,0) c1(w["b3"],spee,-3,0,0)
  477.  
  478. c1(w["c1"],spee,-3,0,-15) c1(w["c2"],spee,-3,0,0) c1(w["c3"],spee,-3,0,0)
  479.  
  480. c1(w["d1"],spee,-3,0,-45) c1(w["d2"],spee,-3,0,0) c1(w["d3"],spee,-3,0,0)
  481.  
  482. c1(w["e1"],spee,-70,90,0) c1(w["e2"],spee,10,0,0) c1(w["e3"],spee,-10,0,0)
  483.  
  484. elseif form == "wide2" then
  485.  
  486. c1(w["a1"],spee,-18,0,45) c1(w["a2"],spee,36,0,0) c1(w["a3"],spee,30,0,0)
  487.  
  488. c1(w["b1"],spee,-18,0,15) c1(w["b2"],spee,36,0,0) c1(w["b3"],spee,30,0,0)
  489.  
  490. c1(w["c1"],spee,-18,0,-15) c1(w["c2"],spee,36,0,0) c1(w["c3"],spee,30,0,0)
  491.  
  492. c1(w["d1"],spee,-18,0,-45) c1(w["d2"],spee,36,0,0) c1(w["d3"],spee,30,0,0)
  493.  
  494. c1(w["e1"],spee,-50,90,-10) c1(w["e2"],spee,5,0,-30) c1(w["e3"],spee,-10,0,-40)
  495.  
  496. elseif form == "grab2" then
  497.  
  498. c1(w["a1"],spee,-70,-65,0) c1(w["a2"],spee,40,0,0) c1(w["a3"],spee,20,0,0)
  499.  
  500. c1(w["b1"],spee,-70,-20,0) c1(w["b2"],spee,40,0,0) c1(w["b3"],spee,20,0,0)
  501.  
  502. c1(w["c1"],spee,-70,20,-0) c1(w["c2"],spee,40,0,0) c1(w["c3"],spee,20,0,0)
  503.  
  504. c1(w["d1"],spee,-70,65,-0) c1(w["d2"],spee,40,0,0) c1(w["d3"],spee,20,0,0)
  505.  
  506. c1(w["e1"],spee,-70,150,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  507.  
  508. elseif form == "grab3" then
  509.  
  510. c1(w["a1"],spee,-30,-40,30) c1(w["a2"],spee,50,0,0) c1(w["a3"],spee,35,0,0)
  511.  
  512. c1(w["b1"],spee,-30,-15,12) c1(w["b2"],spee,50,0,0) c1(w["b3"],spee,35,0,0)
  513.  
  514. c1(w["c1"],spee,-30,15,-12) c1(w["c2"],spee,50,0,0) c1(w["c3"],spee,35,0,0)
  515.  
  516. c1(w["d1"],spee,-30,40,-30) c1(w["d2"],spee,50,0,0) c1(w["d3"],spee,35,0,0)
  517.  
  518. c1(w["e1"],spee,-55,205,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  519.  
  520. end
  521.  
  522. end
  523.  
  524. function ColFings(iscol)
  525.  
  526. pPinkie1.CanCollide = iscol
  527.  
  528. pPinkie2.CanCollide = iscol
  529.  
  530. pPinkie3.CanCollide = iscol
  531.  
  532. pRing1.CanCollide = iscol
  533.  
  534. pRing2.CanCollide = iscol
  535.  
  536. pRing3.CanCollide = iscol
  537.  
  538. pMid1.CanCollide = iscol
  539.  
  540. pMid2.CanCollide = iscol
  541.  
  542. pMid3.CanCollide = iscol
  543.  
  544. pPoint1.CanCollide = iscol
  545.  
  546. pPoint2.CanCollide = iscol
  547.  
  548. pPoint3.CanCollide = iscol
  549.  
  550. pThumb1.CanCollide = iscol
  551.  
  552. pThumb2.CanCollide = iscol
  553.  
  554. pThumb3.CanCollide = iscol
  555.  
  556. end
  557.  
  558. function ray(Pos, Dir)
  559.  
  560. return Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999), c)
  561.  
  562. end
  563.  
  564. function Earthsplosion(pos,siz,dmg,rndmg,forc,eos) local colz22 = "Earth green" if eos == nil or eos == "earth" then eos = "earth" else colz22 = "Pastel brown" eos = "sand" end
  565.  
  566. coroutine.resume(coroutine.create(function()
  567.  
  568. if eos == "earth" then local cr = pa(m,"Block",((14*siz)/10)*s,0,((14*siz)/10)*s,false,false,1,0,"") cr.Anchored = true cr.CFrame = pos *ca(rd(0),rd(ra(-360,360)),rd(0)) cr.CFrame = cr.CFrame + v3(ra(-siz*10,siz*10)/22,0,ra(-siz*10,siz*10)/22)
  569.  
  570. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,25) end
  571.  
  572. for i=1,4 do
  573.  
  574. coroutine.resume(coroutine.create(function()
  575.  
  576. local sw = pa(m,"Block",(siz/3)*s,(siz*1.3)*s,(siz/3)*s,true,true,0,0,colz22) sw.Anchored = true sw.CFrame = pos *cf(ra(-3*s,3*s),0,ra(-3*s,3*s)) *ca(rd(ra(-27,27)),rd(ra(-360,360)),rd(ra(-27,27))) local swm = it("SpecialMesh",sw) if eos == "earth" then swm.MeshType = "FileMesh"
  577.  
  578. swm.MeshId = asset .. Decs.Spike else swm.MeshType = "Sphere" end if eos == "earth" then swm.Scale = v3(sw.Size.x/1.3,sw.Size.y*1.2,sw.Size.z/1.3)
  579.  
  580. else swm.Scale = v3(sw.Size.x/10,sw.Size.y/37,sw.Size.z/10) end sw.CFrame = sw.CFrame + v3(ra(-0.3*siz*s,0.3*siz*s,7),0,ra(-0.3*siz*s,0.3*siz*s)) sw.CFrame = sw.CFrame * cf(0,-sw.Size.y/1.4,0)
  581.  
  582. Dustplosion(cf(pos.p+v3(0,2*s,0)),18*s,{"Dark green","Bright green","Brown"},1)
  583.  
  584. if eos == "earth" then
  585.  
  586. for x=1,8 do
  587.  
  588. sw.CFrame = sw.CFrame *cf(0,sw.Size.y/8,0) wait() end wait(ra(1,5))
  589.  
  590. for x=1,20 do
  591.  
  592. sw.CFrame = sw.CFrame *cf(0,-sw.Size.y/20,0) wait()
  593.  
  594. end sw:Remove()
  595.  
  596. else
  597.  
  598. for x=1,25 do
  599.  
  600. sw.CFrame = sw.CFrame *cf(0,sw.Size.y/25,0) sw.Transparency = x/25 - 0.1 swm.Scale = swm.Scale + v3(0.025,0.025,0.025) wait() end
  601.  
  602. end sw:Remove()
  603.  
  604. end)) end
  605.  
  606. wait(0.3)
  607.  
  608. DmgHumanoidsNear(pos.p,dmg,rndmg,5.5*s*(siz/4),forc)
  609.  
  610. end))
  611.  
  612. end
  613.  
  614.  
  615. function Dustplosion(onb,scale,col,cls) coroutine.resume(coroutine.create(function()
  616.  
  617. for x=1,cls do coroutine.resume(coroutine.create(function()
  618.  
  619. local sw = pa(m,"Block",1*s,0,1*s,false,false,0.2,0,col[ra(1,#col)]) sw.Anchored = true sw.CFrame = onb *ca(rd(ra(-35,35)),rd(ra(-360,360)),rd(ra(-35,35))) local swm = it("SpecialMesh",sw) swm.MeshType = "FileMesh"
  620.  
  621. swm.MeshId = asset .. Decs.Cloud sw.CFrame = sw.CFrame + v3(ra(-scale,scale)/8,ra(-scale,scale)/8,ra(-scale,scale)/8)
  622.  
  623. for i=1,scale,0.25 do
  624.  
  625. swm.Scale = v3(i*1.5,i*1,i*1.5) sw.Transparency = ((i/scale)/2) + 0.45
  626.  
  627. wait()
  628.  
  629. end
  630.  
  631. sw:Remove()
  632.  
  633. end)) end
  634.  
  635. end)) end
  636.  
  637. function ShockWave(onb,scale,col) coroutine.resume(coroutine.create(function() local sw = pa(m,"Block",1*s,0,1*s,false,false,0.2,0,col) sw.Anchored = true sw.CFrame = onb *ca(rd(90),0,0) local swm = it("SpecialMesh",sw) swm.MeshType = "FileMesh" swm.MeshId = RingMesh.MeshId
  638.  
  639. for i=1,scale,0.75 do swm.Scale = v3(i*1.5,i*1.5,i*1.5) sw.Transparency = (i/scale) + 0 wait() end sw:Remove() end)) end
  640.  
  641. function BlastWave(onb,scale,ymes,col) coroutine.resume(coroutine.create(function()
  642.  
  643. local sw = pa(m,"Block",1*s,0,1*s,false,false,0.2,0,col) sw.Anchored = true sw.CFrame = onb *ca(rd(0),0,0) local swm = it("SpecialMesh",sw) swm.MeshType = "FileMesh"
  644.  
  645. swm.MeshId = BlastMesh.MeshId
  646.  
  647. for i=1,scale,scale/11 do
  648.  
  649. swm.Scale = v3(i*1.25,i*ymes,i*1.25) sw.CFrame = sw.CFrame *ca(0,rd(720*(i/scale)),0) sw.Transparency = (i/scale) + 0
  650.  
  651. wait()
  652.  
  653. end
  654.  
  655. sw:Remove()
  656.  
  657. end))
  658.  
  659. end
  660.  
  661. function Explode(onb,scale,col) local Torm = m coroutine.resume(coroutine.create(function() local e1 = Instance.new("Part") e1.Anchored = true e1.formFactor = "Custom" e1.CanCollide = false e1.Size = Vector3.new(1,1,1) e1.BrickColor = BrickColor.new(col)
  662.  
  663. e1.Transparency = 0.6 e1.TopSurface = 0 e1.BottomSurface = 0 e1.Parent = Torm e1.CFrame = onb local e1m = Instance.new("SpecialMesh")
  664.  
  665. e1m.MeshType = "Sphere" e1m.Parent = e1 local r1 = Instance.new("Part") r1.Anchored = true r1.formFactor = "Custom" r1.CanCollide = false r1.Size = Vector3.new(1,1,1) r1.BrickColor = BrickColor.new(col) r1.Transparency = 0.6 r1.TopSurface = 0 r1.BottomSurface = 0 r1.Parent = Torm r1.CFrame = e1.CFrame *CFrame.Angles(math.rad(180),0,0) local r1m = Instance.new("SpecialMesh") r1m.MeshType = "FileMesh"
  666.  
  667. r1m.Scale = Vector3.new(3,3,3) r1m.Parent = r1 r1m.MeshId = RingMesh.MeshId local r2 = Instance.new("Part") r2.Anchored = true r2.formFactor = "Custom" r2.CanCollide = false r2.Size = Vector3.new(1,1,1) r2.BrickColor = BrickColor.new(col) r2.Transparency = 0.6 r2.TopSurface = 0 r2.BottomSurface = 0 r2.Parent = Torm r2.CFrame = e1.CFrame *CFrame.Angles(0,math.rad(180),0) local r2m = Instance.new("SpecialMesh") r2m.MeshType = "FileMesh"
  668.  
  669. r2m.Parent = r2 r2m.Scale = Vector3.new(3,3,3) r2m.MeshId = RingMesh.MeshId local bla = Instance.new("Part") bla.Anchored = true
  670.  
  671. bla.formFactor = "Custom" bla.CanCollide = false bla.Size = Vector3.new(1,1,1) bla.BrickColor = BrickColor.new(col) bla.Transparency = 0.6 bla.TopSurface = 0 bla.BottomSurface = 0 bla.Parent = Torm bla.CFrame = onb local blam = Instance.new("SpecialMesh")
  672.  
  673. blam.MeshType = "FileMesh" blam.Parent = bla blam.Scale = Vector3.new(5,5,5) blam.MeshId = BlastMesh.MeshId for i=1,30 do local pluscal = scale/38 e1m.Scale = e1m.Scale + Vector3.new(pluscal,pluscal,pluscal)
  674.  
  675. r1m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal) r2m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal)
  676.  
  677. blam.Scale = blam.Scale + Vector3.new(pluscal,pluscal/2,pluscal) bla.CFrame = bla.CFrame * CFrame.Angles(0,math.rad(12),0) r1.CFrame = r1.CFrame * CFrame.Angles(math.rad(6),0,0) r2.CFrame = r2.CFrame * CFrame.Angles(0,math.rad(6),0) wait() end for i=1,30 do local pluscal = scale/38 e1m.Scale = e1m.Scale + Vector3.new(pluscal,pluscal,pluscal) r1m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal) r2m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal)
  678.  
  679. blam.Scale = blam.Scale + Vector3.new(pluscal/3,pluscal/3,pluscal/3) bla.CFrame = bla.CFrame * CFrame.Angles(0,math.rad(12),0) r1.CFrame = r1.CFrame * CFrame.Angles(math.rad(6),0,0) r2.CFrame = r2.CFrame * CFrame.Angles(0,math.rad(6),0) bla.Transparency = bla.Transparency + 0.1 e1.Transparency = e1.Transparency + 0.1 r1.Transparency = r1.Transparency + 0.1 r2.Transparency = r2.Transparency + 0.1 wait() end e1:Remove() r1:Remove() r2:Remove() end)) end
  680.  
  681.  
  682. function Hurtsplosion(pos,dmg,rndmg,siz,forc)
  683.  
  684. coroutine.resume(coroutine.create(function() local boomcol = {"Bright red","New Yeller","Neon orange"}
  685.  
  686. for i=1,3 do
  687.  
  688. coroutine.resume(coroutine.create(function()
  689.  
  690. local plos = pa(m,"Block",1*s*siz,1.5*s*siz,0.7*s*siz,false,false,0.3,0,boomcol[i]) spm("Sphere",plos,1) plos.Anchored = true
  691.  
  692. plos.CFrame = cf(pos + v3(0,0,0)) * ca(rd(ra(-360,360)),rd(ra(-360,360)),rd(ra(-360,360)))
  693.  
  694. plos.Mesh.Scale = v3(0.1,0.1,0.1)
  695.  
  696. for i=0.3,1,0.03 do local plc = plos.CFrame
  697.  
  698. plos.Mesh.Scale = v3(i*6,i*6,i*6) plos.Transparency = i plos.CFrame = plc * ca(rd(3),rd(3),0)
  699.  
  700. wait()
  701.  
  702. end
  703.  
  704. plos:Remove()
  705.  
  706. end))
  707.  
  708. end
  709.  
  710. end))
  711.  
  712. wait(0.1)
  713.  
  714. DmgHumanoidsNear(pos,dmg,rndmg,5.5*s*siz,forc)
  715.  
  716. end
  717.  
  718.  
  719. function DmgHumanoidsNear(pos,dmg,rndmg,mag,forc)
  720.  
  721. local function kidive(ob)
  722.  
  723. for i,v in pairs(ob:children()) do
  724.  
  725. if v:IsA("BasePart") and v.Parent.Parent:findFirstChild("Humanoid") == nil and v.Parent:findFirstChild("Humanoid") == nil and (v.Position - pos).magnitude < mag*1.3 and v.Anchored == false and v:GetMass() < 150 then
  726.  
  727. v:BreakJoints() v.Velocity = cf(pos,v.Position).lookVector*forc
  728.  
  729. end
  730.  
  731. if v:IsA("Humanoid") and v ~= hu and v.Parent:findFirstChild("Torso") then
  732.  
  733. if (pos - v.Parent.Torso.Position).magnitude < mag then local tdmg = dmg*ra(1,rndmg)
  734.  
  735. if v.Parent:findFirstChild("Hh") == nil then local hh= Instance.new("NumberValue",v.Parent) hh.Name = "Hh"
  736.  
  737. hh.Value = v.Health - tdmg else v.Parent.Hh.Value = v.Health - (tdmg*3.5) end
  738.  
  739. v.Health = v.Parent.Hh.Value if v.Parent.Hh.Value < 1 then v.Parent:BreakJoints() end
  740.  
  741. end
  742.  
  743. end
  744.  
  745. if v:IsA("Model") or v:IsA("Workspace") then kidive(v) end end end
  746.  
  747. kidive(workspace)
  748.  
  749. end
  750.  
  751. function Fire(bullet,typez,siz,dmg,rndmg,forc)
  752.  
  753. if typez == 1 then
  754.  
  755. bullet.Anchored = true
  756.  
  757. local bullethit = false
  758.  
  759. local tyms = 0
  760.  
  761. repeat
  762.  
  763. tyms = tyms + 2
  764.  
  765. local bhit,bpos = ray(bullet.Position,bullet.Position - (bullet.CFrame *cf(0,0,-1)).p)
  766.  
  767. if bpos ~= nil and (bpos - bullet.Position).magnitude < 7 then bullethit = true else bullet.CFrame = bullet.CFrame *cf(0,0,-1*s) *ca(rd(-0.0025),rd(0),0) end
  768.  
  769. if tyms%32 == 0 then wait() end
  770.  
  771. until bullethit or bullet.Position.y < -300 or tyms > 800
  772.  
  773. bullet.CFrame = bullet.CFrame *cf(0,0,8) bullet:Remove()
  774.  
  775. if bullet.Position.y < -300 then
  776.  
  777. else
  778.  
  779. Hurtsplosion(bullet.Position,dmg,rndmg,siz,forc)
  780.  
  781. end
  782.  
  783. elseif typez == 2 then
  784.  
  785. bullet.Anchored = true
  786.  
  787. local bullethit = false
  788.  
  789. local tyms = 0
  790.  
  791. local ming = 0.001
  792.  
  793. repeat
  794.  
  795. if tyms > 70 and (ming == 0.001 or ming == -2.5) then ming = -2.5
  796.  
  797. local bpos = (bullet.CFrame *cf(0,0,-300)).p if (bpos - v3(Palm.Position.x,bpos.y,Palm.Position.z)).magnitude < 25*s then ming = 0 end
  798.  
  799. end
  800.  
  801. tyms = tyms + 2
  802.  
  803. local bhit,bpos = ray(bullet.Position,bullet.Position - (bullet.CFrame *cf(0,0,-1)).p)
  804.  
  805. if bpos ~= nil and (bpos - bullet.Position).magnitude < 7 then bullethit = true else bullet.CFrame = bullet.CFrame *cf(0,0,-0.5) *ca(rd(ming),rd(0),0) end
  806.  
  807. if tyms%16 == 0 then wait() end
  808.  
  809. until bullethit or bullet.Position.y < -300 or tyms > 500
  810.  
  811. bullet.CFrame = bullet.CFrame *cf(0,0,8) bullet:Remove()
  812.  
  813. if bullet.Position.y < -300 then
  814.  
  815. else
  816.  
  817. Hurtsplosion(bullet.Position,dmg,rndmg,siz,forc)
  818.  
  819. end
  820.  
  821. elseif typez == 3 then
  822.  
  823. end
  824.  
  825. end
  826.  
  827. function ShortifiedAnim(theanim)
  828.  
  829. if theanim == "Beam" then
  830.  
  831. local crom = pa(m,"Block",0,0,0,true,true,0.5,0,LaserCol3) local cromm = it("SpecialMesh",crom) cromm.MeshType = "FileMesh" cromm.MeshId = asset .. Decs.Crown
  832.  
  833. cromm.Scale = v3(15*s,5*s,15*s) crom.Anchored = true --local cromw = weld(crom,Palm,crom,0,Palm.Size.y/3.6,-Palm.Size.z*1.8,rd(-90),0,0)
  834.  
  835. dias = {} loldiv = 360/8 for x=0,360,loldiv do
  836.  
  837. local dia = pa(m,"Block",0,0,0,false,false,0,0,LaserCol2) dia.Anchored = true local diam = it("SpecialMesh",dia) diam.MeshType = "FileMesh" diam.MeshId = DiamondMesh.MeshId
  838.  
  839. diam.Scale = v3(3*s,9*s,3*s) table.insert(dias,dia)
  840.  
  841. end Button = true coroutine.resume(coroutine.create(function() local tardz = 0 repeat wait() tardz = tardz+ 15
  842.  
  843. crom.CFrame = Palm.CFrame *ca(rd(-90),0,0) *cf(0,5.5*s,2*s) *ca(0,rd(tardz),0)
  844.  
  845. for rofl=1,#dias do dias[rofl].CFrame = crom.CFrame *ca(0,rd(rofl*loldiv),0) *cf(0,-19*s,0) *ca(rd(25),0,0) *cf(0,32*s,0) end
  846.  
  847. until not Button for x2=0.5,1,0.05 do wait() crom.Transparency = x2 end end))
  848.  
  849. coroutine.resume(coroutine.create(function() for xk=1,0.5,-0.02 do wait() for i=1,#dias do dias[i].Transparency =xk end end end))
  850.  
  851. wait(1) local beamoffset = v3(0,0,0)
  852.  
  853. local b1 = pa(m,"Ball",10*s,10*s,10*s,false,false,0.1,0,LaserCol) b1.Anchored = true
  854.  
  855. local b2 = pa(m,"Block",10*s,1,10*s,false,false,0.1,0,LaserCol) b2.Anchored = true local b2m = it("CylinderMesh",b2)
  856.  
  857. local b3 = pa(m,"Ball",10*s,10*s,10*s,false,false,0.1,0,LaserCol) b3.Anchored = true
  858.  
  859. local bpos = nil local bhit = nil local ts = 0
  860.  
  861. repeat beamoffset = v3(ra(-2*s,2*s),ra(-2*s,2*s),ra(-2*s,2*s)) ts = ts + 1
  862.  
  863. bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,0,1)).p)
  864.  
  865. if bhit == nil or (Palm.Position - bpos).magnitude > 1500 then break end
  866.  
  867. b1.CFrame = Palm.CFrame *cf(0,3*s,-11*s)
  868.  
  869. b3.CFrame = cf(bpos) local lenz = (b1.Position - b3.Position).magnitude
  870.  
  871. b2.CFrame = cf(b1.Position,b3.Position) *ca(rd(90),0,0) *cf(0,-lenz/2,0) b2m.Scale = v3(1,lenz,1)
  872.  
  873. b1.CFrame = b1.CFrame + beamoffset b2.CFrame = b2.CFrame + beamoffset b3.CFrame = b3.CFrame + beamoffset
  874.  
  875. if ts%10 == 0 then DmgHumanoidsNear(b3.Position,3,10,(14*s)+2,100) Explode(b3.CFrame*cf(0,b3.Size.y/3,0),25*s,LaserCol2) end
  876.  
  877. wait() until not Button or ts > 600
  878.  
  879. coroutine.resume(coroutine.create(function() for xk=0.1,1.1,0.08 do wait() b1.Transparency = xk b2.Transparency = xk b3.Transparency = xk end b1:Remove() b2:Remove() b3:Remove() end))
  880.  
  881. coroutine.resume(coroutine.create(function() for xk=0.5,1.1,0.02 do wait() for i=1,#dias do dias[i].Transparency =xk end end end))
  882.  
  883. wait(1) clearit(dias) crom:Remove()
  884.  
  885. end
  886.  
  887. end
  888.  
  889. PalmLev = it("BodyPosition",Palm)
  890.  
  891. PalmFace = it("BodyGyro",Palm) PalmFace.maxTorque = v3(0,0,0)
  892.  
  893. coroutine.resume(coroutine.create(function()
  894.  
  895. PalmLev.position = (t.CFrame *cf(handoffset)).p
  896.  
  897. local yspi = 0
  898.  
  899. while true do yspi = yspi + 8
  900.  
  901. if Anim.a == "Gun" or Anim.a == "Ride" or Anim.a == "Pound" then
  902.  
  903. Facing = "Mouse" bgx = -90 bgy = 90 bgz = 0
  904.  
  905. elseif Anim.a == "Fu" or Anim.a == "Fist" or Anim.a == "GroundGrip" then
  906.  
  907. Facing = "Mouse" bgx = -90 bgy = 0 bgz = 0
  908.  
  909. elseif Anim.a == "Splat" or Anim.a == "Beam" then
  910.  
  911. Facing = "Mouse" bgx = 0 bgy = 0 bgz = 0
  912.  
  913. elseif Anim.a == "None" then
  914.  
  915. Facing = "Owner" bgx = -90 bgy = 0 bgz = 0 Posing = "Follow"
  916.  
  917. elseif Anim.a == "Shower" then
  918.  
  919. Facing = "None" bgx = 0 bgy = 0 bgz = 0 Posing = "TopOwner"
  920.  
  921. end
  922.  
  923. if Posing == "Follow" then
  924.  
  925. PalmLev.maxForce = v3(1/0,1/0,1/0) PalmLev.position = (t.CFrame *cf(handoffset) *cf(0,0,0)).p
  926.  
  927. elseif Posing == "TopOwner" then
  928.  
  929. PalmLev.maxForce = v3(1/0,1/0,1/0) PalmLev.position = (t.CFrame *cf(0,12*s,0)).p
  930.  
  931. end
  932.  
  933. if Facing == "Owner" then
  934.  
  935. PalmFace.maxTorque = v3(1/0,1/0,1/0) PalmFace.cframe = cf(Palm.Position,he.Position) *ca(rd(bgx),rd(bgy),rd(bgz))
  936.  
  937. elseif Facing == "Mouse" and mou ~= nil and Equip then
  938.  
  939. if Anim.a == "Gun" or Anim.a == "Beam" or Anim.a == "Ride" or Anim.a == "GroundGrip" or Anim.a == "Fu" or Anim.a == "Pound" or Anim.a == "Splat" or Anim.a == "Fist" then
  940.  
  941. if Anim.b == "None" or Anim.a == "Beam" or Anim.a == "Ride" then
  942.  
  943. PalmFace.cframe = cf(Palm.Position,mou.Hit.p) *ca(rd(bgx),rd(bgy),rd(bgz)) wait(0.05)
  944.  
  945. end end end
  946.  
  947. wait(0.05)
  948.  
  949. end
  950.  
  951. end))
  952.  
  953. function FireFinger(lasercol,ffingz,targ,typez,siz,dmg,rndmg,forc) coroutine.resume(coroutine.create(function()
  954.  
  955. local laser = pa(m,"Block",fingwide*1.3,fingwide*1.3,fingwide*2.5,true,false,0,0,lasercol) spm("Sphere",laser,1+(siz/5.5)) laser.Name = "Projectile"
  956.  
  957. local lw = weld(laser,ffingz,laser,0,ffingz.Size.y/0.8 +(siz/2.5),0,rd(90),0,0)
  958.  
  959. for i=1,0.4,-0.05 do laser.Transparency = i wait() end
  960.  
  961. BlastWave(ffingz.CFrame*cf(0,ffingz.Size.y*1.3,0)*ca(0,0,0),ffingz.Size.x*1.6,1.8,LaserCol2)
  962.  
  963. lw:Remove() laser.CFrame = cf(laser.Position,targ)
  964.  
  965. Fire(laser,typez,siz,dmg,rndmg,forc)
  966.  
  967. end))
  968.  
  969. end
  970.  
  971. GrabWeld = it("Weld",m)
  972.  
  973. Palm.Touched:connect(function(touch)
  974.  
  975. if Anim.a == "Ride" and GrabWeld.Part1 == nil and touch.Parent:findFirstChild("Torso") and touch.Parent:findFirstChild("Humanoid") then
  976.  
  977. local tor = touch.Parent.Torso touch.Parent.Humanoid.PlatformStand = true
  978.  
  979. GrabWeld.Part0 = Palm GrabWeld.Part1 = tor GrabWeld.C0 = cf(-3*s,4.5*s,-Palm.Size.x/2) GrabWeld.C1 = ca(0,rd(90),rd(-90)) *ca(0,rd(0),0)
  980.  
  981. end
  982.  
  983. end)
  984.  
  985. re(bp,"Hand")
  986.  
  987. hb = it("HopperBin",bp) hb.Name = "Hand"
  988.  
  989. hb.Selected:connect(function(mouse) mou = mouse Equip = true
  990.  
  991. mouse.KeyDown:connect(function(k) k = k:lower()
  992.  
  993. if Anim.a == "Ride" and k == "f" then FireFinger(LaserCol,pPinkie3,mouse.Hit.p,1,2.25,1,18,30) end
  994.  
  995. if Anim.b ~= "None" or Anim.Welding ~= 0 then return end
  996.  
  997. if Anim.a == "None" then
  998.  
  999. if k == "f" then -- on anim on
  1000.  
  1001. Anim.a = "Gun" HandSign("Gun",0.7)
  1002.  
  1003. elseif k == "p" then
  1004.  
  1005. Anim.a = "Fu" HandSign("f",1)
  1006.  
  1007. elseif k == "g" then
  1008.  
  1009. Anim.a = "Fist" HandSign("fist",1)
  1010.  
  1011. elseif k == "c" then
  1012.  
  1013. Anim.a = "Splat" HandSign("wide",1)
  1014.  
  1015. elseif k == "r" then
  1016.  
  1017. Anim.a = "Ride" HandSign("ride",1) Posing = "None"
  1018.  
  1019. elseif k == "v" then
  1020.  
  1021. Anim.a = "Shower" HandSign("grab2",1) PalmFace.cframe = cf(0,0,0) *ca(0,0,0)
  1022.  
  1023. elseif k == "b" then
  1024.  
  1025. Anim.a = "Pound" HandSign("fist",1)
  1026.  
  1027. elseif k == "x" then
  1028.  
  1029. Anim.a = "GroundGrip" HandSign("grab2",1)
  1030.  
  1031. elseif k == "z" then
  1032.  
  1033. Anim.a = "Beam" HandSign("wide2",1)
  1034.  
  1035. end
  1036.  
  1037. else
  1038.  
  1039. if k == "f" and Anim.a == "Gun" then -- on anim off
  1040.  
  1041. Anim.a = "None" HandSign("five",0.8)
  1042.  
  1043. elseif k == "p" and Anim.a == "Fu" then
  1044.  
  1045. Anim.a = "None" HandSign("five",0.8)
  1046.  
  1047. elseif k == "g" and Anim.a == "Fist" then
  1048.  
  1049. Anim.a = "None" HandSign("five",0.8)
  1050.  
  1051. elseif k == "c" and Anim.a == "Splat" then
  1052.  
  1053. Anim.a = "None" HandSign("five",0.8)
  1054.  
  1055. elseif k == "r" and Anim.a == "Ride" then
  1056.  
  1057. Anim.a = "None" HandSign("five",0.8) GrabWeld.Part0 = nil Anim.b = "None" Posing = "Follow" Facing = "Owner"
  1058.  
  1059. if GrabWeld.Part1 ~= nil and GrabWeld.Part1.Parent:findFirstChild("Humanoid") ~= nil then GrabWeld.Part1.Parent.Humanoid.PlatformStand = false end GrabWeld.Part1 = nil
  1060.  
  1061. elseif k == "v" and Anim.a == "Shower" then
  1062.  
  1063. Anim.a = "None" HandSign("five",0.8) Posing = "Follow" Facing = "Owner"
  1064.  
  1065. elseif k == "b" and Anim.a == "Pound" then
  1066.  
  1067. Anim.a = "None" HandSign("five",0.8)
  1068.  
  1069. elseif k == "x" and Anim.a == "GroundGrip" then
  1070.  
  1071. Anim.a = "None" HandSign("five",0.8)
  1072.  
  1073. elseif k == "z" and Anim.a == "Beam" then
  1074.  
  1075. Anim.a = "None" HandSign("five",0.8)
  1076.  
  1077. end
  1078.  
  1079. end
  1080.  
  1081. end)
  1082.  
  1083. mouse.Button1Down:connect(function()
  1084.  
  1085. if Anim.a == "None" or Anim.b ~= "None" then return end
  1086.  
  1087. if Anim.a == "Gun" then
  1088.  
  1089. Anim.b = "Gun" FireFinger(LaserCol,pPoint3,mouse.Hit.p,1,2.25,1,10,60) FireFinger(LaserCol,pMid3,mouse.Hit.p,1,2.25) wait(1) Anim.b = "None"
  1090.  
  1091. elseif Anim.a == "Fu" then
  1092.  
  1093. Anim.b = "Fu" FireFinger(LaserCol,pMid3,mouse.Hit.p,1,3.65,2,14,95) wait(0.25) Anim.b = "None"
  1094.  
  1095. elseif Anim.a == "Fist" then
  1096.  
  1097. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  1098.  
  1099. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  1100.  
  1101. Anim.b = "Fist" Posing = "None" PalmFace.cframe = cf(Palm.Position,bpos) *ca(rd(-90),0,0)
  1102.  
  1103. PalmLev.position = (Palm.CFrame *cf(0,-15*s,0)).p
  1104.  
  1105. wait(0.45)
  1106.  
  1107. PalmLev.position = bpos + ((Palm.CFrame *cf(0,1*s,0)).p - Palm.Position)
  1108.  
  1109. local tz = 0 repeat wait() BlastWave(Palm.CFrame*ca(rd(180),0,0),8*s,3.5,HCol) tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 8*s or tz > 1
  1110.  
  1111. Explode(Palm.CFrame *cf(0,6*s,0) *ca(rd(180),0,0),15*s,ts(bhit.BrickColor))
  1112.  
  1113. DmgHumanoidsNear((Palm.CFrame *cf(0,8,0)).p,3,10,(12*s)+2,105)
  1114.  
  1115. if not bhit.Anchored then PalmLev.position = (Palm.CFrame *cf(0,12*s,0)).p wait(0.5) end
  1116.  
  1117. wait(1) Posing = "Follow" Anim.b = "None"
  1118.  
  1119. elseif Anim.a == "Splat" then
  1120.  
  1121. if mouse.Target == nil and (Palm.Position - mouse.Hit.p).magnitude > 500 then return end local bpos = mouse.Hit.p
  1122.  
  1123. Anim.b = "Splat" Posing = "None"
  1124.  
  1125. local ya,yb,yc = PalmFace.cframe:toEulerAnglesXYZ() PalmFace.cframe = cf(0,0,0) *ca(0,yb,0) *ca(rd(-90),0,0) PalmLev.position = bpos + v3(0,10*s,0)
  1126.  
  1127. local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 5*s or tz > 1.3
  1128.  
  1129. for i=-90,0,5 do
  1130.  
  1131. PalmLev.position = PalmLev.position + v3(0,2*s,0) PalmFace.cframe = cf(0,0,0) *ca(0,yb,0) *ca(rd(i),0,0)
  1132.  
  1133. wait()
  1134.  
  1135. end wait(0.2)
  1136.  
  1137. for i=0,-100,-10 do
  1138.  
  1139. local lewd = i
  1140.  
  1141. if lewd < -50 then lewd = -95 end
  1142.  
  1143. PalmLev.position = PalmLev.position - v3(0,4.7*s,0) PalmFace.cframe = cf(0,0,0) *ca(0,yb,0) *ca(rd(lewd),0,0)
  1144.  
  1145. wait()
  1146.  
  1147. end wait(0.2)
  1148.  
  1149. local cr = pa(m,"Block",16*s,0,16*s,false,false,1,0,"") cr.Anchored = true cr.CFrame = cf(bpos) *ca(0,rd(ra(-360,360)),0)
  1150.  
  1151. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,16)
  1152.  
  1153. DmgHumanoidsNear((Palm.CFrame *cf(0,0,-1)).p,3,20,(15*s)+2,110)
  1154.  
  1155. ShockWave(Palm.CFrame *ca(rd(90),0,0),25*s,LaserCol)
  1156.  
  1157. wait(1) Posing = "Follow" Anim.b = "None"
  1158.  
  1159. elseif Anim.a == "Ride" and Button == false then
  1160.  
  1161. Posing = "None" Anim.b = "Ride"
  1162.  
  1163. Button = true
  1164.  
  1165. repeat PalmLev.position = (Palm.CFrame *cf(0,10,0)).p wait() until Button == false
  1166.  
  1167. Anim.b = "None"
  1168.  
  1169. elseif Anim.a == "Shower" and Button == false then
  1170.  
  1171. Anim.b = "Shower" Button = true
  1172.  
  1173. repeat
  1174.  
  1175. local targz = Palm.Position + v3(0,20*s,0)
  1176.  
  1177. if ra(1,12) == 1 then FireFinger(LaserCol,pPinkie3,targz,2,4,1,18,55) end
  1178.  
  1179. if ra(1,13) == 1 then FireFinger(LaserCol,pRing3,targz,2,4,1,18,60) end
  1180.  
  1181. if ra(1,12) == 1 then FireFinger(LaserCol,pMid3,targz,2,4,1,18,65) end
  1182.  
  1183. if ra(1,13) == 1 then FireFinger(LaserCol,pPoint3,targz,2,4,1,18,70) end
  1184.  
  1185. if ra(1,12) == 1 then FireFinger(LaserCol,pThumb3,targz,2,4,1,18,80) end
  1186.  
  1187. PalmFace.cframe = PalmFace.cframe *ca(0,rd(10),0)
  1188.  
  1189. wait()
  1190.  
  1191. until Button == false
  1192.  
  1193. Anim.b = "None"
  1194.  
  1195. elseif Anim.a == "Pound" and Anim.b == "None" then Posing = "None" Anim.b = "Pound"
  1196.  
  1197. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  1198.  
  1199. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  1200.  
  1201. PalmLev.position = bpos + v3(0,15*s,0)
  1202.  
  1203. local ya,yb,yc = PalmFace.cframe:toEulerAnglesXYZ() PalmFace.cframe = ca(ya,yb,yc)
  1204.  
  1205. local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 5*s or tz > 1.3 wait(0.1)
  1206.  
  1207. for i=-90,-10,10 do
  1208.  
  1209. PalmFace.cframe = ca(ya,yb,yc) *ca(0,0,rd(i+90)) PalmLev.position = PalmLev.position + v3(0,2.5*s,0)
  1210.  
  1211. wait() end wait(0.25) local realcf = cf(v3(he.Position.x,0,he.Position.z),v3(Palm.Position.x,0,Palm.Position.z))
  1212.  
  1213. for i=-10,-90,-10 do
  1214.  
  1215. PalmFace.cframe = ca(ya,yb,yc) *ca(0,0,rd(i+90)) PalmLev.position = PalmLev.position - v3(0,4*s,0)
  1216.  
  1217. wait() end PalmFace.cframe = realcf *ca(rd(-90),rd(90),0) wait(0.25)
  1218.  
  1219. local cr = pa(m,"Block",22*s,0,22*s,false,false,1,0,"") cr.Anchored = true cr.CFrame = cf(bpos) *ca(0,rd(ra(-360,360)),0)
  1220.  
  1221. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,16)
  1222.  
  1223. Dustplosion(Palm.CFrame *cf(2*s,0,0) *ca(rd(90),0,rd(90)),30*s,{"Dark green","Bright green","Brown"},3)
  1224.  
  1225. ShockWave(Palm.CFrame *cf(2*s,0,0) *ca(rd(90),0,rd(90)),20*s,ts(bhit.BrickColor))
  1226.  
  1227. DmgHumanoidsNear((Palm.CFrame *cf(0,1,0)).p,1,20,(15*s)+2,90) wait(0.2)
  1228.  
  1229. local palmcf = cf(bpos) local earthsplos = ra(5,8) palmcf = Palm.CFrame *ca(0,rd(90),0) *ca(rd(-90),0,rd(0))
  1230.  
  1231. for i=1,earthsplos do Earthsplosion(palmcf *cf(0,-2*s,((i*7)+7)*s),10,1,20,75) wait(0.1) end
  1232.  
  1233. Earthsplosion(palmcf *cf(0,-2*s,(((earthsplos+1)*7)+7)*s),16,2,25,75)
  1234.  
  1235. wait(1) Posing = "Follow" wait(0.25) Anim.b = "None"
  1236.  
  1237. elseif Anim.a == "GroundGrip" then Posing = "None" Anim.b = "GroundGrip"
  1238.  
  1239. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  1240.  
  1241. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  1242.  
  1243. PalmLev.position = bpos + v3(0,27*s,0) ColFings(false)
  1244.  
  1245. local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 8*s or tz > 1.3 wait(0.1)
  1246.  
  1247. local thepos = (Palm.CFrame *cf(0,-0.1*s,0)).p - Palm.Position
  1248.  
  1249. PalmFace.cframe = cf(Palm.Position,bpos + thepos) *ca(rd(-90),0,0)
  1250.  
  1251. for i=27,1,-3 do PalmLev.position = bpos + v3(0,i*s,0) wait(0.07) end HandSign("grab3",0.4) wait(0.55)
  1252.  
  1253. local ro = pa(m,"Ball",0,0,0,false,false,0,0,"Earth green") ro.Name = "Rock" local row = it("SpecialMesh",ro) row.MeshType = "FileMesh" row.MeshId = asset .. Decs.Rock
  1254.  
  1255. local rowe = weld(ro,Palm,ro,0,Palm.Size.y,-Palm.Size.z*1.2,0,0,0) row.Scale = v3(9*s,10*s,9*s)
  1256.  
  1257. coroutine.resume(coroutine.create(function() for xz=1,70,7 do PalmLev.position = bpos + v3(0,xz*s,0) wait(0.06) end end))
  1258.  
  1259. wait(0.25) Dustplosion(cf(bpos),30*s,{"Dark green","Bright green","Brown"},3) local lolra = ra(-360,360)
  1260.  
  1261. Earthsplosion(cf(bpos),25,1,20,125,"sand") for yyy=0,360,60 do coroutine.resume(coroutine.create(function()
  1262.  
  1263. for zzz=1,4 do
  1264.  
  1265. Earthsplosion(cf(bpos) *ca(0,rd(yyy+lolra),0) *cf(0,0,zzz*15*s),10,1,20,75) wait(0.14)
  1266.  
  1267. end wait(0.25) Earthsplosion(cf(bpos) *ca(0,rd(yyy+lolra),0) *cf(0,0,5*18*s),25,1,20,120) end)) end
  1268.  
  1269. wait(0.3) HandSign("grab2",0.5) wait(0.75) Serv.d:AddItem(ro,20) rowe:Remove() ro.CanCollide = true local rocf = ro.CFrame ro.Size=v3(14*s,14*s,14*s) ro.CFrame = rocf wait(0.75) ColFings(true) Posing = "Follow" Anim.b = "None"
  1270.  
  1271. elseif Anim.a == "Beam" and not Button and Anim.b == "None" then Anim.b = "Beam"
  1272.  
  1273. ShortifiedAnim("Beam") wait(0.5) Anim.b = "None"
  1274.  
  1275. end
  1276.  
  1277. end)
  1278.  
  1279. mouse.Button1Up:connect(function()
  1280.  
  1281. Button = false
  1282.  
  1283. end)
  1284.  
  1285. mouse.Move:connect(function()
  1286.  
  1287. end)
  1288.  
  1289.  
  1290. end)
  1291.  
  1292. hb.Deselected:connect(function(mouse)
  1293.  
  1294. Equip = false
  1295.  
  1296. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement