Advertisement
N0ePlox

DONT Leet h1m ut

May 15th, 2018
289
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 88.81 KB | None | 0 0
  1.  
  2. --Converted with ttyyuu12345's model to script plugin v4
  3. function sandbox(var,func)
  4. local env = getfenv(func)
  5. local newenv = setmetatable({},{
  6. __index = function(self,k)
  7. if k=="script" then
  8. return var
  9. else
  10. return env[k]
  11. end
  12. end,
  13. })
  14. setfenv(func,newenv)
  15. return func
  16. end
  17. cors = {}
  18. mas = Instance.new("Model",game:GetService("Lighting"))
  19. Model0 = Instance.new("Model")
  20. Model1 = Instance.new("Model")
  21. Model2 = Instance.new("Model")
  22. Model3 = Instance.new("Model")
  23. Part4 = Instance.new("Part")
  24. Part5 = Instance.new("Part")
  25. Part6 = Instance.new("Part")
  26. Part7 = Instance.new("Part")
  27. Part8 = Instance.new("Part")
  28. Model9 = Instance.new("Model")
  29. Part10 = Instance.new("Part")
  30. SpecialMesh11 = Instance.new("SpecialMesh")
  31. Part12 = Instance.new("Part")
  32. SpecialMesh13 = Instance.new("SpecialMesh")
  33. Part14 = Instance.new("Part")
  34. SpecialMesh15 = Instance.new("SpecialMesh")
  35. Part16 = Instance.new("Part")
  36. SpecialMesh17 = Instance.new("SpecialMesh")
  37. Part18 = Instance.new("Part")
  38. Script19 = Instance.new("Script")
  39. ClickDetector20 = Instance.new("ClickDetector")
  40. Script21 = Instance.new("Script")
  41. Script22 = Instance.new("Script")
  42. Script23 = Instance.new("Script")
  43. Script24 = Instance.new("Script")
  44. Script25 = Instance.new("Script")
  45. Part26 = Instance.new("Part")
  46. Script27 = Instance.new("Script")
  47. ClickDetector28 = Instance.new("ClickDetector")
  48. Script29 = Instance.new("Script")
  49. Script30 = Instance.new("Script")
  50. Script31 = Instance.new("Script")
  51. Script32 = Instance.new("Script")
  52. Script33 = Instance.new("Script")
  53. Part34 = Instance.new("Part")
  54. SpecialMesh35 = Instance.new("SpecialMesh")
  55. Part36 = Instance.new("Part")
  56. SpecialMesh37 = Instance.new("SpecialMesh")
  57. Part38 = Instance.new("Part")
  58. SpecialMesh39 = Instance.new("SpecialMesh")
  59. Part40 = Instance.new("Part")
  60. SpecialMesh41 = Instance.new("SpecialMesh")
  61. Part42 = Instance.new("Part")
  62. SpecialMesh43 = Instance.new("SpecialMesh")
  63. Part44 = Instance.new("Part")
  64. SpecialMesh45 = Instance.new("SpecialMesh")
  65. Part46 = Instance.new("Part")
  66. SpecialMesh47 = Instance.new("SpecialMesh")
  67. Part48 = Instance.new("Part")
  68. SpecialMesh49 = Instance.new("SpecialMesh")
  69. Part50 = Instance.new("Part")
  70. SpecialMesh51 = Instance.new("SpecialMesh")
  71. Part52 = Instance.new("Part")
  72. SpecialMesh53 = Instance.new("SpecialMesh")
  73. Part54 = Instance.new("Part")
  74. SpecialMesh55 = Instance.new("SpecialMesh")
  75. Part56 = Instance.new("Part")
  76. SpecialMesh57 = Instance.new("SpecialMesh")
  77. Part58 = Instance.new("Part")
  78. Model59 = Instance.new("Model")
  79. Part60 = Instance.new("Part")
  80. SpecialMesh61 = Instance.new("SpecialMesh")
  81. Sound62 = Instance.new("Sound")
  82. Script63 = Instance.new("Script")
  83. PointLight64 = Instance.new("PointLight")
  84. Sound65 = Instance.new("Sound")
  85. Sound66 = Instance.new("Sound")
  86. Part67 = Instance.new("Part")
  87. Decal68 = Instance.new("Decal")
  88. Motor6D69 = Instance.new("Motor6D")
  89. Motor6D70 = Instance.new("Motor6D")
  90. Motor6D71 = Instance.new("Motor6D")
  91. Motor6D72 = Instance.new("Motor6D")
  92. Motor6D73 = Instance.new("Motor6D")
  93. Script74 = Instance.new("Script")
  94. Part75 = Instance.new("Part")
  95. Part76 = Instance.new("Part")
  96. Part77 = Instance.new("Part")
  97. Part78 = Instance.new("Part")
  98. Part79 = Instance.new("Part")
  99. Weld80 = Instance.new("Weld")
  100. Part81 = Instance.new("Part")
  101. Part82 = Instance.new("Part")
  102. Humanoid83 = Instance.new("Humanoid")
  103. Model84 = Instance.new("Model")
  104. Model85 = Instance.new("Model")
  105. Part86 = Instance.new("Part")
  106. Motor6D87 = Instance.new("Motor6D")
  107. Script88 = Instance.new("Script")
  108. Script89 = Instance.new("Script")
  109. StringValue90 = Instance.new("StringValue")
  110. Animation91 = Instance.new("Animation")
  111. StringValue92 = Instance.new("StringValue")
  112. Animation93 = Instance.new("Animation")
  113. StringValue94 = Instance.new("StringValue")
  114. Animation95 = Instance.new("Animation")
  115. NumberValue96 = Instance.new("NumberValue")
  116. Animation97 = Instance.new("Animation")
  117. NumberValue98 = Instance.new("NumberValue")
  118. StringValue99 = Instance.new("StringValue")
  119. Animation100 = Instance.new("Animation")
  120. StringValue101 = Instance.new("StringValue")
  121. Animation102 = Instance.new("Animation")
  122. StringValue103 = Instance.new("StringValue")
  123. Animation104 = Instance.new("Animation")
  124. StringValue105 = Instance.new("StringValue")
  125. Animation106 = Instance.new("Animation")
  126. StringValue107 = Instance.new("StringValue")
  127. Animation108 = Instance.new("Animation")
  128. Animation109 = Instance.new("Animation")
  129. Script110 = Instance.new("Script")
  130. Part111 = Instance.new("Part")
  131. SpecialMesh112 = Instance.new("SpecialMesh")
  132. Sound113 = Instance.new("Sound")
  133. Sound114 = Instance.new("Sound")
  134. Sound115 = Instance.new("Sound")
  135. Sound116 = Instance.new("Sound")
  136. Script117 = Instance.new("Script")
  137. BodyColors118 = Instance.new("BodyColors")
  138. Sound119 = Instance.new("Sound")
  139. Model0.Parent = mas
  140. Model1.Parent = Model0
  141. Model2.Parent = Model1
  142. Model3.Parent = Model2
  143. Part4.Parent = Model3
  144. Part4.BrickColor = BrickColor.new("Dark stone grey")
  145. Part4.Anchored = true
  146. Part4.FormFactor = Enum.FormFactor.Symmetric
  147. Part4.Size = Vector3.new(1, 10, 1)
  148. Part4.CFrame = CFrame.new(34.4000015, 5.39990234, -50.2000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  149. Part4.BottomSurface = Enum.SurfaceType.Smooth
  150. Part4.TopSurface = Enum.SurfaceType.Smooth
  151. Part4.Color = Color3.new(0.388235, 0.372549, 0.384314)
  152. Part4.Position = Vector3.new(34.4000015, 5.39990234, -50.2000084)
  153. Part4.Color = Color3.new(0.388235, 0.372549, 0.384314)
  154. Part5.Parent = Model3
  155. Part5.BrickColor = BrickColor.new("Dark stone grey")
  156. Part5.Anchored = true
  157. Part5.FormFactor = Enum.FormFactor.Plate
  158. Part5.Size = Vector3.new(10, 0.400000006, 10)
  159. Part5.CFrame = CFrame.new(29.9000034, 10.5998802, -54.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  160. Part5.BottomSurface = Enum.SurfaceType.Smooth
  161. Part5.TopSurface = Enum.SurfaceType.Smooth
  162. Part5.Color = Color3.new(0.388235, 0.372549, 0.384314)
  163. Part5.Position = Vector3.new(29.9000034, 10.5998802, -54.7000084)
  164. Part5.Color = Color3.new(0.388235, 0.372549, 0.384314)
  165. Part6.Parent = Model3
  166. Part6.BrickColor = BrickColor.new("Dark stone grey")
  167. Part6.Anchored = true
  168. Part6.FormFactor = Enum.FormFactor.Symmetric
  169. Part6.Size = Vector3.new(1, 10, 1)
  170. Part6.CFrame = CFrame.new(25.4000015, 5.39990234, -50.2000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  171. Part6.BottomSurface = Enum.SurfaceType.Smooth
  172. Part6.TopSurface = Enum.SurfaceType.Smooth
  173. Part6.Color = Color3.new(0.388235, 0.372549, 0.384314)
  174. Part6.Position = Vector3.new(25.4000015, 5.39990234, -50.2000084)
  175. Part6.Color = Color3.new(0.388235, 0.372549, 0.384314)
  176. Part7.Parent = Model3
  177. Part7.BrickColor = BrickColor.new("Dark stone grey")
  178. Part7.Anchored = true
  179. Part7.FormFactor = Enum.FormFactor.Plate
  180. Part7.Size = Vector3.new(10, 0.400000006, 10)
  181. Part7.CFrame = CFrame.new(29.9000034, 0.200016022, -54.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  182. Part7.BottomSurface = Enum.SurfaceType.Smooth
  183. Part7.TopSurface = Enum.SurfaceType.Smooth
  184. Part7.Color = Color3.new(0.388235, 0.372549, 0.384314)
  185. Part7.Position = Vector3.new(29.9000034, 0.200016022, -54.7000084)
  186. Part7.Color = Color3.new(0.388235, 0.372549, 0.384314)
  187. Part8.Parent = Model3
  188. Part8.BrickColor = BrickColor.new("Dark stone grey")
  189. Part8.Anchored = true
  190. Part8.FormFactor = Enum.FormFactor.Symmetric
  191. Part8.Size = Vector3.new(1, 10, 1)
  192. Part8.CFrame = CFrame.new(25.4000015, 5.39990234, -59.2000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  193. Part8.BottomSurface = Enum.SurfaceType.Smooth
  194. Part8.TopSurface = Enum.SurfaceType.Smooth
  195. Part8.Color = Color3.new(0.388235, 0.372549, 0.384314)
  196. Part8.Position = Vector3.new(25.4000015, 5.39990234, -59.2000084)
  197. Part8.Color = Color3.new(0.388235, 0.372549, 0.384314)
  198. Model9.Parent = Model3
  199. Part10.Name = "l1"
  200. Part10.Parent = Model9
  201. Part10.Reflectance = 0.5
  202. Part10.Transparency = 0.30000001192093
  203. Part10.Rotation = Vector3.new(0, -90, 0)
  204. Part10.Anchored = true
  205. Part10.FormFactor = Enum.FormFactor.Symmetric
  206. Part10.Size = Vector3.new(1, 10, 2)
  207. Part10.CFrame = CFrame.new(26.9000015, 5.39990234, -59.2000084, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  208. Part10.Position = Vector3.new(26.9000015, 5.39990234, -59.2000084)
  209. Part10.Orientation = Vector3.new(0, -90, 0)
  210. SpecialMesh11.Parent = Part10
  211. SpecialMesh11.Scale = Vector3.new(0.5, 1, 0.5)
  212. SpecialMesh11.Scale = Vector3.new(0.5, 1, 0.5)
  213. Part12.Name = "l2"
  214. Part12.Parent = Model9
  215. Part12.Reflectance = 0.5
  216. Part12.Transparency = 0.30000001192093
  217. Part12.Rotation = Vector3.new(0, 90, 0)
  218. Part12.Anchored = true
  219. Part12.FormFactor = Enum.FormFactor.Symmetric
  220. Part12.Size = Vector3.new(1, 10, 2)
  221. Part12.CFrame = CFrame.new(28.9000034, 5.39990234, -59.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  222. Part12.Position = Vector3.new(28.9000034, 5.39990234, -59.2000084)
  223. Part12.Orientation = Vector3.new(0, 90, 0)
  224. SpecialMesh13.Parent = Part12
  225. SpecialMesh13.Scale = Vector3.new(0.5, 1, 0.5)
  226. SpecialMesh13.Scale = Vector3.new(0.5, 1, 0.5)
  227. Part14.Name = "l3"
  228. Part14.Parent = Model9
  229. Part14.Reflectance = 0.5
  230. Part14.Transparency = 0.30000001192093
  231. Part14.Rotation = Vector3.new(0, 90, 0)
  232. Part14.Anchored = true
  233. Part14.FormFactor = Enum.FormFactor.Symmetric
  234. Part14.Size = Vector3.new(1, 10, 2)
  235. Part14.CFrame = CFrame.new(30.9000034, 5.39990234, -59.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  236. Part14.Position = Vector3.new(30.9000034, 5.39990234, -59.2000084)
  237. Part14.Orientation = Vector3.new(0, 90, 0)
  238. SpecialMesh15.Parent = Part14
  239. SpecialMesh15.Scale = Vector3.new(0.5, 1, 0.5)
  240. SpecialMesh15.Scale = Vector3.new(0.5, 1, 0.5)
  241. Part16.Name = "l4"
  242. Part16.Parent = Model9
  243. Part16.Reflectance = 0.5
  244. Part16.Transparency = 0.30000001192093
  245. Part16.Rotation = Vector3.new(0, 90, 0)
  246. Part16.Anchored = true
  247. Part16.FormFactor = Enum.FormFactor.Symmetric
  248. Part16.Size = Vector3.new(1, 10, 2)
  249. Part16.CFrame = CFrame.new(32.9000015, 5.39990234, -59.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  250. Part16.Position = Vector3.new(32.9000015, 5.39990234, -59.2000084)
  251. Part16.Orientation = Vector3.new(0, 90, 0)
  252. SpecialMesh17.Parent = Part16
  253. SpecialMesh17.Scale = Vector3.new(0.5, 1, 0.5)
  254. SpecialMesh17.Scale = Vector3.new(0.5, 1, 0.5)
  255. Part18.Name = "Smooth Block Model"
  256. Part18.Parent = Model9
  257. Part18.BrickColor = BrickColor.new("Bright red")
  258. Part18.Rotation = Vector3.new(-90, 0, 0)
  259. Part18.Anchored = true
  260. Part18.FormFactor = Enum.FormFactor.Plate
  261. Part18.Size = Vector3.new(1, 0.400000006, 1)
  262. Part18.CFrame = CFrame.new(25.4000015, 3.90001726, -59.9000053, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  263. Part18.TopSurface = Enum.SurfaceType.Smooth
  264. Part18.Color = Color3.new(0.768628, 0.156863, 0.109804)
  265. Part18.Position = Vector3.new(25.4000015, 3.90001726, -59.9000053)
  266. Part18.Orientation = Vector3.new(-90, 0, 0)
  267. Part18.Color = Color3.new(0.768628, 0.156863, 0.109804)
  268. Script19.Parent = Part18
  269. table.insert(cors,sandbox(Script19,function()
  270. function onClicked()
  271. script.Parent.Parent.l1.Transparency = 0.3
  272. script.Parent.Parent.l1.CanCollide = true
  273. end
  274. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  275.  
  276. end))
  277. ClickDetector20.Parent = Part18
  278. Script21.Parent = Part18
  279. table.insert(cors,sandbox(Script21,function()
  280. function onClicked()
  281. script.Parent.Parent.l2.Transparency = 0.3
  282. script.Parent.Parent.l2.CanCollide = true
  283. end
  284. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  285.  
  286. end))
  287. Script22.Parent = Part18
  288. table.insert(cors,sandbox(Script22,function()
  289. function onClicked()
  290. script.Parent.Parent.l3.Transparency = 0.3
  291. script.Parent.Parent.l3.CanCollide = true
  292. end
  293. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  294.  
  295. end))
  296. Script23.Parent = Part18
  297. table.insert(cors,sandbox(Script23,function()
  298. function onClicked()
  299. script.Parent.Parent.l4.Transparency = 0.3
  300. script.Parent.Parent.l4.CanCollide = true
  301. end
  302. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  303.  
  304. end))
  305. Script24.Parent = Part18
  306. table.insert(cors,sandbox(Script24,function()
  307. function onClicked()
  308. script.Parent.Parent.l5.Transparency = 0.3
  309. script.Parent.Parent.l5.CanCollide = true
  310. end
  311. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  312.  
  313. end))
  314. Script25.Parent = Part18
  315. table.insert(cors,sandbox(Script25,function()
  316. function onClicked()
  317. script.Parent.Parent.l6.Transparency = 0.3
  318. script.Parent.Parent.l6.CanCollide = true
  319. end
  320. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  321.  
  322. end))
  323. Part26.Name = "Smooth Block Model"
  324. Part26.Parent = Model9
  325. Part26.BrickColor = BrickColor.new("Dark green")
  326. Part26.Rotation = Vector3.new(90, -90, 0)
  327. Part26.Anchored = true
  328. Part26.FormFactor = Enum.FormFactor.Plate
  329. Part26.Size = Vector3.new(1, 0.400000006, 1)
  330. Part26.CFrame = CFrame.new(25.4000015, 4.89758825, -59.8999596, 0, 0, -1, -1, 0, 0, 0, 1, 0)
  331. Part26.BottomSurface = Enum.SurfaceType.Smooth
  332. Part26.TopSurface = Enum.SurfaceType.Smooth
  333. Part26.Color = Color3.new(0.156863, 0.498039, 0.278431)
  334. Part26.Position = Vector3.new(25.4000015, 4.89758825, -59.8999596)
  335. Part26.Orientation = Vector3.new(0, -90, -90)
  336. Part26.Color = Color3.new(0.156863, 0.498039, 0.278431)
  337. Script27.Parent = Part26
  338. table.insert(cors,sandbox(Script27,function()
  339. function onClicked()
  340. script.Parent.Parent.l1.Transparency = 1
  341. script.Parent.Parent.l1.CanCollide = false
  342. end
  343. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  344.  
  345. end))
  346. ClickDetector28.Parent = Part26
  347. Script29.Parent = Part26
  348. table.insert(cors,sandbox(Script29,function()
  349. function onClicked()
  350. script.Parent.Parent.l2.Transparency = 1
  351. script.Parent.Parent.l2.CanCollide = false
  352. end
  353. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  354.  
  355. end))
  356. Script30.Parent = Part26
  357. table.insert(cors,sandbox(Script30,function()
  358. function onClicked()
  359. script.Parent.Parent.l3.Transparency = 1
  360. script.Parent.Parent.l3.CanCollide = false
  361. end
  362. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  363.  
  364. end))
  365. Script31.Parent = Part26
  366. table.insert(cors,sandbox(Script31,function()
  367. function onClicked()
  368. script.Parent.Parent.l4.Transparency = 1
  369. script.Parent.Parent.l4.CanCollide = false
  370. end
  371. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  372.  
  373. end))
  374. Script32.Parent = Part26
  375. table.insert(cors,sandbox(Script32,function()
  376. function onClicked()
  377. script.Parent.Parent.l5.Transparency = 1
  378. script.Parent.Parent.l5.CanCollide = false
  379. end
  380. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  381.  
  382. end))
  383. Script33.Parent = Part26
  384. table.insert(cors,sandbox(Script33,function()
  385. function onClicked()
  386. script.Parent.Parent.l6.Transparency = 1
  387. script.Parent.Parent.l6.CanCollide = false
  388. end
  389. script.Parent.ClickDetector.MouseClick:connect (onClicked)
  390.  
  391. end))
  392. Part34.Parent = Model9
  393. Part34.BrickColor = BrickColor.new("Dark stone grey")
  394. Part34.Reflectance = 0.5
  395. Part34.Rotation = Vector3.new(0, 90, 0)
  396. Part34.Anchored = true
  397. Part34.FormFactor = Enum.FormFactor.Symmetric
  398. Part34.Size = Vector3.new(1, 10, 2)
  399. Part34.CFrame = CFrame.new(26.9000015, 5.39990234, -50.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  400. Part34.BottomSurface = Enum.SurfaceType.Smooth
  401. Part34.TopSurface = Enum.SurfaceType.Smooth
  402. Part34.Color = Color3.new(0.388235, 0.372549, 0.384314)
  403. Part34.Position = Vector3.new(26.9000015, 5.39990234, -50.2000084)
  404. Part34.Orientation = Vector3.new(0, 90, 0)
  405. Part34.Color = Color3.new(0.388235, 0.372549, 0.384314)
  406. SpecialMesh35.Parent = Part34
  407. SpecialMesh35.Scale = Vector3.new(0.5, 1, 0.5)
  408. SpecialMesh35.Scale = Vector3.new(0.5, 1, 0.5)
  409. Part36.Parent = Model9
  410. Part36.BrickColor = BrickColor.new("Dark stone grey")
  411. Part36.Reflectance = 0.5
  412. Part36.Rotation = Vector3.new(0, 90, 0)
  413. Part36.Anchored = true
  414. Part36.FormFactor = Enum.FormFactor.Symmetric
  415. Part36.Size = Vector3.new(1, 10, 2)
  416. Part36.CFrame = CFrame.new(28.9000034, 5.39990234, -50.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  417. Part36.BottomSurface = Enum.SurfaceType.Smooth
  418. Part36.TopSurface = Enum.SurfaceType.Smooth
  419. Part36.Color = Color3.new(0.388235, 0.372549, 0.384314)
  420. Part36.Position = Vector3.new(28.9000034, 5.39990234, -50.2000084)
  421. Part36.Orientation = Vector3.new(0, 90, 0)
  422. Part36.Color = Color3.new(0.388235, 0.372549, 0.384314)
  423. SpecialMesh37.Parent = Part36
  424. SpecialMesh37.Scale = Vector3.new(0.5, 1, 0.5)
  425. SpecialMesh37.Scale = Vector3.new(0.5, 1, 0.5)
  426. Part38.Parent = Model9
  427. Part38.BrickColor = BrickColor.new("Dark stone grey")
  428. Part38.Reflectance = 0.5
  429. Part38.Rotation = Vector3.new(0, 90, 0)
  430. Part38.Anchored = true
  431. Part38.FormFactor = Enum.FormFactor.Symmetric
  432. Part38.Size = Vector3.new(1, 10, 2)
  433. Part38.CFrame = CFrame.new(30.9000034, 5.39990234, -50.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  434. Part38.BottomSurface = Enum.SurfaceType.Smooth
  435. Part38.TopSurface = Enum.SurfaceType.Smooth
  436. Part38.Color = Color3.new(0.388235, 0.372549, 0.384314)
  437. Part38.Position = Vector3.new(30.9000034, 5.39990234, -50.2000084)
  438. Part38.Orientation = Vector3.new(0, 90, 0)
  439. Part38.Color = Color3.new(0.388235, 0.372549, 0.384314)
  440. SpecialMesh39.Parent = Part38
  441. SpecialMesh39.Scale = Vector3.new(0.5, 1, 0.5)
  442. SpecialMesh39.Scale = Vector3.new(0.5, 1, 0.5)
  443. Part40.Parent = Model9
  444. Part40.BrickColor = BrickColor.new("Dark stone grey")
  445. Part40.Reflectance = 0.5
  446. Part40.Rotation = Vector3.new(0, 90, 0)
  447. Part40.Anchored = true
  448. Part40.FormFactor = Enum.FormFactor.Symmetric
  449. Part40.Size = Vector3.new(1, 10, 2)
  450. Part40.CFrame = CFrame.new(32.9000015, 5.39990234, -50.2000084, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  451. Part40.BottomSurface = Enum.SurfaceType.Smooth
  452. Part40.TopSurface = Enum.SurfaceType.Smooth
  453. Part40.Color = Color3.new(0.388235, 0.372549, 0.384314)
  454. Part40.Position = Vector3.new(32.9000015, 5.39990234, -50.2000084)
  455. Part40.Orientation = Vector3.new(0, 90, 0)
  456. Part40.Color = Color3.new(0.388235, 0.372549, 0.384314)
  457. SpecialMesh41.Parent = Part40
  458. SpecialMesh41.Scale = Vector3.new(0.5, 1, 0.5)
  459. SpecialMesh41.Scale = Vector3.new(0.5, 1, 0.5)
  460. Part42.Parent = Model9
  461. Part42.BrickColor = BrickColor.new("Dark stone grey")
  462. Part42.Reflectance = 0.5
  463. Part42.Rotation = Vector3.new(-180, 0, -180)
  464. Part42.Anchored = true
  465. Part42.FormFactor = Enum.FormFactor.Symmetric
  466. Part42.Size = Vector3.new(1, 10, 2)
  467. Part42.CFrame = CFrame.new(25.4000015, 5.39990234, -51.7000084, -1, 0, 0, 0, 1, 0, 0, 0, -1)
  468. Part42.BottomSurface = Enum.SurfaceType.Smooth
  469. Part42.TopSurface = Enum.SurfaceType.Smooth
  470. Part42.Color = Color3.new(0.388235, 0.372549, 0.384314)
  471. Part42.Position = Vector3.new(25.4000015, 5.39990234, -51.7000084)
  472. Part42.Orientation = Vector3.new(0, 180, 0)
  473. Part42.Color = Color3.new(0.388235, 0.372549, 0.384314)
  474. SpecialMesh43.Parent = Part42
  475. SpecialMesh43.Scale = Vector3.new(0.5, 1, 0.5)
  476. SpecialMesh43.Scale = Vector3.new(0.5, 1, 0.5)
  477. Part44.Parent = Model9
  478. Part44.BrickColor = BrickColor.new("Dark stone grey")
  479. Part44.Reflectance = 0.5
  480. Part44.Rotation = Vector3.new(-180, 0, -180)
  481. Part44.Anchored = true
  482. Part44.FormFactor = Enum.FormFactor.Symmetric
  483. Part44.Size = Vector3.new(1, 10, 2)
  484. Part44.CFrame = CFrame.new(25.4000015, 5.39990234, -53.7000084, -1, 0, 0, 0, 1, 0, 0, 0, -1)
  485. Part44.BottomSurface = Enum.SurfaceType.Smooth
  486. Part44.TopSurface = Enum.SurfaceType.Smooth
  487. Part44.Color = Color3.new(0.388235, 0.372549, 0.384314)
  488. Part44.Position = Vector3.new(25.4000015, 5.39990234, -53.7000084)
  489. Part44.Orientation = Vector3.new(0, 180, 0)
  490. Part44.Color = Color3.new(0.388235, 0.372549, 0.384314)
  491. SpecialMesh45.Parent = Part44
  492. SpecialMesh45.Scale = Vector3.new(0.5, 1, 0.5)
  493. SpecialMesh45.Scale = Vector3.new(0.5, 1, 0.5)
  494. Part46.Parent = Model9
  495. Part46.BrickColor = BrickColor.new("Dark stone grey")
  496. Part46.Reflectance = 0.5
  497. Part46.Rotation = Vector3.new(-180, 0, -180)
  498. Part46.Anchored = true
  499. Part46.FormFactor = Enum.FormFactor.Symmetric
  500. Part46.Size = Vector3.new(1, 10, 2)
  501. Part46.CFrame = CFrame.new(25.4000015, 5.39990234, -55.7000084, -1, 0, 0, 0, 1, 0, 0, 0, -1)
  502. Part46.BottomSurface = Enum.SurfaceType.Smooth
  503. Part46.TopSurface = Enum.SurfaceType.Smooth
  504. Part46.Color = Color3.new(0.388235, 0.372549, 0.384314)
  505. Part46.Position = Vector3.new(25.4000015, 5.39990234, -55.7000084)
  506. Part46.Orientation = Vector3.new(0, 180, 0)
  507. Part46.Color = Color3.new(0.388235, 0.372549, 0.384314)
  508. SpecialMesh47.Parent = Part46
  509. SpecialMesh47.Scale = Vector3.new(0.5, 1, 0.5)
  510. SpecialMesh47.Scale = Vector3.new(0.5, 1, 0.5)
  511. Part48.Parent = Model9
  512. Part48.BrickColor = BrickColor.new("Dark stone grey")
  513. Part48.Reflectance = 0.5
  514. Part48.Rotation = Vector3.new(-180, 0, -180)
  515. Part48.Anchored = true
  516. Part48.FormFactor = Enum.FormFactor.Symmetric
  517. Part48.Size = Vector3.new(1, 10, 2)
  518. Part48.CFrame = CFrame.new(25.4000015, 5.39990234, -57.7000084, -1, 0, 0, 0, 1, 0, 0, 0, -1)
  519. Part48.BottomSurface = Enum.SurfaceType.Smooth
  520. Part48.TopSurface = Enum.SurfaceType.Smooth
  521. Part48.Color = Color3.new(0.388235, 0.372549, 0.384314)
  522. Part48.Position = Vector3.new(25.4000015, 5.39990234, -57.7000084)
  523. Part48.Orientation = Vector3.new(0, 180, 0)
  524. Part48.Color = Color3.new(0.388235, 0.372549, 0.384314)
  525. SpecialMesh49.Parent = Part48
  526. SpecialMesh49.Scale = Vector3.new(0.5, 1, 0.5)
  527. SpecialMesh49.Scale = Vector3.new(0.5, 1, 0.5)
  528. Part50.Parent = Model9
  529. Part50.BrickColor = BrickColor.new("Dark stone grey")
  530. Part50.Reflectance = 0.5
  531. Part50.Anchored = true
  532. Part50.FormFactor = Enum.FormFactor.Symmetric
  533. Part50.Size = Vector3.new(1, 10, 2)
  534. Part50.CFrame = CFrame.new(34.4000015, 5.39990234, -57.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  535. Part50.BottomSurface = Enum.SurfaceType.Smooth
  536. Part50.TopSurface = Enum.SurfaceType.Smooth
  537. Part50.Color = Color3.new(0.388235, 0.372549, 0.384314)
  538. Part50.Position = Vector3.new(34.4000015, 5.39990234, -57.7000084)
  539. Part50.Color = Color3.new(0.388235, 0.372549, 0.384314)
  540. SpecialMesh51.Parent = Part50
  541. SpecialMesh51.Scale = Vector3.new(0.5, 1, 0.5)
  542. SpecialMesh51.Scale = Vector3.new(0.5, 1, 0.5)
  543. Part52.Parent = Model9
  544. Part52.BrickColor = BrickColor.new("Dark stone grey")
  545. Part52.Reflectance = 0.5
  546. Part52.Anchored = true
  547. Part52.FormFactor = Enum.FormFactor.Symmetric
  548. Part52.Size = Vector3.new(1, 10, 2)
  549. Part52.CFrame = CFrame.new(34.4000015, 5.39990234, -55.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  550. Part52.BottomSurface = Enum.SurfaceType.Smooth
  551. Part52.TopSurface = Enum.SurfaceType.Smooth
  552. Part52.Color = Color3.new(0.388235, 0.372549, 0.384314)
  553. Part52.Position = Vector3.new(34.4000015, 5.39990234, -55.7000084)
  554. Part52.Color = Color3.new(0.388235, 0.372549, 0.384314)
  555. SpecialMesh53.Parent = Part52
  556. SpecialMesh53.Scale = Vector3.new(0.5, 1, 0.5)
  557. SpecialMesh53.Scale = Vector3.new(0.5, 1, 0.5)
  558. Part54.Parent = Model9
  559. Part54.BrickColor = BrickColor.new("Dark stone grey")
  560. Part54.Reflectance = 0.5
  561. Part54.Anchored = true
  562. Part54.FormFactor = Enum.FormFactor.Symmetric
  563. Part54.Size = Vector3.new(1, 10, 2)
  564. Part54.CFrame = CFrame.new(34.4000015, 5.39990234, -53.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  565. Part54.BottomSurface = Enum.SurfaceType.Smooth
  566. Part54.TopSurface = Enum.SurfaceType.Smooth
  567. Part54.Color = Color3.new(0.388235, 0.372549, 0.384314)
  568. Part54.Position = Vector3.new(34.4000015, 5.39990234, -53.7000084)
  569. Part54.Color = Color3.new(0.388235, 0.372549, 0.384314)
  570. SpecialMesh55.Parent = Part54
  571. SpecialMesh55.Scale = Vector3.new(0.5, 1, 0.5)
  572. SpecialMesh55.Scale = Vector3.new(0.5, 1, 0.5)
  573. Part56.Parent = Model9
  574. Part56.BrickColor = BrickColor.new("Dark stone grey")
  575. Part56.Reflectance = 0.5
  576. Part56.Anchored = true
  577. Part56.FormFactor = Enum.FormFactor.Symmetric
  578. Part56.Size = Vector3.new(1, 10, 2)
  579. Part56.CFrame = CFrame.new(34.4000015, 5.39990234, -51.7000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  580. Part56.BottomSurface = Enum.SurfaceType.Smooth
  581. Part56.TopSurface = Enum.SurfaceType.Smooth
  582. Part56.Color = Color3.new(0.388235, 0.372549, 0.384314)
  583. Part56.Position = Vector3.new(34.4000015, 5.39990234, -51.7000084)
  584. Part56.Color = Color3.new(0.388235, 0.372549, 0.384314)
  585. SpecialMesh57.Parent = Part56
  586. SpecialMesh57.Scale = Vector3.new(0.5, 1, 0.5)
  587. SpecialMesh57.Scale = Vector3.new(0.5, 1, 0.5)
  588. Part58.Parent = Model3
  589. Part58.BrickColor = BrickColor.new("Dark stone grey")
  590. Part58.Anchored = true
  591. Part58.FormFactor = Enum.FormFactor.Symmetric
  592. Part58.Size = Vector3.new(1, 10, 1)
  593. Part58.CFrame = CFrame.new(34.4000015, 5.39990234, -59.2000084, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  594. Part58.BottomSurface = Enum.SurfaceType.Smooth
  595. Part58.TopSurface = Enum.SurfaceType.Smooth
  596. Part58.Color = Color3.new(0.388235, 0.372549, 0.384314)
  597. Part58.Position = Vector3.new(34.4000015, 5.39990234, -59.2000084)
  598. Part58.Color = Color3.new(0.388235, 0.372549, 0.384314)
  599. Model59.Name = "JohnDoe"
  600. Model59.Parent = Model0
  601. Model59.PrimaryPart = Part60
  602. Part60.Name = "Head"
  603. Part60.Parent = Model59
  604. Part60.Material = Enum.Material.SmoothPlastic
  605. Part60.BrickColor = BrickColor.new("Cool yellow")
  606. Part60.Transparency = 1
  607. Part60.Rotation = Vector3.new(0, -0.610000014, 0)
  608. Part60.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  609. Part60.CanCollide = false
  610. Part60.Elasticity = 0
  611. Part60.FormFactor = Enum.FormFactor.Symmetric
  612. Part60.Friction = 0
  613. Part60.Size = Vector3.new(2, 1, 1)
  614. Part60.CFrame = CFrame.new(29.7974205, 5.39992809, -53.8519211, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  615. Part60.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  616. Part60.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  617. Part60.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  618. Part60.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  619. Part60.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  620. Part60.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  621. Part60.Color = Color3.new(0.992157, 0.917647, 0.552941)
  622. Part60.Position = Vector3.new(29.7974205, 5.39992809, -53.8519211)
  623. Part60.Orientation = Vector3.new(0, -0.610000014, 0)
  624. Part60.Color = Color3.new(0.992157, 0.917647, 0.552941)
  625. SpecialMesh61.Parent = Part60
  626. SpecialMesh61.Scale = Vector3.new(1.25, 1.25, 1.25)
  627. SpecialMesh61.Scale = Vector3.new(1.25, 1.25, 1.25)
  628. Sound62.Name = "Jeff_Step"
  629. Sound62.Parent = Part60
  630. Sound62.SoundId = "rbxassetid://379611235"
  631. Sound62.Volume = 1
  632. Script63.Name = "qPerfectionWeld"
  633. Script63.Parent = Part60
  634. table.insert(cors,sandbox(Script63,function()
  635. -- Created by Quenty (@Quenty, follow me on twitter).
  636. -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
  637. -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
  638.  
  639. --[[ INSTRUCTIONS
  640. - Place in the model
  641. - Make sure model is anchored
  642. - That's it. It will weld the model and all children.
  643.  
  644. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  645. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  646. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  647. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  648. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  649. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  650. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  651. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  652.  
  653. This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
  654. ]]
  655.  
  656. --[[ DOCUMENTATION
  657. - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
  658. - Will work in PBS servers
  659. - Will work as long as it starts out with the part anchored
  660. - Stores the relative CFrame as a CFrame value
  661. - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
  662. - Utilizes a recursive algorith to find all parts in the model
  663. - Will reweld on script reparent if the script is initially parented to a tool.
  664. - Welds as fast as possible
  665. ]]
  666.  
  667. -- qPerfectionWeld.lua
  668. -- Created 10/6/2014
  669. -- Author: Quenty
  670. -- Version 1.0.3
  671.  
  672. -- Updated 10/14/2014 - Updated to 1.0.1
  673. --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
  674.  
  675. -- Updated 10/14/2014 - Updated to 1.0.2
  676. --- Fixed bug fix.
  677.  
  678. -- Updated 10/14/2014 - Updated to 1.0.3
  679. --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
  680.  
  681. local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
  682.  
  683.  
  684. local function CallOnChildren(Instance, FunctionToCall)
  685. -- Calls a function on each of the children of a certain object, using recursion.
  686.  
  687. FunctionToCall(Instance)
  688.  
  689. for _, Child in next, Instance:GetChildren() do
  690. CallOnChildren(Child, FunctionToCall)
  691. end
  692. end
  693.  
  694. local function GetNearestParent(Instance, ClassName)
  695. -- Returns the nearest parent of a certain class, or returns nil
  696.  
  697. local Ancestor = Instance
  698. repeat
  699. Ancestor = Ancestor.Parent
  700. if Ancestor == nil then
  701. return nil
  702. end
  703. until Ancestor:IsA(ClassName)
  704.  
  705. return Ancestor
  706. end
  707.  
  708. local function GetBricks(StartInstance)
  709. local List = {}
  710.  
  711. -- if StartInstance:IsA("BasePart") then
  712. -- List[#List+1] = StartInstance
  713. -- end
  714.  
  715. CallOnChildren(StartInstance, function(Item)
  716. if Item:IsA("BasePart") then
  717. List[#List+1] = Item;
  718. end
  719. end)
  720.  
  721. return List
  722. end
  723.  
  724. local function Modify(Instance, Values)
  725. -- Modifies an Instance by using a table.
  726.  
  727. assert(type(Values) == "table", "Values is not a table");
  728.  
  729. for Index, Value in next, Values do
  730. if type(Index) == "number" then
  731. Value.Parent = Instance
  732. else
  733. Instance[Index] = Value
  734. end
  735. end
  736. return Instance
  737. end
  738.  
  739. local function Make(ClassType, Properties)
  740. -- Using a syntax hack to create a nice way to Make new items.
  741.  
  742. return Modify(Instance.new(ClassType), Properties)
  743. end
  744.  
  745. local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
  746. local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
  747.  
  748. local function HasWheelJoint(Part)
  749. for _, SurfaceName in pairs(Surfaces) do
  750. for _, HingSurfaceName in pairs(HingSurfaces) do
  751. if Part[SurfaceName].Name == HingSurfaceName then
  752. return true
  753. end
  754. end
  755. end
  756.  
  757. return false
  758. end
  759.  
  760. local function ShouldBreakJoints(Part)
  761. --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
  762. -- definitely some edge cases.
  763.  
  764. if NEVER_BREAK_JOINTS then
  765. return false
  766. end
  767.  
  768. if HasWheelJoint(Part) then
  769. return false
  770. end
  771.  
  772. local Connected = Part:GetConnectedParts()
  773.  
  774. if #Connected == 1 then
  775. return false
  776. end
  777.  
  778. for _, Item in pairs(Connected) do
  779. if HasWheelJoint(Item) then
  780. return false
  781. elseif not Item:IsDescendantOf(script.Parent) then
  782. return false
  783. end
  784. end
  785.  
  786. return true
  787. end
  788.  
  789. local function WeldTogether(Part0, Part1, JointType, WeldParent)
  790. --- Weld's 2 parts together
  791. -- @param Part0 The first part
  792. -- @param Part1 The second part (Dependent part most of the time).
  793. -- @param [JointType] The type of joint. Defaults to weld.
  794. -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
  795. -- @return The weld created.
  796.  
  797. JointType = JointType or "Weld"
  798. local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
  799.  
  800. local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
  801. Modify(NewWeld, {
  802. Name = "qCFrameWeldThingy";
  803. Part0 = Part0;
  804. Part1 = Part1;
  805. C0 = CFrame.new();--Part0.CFrame:inverse();
  806. C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
  807. Parent = Part1;
  808. })
  809.  
  810. if not RelativeValue then
  811. RelativeValue = Make("CFrameValue", {
  812. Parent = Part1;
  813. Name = "qRelativeCFrameWeldValue";
  814. Archivable = true;
  815. Value = NewWeld.C1;
  816. })
  817. end
  818.  
  819. return NewWeld
  820. end
  821.  
  822. local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
  823. -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
  824. -- @param MainPart The part to weld the model to (can be in the model).
  825. -- @param [JointType] The type of joint. Defaults to weld.
  826. -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
  827.  
  828. for _, Part in pairs(Parts) do
  829. if ShouldBreakJoints(Part) then
  830. Part:BreakJoints()
  831. end
  832. end
  833.  
  834. for _, Part in pairs(Parts) do
  835. if Part ~= MainPart then
  836. WeldTogether(MainPart, Part, JointType, MainPart)
  837. end
  838. end
  839.  
  840. if not DoNotUnanchor then
  841. for _, Part in pairs(Parts) do
  842. Part.Anchored = false
  843. end
  844. MainPart.Anchored = false
  845. end
  846. end
  847.  
  848. local function PerfectionWeld()
  849. local Tool = GetNearestParent(script, "Tool")
  850.  
  851. local Parts = GetBricks(script.Parent)
  852. local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
  853.  
  854. if PrimaryPart then
  855. WeldParts(Parts, PrimaryPart, "Weld", false)
  856. else
  857. warn("qWeld - Unable to weld part")
  858. end
  859.  
  860. return Tool
  861. end
  862.  
  863. local Tool = PerfectionWeld()
  864.  
  865.  
  866. if Tool and script.ClassName == "Script" then
  867. --- Don't bother with local scripts
  868.  
  869. script.Parent.AncestryChanged:connect(function()
  870. PerfectionWeld()
  871. end)
  872. end
  873.  
  874. -- Created by Quenty (@Quenty, follow me on twitter).
  875.  
  876. end))
  877. PointLight64.Parent = mas
  878. Sound65.Name = "Jeff_Susto2"
  879. Sound65.Parent = Part60
  880. Sound65.SoundId = "rbxassetid://703451104"
  881. Sound65.Volume = 10
  882. Sound66.Name = "Jeff_Laugh"
  883. Sound66.Parent = Part60
  884. Sound66.SoundId = "rbxassetid://468911141"
  885. Part67.Name = "Torso"
  886. Part67.Parent = Model59
  887. Part67.Material = Enum.Material.SmoothPlastic
  888. Part67.BrickColor = BrickColor.new("Bright yellow")
  889. Part67.Transparency = 1
  890. Part67.Rotation = Vector3.new(0, -0.610000014, 0)
  891. Part67.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  892. Part67.CanCollide = false
  893. Part67.Elasticity = 0
  894. Part67.FormFactor = Enum.FormFactor.Symmetric
  895. Part67.Friction = 2
  896. Part67.Size = Vector3.new(2, 2, 1)
  897. Part67.CFrame = CFrame.new(29.7973957, 3.89992809, -53.8518448, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  898. Part67.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  899. Part67.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  900. Part67.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  901. Part67.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  902. Part67.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  903. Part67.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  904. Part67.Color = Color3.new(0.960784, 0.803922, 0.188235)
  905. Part67.Position = Vector3.new(29.7973957, 3.89992809, -53.8518448)
  906. Part67.Orientation = Vector3.new(0, -0.610000014, 0)
  907. Part67.Color = Color3.new(0.960784, 0.803922, 0.188235)
  908. Decal68.Name = "roblox"
  909. Decal68.Parent = Part67
  910. Motor6D69.Name = "Right Shoulder"
  911. Motor6D69.Parent = Part67
  912. Motor6D69.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  913. Motor6D69.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  914. Motor6D69.Part0 = Part67
  915. Motor6D69.Part1 = Part79
  916. Motor6D69.MaxVelocity = 0.10000000149012
  917. Motor6D70.Name = "Left Shoulder"
  918. Motor6D70.Parent = Part67
  919. Motor6D70.C0 = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  920. Motor6D70.C1 = CFrame.new(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  921. Motor6D70.Part0 = Part67
  922. Motor6D70.Part1 = Part78
  923. Motor6D70.MaxVelocity = 0.10000000149012
  924. Motor6D71.Name = "Right Hip"
  925. Motor6D71.Parent = Part67
  926. Motor6D71.C0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  927. Motor6D71.C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  928. Motor6D71.Part0 = Part67
  929. Motor6D71.Part1 = Part82
  930. Motor6D71.MaxVelocity = 0.10000000149012
  931. Motor6D72.Name = "Left Hip"
  932. Motor6D72.Parent = Part67
  933. Motor6D72.C0 = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  934. Motor6D72.C1 = CFrame.new(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  935. Motor6D72.Part0 = Part67
  936. Motor6D72.Part1 = Part81
  937. Motor6D72.MaxVelocity = 0.10000000149012
  938. Motor6D73.Name = "Neck"
  939. Motor6D73.Parent = Part67
  940. Motor6D73.C0 = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  941. Motor6D73.C1 = CFrame.new(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  942. Motor6D73.Part0 = Part67
  943. Motor6D73.Part1 = Part60
  944. Motor6D73.MaxVelocity = 0.10000000149012
  945. Script74.Name = "qPerfectionWeld"
  946. Script74.Parent = Part67
  947. table.insert(cors,sandbox(Script74,function()
  948. -- Created by Quenty (@Quenty, follow me on twitter).
  949. -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
  950. -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
  951.  
  952. --[[ INSTRUCTIONS
  953. - Place in the model
  954. - Make sure model is anchored
  955. - That's it. It will weld the model and all children.
  956.  
  957. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  958. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  959. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  960. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  961. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  962. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  963. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  964. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  965.  
  966. This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
  967. ]]
  968.  
  969. --[[ DOCUMENTATION
  970. - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
  971. - Will work in PBS servers
  972. - Will work as long as it starts out with the part anchored
  973. - Stores the relative CFrame as a CFrame value
  974. - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
  975. - Utilizes a recursive algorith to find all parts in the model
  976. - Will reweld on script reparent if the script is initially parented to a tool.
  977. - Welds as fast as possible
  978. ]]
  979.  
  980. -- qPerfectionWeld.lua
  981. -- Created 10/6/2014
  982. -- Author: Quenty
  983. -- Version 1.0.3
  984.  
  985. -- Updated 10/14/2014 - Updated to 1.0.1
  986. --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
  987.  
  988. -- Updated 10/14/2014 - Updated to 1.0.2
  989. --- Fixed bug fix.
  990.  
  991. -- Updated 10/14/2014 - Updated to 1.0.3
  992. --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
  993.  
  994. local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
  995.  
  996.  
  997. local function CallOnChildren(Instance, FunctionToCall)
  998. -- Calls a function on each of the children of a certain object, using recursion.
  999.  
  1000. FunctionToCall(Instance)
  1001.  
  1002. for _, Child in next, Instance:GetChildren() do
  1003. CallOnChildren(Child, FunctionToCall)
  1004. end
  1005. end
  1006.  
  1007. local function GetNearestParent(Instance, ClassName)
  1008. -- Returns the nearest parent of a certain class, or returns nil
  1009.  
  1010. local Ancestor = Instance
  1011. repeat
  1012. Ancestor = Ancestor.Parent
  1013. if Ancestor == nil then
  1014. return nil
  1015. end
  1016. until Ancestor:IsA(ClassName)
  1017.  
  1018. return Ancestor
  1019. end
  1020.  
  1021. local function GetBricks(StartInstance)
  1022. local List = {}
  1023.  
  1024. -- if StartInstance:IsA("BasePart") then
  1025. -- List[#List+1] = StartInstance
  1026. -- end
  1027.  
  1028. CallOnChildren(StartInstance, function(Item)
  1029. if Item:IsA("BasePart") then
  1030. List[#List+1] = Item;
  1031. end
  1032. end)
  1033.  
  1034. return List
  1035. end
  1036.  
  1037. local function Modify(Instance, Values)
  1038. -- Modifies an Instance by using a table.
  1039.  
  1040. assert(type(Values) == "table", "Values is not a table");
  1041.  
  1042. for Index, Value in next, Values do
  1043. if type(Index) == "number" then
  1044. Value.Parent = Instance
  1045. else
  1046. Instance[Index] = Value
  1047. end
  1048. end
  1049. return Instance
  1050. end
  1051.  
  1052. local function Make(ClassType, Properties)
  1053. -- Using a syntax hack to create a nice way to Make new items.
  1054.  
  1055. return Modify(Instance.new(ClassType), Properties)
  1056. end
  1057.  
  1058. local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
  1059. local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
  1060.  
  1061. local function HasWheelJoint(Part)
  1062. for _, SurfaceName in pairs(Surfaces) do
  1063. for _, HingSurfaceName in pairs(HingSurfaces) do
  1064. if Part[SurfaceName].Name == HingSurfaceName then
  1065. return true
  1066. end
  1067. end
  1068. end
  1069.  
  1070. return false
  1071. end
  1072.  
  1073. local function ShouldBreakJoints(Part)
  1074. --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
  1075. -- definitely some edge cases.
  1076.  
  1077. if NEVER_BREAK_JOINTS then
  1078. return false
  1079. end
  1080.  
  1081. if HasWheelJoint(Part) then
  1082. return false
  1083. end
  1084.  
  1085. local Connected = Part:GetConnectedParts()
  1086.  
  1087. if #Connected == 1 then
  1088. return false
  1089. end
  1090.  
  1091. for _, Item in pairs(Connected) do
  1092. if HasWheelJoint(Item) then
  1093. return false
  1094. elseif not Item:IsDescendantOf(script.Parent) then
  1095. return false
  1096. end
  1097. end
  1098.  
  1099. return true
  1100. end
  1101.  
  1102. local function WeldTogether(Part0, Part1, JointType, WeldParent)
  1103. --- Weld's 2 parts together
  1104. -- @param Part0 The first part
  1105. -- @param Part1 The second part (Dependent part most of the time).
  1106. -- @param [JointType] The type of joint. Defaults to weld.
  1107. -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
  1108. -- @return The weld created.
  1109.  
  1110. JointType = JointType or "Weld"
  1111. local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
  1112.  
  1113. local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
  1114. Modify(NewWeld, {
  1115. Name = "qCFrameWeldThingy";
  1116. Part0 = Part0;
  1117. Part1 = Part1;
  1118. C0 = CFrame.new();--Part0.CFrame:inverse();
  1119. C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
  1120. Parent = Part1;
  1121. })
  1122.  
  1123. if not RelativeValue then
  1124. RelativeValue = Make("CFrameValue", {
  1125. Parent = Part1;
  1126. Name = "qRelativeCFrameWeldValue";
  1127. Archivable = true;
  1128. Value = NewWeld.C1;
  1129. })
  1130. end
  1131.  
  1132. return NewWeld
  1133. end
  1134.  
  1135. local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
  1136. -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
  1137. -- @param MainPart The part to weld the model to (can be in the model).
  1138. -- @param [JointType] The type of joint. Defaults to weld.
  1139. -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
  1140.  
  1141. for _, Part in pairs(Parts) do
  1142. if ShouldBreakJoints(Part) then
  1143. Part:BreakJoints()
  1144. end
  1145. end
  1146.  
  1147. for _, Part in pairs(Parts) do
  1148. if Part ~= MainPart then
  1149. WeldTogether(MainPart, Part, JointType, MainPart)
  1150. end
  1151. end
  1152.  
  1153. if not DoNotUnanchor then
  1154. for _, Part in pairs(Parts) do
  1155. Part.Anchored = false
  1156. end
  1157. MainPart.Anchored = false
  1158. end
  1159. end
  1160.  
  1161. local function PerfectionWeld()
  1162. local Tool = GetNearestParent(script, "Tool")
  1163.  
  1164. local Parts = GetBricks(script.Parent)
  1165. local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
  1166.  
  1167. if PrimaryPart then
  1168. WeldParts(Parts, PrimaryPart, "Weld", false)
  1169. else
  1170. warn("qWeld - Unable to weld part")
  1171. end
  1172.  
  1173. return Tool
  1174. end
  1175.  
  1176. local Tool = PerfectionWeld()
  1177.  
  1178.  
  1179. if Tool and script.ClassName == "Script" then
  1180. --- Don't bother with local scripts
  1181.  
  1182. script.Parent.AncestryChanged:connect(function()
  1183. PerfectionWeld()
  1184. end)
  1185. end
  1186.  
  1187. -- Created by Quenty (@Quenty, follow me on twitter).
  1188.  
  1189. end))
  1190. Part75.Parent = Part67
  1191. Part75.Material = Enum.Material.SmoothPlastic
  1192. Part75.BrickColor = BrickColor.new("Cool yellow")
  1193. Part75.Anchored = true
  1194. Part75.Size = Vector3.new(0.819999576, 1.62999952, 0.880000174)
  1195. Part75.CFrame = CFrame.new(28.4873962, 3.78946233, -54.7761269, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  1196. Part75.BottomSurface = Enum.SurfaceType.Smooth
  1197. Part75.TopSurface = Enum.SurfaceType.Smooth
  1198. Part75.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1199. Part75.Position = Vector3.new(28.4873962, 3.78946233, -54.7761269)
  1200. Part75.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1201. Part76.Parent = Part67
  1202. Part76.Material = Enum.Material.SmoothPlastic
  1203. Part76.BrickColor = BrickColor.new("Bright yellow")
  1204. Part76.Rotation = Vector3.new(-30.9099998, 0, 0)
  1205. Part76.Anchored = true
  1206. Part76.Size = Vector3.new(1.88999903, 1.86999917, 0.880000174)
  1207. Part76.CFrame = CFrame.new(29.8250484, 3.71242833, -54.3488007, 1, 0, 0, 0, 0.857937694, 0.513753831, 0, -0.513753831, 0.857937694)
  1208. Part76.BottomSurface = Enum.SurfaceType.Smooth
  1209. Part76.TopSurface = Enum.SurfaceType.Smooth
  1210. Part76.Color = Color3.new(0.960784, 0.803922, 0.188235)
  1211. Part76.Position = Vector3.new(29.8250484, 3.71242833, -54.3488007)
  1212. Part76.Orientation = Vector3.new(-30.9099998, 0, 0)
  1213. Part76.Color = Color3.new(0.960784, 0.803922, 0.188235)
  1214. Part77.Parent = Part67
  1215. Part77.Material = Enum.Material.SmoothPlastic
  1216. Part77.BrickColor = BrickColor.new("Cool yellow")
  1217. Part77.Anchored = true
  1218. Part77.Size = Vector3.new(0.819999576, 1.62999952, 0.880000174)
  1219. Part77.CFrame = CFrame.new(31.1939869, 3.77529454, -54.7761269, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  1220. Part77.BottomSurface = Enum.SurfaceType.Smooth
  1221. Part77.TopSurface = Enum.SurfaceType.Smooth
  1222. Part77.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1223. Part77.Position = Vector3.new(31.1939869, 3.77529454, -54.7761269)
  1224. Part77.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1225. Part78.Name = "Left Arm"
  1226. Part78.Parent = Model59
  1227. Part78.Material = Enum.Material.SmoothPlastic
  1228. Part78.BrickColor = BrickColor.new("Cool yellow")
  1229. Part78.Transparency = 1
  1230. Part78.Rotation = Vector3.new(0, -0.610000014, 0)
  1231. Part78.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  1232. Part78.CanCollide = false
  1233. Part78.Elasticity = 0
  1234. Part78.FormFactor = Enum.FormFactor.Symmetric
  1235. Part78.Friction = 2
  1236. Part78.Size = Vector3.new(1, 2, 1)
  1237. Part78.CFrame = CFrame.new(28.2974815, 3.89995193, -53.8678818, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  1238. Part78.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  1239. Part78.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  1240. Part78.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  1241. Part78.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  1242. Part78.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  1243. Part78.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  1244. Part78.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1245. Part78.Position = Vector3.new(28.2974815, 3.89995193, -53.8678818)
  1246. Part78.Orientation = Vector3.new(0, -0.610000014, 0)
  1247. Part78.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1248. Part79.Name = "Right Arm"
  1249. Part79.Parent = Model59
  1250. Part79.Material = Enum.Material.SmoothPlastic
  1251. Part79.BrickColor = BrickColor.new("Cool yellow")
  1252. Part79.Transparency = 1
  1253. Part79.Rotation = Vector3.new(0, -0.610000014, 0)
  1254. Part79.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  1255. Part79.CanCollide = false
  1256. Part79.Elasticity = 0
  1257. Part79.FormFactor = Enum.FormFactor.Symmetric
  1258. Part79.Friction = 2
  1259. Part79.Size = Vector3.new(1, 2, 1)
  1260. Part79.CFrame = CFrame.new(31.2973099, 3.89990425, -53.8358078, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  1261. Part79.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  1262. Part79.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  1263. Part79.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  1264. Part79.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  1265. Part79.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  1266. Part79.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  1267. Part79.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1268. Part79.Position = Vector3.new(31.2973099, 3.89990425, -53.8358078)
  1269. Part79.Orientation = Vector3.new(0, -0.610000014, 0)
  1270. Part79.Color = Color3.new(0.992157, 0.917647, 0.552941)
  1271. Weld80.Name = "RightGripWeld"
  1272. Weld80.Parent = Part79
  1273. Weld80.C0 = CFrame.new(-1.29999995, 1.16840947, 0.750634551, 1, 0, 0, 0, 0.968409479, 0.249365434, 0, -0.249365434, 0.968409479)
  1274. Weld80.C1 = CFrame.new(-1.5, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  1275. Weld80.Part0 = Part111
  1276. Weld80.Part1 = Part79
  1277. Part81.Name = "Left Leg"
  1278. Part81.Parent = Model59
  1279. Part81.Material = Enum.Material.SmoothPlastic
  1280. Part81.BrickColor = BrickColor.new("Medium blue")
  1281. Part81.Rotation = Vector3.new(0, -0.610000014, 0)
  1282. Part81.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  1283. Part81.CanCollide = false
  1284. Part81.Elasticity = 0
  1285. Part81.FormFactor = Enum.FormFactor.Symmetric
  1286. Part81.Friction = 2
  1287. Part81.Size = Vector3.new(1, 2, 1)
  1288. Part81.CFrame = CFrame.new(29.2973919, 1.89993596, -53.85709, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  1289. Part81.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  1290. Part81.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  1291. Part81.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  1292. Part81.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  1293. Part81.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  1294. Part81.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  1295. Part81.Color = Color3.new(0.431373, 0.6, 0.792157)
  1296. Part81.Position = Vector3.new(29.2973919, 1.89993596, -53.85709)
  1297. Part81.Orientation = Vector3.new(0, -0.610000014, 0)
  1298. Part81.Color = Color3.new(0.431373, 0.6, 0.792157)
  1299. Part82.Name = "Right Leg"
  1300. Part82.Parent = Model59
  1301. Part82.Material = Enum.Material.SmoothPlastic
  1302. Part82.BrickColor = BrickColor.new("Medium blue")
  1303. Part82.Rotation = Vector3.new(0, -0.610000014, 0)
  1304. Part82.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  1305. Part82.CanCollide = false
  1306. Part82.Elasticity = 0
  1307. Part82.FormFactor = Enum.FormFactor.Symmetric
  1308. Part82.Friction = 2
  1309. Part82.Size = Vector3.new(1, 2, 1)
  1310. Part82.CFrame = CFrame.new(30.2973347, 1.89992023, -53.8463974, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  1311. Part82.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  1312. Part82.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  1313. Part82.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  1314. Part82.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  1315. Part82.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  1316. Part82.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  1317. Part82.Color = Color3.new(0.431373, 0.6, 0.792157)
  1318. Part82.Position = Vector3.new(30.2973347, 1.89992023, -53.8463974)
  1319. Part82.Orientation = Vector3.new(0, -0.610000014, 0)
  1320. Part82.Color = Color3.new(0.431373, 0.6, 0.792157)
  1321. Humanoid83.Name = "ColdBloodedKiller"
  1322. Humanoid83.Parent = Model59
  1323. Humanoid83.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
  1324. Humanoid83.HealthDisplayDistance = 0
  1325. Humanoid83.NameDisplayDistance = 0
  1326. Humanoid83.NameOcclusion = Enum.NameOcclusion.EnemyOcclusion
  1327. Humanoid83.RightLeg = Part82
  1328. Humanoid83.LeftLeg = Part81
  1329. Humanoid83.Torso = Part86
  1330. Humanoid83.Health = 500
  1331. Humanoid83.MaxHealth = 500
  1332. Model84.Name = "Status"
  1333. Model84.Parent = Humanoid83
  1334. Model85.Name = "AvalibleSpawns"
  1335. Model85.Parent = Model84
  1336. Part86.Name = "HumanoidRootPart"
  1337. Part86.Parent = Model59
  1338. Part86.Material = Enum.Material.SmoothPlastic
  1339. Part86.BrickColor = BrickColor.new("Bright blue")
  1340. Part86.Transparency = 1
  1341. Part86.Rotation = Vector3.new(0, -0.610000014, 0)
  1342. Part86.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  1343. Part86.CanCollide = false
  1344. Part86.Elasticity = 0
  1345. Part86.FormFactor = Enum.FormFactor.Symmetric
  1346. Part86.Friction = 0
  1347. Part86.Size = Vector3.new(2, 2, 1)
  1348. Part86.CFrame = CFrame.new(29.7973957, 3.89992809, -53.8518448, 0.999942839, 1.63869572e-05, -0.0106916232, -1.58438106e-05, 1, 5.08857556e-05, 0.0106916241, -5.071345e-05, 0.999942839)
  1349. Part86.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  1350. Part86.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  1351. Part86.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  1352. Part86.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  1353. Part86.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  1354. Part86.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  1355. Part86.Color = Color3.new(0.0509804, 0.411765, 0.67451)
  1356. Part86.Position = Vector3.new(29.7973957, 3.89992809, -53.8518448)
  1357. Part86.Orientation = Vector3.new(0, -0.610000014, 0)
  1358. Part86.Color = Color3.new(0.0509804, 0.411765, 0.67451)
  1359. Motor6D87.Name = "RootJoint"
  1360. Motor6D87.Parent = Part86
  1361. Motor6D87.C0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  1362. Motor6D87.C1 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  1363. Motor6D87.Part0 = Part86
  1364. Motor6D87.Part1 = Part67
  1365. Motor6D87.MaxVelocity = 0.10000000149012
  1366. Script88.Name = "Health"
  1367. Script88.Parent = Model59
  1368. table.insert(cors,sandbox(Script88,function()
  1369. --Responsible for regening a player's humanoid's health
  1370.  
  1371. -- declarations
  1372. local Figure = script.Parent
  1373. local Head = Figure:WaitForChild("Head")
  1374. local Humanoid;
  1375. for _,Child in pairs(Figure:GetChildren())do
  1376. if Child and Child.ClassName=="Humanoid"then
  1377. Humanoid=Child;
  1378. end;
  1379. end;
  1380. local regening = false
  1381.  
  1382. -- regeneration
  1383. function regenHealth()
  1384. if regening then return end
  1385. regening = true
  1386.  
  1387. while Humanoid.Health < Humanoid.MaxHealth do
  1388. local s = wait(1)
  1389. local health = Humanoid.Health
  1390. if health~=0 and health < Humanoid.MaxHealth then
  1391. local newHealthDelta = 0.01 * s * Humanoid.MaxHealth
  1392. health = health + newHealthDelta
  1393. Humanoid.Health = math.min(health,Humanoid.MaxHealth)
  1394. end
  1395. end
  1396.  
  1397. if Humanoid.Health > Humanoid.MaxHealth then
  1398. Humanoid.Health = Humanoid.MaxHealth
  1399. end
  1400.  
  1401. regening = false
  1402. end
  1403.  
  1404. Humanoid.HealthChanged:connect(regenHealth)
  1405.  
  1406. end))
  1407. Script89.Name = "AnimateSauce"
  1408. Script89.Parent = Model59
  1409. table.insert(cors,sandbox(Script89,function()
  1410. function waitForChild(parent, childName)
  1411. local child = parent:findFirstChild(childName)
  1412. if child then return child end
  1413. while true do
  1414. child = parent.ChildAdded:wait()
  1415. if child.Name==childName then return child end
  1416. end
  1417. end
  1418. local Figure = script.Parent
  1419. local Torso = waitForChild(Figure, "Torso")
  1420. local RightShoulder = waitForChild(Torso, "Right Shoulder")
  1421. local LeftShoulder = waitForChild(Torso, "Left Shoulder")
  1422. local RightHip = waitForChild(Torso, "Right Hip")
  1423. local LeftHip = waitForChild(Torso, "Left Hip")
  1424. local Neck = waitForChild(Torso, "Neck")
  1425. local Humanoid;
  1426. for _,Child in pairs(Figure:GetChildren())do
  1427. if Child and Child.ClassName=="Humanoid"then
  1428. Humanoid=Child;
  1429. end;
  1430. end;
  1431. local pose = "Standing"
  1432. local currentAnim = ""
  1433. local currentAnimInstance = nil
  1434. local currentAnimTrack = nil
  1435. local currentAnimKeyframeHandler = nil
  1436. local currentAnimSpeed = 1.0
  1437. local animTable = {}
  1438. local animNames = {
  1439. idle = {
  1440. { id = "http://www.roblox.com/asset/?id=180435571", weight = 9 },
  1441. { id = "http://www.roblox.com/asset/?id=180435792", weight = 1 }
  1442. },
  1443. walk = {
  1444. { id = "http://www.roblox.com/asset/?id=180426354", weight = 10 }
  1445. },
  1446. run = {
  1447. { id = "http://www.roblox.com/asset/?id=252557606", weight = 20 }
  1448. },
  1449. jump = {
  1450. { id = "http://www.roblox.com/asset/?id=125750702", weight = 10 }
  1451. },
  1452. fall = {
  1453. { id = "http://www.roblox.com/asset/?id=180436148", weight = 10 }
  1454. },
  1455. climb = {
  1456. { id = "http://www.roblox.com/asset/?id=180436334", weight = 10 }
  1457. },
  1458. sit = {
  1459. { id = "http://www.roblox.com/asset/?id=178130996", weight = 10 }
  1460. },
  1461. toolnone = {
  1462. { id = "http://www.roblox.com/asset/?id=182393478", weight = 10 }
  1463. },
  1464. toolslash = {
  1465. { id = "http://www.roblox.com/asset/?id=129967390", weight = 10 }
  1466. --{ id = "slash.xml", weight = 10 }
  1467. },
  1468. toollunge = {
  1469. { id = "http://www.roblox.com/asset/?id=129967478", weight = 10 }
  1470. },
  1471. wave = {
  1472. { id = "http://www.roblox.com/asset/?id=128777973", weight = 10 }
  1473. },
  1474. point = {
  1475. { id = "http://www.roblox.com/asset/?id=128853357", weight = 10 }
  1476. },
  1477. dance1 = {
  1478. { id = "http://www.roblox.com/asset/?id=182435998", weight = 10 },
  1479. { id = "http://www.roblox.com/asset/?id=182491037", weight = 10 },
  1480. { id = "http://www.roblox.com/asset/?id=182491065", weight = 10 }
  1481. },
  1482. dance2 = {
  1483. { id = "http://www.roblox.com/asset/?id=182436842", weight = 10 },
  1484. { id = "http://www.roblox.com/asset/?id=182491248", weight = 10 },
  1485. { id = "http://www.roblox.com/asset/?id=182491277", weight = 10 }
  1486. },
  1487. dance3 = {
  1488. { id = "http://www.roblox.com/asset/?id=182436935", weight = 10 },
  1489. { id = "http://www.roblox.com/asset/?id=182491368", weight = 10 },
  1490. { id = "http://www.roblox.com/asset/?id=182491423", weight = 10 }
  1491. },
  1492. laugh = {
  1493. { id = "http://www.roblox.com/asset/?id=129423131", weight = 10 }
  1494. },
  1495. cheer = {
  1496. { id = "http://www.roblox.com/asset/?id=129423030", weight = 10 }
  1497. },
  1498. }
  1499. local dances = {"dance1", "dance2", "dance3"}
  1500.  
  1501. -- Existance in this list signifies that it is an emote, the value indicates if it is a looping emote
  1502. local emoteNames = { wave = false, point = false, dance1 = true, dance2 = true, dance3 = true, laugh = false, cheer = false}
  1503.  
  1504. function configureAnimationSet(name, fileList)
  1505. if (animTable[name] ~= nil) then
  1506. for _, connection in pairs(animTable[name].connections) do
  1507. connection:disconnect()
  1508. end
  1509. end
  1510. animTable[name] = {}
  1511. animTable[name].count = 0
  1512. animTable[name].totalWeight = 0
  1513. animTable[name].connections = {}
  1514.  
  1515. -- check for config values
  1516. local config = script:FindFirstChild(name)
  1517. if (config ~= nil) then
  1518. --print("Loading anims " .. name)
  1519. table.insert(animTable[name].connections, config.ChildAdded:connect(function(child) configureAnimationSet(name, fileList) end))
  1520. table.insert(animTable[name].connections, config.ChildRemoved:connect(function(child) configureAnimationSet(name, fileList) end))
  1521. local idx = 1
  1522. for _, childPart in pairs(config:GetChildren()) do
  1523. if (childPart:IsA("Animation")) then
  1524. table.insert(animTable[name].connections, childPart.Changed:connect(function(property) configureAnimationSet(name, fileList) end))
  1525. animTable[name][idx] = {}
  1526. animTable[name][idx].anim = childPart
  1527. local weightObject = childPart:FindFirstChild("Weight")
  1528. if (weightObject == nil) then
  1529. animTable[name][idx].weight = 1
  1530. else
  1531. animTable[name][idx].weight = weightObject.Value
  1532. end
  1533. animTable[name].count = animTable[name].count + 1
  1534. animTable[name].totalWeight = animTable[name].totalWeight + animTable[name][idx].weight
  1535. --print(name .. " [" .. idx .. "] " .. animTable[name][idx].anim.AnimationId .. " (" .. animTable[name][idx].weight .. ")")
  1536. idx = idx + 1
  1537. end
  1538. end
  1539. end
  1540.  
  1541. -- fallback to defaults
  1542. if (animTable[name].count <= 0) then
  1543. for idx, anim in pairs(fileList) do
  1544. animTable[name][idx] = {}
  1545. animTable[name][idx].anim = Instance.new("Animation")
  1546. animTable[name][idx].anim.Name = name
  1547. animTable[name][idx].anim.AnimationId = anim.id
  1548. animTable[name][idx].weight = anim.weight
  1549. animTable[name].count = animTable[name].count + 1
  1550. animTable[name].totalWeight = animTable[name].totalWeight + anim.weight
  1551. --print(name .. " [" .. idx .. "] " .. anim.id .. " (" .. anim.weight .. ")")
  1552. end
  1553. end
  1554. end
  1555.  
  1556. -- Setup animation objects
  1557. function scriptChildModified(child)
  1558. local fileList = animNames[child.Name]
  1559. if (fileList ~= nil) then
  1560. configureAnimationSet(child.Name, fileList)
  1561. end
  1562. end
  1563.  
  1564. script.ChildAdded:connect(scriptChildModified)
  1565. script.ChildRemoved:connect(scriptChildModified)
  1566.  
  1567.  
  1568. for name, fileList in pairs(animNames) do
  1569. configureAnimationSet(name, fileList)
  1570. end
  1571.  
  1572. -- ANIMATION
  1573.  
  1574. -- declarations
  1575. local toolAnim = "None"
  1576. local toolAnimTime = 0
  1577.  
  1578. local jumpAnimTime = 0
  1579. local jumpAnimDuration = 0.3
  1580.  
  1581. local toolTransitionTime = 0.1
  1582. local fallTransitionTime = 0.3
  1583. local jumpMaxLimbVelocity = 0.75
  1584.  
  1585. -- functions
  1586.  
  1587. function stopAllAnimations()
  1588. local oldAnim = currentAnim
  1589.  
  1590. -- return to idle if finishing an emote
  1591. if (emoteNames[oldAnim] ~= nil and emoteNames[oldAnim] == false) then
  1592. oldAnim = "idle"
  1593. end
  1594.  
  1595. currentAnim = ""
  1596. currentAnimInstance = nil
  1597. if (currentAnimKeyframeHandler ~= nil) then
  1598. currentAnimKeyframeHandler:disconnect()
  1599. end
  1600.  
  1601. if (currentAnimTrack ~= nil) then
  1602. currentAnimTrack:Stop()
  1603. currentAnimTrack:Destroy()
  1604. currentAnimTrack = nil
  1605. end
  1606. return oldAnim
  1607. end
  1608.  
  1609. function setAnimationSpeed(speed)
  1610. if speed ~= currentAnimSpeed then
  1611. currentAnimSpeed = speed
  1612. currentAnimTrack:AdjustSpeed(currentAnimSpeed)
  1613. end
  1614. end
  1615.  
  1616. function keyFrameReachedFunc(frameName)
  1617. if (frameName == "End") then
  1618.  
  1619. local repeatAnim = currentAnim
  1620. -- return to idle if finishing an emote
  1621. if (emoteNames[repeatAnim] ~= nil and emoteNames[repeatAnim] == false) then
  1622. repeatAnim = "idle"
  1623. end
  1624.  
  1625. local animSpeed = currentAnimSpeed
  1626. playAnimation(repeatAnim, 0.0, Humanoid)
  1627. setAnimationSpeed(animSpeed)
  1628. end
  1629. end
  1630.  
  1631. -- Preload animations
  1632. function playAnimation(animName, transitionTime, humanoid)
  1633.  
  1634. local roll = math.random(1, animTable[animName].totalWeight)
  1635. local origRoll = roll
  1636. local idx = 1
  1637. while (roll > animTable[animName][idx].weight) do
  1638. roll = roll - animTable[animName][idx].weight
  1639. idx = idx + 1
  1640. end
  1641. --print(animName .. " " .. idx .. " [" .. origRoll .. "]")
  1642. local anim = animTable[animName][idx].anim
  1643. -- switch animation
  1644. if (anim ~= currentAnimInstance) then
  1645. if (currentAnimTrack ~= nil) then
  1646. currentAnimTrack:Stop(transitionTime)
  1647. currentAnimTrack:Destroy()
  1648. end
  1649. currentAnimSpeed = 1.0
  1650. -- load it to the humanoid; get AnimationTrack
  1651. currentAnimTrack = humanoid:LoadAnimation(anim)
  1652. -- play the animation
  1653. currentAnimTrack:Play(transitionTime)
  1654. currentAnim = animName
  1655. currentAnimInstance = anim
  1656. -- set up keyframe name triggers
  1657. if (currentAnimKeyframeHandler ~= nil) then
  1658. currentAnimKeyframeHandler:disconnect()
  1659. end
  1660. currentAnimKeyframeHandler = currentAnimTrack.KeyframeReached:connect(keyFrameReachedFunc)
  1661. end
  1662. end
  1663. -------------------------------------------------------------------------------------------
  1664. -------------------------------------------------------------------------------------------
  1665. local toolAnimName = ""
  1666. local toolAnimTrack = nil
  1667. local toolAnimInstance = nil
  1668. local currentToolAnimKeyframeHandler = nil
  1669. function toolKeyFrameReachedFunc(frameName)
  1670. if (frameName == "End") then
  1671. --print("Keyframe : ".. frameName)
  1672. playToolAnimation(toolAnimName, 0.0, Humanoid)
  1673. end
  1674. end
  1675. function playToolAnimation(animName, transitionTime, humanoid)
  1676. local roll = math.random(1, animTable[animName].totalWeight)
  1677. local origRoll = roll
  1678. local idx = 1
  1679. while (roll > animTable[animName][idx].weight) do
  1680. roll = roll - animTable[animName][idx].weight
  1681. idx = idx + 1
  1682. end
  1683. --print(animName .. " * " .. idx .. " [" .. origRoll .. "]")
  1684. local anim = animTable[animName][idx].anim
  1685. if (toolAnimInstance ~= anim) then
  1686. if (toolAnimTrack ~= nil) then
  1687. toolAnimTrack:Stop()
  1688. toolAnimTrack:Destroy()
  1689. transitionTime = 0
  1690. end
  1691. -- load it to the humanoid; get AnimationTrack
  1692. toolAnimTrack = humanoid:LoadAnimation(anim)
  1693. -- play the animation
  1694. toolAnimTrack:Play(transitionTime)
  1695. toolAnimName = animName
  1696. toolAnimInstance = anim
  1697. currentToolAnimKeyframeHandler = toolAnimTrack.KeyframeReached:connect(toolKeyFrameReachedFunc)
  1698. end
  1699. end
  1700. function stopToolAnimations()
  1701. local oldAnim = toolAnimName
  1702. if (currentToolAnimKeyframeHandler ~= nil) then
  1703. currentToolAnimKeyframeHandler:disconnect()
  1704. end
  1705. toolAnimName = ""
  1706. toolAnimInstance = nil
  1707. if (toolAnimTrack ~= nil) then
  1708. toolAnimTrack:Stop()
  1709. toolAnimTrack:Destroy()
  1710. toolAnimTrack = nil
  1711. end
  1712. return oldAnim
  1713. end
  1714. -------------------------------------------------------------------------------------------
  1715. -------------------------------------------------------------------------------------------
  1716. function onRunning(speed)
  1717. if speed>0.01 then
  1718. if Figure and Humanoid and Humanoid.WalkSpeed<17 then
  1719. playAnimation("walk", 0.1, Humanoid);
  1720. elseif Figure and Humanoid and Humanoid.WalkSpeed>17 then
  1721. playAnimation("run", 0.1, Humanoid);
  1722. end;
  1723. if currentAnimInstance and currentAnimInstance.AnimationId == "http://www.roblox.com/asset/?id=180426354" then
  1724. setAnimationSpeed(speed / 14.5)
  1725. end
  1726. pose = "Running"
  1727. else
  1728. playAnimation("idle", 0.1, Humanoid)
  1729. pose = "Standing"
  1730. end
  1731. end
  1732. function onDied()
  1733. pose = "Dead"
  1734. end
  1735. function onJumping()
  1736. playAnimation("jump", 0.1, Humanoid)
  1737. jumpAnimTime = jumpAnimDuration
  1738. pose = "Jumping"
  1739. end
  1740. function onClimbing(speed)
  1741. playAnimation("climb", 0.1, Humanoid)
  1742. setAnimationSpeed(speed / 12.0)
  1743. pose = "Climbing"
  1744. end
  1745. function onGettingUp()
  1746. pose = "GettingUp"
  1747. end
  1748. function onFreeFall()
  1749. if (jumpAnimTime <= 0) then
  1750. playAnimation("fall", fallTransitionTime, Humanoid)
  1751. end
  1752. pose = "FreeFall"
  1753. end
  1754. function onFallingDown()
  1755. pose = "FallingDown"
  1756. end
  1757. function onSeated()
  1758. pose = "Seated"
  1759. end
  1760. function onPlatformStanding()
  1761. pose = "PlatformStanding"
  1762. end
  1763. function onSwimming(speed)
  1764. if speed>0 then
  1765. pose = "Running"
  1766. else
  1767. pose = "Standing"
  1768. end
  1769. end
  1770.  
  1771. function getTool()
  1772. for _, kid in ipairs(Figure:GetChildren()) do
  1773. if kid.className == "Tool" then return kid end
  1774. end
  1775. return nil
  1776. end
  1777.  
  1778. function getToolAnim(tool)
  1779. for _, c in ipairs(tool:GetChildren()) do
  1780. if c.Name == "toolanim" and c.className == "StringValue" then
  1781. return c
  1782. end
  1783. end
  1784. return nil
  1785. end
  1786.  
  1787. function animateTool()
  1788.  
  1789. if (toolAnim == "None") then
  1790. playToolAnimation("toolnone", toolTransitionTime, Humanoid)
  1791. return
  1792. end
  1793.  
  1794. if (toolAnim == "Slash") then
  1795. playToolAnimation("toolslash", 0, Humanoid)
  1796. return
  1797. end
  1798.  
  1799. if (toolAnim == "Lunge") then
  1800. playToolAnimation("toollunge", 0, Humanoid)
  1801. return
  1802. end
  1803. end
  1804.  
  1805. function moveSit()
  1806. RightShoulder.MaxVelocity = 0.15
  1807. LeftShoulder.MaxVelocity = 0.15
  1808. RightShoulder:SetDesiredAngle(3.14 /2)
  1809. LeftShoulder:SetDesiredAngle(-3.14 /2)
  1810. RightHip:SetDesiredAngle(3.14 /2)
  1811. LeftHip:SetDesiredAngle(-3.14 /2)
  1812. end
  1813.  
  1814. local lastTick = 0
  1815.  
  1816. function move(time)
  1817. local amplitude = 1
  1818. local frequency = 1
  1819. local deltaTime = time - lastTick
  1820. lastTick = time
  1821.  
  1822. local climbFudge = 0
  1823. local setAngles = false
  1824.  
  1825. if (jumpAnimTime > 0) then
  1826. jumpAnimTime = jumpAnimTime - deltaTime
  1827. end
  1828.  
  1829. if (pose == "FreeFall" and jumpAnimTime <= 0) then
  1830. playAnimation("fall", fallTransitionTime, Humanoid)
  1831. elseif (pose == "Seated") then
  1832. playAnimation("sit", 0.5, Humanoid)
  1833. return
  1834. elseif (pose == "Running") then
  1835. if Figure and Humanoid and Humanoid.WalkSpeed<17 then
  1836. playAnimation("walk", 0.1, Humanoid);
  1837. elseif Figure and Humanoid and Humanoid.WalkSpeed>17 then
  1838. playAnimation("run", 0.1, Humanoid);
  1839. end;
  1840. elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
  1841. stopAllAnimations()
  1842. amplitude = 0.1
  1843. frequency = 1
  1844. setAngles = true
  1845. end
  1846. if (setAngles) then
  1847. local desiredAngle = amplitude * math.sin(time * frequency)
  1848. RightShoulder:SetDesiredAngle(desiredAngle + climbFudge)
  1849. LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge)
  1850. RightHip:SetDesiredAngle(-desiredAngle)
  1851. LeftHip:SetDesiredAngle(-desiredAngle)
  1852. end
  1853. -- Tool Animation handling
  1854. local tool = getTool()
  1855. if tool and tool:FindFirstChild("Handle") then
  1856. local animStringValueObject = getToolAnim(tool)
  1857. if animStringValueObject then
  1858. toolAnim = animStringValueObject.Value
  1859. -- message recieved, delete StringValue
  1860. animStringValueObject.Parent = nil
  1861. toolAnimTime = time + .3
  1862. end
  1863. if time > toolAnimTime then
  1864. toolAnimTime = 0
  1865. toolAnim = "None"
  1866. end
  1867. animateTool()
  1868. else
  1869. stopToolAnimations()
  1870. toolAnim = "None"
  1871. toolAnimInstance = nil
  1872. toolAnimTime = 0
  1873. end
  1874. end
  1875. -- connect events
  1876. Humanoid.Died:connect(onDied)
  1877. Humanoid.Running:connect(onRunning)
  1878. Humanoid.Jumping:connect(onJumping)
  1879. Humanoid.Climbing:connect(onClimbing)
  1880. Humanoid.GettingUp:connect(onGettingUp)
  1881. Humanoid.FreeFalling:connect(onFreeFall)
  1882. Humanoid.FallingDown:connect(onFallingDown)
  1883. Humanoid.Seated:connect(onSeated)
  1884. Humanoid.PlatformStanding:connect(onPlatformStanding)
  1885. Humanoid.Swimming:connect(onSwimming)
  1886. local runService = game:GetService("RunService");
  1887. playAnimation("idle", 0.1, Humanoid)
  1888. pose = "Standing"
  1889. while Wait(0)do
  1890. local _,time=wait(0)
  1891. move(time)
  1892. end
  1893. end))
  1894. StringValue90.Name = "climb"
  1895. StringValue90.Parent = Script89
  1896. Animation91.Name = "ClimbAnim"
  1897. Animation91.Parent = StringValue90
  1898. Animation91.AnimationId = "http://www.roblox.com/asset/?id=180436334"
  1899. StringValue92.Name = "fall"
  1900. StringValue92.Parent = Script89
  1901. Animation93.Name = "FallAnim"
  1902. Animation93.Parent = StringValue92
  1903. Animation93.AnimationId = "http://www.roblox.com/asset/?id=180436148"
  1904. StringValue94.Name = "idle"
  1905. StringValue94.Parent = Script89
  1906. Animation95.Name = "Animation1"
  1907. Animation95.Parent = StringValue94
  1908. Animation95.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  1909. NumberValue96.Name = "Weight"
  1910. NumberValue96.Parent = Animation95
  1911. NumberValue96.Value = 9
  1912. Animation97.Name = "Animation2"
  1913. Animation97.Parent = StringValue94
  1914. Animation97.AnimationId = "http://www.roblox.com/asset/?id=180435792"
  1915. NumberValue98.Name = "Weight"
  1916. NumberValue98.Parent = Animation97
  1917. NumberValue98.Value = 1
  1918. StringValue99.Name = "jump"
  1919. StringValue99.Parent = Script89
  1920. Animation100.Name = "JumpAnim"
  1921. Animation100.Parent = StringValue99
  1922. Animation100.AnimationId = "http://www.roblox.com/asset/?id=125750702"
  1923. StringValue101.Name = "run"
  1924. StringValue101.Parent = Script89
  1925. Animation102.Name = "RunAnim"
  1926. Animation102.Parent = StringValue101
  1927. Animation102.AnimationId = "http://www.roblox.com/asset/?id=252557606"
  1928. StringValue103.Name = "sit"
  1929. StringValue103.Parent = Script89
  1930. Animation104.Name = "SitAnim"
  1931. Animation104.Parent = StringValue103
  1932. Animation104.AnimationId = "http://www.roblox.com/asset/?id=178130996"
  1933. StringValue105.Name = "toolnone"
  1934. StringValue105.Parent = Script89
  1935. Animation106.Name = "ToolNoneAnim"
  1936. Animation106.Parent = StringValue105
  1937. Animation106.AnimationId = "http://www.roblox.com/asset/?id=182393478"
  1938. StringValue107.Name = "walk"
  1939. StringValue107.Parent = Script89
  1940. Animation108.Name = "WalkAnim"
  1941. Animation108.Parent = StringValue107
  1942. Animation108.AnimationId = "http://www.roblox.com/asset/?id=180426354"
  1943. Animation109.Name = "Swing"
  1944. Animation109.Parent = Model59
  1945. Animation109.AnimationId = "rbxassetid://54584713"
  1946. Script110.Name = "JeffTheKillerMain"
  1947. Script110.Parent = Model59
  1948. table.insert(cors,sandbox(Script110,function()
  1949. --[[ By: Brutez. ]]--
  1950. local JeffTheKillerScript=script;
  1951. repeat Wait(0)until JeffTheKillerScript and JeffTheKillerScript.Parent and JeffTheKillerScript.Parent.ClassName=="Model"and JeffTheKillerScript.Parent:FindFirstChild("Head")and JeffTheKillerScript.Parent:FindFirstChild("Torso");
  1952. local JeffTheKiller=JeffTheKillerScript.Parent;
  1953. function raycast(Spos,vec,currentdist)
  1954. local hit2,pos2=game.Workspace:FindPartOnRay(Ray.new(Spos+(vec*.05),vec*currentdist),JeffTheKiller);
  1955. if hit2~=nil and pos2 then
  1956. if hit2.Name=="Handle" and not hit2.CanCollide or string.sub(hit2.Name,1,6)=="Effect"and not hit2.CanCollide then
  1957. local currentdist=currentdist-(pos2-Spos).magnitude;
  1958. return raycast(pos2,vec,currentdist);
  1959. end;
  1960. end;
  1961. return hit2,pos2;
  1962. end;
  1963. function RayCast(Position,Direction,MaxDistance,IgnoreList)
  1964. return Game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position,Direction.unit*(MaxDistance or 999.999)),IgnoreList);
  1965. end;
  1966. --[[if JeffTheKillerScript and JeffTheKiller and JeffTheKiller:FindFirstChild("Thumbnail")then]]--
  1967. --[[JeffTheKiller:FindFirstChild("Thumbnail"):Destroy();]]--
  1968. --[[end;]]--
  1969. local JeffTheKillerHumanoid;
  1970. for _,Child in pairs(JeffTheKiller:GetChildren())do
  1971. if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
  1972. JeffTheKillerHumanoid=Child;
  1973. end;
  1974. end;
  1975. local AttackDebounce=false;
  1976. local JeffTheKillerKnife=JeffTheKiller:FindFirstChild("Knife");
  1977. local JeffTheKillerHead=JeffTheKiller:FindFirstChild("Head");
  1978. local JeffTheKillerHumanoidRootPart=JeffTheKiller:FindFirstChild("HumanoidRootPart");
  1979. local WalkDebounce=false;
  1980. local Notice=false;
  1981. local JeffLaughDebounce=false;
  1982. local MusicDebounce=false;
  1983. local NoticeDebounce=false;
  1984. local ChosenMusic;
  1985. JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0=CFrame.new(0,1,0,-1,0,0,0,0,1,0,1,-0);
  1986. local OriginalC0=JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0;
  1987. function FindNearestBae()
  1988. local NoticeDistance=100;
  1989. local TargetMain;
  1990. for _,TargetModel in pairs(Game:GetService("Workspace"):GetChildren())do
  1991. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and TargetModel.className=="Model"and TargetModel~=JeffTheKiller and TargetModel.Name~=JeffTheKiller.Name and TargetModel:FindFirstChild("Torso")and TargetModel:FindFirstChild("Head")then
  1992. local TargetPart=TargetModel:FindFirstChild("Torso");
  1993. local FoundHumanoid;
  1994. for _,Child in pairs(TargetModel:GetChildren())do
  1995. if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
  1996. FoundHumanoid=Child;
  1997. end;
  1998. end;
  1999. if TargetModel and TargetPart and FoundHumanoid and FoundHumanoid.Health~=0 and(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<NoticeDistance then
  2000. TargetMain=TargetPart;
  2001. NoticeDistance=(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude;
  2002. local hit,pos=raycast(JeffTheKillerHumanoidRootPart.Position,(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).unit,500)
  2003. if hit and hit.Parent and hit.Parent.ClassName=="Model"and hit.Parent:FindFirstChild("Torso")and hit.Parent:FindFirstChild("Head")then
  2004. if TargetModel and TargetPart and FoundHumanoid and FoundHumanoid.Health~=0 and(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<9 and not AttackDebounce then
  2005. Spawn(function()
  2006. AttackDebounce=true;
  2007. local SwingAnimation=JeffTheKillerHumanoid:LoadAnimation(JeffTheKiller:FindFirstChild("Swing"));
  2008. local SwingChoice=math.random(1,2);
  2009. local HitChoice=math.random(1,3);
  2010. SwingAnimation:Play();
  2011. SwingAnimation:AdjustSpeed(3.5+(math.random()*0.1));
  2012. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerKnife and JeffTheKillerKnife:FindFirstChild("Swing")then
  2013. local SwingSound=JeffTheKillerKnife:FindFirstChild("Swing");
  2014. SwingSound.Pitch=1+(math.random()*0.04);
  2015. SwingSound:Play();
  2016. end;
  2017. Wait(0.3);
  2018. if TargetModel and TargetPart and FoundHumanoid and FoundHumanoid.Health~=0 and(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<8 then
  2019. FoundHumanoid:TakeDamage(90);
  2020. if HitChoice==1 and JeffTheKillerScript and JeffTheKiller and JeffTheKillerKnife and JeffTheKillerKnife:FindFirstChild("Hit1")then
  2021. local HitSound=JeffTheKillerKnife:FindFirstChild("Hit1");
  2022. HitSound.Pitch=1+(math.random()*0.04);
  2023. HitSound:Play();
  2024. elseif HitChoice==2 and JeffTheKillerScript and JeffTheKiller and JeffTheKillerKnife and JeffTheKillerKnife:FindFirstChild("Hit2")then
  2025. local HitSound=JeffTheKillerKnife:FindFirstChild("Hit2");
  2026. HitSound.Pitch=1+(math.random()*0.04);
  2027. HitSound:Play();
  2028. elseif HitChoice==3 and JeffTheKillerScript and JeffTheKiller and JeffTheKillerKnife and JeffTheKillerKnife:FindFirstChild("Hit3")then
  2029. local HitSound=JeffTheKillerKnife:FindFirstChild("Hit3");
  2030. HitSound.Pitch=1+(math.random()*0.04);
  2031. HitSound:Play();
  2032. end;
  2033. end;
  2034. Wait(0.1);
  2035. AttackDebounce=false;
  2036. end);
  2037. end;
  2038. end;
  2039. end;
  2040. end;
  2041. end;
  2042. return TargetMain;
  2043. end;
  2044. while Wait(0)do
  2045. local TargetPoint=JeffTheKillerHumanoid.TargetPoint;
  2046. local Blockage,BlockagePos=RayCast((JeffTheKillerHumanoidRootPart.CFrame+CFrame.new(JeffTheKillerHumanoidRootPart.Position,Vector3.new(TargetPoint.X,JeffTheKillerHumanoidRootPart.Position.Y,TargetPoint.Z)).lookVector*(JeffTheKillerHumanoidRootPart.Size.Z/2)).p,JeffTheKillerHumanoidRootPart.CFrame.lookVector,(JeffTheKillerHumanoidRootPart.Size.Z*2.5),{JeffTheKiller,JeffTheKiller})
  2047. local Jumpable=false;
  2048. if Blockage then
  2049. Jumpable=true;
  2050. if Blockage and Blockage.Parent and Blockage.Parent.ClassName~="Workspace"then
  2051. local BlockageHumanoid;
  2052. for _,Child in pairs(Blockage.Parent:GetChildren())do
  2053. if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
  2054. BlockageHumanoid=Child;
  2055. end;
  2056. end;
  2057. if Blockage and Blockage:IsA("Terrain")then
  2058. local CellPos=Blockage:WorldToCellPreferSolid((BlockagePos-Vector3.new(0,2,0)));
  2059. local CellMaterial,CellShape,CellOrientation=Blockage:GetCell(CellPos.X,CellPos.Y,CellPos.Z);
  2060. if CellMaterial==Enum.CellMaterial.Water then
  2061. Jumpable=false;
  2062. end;
  2063. elseif BlockageHumanoid or Blockage.ClassName=="TrussPart"or Blockage.ClassName=="WedgePart"or Blockage.Name=="Handle"and Blockage.Parent.ClassName=="Hat"or Blockage.Name=="Handle"and Blockage.Parent.ClassName=="Tool"then
  2064. Jumpable=false;
  2065. end;
  2066. end;
  2067. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and not JeffTheKillerHumanoid.Sit and Jumpable then
  2068. JeffTheKillerHumanoid.Jump=true;
  2069. end;
  2070. end;
  2071. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHumanoidRootPart and JeffTheKillerHead:FindFirstChild("Jeff_Step")and (JeffTheKillerHumanoidRootPart.Velocity-Vector3.new(0,JeffTheKillerHumanoidRootPart.Velocity.y,0)).magnitude>=5 and not WalkDebounce and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 then
  2072. Spawn(function()
  2073. WalkDebounce=true;
  2074. local FiredRay=Ray.new(JeffTheKillerHumanoidRootPart.Position,Vector3.new(0,-4,0));
  2075. local RayTarget,endPoint=Game:GetService("Workspace"):FindPartOnRay(FiredRay,JeffTheKiller);
  2076. if RayTarget then
  2077. local JeffTheKillerHeadFootStepClone=JeffTheKillerHead:FindFirstChild("Jeff_Step"):Clone();
  2078. JeffTheKillerHeadFootStepClone.Parent=JeffTheKillerHead;
  2079. JeffTheKillerHeadFootStepClone:Play();
  2080. JeffTheKillerHeadFootStepClone:Destroy();
  2081. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and JeffTheKillerHumanoid.WalkSpeed<17 then
  2082. Wait(0.4);
  2083. elseif JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and JeffTheKillerHumanoid.WalkSpeed>17 then
  2084. Wait(0.15);
  2085. end
  2086. end;
  2087. WalkDebounce=false;
  2088. end);
  2089. end;
  2090. local MainTarget=FindNearestBae();
  2091. local FoundHumanoid;
  2092. if MainTarget then
  2093. for _,Child in pairs(MainTarget.Parent:GetChildren())do
  2094. if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
  2095. FoundHumanoid=Child;
  2096. end;
  2097. end;
  2098. end;
  2099. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and MainTarget and MainTarget.Parent and FoundHumanoid and FoundHumanoid.Jump then
  2100. JeffTheKillerHumanoid.Jump=true;
  2101. end;
  2102. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<25 then
  2103. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHead:FindFirstChild("Jeff_Laugh")and not JeffTheKillerHead:FindFirstChild("Jeff_Laugh").IsPlaying then
  2104. JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume=1;
  2105. JeffTheKillerHead:FindFirstChild("Jeff_Laugh"):Play();
  2106. end;
  2107. elseif JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude>25 then
  2108. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHead:FindFirstChild("Jeff_Laugh")and JeffTheKillerHead:FindFirstChild("Jeff_Laugh").IsPlaying then
  2109. if not JeffLaughDebounce then
  2110. Spawn(function()
  2111. JeffLaughDebounce=true;
  2112. repeat Wait(0);if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHead:FindFirstChild("Jeff_Laugh")then JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume=JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume-0.1;else break;end;until JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume==0 or JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume<0;
  2113. JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume=0;
  2114. JeffTheKillerHead:FindFirstChild("Jeff_Laugh"):Stop();
  2115. JeffLaughDebounce=false;
  2116. end);
  2117. end;
  2118. end;
  2119. end;
  2120. if not ChosenMusic and JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<50 then
  2121. local MusicChoice=math.random(1,2);
  2122. if MusicChoice==1 and JeffTheKillerScript and JeffTheKiller and JeffTheKiller:FindFirstChild("Jeff_Scene_Sound1")then
  2123. ChosenMusic=JeffTheKiller:FindFirstChild("Jeff_Scene_Sound1");
  2124. elseif MusicChoice==2 and JeffTheKillerScript and JeffTheKiller and JeffTheKiller:FindFirstChild("Jeff_Scene_Sound2")then
  2125. ChosenMusic=JeffTheKiller:FindFirstChild("Jeff_Scene_Sound2");
  2126. end;
  2127. if JeffTheKillerScript and JeffTheKiller and ChosenMusic and not ChosenMusic.IsPlaying then
  2128. ChosenMusic.Volume=0.5;
  2129. ChosenMusic:Play();
  2130. end;
  2131. elseif JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude>50 then
  2132. if JeffTheKillerScript and JeffTheKiller and ChosenMusic and ChosenMusic.IsPlaying then
  2133. if not MusicDebounce then
  2134. Spawn(function()
  2135. MusicDebounce=true;
  2136. repeat Wait(0);if JeffTheKillerScript and JeffTheKiller and ChosenMusic then ChosenMusic.Volume=ChosenMusic.Volume-0.01;else break;end;until ChosenMusic.Volume==0 or ChosenMusic.Volume<0;
  2137. if ChosenMusic then
  2138. ChosenMusic.Volume=0;
  2139. ChosenMusic:Stop();
  2140. end;
  2141. ChosenMusic=nil;
  2142. MusicDebounce=false;
  2143. end);
  2144. end;
  2145. end;
  2146. end;
  2147. if not MainTarget and not JeffLaughDebounce then
  2148. Spawn(function()
  2149. JeffLaughDebounce=true;
  2150. repeat Wait(0);if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHead:FindFirstChild("Jeff_Laugh")then JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume=JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume-0.1;else break;end;until JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume==0 or JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume<0;
  2151. JeffTheKillerHead:FindFirstChild("Jeff_Laugh").Volume=0;
  2152. JeffTheKillerHead:FindFirstChild("Jeff_Laugh"):Stop();
  2153. JeffLaughDebounce=false;
  2154. end);
  2155. end;
  2156. if not MainTarget and not MusicDebounce then
  2157. Spawn(function()
  2158. MusicDebounce=true;
  2159. repeat Wait(0);if JeffTheKillerScript and JeffTheKiller and ChosenMusic then ChosenMusic.Volume=ChosenMusic.Volume-0.01;else break;end;until ChosenMusic.Volume==0 or ChosenMusic.Volume<0;
  2160. if ChosenMusic then
  2161. ChosenMusic.Volume=0;
  2162. ChosenMusic:Stop();
  2163. end;
  2164. ChosenMusic=nil;
  2165. MusicDebounce=false;
  2166. end);
  2167. end;
  2168. if MainTarget then
  2169. Notice=true;
  2170. if Notice and not NoticeDebounce and JeffTheKillerScript and JeffTheKiller and JeffTheKillerHead and JeffTheKillerHead:FindFirstChild("Jeff_Susto2")then
  2171. JeffTheKillerHead:FindFirstChild("Jeff_Susto2"):Play();
  2172. NoticeDebounce=true;
  2173. end
  2174. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 then
  2175. if MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude>5 then
  2176. JeffTheKillerHumanoid.WalkSpeed=16;
  2177. elseif MainTarget and FoundHumanoid and FoundHumanoid.Health~=0 and(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<5 then
  2178. JeffTheKillerHumanoid.WalkSpeed=0.004;
  2179. end;
  2180. JeffTheKillerHumanoid:MoveTo(MainTarget.Position+(MainTarget.Position-JeffTheKillerHumanoidRootPart.Position).unit*2,Game:GetService("Workspace"):FindFirstChild("Terrain"));
  2181. local NeckRotation=(JeffTheKiller:FindFirstChild("Torso").Position.Y-MainTarget.Parent:FindFirstChild("Head").Position.Y)/10;
  2182. if NeckRotation>-1.5 and NeckRotation<1.5 then
  2183. JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0=OriginalC0*CFrame.fromEulerAnglesXYZ(NeckRotation,0,0);
  2184. end;
  2185. if NeckRotation<-1.5 then
  2186. JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0=CFrame.new(0,1,0,-1,0,0,0,-0.993636549,0.112633869,0,0.112633869,0.993636549);
  2187. elseif NeckRotation>1.5 then
  2188. JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0=CFrame.new(0,1,0,-1,0,0,0,0.996671617,0.081521146,0,0.081521146,-0.996671617);
  2189. end;
  2190. else
  2191. end;
  2192. else
  2193. Notice=false;
  2194. NoticeDebounce=false;
  2195. JeffTheKiller:FindFirstChild("Torso"):FindFirstChild("Neck").C0=CFrame.new(0,1,0,-1,0,0,0,0,1,0,1,-0);
  2196. local RandomWalk=math.random(1,150);
  2197. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 then
  2198. JeffTheKillerHumanoid.WalkSpeed=30;
  2199. if RandomWalk==1 then
  2200. JeffTheKillerHumanoid:MoveTo(Game:GetService("Workspace"):FindFirstChild("Terrain").Position+Vector3.new(math.random(-2048,2048),0,math.random(-2048,2048)),Game:GetService("Workspace"):FindFirstChild("Terrain"));
  2201. end;
  2202. end;
  2203. end;
  2204. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid then
  2205. JeffTheKillerHumanoid.DisplayDistanceType="None";
  2206. JeffTheKillerHumanoid.HealthDisplayDistance=0;
  2207. JeffTheKillerHumanoid.Name="ColdBloodedKiller";
  2208. JeffTheKillerHumanoid.NameDisplayDistance=0;
  2209. JeffTheKillerHumanoid.NameOcclusion="EnemyOcclusion";
  2210. JeffTheKillerHumanoid.AutoJumpEnabled=true;
  2211. JeffTheKillerHumanoid.AutoRotate=true;
  2212. JeffTheKillerHumanoid.MaxHealth=500;
  2213. JeffTheKillerHumanoid.JumpPower=60;
  2214. JeffTheKillerHumanoid.MaxSlopeAngle=89.9;
  2215. end;
  2216. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and not JeffTheKillerHumanoid.AutoJumpEnabled then
  2217. JeffTheKillerHumanoid.AutoJumpEnabled=true;
  2218. end;
  2219. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and not JeffTheKillerHumanoid.AutoRotate then
  2220. JeffTheKillerHumanoid.AutoRotate=true;
  2221. end;
  2222. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.PlatformStand then
  2223. JeffTheKillerHumanoid.PlatformStand=false;
  2224. end;
  2225. if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Sit then
  2226. JeffTheKillerHumanoid.Sit=false;
  2227. end;
  2228. end;
  2229. --[[ By: Brutez. ]]--
  2230. end))
  2231. Part111.Name = "Knife"
  2232. Part111.Parent = Model59
  2233. Part111.Material = Enum.Material.Metal
  2234. Part111.BrickColor = BrickColor.new("Mid gray")
  2235. Part111.Transparency = 1
  2236. Part111.Rotation = Vector3.new(14.4399996, -0.589999974, 0.149999991)
  2237. Part111.Velocity = Vector3.new(6.95388889, 0, -0.802138031)
  2238. Part111.CanCollide = false
  2239. Part111.Elasticity = 0
  2240. Part111.FormFactor = Enum.FormFactor.Custom
  2241. Part111.Friction = 2
  2242. Part111.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  2243. Part111.CFrame = CFrame.new(31.1081924, 2.95553923, -54.8561211, 0.999942839, -0.00265025208, -0.0103579555, -1.58438106e-05, 0.968422174, -0.249316156, 0.0106916241, 0.249302059, 0.968366742)
  2244. Part111.BackSurface = Enum.SurfaceType.SmoothNoOutlines
  2245. Part111.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
  2246. Part111.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
  2247. Part111.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
  2248. Part111.RightSurface = Enum.SurfaceType.SmoothNoOutlines
  2249. Part111.TopSurface = Enum.SurfaceType.SmoothNoOutlines
  2250. Part111.Color = Color3.new(0.803922, 0.803922, 0.803922)
  2251. Part111.Position = Vector3.new(31.1081924, 2.95553923, -54.8561211)
  2252. Part111.Orientation = Vector3.new(14.4399996, -0.610000014, 0)
  2253. Part111.Color = Color3.new(0.803922, 0.803922, 0.803922)
  2254. SpecialMesh112.Name = "KnifeMesh"
  2255. SpecialMesh112.Parent = Part111
  2256. SpecialMesh112.MeshId = "rbxassetid://165710339"
  2257. SpecialMesh112.Scale = Vector3.new(0.5, 0.5, 0.699999988)
  2258. SpecialMesh112.TextureId = "rbxassetid://381626146"
  2259. SpecialMesh112.MeshType = Enum.MeshType.FileMesh
  2260. SpecialMesh112.Scale = Vector3.new(0.5, 0.5, 0.699999988)
  2261. Sound113.Name = "Hit2"
  2262. Sound113.Parent = Part111
  2263. Sound113.SoundId = "rbxassetid://223103466"
  2264. Sound114.Name = "Hit3"
  2265. Sound114.Parent = Part111
  2266. Sound114.SoundId = "rbxassetid://223103466"
  2267. Sound115.Name = "Hit1"
  2268. Sound115.Parent = Part111
  2269. Sound115.SoundId = "rbxassetid://223103466"
  2270. Sound116.Name = "Swing"
  2271. Sound116.Parent = Part111
  2272. Sound116.SoundId = "rbxassetid://176238381"
  2273. Script117.Name = "Respawn"
  2274. Script117.Parent = Model59
  2275. table.insert(cors,sandbox(Script117,function()
  2276. --[[ By: Brutez, 2/28/2015, 1:34 AM, (UTC-08:00) Pacific Time (US & Canada) ]]--
  2277. local PlayerSpawning=false; --[[ Change this to true if you want the NPC to spawn like a player, and change this to false if you want the NPC to spawn at it's current position. ]]--
  2278. local AdvancedRespawnScript=script;
  2279. repeat Wait(0)until script and script.Parent and script.Parent.ClassName=="Model";
  2280. local JeffTheKiller=AdvancedRespawnScript.Parent;
  2281. if AdvancedRespawnScript and JeffTheKiller and JeffTheKiller:FindFirstChild("Thumbnail")then
  2282. JeffTheKiller:FindFirstChild("Thumbnail"):Destroy();
  2283. end;
  2284. local GameDerbis=Game:GetService("Debris");
  2285. local JeffTheKillerHumanoid;
  2286. for _,Child in pairs(JeffTheKiller:GetChildren())do
  2287. if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
  2288. JeffTheKillerHumanoid=Child;
  2289. end;
  2290. end;
  2291. local Respawndant=JeffTheKiller:Clone();
  2292. if PlayerSpawning then --[[ LOOK AT LINE: 2. ]]--
  2293. coroutine.resume(coroutine.create(function()
  2294. if JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid:FindFirstChild("Status")and not JeffTheKillerHumanoid:FindFirstChild("Status"):FindFirstChild("AvalibleSpawns")then
  2295. SpawnModel=Instance.new("Model");
  2296. SpawnModel.Parent=JeffTheKillerHumanoid.Status;
  2297. SpawnModel.Name="AvalibleSpawns";
  2298. else
  2299. SpawnModel=JeffTheKillerHumanoid:FindFirstChild("Status"):FindFirstChild("AvalibleSpawns");
  2300. end;
  2301. function FindSpawn(SearchValue)
  2302. local PartsArchivable=SearchValue:GetChildren();
  2303. for AreaSearch=1,#PartsArchivable do
  2304. if PartsArchivable[AreaSearch].className=="SpawnLocation"then
  2305. local PositionValue=Instance.new("Vector3Value",SpawnModel);
  2306. PositionValue.Value=PartsArchivable[AreaSearch].Position;
  2307. PositionValue.Name=PartsArchivable[AreaSearch].Duration;
  2308. end;
  2309. FindSpawn(PartsArchivable[AreaSearch]);
  2310. end;
  2311. end;
  2312. FindSpawn(Game:GetService("Workspace"));
  2313. local SpawnChilden=SpawnModel:GetChildren();
  2314. if#SpawnChilden>0 then
  2315. local SpawnItself=SpawnChilden[math.random(1,#SpawnChilden)];
  2316. local RespawningForceField=Instance.new("ForceField");
  2317. RespawningForceField.Parent=JeffTheKiller;
  2318. RespawningForceField.Name="SpawnForceField";
  2319. GameDerbis:AddItem(RespawningForceField,SpawnItself.Name);
  2320. JeffTheKiller:MoveTo(SpawnItself.Value+Vector3.new(0,3.5,0));
  2321. else
  2322. if JeffTheKiller:FindFirstChild("SpawnForceField")then
  2323. JeffTheKiller:FindFirstChild("SpawnForceField"):Destroy();
  2324. end;
  2325. JeffTheKiller:MoveTo(Vector3.new(0,115,0));
  2326. end;
  2327. end));
  2328. end;
  2329. function Respawn()
  2330. Wait(5);
  2331. Respawndant.Parent=JeffTheKiller.Parent;
  2332. Respawndant:makeJoints();
  2333. Respawndant:FindFirstChild("Head"):MakeJoints();
  2334. Respawndant:FindFirstChild("Torso"):MakeJoints();
  2335. JeffTheKiller:remove();
  2336. end;
  2337. if AdvancedRespawnScript and JeffTheKiller and JeffTheKillerHumanoid then
  2338. JeffTheKillerHumanoid.Died:connect(Respawn);
  2339. end;
  2340. --[[ By: Brutez, 2/28/2015, 1:34 AM, (UTC-08:00) Pacific Time (US & Canada) ]]--
  2341. end))
  2342. BodyColors118.Parent = Model59
  2343. BodyColors118.LeftLegColor = BrickColor.new("Medium blue")
  2344. BodyColors118.RightLegColor = BrickColor.new("Medium blue")
  2345. BodyColors118.TorsoColor = BrickColor.new("Bright yellow")
  2346. Sound119.Name = "Jeff_Scene_Sound2"
  2347. Sound119.Parent = Model59
  2348. Sound119.SoundId = "rbxassetid://656235613"
  2349. Sound119.Volume = 1
  2350. Sound119.Looped = true
  2351. for i,v in pairs(mas:GetChildren()) do
  2352. v.Parent = workspace
  2353. pcall(function() v:MakeJoints() end)
  2354. end
  2355. mas:Destroy()
  2356. for i,v in pairs(cors) do
  2357. spawn(function()
  2358. pcall(v)
  2359. end)
  2360. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement