SHARE
TWEET

THE END? 1810080

a guest Apr 22nd, 2019 91 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- This script has been converted to FE by Raul13141
  2.  
  3.  
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  6. do
  7.     print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  8.     script.Parent = Player.Character
  9.  
  10.     --RemoteEvent for communicating
  11.     local Event = Instance.new("RemoteEvent")
  12.     Event.Name = "UserInput_Event"
  13.  
  14.     --Fake event to make stuff like Mouse.KeyDown work
  15.     local function fakeEvent()
  16.         local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  17.         t.connect = t.Connect
  18.         return t
  19.     end
  20.  
  21.     --Creating fake input objects with fake variables
  22.     local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  23.     local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  24.     local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  25.         CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  26.     end}
  27.     --Merged 2 functions into one by checking amount of arguments
  28.     CAS.UnbindAction = CAS.BindAction
  29.  
  30.     --This function will trigger the events that have been :Connect()'ed
  31.     local function te(self,ev,...)
  32.         local t = m[ev]
  33.         if t and t._fakeEvent and t.Function then
  34.             t.Function(...)
  35.         end
  36.     end
  37.     m.TrigEvent = te
  38.     UIS.TrigEvent = te
  39.  
  40.     Event.OnServerEvent:Connect(function(plr,io)
  41.         if plr~=Player then return end
  42.         if io.isMouse then
  43.             m.Target = io.Target
  44.             m.Hit = io.Hit
  45.         else
  46.             local b = io.UserInputState == Enum.UserInputState.Begin
  47.             if io.UserInputType == Enum.UserInputType.MouseButton1 then
  48.                 return m:TrigEvent(b and "Button1Down" or "Button1Up")
  49.             end
  50.             for _,t in pairs(CAS.Actions) do
  51.                 for _,k in pairs(t.Keys) do
  52.                     if k==io.KeyCode then
  53.                         t.Function(t.Name,io.UserInputState,io)
  54.                     end
  55.                 end
  56.             end
  57.             m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  58.             UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  59.         end
  60.     end)
  61.     Event.Parent = NLS([==[
  62.     local Player = game:GetService("Players").LocalPlayer
  63.     local Event = script:WaitForChild("UserInput_Event")
  64.  
  65.     local UIS = game:GetService("UserInputService")
  66.     local input = function(io,a)
  67.         if a then return end
  68.         --Since InputObject is a client-side instance, we create and pass table instead
  69.         Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  70.     end
  71.     UIS.InputBegan:Connect(input)
  72.     UIS.InputEnded:Connect(input)
  73.  
  74.     local Mouse = Player:GetMouse()
  75.     local h,t
  76.     --Give the server mouse data 30 times every second, but only if the values changed
  77.     --If player is not moving their mouse, client won't fire events
  78.     while wait(1/30) do
  79.         if h~=Mouse.Hit or t~=Mouse.Target then
  80.             h,t=Mouse.Hit,Mouse.Target
  81.             Event:FireServer({isMouse=true,Target=t,Hit=h})
  82.         end
  83.     end]==],Player.Character)
  84.     Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  85. end
  86. 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
  87. bc = BrickColor.new ab = math.abs de = math.deg ts = tostring tn = tonumber ti = table.insert tr = table.remove  
  88. cr = coroutine.resume cc = coroutine.create
  89. asset = "http://www.roblox.com/asset/?id="
  90. sr = string.reverse sl = string.lower su = string.upper
  91. Serv = {} Serv.p = game:GetService(sr("sreyalP")) Serv.l = game:GetService(sr("gnithgiL"))
  92. Serv.is = game:GetService(sr("ecivreStresnI")) if game:findFirstChild(sr("revreSkrowteN")) then Serv.ns = game:GetService(sr("revreSkrowteN")) else NetworkServer = nil end
  93. Serv.sg = game:GetService(sr("iuGretratS")) Serv.sp = game:GetService(sr("kcaPretratS")) Serv.d = game:GetService(sr("sirbeD"))
  94. Decs = {}
  95. Decs.Crack = "49173398" Decs.Cloud = "1095708" Decs.Spike = "1033714" Decs.Rock = "1290033" Decs.Crown = "1323306"
  96. 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
  97. 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
  98. 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"
  99. 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
  100. fp.TopSurface = 0 fp.CFrame = t.CFrame + Vector3.new(0,50,0) fp.Velocity = Vector3.new(0,10,0) fp:BreakJoints() return fp  end
  101. function clearit(tab) for xx=1,#tab do tab[xx]:Remove() end end
  102. 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
  103. 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
  104. 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
  105. p = owner
  106. bp = p.Backpack
  107. pg = p.PlayerGui
  108. c = p.Character
  109. he = c.Head
  110. t = c.Torso
  111. hu = c.Humanoid
  112. mou = nil
  113. re(c,"Hand")
  114. s = 2
  115.      
  116. --tool var
  117. Equip = false
  118. HTrans = 0
  119. HRef = 0
  120. HCol = "a"
  121. LaserCol = "New Yeller"
  122. LaserCol2 = "Really red"
  123. LaserCol3 = "Alder"
  124. Posing = "Follow"
  125. Facing = "Owner"
  126. Anim = {}
  127. Anim.a = "None"
  128. Anim.b = "None"
  129. Anim.Welding = 0
  130. local fingwide = 1.5*s
  131. local finghei = 2.8
  132. local tiphei = 2.55
  133. handoffset = v3(5,18,-8)*s
  134. bgx,bgy,bgz = -90,0,0
  135. w = {}
  136. Button = false
  137. --
  138. BlastMesh = it("FileMesh")
  139. BlastMesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  140. RingMesh = it("FileMesh")
  141. RingMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  142. RockMesh = it("FileMesh")
  143. DiamondMesh = it("FileMesh")
  144. DiamondMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
  145. m = Instance.new("Model",c) m.Name = "Hand"
  146. Palm = pa(m,"Block",6*s,7*s,fingwide*2,true,false,HTrans,HRef,HCol) mbm(Palm,1,1,0.6)
  147. local x,y,z = Palm.Size.x,Palm.Size.y,Palm.Size.z
  148. bPoint1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  149. Point1 = weld(bPoint1,Palm,bPoint1,-x/2+(fingwide/2),y/2,0,0,0,0)
  150. pPoint1 = pa(m,"Block",fingwide,finghei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint1,0.9,1,0.9)
  151. wPoint1 = weld(pPoint1,bPoint1,pPoint1,0,pPoint1.Size.y/2,0,0,0,0)
  152. bPoint2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  153. Point2 = weld(bPoint2,pPoint1,bPoint2,0,pPoint1.Size.y/2,0,0,0,0)
  154. pPoint2 = pa(m,"Block",fingwide,finghei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint2,0.9,1,0.9)
  155. wPoint2 = weld(pPoint2,bPoint2,pPoint2,0,pPoint1.Size.y/2,0,0,0,0)
  156. bPoint3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  157. Point3 = weld(bPoint3,pPoint2,bPoint3,0,pPoint2.Size.y/2,0,0,0,0)
  158. pPoint3 = pa(m,"Block",fingwide,tiphei*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPoint3,0.9,1,0.9)
  159. wPoint3 = weld(pPoint3,bPoint3,pPoint3,0,pPoint3.Size.y/2,0,0,0,0)
  160. bMid1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  161. Mid1 = weld(bMid1,Palm,bMid1,-x/2+((fingwide/2)+((fingwide)*1)),y/2,0,0,0,0)
  162. pMid1 = pa(m,"Block",fingwide,(finghei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid1,0.9,1,0.9)
  163. wMid1 = weld(pMid1,bMid1,pMid1,0,pMid1.Size.y/2,0,0,0,0)
  164. bMid2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  165. Mid2 = weld(bMid2,pMid1,bMid2,0,pMid1.Size.y/2,0,0,0,0)
  166. pMid2 = pa(m,"Block",fingwide,(finghei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid2,0.9,1,0.9)
  167. wMid2 = weld(pMid2,bMid2,pMid2,0,pMid1.Size.y/2,0,0,0,0)
  168. bMid3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  169. Mid3 = weld(bMid3,pMid2,bMid3,0,pMid2.Size.y/2,0,0,0,0)
  170. pMid3 = pa(m,"Block",fingwide,(tiphei*1.1)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pMid3,0.9,1,0.9)
  171. wMid3 = weld(pMid3,bMid3,pMid3,0,pMid3.Size.y/2,0,0,0,0)
  172. bRing1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  173. Ring1 = weld(bRing1,Palm,bRing1,-x/2+((fingwide/2)+((fingwide)*2)),y/2,0,0,0,0)
  174. pRing1 = pa(m,"Block",fingwide,(finghei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing1,0.9,1,0.9)
  175. wRing1 = weld(pRing1,bRing1,pRing1,0,pRing1.Size.y/2,0,0,0,0)
  176. bRing2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  177. Ring2 = weld(bRing2,pRing1,bRing2,0,pRing1.Size.y/2,0,0,0,0)
  178. pRing2 = pa(m,"Block",fingwide,(finghei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing2,0.9,1,0.9)
  179. wRing2 = weld(pRing2,bRing2,pRing2,0,pRing1.Size.y/2,0,0,0,0)
  180. bRing3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  181. Ring3 = weld(bRing3,pRing2,bRing3,0,pRing2.Size.y/2,0,0,0,0)
  182. pRing3 = pa(m,"Block",fingwide,(tiphei*0.98)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pRing3,0.9,1,0.9)
  183. wRing3 = weld(pRing3,bRing3,pRing3,0,pRing3.Size.y/2,0,0,0,0)
  184. bPinkie1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  185. Pinkie1 = weld(bPinkie1,Palm,bPinkie1,-x/2+((fingwide/2)+((fingwide)*3)),y/2,0,0,0,0)
  186. pPinkie1 = pa(m,"Block",fingwide,(finghei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie1,0.9,1,0.9)
  187. wPinkie1 = weld(pPinkie1,bPinkie1,pPinkie1,0,pPinkie1.Size.y/2,0,0,0,0)
  188. bPinkie2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  189. Pinkie2 = weld(bPinkie2,pPinkie1,bPinkie2,0,pPinkie1.Size.y/2,0,0,0,0)
  190. pPinkie2 = pa(m,"Block",fingwide,(finghei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie2,0.9,1,0.9)
  191. wPinkie2 = weld(pPinkie2,bPinkie2,pPinkie2,0,pPinkie1.Size.y/2,0,0,0,0)
  192. bPinkie3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  193. Pinkie3 = weld(bPinkie3,pPinkie2,bPinkie3,0,pPinkie2.Size.y/2,0,0,0,0)
  194. pPinkie3 = pa(m,"Block",fingwide,(tiphei*0.8)*s,fingwide,true,false,HTrans,HRef,HCol) mbm(pPinkie3,0.9,1,0.9)
  195. wPinkie3 = weld(pPinkie3,bPinkie3,pPinkie3,0,pPinkie3.Size.y/2,0,0,0,0)
  196. bThumb1 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  197. Thumb1 = weld(bThumb1,Palm,bThumb1,-x/2+(fingwide/7),-y*0.1,-fingwide*0.25,0,0,0)
  198. 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)
  199. wThumb1 = weld(pThumb1,bThumb1,pThumb1,0,pThumb1.Size.y/2,0,0,0,0)
  200. bThumb2 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  201. Thumb2 = weld(bThumb2,pThumb1,bThumb2,0,pThumb1.Size.y/2,0,0,0,0)
  202. 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)
  203. wThumb2 = weld(pThumb2,bThumb2,pThumb2,0,pThumb1.Size.y/2,0,0,0,0)
  204. bThumb3 = pa(m,"Block",0,0,0,false,false,HTrans,HRef,HCol)
  205. Thumb3 = weld(bThumb3,pThumb2,bThumb3,0,pThumb2.Size.y/2,0,0,0,0)
  206. 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)
  207. wThumb3 = weld(pThumb3,bThumb3,pThumb3,0,pThumb3.Size.y/2,0,0,0,0)
  208. w["a1"] = Pinkie1
  209. w["a2"] = Pinkie2
  210. w["a3"] = Pinkie3
  211. w["b1"] = Ring1
  212. w["b2"] = Ring2
  213. w["b3"] = Ring3
  214. w["c1"] = Mid1
  215. w["c2"] = Mid2
  216. w["c3"] = Mid3
  217. w["d1"] = Point1
  218. w["d2"] = Point2
  219. w["d3"] = Point3
  220. w["e1"] = Thumb1
  221. w["e2"] = Thumb2
  222. w["e3"] = Thumb3
  223. w.e1.C1 = ca(0,rd(35),rd(-20))
  224. w.e2.C1 = ca(rd(20),0,0)
  225. w.e3.C1 = ca(rd(20),0,0)
  226. w.d1.C1 = ca(0,0,rd(-3))
  227. w.c1.C1 = ca(0,0,rd(-1))
  228. w.b1.C1 = ca(0,0,rd(1))
  229. w.a1.C1 = ca(0,0,rd(3))
  230. function c1(wexx,smmx,xx,yy,zz)
  231. coroutine.resume(coroutine.create(function()
  232. local xx2,yy2,zz2 = wexx.C1:toEulerAnglesXYZ()
  233. local aa,bb,cc = wexx.C0.x,wexx.C0.y,wexx.C0.z
  234. local twa = smmx/wt
  235. Anim.Welding = Anim.Welding + 1
  236. for i=0,twa,1 do wexx.C0 = cf(aa,bb,cc)
  237. wexx.C1 = ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i))
  238. wait()
  239. end
  240. Anim.Welding = Anim.Welding - 1
  241. end))
  242. end
  243. 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
  244. 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
  245. function HandSign(form,spee) form = form:lower() if spee == nil then spee = 1 end
  246. if form == "f" then
  247. CloseFing("d",spee) CloseFing("a",spee) CloseFing("b",spee)
  248. c1(w["c1"],spee,0,0,0) c1(w["c2"],spee,0,0,0) c1(w["c3"],spee,0,0,0)
  249. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  250. elseif form == "fist" then
  251. CloseFing("d",spee) CloseFing("a",spee) CloseFing("b",spee) CloseFing("c",spee)
  252. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  253. elseif form == "pointer" then
  254. CloseFing("a",spee) CloseFing("b",spee) CloseFing("c",spee)
  255. c1(w["d1"],spee,5,0,0) c1(w["d2"],spee,5,0,0) c1(w["d3"],spee,5,0,0)
  256. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  257. elseif form == "v" then
  258. CloseFing("a",spee) CloseFing("b",spee)
  259. c1(w["c1"],spee,1,0,15) c1(w["c2"],spee,1,0,0) c1(w["c3"],spee,1,0,0)
  260. c1(w["d1"],spee,1,0,-15) c1(w["d2"],spee,1,0,0) c1(w["d3"],spee,1,0,0)
  261. c1(w["e1"],spee,70,40,-90) c1(w["e2"],spee,50,0,0) c1(w["e3"],spee,50,0,0)
  262. elseif form == "free" or form == "five" then
  263. OpenFing("a",spee) OpenFing("b",spee) OpenFing("c",spee) OpenFing("d",spee)
  264. c1(w["e1"],spee,0,35,-20) c1(w["e2"],spee,20,0,0) c1(w["e3"],spee,20,0,0)
  265. elseif form == "ride" then
  266. c1(w["a1"],spee,60,0,0) c1(w["a2"],spee,-30,0,0) c1(w["a3"],spee,-30,0,0)
  267. c1(w["b1"],spee,30,0,0) c1(w["b2"],spee,65,0,0) c1(w["b3"],spee,60,0,0)
  268. c1(w["c1"],spee,30,0,0) c1(w["c2"],spee,65,0,0) c1(w["c3"],spee,60,0,0)
  269. c1(w["d1"],spee,30,0,0) c1(w["d2"],spee,65,0,0) c1(w["d3"],spee,60,0,0)
  270. c1(w["e1"],spee,-70,185,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  271. elseif form == "gun" then
  272. CloseFing("a",spee) CloseFing("b",spee)
  273. c1(w["c1"],spee,0,0,1) c1(w["c2"],spee,0,0,0) c1(w["c3"],spee,0,0,0)
  274. c1(w["d1"],spee,0,0,-1) c1(w["d2"],spee,0,0,0) c1(w["d3"],spee,0,0,0)
  275. c1(w["e1"],spee,-60,90,0) c1(w["e2"],spee,20,0,0) c1(w["e3"],spee,-20,0,0)
  276. elseif form == "wide" then
  277. c1(w["a1"],spee,-3,0,45) c1(w["a2"],spee,-3,0,0) c1(w["a3"],spee,-3,0,0)
  278. c1(w["b1"],spee,-3,0,15) c1(w["b2"],spee,-3,0,0) c1(w["b3"],spee,-3,0,0)
  279. c1(w["c1"],spee,-3,0,-15) c1(w["c2"],spee,-3,0,0) c1(w["c3"],spee,-3,0,0)
  280. c1(w["d1"],spee,-3,0,-45) c1(w["d2"],spee,-3,0,0) c1(w["d3"],spee,-3,0,0)
  281. c1(w["e1"],spee,-70,90,0) c1(w["e2"],spee,10,0,0) c1(w["e3"],spee,-10,0,0)
  282. elseif form == "wide2" then
  283. c1(w["a1"],spee,-18,0,45) c1(w["a2"],spee,36,0,0) c1(w["a3"],spee,30,0,0)
  284. c1(w["b1"],spee,-18,0,15) c1(w["b2"],spee,36,0,0) c1(w["b3"],spee,30,0,0)
  285. c1(w["c1"],spee,-18,0,-15) c1(w["c2"],spee,36,0,0) c1(w["c3"],spee,30,0,0)
  286. c1(w["d1"],spee,-18,0,-45) c1(w["d2"],spee,36,0,0) c1(w["d3"],spee,30,0,0)
  287. c1(w["e1"],spee,-50,90,-10) c1(w["e2"],spee,5,0,-30) c1(w["e3"],spee,-10,0,-40)
  288. elseif form == "grab2" then
  289. c1(w["a1"],spee,-70,-65,0) c1(w["a2"],spee,40,0,0) c1(w["a3"],spee,20,0,0)
  290. c1(w["b1"],spee,-70,-20,0) c1(w["b2"],spee,40,0,0) c1(w["b3"],spee,20,0,0)
  291. c1(w["c1"],spee,-70,20,-0) c1(w["c2"],spee,40,0,0) c1(w["c3"],spee,20,0,0)
  292. c1(w["d1"],spee,-70,65,-0) c1(w["d2"],spee,40,0,0) c1(w["d3"],spee,20,0,0)
  293. c1(w["e1"],spee,-70,150,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  294. elseif form == "grab3" then
  295. c1(w["a1"],spee,-30,-40,30) c1(w["a2"],spee,50,0,0) c1(w["a3"],spee,35,0,0)
  296. c1(w["b1"],spee,-30,-15,12) c1(w["b2"],spee,50,0,0) c1(w["b3"],spee,35,0,0)
  297. c1(w["c1"],spee,-30,15,-12) c1(w["c2"],spee,50,0,0) c1(w["c3"],spee,35,0,0)
  298. c1(w["d1"],spee,-30,40,-30) c1(w["d2"],spee,50,0,0) c1(w["d3"],spee,35,0,0)
  299. c1(w["e1"],spee,-55,205,0) c1(w["e2"],spee,30,0,0) c1(w["e3"],spee,30,0,0)
  300. end
  301. end
  302. function ColFings(iscol)
  303. pPinkie1.CanCollide = iscol
  304. pPinkie2.CanCollide = iscol
  305. pPinkie3.CanCollide = iscol
  306. pRing1.CanCollide = iscol
  307. pRing2.CanCollide = iscol
  308. pRing3.CanCollide = iscol
  309. pMid1.CanCollide = iscol
  310. pMid2.CanCollide = iscol
  311. pMid3.CanCollide = iscol
  312. pPoint1.CanCollide = iscol
  313. pPoint2.CanCollide = iscol
  314. pPoint3.CanCollide = iscol
  315. pThumb1.CanCollide = iscol
  316. pThumb2.CanCollide = iscol
  317. pThumb3.CanCollide = iscol
  318. end
  319. function ray(Pos, Dir)
  320. return Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999), c)
  321. end
  322. 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
  323. coroutine.resume(coroutine.create(function()
  324. 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)
  325. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,25) end
  326. for i=1,4 do
  327. coroutine.resume(coroutine.create(function()
  328. 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"
  329. 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)
  330. 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)
  331. Dustplosion(cf(pos.p+v3(0,2*s,0)),18*s,{"Dark green","Bright green","Brown"},1)
  332. if eos == "earth" then
  333. for x=1,8 do
  334. sw.CFrame = sw.CFrame *cf(0,sw.Size.y/8,0) wait() end wait(ra(1,5))
  335. for x=1,20 do
  336. sw.CFrame = sw.CFrame *cf(0,-sw.Size.y/20,0) wait()
  337. end sw:Remove()
  338. else
  339. for x=1,25 do
  340. 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
  341. end sw:Remove()
  342. end)) end
  343. wait(0.3)
  344. DmgHumanoidsNear(pos.p,dmg,rndmg,5.5*s*(siz/4),forc)
  345. end))
  346. end
  347. function Dustplosion(onb,scale,col,cls) coroutine.resume(coroutine.create(function()
  348. for x=1,cls do coroutine.resume(coroutine.create(function()  
  349. 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"
  350. swm.MeshId = asset .. Decs.Cloud sw.CFrame = sw.CFrame + v3(ra(-scale,scale)/8,ra(-scale,scale)/8,ra(-scale,scale)/8)
  351. for i=1,scale,0.25 do
  352. swm.Scale = v3(i*1.5,i*1,i*1.5) sw.Transparency = ((i/scale)/2) + 0.45
  353. wait()
  354. end
  355. sw:Remove()
  356. end)) end
  357. end)) end
  358. 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  
  359. 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
  360. function BlastWave(onb,scale,ymes,col) coroutine.resume(coroutine.create(function()
  361. 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"
  362. swm.MeshId = BlastMesh.MeshId
  363. for i=1,scale,scale/11 do
  364. 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
  365. wait()
  366. end
  367. sw:Remove()
  368. end))
  369. end
  370. 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)
  371. e1.Transparency = 0.6 e1.TopSurface = 0 e1.BottomSurface = 0 e1.Parent = Torm e1.CFrame = onb local e1m = Instance.new("SpecialMesh")
  372. 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"
  373. 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"
  374. r2m.Parent = r2 r2m.Scale = Vector3.new(3,3,3) r2m.MeshId = RingMesh.MeshId local bla = Instance.new("Part") bla.Anchored = true
  375. 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")
  376. 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)
  377. r1m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal) r2m.Scale = r1m.Scale + Vector3.new(pluscal,pluscal,pluscal)
  378. 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)
  379. 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
  380. function Hurtsplosion(pos,dmg,rndmg,siz,forc)
  381. coroutine.resume(coroutine.create(function() local boomcol = {"Bright red","New Yeller","Neon orange"}
  382. for i=1,3 do
  383. coroutine.resume(coroutine.create(function()
  384. 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
  385. plos.CFrame = cf(pos + v3(0,0,0)) * ca(rd(ra(-360,360)),rd(ra(-360,360)),rd(ra(-360,360)))
  386. plos.Mesh.Scale = v3(0.1,0.1,0.1)
  387. for i=0.3,1,0.03 do local plc = plos.CFrame
  388. plos.Mesh.Scale = v3(i*6,i*6,i*6) plos.Transparency = i plos.CFrame = plc * ca(rd(3),rd(3),0)
  389. wait()
  390. end
  391. plos:Remove()
  392. end))
  393. end
  394. end))
  395. wait(0.1)
  396. DmgHumanoidsNear(pos,dmg,rndmg,5.5*s*siz,forc)
  397. end
  398. function DmgHumanoidsNear(pos,dmg,rndmg,mag,forc)
  399. local function kidive(ob)
  400. for i,v in pairs(ob:children()) do
  401. 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
  402. v:BreakJoints() v.Velocity = cf(pos,v.Position).lookVector*forc
  403. end
  404. if v:IsA("Humanoid") and v ~= hu and v.Parent:findFirstChild("Torso") then
  405. if (pos - v.Parent.Torso.Position).magnitude < mag then local tdmg = dmg*ra(1,rndmg)
  406. if v.Parent:findFirstChild("Hh") == nil then local hh= Instance.new("NumberValue",v.Parent) hh.Name = "Hh"
  407. hh.Value = v.Health - tdmg else v.Parent.Hh.Value = v.Health - (tdmg*3.5) end
  408. v.Health = v.Parent.Hh.Value if v.Parent.Hh.Value < 1 then v.Parent:BreakJoints() end
  409. end
  410. end
  411. if v:IsA("Model") or v:IsA("Workspace") then kidive(v) end end end
  412. kidive(workspace)
  413. end
  414. function Fire(bullet,typez,siz,dmg,rndmg,forc)
  415. if typez == 1 then
  416. bullet.Anchored = true
  417. local bullethit = false
  418. local tyms = 0
  419. repeat
  420. tyms = tyms + 2
  421. local bhit,bpos = ray(bullet.Position,bullet.Position - (bullet.CFrame *cf(0,0,-1)).p)
  422. 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
  423. if tyms%32 == 0 then wait() end
  424. until bullethit or bullet.Position.y < -300 or tyms > 800
  425. bullet.CFrame = bullet.CFrame *cf(0,0,8) bullet:Remove()
  426. if bullet.Position.y < -300 then
  427. else
  428. Hurtsplosion(bullet.Position,dmg,rndmg,siz,forc)
  429. end
  430. elseif typez == 2 then
  431. bullet.Anchored = true
  432. local bullethit = false
  433. local tyms = 0
  434. local ming = 0.001
  435. repeat
  436. if tyms > 70 and (ming == 0.001 or ming == -2.5) then ming = -2.5
  437. 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
  438. end
  439. tyms = tyms + 2
  440. local bhit,bpos = ray(bullet.Position,bullet.Position - (bullet.CFrame *cf(0,0,-1)).p)
  441. 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
  442. if tyms%16 == 0 then wait() end
  443. until bullethit or bullet.Position.y < -300 or tyms > 500
  444. bullet.CFrame = bullet.CFrame *cf(0,0,8) bullet:Remove()
  445. if bullet.Position.y < -300 then
  446. else
  447. Hurtsplosion(bullet.Position,dmg,rndmg,siz,forc)
  448. end
  449. elseif typez == 3 then
  450. end
  451. end
  452. function ShortifiedAnim(theanim)
  453. if theanim == "Beam" then
  454. 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
  455. 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)
  456. dias = {} loldiv = 360/8 for x=0,360,loldiv do
  457. 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
  458. diam.Scale = v3(3*s,9*s,3*s) table.insert(dias,dia)
  459. end Button = true coroutine.resume(coroutine.create(function() local tardz = 0 repeat wait() tardz = tardz+ 15
  460. crom.CFrame = Palm.CFrame *ca(rd(-90),0,0) *cf(0,5.5*s,2*s) *ca(0,rd(tardz),0)
  461. 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
  462.  until not Button for x2=0.5,1,0.05 do wait() crom.Transparency = x2 end   end))
  463. 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))
  464. wait(1) local beamoffset = v3(0,0,0)
  465. local b1 = pa(m,"Ball",10*s,10*s,10*s,false,false,0.1,0,LaserCol) b1.Anchored = true
  466. local b2 = pa(m,"Block",10*s,1,10*s,false,false,0.1,0,LaserCol) b2.Anchored = true  local b2m = it("CylinderMesh",b2)
  467. local b3 = pa(m,"Ball",10*s,10*s,10*s,false,false,0.1,0,LaserCol) b3.Anchored = true
  468. local bpos = nil local bhit = nil local ts = 0
  469.  repeat beamoffset = v3(ra(-2*s,2*s),ra(-2*s,2*s),ra(-2*s,2*s)) ts = ts + 1
  470. bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,0,1)).p)
  471. if bhit == nil or (Palm.Position - bpos).magnitude > 1500 then break end
  472. b1.CFrame = Palm.CFrame *cf(0,3*s,-11*s)
  473. b3.CFrame = cf(bpos) local lenz = (b1.Position - b3.Position).magnitude
  474. b2.CFrame = cf(b1.Position,b3.Position) *ca(rd(90),0,0) *cf(0,-lenz/2,0)  b2m.Scale = v3(1,lenz,1)
  475. b1.CFrame = b1.CFrame + beamoffset b2.CFrame = b2.CFrame + beamoffset b3.CFrame = b3.CFrame + beamoffset
  476. 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
  477. wait()  until not Button or ts > 600
  478.   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))
  479.  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))
  480. wait(1)  clearit(dias) crom:Remove()
  481. end
  482. end
  483. PalmLev = it("BodyPosition",Palm)
  484. PalmFace = it("BodyGyro",Palm) PalmFace.maxTorque = v3(0,0,0)
  485. coroutine.resume(coroutine.create(function()
  486. PalmLev.position = (t.CFrame *cf(handoffset)).p
  487. local yspi = 0
  488. while true do yspi = yspi + 8
  489. if Anim.a == "Gun" or Anim.a == "Ride" or Anim.a == "Pound" then
  490. Facing = "Mouse" bgx = -90 bgy = 90 bgz = 0
  491. elseif Anim.a == "Fu" or Anim.a == "Fist" or Anim.a == "GroundGrip" then
  492. Facing = "Mouse" bgx = -90 bgy = 0 bgz = 0
  493. elseif Anim.a == "Splat" or Anim.a == "Beam" then
  494. Facing = "Mouse" bgx = 0 bgy = 0 bgz = 0
  495. elseif Anim.a == "None" then
  496. Facing = "Owner" bgx = -90 bgy = 0 bgz = 0 Posing = "Follow"
  497. elseif Anim.a == "Shower" then
  498. Facing = "None" bgx = 0 bgy = 0 bgz = 0 Posing = "TopOwner"
  499. end
  500. if Posing == "Follow" then
  501. PalmLev.maxForce = v3(1/0,1/0,1/0) PalmLev.position = (t.CFrame *cf(handoffset) *cf(0,0,0)).p
  502. elseif Posing == "TopOwner" then
  503. PalmLev.maxForce = v3(1/0,1/0,1/0) PalmLev.position = (t.CFrame *cf(0,12*s,0)).p
  504. end
  505. if Facing == "Owner" then
  506. PalmFace.maxTorque = v3(1/0,1/0,1/0) PalmFace.cframe = cf(Palm.Position,he.Position) *ca(rd(bgx),rd(bgy),rd(bgz))
  507. elseif Facing == "Mouse" and mou ~= nil and Equip then
  508. 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
  509. if Anim.b == "None" or Anim.a == "Beam" or Anim.a == "Ride" then
  510. PalmFace.cframe = cf(Palm.Position,mou.Hit.p) *ca(rd(bgx),rd(bgy),rd(bgz)) wait(0.05)
  511. end end end
  512. wait(0.05)
  513. end
  514. end))
  515. function FireFinger(lasercol,ffingz,targ,typez,siz,dmg,rndmg,forc) coroutine.resume(coroutine.create(function()
  516. 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"
  517. local lw = weld(laser,ffingz,laser,0,ffingz.Size.y/0.8 +(siz/2.5),0,rd(90),0,0)
  518. for i=1,0.4,-0.05 do laser.Transparency = i wait() end
  519. BlastWave(ffingz.CFrame*cf(0,ffingz.Size.y*1.3,0)*ca(0,0,0),ffingz.Size.x*1.6,1.8,LaserCol2)
  520. lw:Remove() laser.CFrame = cf(laser.Position,targ)
  521. Fire(laser,typez,siz,dmg,rndmg,forc)
  522. end))
  523. end
  524. GrabWeld = it("Weld",m)
  525. Palm.Touched:connect(function(touch)
  526. if Anim.a == "Ride" and GrabWeld.Part1 == nil and touch.Parent:findFirstChild("Torso") and touch.Parent:findFirstChild("Humanoid") then
  527. local tor = touch.Parent.Torso touch.Parent.Humanoid.PlatformStand = true
  528. 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)
  529. end
  530. end)
  531. re(bp,"Hand")
  532. hb = it("HopperBin",bp) hb.Name = "Hand"
  533. hb.Selected:connect(function(mouse) mou = mouse Equip = true
  534. mouse.KeyDown:connect(function(k)  k = k:lower()
  535. if Anim.a == "Ride" and k == "f" then FireFinger(LaserCol,pPinkie3,mouse.Hit.p,1,2.25,1,18,30)  end
  536. if Anim.b ~= "None" or Anim.Welding ~= 0 then  return end
  537. if Anim.a == "None" then
  538. if k == "f" then -- on anim on
  539. Anim.a = "Gun" HandSign("Gun",0.7)
  540. elseif k == "p" then
  541. Anim.a = "Fu" HandSign("f",1)
  542. elseif k == "g" then
  543. Anim.a = "Fist" HandSign("fist",1)
  544. elseif k == "c" then
  545. Anim.a = "Splat" HandSign("wide",1)
  546. elseif k == "r" then
  547. Anim.a = "Ride" HandSign("ride",1) Posing = "None"
  548. elseif k == "v" then
  549. Anim.a = "Shower" HandSign("grab2",1) PalmFace.cframe = cf(0,0,0) *ca(0,0,0)
  550. elseif k == "b" then
  551. Anim.a = "Pound" HandSign("fist",1)
  552. elseif k == "x" then
  553. Anim.a = "GroundGrip" HandSign("grab2",1)
  554. elseif k == "z" then
  555. Anim.a = "Beam" HandSign("wide2",1)
  556. end
  557. else
  558. if k == "f" and Anim.a == "Gun" then -- on anim off
  559. Anim.a = "None" HandSign("five",0.8)
  560. elseif k == "p" and Anim.a == "Fu" then
  561. Anim.a = "None" HandSign("five",0.8)
  562. elseif k == "g" and Anim.a == "Fist" then
  563. Anim.a = "None" HandSign("five",0.8)
  564. elseif k == "c" and Anim.a == "Splat" then
  565. Anim.a = "None" HandSign("five",0.8)
  566. elseif k == "r" and Anim.a == "Ride" then
  567. Anim.a = "None" HandSign("five",0.8) GrabWeld.Part0 = nil Anim.b = "None" Posing = "Follow"  Facing = "Owner"
  568. if GrabWeld.Part1 ~= nil and GrabWeld.Part1.Parent:findFirstChild("Humanoid") ~= nil then GrabWeld.Part1.Parent.Humanoid.PlatformStand = false end GrabWeld.Part1 = nil
  569. elseif k == "v" and Anim.a == "Shower" then
  570. Anim.a = "None" HandSign("five",0.8) Posing = "Follow" Facing = "Owner"
  571. elseif k == "b" and Anim.a == "Pound" then
  572. Anim.a = "None" HandSign("five",0.8)
  573. elseif k == "x" and Anim.a == "GroundGrip" then
  574. Anim.a = "None" HandSign("five",0.8)
  575. elseif k == "z" and Anim.a == "Beam" then
  576. Anim.a = "None" HandSign("five",0.8)
  577. end
  578. end
  579. end)
  580. mouse.Button1Down:connect(function()
  581. if Anim.a == "None" or Anim.b ~= "None" then return end
  582. if Anim.a == "Gun" then
  583. 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"
  584. elseif Anim.a == "Fu" then
  585. Anim.b = "Fu" FireFinger(LaserCol,pMid3,mouse.Hit.p,1,3.65,2,14,95) wait(0.25) Anim.b = "None"
  586. elseif Anim.a == "Fist" then
  587. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  588. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  589. Anim.b = "Fist" Posing = "None" PalmFace.cframe = cf(Palm.Position,bpos) *ca(rd(-90),0,0)
  590. PalmLev.position = (Palm.CFrame *cf(0,-15*s,0)).p
  591. wait(0.45)
  592. PalmLev.position = bpos + ((Palm.CFrame *cf(0,1*s,0)).p - Palm.Position)
  593. 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
  594. Explode(Palm.CFrame *cf(0,6*s,0) *ca(rd(180),0,0),15*s,ts(bhit.BrickColor))
  595. DmgHumanoidsNear((Palm.CFrame *cf(0,8,0)).p,3,10,(12*s)+2,105)
  596. if not bhit.Anchored then PalmLev.position = (Palm.CFrame *cf(0,12*s,0)).p wait(0.5) end
  597. wait(1) Posing = "Follow" Anim.b = "None"
  598. elseif Anim.a == "Splat" then
  599. if mouse.Target == nil and (Palm.Position - mouse.Hit.p).magnitude > 500 then return end local bpos = mouse.Hit.p
  600. Anim.b = "Splat" Posing = "None"
  601. 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)
  602. local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 5*s or tz > 1.3
  603. for i=-90,0,5 do
  604. PalmLev.position = PalmLev.position + v3(0,2*s,0) PalmFace.cframe = cf(0,0,0) *ca(0,yb,0) *ca(rd(i),0,0)
  605. wait()
  606. end  wait(0.2)
  607. for i=0,-100,-10 do
  608. local lewd = i
  609. if lewd < -50 then lewd = -95 end
  610. 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)
  611. wait()
  612. end wait(0.2)
  613. 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)
  614. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,16)
  615. DmgHumanoidsNear((Palm.CFrame *cf(0,0,-1)).p,3,20,(15*s)+2,110)
  616. ShockWave(Palm.CFrame *ca(rd(90),0,0),25*s,LaserCol)
  617. wait(1) Posing = "Follow" Anim.b = "None"
  618. elseif Anim.a == "Ride" and Button == false then
  619. Posing = "None" Anim.b = "Ride"
  620. Button = true
  621. repeat PalmLev.position = (Palm.CFrame *cf(0,10,0)).p wait() until Button == false
  622.  Anim.b = "None"
  623. elseif Anim.a == "Shower" and Button == false then
  624. Anim.b = "Shower" Button = true
  625. repeat
  626. local targz = Palm.Position + v3(0,20*s,0)
  627. if ra(1,12) == 1 then FireFinger(LaserCol,pPinkie3,targz,2,4,1,18,55) end
  628. if ra(1,13) == 1 then FireFinger(LaserCol,pRing3,targz,2,4,1,18,60) end
  629. if ra(1,12) == 1 then FireFinger(LaserCol,pMid3,targz,2,4,1,18,65) end
  630. if ra(1,13) == 1 then FireFinger(LaserCol,pPoint3,targz,2,4,1,18,70) end
  631. if ra(1,12) == 1 then FireFinger(LaserCol,pThumb3,targz,2,4,1,18,80) end
  632. PalmFace.cframe = PalmFace.cframe *ca(0,rd(10),0)
  633. wait()
  634. until Button == false
  635. Anim.b = "None"
  636. elseif Anim.a == "Pound" and Anim.b == "None" then Posing = "None" Anim.b = "Pound"
  637. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  638. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  639. PalmLev.position = bpos + v3(0,15*s,0)
  640. local ya,yb,yc = PalmFace.cframe:toEulerAnglesXYZ() PalmFace.cframe = ca(ya,yb,yc)
  641.  local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 5*s or tz > 1.3  wait(0.1)
  642. for i=-90,-10,10 do
  643. PalmFace.cframe = ca(ya,yb,yc) *ca(0,0,rd(i+90)) PalmLev.position = PalmLev.position + v3(0,2.5*s,0)
  644. wait() end wait(0.25) local realcf = cf(v3(he.Position.x,0,he.Position.z),v3(Palm.Position.x,0,Palm.Position.z))
  645. for i=-10,-90,-10 do
  646. PalmFace.cframe =  ca(ya,yb,yc) *ca(0,0,rd(i+90)) PalmLev.position = PalmLev.position - v3(0,4*s,0)
  647. wait() end PalmFace.cframe = realcf *ca(rd(-90),rd(90),0) wait(0.25)
  648. 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)
  649. local de = it("Decal",cr) de.Face = "Top" de.Texture = asset .. Decs.Crack Serv.d:AddItem(cr,16)
  650. Dustplosion(Palm.CFrame *cf(2*s,0,0) *ca(rd(90),0,rd(90)),30*s,{"Dark green","Bright green","Brown"},3)
  651. ShockWave(Palm.CFrame *cf(2*s,0,0) *ca(rd(90),0,rd(90)),20*s,ts(bhit.BrickColor))
  652. DmgHumanoidsNear((Palm.CFrame *cf(0,1,0)).p,1,20,(15*s)+2,90) wait(0.2)
  653. local palmcf = cf(bpos) local earthsplos = ra(5,8) palmcf = Palm.CFrame *ca(0,rd(90),0) *ca(rd(-90),0,rd(0))
  654. for i=1,earthsplos do Earthsplosion(palmcf *cf(0,-2*s,((i*7)+7)*s),10,1,20,75) wait(0.1) end
  655. Earthsplosion(palmcf *cf(0,-2*s,(((earthsplos+1)*7)+7)*s),16,2,25,75)
  656.       wait(1) Posing = "Follow" wait(0.25) Anim.b = "None"
  657. elseif Anim.a == "GroundGrip" then Posing = "None" Anim.b = "GroundGrip"
  658. local bhit,bpos = ray(Palm.Position,Palm.Position - (Palm.CFrame *cf(0,-1,0)).p)
  659. if bhit == nil or (Palm.Position - bpos).magnitude > 500 then return end
  660. PalmLev.position = bpos + v3(0,27*s,0) ColFings(false)
  661. local tz = 0 repeat wait() tz = tz + wait() until (PalmLev.position - Palm.Position).magnitude < 8*s or tz > 1.3  wait(0.1)
  662. local thepos = (Palm.CFrame *cf(0,-0.1*s,0)).p - Palm.Position
  663. PalmFace.cframe = cf(Palm.Position,bpos + thepos) *ca(rd(-90),0,0)
  664. 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)
  665. 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
  666. 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)
  667. coroutine.resume(coroutine.create(function() for xz=1,70,7 do PalmLev.position = bpos + v3(0,xz*s,0) wait(0.06) end end))
  668. wait(0.25) Dustplosion(cf(bpos),30*s,{"Dark green","Bright green","Brown"},3) local lolra = ra(-360,360)
  669. Earthsplosion(cf(bpos),25,1,20,125,"sand") for yyy=0,360,60 do  coroutine.resume(coroutine.create(function()
  670. for zzz=1,4 do
  671. Earthsplosion(cf(bpos) *ca(0,rd(yyy+lolra),0) *cf(0,0,zzz*15*s),10,1,20,75) wait(0.14)
  672. 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
  673. 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"
  674. elseif Anim.a == "Beam" and not Button and Anim.b == "None" then Anim.b = "Beam"
  675. ShortifiedAnim("Beam") wait(0.5) Anim.b = "None"
  676. end
  677. end)
  678. mouse.Button1Up:connect(function()
  679. Button = false
  680. end)
  681. mouse.Move:connect(function()
  682. end)
  683. end)
  684. hb.Deselected:connect(function(mouse)
  685. Equip = false
  686. end)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top