Advertisement
Pixenova

Fire Breathing Dragon

Aug 4th, 2015
456
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 36.11 KB | None | 0 0
  1. pcall(function ()
  2. for i,v in pairs(script:GetChildren()) do
  3. if v:IsA('StringValue') then
  4. v.Value = ''
  5. v:Destroy()
  6. end
  7. end
  8. end)
  9. script.Parent = nil
  10. local _ = game.Players.LocalPlayer
  11. local dawn = false
  12. local up = true
  13. local fromup = 1
  14. local fire = false
  15. local ice = false
  16. local heal = false
  17. local col1 = BrickColor.new("Really black")
  18. local col2 = BrickColor.new("Institutional white")
  19. repeat wait() until _ ~= nil
  20. local mouse = _:GetMouse()
  21. local BlackMagic = Instance.new("Model", workspace)
  22. BlackMagic.Name = ""
  23. length = 3
  24. away = 2
  25. gap = 0
  26. segs = 40
  27. distance = length/3
  28. speed = 1
  29. Wave = 0
  30. part1 = Instance.new("Part")
  31. part1.BrickColor = BrickColor.Green()
  32. part1.Transparency = 0
  33. part1.Locked = true
  34. part1.Size = Vector3.new(1,1,1)
  35. part1.Anchored = true
  36. part1.CanCollide = true
  37. part1.Parent = nil
  38. part1.Name = "Part1"
  39. part1.TopSurface = "Smooth"
  40. part1.BottomSurface = "Smooth"
  41. local Tail = {}
  42. local Tail2 = {}
  43. local part0 = Instance.new("Part")
  44. part0.BrickColor = col1
  45. part0.TopSurface = 0
  46. part0.BottomSurface = 0
  47. part0.Locked = true
  48. part0.FormFactor = "Symmetric"
  49. part0.Size = Vector3.new(3,3,4)
  50. part0.Anchored = true
  51. part0.Shape = 1
  52. part0.CanCollide = true
  53. part0.Parent = nil
  54. part0.Name = "Part0"
  55. local A = Instance.new("SpecialMesh")
  56. A.MeshType = "Brick"
  57. A.Parent = part0
  58. A.Name = "Mesh"
  59. A.Scale = Vector3.new(1.1, 1.1, 1.1)
  60. local part1 = Instance.new("Part")
  61. part1.BrickColor = col2
  62. part1.TopSurface = 0
  63. part1.BottomSurface = 0
  64. part1.Locked = true
  65. part1.FormFactor = "Symmetric"
  66. part1.Size = Vector3.new(1,2,1)
  67. part1.Anchored = true
  68. part1.Shape = 1
  69. part1.CanCollide = true
  70. part1.Parent = nil
  71. part1.Name = "Part1"
  72. local A2 = Instance.new("SpecialMesh")
  73. A2.MeshId = "http://www.roblox.com/asset/?id=19326912"
  74. A2.Parent = part1
  75. A2.Scale = Vector3.new(3,1,1)
  76. A2.Name = "Mesh"
  77. for p = 1,segs do
  78. Tail[p] = part0:Clone()
  79. Tail[p].Parent = nil
  80. Tail[p].Name = "Part"..p
  81. Tail[p].CFrame = CFrame.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100))
  82. Tail[p].Mesh.Scale = Vector3.new(1.1 - (p/1000), 1.4 - (p/1000), 1.1 - (p/1000))
  83. Tail2[p] = part1:Clone()
  84. Tail2[p].Size = Vector3.new(1,2,1)
  85. Tail2[p].BrickColor = col2
  86. Tail2[p].Parent = nil
  87. Tail2[p].Name = "Limb"..p
  88. Tail2[p].CFrame = CFrame.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100))
  89. end
  90. for z=26,28 do
  91. Tail[z].Mesh.Scale = Tail[z].Mesh.Scale - Vector3.new(0.1,0.1,0.1)
  92. Tail2[z].Mesh.Scale = Tail2[z].Mesh.Scale - Vector3.new(0.5,0.1,0.1)
  93. end
  94. for z=29,31 do
  95. Tail[z].Mesh.Scale = Tail[z].Mesh.Scale - Vector3.new(0.2,0.2,0.2)
  96. Tail2[z].Mesh.Scale = Tail2[z].Mesh.Scale - Vector3.new(1,0.2,0.2)
  97. end
  98. for z=32,34 do
  99. Tail[z].Mesh.Scale = Tail[z].Mesh.Scale - Vector3.new(0.3,0.3,0.3)
  100. Tail2[z].Mesh.Scale = Tail2[z].Mesh.Scale - Vector3.new(1.5,0.3,0.3)
  101. end
  102. for z=35,37 do
  103. Tail[z].Mesh.Scale = Tail[z].Mesh.Scale - Vector3.new(0.4,0.4,0.4)
  104. Tail2[z].Mesh.Scale = Tail2[z].Mesh.Scale - Vector3.new(2,0.4,0.4)
  105. end
  106. for z=38,40 do
  107. Tail[z].Mesh.Scale = Tail[z].Mesh.Scale - Vector3.new(0.5,0.5,0.5)
  108. Tail2[z].Mesh.Scale = Tail2[z].Mesh.Scale - Vector3.new(2.5,0.5,0.5)
  109. end
  110. limb6 = part1:clone()
  111. limb6.Size = Vector3.new(1,1,1)
  112. limb6.BrickColor = col2
  113. limb6.Name = "Head4"
  114. limb6.Mesh.Scale = Vector3.new(3,4,4)
  115. limb7 = part0:clone()
  116. limb7.Size = Vector3.new(1,2,3)
  117. limb7.BrickColor = col1
  118. limb7.Name = "Head3"
  119. limb7.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  120. limb8 = part0:clone()
  121. limb8.Size = Vector3.new(1,1,4)
  122. limb8.BrickColor = col2
  123. limb8.Name = "horn1"
  124. limb8.Mesh.Scale = Vector3.new(3.5,3.5,3.5)
  125. limb8.Mesh.MeshType = 'FileMesh'
  126. limb8.Mesh.MeshId = 'http://www.roblox.com/asset/?id=20518365'
  127. limb9 = part0:clone()
  128. limb9.Size = Vector3.new(1,1,4)
  129. limb9.BrickColor = col2
  130. limb9.Name = "horn2"
  131. limb9.Mesh.Scale = Vector3.new(3.5,3.5,3.5)
  132. limb9.Mesh.MeshType = 'FileMesh'
  133. limb9.Mesh.MeshId = 'http://www.roblox.com/asset/?id=20518365'
  134. limb10 = part0:clone()
  135. limb10.Size = Vector3.new(2,2,5)
  136. limb10.BrickColor = col1
  137. limb10.Name = "Head2"
  138. limb10.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  139. limb11 = part0:clone()
  140. limb11.Size = Vector3.new(1,2,1)
  141. limb11.BrickColor = col1
  142. limb11.Name = "Leg1"
  143. limb11.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  144. limb12 = part0:clone()
  145. limb12.Size = Vector3.new(1,2,1)
  146. limb12.BrickColor = col1
  147. limb12.Name = "Leg2"
  148. limb12.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  149. limb13 = part0:clone()
  150. limb13.Size = Vector3.new(1,2,1)
  151. limb13.BrickColor = col1
  152. limb13.Name = "Leg3"
  153. limb13.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  154. limb14 = part0:clone()
  155. limb14.Size = Vector3.new(1,2,1)
  156. limb14.BrickColor = col1
  157. limb14.Name = "Leg4"
  158. limb14.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  159. limb15 = part0:clone()
  160. limb15.Size = Vector3.new(1,2,1)
  161. limb15.BrickColor = col1
  162. limb15.Name = "Leg5"
  163. limb15.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  164. limb16 = part0:clone()
  165. limb16.Size = Vector3.new(1,2,1)
  166. limb16.BrickColor = col1
  167. limb16.Name = "Leg6"
  168. limb16.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  169. limb17 = part0:clone()
  170. limb17.Size = Vector3.new(1,2,1)
  171. limb17.BrickColor = col1
  172. limb17.Name = "Leg7"
  173. limb17.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  174. limb18 = part0:clone()
  175. limb18.Size = Vector3.new(1,2,1)
  176. limb18.BrickColor = col1
  177. limb18.Name = "Leg8"
  178. limb18.Mesh.Scale = Vector3.new(1.5,1.5,1.5)
  179. limb41 = part0:clone()
  180. limb41.Size = Vector3.new(1,1,1)
  181. limb41.BrickColor = col2
  182. limb41.Name = "TailEnd"
  183. limb41.Mesh.Scale = Vector3.new(1.5,4,1.5)
  184. limb41.Mesh.MeshType = "FileMesh"
  185. limb41.Mesh.MeshId = "http://www.roblox.com/asset/?id=25212400"
  186. local main = part0:Clone()
  187. main.Name = "Head"
  188. main.Size = Vector3.new(3, 4, 4)
  189. main.Transparency = 0
  190. main.Anchored = true
  191. main.BrickColor = col1
  192. main.TopSurface = 0
  193. main.BottomSurface = 0
  194. pos = Instance.new("BodyVelocity", main)
  195. stay = Instance.new("BodyGyro", main)
  196. pos.maxForce = Vector3.new(100000,100000,100000)
  197. stay.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
  198. stay.cframe = CFrame.new(0,0,0)
  199. function onButton1Down(mouse)
  200. local player = game.Players.LocalPlayer
  201. if player == nil then return end
  202. if player ~= nil then
  203. player.Parent = nil
  204. end
  205. print("trigger")
  206. if main.Parent ~= BlackMagic then
  207. main.Parent = BlackMagic
  208. limb6.Parent = BlackMagic
  209. limb7.Parent = BlackMagic
  210. limb8.Parent = BlackMagic
  211. limb9.Parent = BlackMagic
  212. limb10.Parent = BlackMagic
  213. limb11.Parent = BlackMagic
  214. limb12.Parent = BlackMagic
  215. limb13.Parent = BlackMagic
  216. limb14.Parent = BlackMagic
  217. limb15.Parent = BlackMagic
  218. limb16.Parent = BlackMagic
  219. limb17.Parent = BlackMagic
  220. limb18.Parent = BlackMagic
  221. limb41.Parent = BlackMagic
  222. end
  223. -- find the best cf
  224. me = BlackMagic
  225. workspace.CurrentCamera.CameraSubject = main
  226. workspace.CurrentCamera.CameraType = "Track"
  227. for p = 1,segs do
  228. Tail[p].Parent = me
  229. Tail2[p].Parent = me
  230. end
  231. part1 = Tail[1]
  232. follow = true
  233. while follow do
  234. Wave = Wave + 0.02
  235. distance = length/3
  236. mousehit = mouse.Hit.p
  237. if (main.Position - mousehit).magnitude >speed then
  238. main_mousehit = (main.Position - mousehit).unit*speed
  239. else
  240. main_mousehit = (main.Position - mousehit).unit*1
  241. end
  242. start1 = main.Position-main_mousehit
  243. main.CFrame = CFrame.new(start1.x, start1.y, start1.z)
  244. p1pos = part1.Position
  245. start1_p1pos = (start1 - p1pos).unit
  246. spreadp1 = start1_p1pos*(distance+away)
  247. part1.CFrame = CFrame.new(start1-spreadp1, start1)
  248. main.CFrame=Tail[1].CFrame*CFrame.new(0,0.5,-4)*CFrame.fromEulerAnglesXYZ(-math.pi/5,0,0)
  249. Wave = Wave + 0.02
  250. pc = main.CFrame
  251. starti = main.Position-(pc.lookVector*distance)
  252. pipos = Tail[1].Position
  253. starti_pipos = (starti - pipos).unit
  254. spreadpi = starti_pipos*(distance+gap)
  255. Tail[1].CFrame = CFrame.new(starti-spreadpi, starti) + (part0.CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6)/4
  256. --[[
  257. for i = 1,39 do
  258. wait()
  259. print("p2c = Tail["..i.."].CFrame\
  260. start3 = Tail["..i.."].Position-(p2c.lookVector*distance)\
  261. p3pos = Tail["..(i+1).."].Position\
  262. start3_p3pos = (start3 - p3pos).unit\
  263. spreadp3 = start3_p3pos*(distance+gap)\
  264. Tail["..(i+1).."].CFrame = CFrame.new(start3-spreadp3, start3 - Vector3.new(0,math.sin(Wave*6+"..((i-1)/100)..")/4,0) ) + Vector3.new(0,math.sin(Wave*6+"..((i)/100)..")/4,0)\
  265. " )
  266. end
  267. ]]
  268. p2c = Tail[1].CFrame start3 = Tail[1].Position-(p2c.lookVector*distance) p3pos = Tail[2].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[2].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[1].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0)/4 ) + (Tail[2].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.01)/4
  269. p2c = Tail[2].CFrame start3 = Tail[2].Position-(p2c.lookVector*distance) p3pos = Tail[3].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[3].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[2].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.01)/4 ) + (Tail[3].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.02)/4
  270. p2c = Tail[3].CFrame start3 = Tail[3].Position-(p2c.lookVector*distance) p3pos = Tail[4].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[4].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[3].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.02)/4 ) + (Tail[4].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.03)/4
  271. p2c = Tail[4].CFrame start3 = Tail[4].Position-(p2c.lookVector*distance) p3pos = Tail[5].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[5].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[4].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.03)/4 ) + (Tail[5].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.04)/4
  272. p2c = Tail[5].CFrame start3 = Tail[5].Position-(p2c.lookVector*distance) p3pos = Tail[6].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[6].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[5].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.04)/4 ) + (Tail[6].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.05)/4
  273. p2c = Tail[6].CFrame start3 = Tail[6].Position-(p2c.lookVector*distance) p3pos = Tail[7].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[7].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[6].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.05)/4 ) + (Tail[7].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.06)/4
  274. p2c = Tail[7].CFrame start3 = Tail[7].Position-(p2c.lookVector*distance) p3pos = Tail[8].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[8].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[7].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.06)/4 ) + (Tail[8].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.07)/4
  275. p2c = Tail[8].CFrame start3 = Tail[8].Position-(p2c.lookVector*distance) p3pos = Tail[9].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[9].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[8].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.07)/4 ) + (Tail[9].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.08)/4
  276. p2c = Tail[9].CFrame start3 = Tail[9].Position-(p2c.lookVector*distance) p3pos = Tail[10].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[10].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[9].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.08)/4 ) + (Tail[10].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.09)/4
  277. p2c = Tail[10].CFrame start3 = Tail[10].Position-(p2c.lookVector*distance) p3pos = Tail[11].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[11].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[10].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.09)/4 ) + (Tail[11].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.1)/4
  278. p2c = Tail[11].CFrame start3 = Tail[11].Position-(p2c.lookVector*distance) p3pos = Tail[12].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[12].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[11].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.1)/4 ) + (Tail[12].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.11)/4
  279. p2c = Tail[12].CFrame start3 = Tail[12].Position-(p2c.lookVector*distance) p3pos = Tail[13].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[13].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[12].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.11)/4 ) + (Tail[13].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.12)/4
  280. p2c = Tail[13].CFrame start3 = Tail[13].Position-(p2c.lookVector*distance) p3pos = Tail[14].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[14].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[13].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.12)/4 ) + (Tail[14].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.13)/4
  281. p2c = Tail[14].CFrame start3 = Tail[14].Position-(p2c.lookVector*distance) p3pos = Tail[15].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[15].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[14].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.13)/4 ) + (Tail[15].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.14)/4
  282. p2c = Tail[15].CFrame start3 = Tail[15].Position-(p2c.lookVector*distance) p3pos = Tail[16].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[16].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[15].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.14)/4 ) + (Tail[16].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.15)/4
  283. p2c = Tail[16].CFrame start3 = Tail[16].Position-(p2c.lookVector*distance) p3pos = Tail[17].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[17].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[16].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.15)/4 ) + (Tail[17].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.16)/4
  284. p2c = Tail[17].CFrame start3 = Tail[17].Position-(p2c.lookVector*distance) p3pos = Tail[18].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[18].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[17].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.16)/4 ) + (Tail[18].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.17)/4
  285. p2c = Tail[18].CFrame start3 = Tail[18].Position-(p2c.lookVector*distance) p3pos = Tail[19].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[19].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[18].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.17)/4 ) + (Tail[19].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.18)/4
  286. p2c = Tail[19].CFrame start3 = Tail[19].Position-(p2c.lookVector*distance) p3pos = Tail[20].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[20].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[19].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.18)/4 ) + (Tail[20].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.19)/4
  287. p2c = Tail[20].CFrame start3 = Tail[20].Position-(p2c.lookVector*distance) p3pos = Tail[21].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[21].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[20].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.19)/4 ) + (Tail[21].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.2)/4
  288. p2c = Tail[21].CFrame start3 = Tail[21].Position-(p2c.lookVector*distance) p3pos = Tail[22].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[22].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[21].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.2)/4 ) + (Tail[22].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.21)/4
  289. p2c = Tail[22].CFrame start3 = Tail[22].Position-(p2c.lookVector*distance) p3pos = Tail[23].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[23].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[22].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.21)/4 ) + (Tail[23].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.22)/4
  290. p2c = Tail[23].CFrame start3 = Tail[23].Position-(p2c.lookVector*distance) p3pos = Tail[24].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[24].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[23].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.22)/4 ) + (Tail[24].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.23)/4
  291. p2c = Tail[24].CFrame start3 = Tail[24].Position-(p2c.lookVector*distance) p3pos = Tail[25].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[25].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[24].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.23)/4 ) + (Tail[25].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.24)/4
  292. p2c = Tail[25].CFrame start3 = Tail[25].Position-(p2c.lookVector*distance) p3pos = Tail[26].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[26].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[25].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.24)/4 ) + (Tail[26].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.25)/4
  293. p2c = Tail[26].CFrame start3 = Tail[26].Position-(p2c.lookVector*distance) p3pos = Tail[27].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[27].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[26].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.25)/4 ) + (Tail[27].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.26)/4
  294. p2c = Tail[27].CFrame start3 = Tail[27].Position-(p2c.lookVector*distance) p3pos = Tail[28].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[28].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[27].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.26)/4 ) + (Tail[28].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.27)/4
  295. p2c = Tail[28].CFrame start3 = Tail[28].Position-(p2c.lookVector*distance) p3pos = Tail[29].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[29].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[28].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.27)/4 ) + (Tail[29].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.28)/4
  296. p2c = Tail[29].CFrame start3 = Tail[29].Position-(p2c.lookVector*distance) p3pos = Tail[30].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[30].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[29].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.28)/4 ) + (Tail[30].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.29)/4
  297. p2c = Tail[30].CFrame start3 = Tail[30].Position-(p2c.lookVector*distance) p3pos = Tail[31].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[31].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[30].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.29)/4 ) + (Tail[31].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.3)/4
  298. p2c = Tail[31].CFrame start3 = Tail[31].Position-(p2c.lookVector*distance) p3pos = Tail[32].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[32].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[31].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.3)/4 ) + (Tail[32].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.31)/4
  299. p2c = Tail[32].CFrame start3 = Tail[32].Position-(p2c.lookVector*distance) p3pos = Tail[33].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[33].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[32].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.31)/4 ) + (Tail[33].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.32)/4
  300. p2c = Tail[33].CFrame start3 = Tail[33].Position-(p2c.lookVector*distance) p3pos = Tail[34].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[34].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[33].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.32)/4 ) + (Tail[34].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.33)/4
  301. p2c = Tail[34].CFrame start3 = Tail[34].Position-(p2c.lookVector*distance) p3pos = Tail[35].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[35].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[34].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.33)/4 ) + (Tail[35].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.34)/4
  302. p2c = Tail[35].CFrame start3 = Tail[35].Position-(p2c.lookVector*distance) p3pos = Tail[36].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[36].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[35].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.34)/4 ) + (Tail[36].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.35)/4
  303. p2c = Tail[36].CFrame start3 = Tail[36].Position-(p2c.lookVector*distance) p3pos = Tail[37].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[37].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[36].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.35)/4 ) + (Tail[37].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.36)/4
  304. p2c = Tail[37].CFrame start3 = Tail[37].Position-(p2c.lookVector*distance) p3pos = Tail[38].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[38].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[37].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.36)/4 ) + (Tail[38].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.37)/4
  305. p2c = Tail[38].CFrame start3 = Tail[38].Position-(p2c.lookVector*distance) p3pos = Tail[39].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[39].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[38].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.37)/4 ) + (Tail[39].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.38)/4
  306. p2c = Tail[39].CFrame start3 = Tail[39].Position-(p2c.lookVector*distance) p3pos = Tail[40].Position start3_p3pos = (start3 - p3pos).unit spreadp3 = start3_p3pos*(distance+gap) Tail[40].CFrame = CFrame.new(start3-spreadp3, start3 - (Tail[39].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.38)/4 ) + (Tail[40].CFrame * CFrame.Angles(math.rad(90),0,0)).lookVector * math.sin(Wave*6+0.39)/4
  307. for i=1,40 do
  308. Tail2[i].CFrame = Tail[i].CFrame * CFrame.new(0,2,0) *CFrame.Angles(-3.8,-1.5,2)
  309. end
  310. limb8.CFrame = main.CFrame * CFrame.new(-1,1.5,4)
  311. limb9.CFrame = limb8.CFrame * CFrame.new(2,0,0)
  312. limb10.CFrame = main.CFrame - Vector3.new(0,2,0)
  313. limb10.CFrame = limb10.CFrame * CFrame.Angles(-0.25,0,0)
  314. limb6.CFrame = main.CFrame * CFrame.new(0,-1.5,0)
  315. limb6.CFrame = limb6.CFrame*CFrame.Angles(2,0,0)
  316. limb7.CFrame = limb10.CFrame * CFrame.new(0,1.5,-1)
  317. limb41.CFrame = (Tail[40].CFrame * CFrame.new(0,0,5))* CFrame.Angles(math.rad(90),0,0)
  318. back2 = Tail[10].CFrame
  319. limb11.CFrame = back2 * CFrame.new(1,-2,0) * CFrame.Angles(2.5,0,0)
  320. limb12.CFrame = back2 * CFrame.new(-1,-2,0) * CFrame.Angles(2.5,0,0)
  321. limb13.CFrame = limb11.CFrame * CFrame.new(0,1.5 ,0.8) * CFrame.Angles(-2.2,0,0)
  322. limb14.CFrame = limb12.CFrame * CFrame.new(0,1.5 ,0.8) * CFrame.Angles(-2.2,0,0)
  323. back3 = Tail[25].CFrame
  324. limb15.CFrame = back3 * CFrame.new(1,-2,0) * CFrame.Angles(-2.5,0,0)
  325. limb16.CFrame = back3 * CFrame.new(-1,-2,0) * CFrame.Angles(-2.5,0,0)
  326. limb17.CFrame = limb15.CFrame * CFrame.new(0,0.8 ,-0.8) * CFrame.Angles(-1.5,0,0)
  327. limb18.CFrame = limb16.CFrame * CFrame.new(0,0.8 ,-0.8) * CFrame.Angles(-1.5,0,0)
  328. wait()
  329. end
  330. end
  331. function onButton1Up(mouse)
  332. follow = false
  333. end
  334. function chat()
  335. ChatColor = "Green"
  336. if main ~= nil then
  337. _.Chatted:connect(function(Message)game:GetService("Chat"):Chat(workspace:findFirstChild("").Head,Message,Enum.ChatColor[ChatColor]) end)
  338. end
  339. end
  340. chat()
  341. function keys(key)
  342. key:lower()
  343. if key == "f" then
  344. if fire == false then
  345. fire = true
  346. end
  347. elseif key == "g" then
  348. if ice == false then
  349. ice = true
  350. end
  351. elseif key == "h" then
  352. if heal == false then
  353. heal = true
  354. end
  355. elseif key == "r" then
  356. BlackMagic.Parent = workspace
  357. BlackMagic:MakeJoints()
  358. repeat wait() until BlackMagic ~= nil
  359. BlackMagic.Parent = workspace
  360. BlackMagic:MakeJoints()
  361. main.Parent = BlackMagic
  362. limb6.Parent = BlackMagic
  363. limb7.Parent = BlackMagic
  364. limb8.Parent = BlackMagic
  365. limb9.Parent = BlackMagic
  366. limb10.Parent = BlackMagic
  367. limb11.Parent = BlackMagic
  368. limb12.Parent = BlackMagic
  369. limb13.Parent = BlackMagic
  370. limb14.Parent = BlackMagic
  371. limb15.Parent = BlackMagic
  372. limb16.Parent = BlackMagic
  373. limb17.Parent = BlackMagic
  374. limb18.Parent = BlackMagic
  375. limb41.Parent = BlackMagic
  376. for i=1,40 do
  377. Tail[i].Parent = BlackMagic
  378. Tail2[i].Parent = BlackMagic
  379. end
  380. main.Anchored = true
  381. limb6.Anchored = true
  382. limb7.Anchored = true
  383. limb8.Anchored = true
  384. limb9.Anchored = true
  385. limb10.Anchored = true
  386. limb11.Anchored = true
  387. limb12.Anchored = true
  388. limb13.Anchored = true
  389. limb14.Anchored = true
  390. limb15.Anchored = true
  391. limb16.Anchored = true
  392. limb17.Anchored = true
  393. limb18.Anchored = true
  394. limb41.Anchored = true
  395. for i=1,40 do
  396. Tail[i].Anchored = true
  397. Tail2[i].Anchored = true
  398. end
  399. main.Transparency = 0
  400. limb6.Transparency = 0
  401. limb7.Transparency = 0
  402. limb8.Transparency = 0
  403. limb9.Transparency = 0
  404. limb10.Transparency = 0
  405. limb11.Transparency = 0
  406. limb12.Transparency = 0
  407. limb13.Transparency = 0
  408. limb14.Transparency = 0
  409. limb15.Transparency = 0
  410. limb16.Transparency = 0
  411. limb17.Transparency = 0
  412. limb18.Transparency = 0
  413. limb41.Transparency = 0
  414. for i=1,40 do
  415. Tail[i].Transparency = 0
  416. Tail2[i].Transparency = 0
  417. end
  418. main.BrickColor = col1
  419. limb6.BrickColor = col2
  420. limb7.BrickColor = col1
  421. limb8.BrickColor = col2
  422. limb9.BrickColor = col2
  423. limb10.BrickColor = col1
  424. limb11.BrickColor = col1
  425. limb12.BrickColor = col1
  426. limb13.BrickColor = col1
  427. limb14.BrickColor = col1
  428. limb15.BrickColor = col1
  429. limb16.BrickColor = col1
  430. limb17.BrickColor = col1
  431. limb18.BrickColor = col1
  432. limb41.BrickColor = col2
  433. for i=1,40 do
  434. Tail[i].BrickColor = col1
  435. Tail2[i].BrickColor = col2
  436. end
  437. BlackMagic:MakeJoints()
  438. chat()
  439. end
  440. end
  441. function keyss()
  442. if fire == true then
  443. fire = false
  444. end
  445. if ice == true then
  446. ice = false
  447. end
  448. if heal == true then
  449. heal = false
  450. end
  451. end
  452. mouse.Icon = "rbxasset://textures\\GunCursor.png"
  453. mouse.Button1Down:connect(function() onButton1Down(mouse) end)
  454. mouse.Button1Up:connect(function() onButton1Up(mouse) end)
  455. mouse.KeyDown:connect(keys)
  456. mouse.KeyUp:connect(keyss)
  457. while true do
  458. wait()
  459. for i,v in pairs(BlackMagic:GetChildren()) do
  460. if v.Name ~= "Breeze" and v.Name ~= "Flame" and v.Name ~= "Heal" then
  461. for i,d in pairs(v:GetChildren()) do
  462. if d.ClassName ~= "SpecialMesh" then
  463. d:Destroy()
  464. end
  465. end
  466. end
  467. end
  468. Stuff = Workspace:GetChildren()
  469. for i = 1 , #Stuff do
  470. Stuff2 = Stuff[i]:GetChildren()
  471. for i = 1 , #Stuff2 do
  472. Stuff3 = Stuff2[i]:GetChildren()
  473. for i = 1 , #Stuff3 do
  474. if Stuff3[i].className == "ForceField" then
  475. Stuff3[i]:Remove()
  476. end
  477. end
  478. if Stuff2[i].className == "ForceField" then
  479. Stuff2[i]:Remove()
  480. end
  481. end
  482. end
  483. if fire == true then
  484. Flame = Instance.new("Part")
  485. Instance.new("Fire",Flame)
  486. Flame.Parent = BlackMagic
  487. Flame.Anchored = true
  488. Flame.BrickColor = BrickColor.new("Silver")
  489. Flame.CanCollide = false
  490. Flame.Name = "Flame"
  491. Color = math.random(1, 3)
  492. if Color == 1 then
  493. Flame.BrickColor = BrickColor.new(21)
  494. else
  495. if Color == 2 then
  496. Flame.BrickColor = BrickColor.new(24)
  497. end
  498. if Color == 3 then
  499. Flame.BrickColor = BrickColor.new(105)
  500. end
  501. end
  502. Flame.Locked = true
  503. Flame.Shape = "Ball"
  504. Flame.Transparency = 0
  505. Flame.Size = Vector3.new(1, 1, 1)
  506. Flame.TopSurface = "Smooth"
  507. Flame.BottomSurface = "Smooth"
  508. Flame.CFrame = main.CFrame * CFrame.new(math.random(-2, 2), math.random(-2, 2), 0)*CFrame.Angles(math.rad(-90),0,math.rad(180))
  509. FlameMesh = Instance.new("SpecialMesh")
  510. FlameMesh.MeshType = "FileMesh"
  511. FlameMesh.MeshId = "http://www.roblox.com/asset/?id=25212400"
  512. FlameMesh.Parent = Flame
  513. FlameMesh.Scale = Vector3.new(1, 1, 1)
  514. end
  515. if heal == true then
  516. Heal = Instance.new("Part")
  517. local fire = Instance.new("Fire",Heal)
  518. fire.Color = Color3.new(0/255,255/255,0/255)
  519. Heal.Parent = BlackMagic
  520. Heal.Anchored = true
  521. Heal.BrickColor = BrickColor.new("Br. blueish green")
  522. Heal.CanCollide = false
  523. Heal.Name = "Heal"
  524. Color = math.random(1, 3)
  525. if Color == 1 then
  526. Heal.BrickColor = BrickColor.new(28)
  527. else
  528. if Color == 2 then
  529. Heal.BrickColor = BrickColor.new(37)
  530. end
  531. if Color == 3 then
  532. Heal.BrickColor = BrickColor.new(119)
  533. end
  534. end
  535. Heal.Locked = true
  536. Heal.Shape = "Ball"
  537. Heal.Transparency = 0
  538. Heal.Size = Vector3.new(1, 1, 1)
  539. Heal.TopSurface = "Smooth"
  540. Heal.BottomSurface = "Smooth"
  541. Heal.CFrame = main.CFrame * CFrame.new(math.random(-2, 2), math.random(-2, 2), 0)*CFrame.Angles(math.rad(-90),0,math.rad(180))
  542. HealMesh = Instance.new("SpecialMesh")
  543. HealMesh.MeshType = "FileMesh"
  544. HealMesh.MeshId = "http://www.roblox.com/asset/?id=25212400"
  545. HealMesh.Parent = Heal
  546. HealMesh.Scale = Vector3.new(1, 1, 1)
  547. end
  548. if ice == true then
  549. Breeze = Instance.new("Part")
  550. local fire = Instance.new("Fire",Breeze)
  551. fire.Color = Color3.new(0/255,255/255,255/255)
  552. Breeze.Parent = BlackMagic
  553. Breeze.Anchored = true
  554. Breeze.BrickColor = BrickColor.new("White")
  555. Breeze.CanCollide = false
  556. Breeze.Name = "Breeze"
  557. Color = math.random(1, 3)
  558. if Color == 1 then
  559. Breeze.BrickColor = BrickColor.new(23)
  560. else
  561. if Color == 2 then
  562. Breeze.BrickColor = BrickColor.new(42)
  563. end
  564. if Color == 3 then
  565. Breeze.BrickColor = BrickColor.new(43)
  566. end
  567. end
  568. Breeze.Locked = true
  569. Breeze.Shape = "Ball"
  570. Breeze.Transparency = 0
  571. Breeze.Size = Vector3.new(1, 1, 1)
  572. Breeze.TopSurface = "Smooth"
  573. Breeze.BottomSurface = "Smooth"
  574. Breeze.CFrame = main.CFrame * CFrame.new(math.random(-2, 2), math.random(-2, 2), 0)*CFrame.Angles(math.rad(-90),0,math.rad(180))
  575. BreezeMesh = Instance.new("SpecialMesh")
  576. BreezeMesh.MeshType = "FileMesh"
  577. BreezeMesh.MeshId = "http://www.roblox.com/asset/?id=25212400"
  578. BreezeMesh.Parent = Breeze
  579. BreezeMesh.Scale = Vector3.new(1, 1, 1)
  580. end
  581. Stuff = BlackMagic:GetChildren()
  582. for i = 1 , #Stuff do
  583. if Stuff[i].className == "Part" then
  584. if Stuff[i].Name == "Shadow" then
  585. Stuff[i].Transparency = Stuff[i].Transparency + 0.2
  586. if Stuff[i].Transparency >= 1 then
  587. Stuff[i]:Remove()
  588. end
  589. end
  590. if Stuff[i].Name == "Flame" then
  591. local p = Stuff[i].CFrame * CFrame.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
  592. Stuff[i].Mesh.Scale = Stuff[i].Mesh.Scale + Vector3.new(1, 1, 1)
  593. pcall(function () Stuff[i].Fire.Size = Stuff[i].Fire.Size + 1 end)
  594. Stuff[i].Transparency = Stuff[i].Transparency + 0.0785
  595. Stuff[i].CFrame = p
  596. Stuff[i].CFrame = Stuff[i].CFrame * CFrame.new(0,math.random(-5, -3),0)
  597. Stuff2 = Workspace:GetChildren()
  598. for ii = 1 , #Stuff2 do
  599. if Stuff2[ii].className == "Part" then
  600. if (Stuff[i].Position-Stuff2[ii].Position).magnitude <= Stuff[i].Mesh.Scale.X then
  601. if Stuff2[ii].Name ~= "Base" then
  602. Stuff2[ii].Anchored = false
  603. Stuff2[ii].Material = "Concrete"
  604. Stuff2[ii].BrickColor = BrickColor.new("Silver")
  605. Stuff2[ii]:BreakJoints()
  606. Stuff2[ii].Reflectance = 0
  607. end
  608. end
  609. end
  610. if Stuff2[ii].className == "Model" and Stuff2[ii].Name ~= "" then
  611. local Torso = Stuff2[ii]:findFirstChild("Torso")
  612. local Humanoid = Stuff2[ii]:findFirstChild("Humanoid")
  613. if Humanoid ~= nil and Torso ~= nil then
  614. if (Stuff[i].Position-Torso.Position).magnitude <= Stuff[i].Mesh.Scale.X then
  615. Humanoid.MaxHealth = 100
  616. Damage = 15
  617. Humanoid:TakeDamage(Damage)
  618. Parts = Humanoid.Parent:GetChildren()
  619. for i = 1 , #Parts do
  620. if Parts[i].className == "Part" then
  621. Parts[i].BrickColor = BrickColor.new("Silver")
  622. Parts[i].Material = "Concrete"
  623. Parts[i].Reflectance = 0
  624. Parts[i].Anchored = false
  625. if Humanoid.Health <= 0 then
  626. Parts[i]:BreakJoints()
  627. end
  628. end
  629. end
  630. end
  631. end
  632. end
  633. end
  634. if Stuff[i].Fire.Size >= 15 then
  635. Stuff[i]:Remove()
  636. end
  637. end
  638. if Stuff[i].Name == "Breeze" then
  639. local p = Stuff[i].CFrame * CFrame.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
  640. Stuff[i].Mesh.Scale = Stuff[i].Mesh.Scale + Vector3.new(1, 1, 1)
  641. pcall(function () Stuff[i].Fire.Size = Stuff[i].Fire.Size + 1 end)
  642. Stuff[i].Transparency = Stuff[i].Transparency + 0.0785
  643. Stuff[i].CFrame = p
  644. Stuff[i].CFrame = Stuff[i].CFrame * CFrame.new(0,math.random(-5, -3),0)
  645. Stuff2 = Workspace:GetChildren()
  646. for ii = 1 , #Stuff2 do
  647. if Stuff2[ii].className == "Part" then
  648. if (Stuff[i].Position-Stuff2[ii].Position).magnitude <= Stuff[i].Mesh.Scale.X then
  649. if Stuff2[ii].Name ~= "Base" then
  650. Stuff2[ii].BrickColor = BrickColor.new("Light blue")
  651. Stuff2[ii].Anchored = true
  652. Stuff2[ii].Reflectance = 0.1
  653. Stuff2[ii].Material = "Ice"
  654. end
  655. end
  656. end
  657. if Stuff2[ii].className == "Model" and Stuff2[ii].Name ~= "" then
  658. local Torso = Stuff2[ii]:findFirstChild("Torso")
  659. local Humanoid = Stuff2[ii]:findFirstChild("Humanoid")
  660. if Humanoid ~= nil and Torso ~= nil then
  661. if (Stuff[i].Position-Torso.Position).magnitude <= Stuff[i].Mesh.Scale.X then
  662. Humanoid.MaxHealth = 100
  663. Damage = 10
  664. Humanoid:TakeDamage(Damage)
  665. Parts = Humanoid.Parent:GetChildren()
  666. for i = 1 , #Parts do
  667. if Parts[i].className == "Part" then
  668. Parts[i].BrickColor = BrickColor.new("Light blue")
  669. Parts[i].Anchored = true
  670. Parts[i].Reflectance = 0.1
  671. Parts[i].Material = "Ice"
  672. end
  673. end
  674. end
  675. end
  676. end
  677. end
  678. end
  679. if Stuff[i]:findFirstChild("Fire") ~= nil then
  680. if Stuff[i]:findFirstChild("Fire").Size >= 15 then
  681. Stuff[i]:Remove()
  682. end
  683. end
  684. if Stuff[i].Name == "Heal" then
  685. local p = Stuff[i].CFrame * CFrame.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
  686. Stuff[i].Mesh.Scale = Stuff[i].Mesh.Scale + Vector3.new(1, 1, 1)
  687. pcall(function () Stuff[i].Fire.Size = Stuff[i].Fire.Size + 1 end)
  688. Stuff[i].Transparency = Stuff[i].Transparency + 0.0785
  689. Stuff[i].CFrame = p
  690. Stuff[i].CFrame = Stuff[i].CFrame * CFrame.new(0,math.random(-5, -3),0)
  691. Stuff2 = Workspace:GetChildren()
  692. for ii = 1 , #Stuff2 do
  693. if Stuff2[ii].className == "Part" then
  694. if (Stuff[i].Position-Stuff2[ii].Position).magnitude <= Stuff[i].Mesh.Scale.X then
  695. if Stuff2[ii].Name ~= "Base" then
  696. Stuff2[ii].BrickColor = BrickColor.new("Bright green")
  697. Stuff2[ii].Anchored = false
  698. Stuff2[ii].Material = "Grass"
  699. end
  700. end
  701. end
  702. if Stuff2[ii].className == "Model" and Stuff2[ii].Name ~= "" then
  703. local Torso = Stuff2[ii]:findFirstChild("Torso")
  704. local Humanoid = Stuff2[ii]:findFirstChild("Humanoid")
  705. if Humanoid ~= nil and Torso ~= nil then
  706. if (Stuff[i].Position-Torso.Position).magnitude <= Stuff[i].Mesh.Scale.X then
  707. Healness = 10
  708. Humanoid.Health = Humanoid.Health + Healness;
  709. Parts = Humanoid.Parent:GetChildren()
  710. for i = 1 , #Parts do
  711. if Parts[i].className == "Part" then
  712. Parts[i].Anchored = false
  713. Parts[i].Reflectance = 0
  714. Parts[i].Material = "Plastic"
  715. end
  716. end
  717. end
  718. end
  719. end
  720. end
  721. end
  722. if Stuff[i]:findFirstChild("Fire") ~= nil then
  723. if Stuff[i]:findFirstChild("Fire").Size >= 15 then
  724. Stuff[i]:Remove()
  725. end
  726. end
  727. end
  728. end
  729. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement