Advertisement
Guest User

Untitled

a guest
Jun 28th, 2016
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. v3 = Vector3.new
  2. cn = CFrame.new
  3. ca2 = CFrame.Angles
  4. mf = math.floor
  5. mran = math.random
  6. mrad = math.rad
  7. mdeg = math.deg
  8. ca = function(x,y,z) return ca2(mrad(x),mrad(y),mrad(z)) end
  9. mran2 = function(a,b) return mran(a*1000,b*1000)/1000 end
  10. ud=UDim2.new
  11. bn = BrickColor.new
  12. c3 = Color3.new
  13. -----
  14. --Player='Diitto'
  15. Players=game:service'Players'
  16. Player=Players.LocalPlayer --[Player]
  17. PChar=Player.Character
  18.  
  19. as,so={},{'metal','Block','Slash','Slash2','Hit','Kick'}
  20. as.corner='11294911'
  21. as.cone='1033714'
  22. as.ring="3270017"
  23. as.Chakram='47260990'
  24. as.ring2='18430887'
  25. as.blast='20329976'
  26. as.missile='10207677'
  27. as.fire='2693346'
  28. as.boom='3264793'
  29. as.slash='10209645'
  30. as.abscond='2767090'
  31. as.firelaser='13775494'
  32. as.diamond='9756362'
  33. as.metal='rbxasset://sounds\\unsheath.wav'
  34. as.Block = 'rbxasset://sounds\\metal.ogg'
  35. as.Slash = '10209645'
  36. as.Slash2 = '46760716'
  37. as.Hit='10209583'
  38. as.Kick='46153268'
  39. as.cast='2101137'
  40. as.rockhead= '21629626'
  41. as.rockheadt='21629620'
  42.  
  43.  
  44. for i,v in pairs(as) do
  45. if type(tonumber(v:sub(1,3)))=="number" then
  46. as[i]="http://www.roblox.com/asset/?id="..v
  47. end
  48. end
  49.  
  50. LastMade=nil
  51. iNew=function(tab)
  52. local v=Instance.new(tab[1])
  53. for Ind,Val in pairs(tab) do
  54. if Ind~=1 and Ind~=2 then
  55. v[Ind] = Val
  56. end
  57. end
  58. v.Parent=tab[2]==0 and LastMade or tab[2]
  59. LastMade=v
  60. return v
  61. end
  62. iPart=function(tab)
  63. local v=Instance.new(tab.type or 'Part')
  64. if tab.type~='CornerWedgePart' then v.formFactor='Custom' end
  65. v.TopSurface=0 v.BottomSurface=0
  66. if tab.sc then
  67. v.Size=v3(tab[2]*tab.sc,tab[3]*tab.sc,tab[4]*tab.sc)
  68. else
  69. v.Size=v3(tab[2],tab[3],tab[4])
  70. end
  71. if tab.co then v.BrickColor=bn(tab.co) end
  72. if tab.tr then v.Transparency=tab.tr end
  73. if tab.rf then v.Reflectance=tab.rf end
  74. if tab.can then v.CanCollide=tab.can end
  75. if tab.cf then v.CFrame=tab.cf end
  76. if tab.an then v.Anchored=tab.an end
  77. if tab.na then v.Name=tab.na end
  78. if tab.ma then v.Material=tab.ma end
  79. v.Parent=tab[1]
  80. v:BreakJoints()
  81. LastMade=v
  82. return v
  83. end
  84. function getoutline(x,z,i)
  85. return math.sqrt(x^2+z^2)+(i or 0.05),mdeg(math.atan2(x,z))
  86. end
  87. function v32(cf)
  88. local x,y,z=cf:toEulerAnglesXYZ()
  89. return v3(mdeg(x),mdeg(y),mdeg(z))
  90. end
  91. WeldLib={}
  92. function GetWeld(weld,CO)
  93. if not WeldLib[weld] then
  94. local x0,y0,z0=weld.C0:toEulerAnglesXYZ()
  95. local x1,y1,z1=weld.C1:toEulerAnglesXYZ()
  96. WeldLib[weld]={[0]=v3(mdeg(x0),mdeg(y0),mdeg(z0)),[1]=v3(mdeg(x1),mdeg(y1),mdeg(z1))}
  97. end
  98. return weld['C'..CO].p,WeldLib[weld][CO]
  99. end
  100. function ClearWeld(weld)
  101. if WeldLib[weld] then WeldLib[weld]=nil end
  102. end
  103. function TweenNum(i,loops,i1,i2,smooth)
  104. smooth = smooth or 1
  105. local perc
  106. if smooth == 1 then perc = math.sin((math.pi/2)/loops*i) else perc = i/loops end
  107. local ton
  108. if i1 > i2 then
  109. ton = -math.abs(i1 - i2) *perc
  110. else
  111. ton = math.abs(i1 - i2) *perc
  112. end
  113. return i1+ton
  114. end
  115. function TweenV3(i,loops,v1,v2,smooth)
  116. smooth = smooth or 1
  117. local perc
  118. if smooth == 1 then perc = math.sin((math.pi/2)/loops*i) else perc = i/loops end
  119. local tox2,toy2,toz2 = 0,0,0
  120. if v1.x > v2.x then
  121. tox2 = -math.abs(v1.x - v2.x) *perc
  122. else
  123. tox2 = math.abs(v1.x - v2.x) *perc
  124. end
  125. if v1.y > v2.y then
  126. toy2 = -math.abs(v1.y - v2.y) *perc
  127. else
  128. toy2 = math.abs(v1.y - v2.y) *perc
  129. end
  130. if v1.z > v2.z then
  131. toz2 = -math.abs(v1.z - v2.z) *perc
  132. else
  133. toz2 = math.abs(v1.z - v2.z) *perc
  134. end
  135. return v3(v1.x + tox2,v1.y + toy2,v1.z + toz2)
  136. end
  137. function TweenCF(i,loops,origpos,origangle,nextpos,nextangle,smooth)
  138. smooth = smooth or 1
  139. local perc
  140. if smooth == 1 then perc = math.sin((math.pi/2)/loops*i) else perc = i/loops end
  141. local tox,toy,toz = 0,0,0
  142. if origangle.x > nextangle.x then tox = -math.abs(origangle.x - nextangle.x) *perc
  143. else tox = math.abs(origangle.x - nextangle.x) *perc end
  144. if origangle.y > nextangle.y then toy = -math.abs(origangle.y - nextangle.y) *perc
  145. else toy = math.abs(origangle.y - nextangle.y) *perc end
  146. if origangle.z > nextangle.z then toz = -math.abs(origangle.z - nextangle.z) *perc
  147. else toz = math.abs(origangle.z - nextangle.z) *perc end
  148. local tox2,toy2,toz2 = 0,0,0
  149. if origpos.x > nextpos.x then
  150. tox2 = -math.abs(origpos.x - nextpos.x) *perc
  151. else tox2 = math.abs(origpos.x - nextpos.x) *perc end
  152. if origpos.y > nextpos.y then
  153. toy2 = -math.abs(origpos.y - nextpos.y) *perc
  154. else toy2 = math.abs(origpos.y - nextpos.y) *perc end
  155. if origpos.z > nextpos.z then
  156. toz2 = -math.abs(origpos.z - nextpos.z) *perc
  157. else toz2 = math.abs(origpos.z - nextpos.z) *perc end
  158. return cn(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2)*ca(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  159. end
  160. function SetWeld(weld,CO,i, loops, origpos,origangle, nextpos,nextangle,smooth)
  161. loops=math.floor(loops)
  162. smooth = smooth or 1
  163. if not WeldLib[weld] then
  164. local x0,y0,z0=weld.C0:toEulerAnglesXYZ()
  165. local x1,y1,z1=weld.C1:toEulerAnglesXYZ()
  166. WeldLib[weld]={[0]=v3(mdeg(x0),mdeg(y0),mdeg(z0)),[1]=v3(mdeg(x1),mdeg(y1),mdeg(z1))}
  167. end
  168. local perc =smooth==1 and math.sin((math.pi/2)/loops*i) or i/loops
  169. --print(weld.Part1)
  170. local tox,toy,toz = 0,0,0
  171. tox = origangle.x > nextangle.x and -math.abs(origangle.x - nextangle.x) *perc or math.abs(origangle.x - nextangle.x) *perc
  172. toy = origangle.y > nextangle.y and -math.abs(origangle.y - nextangle.y) *perc or math.abs(origangle.y - nextangle.y) *perc
  173. toz = origangle.z > nextangle.z and -math.abs(origangle.z - nextangle.z) *perc or math.abs(origangle.z - nextangle.z) *perc
  174. local tox2,toy2,toz2 = 0,0,0
  175. tox2= origpos.x > nextpos.x and -math.abs(origpos.x - nextpos.x) *perc or math.abs(origpos.x - nextpos.x) *perc
  176. toy2= origpos.y > nextpos.y and -math.abs(origpos.y - nextpos.y) *perc or math.abs(origpos.y - nextpos.y) *perc
  177. toz2= origpos.z > nextpos.z and -math.abs(origpos.z - nextpos.z) *perc or math.abs(origpos.z - nextpos.z) *perc
  178. WeldLib[weld][CO] = v3(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  179. weld['C'..CO] = cn(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2)*ca(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  180. end
  181. function se(Key,Text)
  182. local Values = {}
  183. for value in (Text..Key):gmatch("(.-)"..Key) do
  184. table.insert(Values,value)
  185. end
  186. local Values2={}
  187. for i,v in pairs(Values) do Values2[i]=Values[i]:lower() end
  188. return Values,Values2
  189. end
  190. findplayer=function(nn)
  191. if not nn then return nil end
  192. local found
  193. for i,v in pairs(Players:GetPlayers()) do
  194. if string.find(v.Name:lower(),nn:lower()) and not found then found=v end
  195. end
  196. return found
  197. end
  198. LoopFunctions={}
  199. iLoopFunctions=-9000
  200. function DoLoop(times,func)
  201. iLoopFunctions=iLoopFunctions+1
  202. LoopFunctions[tonumber(iLoopFunctions)]={times,0,func}
  203. end
  204. function MeshEffect(times,cf1,cf2,scale1,scale2,tr1,tr2,col,type)
  205. local cf2=cf2 or cf1
  206. local v=iPart{Char,0.2,0.2,0.2,co=col,cf=cf1,na='Mesh',an=true,ca=false,tr=tr1}
  207. local mesh=iNew{'SpecialMesh',v,Scale=scale1}
  208. if type=='Brick' or type=='Sphere' then
  209. mesh.MeshType=type
  210. else
  211. mesh.MeshId=type
  212. end
  213. local x1,y1,z1 = cf1:toEulerAnglesXYZ()
  214. local x2,y2,z2 = cf2:toEulerAnglesXYZ()
  215. local count=0
  216. DoLoop(times,function(i) count=count+1
  217. mesh.Scale=TweenV3(count,times,scale1,scale2,1)*((type=='Brick' or type=='Sphere') and 5 or 1)
  218. v.Transparency=TweenNum(count,times,tr1,tr2,1)
  219. v.CFrame=TweenCF(count,times,cf1.p,v3(mdeg(x1),mdeg(y1),mdeg(z1)),cf2.p,v3(mdeg(x2),mdeg(y2),mdeg(z2)),1)
  220. if i==1 then v:Remove() end end)
  221. end
  222. Dmgv={8,16}
  223. HitDebounce={}
  224. Damage=function(Hum,Mult,Sound)
  225. if not Hum or Hum.Parent==Char then return end
  226. if not Hum.Parent:findFirstChild'Torso' then return end
  227. local HName=Hum.Parent.Name
  228. if HitDebounce[HName] and HitDebounce[HName]>tick() then return end
  229. HitDebounce[HName]=tick()+0.2
  230. local Mult=Mult or 1
  231. local Dealt=mran(Dmgv[1],Dmgv[2])*Mult
  232. local col=''
  233. if Hum.Parent:findFirstChild'Block' and Hum.Parent.Block.Value>0 then
  234. Hum.Parent.Block.Value=Hum.Parent.Block.Value-1
  235. col='Bright blue'
  236. else
  237. Hum.Health=Hum.Health-Dealt
  238. col='Bright red'
  239. end
  240. if Sound then so[col=='Bright blue' and 'Block' or 'Hit']:Play() end
  241. local DoH=iNew{'Model',Char,Name=col=='Bright blue' and 'Block' or Dealt}
  242. iNew{'Humanoid',DoH,MaxHealth=1/0,Health=1/0,Name=''}
  243. local Doh=iPart{DoH,0.6,0.2,0.6,co=col,an=true} Doh.Name='Head' iNew{'CylinderMesh',Doh}
  244. local dofs=Hum.Parent.Torso.CFrame*cn(mran2(-1.5,1.5),2.5,mran2(-1,1)) Doh.CFrame=dofs
  245. DoLoop(40,function(i) Doh.CFrame=dofs*cn(0,i*2,0) Doh.Transparency=i-0.5 if i==1 then DoH:Remove() end end)
  246. end
  247. AOEFind = function(pos,ra,f,f2) -- range get
  248. local p0,p1=pos-v3(ra/2,ra/2,ra/2),pos+v3(ra/2,ra/2,ra/2)
  249. pcall(function()
  250. for i,v in pairs(workspace:FindPartsInRegion3(Region3.new(p0,p1),nil,100)) do
  251. local Hum=v.Parent:findFirstChild'Humanoid'
  252. if v.Name=='Torso' and Hum and Hum.Health>0 and v.Parent~=Char then
  253. pcall(function() f(Hum,v) end)
  254. elseif f2 and not Hum then
  255. pcall(function() f2(v) end)
  256. end
  257. end
  258. end)
  259. end
  260. function FindSurface(part, position)
  261. local obj = part.CFrame:pointToObjectSpace(position)
  262. local siz = part.Size/2
  263. for i,v in pairs(Enum.NormalId:GetEnumItems()) do
  264. local vec = Vector3.FromNormalId(v)
  265. local wvec = part.CFrame:vectorToWorldSpace(vec)
  266. local vz = (obj)/(siz*vec)
  267. if (math.abs(vz.X-1) < 0.01 or math.abs(vz.Y-1) < 0.01 or math.abs(vz.Z-1) < 0.01) then
  268. return wvec,vec
  269. end
  270. end
  271. if part.className == "WedgePart" then
  272. return part.CFrame:vectorToWorldSpace(Vector3.new(0,0.707,-0.707)), Vector3.new(0,0.707,-0.707)
  273. end
  274. end
  275. function FaceBG(pos)
  276. BG.maxTorque=v3(1,1,1)/0
  277. BG.cframe=cn(Torso.Position,v3(pos.x,Torso.Position.y,pos.z))*cn(0,0,-1)
  278. end
  279. ray = function(Pos, Dir,tab,length) -- ray cast
  280. return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *(length or 999)),tab)
  281. end
  282. function Projectile(ofs,speed,part,adj,fhit,fnohit)
  283. part.CFrame=ofs*adj
  284. local stop=false
  285. DoLoop(50,function(x)
  286. local i=x
  287. if not stop then
  288. local hit,pos=ray(ofs.p,ofs.p-ofs*cn(0,0,-1).p,Char,speed+1)
  289. if hit then
  290. --Hit
  291. if fhit then i=1 stop=true
  292. ----
  293. local cof=FindSurface(hit,pos)
  294. --iPart{workspace,2,2,0.2,cf=cn(pos,pos+cof),an=true,co='Black'}
  295. ----
  296. local x,y,z=ofs:toEulerAnglesXYZ()
  297. ofs=cn(pos)*ca(mdeg(x),mdeg(y),mdeg(z))*cn(0,0,-part.Size.y/2)
  298. part.CFrame=ofs*adj
  299. fhit(hit,pos) end
  300. else
  301. ofs=ofs*cn(0,0,speed)
  302. part.CFrame=ofs*adj
  303. end
  304. if i==1 then
  305. if fnohit then fnohit(ofs.p) else part:Remove() end
  306. end
  307. end
  308. end)
  309. end
  310.  
  311. CC={'','Bright yellow','Flame reddish orange'}
  312. Scale=5
  313. Mat='Marble'
  314.  
  315. SpawnPoint=PChar.Torso.CFrame*cn(0,1+Scale*3,-20-Scale*1.5)
  316. name='Brock'
  317. pcall(function() _G.OldMod00:Remove() end)
  318.  
  319. ---------------
  320. UNDYING=function()
  321. pcall(function() fUNDYING:disconnect() end)
  322. pcall(function() local hum=Grabbing.Part1.Parent.Humanoid Grabbing:Remove() Grabbing=nil hum.PlatformStand=false end)
  323. Torso.Anchored=true Torso.Transparency=1 Torso.CanCollide=false
  324. Stand:Remove() Head:Remove()
  325. local RespawnPos=cn(Torso.CFrame.p+v3(0,Scale*5,0))*ca(0,mran(-360,360),0)
  326. wait(4)
  327. Anim='Reviving'
  328. local oldChar=Char
  329. local oldRootLimbs=RootLimbs
  330. for i,v in pairs(oldRootLimbs) do v.Anchored=true end
  331. fMarble(Char,function(v) v.Anchored=true end)
  332. MakeAI(RespawnPos) Anim='Reviving'
  333. fMarble(Char,function(v) v.Transparency=1 end)
  334. for i,v in pairs(RootLimbs) do v.Transparency=1 end
  335. wait(0.1) Torso.Anchored=true
  336. local Reconstruct={}
  337. fMarble(oldChar,function(v)
  338. local x1,y1,z1=v.CFrame:toEulerAnglesXYZ()
  339. local x2,y2,z2=Char[v.Parent.Name][v.Name].CFrame:toEulerAnglesXYZ()
  340. Reconstruct[#Reconstruct+1]={v,Char[v.Parent.Name][v.Name],v.Position,v3(mdeg(x1),mdeg(y1),mdeg(z1)),v3(mdeg(x2),mdeg(y2),mdeg(z2))} end)
  341. for i,v in pairs(oldRootLimbs) do
  342. local x1,y1,z1=v.CFrame:toEulerAnglesXYZ()
  343. local x2,y2,z2=Char[v.Name].CFrame:toEulerAnglesXYZ()
  344. Reconstruct[#Reconstruct+1]={v,Char[v.Name],v.Position,v3(mdeg(x1),mdeg(y1),mdeg(z1)),v3(mdeg(x2),mdeg(y2),mdeg(z2))} end
  345. local tweens=100
  346. for tween=1,tweens do
  347. for i,v in pairs(Reconstruct) do v[1].CFrame=TweenCF(tween,tweens,v[3],v[4],v[2].Position,v[5],1)*ca(360*(tween/tweens),720*(tween/tweens),0) end
  348. wait()
  349. end
  350. oldChar:Remove()
  351. fMarble(Char,function(v) v.Transparency=0 end)
  352. for i,v in pairs(RootLimbs) do v.Transparency=0 end
  353. Torso.Anchored=false wait()
  354. BG.maxTorque=v3(1,1,1)/0 BG.cframe=Torso.CFrame
  355. ReturnAnim()
  356. wait(2)
  357. BG.maxTorque=nov3
  358. Anim,ArmAnim,LegAnim='None','None','None'
  359. end
  360. ------
  361.  
  362. function MakeAI(SpawnPoint2)
  363. Char=iNew{'Model',workspace,Name=name,archivable=false} _G.OldMod00=Char
  364. Torso=iPart{Char,2,2,1,sc=Scale,co=CC[1],cf=SpawnPoint2,na='Torso'}
  365. pTorso=iPart{Char,2,2,1,sc=Scale,co=CC[1],cf=SpawnPoint2,na='pTorso'}
  366. Head=iPart{Char,1,1,1,sc=Scale,co=CC[1],na='Head'}
  367. pHead=iPart{Char,1,1,1,sc=Scale,co=CC[1],na='pHead'} iNew{'SpecialMesh',pHead,Scale=v3(1,1,1)*Scale/1.4,VertexColor=v3(1,1,1)/1.65,MeshId=as.rockhead,TextureId=as.rockheadt}
  368. Stand=iPart{Char,1.5,2.9,1.1,sc=Scale,co=CC[1],na='Stand'}
  369.  
  370. for i,n in pairs(so) do
  371. local v=iNew{'Sound',Torso,Volume=1,Pitch=1,Looped=false,Name=v,SoundId=as[n]}
  372. so[n]=v
  373. end
  374.  
  375.  
  376. LSho=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='LSho'}
  377. LArm=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='LArm'}
  378.  
  379. RSho=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='RSho'}
  380. RArm=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='RArm'}
  381.  
  382. LThi=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='LThi'}
  383. LLeg=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='LLeg'}
  384.  
  385. RThi=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='RThi'}
  386. RLeg=iPart{Char,1,1.5,1,sc=Scale,co=CC[1],na='RLeg'}
  387.  
  388.  
  389.  
  390. nov3=v3(0,0,0)
  391. Marble={}
  392. MarbleSpeed=0.2
  393. MarbleMax=12
  394. for i,v in pairs({pTorso,LSho,RSho,LArm,RArm,LThi,RThi,LLeg,RLeg}) do
  395. v.Material=Mat
  396. local VS=v.Size
  397. local va=1.2
  398. --v.Size=v.Size/1.5
  399. local vv=v:Clone()
  400. for x=-1,1,2 do
  401. for y=-1,1,2 do
  402. for z=-1,1,2 do
  403. local marb=vv:Clone() marb.Size=VS/mran2(1.8,2.2) marb.Parent=v marb.Name=x..y..z
  404. local wmarb=iNew{'Weld',marb,Part0=v,Part1=marb,C0=cn(VS.x/4*x/va,VS.y/4*y,VS.z/4*z/va)*ca(mran(-MarbleMax,MarbleMax),mran(-MarbleMax,MarbleMax),mran(-MarbleMax,MarbleMax))}
  405. Marble[#Marble+1]={wmarb,mran(-1,1),mran(-1,1),mran(-1,1)}
  406. end end end
  407. iNew{'BlockMesh',v,Scale=v3(1,1,1)/1.5}
  408. v.Transparency=0 --.995
  409. end
  410.  
  411. for i,v in pairs(Char:children()) do if v:IsA'BasePart' and v.Name~='Torso' then v.CFrame=Torso.CFrame end end
  412.  
  413. Head.Transparency=0.99
  414. Head.CanCollide=false
  415. Neck=iNew{'Weld',Torso,Part0=Torso,Part1=Head,C0=cn(0,0,0)}
  416. pNeck=iNew{'Weld',Torso,Part0=pTorso,Part1=pHead,C0=cn(0,1.5*Scale,0)}
  417. Hum=iNew{'Humanoid',Char}
  418.  
  419.  
  420. Torso.Transparency=1
  421. wTorso=iNew{'Weld',Torso,Part0=Torso,Part1=pTorso,C0=cn(0,-2.5*Scale,0)*ca(0,0,0)}
  422. oTorso=cn(0,0,0)
  423.  
  424. Stand.Transparency=1
  425. wStand=iNew{'Weld',Torso,Part0=Torso,Part1=Stand,C0=cn(0,-2.5*Scale,0)}
  426.  
  427. wLSho=iNew{'Weld',LSho,Part0=pTorso,Part1=LSho,C0=cn(-1.5*Scale,0.75*Scale,0),C1=cn(0,0.25*Scale,0)}
  428. wLArm=iNew{'Weld',LArm,Part0=LSho,Part1=LArm,C0=cn(0,-0.75*Scale,0),C1=cn(0,0.75*Scale,0)}
  429.  
  430. wRSho=iNew{'Weld',RSho,Part0=pTorso,Part1=RSho,C0=cn(1.5*Scale,0.75*Scale,0),C1=cn(0,0.25*Scale,0)}
  431. wRArm=iNew{'Weld',RArm,Part0=RSho,Part1=RArm,C0=cn(0,-0.75*Scale,0),C1=cn(0,0.75*Scale,0)}
  432.  
  433. wLThi=iNew{'Weld',LThi,Part0=pTorso,Part1=LThi,C0=cn(-0.5*Scale,-1*Scale,0),C1=cn(0,0.75*Scale,0)}
  434. wLLeg=iNew{'Weld',LLeg,Part0=LThi,Part1=LLeg,C0=cn(1,-0.75*Scale,0),C1=cn(0,0.75*Scale,0)}
  435.  
  436. wRThi=iNew{'Weld',RThi,Part0=pTorso,Part1=RThi,C0=cn(0.5*Scale,-1*Scale,0),C1=cn(0,0.75*Scale,0)}
  437. wRLeg=iNew{'Weld',RLeg,Part0=RThi,Part1=RLeg,C0=cn(0,-0.75*Scale,0),C1=cn(0,0.75*Scale,0)}
  438.  
  439. wLSho.C0=cn(-1.5*Scale,0.75*Scale,0)*ca(0,0,-135) --a,b
  440. wLArm.C0=cn(0,-0.75*Scale,0)*ca(0,0,0) --c,d
  441. wRSho.C0=cn(1.5*Scale,0.75*Scale,0)*ca(0,0,135) --e,f
  442. wRArm.C0=cn(0,-0.75*Scale,0)*ca(0,0,0) --g,h
  443. ----
  444. wLThi.C0=cn(-0.5*Scale,-1*Scale,0)*ca(0,0,-45) --i,j
  445. wLLeg.C0=cn(0,-0.75*Scale,0)*ca(0,0,0) --k,l
  446. wRThi.C0=cn(0.5*Scale,-1*Scale,0)*ca(0,0,45) --m,n
  447. wRLeg.C0=cn(0,-0.75*Scale,0)*ca(0,0,0) --o,p
  448.  
  449. BG=iNew{'BodyGyro',Torso,maxTorque=nov3}
  450. BP=iNew{'BodyPosition',Torso,maxForce=nov3}
  451. fUNDYING=Hum.Died:connect(UNDYING)
  452. LimbNames={'LSho','RSho','LArm','RArm','RThi','LThi','RLeg','LLeg'}
  453. for i=1,8 do local v=LimbNames[i] LimbNames[v]=getfenv()["w"..v] end
  454. RootLimbs={pHead,pTorso,LSho,RSho,LArm,RArm,RThi,LThi,RLeg,LLeg}
  455. Anim,LegAnim,ArmAnim='Sit','Sit','Sit'
  456. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p=GetPose()
  457. SetWeld(wLSho,0,1,1,a,b,v3(-1.5*Scale,0.5*Scale,0),v3(0,0,-10),1)
  458. SetWeld(wLArm,0,1,1,c,d,v3(0,-0.75*Scale,0),v3(10,0,10),1)
  459. SetWeld(wRSho,0,1,1,e,f,v3(1.5*Scale,0.5*Scale,0),v3(0,0,10),1)
  460. SetWeld(wRArm,0,1,1,g,h,v3(0,-0.75*Scale,0),v3(10,0,-10),1)
  461. SetWeld(wLThi,0,1,1,i,j,v3(-0.5*Scale,-1*Scale,0),v3(15,0,-5),1)
  462. SetWeld(wLLeg,0,1,1,k,l,v3(0,-0.75*Scale,0),v3(-15,0,5),1)
  463. SetWeld(wRThi,0,1,1,m,n,v3(0.5*Scale,-1*Scale,0),v3(15,0,5),1)
  464. SetWeld(wRLeg,0,1,1,o,p,v3(0,-0.75*Scale,0),v3(-15,0,-5),1)
  465. Oa,Ob,Oc,Od,Oe,Of,Og,Oh,Oi,Oj,Ok,Ol,Om,On,Oo,Op=GetPose()
  466. SetWeld(wLSho,0,1,1,nov3,nov3,a,b,1)
  467. SetWeld(wLArm,0,1,1,nov3,nov3,c,d,1)
  468. SetWeld(wRSho,0,1,1,nov3,nov3,e,f,1)
  469. SetWeld(wRArm,0,1,1,nov3,nov3,g,h,1)
  470. SetWeld(wLThi,0,1,1,nov3,nov3,i,j,1)
  471. SetWeld(wLLeg,0,1,1,nov3,nov3,k,l,1)
  472. SetWeld(wRThi,0,1,1,nov3,nov3,m,n,1)
  473. SetWeld(wRLeg,0,1,1,nov3,nov3,o,p,1)
  474. end
  475.  
  476. function GetPose()
  477. local a,b=GetWeld(wLSho,0)
  478. local c,d=GetWeld(wLArm,0)
  479. local e,f=GetWeld(wRSho,0)
  480. local g,h=GetWeld(wRArm,0)
  481. local i,j=GetWeld(wLThi,0)
  482. local k,l=GetWeld(wLLeg,0)
  483. local m,n=GetWeld(wRThi,0)
  484. local o,p=GetWeld(wRLeg,0)
  485. local q,r=GetWeld(wTorso,0)
  486. return a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r
  487. end
  488.  
  489. MakeAI(SpawnPoint)
  490.  
  491. ASpeed=28
  492. coroutine.resume(coroutine.create(function()
  493. SetWeld(wLSho,0,1,1,nov3,nov3,wLSho.C0.p,v3(45,0,-10),1)
  494. SetWeld(wLArm,0,1,1,nov3,nov3,wLArm.C0.p,v3(45,0,10),1)
  495. SetWeld(wRSho,0,1,1,nov3,nov3,wRSho.C0.p,v3(45,0,10),1)
  496. SetWeld(wRArm,0,1,1,nov3,nov3,wRArm.C0.p,v3(45,0,-10),1)
  497. SetWeld(wLThi,0,1,1,nov3,nov3,v3(-0.5*Scale,-0.6*Scale,-0.5*Scale),v3(125,0,-12),1)
  498. SetWeld(wLLeg,0,1,1,nov3,nov3,wLLeg.C0.p,v3(-70,0,12),1)
  499. SetWeld(wRThi,0,1,1,nov3,nov3,v3( 0.5*Scale,-0.6*Scale,-0.5*Scale),v3(125,0,12),1)
  500. SetWeld(wRLeg,0,1,1,nov3,nov3,wRLeg.C0.p,v3(-70,0,-12),1)
  501. SetWeld(wTorso,0,1,1,oTorso,nov3,v3(0,-3*Scale,0),nov3,1)
  502. wait(1)
  503. Anim='Standing'
  504. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p=GetPose()
  505. for x=1,ASpeed do
  506. SetWeld(wTorso,0,x,ASpeed,wTorso.C0.p,nov3,oTorso,nov3,1)
  507. SetWeld(wLSho,0,x,ASpeed,a,b,v3(-1.5*Scale,0.5*Scale,0),v3(0,0,-10),1)
  508. SetWeld(wLArm,0,x,ASpeed,c,d,v3(0,-0.75*Scale,0),v3(10,0,10),1)
  509. SetWeld(wRSho,0,x,ASpeed,e,f,v3(1.5*Scale,0.5*Scale,0),v3(0,0,10),1)
  510. SetWeld(wRArm,0,x,ASpeed,g,h,v3(0,-0.75*Scale,0),v3(10,0,-10),1)
  511. SetWeld(wLThi,0,x,ASpeed,i,j,v3(-0.5*Scale,-1*Scale,0),v3(15,0,-5),1)
  512. SetWeld(wLLeg,0,x,ASpeed,k,l,v3(0,-0.75*Scale,0),v3(-15,0,5),1)
  513. SetWeld(wRThi,0,x,ASpeed,m,n,v3(0.5*Scale,-1*Scale,0),v3(15,0,5),1)
  514. SetWeld(wRLeg,0,x,ASpeed,o,p,v3(0,-0.75*Scale,0),v3(-15,0,-5),1)
  515. wait()
  516. end
  517. ArmAnim='None'
  518. LegAnim='None'
  519. Anim='None'
  520. end))
  521. --Target=PChar
  522. function Stay(bool,cff)
  523. BG.maxTorque=bool and v3(1,1,1)/0 or nov3 BG.cframe=cff or Torso.CFrame
  524. BP.maxForce=BG.maxTorque BP.position=Torso.Position
  525. end
  526. function fMarble(Ch,func)
  527. for i,v in pairs(Ch:children()) do
  528. for x=-1,1,2 do
  529. for y=-1,1,2 do
  530. for z=-1,1,2 do
  531. if v:findFirstChild(x..y..z) then func(v[x..y..z]) end
  532. end end end
  533. end
  534. end
  535. function ReturnAnim()
  536. local ne1,ne2=GetWeld(pNeck,0)
  537. local wt1,wt2=GetWeld(wTorso,0)
  538. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p=GetPose()
  539. for x=1,ASpeed do
  540. SetWeld(wLSho,0,x,ASpeed,a,b,Oa,Ob,1)
  541. SetWeld(wLArm,0,x,ASpeed,c,d,Oc,Od,1)
  542. SetWeld(wRSho,0,x,ASpeed,e,f,Oe,Of,1)
  543. SetWeld(wRArm,0,x,ASpeed,g,h,Og,Oh,1)
  544. SetWeld(wLThi,0,x,ASpeed,i,j,Oi,Oj,1)
  545. SetWeld(wLLeg,0,x,ASpeed,k,l,Ok,Ol,1)
  546. SetWeld(wRThi,0,x,ASpeed,m,n,Om,On,1)
  547. SetWeld(wRLeg,0,x,ASpeed,o,p,Oo,Op,1)
  548. SetWeld(wTorso,0,x,ASpeed,wt1,wt2,oTorso,nov3,1)
  549. SetWeld(pNeck,0,x,ASpeed,ne1,ne2,v3(0,1.5,0)*Scale,nov3,1)
  550. wait()
  551. end
  552. end
  553.  
  554. ChatConnection=Player.Chatted:connect(function(msg)
  555. coroutine.resume(coroutine.create(function()
  556. if not Char.Parent then return end
  557. local Sep,sep=se(';',msg)
  558. local p1,p2=findplayer(Sep[2]),findplayer(Sep[3])
  559. local cmd=sep[1]
  560. --print(Sep[1])
  561. --print(LimbNames[Sep[1]])
  562. Tt=(p1 and p1.Character and p1.Character:findFirstChild'Torso') and p1.Character.Torso or nil
  563. if cmd=='sit' and (Anim=='None' or Anim=='Follow') then
  564. Anim='Sitting'
  565. Hum:MoveTo(Torso.Position,Torso)
  566. LegAnim,ArmAnim='Sit','Sit'
  567. for x=1,ASpeed do
  568. SetWeld(wLSho,0,x,ASpeed,Oa,Ob,Oa,v3(45,0,-10),1)
  569. SetWeld(wLArm,0,x,ASpeed,Oc,Od,Oc,v3(45,0,10),1)
  570. SetWeld(wRSho,0,x,ASpeed,Oe,Of,Oe,v3(45,0,10),1)
  571. SetWeld(wRArm,0,x,ASpeed,Og,Oh,Og,v3(45,0,-10),1)
  572. SetWeld(wLThi,0,x,ASpeed,Oi,Oj,v3(-0.5*Scale,-0.6*Scale,-0.5*Scale),v3(125,0,-12),1)
  573. SetWeld(wLLeg,0,x,ASpeed,Ok,Ol,Ok,v3(-70,0,12),1)
  574. SetWeld(wRThi,0,x,ASpeed,Om,On,v3( 0.5*Scale,-0.6*Scale,-0.5*Scale),v3(125,0,12),1)
  575. SetWeld(wRLeg,0,x,ASpeed,Oo,Op,Oo,v3(-70,0,-12),1)
  576. SetWeld(wTorso,0,x,ASpeed,oTorso,nov3,v3(0,-3*Scale,0),nov3,1)
  577. wait()
  578. end
  579. Anim='Sit'
  580. elseif (cmd=='stand' or cmd=='stop') and (Anim=='Roll' or Anim=='Sit' or Anim=='Follow' or Anim=='Form' or Anim=='Dance' or Anim=='Grab') then
  581. if Anim=='Sit' or Anim=='Form' or Anim=='Dance' or Anim=='Roll' then
  582. Anim='Returning'
  583. ReturnAnim()
  584. else
  585. Target=nil
  586. wait(0.2)
  587. Hum:MoveTo(Torso.Position,Torso)
  588. end
  589. LegAnim,ArmAnim,Anim='None','None','None'
  590. elseif cmd=='follow' and Tt and Anim=='None' then
  591. Anim='Follow'
  592. Target=p1.Character
  593. elseif cmd=='shoot' and Tt and RArm['1-11'].Transparency~=1 and ArmAnim=='None' then
  594. Target=p1.Character
  595. ArmAnim='Shoot'
  596. FaceBG(Tt.Position)
  597. wait(0.1)
  598. local cff=cn(pTorso.CFrame.p,v3(Tt.Position.x,pTorso.Position.y,Tt.Position.z))
  599. local ofs=cff:toObjectSpace(cn(cff*cn(1.5*Scale,0.5*Scale,0).p,Tt.CFrame*cn(0,2,0).p)*ca(90,0,0)*cn(0,-0.25*Scale,0))
  600. local x,y,z=ofs:toEulerAnglesXYZ()
  601. local rot=v3(mdeg(x),mdeg(y),mdeg(z))
  602. for q=1,ASpeed do
  603. SetWeld(wRArm,0,q,ASpeed,Og,Oh,Og,nov3,1)
  604. SetWeld(wRSho,0,q,ASpeed,Oe,Of,ofs.p,rot,1)
  605. SetWeld(wRSho,1,q,ASpeed,v3(0,0.25*Scale,0),nov3,nov3,nov3,1)
  606. wait()
  607. end
  608. for y=-1,1,2 do for x=-1,1,2 do for z=-1,1,2 do
  609. local new=RArm[x..y..z]:Clone() new.Parent=RArm game.Debris:AddItem(new,8) new.Touched:connect(function(hit) Damage(hit.Parent:findFirstChild'Humanoid') end)
  610. new.CFrame=RArm[x..y..z].CFrame*cn(0,-Scale*1.5,0) new.CanCollide=true new.Velocity=cn(new.Position,Target.Torso.Position).lookVector*((new.Position-Target.Torso.Position).magnitude*20+900)
  611. RArm[x..y..z].Transparency=1 so.Block:Play() wait(0.06)
  612. end end end
  613. RArm.Transparency=1
  614. delay(1,function()
  615. for x=-1,1,2 do for y=-1,1,2 do for z=-1,1,2 do local new=RArm[x..y..z]:Clone() new.Transparency=0 new.CanCollide=false new.Name='f'..new.Name new.Parent=RArm new.CFrame=RArm.CFrame*cn(Scale*x*2,Scale*-3,Scale*z*2)
  616. iNew{'BodyPosition',new,maxForce=v3(1,1,1)/0,position=RArm[x..y..z].Position} wait(0.14) end end end
  617. DoLoop(35,function(i) for x=-1,1,2 do for y=-1,1,2 do for z=-1,1,2 do RArm['f'..x..y..z].BodyPosition.position=RArm[x..y..z].Position if i==1 then RArm['f'..x..y..z]:Remove() RArm[x..y..z].Transparency=0 RArm.Transparency=0 end end end end end)
  618. end)
  619. for q=1,ASpeed do
  620. SetWeld(wRArm,0,q,ASpeed,Og,nov3,Og,Oh,1)
  621. SetWeld(wRSho,0,q,ASpeed,ofs.p,rot,Oe,Of,1)
  622. SetWeld(wRSho,1,q,ASpeed,nov3,nov3,v3(0,0.25*Scale,0),nov3,1)
  623. wait()
  624. end
  625. BG.maxTorque=nov3
  626. ArmAnim='None'
  627. elseif cmd=='slam' and (Anim=='None' or Anim=='Follow') and Tt then
  628. Target=p1
  629. local lTt=Tt
  630. Anim='Follow'
  631. repeat Hum:MoveTo(Tt.Position+v3(0.5,0.5,0.5),Tt) wait(0.2) until lTt~=Tt or (Tt.Position-pTorso.Position).magnitude<10+Scale*5.5 or Anim~='Follow'
  632. if Anim~='Follow' then BG.maxTorque=nov3 return end
  633. if lTt~=Tt then return end
  634. Anim,LegAnim,ArmAnim='Slam','',''
  635. Hum:MoveTo(Torso.Position,Torso)
  636. FaceBG(Tt.Position)
  637. Stay(true,BG.cframe)
  638. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p=GetPose()
  639. ASpeed2=15
  640. for x=1,ASpeed2 do
  641. SetWeld(wLSho,0,x,ASpeed2,a,b,Oa,v3(180,0,0),1)
  642. SetWeld(wRSho,0,x,ASpeed2,e,f,Oe,v3(180,0,0),1)
  643. SetWeld(wTorso,0,x,ASpeed2,nov3,nov3,v3(0,3,0)*Scale,nov3,1)
  644. wait()
  645. end
  646. for x=1,ASpeed2 do
  647. SetWeld(wTorso,0,x,ASpeed2,v3(0,3,0)*Scale,nov3,v3(0,-3*Scale+2.5,-6*Scale),v3(-89,0,0),1)
  648. wait()
  649. end
  650. AOEFind(pTorso.Position,6.5*Scale,function(Hum) Damage(Hum,3,true) Hum.Sit=true end)
  651. MeshEffect(35,Torso.CFrame*cn(0,-3.5*Scale,-6*Scale)*ca(90,0,0),nil,v3(2,2,1)*Scale,v3(12,12,5)*Scale,0.2,1,'Light stone grey',as.ring)
  652. wait(0.5)
  653. for x=1,ASpeed do
  654. SetWeld(wTorso,0,x,ASpeed,v3(0,-3*Scale+2.5,-6*Scale),v3(-90,0,0),nov3,nov3,1)
  655. SetWeld(wLSho,0,x,ASpeed,Oa,v3(180,0,0),Oa,Ob,1)
  656. SetWeld(wRSho,0,x,ASpeed,Oe,v3(180,0,0),Oe,Of,1)
  657. wait()
  658. end
  659. Stay(false)
  660. Anim,LegAnim,ArmAnim='None','None','None'
  661. elseif cmd=='boulder' and Anim=='None' then
  662. Target=p1.Character
  663. Anim,LegAnim,ArmAnim='','',''
  664. Stay(true)
  665. FaceBG(Tt.Position)
  666. for x=1,ASpeed do
  667. SetWeld(wLSho,0,x,ASpeed,Oa,Ob,Oa,v3(135,0,0),1)
  668. SetWeld(wLArm,0,x,ASpeed,Oc,Od,Oc,v3(0,0,0),1)
  669. SetWeld(wRSho,0,x,ASpeed,Oe,Of,Oe,v3(135,0,0),1)
  670. SetWeld(wRArm,0,x,ASpeed,Og,Oh,Og,v3(0,0,-10),1)
  671. SetWeld(wLThi,0,x,ASpeed,Oi,Oj,v3(-0.5,-0.5,0.25)*Scale,v3(45,0,-15),1)
  672. SetWeld(wLLeg,0,x,ASpeed,Ok,Ol,Ok,v3(0,0,0),1)
  673. SetWeld(wRThi,0,x,ASpeed,Om,On,v3( 0.5,-0.5,0.25)*Scale,v3(45,0,15),1)
  674. SetWeld(wRLeg,0,x,ASpeed,Oo,Op,Oo,v3(0,0,0),1)
  675. SetWeld(wTorso,0,x,ASpeed,oTorso,nov3,v3(0,-1.5,-1.5)*Scale,v3(-90,0,0),1)
  676. wait()
  677. end
  678. wait(0.2)
  679. local boulder=iPart{Char,1,1,1,type='WedgePart'} boulder.Material=Mat
  680. local wm=iNew{'SpecialMesh',boulder,Scale=v3(4,3,4)*Scale,MeshType='Wedge'}
  681. local wb=iNew{'Weld',boulder,Part0=RArm,Part1=boulder,C0=cn(-1.5*Scale,-2.3*Scale,0)*ca(180,180,0)}
  682. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=GetPose()
  683. for x=1,ASpeed*2 do
  684. SetWeld(wLSho,0,x,ASpeed*2,a,b,a,v3(225,0,0),1)
  685. SetWeld(wLArm,0,x,ASpeed*2,c,d,c,v3(45,0,0),1)
  686. SetWeld(wRSho,0,x,ASpeed*2,e,f,e,v3(225,0,0),1)
  687. SetWeld(wRArm,0,x,ASpeed*2,g,h,g,v3(45,0,0),1)
  688. SetWeld(wLThi,0,x,ASpeed*2,i,j,Oi,v3(0,0,-15),1)
  689. SetWeld(wLLeg,0,x,ASpeed*2,k,l,k,v3(0,0,0),1)
  690. SetWeld(wRThi,0,x,ASpeed*2,m,n,Om,v3(0,0,15),1)
  691. SetWeld(wRLeg,0,x,ASpeed*2,o,p,o,v3(0,0,0),1)
  692. SetWeld(wTorso,0,x,ASpeed*2,q,r,nov3,nov3,1)
  693. wait()
  694. end
  695. FaceBG(Tt.Position)
  696. for x=1,ASpeed/2 do
  697. SetWeld(wLSho,0,x,math.floor(ASpeed/2),a,v3(225,0,0),a,v3(90,0,0),1)
  698. SetWeld(wLArm,0,x,math.floor(ASpeed/2),c,v3(45,0,0),c,v3(45,0,0),1)
  699. SetWeld(wRSho,0,x,math.floor(ASpeed/2),e,v3(225,0,0),e,v3(90,0,0),1)
  700. SetWeld(wRArm,0,x,math.floor(ASpeed/2),g,v3(45,0,0),g,v3(45,0,0),1)
  701. wait()
  702. end
  703. local bcf=boulder.CFrame
  704. wb:Remove()
  705. wm:Remove()
  706. boulder.Size=wm.Scale
  707. boulder.CFrame=cn(boulder.Position,Target.Torso.Position)*cn(0,3,-1)*ca(0,180,0)
  708. --boulder.Friction=0.1
  709. boulder.Elasticity=0
  710. boulder.Velocity=(boulder.CFrame*ca(0,180,0)).lookVector*((boulder.Position-Target.Torso.Position).magnitude*1+90)
  711. boulder.RotVelocity=nov3
  712. game.Debris:AddItem(boulder,8)
  713. Stay(false)
  714. ReturnAnim()
  715. Anim,LegAnim,ArmAnim='None','None','None'
  716. elseif cmd=='grab' and Tt and not Grabbing then
  717. Target=p1
  718. local lTt=Tt
  719. Anim='Follow'
  720. repeat Hum:MoveTo(Tt.Position+v3(0.5,0.5,0.5),Tt) wait(0.2) until lTt~=Tt or (Tt.Position-Stand.CFrame*cn(0,-Stand.Size.y/2+1,-2.8*Scale).p).magnitude<10 or Anim~='Follow'
  721. if Anim~='Follow' then BG.maxTorque=nov3 return end
  722. if lTt~=Tt then return end
  723. pcall(function() Tt.Parent.Humanoid.PlatformStand=true end)
  724. Hum:MoveTo(Torso.Position,Torso)
  725. Anim,LegAnim,ArmAnim='Grab','',''
  726. FaceBG(Tt.Position)
  727. for x=1,ASpeed do
  728. SetWeld(wLSho,0,x,ASpeed,Oa,Ob,Oa,v3(-30,0,-30),1)
  729. SetWeld(wLArm,0,x,ASpeed,Oc,Od,Oc,v3(0,0,0),1)
  730. SetWeld(wRSho,0,x,ASpeed,Oe,Of,Oe,v3(145,0,-30),1)
  731. SetWeld(wRArm,0,x,ASpeed,Og,Oh,Og,v3(0,0,0),1)
  732. SetWeld(wLThi,0,x,ASpeed,Oi,Oj,v3(-0.5,-0.4,0.3)*Scale,v3(70,0,0),1)
  733. SetWeld(wLLeg,0,x,ASpeed,Ok,Ol,Ok,v3(-20,0,0),1)
  734. SetWeld(wRThi,0,x,ASpeed,Om,On,v3(0.5,-0.5,-0.3)*Scale,v3(135,0,0),1)
  735. SetWeld(wRLeg,0,x,ASpeed,Oo,Op,Oo,v3(-90,0,0),1)
  736. SetWeld(wTorso,0,x,ASpeed,oTorso,nov3,v3(0,-2,-1.5)*Scale,v3(-90,0,0),1)
  737. wait()
  738. end
  739. local ofs=RArm.CFrame:toObjectSpace(Tt.CFrame)
  740. Tt.Parent.Humanoid.PlatformStand=true
  741. Grabbing=iNew{'Weld',RArm,Part0=RArm,Part1=Tt,C0=ofs}
  742. local a,b=GetWeld(Grabbing,0)
  743. for x=1,ASpeed do
  744. SetWeld(Grabbing,0,x,ASpeed,a,b,v3(0,-0.75*Scale-1,0),v3(-90,0,0),1)
  745. wait()
  746. end
  747. Stay(false)
  748. ReturnAnim()
  749. Anim,LegAnim,ArmAnim='None','None','None'
  750. elseif cmd=='dance' and (Anim=='None' or Anim=='Follow') then
  751. Hum:MoveTo(pTorso.Position,pTorso)
  752. Anim,ArmAnim,LegAnim='Dance','Dance','Dance'
  753. local ASpeed=math.floor(ASpeed/2)
  754. repeat
  755. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=GetPose()
  756. for x=1,ASpeed do
  757. if Anim~='Dance' then break end
  758. SetWeld(wLSho,0,x,ASpeed,a,b,v3(-1.2,0.5,-0.25)*Scale,v3(35,0,30),1)
  759. SetWeld(wLArm,0,x,ASpeed,c,d,c,v3(25,0,0),1)
  760. SetWeld(wRSho,0,x,ASpeed,e,f,v3( 1.2,0.5,-0.25)*Scale,v3(45,0,-30),1)
  761. SetWeld(wRArm,0,x,ASpeed,g,h,g,v3(25,0,0),1)
  762. SetWeld(wLThi,0,x,ASpeed,i,j,i,v3(0,0,0),1)
  763. SetWeld(wLLeg,0,x,ASpeed,k,l,k,v3(0,0,0),1)
  764. SetWeld(wRThi,0,x,ASpeed,m,n,m,v3(45,0,20),1)
  765. SetWeld(wRLeg,0,x,ASpeed,o,p,o,v3(-45,0,-20),1)
  766. wait()
  767. end
  768. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=GetPose()
  769. for x=1,ASpeed do
  770. if Anim~='Dance' then break end
  771. SetWeld(wLSho,0,x,ASpeed,a,b,v3(-1.2,0.5,-0.25)*Scale,v3(95,0,30),1)
  772. SetWeld(wLArm,0,x,ASpeed,c,d,c,v3(-10,0,0),1)
  773. SetWeld(wRSho,0,x,ASpeed,e,f,v3( 1.2,0.5,-0.25)*Scale,v3(105,0,-30),1)
  774. SetWeld(wRArm,0,x,ASpeed,g,h,g,v3(-10,0,0),1)
  775. SetWeld(wLThi,0,x,ASpeed,i,j,i,v3(45,0,-20),1)
  776. SetWeld(wLLeg,0,x,ASpeed,k,l,k,v3(-45,0,20),1)
  777. SetWeld(wRThi,0,x,ASpeed,m,n,m,v3(0,0,0),1)
  778. SetWeld(wRLeg,0,x,ASpeed,o,p,o,v3(0,0,0),1)
  779. wait()
  780. end
  781. until Anim~='Dance'
  782. elseif cmd=='roll' and (Anim=='None' or Anim=='Follow') then
  783. Target=p1
  784. local lTt=Tt
  785. Anim,ArmAnim,LegAnim='Roll','',''
  786. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=GetPose()
  787. local n1,n2=GetWeld(pNeck,0)
  788. for x=1,ASpeed do
  789. SetWeld(wLSho,0,x,ASpeed,a,b,v3(-1.5,0.5,0)*Scale,v3(0,0,-45),1)
  790. SetWeld(wLArm,0,x,ASpeed,c,d,c,v3(0,0,90),1)
  791. SetWeld(wRSho,0,x,ASpeed,e,f,v3( 1.5,0.5,0)*Scale,v3(0,0,45),1)
  792. SetWeld(wRArm,0,x,ASpeed,g,h,g,v3(0,0,-90),1)
  793. SetWeld(wLThi,0,x,ASpeed,i,j,v3(0,1, 0.5)*Scale,v3(-30,0,0),1)
  794. SetWeld(wLLeg,0,x,ASpeed,k,l,k,v3(60,0,0),1)
  795. SetWeld(wRThi,0,x,ASpeed,m,n,v3(0,1,-0.5)*Scale,v3(30,0,0),1)
  796. SetWeld(wRLeg,0,x,ASpeed,o,p,o,v3(-60,0,0),1)
  797. SetWeld(pNeck,0,x,ASpeed,n1,n2,v3(0,0,0),n2,1)
  798. SetWeld(wTorso,0,x,ASpeed,oTorso,nov3,v3(0,-2,0)*Scale,nov3,1)
  799. wait()
  800. end
  801. tWS[2]=3
  802. repeat
  803. local cf=Torso.CFrame*cn(mran2(-1,1)*Scale,-4*Scale,0.5*Scale)*ca(90+mran(-20,20),mran(-30,30),0)
  804. MeshEffect(24,cf,cf*cn(0,4*Scale,0),v3(0.5,0.5,0.5)*Scale,v3(mran2(1,4),mran2(3,5),mran2(1,3))*Scale,0.1,1,'Dark stone grey','Brick')
  805. Hum:MoveTo(Tt.CFrame*cn(0,0,Scale).p,Tt) wTorso.C0=wTorso.C0*ca(-20,0,0) wait(0.035) until lTt~=Tt or (Tt.Position-Stand.CFrame*cn(0,-Stand.Size.y/2+1,-2.8*Scale).p).magnitude<6 or Anim~='Roll'
  806. tWS[2]=1
  807. ClearWeld(wTorso)
  808. if Anim~='Roll' then return end
  809. Hum:MoveTo(Torso.Position+v3(0,1,0),Torso)
  810. Torso.Anchored=true Torso.Velocity=nov3
  811. local cf=Stand.CFrame*cn(0,0,-1.5*Scale)*ca(-45,0,0) --iPart{Char,1,1,1,co='Black',cf=cf,an=true}
  812. MeshEffect(50,cf,nil,v3(3.5,3.5,2)*Scale,v3(11,11,6)*Scale,0.1,1,'White',as.ring)
  813. for i=1,16 do
  814. local cf=cf*ca(90,360*(i/16),0)*ca(45,0,0)
  815. MeshEffect(40,cf,cf*cn(0,10*Scale,0),v3(0.2,2,0.2)*Scale,v3(1,5,1)*Scale,0.1,1,'','Sphere')
  816. end
  817. AOEFind(cf.p,6.5*Scale,function(Hum,v) Damage(Hum,2,true) Hum.Sit=true v.Velocity=cn(pTorso.Position,v.Position).lookVector*50 end)
  818. wait(0.2)
  819. Torso.Anchored=false
  820. ReturnAnim()
  821. Hum:MoveTo(Torso.Position,Torso)
  822. Anim,LegAnim,ArmAnim='None','None','None'
  823. elseif cmd=='beam' and (Anim=='None' or Anim=='Follow') then
  824. Anim='beam'
  825. local che =iPart{Char,1,1,1,sc=Scale,co=CC[1],ma=Mat} local chew=iNew{'Weld',che ,Part0=pTorso,Part1=che}
  826. local che2=iPart{che ,0.8*Scale,0.2,0.8*Scale,co='Really black'} local che2w=iNew{'Weld',che2,Part0=che,Part1=che2}
  827. local chem=iNew{'CylinderMesh',che} iNew{'CylinderMesh',che2}
  828. local chest,chex,i={},0,0
  829. for x=-1,1,2 do for y=-1,1,2 do i=i+1 chest[i]={pTorso[x..y..'-1']} chest[i][2]=chest[i][1].Weld chest[i][3]=chest[i][2].C0
  830. local xx,yy,zz=chest[i][2].C0:toEulerAnglesXYZ() chest[i][4]=v3(mdeg(xx),mdeg(yy),mdeg(zz))
  831. chest[i][5]=cn(0.45*x*Scale,0,-0.5*Scale)*chest[i][3] chest[i][6]=chest[i][4]+v3(0,-105*x,0) end end
  832. local len=1.75
  833. local dochest=function(v,chexx,adj)
  834. local p=v/ASpeed
  835. chex=adj*p
  836. chem.Scale=v3(1,len*p,1)
  837. chew.C0=ca(chexx+chex,0,0)*cn(0,len/2*p*Scale,0)
  838. che2w.C0=cn(0,len/2*p*Scale,0)
  839. for i=1,4 do SetWeld(chest[i][2],0,v,ASpeed,chest[i][3],chest[i][4],chest[i][5],chest[i][6],1) end
  840. end
  841. for v=1,ASpeed do if Tt then FaceBG(Tt.Position) end dochest(v,-90,-45) wait() end
  842. local beam=iPart{Char,0.7*Scale,1,0.7*Scale,co='New Yeller',an=true,tr=0.3} beamm=iNew{'CylinderMesh',beam}
  843. for i=1,ASpeed*3 do
  844. local p=i/ASpeed*3
  845. chex=90*math.sin((math.pi/2)/(ASpeed*3)*i)
  846. chew.C0=ca(-135+chex,0,0)*cn(0,len/2*Scale,0)
  847. local hit,pos=ray(che2.Position,che2.Position-che2.CFrame*cn(0,-1,0).p,Char)
  848. local mag=(che2.Position-pos).magnitude local p1,p2=che2.Position+v3(mran2(-1,1),mran2(-1,1),mran2(-1,1))/3,pos+v3(mran2(-1,1),mran2(-1,1),mran2(-1,1))/3
  849. beam.CFrame=cn(p1,p2)*cn(0,0,-mag/2)*ca(90,0,0) beamm.Scale=v3(1,mag+(Scale/3),1)
  850. AOEFind(pos,Scale*2,function(Hum) Damage(Hum,2.5) end)
  851. if i%2==0 then for i=1,5 do local cf=cn(pos)*ca(0,mran(-180,180),mran(-95,95)) MeshEffect(8,cf,cf*cn(0,Scale*2.2,0),v3(0.1,0.4,0.1)*Scale,v3(0.4,3,0.4)*Scale,0.2,1,CC[mran(2,3)],as.cone) end
  852. MeshEffect(8,cn(pos),nil,v3(0.8,0.8,0.8)*Scale,v3(4,4,4)*Scale,0.2,1,CC[mran(2,3)],'Sphere') end
  853. if Tt then FaceBG(Tt.Position) end
  854. wait()
  855. end
  856. DoLoop(12,function(i) beam.Transparency=0.3+i*0.7 if i==1 then beam:Remove() end end)
  857. for v=ASpeed,0,-1 do dochest(v,-90,45) wait() end
  858. Stay(false)
  859. che:Remove()
  860. Anim='None'
  861. ---------------------------------------------------------------------------=---WWWWWWWWWWWWWWWWWW
  862. elseif cmd=='box' and (Anim=='None' or Anim=='Follow') then
  863. Anim,ArmAnim='cart','cart'
  864. for x=1,ASpeed do
  865. SetWeld(wLSho,0,x,ASpeed,Oa,Ob,Oa,v3(90,0,10),1)
  866. SetWeld(wLArm,0,x,ASpeed,Oc,Od,Oc,v3(0,0,25),1)
  867. SetWeld(wRSho,0,x,ASpeed,Oe,Of,Oe,v3(90,0,-10),1)
  868. SetWeld(wRArm,0,x,ASpeed,Og,Oh,Og,v3(0,0,-25),1)
  869. wait()
  870. end
  871. Stay(true)
  872. local spawn=RArm.CFrame*cn(0,-0.75*Scale-2,0)*ca(-90,0,0)
  873. local des=iPart{Char,1,1,1,an=true,ma=Mat,cf=spawn,ca=false}
  874. for i=1,6,0.2 do des.Size=v3(i,i,i) des.CFrame=spawn*cn(0,0,-i/2) wait() end
  875. local cart=iNew{'Model',workspace,Name='Cart'}
  876. local base=iPart{cart,4,1,5,ma=Mat,cf=des.CFrame} iNew{'BodyGyro',base}
  877. for x=-1,1,2 do
  878. local new=iPart{cart,0.5,4,5,ma=Mat,cf=base.CFrame} iNew{'Weld',new,Part0=base,Part1=new,C0=cn(1.75*x,2.5,0)}
  879. local new=iPart{cart,3.5,4,0.5,ma=Mat,cf=base.CFrame} iNew{'Weld',new,Part0=base,Part1=new,C0=cn(0,2.5,2.25*x)}
  880. end
  881. for i=6,0.8,-0.2 do des.Size=v3(i,i,i) des.CFrame=spawn*cn(0,0,-i/2) wait() end des:Remove()
  882. Stay(false)
  883. ReturnAnim()
  884. Anim,ArmAnim='None','None'
  885. elseif cmd=='crush' and Grabbing and (Anim=='None' or Anim=='Follow') then
  886. Anim,ArmAnim='crush','crush'
  887. for x=1,ASpeed do
  888. SetWeld(wLSho,0,x,ASpeed,Oa,Ob,Oa,v3(80,0,-160),1)
  889. SetWeld(wLArm,0,x,ASpeed,Oc,Od,Oc,v3(0,0,80),1)
  890. SetWeld(wRSho,0,x,ASpeed,Oe,Of,Oe,v3(80,0,160),1)
  891. SetWeld(wRArm,0,x,ASpeed,Og,Oh,Og,v3(0,0,-80),1)
  892. wait()
  893. end
  894. local a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=GetPose()
  895. wait(0.2)
  896. for x=1,ASpeed/2 do
  897. SetWeld(wLSho,0,x,ASpeed/2,a,b,Oa,v3(80,0,-14),1)
  898. SetWeld(wLArm,0,x,ASpeed/2,c,d,Oc,v3(0,0,80),1)
  899. SetWeld(wRSho,0,x,ASpeed/2,e,f,Oe,v3(80,0,14),1)
  900. SetWeld(wRArm,0,x,ASpeed/2,g,h,Og,v3(0,0,-80),1)
  901. wait()
  902. end
  903. MeshEffect(35,Grabbing.Part1.CFrame,nil,v3(2,2,1)*Scale,v3(7,7,3)*Scale,0.3,1,'Light stone grey',as.ring)
  904. local crushjo=60
  905. pcall(function() for i,v in pairs({'Neck','Left Shoulder','Right Shoulder','Left Hip','Right Hip'}) do local w=Grabbing.Part1.Parent.Torso[v] w.C1=w.C1*ca(mran(-crushjo,crushjo),mran(-crushjo,crushjo),mran(-crushjo,crushjo)) end end)
  906. local hit=Grabbing.Part1
  907. Grabbing:Remove() Grabbing=nil
  908. wait(2)
  909. pcall(function() hit.Parent.Humanoid.PlatformStand=false end)
  910. ReturnAnim()
  911. Anim,ArmAnim='None','None'
  912. elseif cmd=='eat' and Grabbing and (Anim=='None' or Anim=='Follow') then
  913. Anim,ArmAnim='Eat','Eat'
  914. for x=1,ASpeed*2 do
  915. SetWeld(wRSho,0,x,ASpeed*2,Oe,Of,Oe,v3(135,0,15),1)
  916. SetWeld(wRArm,0,x,ASpeed*2,Og,Oh,Og,v3(45,-10,-100),1)
  917. wait()
  918. end
  919. wait(1)
  920. for x=1,40 do
  921. SetWeld(wRSho,0,1,1,Oe,Of,Oe,v3(135+mran(-3,3),0,15+mran(-3,3)),1)
  922. SetWeld(wRArm,0,1,1,Og,Oh,Og,v3(45,-10+mran(-12,12),-100+mran(-3,3)),1)
  923. wait(0.05)
  924. if x%2==0 then
  925. local cf=Grabbing.Part1.CFrame*ca(180,mran(-180,180),mran(-40,40))*cn(0,1.5,0)
  926. MeshEffect(24,cf,cf*cn(0,10,0),v3(0.2,2,0.2),v3(0.4,5,0.4),0.1,1,'Really red','Sphere')
  927. end
  928. end
  929. Grabbing.Part1:BreakJoints()
  930. pcall(function() Grabbing.Part1.Parent.Head:Remove() end)
  931. Grabbing:Remove() Grabbing=nil
  932. wait(2)
  933. ReturnAnim()
  934. Anim,ArmAnim='None','None'
  935. elseif cmd=='drop' and Grabbing then
  936. local hum=Grabbing.Part1.Parent.Humanoid Grabbing:Remove() Grabbing=nil hum.PlatformStand=false
  937. elseif LimbNames[Sep[1]] and (Anim=='None' or Anim=='Form') then
  938. Anim,ArmAnim,LegAnim='Form','Form','Form'
  939. local v1,v2=GetWeld(LimbNames[Sep[1]],0)
  940. local sepx=se(',',Sep[2])
  941. for x=1,ASpeed*2 do
  942. SetWeld(LimbNames[Sep[1]],0,x,ASpeed*2,v1,v2,v1,v3(tonumber(sepx[1]),tonumber(sepx[2]),tonumber(sepx[3])),1)
  943. wait()
  944. end
  945. elseif cmd=='plode' then
  946. Char:BreakJoints() wait()
  947. local Pressure=tonumber(sep[2]) or 50
  948. fMarble(Char,function(v) v.Velocity=cn(Torso.Position,v.Position).lookVector*Pressure end)
  949. for i,v in pairs(RootLimbs) do v.Velocity=cn(Torso.Position,v.Position).lookVector*Pressure end
  950. elseif cmd=='explode' then
  951. iNew{'Explosion',pTorso,Position=pTorso.Position,BlastRadius=Scale*20}
  952. elseif cmd=='goto' then
  953. pcall(function()
  954. Hum:MoveTo(Player:GetMouse().Hit.p,Player:GetMouse().Target) end)
  955. elseif cmd=='newscale' and tonumber(sep[2]) then
  956. Char:BreakJoints()
  957. Scale=tonumber(sep[2])
  958. if Scale<0.5 then Scale=0.5 end
  959. if Scale>=100 then Scale=100 end
  960. elseif cmd=='nobox' then
  961. for i,v in pairs(workspace:children()) do if v.Name=='Cart' then v:Remove() end end
  962. elseif cmd=='die' then
  963. Char:BreakJoints()
  964. elseif cmd=='brick' then
  965. iPart{workspace,12,30,30,cf=Player.Character.Torso.CFrame*cn(0,10,-20),tr=0.5,an=true}
  966. elseif cmd=='test' then
  967. local pt=Player.Character.Torso.CFrame
  968. MeshEffect(35,pt*cn(0,5,0)*ca(90,0,0),nil,v3(2,2,1)*Scale,v3(7,7,3)*Scale,0.2,1,'Light stone grey',as.ring)
  969. else
  970. end
  971. end))
  972. end)
  973. keys={}
  974. NewAnim={}
  975. Player:GetMouse().KeyDown:connect(function(k)
  976. coroutine.resume(coroutine.create(function() keys[k]=true
  977. if (k=='q' or k=='e') and (Anim=='None' or Anim=='Laser') and (ArmAnim=='None' or ArmAnim=='Laser') and not NewAnim[k] then
  978. NewAnim[k]=true
  979. local w1,w2=k=='q' and wLSho or wRSho,k=='q' and wLArm or wRArm
  980. local x=k=='q' and -1 or 1
  981. local aa,bb=GetWeld(w1,0)
  982. local cc,dd=GetWeld(w2,0)
  983. local targ=w1.Part1.CFrame*cn(0,-333,0)
  984. local tips={}
  985. local co=0
  986. local sho1=iPart{Char,0.35,RArm.Size.y/Scale+0.15 ,0.35,sc=Scale,co=CC[1]} iNew{'Weld',sho1,Part0=k=='q' and LArm or RArm,Part1=sho1} iNew{'CylinderMesh',sho1}
  987. local sho2=iPart{Char,0.3,RArm.Size.y/Scale+0.16,0.3,sc=Scale,co='Really black'} iNew{'Weld',sho2,Part0=sho1,Part1=sho2} iNew{'CylinderMesh',sho2}
  988. for x=-1,1,2 do for z=-1,1,2 do tips[#tips+1]={(k=='q' and LArm or RArm)[x..'-1'..z].Weld}
  989. co=co+0.25
  990. local asd=tips[#tips]
  991. asd[2],asd[3]=GetWeld(asd[1],0)
  992. local cf=ca(0,360*co,0)*cn(0,asd[2].y*1.8,-0.75*Scale)*ca(-20,0,0)
  993. asd[4]=cf.p
  994. local a,b,c=cf:toEulerAnglesXYZ()
  995. asd[5]=v3(mdeg(a),mdeg(b),mdeg(c))
  996. end end
  997. for u=1,ASpeed/2 do
  998. for i=1,4 do local asd=tips[i]
  999. SetWeld(asd[1],0,u,ASpeed/2,asd[2],asd[3],asd[4],asd[5],1)
  1000. end wait()
  1001. end
  1002. repeat Anim,ArmAnim,LaserOn='Laser','Laser',true wait()
  1003. for i=1,4 do tips[i][1].C0=ca(0,15*x,0)*tips[i][1].C0 end
  1004. targ=TweenV3(1,12,targ,Player:GetMouse().Hit.p)
  1005. w1.C0=pTorso.CFrame:toObjectSpace(cn(pTorso.CFrame*cn(1.5*Scale*x,0.5*Scale,0).p,targ))*ca(90,0,0)
  1006. w2.C0=cn(0,-0.75*Scale,0)
  1007. until not keys[k]
  1008. ClearWeld(w1) ClearWeld(w2) for i=1,4 do ClearWeld(tips[i][1]) tips[i][6],tips[i][7]=GetWeld(tips[i][1],0) end
  1009. local a,b=GetWeld(w1,0)
  1010. local c,d=GetWeld(w2,0)
  1011. for z=1,ASpeed/2 do
  1012. for i=1,4 do SetWeld(tips[i][1],0,z,ASpeed/2,tips[i][6],tips[i][7],tips[i][2],tips[i][3],1) end
  1013. SetWeld(w1,0,z,ASpeed/2,a,b,aa,bb,1)
  1014. SetWeld(w2,0,z,ASpeed/2,c,d,cc,dd,1)
  1015. wait()
  1016. end
  1017. sho1:Remove() sho2:Remove()
  1018. NewAnim[k]=false
  1019. Anim,ArmAnim,LaserOn='None','None',false
  1020. end
  1021. end)) end)
  1022. Player:GetMouse().KeyUp:connect(function(k) keys[k]=false end)
  1023. Player:GetMouse().Button1Down:connect(function()
  1024. Button=true
  1025. if keys.f and Player:GetMouse().Target and Anim=='None' then
  1026. Hum:MoveTo(Player:GetMouse().Hit.p,Player:GetMouse().Target)
  1027. elseif (keys.q or keys.e) and LaserOn then
  1028. local pick=keys.q and 'q' or 'e'
  1029. repeat
  1030. local ofs=(pick=='q' and LArm or RArm).CFrame*ca(90,0,0)
  1031. if pick=='q' and keys.e then pick='e'
  1032. elseif pick=='e' and keys.q then pick='q' end
  1033. local part=iPart{Char,0.2,0.5,0.2,sc=Scale,co=CC[mran(2,3)],an=true,ma=Mat} iNew{'CylinderMesh',part}
  1034. Projectile(ofs,2*Scale,part,ca(-90,0,0),function(hit,pos)
  1035. AOEFind(pos,Scale*2,function(Hum,v) Damage(Hum) end)
  1036. end,
  1037. function(pos)
  1038. for i=1,5 do local cf=cn(pos)*ca(0,mran(-180,180),mran(-95,95)) MeshEffect(8,cf,cf*cn(0,Scale*2.2,0),v3(0.07,0.3,0.07)*Scale,v3(0.4,3,0.4)*Scale,0.2,1,CC[mran(2,3)],as.cone) end
  1039. MeshEffect(8,cn(pos),nil,v3(0.1,0.1,0.1)*Scale,v3(3,3,3)*Scale,0.2,1,CC[mran(2,3)],'Sphere') part:Remove() end)
  1040. wait((keys.q and keys.e) and 0.2 or 0.4)
  1041. until not Button or (not keys.q and not keys.e)
  1042. elseif 'swag'=='sweg' then
  1043. end
  1044. end)
  1045. Player:GetMouse().Button1Up:connect(function()
  1046. Button=false
  1047. end)
  1048.  
  1049. WalkAnim=0
  1050. Walking=false
  1051. WalkMulp=1
  1052. WalkMax=16
  1053. Hum.WalkSpeed=18
  1054. tWS={1,1,1,1,1,1,1}
  1055.  
  1056. Marbler=0
  1057. local cou=0
  1058. while Char.Parent do
  1059. cou=cou+1
  1060. --if cou%2==0 then print(cou) end
  1061. if Hum.Health>0 then
  1062. if Torso.Velocity.y>5 then Torso.Velocity=v3(Torso.Velocity.x,5,Torso.Velocity.z) end
  1063. Walking=v3(Torso.Velocity.x,0,Torso.Velocity.z).magnitude>Hum.WalkSpeed-2 and true or false
  1064. if Walking and LegAnim=='None' then
  1065. WalkAnim=WalkAnim+WalkMulp
  1066. end
  1067. if WalkAnim>0 and not Walking then
  1068. WalkAnim=WalkAnim-1
  1069. elseif WalkAnim<0 and not Walking then
  1070. WalkAnim=WalkAnim+1
  1071. end
  1072. if math.abs(WalkAnim)>=WalkMax then WalkMulp=WalkMulp*-1 end
  1073. local WalkAdj=26
  1074. Neck.C0=Torso.CFrame:toObjectSpace(pHead.CFrame)
  1075. if ArmAnim=='None' then
  1076. SetWeld(wLSho,0,WalkAnim,WalkMax,Oa,Ob,Oa,v3(-WalkAdj*1.5,0,-10),1)
  1077. SetWeld(wLArm,0,WalkAnim,WalkMax,Oc,Od,Oc,v3(10+(WalkAnim>0 and WalkAdj or 0),0,10),1)
  1078. SetWeld(wRSho,0,WalkAnim,WalkMax,Oe,Of,Oe,v3(WalkAdj*1.5,0,10),1)
  1079. SetWeld(wRArm,0,WalkAnim,WalkMax,Og,Oh,Og,v3(10+(WalkAnim>0 and WalkAdj or 0),0,-10),1)
  1080. end
  1081. if LegAnim=='None' then
  1082. SetWeld(wLThi,0,WalkAnim,WalkMax,Oi,Oj,Oi,v3(15+WalkAdj,0,-5),1)
  1083. SetWeld(wLLeg,0,WalkAnim,WalkMax,Ok,Ol,Ok,v3(-15+(WalkAnim>0 and -WalkAdj or 0),0,5),1)
  1084. SetWeld(wRThi,0,WalkAnim,WalkMax,Om,On,Om,v3(15-WalkAdj,0,5),1)
  1085. SetWeld(wRLeg,0,WalkAnim,WalkMax,Oo,Op,Oo,v3(-15+(WalkAnim<0 and WalkAdj or 0),0,-5),1)
  1086. end
  1087. --[[
  1088. for i,v in pairs(Marble) do
  1089. v[1].C0=v[1].C0*ca(MarbleSpeed*v[2],MarbleSpeed*v[3],MarbleSpeed*v[4])
  1090. Marbler=Marbler+(MarbleSpeed*v[2])
  1091. if Marbler>MarbleMax then
  1092. v[2]=v[2]*-1
  1093. v[3]=v[3]*-1
  1094. v[4]=v[4]*-1
  1095. end
  1096. end --]]
  1097. if Anim=='Follow' and Target and Target:findFirstChild'Torso' and not BG.maxTorque~=v3(1,1,1)/0 then
  1098. Hum:MoveTo(Target.Torso.CFrame*cn(2.5*Scale,0,5*Scale).p,Target.Torso)
  1099. end
  1100. if Grabbing and (not Grabbing.Part1 or not Grabbing.Part1.Parent or Grabbing.Part1.Parent:findFirstChild'Humanoid'==nil or Grabbing.Part1.Parent.Humanoid.Health<1) then
  1101. Grabbing:Remove() Grabbing=nil
  1102. end
  1103. end--hleat
  1104. --DoLoop Package
  1105. for i,v in pairs(LoopFunctions) do
  1106. v[2]=v[2]+1
  1107. v[3](v[2]/v[1])
  1108. if v[1]<=v[2] then LoopFunctions[i]=nil end
  1109. end
  1110. local ws=18
  1111. for i=1,#tWS do ws=ws*tWS[i] end
  1112. Hum.WalkSpeed=ws
  1113. if Hum.MaxHealth~=8000 then Hum.MaxHealth=8000 Hum.Health=8000 end
  1114. Hum.Health=Hum.Health+0.1
  1115. wait(0.03)
  1116. end
  1117. ChatConnection:disconnect()
  1118. game:service'Debris':AddItem(script,0.5)
  1119. script.Disabled=true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement