Advertisement
BmanExoni

Untitled

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