Advertisement
astronaut32

tardis

Sep 8th, 2015
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 178.53 KB | None | 0 0
  1.  
  2. -- DarkShadow6's TARDIS
  3. -- It's a telephone booth... Or is it?
  4.  
  5. -- Variable initialization.
  6.  
  7. ExteriorOffset = Vector3.new(math.random(-5000, 5000), math.random(5000, 10000), math.random(-5000, 5000))
  8. ExteriorVelocityTarget = Vector3.new()
  9. ExteriorVelocityTargetSpeed = 0
  10.  
  11. DoorDebounce = true
  12. DoorLocked = false
  13. DoorOpen = false
  14.  
  15. DamageMaxHealth = 1000
  16. DamageHealth = DamageMaxHealth
  17. DamageCanHit = true
  18. DamageEffect = {}
  19. DamageEffectPart = {}
  20.  
  21. FlyPlayer = nil
  22. Flying = false
  23. FlySpeed = 30
  24. FlyStabalize = false
  25.  
  26. WeaponPlayer = nil
  27.  
  28. RepairPlayer = nil
  29. RepairParts = {}
  30. RepairWelds = {}
  31.  
  32. EnergyPlayer = nil
  33. EnergyMax = 3
  34. EnergyToWeapon = 0
  35. EnergyToShield = 1
  36. EnergyToFly = 1
  37. EnergyToTeleport = 1
  38. EnergyToRepair = 0
  39.  
  40. TeleportPlayer = nil
  41. TeleportReady = true
  42. TeleportWaypoints = {
  43. "Center", Vector3.new(0, 0, 20),
  44. "Edge of Base (1000x1000)", Vector3.new(494, 0, 494)
  45. }
  46.  
  47. RadarPlayer = nil
  48. RadarMaxDistance = 100
  49.  
  50. -- Damage Effect base creation.
  51.  
  52. DamageEffectBase = Instance.new("Part")
  53. DamageEffectBase.Name = "Damage Effect"
  54. DamageEffectBase.Transparency = 1
  55. DamageEffectBase.CanCollide = false
  56. DamageEffectBase.Anchored = true
  57. DamageEffectBase.Locked = true
  58. DamageEffectBase.TopSurface = 0
  59. DamageEffectBase.BottomSurface = 0
  60. DamageEffectBase.FormFactor = "Custom"
  61. DamageEffectBase.Size = Vector3.new(0.2, 0.2, 0.2)
  62. Fire = Instance.new("Fire", DamageEffectBase)
  63. Fire.Enabled = false
  64. Fire.Heat = 1
  65. Fire.Size = 1
  66. Smoke = Instance.new("Smoke", DamageEffectBase)
  67. Smoke.Enabled = false
  68. Smoke.RiseVelocity = 1
  69. Smoke.Size = 1
  70.  
  71. -- Model initialization.
  72.  
  73. TARDIS = Instance.new("Model", Workspace.Base)
  74. TARDIS.Name = "TARDIS"
  75.  
  76. TeleportValue = Instance.new("Vector3Value", TARDIS)
  77. TeleportValue.Name = "Teleport"
  78. TeleportValue.Changed:connect(function()
  79. Teleport(TeleportValue.Value)
  80. end)
  81.  
  82. FlyValue = Instance.new("Vector3Value", TARDIS)
  83. FlyValue.Name = "Fly"
  84. FlyValue.Changed:connect(function()
  85. Flying = true
  86. ExteriorVelocityTarget = FlyValue.Value * FlySpeed
  87. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  88. end)
  89.  
  90. StabalizeValue = Instance.new("BoolValue", TARDIS)
  91. StabalizeValue.Name = "Stabalize"
  92. StabalizeValue.Changed:connect(function()
  93. if StabalizeValue == true then
  94. ExteriorGyro.maxTorque = Vector3.new(math.huge, 0, math.huge)
  95. StabalizeValue.Value = false
  96. FlyStabalize = true
  97. end
  98. end)
  99.  
  100. DestabalizeValue = Instance.new("BoolValue", TARDIS)
  101. DestabalizeValue.Name = "Destbalize"
  102. DestabalizeValue.Changed:connect(function()
  103. if DestabalizeValue.Value == true then
  104. ExteriorGyro.maxTorque = Vector3.new(0, 0, 0)
  105. DestabalizeValue.Value = false
  106. FlyStabalize = false
  107. end
  108. end)
  109.  
  110. Interior = Instance.new("Model", TARDIS)
  111. Interior.Name = "Interior"
  112.  
  113. Exterior = Instance.new("Model", TARDIS)
  114. Exterior.Name = "Exterior"
  115.  
  116. -- Interior.
  117.  
  118. Base = Instance.new("Part", Interior)
  119. Base.Name = "Base"
  120. Base.BrickColor = BrickColor.new("Black")
  121. Base.TopSurface = 0
  122. Base.BottomSurface = 0
  123. Base.Locked = true
  124. Base.FormFactor = "Custom"
  125. Base.Size = Vector3.new(100, 1, 100)
  126.  
  127. Wall = Base:Clone()
  128. Wall.Name = "Wall"
  129. Wall.BrickColor = BrickColor.new("Pastel brown")
  130. Wall.Size = Vector3.new(17.5, 15, 1)
  131. Wall.Anchored = false
  132.  
  133. for i = 0, 360, 20 do
  134. Wall1 = Wall:Clone()
  135. Wall1.Parent = Interior
  136. Wall1.Size = Vector3.new(5, 5, 0.2)
  137. Wall1.BrickColor = BrickColor.new("Dark stone grey")
  138. Wall2 = Wall:Clone()
  139. Wall2.Parent = Interior
  140. Weld = Instance.new("Weld", Wall1)
  141. Weld.Part0 = Wall2
  142. Weld.Part1 = Weld.Parent
  143. Weld.C0 = CFrame.new(0, 0, -0.7)
  144. Weld = Instance.new("Weld", Wall2)
  145. Weld.Part0 = Base
  146. Weld.Part1 = Weld.Parent
  147. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 100 / 2.05, 15 / 2 + 0.5, math.cos(math.rad(i)) * 100 / 2.05) * CFrame.fromEulerAnglesXYZ(0, math.rad(i), 0)
  148. end
  149.  
  150. for i = 0, 360, 20 do
  151. Wall1 = Wall:Clone()
  152. Wall1.Parent = Interior
  153. Wall1.Size = Vector3.new(5, 5, 0.2)
  154. Wall1.BrickColor = BrickColor.new("Dark stone grey")
  155. Wall2 = Wall:Clone()
  156. Wall2.Parent = Interior
  157. Weld = Instance.new("Weld", Wall1)
  158. Weld.Part0 = Wall2
  159. Weld.Part1 = Weld.Parent
  160. Weld.C0 = CFrame.new(0, 0, -0.7)
  161. Weld = Instance.new("Weld", Wall2)
  162. Weld.Part0 = Base
  163. Weld.Part1 = Weld.Parent
  164. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 100 / 2.25, 15 * 2 / 1.5, math.cos(math.rad(i)) * 100 / 2.25) * CFrame.fromEulerAnglesXYZ(0, math.rad(i), 0)
  165. Weld.C1 = CFrame.fromEulerAnglesXYZ(math.rad(45), 0, 0)
  166. end
  167.  
  168. for i = 0, 360, 20 do
  169. Wall1 = Wall:Clone()
  170. Wall1.Parent = Interior
  171. Wall1.Size = Vector3.new(27.5, 45, 1)
  172. Weld = Instance.new("Weld", Wall1)
  173. Weld.Part0 = Base
  174. Weld.Part1 = Weld.Parent
  175. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 20, 32 + 0.5, math.cos(math.rad(i)) * 20) * CFrame.fromEulerAnglesXYZ(0, math.rad(i), 0)
  176. Weld.C1 = CFrame.fromEulerAnglesXYZ(math.rad(67.5), 0, 0)
  177. for x = 0, 2, 2 do
  178. Wall2 = Wall:Clone()
  179. Wall2.Parent = Interior
  180. Wall2.Size = Vector3.new(5, 5, 0.2)
  181. Wall2.BrickColor = BrickColor.new("Dark stone grey")
  182. Weld = Instance.new("Weld", Wall2)
  183. Weld.Part0 = Wall1
  184. Weld.Part1 = Weld.Parent
  185. Weld.C0 = CFrame.new(0, 7.5 * x - 7.5 * 2, -0.7)
  186. end
  187. end
  188.  
  189. Wall.Parent = Interior
  190. Wall.Size = Vector3.new(35, 1, 35)
  191. Weld = Instance.new("Weld", Wall)
  192. Weld.Part0 = Base
  193. Weld.Part1 = Weld.Parent
  194. Weld.C0 = CFrame.new(0, 35, 0)
  195.  
  196. Floor = Wall:Clone()
  197. Floor.Parent = Interior
  198. Floor.Name = "Floor"
  199. Floor.BrickColor = BrickColor.new("Medium stone grey")
  200. Floor.Size = Vector3.new(100, 3, 25)
  201. Weld = Instance.new("Weld", Floor)
  202. Weld.Part0 = Base
  203. Weld.Part1 = Weld.Parent
  204. Weld.C0 = CFrame.new(0, 3 / 2, 0)
  205.  
  206. Floor = Floor:Clone()
  207. Floor.Parent = Interior
  208. Weld = Instance.new("Weld", Floor)
  209. Weld.Part0 = Base
  210. Weld.Part1 = Weld.Parent
  211. Weld.C0 = CFrame.new(0, 3 / 2, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  212.  
  213. Floor = Instance.new("TrussPart", Interior)
  214. Floor.Name = "Floor Ladder"
  215. Floor.BrickColor = BrickColor.new("Black")
  216. Floor.TopSurface = 0
  217. Floor.BottomSurface = 0
  218. Floor.Locked = true
  219. Floor.Size = Vector3.new(15, 2, 2)
  220. Weld = Instance.new("Weld", Floor)
  221. Weld.Part0 = Base
  222. Weld.Part1 = Weld.Parent
  223. Weld.C0 = CFrame.new(30, 0.5, -30) * CFrame.fromEulerAnglesXYZ(0, math.rad(45), 0)
  224.  
  225. Floor = Floor:Clone()
  226. Floor.Parent = Interior
  227. Weld = Instance.new("Weld", Floor)
  228. Weld.Part0 = Base
  229. Weld.Part1 = Weld.Parent
  230. Weld.C0 = CFrame.new(-30, 0.5, -30) * CFrame.fromEulerAnglesXYZ(0, math.rad(135), 0)
  231.  
  232. Floor = Floor:Clone()
  233. Floor.Parent = Interior
  234. Weld = Instance.new("Weld", Floor)
  235. Weld.Part0 = Base
  236. Weld.Part1 = Weld.Parent
  237. Weld.C0 = CFrame.new(-30, 0.5, 30) * CFrame.fromEulerAnglesXYZ(0, math.rad(225), 0)
  238.  
  239. Floor = Floor:Clone()
  240. Floor.Parent = Interior
  241. Weld = Instance.new("Weld", Floor)
  242. Weld.Part0 = Base
  243. Weld.Part1 = Weld.Parent
  244. Weld.C0 = CFrame.new(30, 0.5, 30) * CFrame.fromEulerAnglesXYZ(0, math.rad(315), 0)
  245.  
  246. Floor = Instance.new("WedgePart", Interior)
  247. Floor.Name = "Floor"
  248. Floor.BrickColor = BrickColor.new("Medium stone grey")
  249. Floor.TopSurface = 0
  250. Floor.BottomSurface = 0
  251. Floor.Locked = true
  252. Floor.FormFactor = "Custom"
  253. Floor.Size = Vector3.new(100, 3, 5)
  254. Weld = Instance.new("Weld", Floor)
  255. Weld.Part0 = Base
  256. Weld.Part1 = Weld.Parent
  257. Weld.C0 = CFrame.new(0, 3 / 2, -25 / 2 - 5 / 2)
  258.  
  259. Floor = Floor:Clone()
  260. Floor.Parent = Interior
  261. Weld = Instance.new("Weld", Floor)
  262. Weld.Part0 = Base
  263. Weld.Part1 = Weld.Parent
  264. Weld.C0 = CFrame.new(0, 3 / 2, 25 / 2 + 5 / 2) * CFrame.fromEulerAnglesXYZ(0, math.rad(180), 0)
  265.  
  266. Floor = Floor:Clone()
  267. Floor.Parent = Interior
  268. Weld = Instance.new("Weld", Floor)
  269. Weld.Part0 = Base
  270. Weld.Part1 = Weld.Parent
  271. Weld.C0 = CFrame.new(-25 / 2 - 5 / 2, 3 / 2, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  272.  
  273. Floor = Floor:Clone()
  274. Floor.Parent = Interior
  275. Weld = Instance.new("Weld", Floor)
  276. Weld.Part0 = Base
  277. Weld.Part1 = Weld.Parent
  278. Weld.C0 = CFrame.new(25 / 2 + 5 / 2, 3 / 2, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(270), 0)
  279.  
  280. FloorCenter = Wall:Clone()
  281. FloorCenter.Parent = Interior
  282. FloorCenter.Name = "Floor Center"
  283. FloorCenter.BrickColor = BrickColor.new("Light stone grey")
  284. FloorCenter.Size = Vector3.new(25, 1, 25)
  285. Weld = Instance.new("Weld", FloorCenter)
  286. Weld.Part0 = Base
  287. Weld.Part1 = Weld.Parent
  288. Weld.C0 = CFrame.new(0, 3.5, 0)
  289.  
  290. ConsoleBase = Wall:Clone()
  291. ConsoleBase.Parent = Interior
  292. ConsoleBase.Name = "Console Base"
  293. ConsoleBase.Size = Vector3.new(10, 3, 10)
  294. Mesh = Instance.new("CylinderMesh", ConsoleBase)
  295. Weld = Instance.new("Weld", ConsoleBase)
  296. Weld.Part0 = FloorCenter
  297. Weld.Part1 = Weld.Parent
  298. Weld.C0 = CFrame.new(0, 2, 0)
  299.  
  300. for i = 0, 360, 360 / 6 do
  301. ConsoleArm = Floor:Clone()
  302. ConsoleArm.Parent = Interior
  303. ConsoleArm.Name = "Console Arm"
  304. ConsoleArm.BrickColor = BrickColor.new("Black")
  305. ConsoleArm.Size = Vector3.new(1, 2, 3)
  306. Weld = Instance.new("Weld", ConsoleArm)
  307. Weld.Part0 = ConsoleBase
  308. Weld.Part1 = Weld.Parent
  309. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 3.5, 2.5, math.cos(math.rad(i)) * 3.5) * CFrame.fromEulerAnglesXYZ(0, math.rad(i + 180), 0)
  310. end
  311.  
  312. ConsoleSupport = ConsoleBase:Clone()
  313. ConsoleSupport.Parent = Interior
  314. ConsoleSupport.Name = "Console Support"
  315. ConsoleSupport.Size = Vector3.new(4.25, 2, 4.25)
  316. Weld = Instance.new("Weld", ConsoleSupport)
  317. Weld.Part0 = ConsoleBase
  318. Weld.Part1 = Weld.Parent
  319. Weld.C0 = CFrame.new(0, 2.5, 0)
  320.  
  321. TeleportTelevision = Wall:Clone()
  322. TeleportTelevision.Parent = Interior
  323. TeleportTelevision.Name = "Teleport Television"
  324. TeleportTelevision.BrickColor = BrickColor.new("Really black")
  325. TeleportTelevision.Size = Vector3.new(1.5, 1.5, 1.5)
  326. Mesh = Instance.new("SpecialMesh", TeleportTelevision)
  327. Mesh.MeshType = "FileMesh"
  328. Mesh.MeshId = "http://www.roblox.com/Asset/?id=11641931"
  329. Mesh.TextureId = "http://www.roblox.com/Asset/?id=11641912"
  330. Weld = Instance.new("Weld", TeleportTelevision)
  331. Weld.Part0 = ConsoleBase
  332. Weld.Part1 = Weld.Parent
  333. Weld.C0 = CFrame.new(-3.35, 2.15, 0.25) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  334.  
  335. TeleportTelevisionScreen = Wall:Clone()
  336. TeleportTelevisionScreen.Parent = Interior
  337. TeleportTelevisionScreen.Name = "Teleport Television Screen"
  338. TeleportTelevisionScreen.BrickColor = BrickColor.new("Really black")
  339. TeleportTelevisionScreen.Size = Vector3.new(1.15, 1, 0.5)
  340. Weld = Instance.new("Weld", TeleportTelevisionScreen)
  341. Weld.Part0 = TeleportTelevision
  342. Weld.Part1 = Weld.Parent
  343. Weld.C0 = CFrame.new(0, 0, -0.35)
  344. coroutine.wrap(function()
  345. while true do
  346. if TeleportTelevisionScreen:FindFirstChild("Weld") == nil or TeleportPlayer == nil then
  347. TeleportTelevisionScreen.BrickColor = BrickColor.new("Really black")
  348. TeleportTelevisionScreen.Reflectance = 0.1
  349. else
  350. TeleportTelevisionScreen.BrickColor = BrickColor.random()
  351. TeleportTelevisionScreen.Reflectance = math.random(0, 100) / 100
  352. wait(math.random(100, 1000) / 7500)
  353. end
  354. wait()
  355. end
  356. end)()
  357.  
  358. TeleportKeypad = Wall:Clone()
  359. TeleportKeypad.Parent = Interior
  360. TeleportKeypad.Name = "Teleport Keypad"
  361. TeleportKeypad.BrickColor = BrickColor.new("Dark stone grey")
  362. TeleportKeypad.Size = Vector3.new(1, 1, 1)
  363. Mesh = Instance.new("SpecialMesh", TeleportKeypad)
  364. Mesh.MeshType = "Wedge"
  365. Weld = Instance.new("Weld", TeleportKeypad)
  366. Weld.Part0 = TeleportTelevision
  367. Weld.Part1 = Weld.Parent
  368. Weld.C0 = CFrame.new(1.25, -0.15, -0.5)
  369.  
  370. for x = -0.4, 0.4, 0.4 do
  371. for y = -0.4, 0.4, 0.26 do
  372. if not (y == -0.4 and x ~= 0) then
  373. TeleportKey = Wall:Clone()
  374. TeleportKey.Parent = Interior
  375. TeleportKey.Name = "Teleport Key"
  376. TeleportKey.BrickColor = BrickColor.new("Dark stone grey")
  377. TeleportKey.Size = Vector3.new(0.2, 0.2, 0.2)
  378. Mesh = Instance.new("SpecialMesh", TeleportKeypad)
  379. Mesh.MeshType = "Wedge"
  380. Weld = Instance.new("Weld", TeleportKey)
  381. Weld.Part0 = TeleportKeypad
  382. Weld.Part1 = Weld.Parent
  383. Weld.C0 = CFrame.new(x * 0.9, y * 0.9, y) * CFrame.fromEulerAnglesXYZ(math.rad(45), 0, 0)
  384. end
  385. end
  386. end
  387.  
  388. RadarTelevision = Wall:Clone()
  389. RadarTelevision.Parent = Interior
  390. RadarTelevision.Name = "Radar Television"
  391. RadarTelevision.BrickColor = BrickColor.new("Really black")
  392. RadarTelevision.Size = Vector3.new(2, 2, 1.5)
  393. Mesh = Instance.new("SpecialMesh", RadarTelevision)
  394. Mesh.MeshType = "FileMesh"
  395. Mesh.MeshId = "http://www.roblox.com/Asset/?id=11641883"
  396. Mesh.TextureId = "http://www.roblox.com/Asset/?id=11641873"
  397. Weld = Instance.new("Weld", RadarTelevision)
  398. Weld.Part0 = ConsoleBase
  399. Weld.Part1 = Weld.Parent
  400. rad = math.rad(360 / 6 / 2)
  401. Weld.C0 = CFrame.new(math.sin(rad) * 3, 2.5, math.cos(rad) * 3) * CFrame.fromEulerAnglesXYZ(0, rad + math.rad(180), 0)
  402.  
  403. RadarTelevisionScreen = Wall:Clone()
  404. RadarTelevisionScreen.Parent = Interior
  405. RadarTelevisionScreen.Name = "Radar Television Screen"
  406. RadarTelevisionScreen.BrickColor = BrickColor.new("Really black")
  407. RadarTelevisionScreen.Size = Vector3.new(1.85, 0.8, 1.35)
  408. Weld = Instance.new("Weld", RadarTelevisionScreen)
  409. Weld.Part0 = RadarTelevision
  410. Weld.Part1 = Weld.Parent
  411. Weld.C0 = CFrame.new(0, -0.1, 0)
  412. coroutine.wrap(function()
  413. while true do
  414. if RadarTelevisionScreen:FindFirstChild("Weld") == nil or RadarPlayer == nil then
  415. RadarTelevisionScreen.BrickColor = BrickColor.new("Really black")
  416. RadarTelevisionScreen.Reflectance = 0.1
  417. else
  418. RadarTelevisionScreen.BrickColor = BrickColor.random()
  419. RadarTelevisionScreen.Reflectance = math.random(0, 100) / 100
  420. wait(math.random(100, 1000) / 7500)
  421. end
  422. wait()
  423. end
  424. end)()
  425.  
  426. FlyMonitorBase = Wall:Clone()
  427. FlyMonitorBase.Parent = Interior
  428. FlyMonitorBase.Name = "Fly Monitor Base"
  429. FlyMonitorBase.BrickColor = BrickColor.new("Dark stone grey")
  430. FlyMonitorBase.Size = Vector3.new(1.5, 0.25, 1)
  431. Weld = Instance.new("Weld", FlyMonitorBase)
  432. Weld.Part0 = ConsoleBase
  433. Weld.Part1 = Weld.Parent
  434. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 5)
  435. Weld.C0 = CFrame.new(math.sin(rad) * 3, 1.625, math.cos(rad) * 3.25) * CFrame.fromEulerAnglesXYZ(0, rad + math.rad(180), 0)
  436.  
  437. FlyMonitorStand = Wall:Clone()
  438. FlyMonitorStand.Parent = Interior
  439. FlyMonitorStand.Name = "Fly Monitor Stand"
  440. FlyMonitorStand.BrickColor = BrickColor.new("Dark stone grey")
  441. FlyMonitorStand.Size = Vector3.new(0.5, 1, 0.2)
  442. Weld = Instance.new("Weld", FlyMonitorStand)
  443. Weld.Part0 = FlyMonitorBase
  444. Weld.Part1 = Weld.Parent
  445. Weld.C0 = CFrame.new(0, 0.625, 0.25)
  446.  
  447. FlyMonitorScreenBack = Wall:Clone()
  448. FlyMonitorScreenBack.Parent = Interior
  449. FlyMonitorScreenBack.Name = "Fly Monitor Screen Back"
  450. FlyMonitorScreenBack.BrickColor = BrickColor.new("Dark stone grey")
  451. FlyMonitorScreenBack.Size = Vector3.new(2.5, 2, 0.2)
  452. Weld = Instance.new("Weld", FlyMonitorScreenBack)
  453. Weld.Part0 = FlyMonitorStand
  454. Weld.Part1 = Weld.Parent
  455. Weld.C0 = CFrame.new(0, 1.25, -0.2)
  456.  
  457. FlyMonitorScreenEdge = Wall:Clone()
  458. FlyMonitorScreenEdge.Parent = Interior
  459. FlyMonitorScreenEdge.Name = "Fly Monitor Screen Edge"
  460. FlyMonitorScreenEdge.BrickColor = BrickColor.new("Dark stone grey")
  461. FlyMonitorScreenEdge.Size = Vector3.new(2.5, 0.2, 0.2)
  462. Weld = Instance.new("Weld", FlyMonitorScreenEdge)
  463. Weld.Part0 = FlyMonitorScreenBack
  464. Weld.Part1 = Weld.Parent
  465. Weld.C0 = CFrame.new(0, 0.9, -0.2)
  466.  
  467. FlyMonitorScreenEdge = Wall:Clone()
  468. FlyMonitorScreenEdge.Parent = Interior
  469. FlyMonitorScreenEdge.Name = "Fly Monitor Screen Edge"
  470. FlyMonitorScreenEdge.BrickColor = BrickColor.new("Dark stone grey")
  471. FlyMonitorScreenEdge.Size = Vector3.new(2.5, 0.2, 0.2)
  472. Weld = Instance.new("Weld", FlyMonitorScreenEdge)
  473. Weld.Part0 = FlyMonitorScreenBack
  474. Weld.Part1 = Weld.Parent
  475. Weld.C0 = CFrame.new(0, -0.9, -0.2)
  476.  
  477. FlyMonitorScreenEdge = Wall:Clone()
  478. FlyMonitorScreenEdge.Parent = Interior
  479. FlyMonitorScreenEdge.Name = "Fly Monitor Screen Edge"
  480. FlyMonitorScreenEdge.BrickColor = BrickColor.new("Dark stone grey")
  481. FlyMonitorScreenEdge.Size = Vector3.new(0.2, 2, 0.2)
  482. Weld = Instance.new("Weld", FlyMonitorScreenEdge)
  483. Weld.Part0 = FlyMonitorScreenBack
  484. Weld.Part1 = Weld.Parent
  485. Weld.C0 = CFrame.new(1.15, 0, -0.2)
  486.  
  487. FlyMonitorScreenEdge = Wall:Clone()
  488. FlyMonitorScreenEdge.Parent = Interior
  489. FlyMonitorScreenEdge.Name = "Fly Monitor Screen Edge"
  490. FlyMonitorScreenEdge.BrickColor = BrickColor.new("Dark stone grey")
  491. FlyMonitorScreenEdge.Size = Vector3.new(0.2, 2, 0.2)
  492. Weld = Instance.new("Weld", FlyMonitorScreenEdge)
  493. Weld.Part0 = FlyMonitorScreenBack
  494. Weld.Part1 = Weld.Parent
  495. Weld.C0 = CFrame.new(-1.15, 0, -0.2)
  496.  
  497. FlyMonitorScreen = Wall:Clone()
  498. FlyMonitorScreen.Parent = Interior
  499. FlyMonitorScreen.Name = "Fly Monitor Screen"
  500. FlyMonitorScreen.BrickColor = BrickColor.new("Really black")
  501. FlyMonitorScreen.Size = Vector3.new(2.4, 1.6, 0.2)
  502. Weld = Instance.new("Weld", FlyMonitorScreen)
  503. Weld.Part0 = FlyMonitorScreenBack
  504. Weld.Part1 = Weld.Parent
  505. Weld.C0 = CFrame.new(0, 0, -0.1)
  506. coroutine.wrap(function()
  507. while true do
  508. if FlyMonitorScreen:FindFirstChild("Weld") == nil or FlyPlayer == nil then
  509. FlyMonitorScreen.BrickColor = BrickColor.new("Really black")
  510. FlyMonitorScreen.Reflectance = 0.1
  511. else
  512. FlyMonitorScreen.BrickColor = BrickColor.random()
  513. FlyMonitorScreen.Reflectance = math.random(0, 100) / 100
  514. wait(math.random(100, 1000) / 7500)
  515. end
  516. wait()
  517. end
  518. end)()
  519.  
  520. WeaponStand = Wall:Clone()
  521. WeaponStand.Parent = Interior
  522. WeaponStand.Name = "Weapon Stand"
  523. WeaponStand.Size = Vector3.new(0.3, 1.5, 0.2)
  524. WeaponStand.BrickColor = BrickColor.new("Black")
  525. Weld = Instance.new("Weld", WeaponStand)
  526. Weld.Part0 = ConsoleBase
  527. Weld.Part1 = Weld.Parent
  528. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 1)
  529. Weld.C0 = CFrame.new(math.sin(rad) * 4.625, 2.25, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  530.  
  531. WeaponBinoculars = Wall:Clone()
  532. WeaponBinoculars.Parent = Interior
  533. WeaponBinoculars.Name = "Weapon Binoculars"
  534. WeaponBinoculars.Parent = Interior
  535. WeaponBinoculars.Size = Vector3.new(2, 0.5, 1.5)
  536. Mesh = Instance.new("SpecialMesh", WeaponBinoculars)
  537. Mesh.MeshType = "FileMesh"
  538. Mesh.MeshId = "http://www.roblox.com/Asset/?id=27039535"
  539. Mesh.TextureId = "http://www.roblox.com/Asset/?id=27039641"
  540. Mesh.Scale = Vector3.new(0.5, 0.5, 0.5)
  541. Weld = Instance.new("Weld", WeaponBinoculars)
  542. Weld.Part0 = ConsoleBase
  543. Weld.Part1 = Weld.Parent
  544. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 1)
  545. Weld.C0 = CFrame.new(math.sin(rad) * 4.75, 2.75, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  546.  
  547. WeaponJoystickBase = Wall:Clone()
  548. WeaponJoystickBase.Parent = Interior
  549. WeaponJoystickBase.Name = "Weapon Joystick Base"
  550. WeaponJoystickBase.BrickColor = BrickColor.new("Really black")
  551. WeaponJoystickBase.Size = Vector3.new(0.8, 0.2, 0.8)
  552. Weld = Instance.new("Weld", WeaponJoystickBase)
  553. Weld.Part0 = WeaponStand
  554. Weld.Part1 = Weld.Parent
  555. Weld.C0 = CFrame.new(1.25, -0.65, -0.3)
  556.  
  557. WeaponJoystick = Wall:Clone()
  558. WeaponJoystick.Parent = Interior
  559. WeaponJoystick.Name = "Weapon Joystick"
  560. WeaponJoystick.BrickColor = BrickColor.new("Really black")
  561. WeaponJoystick.Size = Vector3.new(0.3, 1, 0.3)
  562. Mesh = Instance.new("CylinderMesh", WeaponJoystick)
  563. Weld = Instance.new("Weld", WeaponJoystick)
  564. Weld.Part0 = WeaponJoystickBase
  565. Weld.Part1 = Weld.Parent
  566. Weld.C0 = CFrame.new(0, 0.6, 0)
  567.  
  568. WeaponJoystickButton = WeaponJoystick:Clone()
  569. WeaponJoystickButton.Parent = Interior
  570. WeaponJoystickButton.Name = "Weapon Joystick Button"
  571. WeaponJoystickButton.BrickColor = BrickColor.new("Really red")
  572. WeaponJoystickButton.Size = Vector3.new(0.2, 0.2, 0.2)
  573. Weld = Instance.new("Weld", WeaponJoystickButton)
  574. Weld.Part0 = WeaponJoystickBase
  575. Weld.Part1 = Weld.Parent
  576. Weld.C0 = CFrame.new(-0.25, 0.2, 0.25)
  577.  
  578. WeaponJoystickBase2 = Wall:Clone()
  579. WeaponJoystickBase2.Parent = Interior
  580. WeaponJoystickBase2.Name = "Weapon Joystick Base"
  581. WeaponJoystickBase2.BrickColor = BrickColor.new("Really black")
  582. WeaponJoystickBase2.Size = Vector3.new(0.8, 0.2, 0.8)
  583. Weld = Instance.new("Weld", WeaponJoystickBase2)
  584. Weld.Part0 = WeaponStand
  585. Weld.Part1 = Weld.Parent
  586. Weld.C0 = CFrame.new(-1.25, -0.65, -0.3)
  587.  
  588. WeaponJoystick2 = Wall:Clone()
  589. WeaponJoystick2.Parent = Interior
  590. WeaponJoystick2.Name = "Weapon Joystick"
  591. WeaponJoystick2.BrickColor = BrickColor.new("Really black")
  592. WeaponJoystick2.Size = Vector3.new(0.3, 1, 0.3)
  593. Mesh = Instance.new("CylinderMesh", WeaponJoystick2)
  594. Weld = Instance.new("Weld", WeaponJoystick2)
  595. Weld.Part0 = WeaponJoystickBase2
  596. Weld.Part1 = Weld.Parent
  597. Weld.C0 = CFrame.new(0, 0.6, 0)
  598.  
  599. WeaponJoystickButton2 = WeaponJoystick2:Clone()
  600. WeaponJoystickButton2.Parent = Interior
  601. WeaponJoystickButton2.Name = "Weapon Joystick Button"
  602. WeaponJoystickButton2.BrickColor = BrickColor.new("Really red")
  603. WeaponJoystickButton2.Size = Vector3.new(0.2, 0.2, 0.2)
  604. Weld = Instance.new("Weld", WeaponJoystickButton2)
  605. Weld.Part0 = WeaponJoystickBase2
  606. Weld.Part1 = Weld.Parent
  607. Weld.C0 = CFrame.new(0.25, 0.2, 0.25)
  608.  
  609. EnergyTelevision = Wall:Clone()
  610. EnergyTelevision.Parent = Interior
  611. EnergyTelevision.Name = "Energy Television"
  612. EnergyTelevision.BrickColor = BrickColor.new("Really black")
  613. EnergyTelevision.Size = Vector3.new(2.25, 2, 1)
  614. Mesh = Instance.new("SpecialMesh", EnergyTelevision)
  615. Mesh.MeshType = "FileMesh"
  616. Mesh.Scale = Vector3.new(1.5, 1.5, 0.5)
  617. Mesh.MeshId = "http://www.roblox.com/Asset/?id=11641931"
  618. Mesh.TextureId = "http://www.roblox.com/Asset/?id=11641912"
  619. Mesh.VertexColor = Vector3.new(0.5, 0.5, 0.5)
  620. Weld = Instance.new("Weld", EnergyTelevision)
  621. Weld.Part0 = ConsoleBase
  622. Weld.Part1 = Weld.Parent
  623. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 3)
  624. Weld.C0 = CFrame.new(math.sin(rad) * 3.35, 2.45, math.cos(rad) * 3.3) * CFrame.fromEulerAnglesXYZ(0, rad + math.rad(180), 0)
  625.  
  626. EnergyTelevisionScreen = Wall:Clone()
  627. EnergyTelevisionScreen.Parent = Interior
  628. EnergyTelevisionScreen.Name = "Energy Television Screen"
  629. EnergyTelevisionScreen.BrickColor = BrickColor.new("Really black")
  630. EnergyTelevisionScreen.Size = Vector3.new(1.5, 1.35, 0.2)
  631. Weld = Instance.new("Weld", EnergyTelevisionScreen)
  632. Weld.Part0 = EnergyTelevision
  633. Weld.Part1 = Weld.Parent
  634. Weld.C0 = CFrame.new(0, 0, -0.3)
  635. coroutine.wrap(function()
  636. while true do
  637. if EnergyTelevisionScreen:FindFirstChild("Weld") == nil or EnergyPlayer == nil then
  638. EnergyTelevisionScreen.BrickColor = BrickColor.new("Really black")
  639. EnergyTelevisionScreen.Reflectance = 0.1
  640. else
  641. EnergyTelevisionScreen.BrickColor = BrickColor.random()
  642. EnergyTelevisionScreen.Reflectance = math.random(0, 100) / 100
  643. wait(math.random(100, 1000) / 7500)
  644. end
  645. wait()
  646. end
  647. end)()
  648.  
  649. ConsoleGlass = ConsoleBase:Clone()
  650. ConsoleGlass.Parent = Interior
  651. ConsoleGlass.Name = "Console Glass"
  652. ConsoleGlass.Transparency = 0.3
  653. ConsoleGlass.BrickColor = BrickColor.new("Institutional white")
  654. ConsoleGlass.Size = Vector3.new(3.75, 10, 3.75)
  655. Weld = Instance.new("Weld", ConsoleGlass)
  656. Weld.Part0 = ConsoleSupport
  657. Weld.Part1 = Weld.Parent
  658. Weld.C0 = CFrame.new(0, 6, 0)
  659.  
  660. ConsoleTop = ConsoleBase:Clone()
  661. ConsoleTop.Parent = Interior
  662. ConsoleTop.Name = "Console Top"
  663. ConsoleTop.BrickColor = BrickColor.new("Dark stone grey")
  664. ConsoleTop.Size = Vector3.new(5, 6, 5)
  665. Weld = Instance.new("Weld", ConsoleTop)
  666. Weld.Part0 = ConsoleGlass
  667. Weld.Part1 = Weld.Parent
  668. Weld.C0 = CFrame.new(0, 8, 0)
  669.  
  670. for i = 1, 6 / 1.5 do
  671. ConsoleRing = Wall:Clone()
  672. ConsoleRing.Parent = Interior
  673. ConsoleRing.Name = "Console Ring"
  674. ConsoleRing.Size = Vector3.new(6, 1, 6)
  675. Mesh = Instance.new("SpecialMesh", ConsoleRing)
  676. Mesh.MeshType = "Sphere"
  677. Weld = Instance.new("Weld", ConsoleRing)
  678. Weld.Part0 = ConsoleTop
  679. Weld.Part1 = Weld.Parent
  680. Weld.C0 = CFrame.new(0, (i * 1.5) - 6 / 1.625, 0)
  681. end
  682.  
  683. ConsoleAnchor = ConsoleBase:Clone()
  684. ConsoleAnchor.Parent = Interior
  685. ConsoleAnchor.Name = "Console Anchor"
  686. ConsoleAnchor.BrickColor = BrickColor.new("Medium stone grey")
  687. ConsoleAnchor.Size = Vector3.new(12.5, 10, 12.5)
  688. Weld = Instance.new("Weld", ConsoleAnchor)
  689. Weld.Part0 = ConsoleTop
  690. Weld.Part1 = Weld.Parent
  691. Weld.C0 = CFrame.new(0, 8, 0)
  692.  
  693. for i = 45, 360, 360 / 4 do
  694. ConsoleAnchorSupport = Wall:Clone()
  695. ConsoleAnchorSupport.Parent = Interior
  696. ConsoleAnchorSupport.Name = "Console Anchor Support"
  697. ConsoleAnchorSupport.BrickColor = BrickColor.new("Black")
  698. ConsoleAnchorSupport.Size = Vector3.new(2, 50, 4)
  699. Weld = Instance.new("Weld", ConsoleAnchorSupport)
  700. Weld.Part0 = ConsoleAnchor
  701. Weld.Part1 = Weld.Parent
  702. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 20, -15, math.cos(math.rad(i)) * 20) * CFrame.fromEulerAnglesXYZ(0, math.rad(i), 0)
  703. Weld.C1 = CFrame.fromEulerAnglesXYZ(math.rad(45), 0, 0)
  704. end
  705.  
  706. PowerCore = ConsoleBase:Clone()
  707. PowerCore.Parent = Interior
  708. PowerCore.Name = "Power Core"
  709. PowerCore.BrickColor = BrickColor.new("Bright blue")
  710. PowerCore.Transparency = 0.325
  711. PowerCore.Size = Vector3.new(2, 7, 2)
  712. Weld = Instance.new("Weld", PowerCore)
  713. Weld.Part0 = ConsoleGlass
  714. Weld.Part1 = Weld.Parent
  715. Weld.C0 = CFrame.new(0, 0, 0)
  716.  
  717. PowerCoreHolder = PowerCore:Clone()
  718. PowerCoreHolder.Parent = Interior
  719. PowerCoreHolder.Name = "Power Core Holder"
  720. PowerCoreHolder.BrickColor = BrickColor.new("Bright blue")
  721. PowerCoreHolder.Size = Vector3.new(1, 1.75, 1)
  722. Weld = Instance.new("Weld", PowerCoreHolder)
  723. Weld.Part0 = ConsoleGlass
  724. Weld.Part1 = Weld.Parent
  725. Weld.C0 = CFrame.new(0, 4.375, 0)
  726.  
  727. PowerCoreHolder = PowerCoreHolder:Clone()
  728. PowerCoreHolder.Parent = Interior
  729. Weld = Instance.new("Weld", PowerCoreHolder)
  730. Weld.Part0 = ConsoleGlass
  731. Weld.Part1 = Weld.Parent
  732. Weld.C0 = CFrame.new(0, -4.375, 0)
  733.  
  734. for i = 0, 360, 360 / 4 do
  735. PowerRod = PowerCore:Clone()
  736. PowerRod.Parent = Interior
  737. PowerRod.Name = "Power Rod 1"
  738. PowerRod.Size = Vector3.new(0.5, 5, 0.5)
  739. Weld = Instance.new("Weld", PowerRod)
  740. Weld.Part0 = ConsoleGlass
  741. Weld.Part1 = Weld.Parent
  742. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 1.5, 2, math.cos(math.rad(i)) * 1.5)
  743. end
  744.  
  745. for i = 45, 360, 360 / 4 do
  746. PowerRod = PowerCore:Clone()
  747. PowerRod.Parent = Interior
  748. PowerRod.Name = "Power Rod 2"
  749. PowerRod.Size = Vector3.new(0.5, 5, 0.5)
  750. Weld = Instance.new("Weld", PowerRod)
  751. Weld.Part0 = ConsoleGlass
  752. Weld.Part1 = Weld.Parent
  753. Weld.C0 = CFrame.new(math.sin(math.rad(i)) * 1.5, -2, math.cos(math.rad(i)) * 1.5)
  754. end
  755.  
  756. Seat = Instance.new("Seat", Interior)
  757. Seat.Name = "Radar Seat"
  758. Seat.TopSurface = 0
  759. Seat.BottomSurface = 0
  760. Seat.Locked = true
  761. Seat.BrickColor = BrickColor.new("Dark stone grey")
  762. Seat.FormFactor = "Custom"
  763. Seat.Size = Vector3.new(1, 1, 1)
  764. Weld = Instance.new("Weld", Seat)
  765. Weld.Part0 = FloorCenter
  766. Weld.Part1 = Weld.Parent
  767. rad = math.rad(360 / 6 / 2)
  768. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  769.  
  770. Seat = Seat:Clone()
  771. Seat.Parent = Interior
  772. Seat.Name = "Weapon Seat"
  773. Weld = Instance.new("Weld", Seat)
  774. Weld.Part0 = FloorCenter
  775. Weld.Part1 = Weld.Parent
  776. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 1)
  777. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  778.  
  779. Seat = Seat:Clone()
  780. Seat.Parent = Interior
  781. Seat.Name = "Repair Seat"
  782. Weld = Instance.new("Weld", Seat)
  783. Weld.Part0 = FloorCenter
  784. Weld.Part1 = Weld.Parent
  785. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 2)
  786. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  787.  
  788. Seat = Seat:Clone()
  789. Seat.Parent = Interior
  790. Seat.Name = "Energy Seat"
  791. Weld = Instance.new("Weld", Seat)
  792. Weld.Part0 = FloorCenter
  793. Weld.Part1 = Weld.Parent
  794. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 3)
  795. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  796.  
  797. Seat = Seat:Clone()
  798. Seat.Parent = Interior
  799. Seat.Name = "Teleport Seat"
  800. Weld = Instance.new("Weld", Seat)
  801. Weld.Part0 = FloorCenter
  802. Weld.Part1 = Weld.Parent
  803. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 4)
  804. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  805.  
  806. Seat = Seat:Clone()
  807. Seat.Parent = Interior
  808. Seat.Name = "Fly Seat"
  809. Weld = Instance.new("Weld", Seat)
  810. Weld.Part0 = FloorCenter
  811. Weld.Part1 = Weld.Parent
  812. rad = math.rad(360 / 6 / 2) + math.rad(360 / 6 * 5)
  813. Weld.C0 = CFrame.new(math.sin(rad) * 6, 1, math.cos(rad) * 6) * CFrame.fromEulerAnglesXYZ(0, rad, 0)
  814.  
  815. Teleport = Wall:Clone()
  816. Teleport.Parent = Interior
  817. Teleport.Name = "Teleport"
  818. Teleport.Size = Vector3.new(2, 2, 0.2)
  819. Teleport.Transparency = 1
  820. Weld = Instance.new("Weld", Teleport)
  821. Weld.Part0 = Base
  822. Weld.Part1 = Weld.Parent
  823. Weld.C0 = CFrame.new(0, 6.5, 47.5)
  824. Teleport.Touched:connect(function(Hit)
  825. pcall(function()
  826. if DoorDebounce == false or DoorOpen == false then return end
  827. if Hit.Parent:FindFirstChild("Torso") ~= nil and Hit.Parent:FindFirstChild("Humanoid") ~= nil then
  828. Position = Exterior.Teleport.CFrame * CFrame.new(0, 0, -2)
  829. while Hit.Parent.Torso.CFrame ~= Position do
  830. Hit.Parent.Torso.CFrame = Position
  831. end
  832. DoorDebounce = false
  833. coroutine.wrap(function()
  834. wait(1)
  835. DoorDebounce = true
  836. end)()
  837. end
  838. end)
  839. end)
  840.  
  841. for i = 0, 1, 1 / 20 do
  842. Shadow = Wall:Clone()
  843. Shadow.Parent = Interior
  844. Shadow.Name = "Shadow"
  845. Shadow.Transparency = i
  846. Shadow.BrickColor = BrickColor.new("Really black")
  847. Shadow.Size = Vector3.new(5, 7, 0.2)
  848. Shadow.CanCollide = false
  849. Weld = Instance.new("Weld", Shadow)
  850. Weld.Part0 = Base
  851. Weld.Part1 = Weld.Parent
  852. Weld.C0 = CFrame.new(0, 6.5, 48.5 - (0.2 * (i * 20)))
  853. end
  854.  
  855. Wall = Wall:Clone()
  856. Wall.Parent = Interior
  857. Wall.BrickColor = BrickColor.new("White")
  858. Wall.Size = Vector3.new(0.5, 7, 4)
  859. Weld = Instance.new("Weld", Wall)
  860. Weld.Part0 = Base
  861. Weld.Part1 = Weld.Parent
  862. Weld.C0 = CFrame.new(2.75, 6.5, 47)
  863.  
  864. Wall = Wall:Clone()
  865. Wall.Parent = Interior
  866. Wall.Size = Vector3.new(0.5, 7, 4)
  867. Weld = Instance.new("Weld", Wall)
  868. Weld.Part0 = Base
  869. Weld.Part1 = Weld.Parent
  870. Weld.C0 = CFrame.new(-2.75, 6.5, 47)
  871.  
  872. Corner = Wall:Clone()
  873. Corner.Parent = Interior
  874. Corner.Name = "Corner"
  875. Corner.BrickColor = BrickColor.new("Medium stone grey")
  876. Corner.Size = Vector3.new(1, 7, 1)
  877. Weld = Instance.new("Weld", Corner)
  878. Weld.Part0 = Base
  879. Weld.Part1 = Weld.Parent
  880. Weld.C0 = CFrame.new(-3, 6.5, 44.5)
  881.  
  882. Corner = Corner:Clone()
  883. Corner.Parent = Interior
  884. Weld = Instance.new("Weld", Corner)
  885. Weld.Part0 = Base
  886. Weld.Part1 = Weld.Parent
  887. Weld.C0 = CFrame.new(3, 6.5, 44.5)
  888.  
  889. Door = Wall:Clone()
  890. Door.Parent = Interior
  891. Door.Name = "Door"
  892. Door.BrickColor = BrickColor.new("White")
  893. Door.Size = Vector3.new(5, 7, 0.5)
  894. Motor = Instance.new("Motor", Door)
  895. Motor.Part0 = Base
  896. Motor.Part1 = Motor.Parent
  897. Motor.C0 = CFrame.new(-2.5, 0, 44.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, 0)
  898. Motor.C1 = CFrame.new(-2.5, -6.5, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, 0)
  899. Motor.MaxVelocity = 0.1
  900. coroutine.wrap(function()
  901. while Door.Parent ~= nil do
  902. if DoorOpen == false then
  903. pcall(function() Exterior.Door.Motor.DesiredAngle = 0 end)
  904. pcall(function() Interior.Door.Motor.DesiredAngle = 0 end)
  905. else
  906. pcall(function() Exterior.Door.Motor.DesiredAngle = math.rad(90) end)
  907. pcall(function() Interior.Door.Motor.DesiredAngle = math.rad(90) end)
  908. end
  909. wait()
  910. end
  911. end)()
  912. DoorLockedBool1 = Instance.new("BoolValue", Door)
  913. DoorLockedBool1.Parent = Door
  914. DoorLockedBool1.Name = "DoorLocked"
  915. DoorLockedBool1.Value = false
  916. DoorLockedBool1.Changed:connect(function(Property)
  917. DoorLocked = DoorLockedBool1.Value
  918. end)
  919. coroutine.wrap(function() while true do DoorLockedBool1.Value = DoorLocked wait(0.25) end end)()
  920. DoorOpenBool1 = Instance.new("BoolValue", Door)
  921. DoorOpenBool1.Parent = Door
  922. DoorOpenBool1.Name = "DoorOpen"
  923. DoorOpenBool1.Value = false
  924. DoorOpenBool1.Changed:connect(function(Property)
  925. DoorOpen = DoorOpenBool1.Value
  926. if DoorOpen == true then DoorLocked = false end
  927. end)
  928. coroutine.wrap(function() while true do DoorOpenBool1.Value = DoorOpen wait(0.25) end end)()
  929.  
  930. Sign = Wall:Clone()
  931. Sign.Parent = Interior
  932. Sign.Name = "Sign"
  933. Sign.Size = Vector3.new(2, 2, 0.2)
  934. Sign.BrickColor = BrickColor.new("Medium stone grey")
  935. Decal = Instance.new("Decal", Sign)
  936. Decal.Texture = "http://www.roblox.com/Asset/?id=52411167"
  937. Decal.Face = "Front"
  938. Weld = Instance.new("Weld", Sign)
  939. Weld.Part0 = Door
  940. Weld.Part1 = Weld.Parent
  941. Weld.C0 = CFrame.new(0, 1.75, -0.3)
  942.  
  943. DoorButton = Wall:Clone()
  944. DoorButton.Parent = Interior
  945. DoorButton.Name = "Door Button"
  946. DoorButton.BrickColor = BrickColor.new("Really red")
  947. DoorButton.Size = Vector3.new(0.45, 0.45, 0.2)
  948. Weld = Instance.new("Weld", DoorButton)
  949. Weld.Part0 = Corner
  950. Weld.Part1 = Weld.Parent
  951. Weld.C0 = CFrame.new(0, 0, -0.6)
  952. ClickDetector = Instance.new("ClickDetector", DoorButton)
  953. ClickDetector.MaxActivationDistance = 12
  954. ClickDetector.MouseClick:connect(function()
  955. if (DoorLocked or not TeleportReady) and not DoorOpen then return end
  956. if DoorOpen == true then
  957. DoorOpen = false
  958. else
  959. DoorOpen = true
  960. end
  961. end)
  962. coroutine.wrap(function()
  963. while DoorButton.Parent ~= nil do
  964. if DoorOpen == false then
  965. DoorButton.BrickColor = BrickColor.new("Really red")
  966. else
  967. DoorButton.BrickColor = BrickColor.new("Bright green")
  968. end
  969. wait()
  970. end
  971. end)()
  972.  
  973. LockButton = Wall:Clone()
  974. LockButton.Parent = Interior
  975. LockButton.Name = "Door Button"
  976. LockButton.BrickColor = BrickColor.new("Really red")
  977. LockButton.Size = Vector3.new(0.45, 0.45, 0.2)
  978. Weld = Instance.new("Weld", LockButton)
  979. Weld.Part0 = Corner
  980. Weld.Part1 = Weld.Parent
  981. Weld.C0 = CFrame.new(0, 0.55, -0.6)
  982. ClickDetector = Instance.new("ClickDetector", LockButton)
  983. ClickDetector.MaxActivationDistance = 12
  984. ClickDetector.MouseClick:connect(function()
  985. if DoorLocked == true then
  986. DoorLocked = false
  987. else
  988. DoorLocked = true
  989. end
  990. end)
  991. coroutine.wrap(function()
  992. while LockButton.Parent ~= nil do
  993. if DoorLocked == false then
  994. LockButton.BrickColor = BrickColor.new("Bright green")
  995. else
  996. LockButton.BrickColor = BrickColor.new("New Yeller")
  997. end
  998. wait()
  999. end
  1000. end)()
  1001.  
  1002. Top = Wall:Clone()
  1003. Top.Parent = Interior
  1004. Top.Name = "Top 1"
  1005. Top.BrickColor = BrickColor.new("Medium stone grey")
  1006. Top.Size = Vector3.new(7, 0.2, 6)
  1007. Weld = Instance.new("Weld", Top)
  1008. Weld.Part0 = Base
  1009. Weld.Part1 = Weld.Parent
  1010. Weld.C0 = CFrame.new(0, 10.1, 47)
  1011.  
  1012. Top = Floor:Clone()
  1013. Top.Parent = Interior
  1014. Top.Name = "Top 2"
  1015. Top.BrickColor = BrickColor.new("Medium stone grey")
  1016. Top.Size = Vector3.new(7, 0.5, 3)
  1017. Weld = Instance.new("Weld", Top)
  1018. Weld.Part0 = Base
  1019. Weld.Part1 = Weld.Parent
  1020. Weld.C0 = CFrame.new(0, 10.45, 47)
  1021.  
  1022. -- Exterior.
  1023.  
  1024. Base = Wall:Clone()
  1025. Base.Parent = Exterior
  1026. Base.Name = "Base"
  1027. Base.BrickColor = BrickColor.new("Medium stone grey")
  1028. Base.Size = Vector3.new(7, 0.2, 7)
  1029.  
  1030. Wall = Base:Clone()
  1031. Wall.Parent = Exterior
  1032. Wall.Name = "Wall"
  1033. Wall.BrickColor = BrickColor.new("White")
  1034. Wall.Size = Vector3.new(5, 7, 0.5)
  1035. Weld = Instance.new("Weld", Wall)
  1036. Weld.Part0 = Base
  1037. Weld.Part1 = Weld.Parent
  1038. Weld.C0 = CFrame.new(0, 3.6, 2.75)
  1039.  
  1040. Door = Wall:Clone()
  1041. Door.Parent = Exterior
  1042. Door.Name = "Door"
  1043. Door.Size = Vector3.new(5, 7, 0.5)
  1044. Motor = Instance.new("Motor", Door)
  1045. Motor.Part0 = Base
  1046. Motor.Part1 = Motor.Parent
  1047. Motor.C0 = CFrame.new(-2.5, 0, -2.75) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, 0)
  1048. Motor.C1 = CFrame.new(-2.5, -3.6, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, 0)
  1049. Motor.MaxVelocity = 0.1
  1050. DoorLockedBool2 = Instance.new("BoolValue", Door)
  1051. DoorLockedBool2.Parent = Door
  1052. DoorLockedBool2.Name = "DoorLocked"
  1053. DoorLockedBool2.Value = false
  1054. DoorLockedBool2.Changed:connect(function(Property)
  1055. DoorLocked = DoorLockedBool2.Value
  1056. end)
  1057. coroutine.wrap(function() while true do DoorLockedBool2.Value = DoorLocked wait(0.25) end end)()
  1058. DoorOpenBool2 = Instance.new("BoolValue", Door)
  1059. DoorOpenBool2.Parent = Door
  1060. DoorOpenBool2.Name = "DoorOpen"
  1061. DoorOpenBool2.Value = false
  1062. DoorOpenBool2.Changed:connect(function(Property)
  1063. DoorOpen = DoorOpenBool2.Value
  1064. if DoorOpen == true then DoorLocked = false end
  1065. end)
  1066. coroutine.wrap(function() while true do DoorOpenBool2.Value = DoorOpen wait(0.25) end end)()
  1067.  
  1068. DoorHandleHolder = Wall:Clone()
  1069. DoorHandleHolder.Parent = Exterior
  1070. DoorHandleHolder.Name = "Door Handle Holder"
  1071. DoorHandleHolder.BrickColor = BrickColor.new("Medium stone grey")
  1072. DoorHandleHolder.Size = Vector3.new(0.35, 0.2, 0.2)
  1073. Weld = Instance.new("Weld", DoorHandleHolder)
  1074. Weld.Part0 = Door
  1075. Weld.Part1 = Weld.Parent
  1076. Weld.C0 = CFrame.new(1.65, 0.5, -0.3)
  1077.  
  1078. DoorHandleHolder = DoorHandleHolder:Clone()
  1079. DoorHandleHolder.Parent = Exterior
  1080. Weld = Instance.new("Weld", DoorHandleHolder)
  1081. Weld.Part0 = Door
  1082. Weld.Part1 = Weld.Parent
  1083. Weld.C0 = CFrame.new(1.65, 0, -0.3)
  1084.  
  1085. DoorHandle = DoorHandleHolder:Clone()
  1086. DoorHandle.Parent = Exterior
  1087. DoorHandle.Name = "Door Handle"
  1088. DoorHandle.Size = Vector3.new(0.35, 0.7, 0.2)
  1089. Weld = Instance.new("Weld", DoorHandle)
  1090. Weld.Part0 = Door
  1091. Weld.Part1 = Weld.Parent
  1092. Weld.C0 = CFrame.new(1.65, 0.25, -0.5)
  1093. ClickDetector = Instance.new("ClickDetector", DoorHandle)
  1094. ClickDetector.MaxActivationDistance = 7
  1095. ClickDetector.MouseClick:connect(function()
  1096. if (DoorLocked or not TeleportReady) and not DoorOpen then return end
  1097. if DoorHandle:FindFirstChild("Weld") == nil then return end
  1098. if DoorOpen then
  1099. DoorOpen = false
  1100. else
  1101. DoorOpen = true
  1102. end
  1103. end)
  1104.  
  1105. Wall = Wall:Clone()
  1106. Wall.Parent = Exterior
  1107. Wall.Size = Vector3.new(0.5, 7, 5)
  1108. Weld = Instance.new("Weld", Wall)
  1109. Weld.Part0 = Base
  1110. Weld.Part1 = Weld.Parent
  1111. Weld.C0 = CFrame.new(2.75, 3.6, 0)
  1112.  
  1113. Wall = Wall:Clone()
  1114. Wall.Parent = Exterior
  1115. Wall.Size = Vector3.new(0.5, 7, 5)
  1116. Weld = Instance.new("Weld", Wall)
  1117. Weld.Part0 = Base
  1118. Weld.Part1 = Weld.Parent
  1119. Weld.C0 = CFrame.new(-2.75, 3.6, 0)
  1120.  
  1121. Corner = Wall:Clone()
  1122. Corner.Parent = Exterior
  1123. Corner.Name = "Corner"
  1124. Corner.BrickColor = BrickColor.new("Medium stone grey")
  1125. Corner.Size = Vector3.new(1, 7, 1)
  1126. Weld = Instance.new("Weld", Corner)
  1127. Weld.Part0 = Base
  1128. Weld.Part1 = Weld.Parent
  1129. Weld.C0 = CFrame.new(3, 3.6, 3)
  1130.  
  1131. Corner = Corner:Clone()
  1132. Corner.Parent = Exterior
  1133. Weld = Instance.new("Weld", Corner)
  1134. Weld.Part0 = Base
  1135. Weld.Part1 = Weld.Parent
  1136. Weld.C0 = CFrame.new(-3, 3.6, 3)
  1137.  
  1138. Corner = Corner:Clone()
  1139. Corner.Parent = Exterior
  1140. Weld = Instance.new("Weld", Corner)
  1141. Weld.Part0 = Base
  1142. Weld.Part1 = Weld.Parent
  1143. Weld.C0 = CFrame.new(-3, 3.6, -3)
  1144.  
  1145. Corner = Corner:Clone()
  1146. Corner.Parent = Exterior
  1147. Weld = Instance.new("Weld", Corner)
  1148. Weld.Part0 = Base
  1149. Weld.Part1 = Weld.Parent
  1150. Weld.C0 = CFrame.new(3, 3.6, -3)
  1151.  
  1152. Top = Base:Clone()
  1153. Top.Parent = Exterior
  1154. Top.Name = "Top"
  1155. Weld = Instance.new("Weld", Top)
  1156. Weld.Part0 = Base
  1157. Weld.Part1 = Weld.Parent
  1158. Weld.C0 = CFrame.new(0, 7.2, 0)
  1159.  
  1160. LightBase = Wall:Clone()
  1161. LightBase.Parent = Exterior
  1162. LightBase.Name = "Light Base"
  1163. LightBase.BrickColor = BrickColor.new("Dark stone grey")
  1164. LightBase.Size = Vector3.new(1, 0.5, 1)
  1165. Mesh = Instance.new("CylinderMesh", LightBase)
  1166. Weld = Instance.new("Weld", LightBase)
  1167. Weld.Part0 = Top
  1168. Weld.Part1 = Weld.Parent
  1169. Weld.C0 = CFrame.new(0, 0.35, 0)
  1170.  
  1171. Light = LightBase:Clone()
  1172. Light.Parent = Exterior
  1173. Light.Name = "Light"
  1174. Light.BrickColor = BrickColor.new("Bright blue")
  1175. Light.Transparency = 0.5
  1176. Light.Size = Vector3.new(1, 1, 1)
  1177. Weld = Instance.new("Weld", Light)
  1178. Weld.Part0 = LightBase
  1179. Weld.Part1 = Weld.Parent
  1180. Weld.C0 = CFrame.new(0, 0.75, 0)
  1181.  
  1182. LightTop = LightBase:Clone()
  1183. LightTop.Parent = Exterior
  1184. LightTop.Name = "Light Top"
  1185. Weld = Instance.new("Weld", LightTop)
  1186. Weld.Part0 = Light
  1187. Weld.Part1 = Weld.Parent
  1188. Weld.C0 = CFrame.new(0, 0.75, 0)
  1189.  
  1190. Sign = Top:Clone()
  1191. Sign.Parent = Exterior
  1192. Sign.Name = "Sign"
  1193. Sign.Size = Vector3.new(2, 2, 0.2)
  1194. Decal = Instance.new("Decal", Sign)
  1195. Decal.Texture = "http://www.roblox.com/Asset/?id=49400995"
  1196. Decal.Face = "Front"
  1197. Weld = Instance.new("Weld", Sign)
  1198. Weld.Part0 = Door
  1199. Weld.Part1 = Weld.Parent
  1200. Weld.C0 = CFrame.new(0, 1.75, -0.3)
  1201.  
  1202. Sign = Sign:Clone()
  1203. Sign.Parent = Exterior
  1204. Weld = Instance.new("Weld", Sign)
  1205. Weld.Part0 = Base
  1206. Weld.Part1 = Weld.Parent
  1207. Weld.C0 = CFrame.new(0, 5.4, 3.1) * CFrame.fromEulerAnglesXYZ(0, math.rad(180), 0)
  1208.  
  1209. Sign = Sign:Clone()
  1210. Sign.Parent = Exterior
  1211. Weld = Instance.new("Weld", Sign)
  1212. Weld.Part0 = Base
  1213. Weld.Part1 = Weld.Parent
  1214. Weld.C0 = CFrame.new(-3.1, 5.4, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  1215.  
  1216. Sign = Sign:Clone()
  1217. Sign.Parent = Exterior
  1218. Weld = Instance.new("Weld", Sign)
  1219. Weld.Part0 = Base
  1220. Weld.Part1 = Weld.Parent
  1221. Weld.C0 = CFrame.new(3.1, 5.4, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
  1222.  
  1223. Teleport = Wall:Clone()
  1224. Teleport.Parent = Exterior
  1225. Teleport.Name = "Teleport"
  1226. Teleport.Size = Vector3.new(2, 2, 0.2)
  1227. Teleport.Transparency = 1
  1228. Weld = Instance.new("Weld", Teleport)
  1229. Weld.Part0 = Base
  1230. Weld.Part1 = Weld.Parent
  1231. Weld.C0 = CFrame.new(0, 4.2, 1.5)
  1232. Teleport.Touched:connect(function(Hit)
  1233. pcall(function()
  1234. if DoorDebounce == false or DoorOpen == false then return end
  1235. if Hit.Parent:FindFirstChild("Torso") ~= nil and Hit.Parent:FindFirstChild("Humanoid") ~= nil then
  1236. Position = Interior.Teleport.CFrame * CFrame.new(0, 0, -2)
  1237. while Hit.Parent.Torso.CFrame ~= Position do
  1238. Hit.Parent.Torso.CFrame = Position
  1239. end
  1240. DoorDebounce = false
  1241. coroutine.wrap(function()
  1242. wait(1)
  1243. DoorDebounce = true
  1244. end)()
  1245. end
  1246. end)
  1247. end)
  1248.  
  1249. for i = 0, 1, 1 / 25 do
  1250. Shadow = Wall:Clone()
  1251. Shadow.Parent = Exterior
  1252. Shadow.Name = "Shadow"
  1253. Shadow.Transparency = i
  1254. Shadow.BrickColor = BrickColor.new("Really black")
  1255. Shadow.Size = Vector3.new(5, 7, 0.2)
  1256. Shadow.CanCollide = false
  1257. Weld = Instance.new("Weld", Shadow)
  1258. Weld.Part0 = Base
  1259. Weld.Part1 = Weld.Parent
  1260. Weld.C0 = CFrame.new(0, 3.6, 2.4 - (0.2 * (i * 25)))
  1261. end
  1262.  
  1263. -- Functions.
  1264.  
  1265. for _, Part in pairs(Exterior:GetChildren()) do
  1266. local Joint = nil
  1267. for _, Joints in pairs(Part:GetChildren()) do
  1268. if Joints:IsA("JointInstance") then
  1269. Joint = Joints
  1270. end
  1271. end
  1272. table.insert(RepairParts, {
  1273. Part = Part,
  1274. Joint = Joint
  1275. })
  1276. Part.ChildRemoved:connect(function(Part2)
  1277. if Part2:IsA("JointInstance") and Part2.Name == Part2.ClassName then
  1278. if math.floor(math.random(1, ((1 - (EnergyToShield * 0.999)) * 100) + 1)) == 1 and DamageHealth > 0 then
  1279. for i = 1, #RepairParts do
  1280. if RepairParts[i].Part == Part then
  1281. local NewJoint = RepairParts[i].Joint:Clone()
  1282. NewJoint.Parent = Part
  1283. Part:MakeJoints()
  1284. local Sound = Instance.new("Sound", Part)
  1285. Sound.Name = "Heal Sound"
  1286. Sound.Pitch = math.random(250, 400) / 100
  1287. Sound.Volume = 1
  1288. Sound.SoundId = "http://www.roblox.com/Asset/?id=2785493"
  1289. Sound:Play()
  1290. coroutine.wrap(function()
  1291. wait(1)
  1292. Sound:Remove()
  1293. end)()
  1294. end
  1295. end
  1296. local TARDISShield = Instance.new("SelectionBox", Part)
  1297. TARDISShield.Name = "TARDIS Shield"
  1298. TARDISShield.Adornee = Part
  1299. coroutine.wrap(function()
  1300. while TARDISShield.Parent ~= nil do
  1301. TARDISShield.Color = BrickColor.new(Color3.new(0, 0, math.random(100, 255) / 255))
  1302. wait()
  1303. end
  1304. end)()
  1305. coroutine.wrap(function()
  1306. wait(2)
  1307. for i = 0, 1, 0.05 do
  1308. TARDISShield.Transparency = i
  1309. wait()
  1310. end
  1311. TARDISShield:Remove()
  1312. end)()
  1313. else
  1314. if Part.Name == "Wall" or Part.Name == "Top" then
  1315. Destroy()
  1316. else
  1317. DamageHealth = DamageHealth - math.random(25, 50)
  1318. end
  1319. end
  1320. end
  1321. end)
  1322. Part.Changed:connect(function(Property)
  1323. if Property == "Parent" and Part.Parent ~= Exterior then
  1324. if math.floor(math.random(1, ((1 - (EnergyToShield * 0.999)) * 100) + 1)) == 1 and DamageHealth > 0 then
  1325. Part.Parent = Exterior
  1326. else
  1327. if Part.Name == "Wall" or Part.Name == "Top" or Part.Name == "Base" then
  1328. Destroy()
  1329. else
  1330. DamageHealth = DamageHealth - math.random(10, 100)
  1331. end
  1332. end
  1333. end
  1334. end)
  1335. Part.Touched:connect(function(Hit)
  1336. if Hit.CanCollide == false then return end
  1337. if DamageCanHit == false then return end
  1338. for i = 1, #DamageEffect do
  1339. if Hit == DamageEffect[i] then
  1340. return
  1341. end
  1342. end
  1343. local SoundId = math.random(1, 3)
  1344. local Sound = Instance.new("Sound", Part)
  1345. Sound.Name = "Hit Sound"
  1346. Sound.Volume = (Part.Velocity.x + Part.Velocity.y + Part.Velocity.z + Part.RotVelocity.x + Part.RotVelocity.y + Part.RotVelocity.z + Hit.Velocity.x + Hit.Velocity.y + Hit.Velocity.z + Hit.RotVelocity.x + Hit.RotVelocity.y + Hit.RotVelocity.z) / 200
  1347. Sound.Pitch = math.random(75, 125) / 100
  1348. if SoundId == 1 then
  1349. Sound.SoundId = "rbxasset://sounds\\metal.ogg"
  1350. elseif SoundId == 2 then
  1351. Sound.SoundId = "rbxasset://sounds\\metal2.ogg"
  1352. elseif SoundId == 3 then
  1353. Sound.SoundId = "rbxasset://sounds\\metal3.ogg"
  1354. end
  1355. wait()
  1356. Sound:Play()
  1357. coroutine.wrap(function()
  1358. wait(1)
  1359. Sound:Remove()
  1360. end)()
  1361. if Hit.Parent == nil then return end
  1362. if Hit.Parent == Exterior then return end
  1363. if Part:FindFirstChild("Weld") == nil then return end
  1364. DamageCanHit = false
  1365. local Velocity1 = {
  1366. math.abs(Part.Velocity.x),
  1367. math.abs(Part.Velocity.y),
  1368. math.abs(Part.Velocity.z)
  1369. }
  1370. local RotVelocity1 = {
  1371. math.abs(Part.RotVelocity.x),
  1372. math.abs(Part.RotVelocity.y),
  1373. math.abs(Part.RotVelocity.z)
  1374. }
  1375. local Velocity2 = {
  1376. math.abs(Hit.Velocity.x),
  1377. math.abs(Hit.Velocity.y),
  1378. math.abs(Hit.Velocity.z)
  1379. }
  1380. local RotVelocity2 = {
  1381. math.abs(Hit.RotVelocity.x),
  1382. math.abs(Hit.RotVelocity.y),
  1383. math.abs(Hit.RotVelocity.z)
  1384. }
  1385. for i = 1, #Velocity1 do
  1386. local Total = math.abs(Velocity1[i] - Velocity2[i])
  1387. if Total > 75 then
  1388. if math.floor(math.random(1, ((1 - (EnergyToShield * 0.999)) * 100) + 1)) == 1 then
  1389. local TARDISShield = Instance.new("SelectionBox", Part)
  1390. TARDISShield.Name = "TARDIS Shield"
  1391. TARDISShield.Adornee = Part
  1392. coroutine.wrap(function()
  1393. while TARDISShield.Parent ~= nil do
  1394. TARDISShield.Color = BrickColor.new(Color3.new(0, 0, math.random(100, 255) / 255))
  1395. wait()
  1396. end
  1397. end)()
  1398. coroutine.wrap(function()
  1399. for i = 0, 1, 0.1 do
  1400. TARDISShield.Transparency = i
  1401. wait()
  1402. end
  1403. TARDISShield:Remove()
  1404. end)()
  1405. else
  1406. if Total > 125 and Hit:GetMass() > 3 and Hit.Name ~= "Wall" and Hit.Name ~= "Base" and Hit.Name ~= "Top" then
  1407. Flying = false
  1408. ExteriorVelocity.maxForce = Vector3.new()
  1409. for _, Joints in pairs(Part:GetChildren()) do
  1410. if Joints:IsA("JointInstance") then
  1411. Joints:Remove()
  1412. end
  1413. end
  1414. Part.Velocity = Part.Velocity + Vector3.new(math.random(-Total / 10, Total / 10), math.random(-Total / 10, Total / 10), math.random(-Total / 10, Total / 10))
  1415. Part.RotVelocity = Part.RotVelocity + Vector3.new(math.random(-Total / 25, Total / 25), math.random(-Total / 25, Total / 25), math.random(-Total / 25, Total / 25))
  1416. elseif Total > 100 then
  1417. DamageHealth = DamageHealth - (Total / 25)
  1418. else
  1419. DamageHealth = DamageHealth - (Total / 50)
  1420. end
  1421. end
  1422. end
  1423. if Total > math.random(50, 75) then
  1424. if math.random(1, 5) == 1 then
  1425. if Hit.Parent:FindFirstChild("Humanoid") ~= nil then
  1426. local Tag = Instance.new("ObjectValue", Hit.Parent.Humanoid)
  1427. Tag.Name = "creator"
  1428. Tag.Value = FlyPlayer
  1429. coroutine.wrap(function() wait(1) Tag:Remove() end)()
  1430. end
  1431. Hit:BreakJoints()
  1432. end
  1433. end
  1434. end
  1435. for i = 1, #RotVelocity1 do
  1436. local Total = math.abs(RotVelocity1[i] - RotVelocity2[i])
  1437. if Total > 25 then
  1438. if math.floor(math.random(1, ((1 - (EnergyToShield * 0.999)) * 100) + 1)) == 1 then
  1439. local TARDISShield = Instance.new("SelectionBox", Part)
  1440. TARDISShield.Name = "TARDIS Shield"
  1441. TARDISShield.Adornee = Part
  1442. coroutine.wrap(function()
  1443. while TARDISShield.Parent ~= nil do
  1444. TARDISShield.Color = BrickColor.new(Color3.new(0, 0, math.random(100, 255) / 255))
  1445. wait()
  1446. end
  1447. end)()
  1448. coroutine.wrap(function()
  1449. for i = 0, 1, 0.1 do
  1450. TARDISShield.Transparency = i
  1451. wait()
  1452. end
  1453. TARDISShield:Remove()
  1454. end)()
  1455. else
  1456. if Total > 50 and Hit:GetMass() > 3 and Hit.Name ~= "Wall" and Hit.Name ~= "Base" and Hit.Name ~= "Top" then
  1457. Flying = false
  1458. ExteriorVelocity.maxForce = Vector3.new()
  1459. for _, Joints in pairs(Part:GetChildren()) do
  1460. if Joints:IsA("JointInstance") then
  1461. Joints:Remove()
  1462. end
  1463. end
  1464. Part.Velocity = Part.Velocity + Vector3.new(math.random(-Total / 10, Total / 10), math.random(-Total / 10, Total / 10), math.random(-Total / 10, Total / 10))
  1465. Part.RotVelocity = Part.RotVelocity + Vector3.new(math.random(-Total / 25, Total / 25), math.random(-Total / 25, Total / 25), math.random(-Total / 25, Total / 25))
  1466. elseif Total > 35 then
  1467. DamageHealth = DamageHealth - (Total / 10)
  1468. else
  1469. DamageHealth = DamageHealth - (Total / 25)
  1470. end
  1471. end
  1472. end
  1473. if Total > math.random(35, 75) then
  1474. if math.random(1, 3) == 1 then
  1475. if Hit.Parent:FindFirstChild("Humanoid") ~= nil then
  1476. local Tag = Instance.new("ObjectValue", Hit.Parent.Humanoid)
  1477. Tag.Name = "creator"
  1478. Tag.Value = FlyPlayer
  1479. coroutine.wrap(function() wait(1) Tag:Remove() end)()
  1480. end
  1481. Hit:BreakJoints()
  1482. end
  1483. end
  1484. end
  1485. wait(0.075)
  1486. DamageCanHit = true
  1487. end)
  1488. end
  1489.  
  1490. for _, Part in pairs(Interior:GetChildren()) do
  1491. Part.ChildRemoved:connect(function(Part2)
  1492. if Part2.ClassName == "Weld" and Part2.Name == "Weld" then
  1493. if Part.Name == "Wall" or Part.Name == "Top" then
  1494. Destroy()
  1495. else
  1496. DamageHealth = DamageHealth - math.random(25, 50)
  1497. end
  1498. end
  1499. end)
  1500. Part.Changed:connect(function(Property)
  1501. if Property == "Parent" then
  1502. if Part.Name == "Wall" or Part.Name == "Top" or Part.Name == "Base" then
  1503. Destroy()
  1504. else
  1505. DamageHealth = DamageHealth - math.random(50, 100)
  1506. end
  1507. end
  1508. end)
  1509. end
  1510.  
  1511. function Destroy()
  1512. coroutine.wrap(function()
  1513. wait()
  1514. if TARDIS.Parent == nil or Interior.Parent == nil or Exterior.Parent == nil then return end
  1515. if DamageHealth <= -math.huge then return end
  1516. DamageHealth = -math.huge
  1517. InteriorPosition:Remove()
  1518. InteriorGyro:Remove()
  1519. ExteriorVelocity:Remove()
  1520. ExteriorGyro:Remove()
  1521. TeleportReady = false
  1522. DoorOpen = false
  1523. DoorLocked = true
  1524. local Position = nil
  1525. if Exterior:FindFirstChild("Base") ~= nil then
  1526. Position = (Exterior.Base.CFrame * CFrame.new(0, 3, 0)).p
  1527. else
  1528. for _, Part in pairs(Exterior:GetChildren()) do
  1529. if Part:IsA("BasePart") then
  1530. Position = Part.Position
  1531. break
  1532. end
  1533. end
  1534. end
  1535. if Position == nil then return end
  1536. local function Move(Part)
  1537. Part:BreakJoints()
  1538. Part.CFrame = CFrame.new(Position) * CFrame.new(math.random(-30, 30), math.random(-30, 30), math.random(-30, 30)) * CFrame.fromEulerAnglesXYZ(math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360)))
  1539. Part.Velocity = (Part.Position - Position).unit * math.random(0, 50)
  1540. Part.RotVelocity = Vector3.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100))
  1541. end
  1542. for i = 1, #DamageEffect do
  1543. pcall(function()
  1544. DamageEffect[i].Anchored = false
  1545. Move(DamageEffect[i])
  1546. end)
  1547. DamageEffect[i] = nil
  1548. DamageEffectPart[i] = nil
  1549. end
  1550. for _, PlayerList in pairs(game:GetService("Players"):GetPlayers()) do
  1551. if PlayerList.Character ~= nil then
  1552. if PlayerList.Character:FindFirstChild("Torso") ~= nil then
  1553. if (PlayerList.Character.Torso.Position - TARDIS.Interior.Base.Position).magnitude < 250 then
  1554. for _, Part in pairs(PlayerList.Character:GetChildren()) do
  1555. if Part:IsA("BasePart") then
  1556. Move(Part)
  1557. elseif Part:IsA("Accoutrement") then
  1558. if Part:FindFirstChild("Handle") ~= nil then
  1559. Part.Parent = Workspace
  1560. Move(Part.Handle)
  1561. end
  1562. end
  1563. end
  1564. end
  1565. end
  1566. end
  1567. end
  1568. for _, Part in pairs(Exterior:GetChildren()) do
  1569. if Part.Name == "Shadow" or Part.Name == "Teleport" then
  1570. Part:Remove()
  1571. elseif Part:IsA("BasePart") then
  1572. Move(Part)
  1573. end
  1574. end
  1575. for _, Part in pairs(Interior:GetChildren()) do
  1576. if Part.Name == "Shadow" or Part.Name == "Teleport" or Part.Name == "Base" then
  1577. Part:Remove()
  1578. elseif Part:IsA("BasePart") then
  1579. Move(Part)
  1580. end
  1581. end
  1582. for _, Part in pairs(TARDIS:GetChildren()) do
  1583. if Part.Name == "TARDIS Link" then
  1584. Part:Remove()
  1585. end
  1586. end
  1587. local Sound = Instance.new("Sound", Workspace)
  1588. Sound.SoundId = "http://www.roblox.com/Asset/?id=2101159"
  1589. Sound.Volume = 1
  1590. Sound.Pitch = math.random(90, 110) / 100
  1591. Sound:Play()
  1592. local Sound = Instance.new("Sound", Workspace)
  1593. Sound.SoundId = "http://www.roblox.com/Asset/?id=3087031"
  1594. Sound.Volume = 1
  1595. Sound.Pitch = math.random(90, 110) / 100
  1596. Sound:Play()
  1597. for i = 1, math.random(5, 7) do
  1598. local ExplosionBall = Instance.new("Part", Workspace)
  1599. ExplosionBall.Name = "TARDIS Explosion Ball"
  1600. ExplosionBall.FormFactor = "Custom"
  1601. ExplosionBall.TopSurface = 0
  1602. ExplosionBall.BottomSurface = 0
  1603. ExplosionBall.Anchored = true
  1604. ExplosionBall.CanCollide = false
  1605. ExplosionBall.Size = Vector3.new(1, 1, 1)
  1606. ExplosionBall.BrickColor = BrickColor.new((function()
  1607. local Choice = math.random(1, 5)
  1608. if Choice == 1 then
  1609. return "Institutional white"
  1610. elseif Choice == 2 then
  1611. return "White"
  1612. elseif Choice == 3 then
  1613. return "Really red"
  1614. elseif Choice == 4 then
  1615. return "New Yeller"
  1616. elseif Choice == 5 then
  1617. return "Black"
  1618. end
  1619. end)())
  1620. ExplosionBall.CFrame = CFrame.new(Position)
  1621. Instance.new("SpecialMesh", ExplosionBall).MeshType = "Sphere"
  1622. coroutine.wrap(function()
  1623. for i = 0, 1, 0.005 do
  1624. ExplosionBall.Transparency = (1 - i)
  1625. ExplosionBall.Mesh.Scale = Vector3.new(i * 250, i * 250, i * 250)
  1626. ExplosionBall.CFrame = CFrame.new(Position + (Vector3.new(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) * i))
  1627. if math.random(1, 25) == 1 then
  1628. local Explosion = Instance.new("Explosion")
  1629. Explosion.Position = ExplosionBall.Position + (Vector3.new(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) * i)
  1630. Explosion.BlastPressure = 10000 * i
  1631. Explosion.BlastRadius = i * 250
  1632. Explosion.Parent = Workspace
  1633. end
  1634. wait()
  1635. end
  1636. for i = 0, 1, 0.05 do
  1637. ExplosionBall.Transparency = i
  1638. ExplosionBall.CFrame = CFrame.new(Position + (Vector3.new(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) * (1 - i)))
  1639. wait()
  1640. end
  1641. ExplosionBall:Remove()
  1642. end)()
  1643. end
  1644. end)()
  1645. coroutine.wrap(function()
  1646. wait(25)
  1647. TARDIS:Remove()
  1648. script:Remove()
  1649. end)()
  1650. end
  1651.  
  1652. function Teleport(Position)
  1653. if TeleportReady == false or DoorOpen == true then
  1654. return
  1655. end
  1656. TeleportReady = false
  1657. ExteriorGyro.maxTorque = Vector3.new(math.huge, 0, math.huge)
  1658. FlyStabalize = true
  1659. coroutine.wrap(function()
  1660. while FlyStabalize == true do
  1661. ExteriorGyro.cframe = CFrame.new(Exterior.Base.Position) * CFrame.new(0, 0, 10)
  1662. wait()
  1663. end
  1664. end)()
  1665. local BoomSound1 = Instance.new("Sound", Interior.Base)
  1666. BoomSound1.SoundId = "http://www.roblox.com/Asset/?id=11984254"
  1667. BoomSound1.Pitch = 2
  1668. BoomSound1.Volume = 1
  1669. BoomSound1:Play()
  1670. local BoomSound2 = BoomSound1:Clone()
  1671. BoomSound2.Parent = Exterior.Base
  1672. BoomSound2:Play()
  1673. wait(2)
  1674. BoomSound1:Remove()
  1675. BoomSound2:Remove()
  1676. local Wind1 = Instance.new("Sound", Exterior.Base)
  1677. Wind1.SoundId = "http://www.roblox.com/Asset/?id=18435238"
  1678. Wind1.Pitch = 0.25
  1679. Wind1.Volume = 1
  1680. Wind1:Play()
  1681. local Wind2 = Wind1:Clone()
  1682. Wind2.Parent = Interior.Base
  1683. Wind2:Play()
  1684. wait(1)
  1685. local Whoosh1 = Wind1:Clone()
  1686. Whoosh1.Parent = Interior.Base
  1687. Whoosh1.Pitch = math.random(300, 400) / 100
  1688. Whoosh1.Looped = true
  1689. Whoosh1:Play()
  1690. local Whoosh2 = Whoosh1:Clone()
  1691. Whoosh2.Parent = Exterior.Base
  1692. Whoosh2:Play()
  1693. local SoundPart = Instance.new("Part", Workspace)
  1694. SoundPart.Name = ""
  1695. SoundPart.Transparency = 1
  1696. SoundPart.TopSurface = 0
  1697. SoundPart.BottomSurface = 0
  1698. SoundPart.FormFactor = "Custom"
  1699. SoundPart.Size = Vector3.new(6, 0.2, 6)
  1700. SoundPart.Anchored = true
  1701. SoundPart.CanCollide = false
  1702. SoundPart:BreakJoints()
  1703. SoundPart.Position = Position
  1704. local Wind3 = Wind1:Clone()
  1705. Wind3.Parent = SoundPart
  1706. Wind3:Play()
  1707. local Whoosh3 = Whoosh1:Clone()
  1708. Whoosh3.Parent = SoundPart
  1709. Whoosh3:Play()
  1710. local Transparency = {}
  1711. for x, Part in pairs(Exterior:GetChildren()) do
  1712. Transparency[x] = Part.Transparency
  1713. end
  1714. local Decals = {}
  1715. for x, Part in pairs(Exterior:GetChildren()) do
  1716. if Part:FindFirstChild("Decal") ~= nil then
  1717. Decals[x] = Part.Decal.Texture
  1718. Part.Decal.Texture = ""
  1719. end
  1720. end
  1721. for i = 0, 1, (EnergyToTeleport / 75) + 0.005 do
  1722. for x, Part in pairs(Exterior:GetChildren()) do
  1723. Part.Transparency = Transparency[x] + ((1 - Transparency[x]) * i)
  1724. end
  1725. for _, Part in pairs(Interior:GetChildren()) do
  1726. if Part.Name == "Power Rod 1" then
  1727. pcall(function() Part.Weld.C1 = CFrame.new(0, (((math.sin(i * 10) + 1) / 2) * 4), 0) end)
  1728. elseif Part.Name == "Power Rod 2" then
  1729. pcall(function() Part.Weld.C1 = CFrame.new(0, -(((math.sin(i * 10) + 1) / 2) * 4), 0) end)
  1730. end
  1731. end
  1732. wait()
  1733. end
  1734. wait(math.random(0, EnergyToTeleport * 100) / 100)
  1735. for x, Part in pairs(Exterior:GetChildren()) do
  1736. Part.Velocity = Vector3.new()
  1737. Part.RotVelocity = Vector3.new()
  1738. Part.Transparency = 1
  1739. end
  1740. SoundPart.CFrame = CFrame.new(Exterior.Base.Position)
  1741. coroutine.wrap(function()
  1742. local SoundIds = {
  1743. "http://www.roblox.com/Asset/?id=13775466",
  1744. "http://www.roblox.com/Asset/?id=22968437",
  1745. "http://www.roblox.com/Asset/?id=13775494"
  1746. }
  1747. for i = 1, math.random(3, 10) do
  1748. wait(math.random(100, 2000) / 1000)
  1749. local AfterSound = Instance.new("Sound", SoundPart)
  1750. AfterSound.Pitch = math.random(2000, 3500) / 1000
  1751. AfterSound.Volume = 1
  1752. AfterSound.SoundId = SoundIds[math.random(1, #SoundIds)]
  1753. for i = 1, 0, -0.1 do
  1754. AfterSound:Play()
  1755. AfterSound.Volume = i
  1756. wait(((1 - AfterSound.Pitch / 3.5) * 0.3) + 0.05)
  1757. end
  1758. AfterSound:Remove()
  1759. end
  1760. SoundPart:Remove()
  1761. end)()
  1762. Exterior:MoveTo(Position + Vector3.new(math.random(-(1 - EnergyToTeleport) * 100, (1 - EnergyToTeleport) * 100), math.random(-(1 - EnergyToTeleport) * 100, (1 - EnergyToTeleport) * 100), math.random(-(1 - EnergyToTeleport) * 100, (1 - EnergyToTeleport) * 100)))
  1763. ExteriorOffset = Interior.Base.Position - (Exterior.Base.Position / 10)
  1764. for i = 1, 0, -((EnergyToTeleport / 25) + 0.01) do
  1765. for x, Part in pairs(Exterior:GetChildren()) do
  1766. Part.Transparency = Transparency[x] + ((1 - Transparency[x]) * i)
  1767. end
  1768. for x, Part in pairs(Interior:GetChildren()) do
  1769. if Part.Name == "Power Rod 1" then
  1770. pcall(function() Part.Weld.C1 = CFrame.new(0, (((math.sin(i * 20) + 1) / 2) * 4), 0) end)
  1771. elseif Part.Name == "Power Rod 2" then
  1772. pcall(function() Part.Weld.C1 = CFrame.new(0, -(((math.sin(i * 20) + 1) / 2) * 4), 0) end)
  1773. end
  1774. end
  1775. wait()
  1776. end
  1777. for x, Part in pairs(Exterior:GetChildren()) do
  1778. Part.Transparency = Transparency[x]
  1779. if Decals[x] ~= nil and Part:FindFirstChild("Decal") ~= nil then
  1780. Part.Decal.Texture = Decals[x]
  1781. end
  1782. end
  1783. for x, Part in pairs(Interior:GetChildren()) do
  1784. if Part.Name == "Power Rod 1" then
  1785. pcall(function() Part.Weld.C1 = CFrame.new() end)
  1786. elseif Part.Name == "Power Rod 2" then
  1787. pcall(function() Part.Weld.C1 = CFrame.new() end)
  1788. end
  1789. end
  1790. Whoosh1.Looped = false
  1791. Whoosh2.Looped = false
  1792. Whoosh3.Looped = false
  1793. wait(1.5)
  1794. Wind1:Remove()
  1795. Wind2:Remove()
  1796. Wind3:Remove()
  1797. Whoosh1:Remove()
  1798. Whoosh2:Remove()
  1799. Whoosh3:Remove()
  1800. ExteriorGyro.maxTorque = Vector3.new()
  1801. FlyStabalize = false
  1802. TeleportReady = true
  1803. end
  1804.  
  1805. -- Final stuff.
  1806.  
  1807. InteriorPosition = Instance.new("BodyPosition", Interior.Base)
  1808. InteriorPosition.D = 1500
  1809. InteriorPosition.P = 7500
  1810. InteriorPosition.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  1811. InteriorPosition.position = ExteriorOffset
  1812.  
  1813. InteriorGyro = Instance.new("BodyGyro", Interior.Base)
  1814. InteriorGyro.D = 750
  1815. InteriorGyro.P = 2500
  1816. InteriorGyro.maxTorque = Vector3.new(math.huge, math.huge, math.huge)
  1817.  
  1818. ExteriorVelocity = Instance.new("BodyVelocity", Exterior.Base)
  1819. ExteriorVelocity.P = 1500
  1820. ExteriorVelocity.maxForce = Vector3.new()
  1821. ExteriorVelocity.velocity = Vector3.new()
  1822. coroutine.wrap(function()
  1823. while ExteriorVelocity.Parent ~= nil do
  1824. if math.abs(ExteriorVelocityTarget.x - ExteriorVelocity.velocity.x) < ExteriorVelocityTargetSpeed and math.abs(ExteriorVelocityTarget.y - ExteriorVelocity.velocity.y) < ExteriorVelocityTargetSpeed and math.abs(ExteriorVelocityTarget.z - ExteriorVelocity.velocity.z) < ExteriorVelocityTargetSpeed then
  1825. ExteriorVelocity.velocity = ExteriorVelocityTarget
  1826. else
  1827. ExteriorVelocity.velocity = Vector3.new(
  1828. ExteriorVelocity.velocity.x + (function()
  1829. if ExteriorVelocityTarget.x - ExteriorVelocity.velocity.x > ExteriorVelocityTargetSpeed then
  1830. return ExteriorVelocityTargetSpeed
  1831. elseif ExteriorVelocityTarget.x - ExteriorVelocity.velocity.x < -ExteriorVelocityTargetSpeed then
  1832. return -ExteriorVelocityTargetSpeed
  1833. else
  1834. return ExteriorVelocityTarget.x - ExteriorVelocity.velocity.x
  1835. end
  1836. end)(),
  1837. ExteriorVelocity.velocity.y + (function()
  1838. if ExteriorVelocityTarget.y - ExteriorVelocity.velocity.y > ExteriorVelocityTargetSpeed then
  1839. return ExteriorVelocityTargetSpeed
  1840. elseif ExteriorVelocityTarget.y - ExteriorVelocity.velocity.y < -ExteriorVelocityTargetSpeed then
  1841. return -ExteriorVelocityTargetSpeed
  1842. else
  1843. return ExteriorVelocityTarget.y - ExteriorVelocity.velocity.y
  1844. end
  1845. end)(),
  1846. ExteriorVelocity.velocity.z + (function()
  1847. if ExteriorVelocityTarget.z - ExteriorVelocity.velocity.z > ExteriorVelocityTargetSpeed then
  1848. return ExteriorVelocityTargetSpeed
  1849. elseif ExteriorVelocityTarget.z - ExteriorVelocity.velocity.z < -ExteriorVelocityTargetSpeed then
  1850. return -ExteriorVelocityTargetSpeed
  1851. else
  1852. return ExteriorVelocityTarget.z - ExteriorVelocity.velocity.z
  1853. end
  1854. end)()
  1855. )
  1856. end
  1857. wait()
  1858. end
  1859. end)()
  1860.  
  1861. ExteriorGyro = Instance.new("BodyGyro", Exterior.Base)
  1862. ExteriorGyro.D = 500
  1863. ExteriorGyro.P = 3000
  1864. ExteriorGyro.maxTorque = Vector3.new()
  1865.  
  1866. Exterior:MoveTo(Vector3.new(0, 0, 10))
  1867. pcall(function() Exterior:MoveTo(Workspace.grgrgry21.Torso.Position + Vector3.new(0, 0, 10)) end)
  1868. Interior:MoveTo((Exterior.Base.Position / 10) + ExteriorOffset)
  1869.  
  1870. while true do
  1871. if DamageHealth <= 0 then Destroy() break end
  1872. pcall(function()
  1873. InteriorPosition.position = (Exterior.Base.Position / 10) + ExteriorOffset
  1874. InteriorGyro.cframe = Exterior.Base.CFrame * CFrame.new(-Exterior.Base.Position)
  1875. end)
  1876. pcall(function()
  1877. ExteriorVelocity.P = 1000 * ((EnergyToFly / 2) + 0.5)
  1878. end)
  1879. ExteriorVelocityTargetSpeed = 2.5 * ((EnergyToFly / 2) + 0.5)
  1880. local Seat = Interior:FindFirstChild("Teleport Seat")
  1881. if Seat ~= nil then
  1882. if Seat:FindFirstChild("SeatWeld") ~= nil and TeleportPlayer == nil then
  1883. local Part1 = Seat.SeatWeld.Part1
  1884. if Part1 ~= nil then
  1885. TeleportPlayer = game:GetService("Players"):GetPlayerFromCharacter(Part1.Parent)
  1886. if TeleportPlayer ~= nil then
  1887. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  1888. Camera.CameraSubject.Value = Exterior.Base
  1889. Camera.CameraType.Value = Enum.CameraType.Track.Value
  1890. Camera.Disabled = false
  1891. wait(0.05)
  1892. Camera.Parent = Part1.Parent
  1893. local PlayerGui = TeleportPlayer:FindFirstChild("PlayerGui")
  1894. if PlayerGui == nil then return end
  1895. local TeleportGui = Instance.new("ScreenGui", PlayerGui)
  1896. TeleportGui.Name = "TeleportGui"
  1897. local Frame = Instance.new("Frame")
  1898. Frame.Name = "Content"
  1899. Frame.Size = UDim2.new(0, 300, 0, 300)
  1900. Frame.Position = UDim2.new(0, 0, 0.5, -300 / 2)
  1901. Frame.BorderSizePixel = 1
  1902. Frame.BorderColor3 = Color3.new(0, 0, 0)
  1903. Frame.BackgroundColor3 = Color3.new(0.15, 0.15, 0.15)
  1904. Frame.Parent = TeleportGui
  1905. local TextLabel = Instance.new("TextLabel")
  1906. TextLabel.Name = "X Label"
  1907. TextLabel.Size = UDim2.new(1, -15, 0, 15)
  1908. TextLabel.Position = UDim2.new(0, 15, 0, 15)
  1909. TextLabel.BorderSizePixel = 0
  1910. TextLabel.BackgroundTransparency = 1
  1911. TextLabel.TextColor3 = Color3.new(1, 1, 1)
  1912. TextLabel.Text = "X coordinate:"
  1913. TextLabel.TextXAlignment = "Left"
  1914. TextLabel.FontSize = "Size12"
  1915. TextLabel.TextWrap = true
  1916. TextLabel.Parent = TeleportGui.Content
  1917. local TextLabel = TextLabel:Clone()
  1918. TextLabel.Name = "Y Label"
  1919. TextLabel.Position = UDim2.new(0, 15, 0, 45)
  1920. TextLabel.Text = "Y coordinate:"
  1921. TextLabel.Parent = TeleportGui.Content
  1922. local TextLabel = TextLabel:Clone()
  1923. TextLabel.Name = "Z Label"
  1924. TextLabel.Position = UDim2.new(0, 15, 0, 75)
  1925. TextLabel.Text = "Z coordinate:"
  1926. TextLabel.Parent = TeleportGui.Content
  1927. local TextBox = Instance.new("TextBox")
  1928. TextBox.Name = "X"
  1929. TextBox.ClearTextOnFocus = false
  1930. TextBox.Size = UDim2.new(1, -130, 0, 15)
  1931. TextBox.Position = UDim2.new(0, 115, 0, 15)
  1932. TextBox.BorderColor3 = Color3.new(0, 0, 0)
  1933. TextBox.BackgroundColor3 = Color3.new(1, 1, 1)
  1934. TextBox.TextColor3 = Color3.new(0, 0, 0)
  1935. TextBox.Text = "0"
  1936. TextBox.TextXAlignment = "Left"
  1937. TextBox.FontSize = "Size12"
  1938. TextBox.Parent = TeleportGui.Content
  1939. local TextBox = TextBox:Clone()
  1940. TextBox.Name = "Y"
  1941. TextBox.Position = UDim2.new(0, 115, 0, 45)
  1942. TextBox.Parent = TeleportGui.Content
  1943. local TextBox = TextBox:Clone()
  1944. TextBox.Name = "Z"
  1945. TextBox.Position = UDim2.new(0, 115, 0, 75)
  1946. TextBox.Parent = TeleportGui.Content
  1947. local Divider = Instance.new("Frame")
  1948. Divider.Name = "Divider"
  1949. Divider.Size = UDim2.new(1, -30, 0, 1)
  1950. Divider.Position = UDim2.new(0, 15, 0, 100)
  1951. Divider.BorderSizePixel = 0
  1952. Divider.BackgroundColor3 = Color3.new(1, 1, 1)
  1953. Divider.Parent = TeleportGui.Content
  1954. local TextLabel = TextLabel:Clone()
  1955. TextLabel.Name = "CX"
  1956. TextLabel.Position = UDim2.new(0, 15, 0, 110)
  1957. TextLabel.Text = "Current X coordinate: "
  1958. TextLabel.Parent = TeleportGui.Content
  1959. local TextLabel = TextLabel:Clone()
  1960. TextLabel.Name = "CY"
  1961. TextLabel.Position = UDim2.new(0, 15, 0, 140)
  1962. TextLabel.Text = "Current Y coordinate: "
  1963. TextLabel.Parent = TeleportGui.Content
  1964. local TextLabel = TextLabel:Clone()
  1965. TextLabel.Name = "CZ"
  1966. TextLabel.Position = UDim2.new(0, 15, 0, 170)
  1967. TextLabel.Text = "Current Z coordinate: "
  1968. TextLabel.Parent = TeleportGui.Content
  1969. local Divider = Divider:Clone()
  1970. Divider.Position = UDim2.new(0, 15, 0, 195)
  1971. Divider.BorderSizePixel = 0
  1972. Divider.BackgroundColor3 = Color3.new(1, 1, 1)
  1973. Divider.Parent = TeleportGui.Content
  1974. local TextButton = Instance.new("TextButton")
  1975. TextButton.Name = "Teleport"
  1976. TextButton.Size = UDim2.new(1, -30, 0, 15)
  1977. TextButton.Position = UDim2.new(0, 15, 0, 205)
  1978. TextButton.BorderColor3 = Color3.new(0, 0, 0)
  1979. TextButton.BackgroundColor3 = Color3.new(0.3, 0.3, 0.3)
  1980. TextButton.TextColor3 = Color3.new(1, 1, 1)
  1981. TextButton.Text = "Begin Teleportation"
  1982. TextButton.FontSize = "Size12"
  1983. TextButton.Parent = TeleportGui.Content
  1984. TextButton.MouseButton1Up:connect(function()
  1985. Teleport(Vector3.new(tonumber(TeleportGui.Content.X.Text), tonumber(TeleportGui.Content.Y.Text), tonumber(TeleportGui.Content.Z.Text)))
  1986. end)
  1987. coroutine.wrap(function()
  1988. wait()
  1989. while TextButton.Parent ~= nil do
  1990. if TeleportReady == false or DoorOpen == true then
  1991. TextButton.AutoButtonColor = false
  1992. TextButton.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  1993. else
  1994. TextButton.AutoButtonColor = true
  1995. TextButton.BackgroundColor3 = Color3.new(0.3, 0.3, 0.3)
  1996. end
  1997. wait(0.1)
  1998. end
  1999. end)()
  2000. local TextButton = TextButton:Clone()
  2001. TextButton.Name = "Set Inputs to Current Coordinates"
  2002. TextButton.Position = UDim2.new(0, 15, 0, 220)
  2003. TextButton.Text = "Set Inputs to Current Coordinates"
  2004. TextButton.Parent = TeleportGui.Content
  2005. TextButton.MouseButton1Up:connect(function()
  2006. TeleportGui.Content.X.Text = string.sub(Exterior.Base.Position.x, 0, 12)
  2007. TeleportGui.Content.Y.Text = string.sub(Exterior.Base.Position.y, 0, 12)
  2008. TeleportGui.Content.Z.Text = string.sub(Exterior.Base.Position.z, 0, 12)
  2009. end)
  2010. local TextButton = TextButton:Clone()
  2011. TextButton.Name = "Waypoints"
  2012. TextButton.Position = UDim2.new(0, 15, 0, 235)
  2013. TextButton.Text = "Open Waypoints Dialogue..."
  2014. TextButton.Parent = TeleportGui.Content
  2015. TextButton.MouseButton1Up:connect(function()
  2016. pcall(function() TeleportGui.Content["Players List"]:Remove() end)
  2017. pcall(function() TeleportGui.Content["Waypoints List"]:Remove() end)
  2018. local Frame = Frame:Clone()
  2019. Frame.Parent = TeleportGui.Content
  2020. Frame.Name = "Waypoints List"
  2021. Frame.Position = UDim2.new(1, 0, 0, 0)
  2022. Frame.Size = UDim2.new(1, 0, 0, 75)
  2023. for _, Part in pairs(Frame:GetChildren()) do
  2024. Part:Remove()
  2025. end
  2026. for i = 1, #TeleportWaypoints, 2 do
  2027. local TextButton = TextButton:Clone()
  2028. TextButton.Parent = Frame
  2029. TextButton.Name = TeleportWaypoints[i].. " Waypoint"
  2030. TextButton.Text = TeleportWaypoints[i]
  2031. TextButton.Size = UDim2.new(1, -45, 0, 15)
  2032. TextButton.Position = UDim2.new(0, 15, 0, Frame.Size.Y.Offset - 60)
  2033. TextButton.MouseButton1Up:connect(function()
  2034. TeleportGui.Content.X.Text = TeleportWaypoints[i + 1].x
  2035. TeleportGui.Content.Y.Text = TeleportWaypoints[i + 1].y
  2036. TeleportGui.Content.Z.Text = TeleportWaypoints[i + 1].z
  2037. end)
  2038. local TextButton = TextButton:Clone()
  2039. TextButton.Parent = Frame
  2040. TextButton.Name = TeleportWaypoints[i].. " Remove"
  2041. TextButton.Text = "X"
  2042. TextButton.Size = UDim2.new(0, 15, 0, 15)
  2043. TextButton.Position = UDim2.new(1, -30, 0, Frame.Size.Y.Offset - 60)
  2044. Frame.Size = Frame.Size + UDim2.new(0, 0, 0, 15)
  2045. TextButton.MouseButton1Up:connect(function()
  2046. for x = 1, 2 do
  2047. table.remove(TeleportWaypoints, i)
  2048. end
  2049. Frame:Remove()
  2050. end)
  2051. end
  2052. local TextButton = TextButton:Clone()
  2053. TextButton.Parent = Frame
  2054. TextButton.Name = "Create Waypoint"
  2055. TextButton.Text = "Create Waypoint"
  2056. TextButton.Size = UDim2.new(1, -30, 0, 15)
  2057. TextButton.Position = UDim2.new(0, 15, 0, Frame.Size.Y.Offset - 45)
  2058. TextButton.MouseButton1Up:connect(function()
  2059. local WaypointButton = Frame["Create Waypoint"]
  2060. WaypointButton.Parent = nil
  2061. local TextBox = TextBox:Clone()
  2062. TextBox.Parent = Frame
  2063. TextBox.Name = "Waypoint Name"
  2064. TextBox.Size = UDim2.new(1, -60, 0, 15)
  2065. TextBox.Position = WaypointButton.Position
  2066. TextBox.Text = "Waypoint Name"
  2067. local TextButton = TextButton:Clone()
  2068. TextButton.Parent = Frame
  2069. TextButton.Name = "Cancel"
  2070. TextButton.Size = UDim2.new(0, 15, 0, 15)
  2071. TextButton.Text = "X"
  2072. TextButton.Position = UDim2.new(1, -45, 0, WaypointButton.Position.Y.Offset)
  2073. TextButton.MouseButton1Up:connect(function()
  2074. Frame["Waypoint Name"]:Remove()
  2075. Frame["Cancel"]:Remove()
  2076. Frame["Save"]:Remove()
  2077. WaypointButton.Parent = Frame
  2078. end)
  2079. local TextButton = TextButton:Clone()
  2080. TextButton.Parent = Frame
  2081. TextButton.Name = "Save"
  2082. TextButton.Size = UDim2.new(0, 15, 0, 15)
  2083. TextButton.Text = ">"
  2084. TextButton.Position = UDim2.new(1, -30, 0, WaypointButton.Position.Y.Offset)
  2085. TextButton.MouseButton1Up:connect(function()
  2086. table.insert(TeleportWaypoints, TextBox.Text)
  2087. table.insert(TeleportWaypoints, Vector3.new(tonumber(string.sub(Exterior.Base.Position.x, 0, 12)), tonumber(string.sub(Exterior.Base.Position.y, 0, 12)), tonumber(string.sub(Exterior.Base.Position.z, 0, 12))))
  2088. Frame:Remove()
  2089. end)
  2090. end)
  2091. local TextButton = TextButton:Clone()
  2092. TextButton.Parent = Frame
  2093. TextButton.Name = "Close"
  2094. TextButton.Text = "Close"
  2095. TextButton.Position = UDim2.new(0, 15, 0, Frame.Size.Y.Offset - 30)
  2096. TextButton.MouseButton1Up:connect(function() Frame:Remove() end)
  2097. end)
  2098. local TextButton = TextButton:Clone()
  2099. TextButton.Name = "Players"
  2100. TextButton.Position = UDim2.new(0, 15, 0, 250)
  2101. TextButton.Text = "Open Players Dialogue..."
  2102. TextButton.Parent = TeleportGui.Content
  2103. TextButton.MouseButton1Up:connect(function()
  2104. pcall(function() TeleportGui.Content["Players List"]:Remove() end)
  2105. pcall(function() TeleportGui.Content["Waypoints List"]:Remove() end)
  2106. local Frame = Frame:Clone()
  2107. Frame.Parent = TeleportGui.Content
  2108. Frame.Name = "Players List"
  2109. Frame.Position = UDim2.new(1, 0, 0, 0)
  2110. Frame.Size = UDim2.new(1, 0, 0, 60)
  2111. for _, Part in pairs(Frame:GetChildren()) do
  2112. Part:Remove()
  2113. end
  2114. for _, PlayerList in pairs(game:GetService("Players"):GetPlayers()) do
  2115. local TextButton = TextButton:Clone()
  2116. TextButton.Parent = Frame
  2117. TextButton.Name = PlayerList.Name
  2118. TextButton.Text = PlayerList.Name
  2119. TextButton.Position = UDim2.new(0, 15, 0, Frame.Size.Y.Offset - 45)
  2120. Frame.Size = Frame.Size + UDim2.new(0, 0, 0, 15)
  2121. if (function()
  2122. if PlayerList == TeleportPlayer then return false end
  2123. if PlayerList.Character == nil then return false end
  2124. if PlayerList.Character:FindFirstChild("Torso") == nil then return false end
  2125. if (PlayerList.Character.Torso.Position - TARDIS.Interior.Base.Position).magnitude < 250 then return false end
  2126. return true
  2127. end)() == false then
  2128. TextButton.AutoButtonColor = false
  2129. TextButton.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  2130. else
  2131. TextButton.MouseButton1Up:connect(function()
  2132. pcall(function()
  2133. TeleportGui.Content.X.Text = PlayerList.Character.Torso.Position.x
  2134. TeleportGui.Content.Y.Text = PlayerList.Character.Torso.Position.y
  2135. TeleportGui.Content.Z.Text = PlayerList.Character.Torso.Position.z
  2136. end)
  2137. end)
  2138. end
  2139. end
  2140. local TextButton = TextButton:Clone()
  2141. TextButton.Parent = Frame
  2142. TextButton.Name = "Close"
  2143. TextButton.Text = "Close"
  2144. TextButton.Position = UDim2.new(0, 15, 0, Frame.Size.Y.Offset - 30)
  2145. TextButton.MouseButton1Up:connect(function() Frame:Remove() end)
  2146. end)
  2147. local TextButton = TextButton:Clone()
  2148. TextButton.Name = "Clear"
  2149. TextButton.Position = UDim2.new(0, 15, 0, 265)
  2150. TextButton.Text = "Clear Inputs"
  2151. TextButton.Parent = TeleportGui.Content
  2152. TextButton.MouseButton1Up:connect(function()
  2153. TeleportGui.Content.X.Text = 0
  2154. TeleportGui.Content.Y.Text = 0
  2155. TeleportGui.Content.Z.Text = 0
  2156. end)
  2157. coroutine.wrap(function()
  2158. local TextCX = TeleportGui.Content.CX.Text
  2159. local TextCY = TeleportGui.Content.CY.Text
  2160. local TextCZ = TeleportGui.Content.CZ.Text
  2161. while TeleportGui.Parent ~= nil do
  2162. TeleportGui.Content.CX.Text = TextCX .. string.sub(Exterior.Base.Position.x, 0, 12)
  2163. TeleportGui.Content.CY.Text = TextCY .. string.sub(Exterior.Base.Position.y, 0, 12)
  2164. TeleportGui.Content.CZ.Text = TextCZ .. string.sub(Exterior.Base.Position.z, 0, 12)
  2165. wait()
  2166. end
  2167. end)()
  2168. end
  2169. end
  2170. elseif Seat:FindFirstChild("SeatWeld") == nil and TeleportPlayer ~= nil then
  2171. if TeleportPlayer:FindFirstChild("PlayerGui") ~= nil then
  2172. if TeleportPlayer.PlayerGui:FindFirstChild("TeleportGui") ~= nil then
  2173. TeleportPlayer.PlayerGui.TeleportGui:Remove()
  2174. end
  2175. end
  2176. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2177. Camera.CameraSubject.Value = TeleportPlayer.Character.Humanoid
  2178. Camera.CameraType.Value = Enum.CameraType.Custom.Value
  2179. Camera.Disabled = false
  2180. wait(0.05)
  2181. Camera.Parent = TeleportPlayer.Character
  2182. TeleportPlayer = nil
  2183. end
  2184. end
  2185. local Seat = Interior:FindFirstChild("Radar Seat")
  2186. if Seat ~= nil then
  2187. if Seat:FindFirstChild("SeatWeld") ~= nil and RadarPlayer == nil then
  2188. local Part1 = Seat.SeatWeld.Part1
  2189. if Part1 ~= nil then
  2190. RadarPlayer = game:GetService("Players"):GetPlayerFromCharacter(Part1.Parent)
  2191. if RadarPlayer ~= nil then
  2192. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2193. Camera.CameraSubject.Value = Exterior.Base
  2194. Camera.CameraType.Value = Enum.CameraType.Track.Value
  2195. Camera.Disabled = false
  2196. wait(0.05)
  2197. Camera.Parent = Part1.Parent
  2198. local PlayerGui = RadarPlayer:FindFirstChild("PlayerGui")
  2199. if PlayerGui == nil then return end
  2200. local RadarGui = Instance.new("ScreenGui", PlayerGui)
  2201. RadarGui.Name = "RadarGui"
  2202. local ImageLabel = Instance.new("ImageLabel")
  2203. ImageLabel.Name = "Content"
  2204. ImageLabel.Image = "http://www.roblox.com/Asset/?id=19617472"
  2205. ImageLabel.Size = UDim2.new(0, 400, 0, 400)
  2206. ImageLabel.Position = UDim2.new(0, 0, 0.5, -400 / 2)
  2207. ImageLabel.BorderSizePixel = 0
  2208. ImageLabel.BackgroundColor3 = Color3.new(0.15, 0.15, 0.15)
  2209. ImageLabel.Parent = RadarGui
  2210. local TextLabel = Instance.new("TextLabel")
  2211. TextLabel.Name = "Current Coordinates"
  2212. TextLabel.Size = UDim2.new(1, 0, 0, 15)
  2213. TextLabel.Position = UDim2.new(0, 15, 1, -20)
  2214. TextLabel.BorderSizePixel = 0
  2215. TextLabel.BackgroundTransparency = 1
  2216. TextLabel.TextColor3 = Color3.new(1, 1, 1)
  2217. TextLabel.Text = "Current coordinates: "
  2218. TextLabel.TextXAlignment = "Left"
  2219. TextLabel.FontSize = "Size12"
  2220. TextLabel.Parent = ImageLabel
  2221. coroutine.wrap(function()
  2222. local Text = RadarGui.Content["Current Coordinates"].Text
  2223. local Blip = Instance.new("Frame")
  2224. Blip.Name = "Blip"
  2225. Blip.BorderColor3 = Color3.new(0, 0, 0)
  2226. Blip.BackgroundColor3 = Color3.new(0, 1, 0)
  2227. Blip.Size = UDim2.new(0, 10, 0, 10)
  2228. local BlipText = TextLabel:Clone()
  2229. BlipText.Name = "Blip Text"
  2230. BlipText.TextColor3 = Color3.new(0, 1, 0)
  2231. BlipText.Size = UDim2.new(0, 0, 0, 15)
  2232. BlipText.TextXAlignment = "Center"
  2233. while RadarGui.Parent ~= nil do
  2234. RadarGui.Content["Current Coordinates"].Text = Text.. "(" ..math.floor(Exterior.Base.Position.x).. ", " ..math.floor(Exterior.Base.Position.y).. ", " ..math.floor(Exterior.Base.Position.z).. ")"
  2235. for _, Part in pairs(RadarGui.Content:GetChildren()) do
  2236. if Part.Name == "Blip" or Part.Name == "Blip Text" then
  2237. Part:Remove()
  2238. end
  2239. end
  2240. for _, PlayerList in pairs(game:GetService("Players"):GetPlayers()) do
  2241. if PlayerList.Character ~= nil then
  2242. if PlayerList.Character:FindFirstChild("Torso") ~= nil then
  2243. local Distance = (Exterior.Base.Position - PlayerList.Character.Torso.Position)
  2244. if Distance.magnitude < RadarMaxDistance then
  2245. local NewBlip = Blip:Clone()
  2246. NewBlip.Parent = RadarGui.Content
  2247. NewBlip.Position = UDim2.new(0, (Distance.x * ((RadarGui.Content.Size.X.Offset / RadarMaxDistance) / 2)) + (RadarGui.Content.Size.X.Offset / 2) + 5, 0, (Distance.z * ((RadarGui.Content.Size.Y.Offset / RadarMaxDistance) / 2)) + (RadarGui.Content.Size.Y.Offset / 2) + 5)
  2248. local NewBlipText = BlipText:Clone()
  2249. NewBlipText.Parent = RadarGui.Content
  2250. NewBlipText.Text = PlayerList.Name
  2251. NewBlipText.Position = NewBlip.Position + UDim2.new(0, 5, 0, 15)
  2252. end
  2253. end
  2254. end
  2255. end
  2256. wait(0.1)
  2257. end
  2258. end)()
  2259. end
  2260. end
  2261. elseif Seat:FindFirstChild("SeatWeld") == nil and RadarPlayer ~= nil then
  2262. if RadarPlayer:FindFirstChild("PlayerGui") ~= nil then
  2263. if RadarPlayer.PlayerGui:FindFirstChild("RadarGui") ~= nil then
  2264. RadarPlayer.PlayerGui.RadarGui:Remove()
  2265. end
  2266. end
  2267. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2268. Camera.CameraSubject.Value = RadarPlayer.Character.Humanoid
  2269. Camera.CameraType.Value = Enum.CameraType.Custom.Value
  2270. Camera.Disabled = false
  2271. wait(0.05)
  2272. Camera.Parent = RadarPlayer.Character
  2273. RadarPlayer = nil
  2274. end
  2275. end
  2276. local Seat = Interior:FindFirstChild("Fly Seat")
  2277. if Seat ~= nil then
  2278. if Seat:FindFirstChild("SeatWeld") ~= nil and FlyPlayer == nil then
  2279. local Part1 = Seat.SeatWeld.Part1
  2280. if Part1 ~= nil then
  2281. FlyPlayer = game:GetService("Players"):GetPlayerFromCharacter(Part1.Parent)
  2282. if FlyPlayer ~= nil then
  2283. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2284. Camera.CameraSubject.Value = Exterior.Base
  2285. Camera.CameraType.Value = Enum.CameraType.Track.Value
  2286. Camera.Disabled = false
  2287. wait(0.05)
  2288. Camera.Parent = Part1.Parent
  2289. local PlayerGui = FlyPlayer:FindFirstChild("PlayerGui")
  2290. if PlayerGui == nil then return end
  2291. local FlyGui = Instance.new("ScreenGui", PlayerGui)
  2292. FlyGui.Name = "FlyGui"
  2293. local Frame = Instance.new("Frame")
  2294. Frame.Name = "Content"
  2295. Frame.Size = UDim2.new(0, 150, 0, 300)
  2296. Frame.Position = UDim2.new(0, 0, 0.5, -300 / 2)
  2297. Frame.BorderSizePixel = 1
  2298. Frame.BorderColor3 = Color3.new(0, 0, 0)
  2299. Frame.BackgroundColor3 = Color3.new(0.15, 0.15, 0.15)
  2300. Frame.Parent = FlyGui
  2301. local TextLabel = Instance.new("TextLabel")
  2302. TextLabel.Name = "Speed"
  2303. TextLabel.Size = UDim2.new(0, 95, 0, 15)
  2304. TextLabel.Position = UDim2.new(0, 0, 0, 0)
  2305. TextLabel.BorderSizePixel = 0
  2306. TextLabel.BackgroundTransparency = 1
  2307. TextLabel.TextColor3 = Color3.new(1, 1, 1)
  2308. TextLabel.Text = "Speed: "
  2309. TextLabel.TextXAlignment = "Left"
  2310. TextLabel.FontSize = "Size12"
  2311. TextLabel.Parent = FlyGui.Content
  2312. local TextLabel = TextLabel:Clone()
  2313. TextLabel.Name = "XS"
  2314. TextLabel.Size = UDim2.new(0, 50, 0, 15)
  2315. TextLabel.Position = UDim2.new(1, -50, 0, 0)
  2316. TextLabel.Text = "X: "
  2317. TextLabel.Parent = FlyGui.Content
  2318. local TextLabel = TextLabel:Clone()
  2319. TextLabel.Name = "YS"
  2320. TextLabel.Position = UDim2.new(1, -50, 0, 17)
  2321. TextLabel.Text = "Y: "
  2322. TextLabel.Parent = FlyGui.Content
  2323. local TextLabel = TextLabel:Clone()
  2324. TextLabel.Name = "ZS"
  2325. TextLabel.Position = UDim2.new(1, -50, 0, 34)
  2326. TextLabel.Text = "Z: "
  2327. TextLabel.Parent = FlyGui.Content
  2328. local TextButton = Instance.new("TextButton")
  2329. TextButton.Name = "X+"
  2330. TextButton.Size = UDim2.new(0, 50, 0, 50)
  2331. TextButton.Position = UDim2.new(0, 0, 0, 100)
  2332. TextButton.BorderColor3 = Color3.new(0, 0, 0)
  2333. TextButton.BackgroundColor3 = Color3.new(0.9, 0, 0)
  2334. TextButton.TextColor3 = Color3.new(1, 1, 1)
  2335. TextButton.Text = "X +"
  2336. TextButton.FontSize = "Size18"
  2337. TextButton.Parent = FlyGui.Content
  2338. TextButton.MouseButton1Up:connect(function()
  2339. Flying = true
  2340. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2341. ExteriorVelocityTarget = Vector3.new(FlySpeed, ExteriorVelocity.velocity.y, ExteriorVelocity.velocity.z)
  2342. end)
  2343. local TextButton = TextButton:Clone()
  2344. TextButton.Name = "X-"
  2345. TextButton.Position = UDim2.new(0, 100, 0, 100)
  2346. TextButton.Text = "X -"
  2347. TextButton.Parent = FlyGui.Content
  2348. TextButton.MouseButton1Up:connect(function()
  2349. Flying = true
  2350. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2351. ExteriorVelocityTarget = Vector3.new(-FlySpeed, ExteriorVelocity.velocity.y, ExteriorVelocity.velocity.z)
  2352. end)
  2353. local TextButton = TextButton:Clone()
  2354. TextButton.Name = "Y+"
  2355. TextButton.Position = UDim2.new(0, 100, 0, 50)
  2356. TextButton.BackgroundColor3 = Color3.new(0, 0.9, 0)
  2357. TextButton.Text = "Y +"
  2358. TextButton.Parent = FlyGui.Content
  2359. TextButton.MouseButton1Up:connect(function()
  2360. Flying = true
  2361. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2362. ExteriorVelocityTarget = Vector3.new(ExteriorVelocity.velocity.x, FlySpeed, ExteriorVelocity.velocity.z)
  2363. end)
  2364. local TextButton = TextButton:Clone()
  2365. TextButton.Name = "Y-"
  2366. TextButton.Position = UDim2.new(0, 100, 0, 150)
  2367. TextButton.Text = "Y -"
  2368. TextButton.Parent = FlyGui.Content
  2369. TextButton.MouseButton1Up:connect(function()
  2370. Flying = true
  2371. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2372. ExteriorVelocityTarget = Vector3.new(ExteriorVelocity.velocity.x, -FlySpeed, ExteriorVelocity.velocity.z)
  2373. end)
  2374. local TextButton = TextButton:Clone()
  2375. TextButton.Name = "Z+"
  2376. TextButton.Position = UDim2.new(0, 50, 0, 50)
  2377. TextButton.BackgroundColor3 = Color3.new(0, 0, 0.9)
  2378. TextButton.Text = "Z +"
  2379. TextButton.Parent = FlyGui.Content
  2380. TextButton.MouseButton1Up:connect(function()
  2381. Flying = true
  2382. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2383. ExteriorVelocityTarget = Vector3.new(ExteriorVelocity.velocity.x, ExteriorVelocity.velocity.y, FlySpeed)
  2384. end)
  2385. local TextButton = TextButton:Clone()
  2386. TextButton.Name = "Z-"
  2387. TextButton.Position = UDim2.new(0, 50, 0, 150)
  2388. TextButton.Text = "Z -"
  2389. TextButton.Parent = FlyGui.Content
  2390. TextButton.MouseButton1Up:connect(function()
  2391. Flying = true
  2392. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2393. ExteriorVelocityTarget = Vector3.new(ExteriorVelocity.velocity.x, ExteriorVelocity.velocity.y, -FlySpeed)
  2394. end)
  2395. local TextButton = TextButton:Clone()
  2396. TextButton.Name = "S+"
  2397. TextButton.Position = UDim2.new(0, 0, 0, 50)
  2398. TextButton.BackgroundColor3 = Color3.new(0.8, 0.8, 0.8)
  2399. TextButton.Text = "S +"
  2400. TextButton.Parent = FlyGui.Content
  2401. local SpeedUp = false
  2402. TextButton.MouseButton1Down:connect(function()
  2403. SpeedUp = true
  2404. FlySpeed = FlySpeed + 1
  2405. for i = 0, 0.5, wait() do
  2406. if SpeedUp == false then return end
  2407. wait()
  2408. end
  2409. while SpeedUp == true do
  2410. FlySpeed = FlySpeed + 1
  2411. wait()
  2412. end
  2413. end)
  2414. TextButton.MouseButton1Up:connect(function()
  2415. SpeedUp = false
  2416. end)
  2417. local TextButton = TextButton:Clone()
  2418. TextButton.Name = "S-"
  2419. TextButton.Position = UDim2.new(0, 0, 0, 150)
  2420. TextButton.Text = "S -"
  2421. TextButton.Parent = FlyGui.Content
  2422. local SpeedDown = false
  2423. TextButton.MouseButton1Down:connect(function()
  2424. SpeedDown = true
  2425. FlySpeed = FlySpeed - 1
  2426. for i = 0, 0.5, wait() do
  2427. if SpeedDown == false then return end
  2428. wait()
  2429. end
  2430. while SpeedDown == true do
  2431. FlySpeed = FlySpeed - 1
  2432. wait()
  2433. end
  2434. end)
  2435. TextButton.MouseButton1Up:connect(function()
  2436. SpeedDown = false
  2437. end)
  2438. local TextButton = TextButton:Clone()
  2439. TextButton.Name = "Stop"
  2440. TextButton.Position = UDim2.new(0, 50, 0, 100)
  2441. TextButton.BackgroundColor3 = Color3.new(0.3, 0.3, 0.3)
  2442. TextButton.Text = "Stop"
  2443. TextButton.Parent = FlyGui.Content
  2444. TextButton.MouseButton1Up:connect(function()
  2445. Flying = true
  2446. ExteriorVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2447. ExteriorVelocityTarget = Vector3.new()
  2448. end)
  2449. local TextButton = TextButton:Clone()
  2450. TextButton.Name = "Land"
  2451. TextButton.Size = UDim2.new(1, 0, 0, 50)
  2452. TextButton.Position = UDim2.new(0, 0, 0, 200)
  2453. TextButton.Text = "Land"
  2454. TextButton.Parent = FlyGui.Content
  2455. TextButton.MouseButton1Up:connect(function()
  2456. Flying = false
  2457. ExteriorVelocity.maxForce = Vector3.new()
  2458. ExteriorVelocityTarget = Vector3.new()
  2459. end)
  2460. local Divider = Instance.new("Frame")
  2461. Divider.Name = "Divider"
  2462. Divider.Size = UDim2.new(1, -30, 0, 2)
  2463. Divider.Position = UDim2.new(0, 15, 0, 257)
  2464. Divider.BorderSizePixel = 0
  2465. Divider.BackgroundColor3 = Color3.new(1, 1, 1)
  2466. Divider.Parent = FlyGui.Content
  2467. local TextButton = TextButton:Clone()
  2468. TextButton.Name = "Stabalize"
  2469. TextButton.Size = UDim2.new(1, -30, 0, 15)
  2470. TextButton.Position = UDim2.new(0, 15, 0, 270)
  2471. TextButton.Text = (FlyStabalize == false and "S" or "Des").. "tabalize"
  2472. TextButton.FontSize = "Size12"
  2473. TextButton.Parent = FlyGui.Content
  2474. TextButton.MouseButton1Up:connect(function()
  2475. if TeleportReady == false then return end
  2476. if FlyStabalize == false then
  2477. FlyStabalize = true
  2478. ExteriorGyro.maxTorque = Vector3.new(math.huge, 0, math.huge)
  2479. while FlyStabalize == true do
  2480. ExteriorGyro.cframe = CFrame.new(Exterior.Base.Position) * CFrame.new(0, 0, 10)
  2481. wait()
  2482. end
  2483. else
  2484. FlyStabalize = false
  2485. ExteriorGyro.maxTorque = Vector3.new()
  2486. end
  2487. end)
  2488. coroutine.wrap(function()
  2489. wait()
  2490. while TextButton.Parent ~= nil do
  2491. if TeleportReady == false then
  2492. TextButton.AutoButtonColor = false
  2493. TextButton.Text = "Please wait..."
  2494. TextButton.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  2495. else
  2496. TextButton.AutoButtonColor = true
  2497. TextButton.Text = (FlyStabalize == false and "S" or "Des").. "tabalize"
  2498. TextButton.BackgroundColor3 = Color3.new(0.3, 0.3, 0.3)
  2499. end
  2500. wait(0.1)
  2501. end
  2502. end)()
  2503. coroutine.wrap(function()
  2504. local TextSpeed = FlyGui.Content.Speed.Text
  2505. local TextXS = FlyGui.Content.XS.Text
  2506. local TextYS = FlyGui.Content.YS.Text
  2507. local TextZS = FlyGui.Content.ZS.Text
  2508. while FlyGui.Parent ~= nil do
  2509. FlyGui.Content.Speed.Text = TextSpeed .. FlySpeed
  2510. FlyGui.Content.XS.Text = TextXS .. ExteriorVelocity.velocity.x
  2511. FlyGui.Content.YS.Text = TextYS .. ExteriorVelocity.velocity.y
  2512. FlyGui.Content.ZS.Text = TextZS .. ExteriorVelocity.velocity.z
  2513. wait()
  2514. end
  2515. end)()
  2516. end
  2517. end
  2518. elseif Seat:FindFirstChild("SeatWeld") == nil and FlyPlayer ~= nil then
  2519. if FlyPlayer:FindFirstChild("PlayerGui") ~= nil then
  2520. if FlyPlayer.PlayerGui:FindFirstChild("FlyGui") ~= nil then
  2521. FlyPlayer.PlayerGui.FlyGui:Remove()
  2522. end
  2523. end
  2524. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2525. Camera.CameraSubject.Value = FlyPlayer.Character.Humanoid
  2526. Camera.CameraType.Value = Enum.CameraType.Custom.Value
  2527. Camera.Disabled = false
  2528. wait(0.05)
  2529. Camera.Parent = FlyPlayer.Character
  2530. FlyPlayer = nil
  2531. end
  2532. end
  2533. local Seat = Interior:FindFirstChild("Weapon Seat")
  2534. if Seat ~= nil then
  2535. if Seat:FindFirstChild("SeatWeld") ~= nil and WeaponPlayer == nil then
  2536. local Part1 = Seat.SeatWeld.Part1
  2537. if Part1 ~= nil then
  2538. WeaponPlayer = game:GetService("Players"):GetPlayerFromCharacter(Part1.Parent)
  2539. if WeaponPlayer ~= nil then
  2540. local Base = [=[function Break(Position, Range, Damage, BreakChance, Source, Children)
  2541. if Source == nil then Source = Workspace end
  2542. if Children == nil then Children = {} end
  2543. for _, Part in pairs(Source:GetChildren()) do
  2544. if Part:IsA("BasePart") then
  2545. if (Part.Position - Position).magnitude < Range then
  2546. table.insert(Children, Part)
  2547. local Percent = 1 - ((Part.Position - Position).magnitude / Range)
  2548. if Part.Anchored == false then
  2549. Part.Velocity = Part.Velocity + ((Part.Position - Position).unit * (Damage * Percent))
  2550. end
  2551. if BreakChance ~= nil then
  2552. if math.random(0, BreakChance * ((Part.Position - Position).magnitude / Range)) == 0 then
  2553. Part:BreakJoints()
  2554. if Part:GetMass() < Damage * 10 then
  2555. Part.Anchored = false
  2556. end
  2557. end
  2558. end
  2559. if Part.Parent:FindFirstChild("Humanoid") ~= nil then
  2560. pcall(function()
  2561. Part.Parent.Humanoid:TakeDamage(Damage * Percent)
  2562. if math.random(0, (1 - Percent) * 5) == 0 then Part.Parent.Humanoid.Sit = true end
  2563. end)
  2564. end
  2565. end
  2566. end
  2567. Break(Position, Range, Damage, BreakChance, Part, Children)
  2568. end
  2569. return Children
  2570. end
  2571. function SoundToServer(Name, SoundId, Pitch, Volume, Looped, Parent)
  2572. local NewScript = game:GetService("InsertService"):LoadAsset(54471119)["QuickScript"]
  2573. NewScript.Name = "SoundToServer"
  2574. NewScript.DynamicSource.Value = [[local Sound = Instance.new("Sound")
  2575. Sound.Name = "]] ..(Name == nil and "Sound" or Name).. [["
  2576. Sound.SoundId = "]] ..(SoundId == nil and "" or SoundId).. [["
  2577. Sound.Pitch = ]] ..(Pitch == nil and 1 or Pitch).. [[
  2578. Sound.Volume = ]] ..(Volume == nil and 1 or Volume).. [[
  2579. Sound.Looped = ]] ..(Looped == true and "true" or "false").. [[
  2580. Sound.Parent = script.Parent
  2581. Sound:Play()
  2582. script:Remove()]]
  2583. NewScript.Debug.Value = false
  2584. NewScript.Parent = Parent
  2585. end
  2586. function TouchedToServer(Function, Parent)
  2587. pcall(function() Parent.TouchConnector:Remove() end)
  2588. local NewScript = game:GetService("InsertService"):LoadAsset(54471119)["QuickScript"]
  2589. NewScript.Name = "TouchConnector"
  2590. NewScript.DynamicSource.Value = [[script.Parent.Touched:connect(function(Hit)
  2591. ]] ..Function.. [[
  2592. end)]]
  2593. NewScript.Debug.Value = false
  2594. NewScript.Parent = Parent
  2595. end
  2596. ]=]
  2597. WeaponLaser = Instance.new("HopperBin")
  2598. WeaponLaser.Name = "Laser"
  2599. game:GetService("InsertService"):LoadAsset(52060642):GetChildren()[1].Parent = WeaponLaser
  2600. local WeaponLaserScript = game:GetService("InsertService"):LoadAsset(54471119)["QuickLocalScript"]
  2601. WeaponLaserScript.Name = "Main"
  2602. WeaponLaserScript.DynamicSource.Value = Base ..[=[
  2603. local SourcePart = script.SourcePart.Value
  2604. local Button1Down = false
  2605. local Debounce = false
  2606. script.Parent.Selected:connect(function(Mouse)
  2607. Mouse.Icon = "rbxasset://textures\\GunCursor.png"
  2608. Mouse.Button1Down:connect(function()
  2609. Button1Down = true
  2610. if Debounce == true then
  2611. SoundToServer("Tick", "http://www.roblox.com/Asset/?id=14863866", 2, 1, false, SourcePart)
  2612. return
  2613. end
  2614. Mouse.Icon = "rbxasset://textures\\GunWaitCursor.png"
  2615. Debounce = true
  2616. while Button1Down == true do
  2617. if Mouse.Target == nil then
  2618. SoundToServer("Tick", "http://www.roblox.com/Asset/?id=14863866", 1, 1, false, SourcePart)
  2619. else
  2620. local Position = _G.RCS.RayCast(CFrame.new(SourcePart.Position, Mouse.Hit.p) * CFrame.new(0, 0, -5), 500, 0.5)
  2621. local Laser = Instance.new("Part", Workspace)
  2622. Laser.Name = "TARDIS Laser"
  2623. Laser.BrickColor = BrickColor.new("Bright blue")
  2624. Laser.TopSurface = 0
  2625. Laser.BottomSurface = 0
  2626. Laser.FormFactor = "Custom"
  2627. Laser.Transparency = 0.5
  2628. Laser.Size = Vector3.new((script.Power.Value * 1.5), (script.Power.Value * 1.5), (SourcePart.Position - Position).magnitude)
  2629. Laser.Anchored = true
  2630. Laser.CanCollide = false
  2631. Laser.CFrame = CFrame.new((SourcePart.Position + Position) / 2, Position)
  2632. game:GetService("Debris"):AddItem(Laser, 3)
  2633. SoundToServer("Laser", "http://www.roblox.com/Asset/?id=13775480", 2, 1, false, Laser)
  2634. local Explosion = Laser:Clone()
  2635. Explosion.Parent = Workspace
  2636. Explosion.Name = "TARDIS Laser Explosion"
  2637. Explosion.Transparency = 0
  2638. Explosion.Size = Vector3.new(1, 1, 1)
  2639. Explosion.CFrame = CFrame.new(Position)
  2640. local Mesh = Instance.new("SpecialMesh", Explosion)
  2641. Mesh.MeshType = "Sphere"
  2642. game:GetService("Debris"):AddItem(Explosion, 3)
  2643. local Glow = Explosion:Clone()
  2644. Glow.Parent = Workspace
  2645. Glow.Name = "TARDIS Laser Glow"
  2646. Glow.CFrame = CFrame.new(SourcePart.Position)
  2647. game:GetService("Debris"):AddItem(Glow, 3)
  2648. Break(Position, script.Power.Value * 20, script.Power.Value * 50, (1 - script.Power.Value) * 75 + 10)
  2649. coroutine.wrap(function()
  2650. local OldCFrame = Laser.CFrame
  2651. for i = Laser.Transparency, 1, 0.05 do
  2652. Laser.Size = Vector3.new(Laser.Size.x / 1.05, Laser.Size.y / 1.05, Laser.Size.z)
  2653. Laser.CFrame = OldCFrame
  2654. Laser.Transparency = i
  2655. Laser.Anchored = true
  2656. Laser.Velocity = Vector3.new()
  2657. Laser.RotVelocity = Vector3.new()
  2658. wait()
  2659. end
  2660. Laser:Remove()
  2661. end)()
  2662. coroutine.wrap(function()
  2663. for i = Explosion.Transparency, 1, 0.025 do
  2664. Explosion.Mesh.Scale = Explosion.Mesh.Scale + Vector3.new((1 - i) * (script.Power.Value * 2.5), (1 - i) * (script.Power.Value * 2.5), (1 - i) * (script.Power.Value * 2.5))
  2665. Explosion.Transparency = i
  2666. Explosion.Anchored = true
  2667. Explosion.Velocity = Vector3.new()
  2668. Explosion.RotVelocity = Vector3.new()
  2669. wait()
  2670. end
  2671. Explosion:Remove()
  2672. end)()
  2673. coroutine.wrap(function()
  2674. for i = Glow.Transparency, 1, 0.075 do
  2675. Glow.Mesh.Scale = Glow.Mesh.Scale + Vector3.new((1 - i) * (script.Power.Value * 1.5), (1 - i) * (script.Power.Value * 1.5), (1 - i) * (script.Power.Value * 1.5))
  2676. Glow.Transparency = i
  2677. Glow.Anchored = true
  2678. Glow.Velocity = Vector3.new()
  2679. Glow.RotVelocity = Vector3.new()
  2680. wait()
  2681. end
  2682. Glow:Remove()
  2683. end)()
  2684. end
  2685. wait((1 - script.Power.Value) * 2.25 + 0.75)
  2686. end
  2687. Mouse.Icon = "rbxasset://textures\\GunCursor.png"
  2688. Debounce = false
  2689. end)
  2690. Mouse.Button1Up:connect(function()
  2691. Button1Down = false
  2692. end)
  2693. end)
  2694. script.Parent.Deselected:connect(function()
  2695. Button1Down = false
  2696. end)]=]
  2697. Instance.new("ObjectValue", WeaponLaserScript)
  2698. WeaponLaserScript.Value.Value = Exterior.Light
  2699. WeaponLaserScript.Value.Name = "SourcePart"
  2700. Instance.new("NumberValue", WeaponLaserScript)
  2701. WeaponLaserScript.Value.Value = 1
  2702. WeaponLaserScript.Value.Name = "Power"
  2703. WeaponLaserScript.Parent = WeaponLaser
  2704. WeaponLaser.Parent = WeaponPlayer.Backpack
  2705. wait(0.05)
  2706. WeaponBomb = Instance.new("HopperBin", WeaponPlayer.Backpack)
  2707. WeaponBomb.Name = "Bomb"
  2708. local WeaponBombScript = game:GetService("InsertService"):LoadAsset(54471119)["QuickLocalScript"]
  2709. WeaponBombScript.Name = "Main"
  2710. WeaponBombScript.DynamicSource.Value = Base ..[=[
  2711. local SourcePart = script.SourcePart.Value
  2712. local Button1Down = false
  2713. local Debounce = false
  2714. script.Parent.Selected:connect(function(Mouse)
  2715. Mouse.Icon = "rbxasset://textures\\GunCursor.png"
  2716. Mouse.Button1Down:connect(function()
  2717. Button1Down = true
  2718. if Debounce == true then
  2719. SoundToServer("Tick", "http://www.roblox.com/Asset/?id=14863866", 2, 1, false, SourcePart)
  2720. return
  2721. end
  2722. Mouse.Icon = "rbxasset://textures\\GunWaitCursor.png"
  2723. Debounce = true
  2724. while Button1Down == true do
  2725. local Bomb = Instance.new("Part", Workspace)
  2726. Bomb.Name = "TARDIS Bomb"
  2727. Bomb.BrickColor = BrickColor.new("Bright blue")
  2728. Bomb.TopSurface = 0
  2729. Bomb.BottomSurface = 0
  2730. Bomb.FormFactor = "Custom"
  2731. Bomb.Transparency = 0.5
  2732. Bomb.Size = Vector3.new(1, 1, 1) * ((script.Power.Value * 5) + 1)
  2733. Bomb.CFrame = SourcePart.CFrame * CFrame.new(0, (-script.Power.Value * 2.75) - 1, 0)
  2734. local Mesh = Instance.new("SpecialMesh", Bomb)
  2735. Mesh.MeshType = "Sphere"
  2736. game:GetService("Debris"):AddItem(Bomb, 10)
  2737. local BodyVelocity = Instance.new("BodyVelocity", Bomb)
  2738. BodyVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2739. BodyVelocity.velocity = Vector3.new(math.random(-10, 10), math.random(-500, -250), math.random(-10, 10))
  2740. local Glow = Bomb:Clone()
  2741. Glow.Parent = Workspace
  2742. Glow.Name = "TARDIS Bomb Glow"
  2743. Glow.Size = Vector3.new(1, 1, 1)
  2744. Glow.Anchored = true
  2745. Glow.CanCollide = false
  2746. Glow.CFrame = CFrame.new(SourcePart.Position)
  2747. game:GetService("Debris"):AddItem(Glow, 3)
  2748. coroutine.wrap(function()
  2749. for i = 1, Bomb.Transparency, -0.075 do
  2750. Bomb.Transparency = i
  2751. wait()
  2752. end
  2753. end)()
  2754. coroutine.wrap(function()
  2755. for i = Glow.Transparency, 1, 0.075 do
  2756. Glow.Mesh.Scale = Glow.Mesh.Scale + (Vector3.new(1, 1, 1) * ((1 - i) * (script.Power.Value * 5) + 2))
  2757. Glow.Transparency = i
  2758. Glow.Anchored = true
  2759. Glow.Velocity = Vector3.new()
  2760. Glow.RotVelocity = Vector3.new()
  2761. wait()
  2762. end
  2763. Glow:Remove()
  2764. end)()
  2765. SoundToServer("Bomb", "http://www.roblox.com/Asset/?id=13775480", 0.25, 1, false, Bomb)
  2766. coroutine.wrap(function()
  2767. wait(0.25)
  2768. TouchedToServer([[
  2769. script.Parent.Parent = nil
  2770. local Explosion = Instance.new("Part", Workspace)
  2771. Explosion.Name = "TARDIS Bomb Explosion"
  2772. Explosion.BrickColor = BrickColor.new("Bright blue")
  2773. Explosion.TopSurface = 0
  2774. Explosion.BottomSurface = 0
  2775. Explosion.FormFactor = "Custom"
  2776. Explosion.Size = Vector3.new(1, 1, 1)
  2777. Explosion.Anchored = true
  2778. Explosion.CanCollide = false
  2779. Explosion.CFrame = CFrame.new(script.Parent.Position)
  2780. local Mesh = Instance.new("SpecialMesh", Explosion)
  2781. Mesh.MeshType = "Sphere"
  2782. Mesh.Scale = Vector3.new(10, 10, 10)
  2783. game:GetService("Debris"):AddItem(Explosion, 3)
  2784. local Sound = Instance.new("Sound", Explosion)
  2785. Sound.Name = "TARDIS Bomb Sound"
  2786. Sound.SoundId = "http://www.roblox.com/Asset/?id=2101159"
  2787. Sound.Volume = 1
  2788. Sound.Pitch = ((1 - script.Power.Value) * 3) + 2
  2789. Sound:Play()
  2790. Break(script.Parent.Position, script.Power.Value * 50, script.Power.Value * 150, (1 - script.Power.Value) * 25 + 1)
  2791. for i = Explosion.Transparency, 1, 0.025 do
  2792. Explosion.Mesh.Scale = Explosion.Mesh.Scale + (Vector3.new(1, 1, 1) * ((1 - i) * (script.Power.Value * 10) + 2))
  2793. Explosion.Transparency = i
  2794. Explosion.Anchored = true
  2795. Explosion.Velocity = Vector3.new()
  2796. Explosion.RotVelocity = Vector3.new()
  2797. wait()
  2798. end
  2799. Explosion:Remove()
  2800. ]], Bomb)
  2801. end)()
  2802. wait((1 - script.Power.Value) * 5 + 1)
  2803. end
  2804. Mouse.Icon = "rbxasset://textures\\GunCursor.png"
  2805. Debounce = false
  2806. end)
  2807. Mouse.Button1Up:connect(function()
  2808. Button1Down = false
  2809. end)
  2810. end)
  2811. script.Parent.Deselected:connect(function()
  2812. Button1Down = false
  2813. end)]=]
  2814. Instance.new("ObjectValue", WeaponBombScript)
  2815. WeaponBombScript.Value.Value = Exterior.Base
  2816. WeaponBombScript.Value.Name = "SourcePart"
  2817. Instance.new("NumberValue", WeaponBombScript)
  2818. WeaponBombScript.Value.Value = 1
  2819. WeaponBombScript.Value.Name = "Power"
  2820. WeaponBombScript.Parent = WeaponBomb
  2821. WeaponBomb.Parent = WeaponPlayer.Backpack
  2822. coroutine.wrap(function()
  2823. while WeaponPlayer ~= nil do
  2824. if WeaponLaser:FindFirstChild("Main") == nil then
  2825. WeaponLaser:Remove()
  2826. else
  2827. if WeaponLaser.Main:FindFirstChild("Power") ~= nil then
  2828. WeaponLaser.Main.Power.Value = EnergyToWeapon
  2829. else
  2830. WeaponLaser:Remove()
  2831. end
  2832. end
  2833. if WeaponBomb:FindFirstChild("Main") == nil then
  2834. WeaponBomb:Remove()
  2835. else
  2836. if WeaponBomb.Main:FindFirstChild("Power") ~= nil then
  2837. WeaponBomb.Main.Power.Value = EnergyToWeapon
  2838. else
  2839. WeaponBomb:Remove()
  2840. end
  2841. end
  2842. if Exterior:FindFirstChild("Light") == nil then
  2843. WeaponLaser:Remove()
  2844. else
  2845. if Exterior.Light:FindFirstChild("Weld") == nil then
  2846. WeaponLaser:Remove()
  2847. end
  2848. end
  2849. if Exterior:FindFirstChild("Base") == nil then
  2850. WeaponBomb:Remove()
  2851. end
  2852. wait()
  2853. end
  2854. end)()
  2855. wait(0.05)
  2856. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2857. Camera.CameraSubject.Value = Exterior.Base
  2858. Camera.CameraType.Value = Enum.CameraType.Track.Value
  2859. Camera.Disabled = false
  2860. wait(0.05)
  2861. Camera.Parent = Part1.Parent
  2862. end
  2863. end
  2864. elseif Seat:FindFirstChild("SeatWeld") == nil and WeaponPlayer ~= nil then
  2865. WeaponLaser.Parent = nil
  2866. WeaponBomb.Parent = nil
  2867. local Camera = game:GetService("InsertService"):LoadAsset(49712909).Camera
  2868. Camera.CameraSubject.Value = WeaponPlayer.Character.Humanoid
  2869. Camera.CameraType.Value = Enum.CameraType.Custom.Value
  2870. Camera.Disabled = false
  2871. wait(0.05)
  2872. Camera.Parent = WeaponPlayer.Character
  2873. WeaponPlayer = nil
  2874. end
  2875. end
  2876. local Seat = Interior:FindFirstChild("Energy Seat")
  2877. if Seat ~= nil then
  2878. if Seat:FindFirstChild("SeatWeld") ~= nil and EnergyPlayer == nil then
  2879. local Part1 = Seat.SeatWeld.Part1
  2880. if Part1 ~= nil then
  2881. EnergyPlayer = game:GetService("Players"):GetPlayerFromCharacter(Part1.Parent)
  2882. if EnergyPlayer ~= nil then
  2883. local PlayerGui = EnergyPlayer:FindFirstChild("PlayerGui")
  2884. if PlayerGui == nil then return end
  2885. local EnergyGui = Instance.new("ScreenGui", PlayerGui)
  2886. EnergyGui.Name = "EnergyGui"
  2887. local Frame = Instance.new("Frame")
  2888. Frame.Name = "Content"
  2889. Frame.Size = UDim2.new(0, 500, 0, 550)
  2890. --Frame.Position = UDim2.new(0.5, -500 / 2, 0.5, -500 / 2)
  2891. Frame.Position = UDim2.new(0, 0, 0.5, -500 / 2)
  2892. Frame.BorderSizePixel = 1
  2893. Frame.BorderColor3 = Color3.new(0, 0, 0)
  2894. Frame.BackgroundColor3 = Color3.new(0.15, 0.15, 0.15)
  2895. Frame.Parent = EnergyGui
  2896. local TextLabel = Instance.new("TextLabel")
  2897. TextLabel.Name = "Energy to Weapons"
  2898. TextLabel.Size = UDim2.new(1, -60, 0, 30)
  2899. TextLabel.Position = UDim2.new(0, 30, 0, 10)
  2900. TextLabel.BorderSizePixel = 0
  2901. TextLabel.BackgroundTransparency = 1
  2902. TextLabel.TextColor3 = Color3.new(1, 1, 1)
  2903. TextLabel.Text = "Energy to Weapons"
  2904. TextLabel.TextXAlignment = "Left"
  2905. TextLabel.FontSize = "Size14"
  2906. TextLabel.Parent = Frame
  2907. local EnergyToWeaponSlider1 = Instance.new("TextButton")
  2908. EnergyToWeaponSlider1.Name = "Energy to Weapons Slider BG"
  2909. EnergyToWeaponSlider1.AutoButtonColor = false
  2910. EnergyToWeaponSlider1.Text = ""
  2911. EnergyToWeaponSlider1.Size = UDim2.new(1, -30, 0, 50)
  2912. EnergyToWeaponSlider1.Position = UDim2.new(0, 15, 0, 50)
  2913. EnergyToWeaponSlider1.BorderSizePixel = 1
  2914. EnergyToWeaponSlider1.BorderColor3 = Color3.new(0, 0, 0)
  2915. EnergyToWeaponSlider1.BackgroundColor3 = Color3.new(0.3, 0.3, 0.3)
  2916. EnergyToWeaponSlider1.Parent = Frame
  2917. local EnergyToWeaponSlider2 = EnergyToWeaponSlider1:Clone()
  2918. EnergyToWeaponSlider2.Active = false
  2919. EnergyToWeaponSlider2.Name = "Energy to Weapons Slider"
  2920. EnergyToWeaponSlider2.Size = UDim2.new(EnergyToWeapon, -2, 1, -2)
  2921. EnergyToWeaponSlider2.Position = UDim2.new(0, 1, 0, 1)
  2922. EnergyToWeaponSlider2.BorderSizePixel = 0
  2923. EnergyToWeaponSlider2.BackgroundColor3 = Color3.new(EnergyToWeapon, 0, 0)
  2924. EnergyToWeaponSlider2.Parent = EnergyToWeaponSlider1
  2925. local EnergyToWeaponSliderDown = false
  2926. EnergyToWeaponSlider1.MouseButton1Down:connect(function() EnergyToWeaponSliderDown = true end)
  2927. EnergyToWeaponSlider1.MouseMoved:connect(function(x, y)
  2928. if EnergyToWeaponSliderDown == true then
  2929. EnergyToWeapon = (x - EnergyToWeaponSlider1.AbsolutePosition.x) / EnergyToWeaponSlider1.AbsoluteSize.x
  2930. end
  2931. end)
  2932. EnergyToWeaponSlider1.MouseButton1Up:connect(function() EnergyToWeaponSliderDown = false end)
  2933. EnergyToWeaponSlider1.MouseLeave:connect(function() EnergyToWeaponSliderDown = false end)
  2934. EnergyToWeaponSlider2.MouseButton1Down:connect(function() EnergyToWeaponSliderDown = true end)
  2935. EnergyToWeaponSlider2.MouseButton1Up:connect(function() EnergyToWeaponSliderDown = false end)
  2936. coroutine.wrap(function()
  2937. while true do
  2938. EnergyToWeaponSlider2.Size = UDim2.new(EnergyToWeapon, EnergyToWeaponSlider2.Size.X.Offset, EnergyToWeaponSlider2.Size.Y.Scale, EnergyToWeaponSlider2.Size.Y.Offset)
  2939. EnergyToWeaponSlider2.BackgroundColor3 = Color3.new(EnergyToWeapon, 0, 0)
  2940. wait()
  2941. end
  2942. end)()
  2943.  
  2944. local TextLabel = TextLabel:Clone()
  2945. TextLabel.Name = "Energy to Shields"
  2946. TextLabel.Position = UDim2.new(0, 30, 0, 110)
  2947. TextLabel.Text = "Energy to Shields"
  2948. TextLabel.Parent = Frame
  2949. local EnergyToShieldSlider1 = EnergyToWeaponSlider1:Clone()
  2950. EnergyToShieldSlider1.Name = "Energy to Shields Slider BG"
  2951. EnergyToShieldSlider1.Position = UDim2.new(0, 15, 0, 150)
  2952. EnergyToShieldSlider1.Parent = Frame
  2953. local EnergyToShieldSlider2 = EnergyToShieldSlider1["Energy to Weapons Slider"]
  2954. EnergyToShieldSlider2.Active = false
  2955. EnergyToShieldSlider2.Name = "Energy to Shields Slider"
  2956. EnergyToShieldSlider2.Size = UDim2.new(EnergyToShield, -2, 1, -2)
  2957. EnergyToShieldSlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToShield)
  2958. EnergyToShieldSlider2.Parent = EnergyToShieldSlider1
  2959. local EnergyToShieldSliderDown = false
  2960. EnergyToShieldSlider1.MouseButton1Down:connect(function() EnergyToShieldSliderDown = true end)
  2961. EnergyToShieldSlider1.MouseMoved:connect(function(x, y)
  2962. if EnergyToShieldSliderDown == true then
  2963. EnergyToShield = (x - EnergyToShieldSlider1.AbsolutePosition.x) / EnergyToShieldSlider1.AbsoluteSize.x
  2964. end
  2965. end)
  2966. EnergyToShieldSlider1.MouseButton1Up:connect(function() EnergyToShieldSliderDown = false end)
  2967. EnergyToShieldSlider1.MouseLeave:connect(function() EnergyToShieldSliderDown = false end)
  2968. EnergyToShieldSlider2.MouseButton1Down:connect(function() EnergyToShieldSliderDown = true end)
  2969. EnergyToShieldSlider2.MouseButton1Up:connect(function() EnergyToShieldSliderDown = false end)
  2970. coroutine.wrap(function()
  2971. while true do
  2972. EnergyToShieldSlider2.Size = UDim2.new(EnergyToShield, EnergyToShieldSlider2.Size.X.Offset, EnergyToShieldSlider2.Size.Y.Scale, EnergyToShieldSlider2.Size.Y.Offset)
  2973. EnergyToShieldSlider2.BackgroundColor3 = Color3.new(EnergyToShield, 0, EnergyToShield)
  2974. wait()
  2975. end
  2976. end)()
  2977.  
  2978. local TextLabel = TextLabel:Clone()
  2979. TextLabel.Name = "Energy to Fly"
  2980. TextLabel.Position = UDim2.new(0, 30, 0, 210)
  2981. TextLabel.Text = "Energy to Thrusters"
  2982. TextLabel.Parent = Frame
  2983. local EnergyToFlySlider1 = EnergyToWeaponSlider1:Clone()
  2984. EnergyToFlySlider1.Name = "Energy to Fly Slider BG"
  2985. EnergyToFlySlider1.Position = UDim2.new(0, 15, 0, 250)
  2986. EnergyToFlySlider1.Parent = Frame
  2987. local EnergyToFlySlider2 = EnergyToFlySlider1["Energy to Weapons Slider"]
  2988. EnergyToFlySlider2.Active = false
  2989. EnergyToFlySlider2.Name = "Energy to Fly Slider"
  2990. EnergyToFlySlider2.Size = UDim2.new(EnergyToShield, -2, 1, -2)
  2991. EnergyToFlySlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToShield)
  2992. EnergyToFlySlider2.Parent = EnergyToFlySlider1
  2993. local EnergyToFlySliderDown = false
  2994. EnergyToFlySlider1.MouseButton1Down:connect(function() EnergyToFlySliderDown = true end)
  2995. EnergyToFlySlider1.MouseMoved:connect(function(x, y)
  2996. if EnergyToFlySliderDown == true then
  2997. EnergyToFly = (x - EnergyToFlySlider1.AbsolutePosition.x) / EnergyToFlySlider1.AbsoluteSize.x
  2998. end
  2999. end)
  3000. EnergyToFlySlider1.MouseButton1Up:connect(function() EnergyToFlySliderDown = false end)
  3001. EnergyToFlySlider1.MouseLeave:connect(function() EnergyToFlySliderDown = false end)
  3002. EnergyToFlySlider2.MouseButton1Down:connect(function() EnergyToFlySliderDown = true end)
  3003. EnergyToFlySlider2.MouseButton1Up:connect(function() EnergyToFlySliderDown = false end)
  3004. coroutine.wrap(function()
  3005. while true do
  3006. EnergyToFlySlider2.Size = UDim2.new(EnergyToFly, EnergyToFlySlider2.Size.X.Offset, EnergyToFlySlider2.Size.Y.Scale, EnergyToFlySlider2.Size.Y.Offset)
  3007. EnergyToFlySlider2.BackgroundColor3 = Color3.new(EnergyToFly, EnergyToFly, EnergyToFly)
  3008. wait()
  3009. end
  3010. end)()
  3011.  
  3012. local TextLabel = TextLabel:Clone()
  3013. TextLabel.Name = "Energy to Teleport"
  3014. TextLabel.Position = UDim2.new(0, 30, 0, 310)
  3015. TextLabel.Text = "Energy to Teleportation Matrix"
  3016. TextLabel.Parent = Frame
  3017. local EnergyToTeleportSlider1 = EnergyToWeaponSlider1:Clone()
  3018. EnergyToTeleportSlider1.Name = "Energy to Fly Slider BG"
  3019. EnergyToTeleportSlider1.Position = UDim2.new(0, 15, 0, 350)
  3020. EnergyToTeleportSlider1.Parent = Frame
  3021. local EnergyToTeleportSlider2 = EnergyToTeleportSlider1["Energy to Weapons Slider"]
  3022. EnergyToTeleportSlider2.Active = false
  3023. EnergyToTeleportSlider2.Name = "Energy to Fly Slider"
  3024. EnergyToTeleportSlider2.Size = UDim2.new(EnergyToShield, -2, 1, -2)
  3025. EnergyToTeleportSlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToShield)
  3026. EnergyToTeleportSlider2.Parent = EnergyToTeleportSlider1
  3027. local EnergyToTeleportSliderDown = false
  3028. EnergyToTeleportSlider1.MouseButton1Down:connect(function() EnergyToTeleportSliderDown = true end)
  3029. EnergyToTeleportSlider1.MouseMoved:connect(function(x, y)
  3030. if EnergyToTeleportSliderDown == true then
  3031. EnergyToTeleport = (x - EnergyToTeleportSlider1.AbsolutePosition.x) / EnergyToTeleportSlider1.AbsoluteSize.x
  3032. end
  3033. end)
  3034. EnergyToTeleportSlider1.MouseButton1Up:connect(function() EnergyToTeleportSliderDown = false end)
  3035. EnergyToTeleportSlider1.MouseLeave:connect(function() EnergyToTeleportSliderDown = false end)
  3036. EnergyToTeleportSlider2.MouseButton1Down:connect(function() EnergyToTeleportSliderDown = true end)
  3037. EnergyToTeleportSlider2.MouseButton1Up:connect(function() EnergyToTeleportSliderDown = false end)
  3038. coroutine.wrap(function()
  3039. while true do
  3040. EnergyToTeleportSlider2.Size = UDim2.new(EnergyToTeleport, EnergyToTeleportSlider2.Size.X.Offset, EnergyToTeleportSlider2.Size.Y.Scale, EnergyToTeleportSlider2.Size.Y.Offset)
  3041. EnergyToTeleportSlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToTeleport)
  3042. wait()
  3043. end
  3044. end)()
  3045.  
  3046. local TextLabel = TextLabel:Clone()
  3047. TextLabel.Name = "Energy to Repair"
  3048. TextLabel.Position = UDim2.new(0, 30, 0, 410)
  3049. TextLabel.Text = "Energy to Repair Functions"
  3050. TextLabel.Parent = Frame
  3051. local EnergyToRepairSlider1 = EnergyToWeaponSlider1:Clone()
  3052. EnergyToRepairSlider1.Name = "Energy to Fly Slider BG"
  3053. EnergyToRepairSlider1.Position = UDim2.new(0, 15, 0, 450)
  3054. EnergyToRepairSlider1.Parent = Frame
  3055. local EnergyToRepairSlider2 = EnergyToRepairSlider1["Energy to Weapons Slider"]
  3056. EnergyToRepairSlider2.Active = false
  3057. EnergyToRepairSlider2.Name = "Energy to Fly Slider"
  3058. EnergyToRepairSlider2.Size = UDim2.new(EnergyToShield, -2, 1, -2)
  3059. EnergyToRepairSlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToShield)
  3060. EnergyToRepairSlider2.Parent = EnergyToRepairSlider1
  3061. local EnergyToRepairSliderDown = false
  3062. EnergyToRepairSlider1.MouseButton1Down:connect(function() EnergyToRepairSliderDown = true end)
  3063. EnergyToRepairSlider1.MouseMoved:connect(function(x, y)
  3064. if EnergyToRepairSliderDown == true then
  3065. EnergyToRepair = (x - EnergyToRepairSlider1.AbsolutePosition.x) / EnergyToRepairSlider1.AbsoluteSize.x
  3066. end
  3067. end)
  3068. EnergyToRepairSlider1.MouseButton1Up:connect(function() EnergyToRepairSliderDown = false end)
  3069. EnergyToRepairSlider1.MouseLeave:connect(function() EnergyToRepairSliderDown = false end)
  3070. EnergyToRepairSlider2.MouseButton1Down:connect(function() EnergyToRepairSliderDown = true end)
  3071. EnergyToRepairSlider2.MouseButton1Up:connect(function() EnergyToRepairSliderDown = false end)
  3072. coroutine.wrap(function()
  3073. while true do
  3074. EnergyToRepairSlider2.Size = UDim2.new(EnergyToRepair, EnergyToRepairSlider2.Size.X.Offset, EnergyToRepairSlider2.Size.Y.Scale, EnergyToRepairSlider2.Size.Y.Offset)
  3075. EnergyToRepairSlider2.BackgroundColor3 = Color3.new(0, 0, EnergyToRepair)
  3076. wait()
  3077. end
  3078. end)()
  3079.  
  3080. local TextLabel = TextLabel:Clone()
  3081. TextLabel.Name = "Energy Usage"
  3082. TextLabel.Size = UDim2.new(1, -60, 0, 30)
  3083. TextLabel.Position = UDim2.new(0, 30, 1, -40)
  3084. TextLabel.BorderSizePixel = 0
  3085. TextLabel.BackgroundTransparency = 1
  3086. TextLabel.TextColor3 = Color3.new(1, 1, 1)
  3087. TextLabel.Text = "Energy used: "
  3088. TextLabel.TextXAlignment = "Left"
  3089. TextLabel.FontSize = "Size14"
  3090. TextLabel.Parent = Frame
  3091. coroutine.wrap(function()
  3092. local Prefix = TextLabel.Text
  3093. while true do
  3094. while EnergyToWeapon + EnergyToShield + EnergyToFly + EnergyToTeleport + EnergyToRepair > EnergyMax do
  3095. if EnergyToWeaponSliderDown ~= true then EnergyToWeapon = EnergyToWeapon - 0.001 end
  3096. if EnergyToShieldSliderDown ~= true then EnergyToShield = EnergyToShield - 0.001 end
  3097. if EnergyToFlySliderDown ~= true then EnergyToFly = EnergyToFly - 0.001 end
  3098. if EnergyToTeleportSliderDown ~= true then EnergyToTeleport = EnergyToTeleport - 0.001 end
  3099. if EnergyToRepairSliderDown ~= true then EnergyToRepair = EnergyToRepair - 0.001 end
  3100. end
  3101.  
  3102. if EnergyToWeapon > 1 then EnergyToWeapon = 1 end
  3103. if EnergyToShield > 1 then EnergyToShield = 1 end
  3104. if EnergyToFly > 1 then EnergyToFly = 1 end
  3105. if EnergyToTeleport > 1 then EnergyToTeleport = 1 end
  3106. if EnergyToRepair > 1 then EnergyToRepair = 1 end
  3107.  
  3108. if EnergyToWeapon < 0 then EnergyToWeapon = 0 end
  3109. if EnergyToShield < 0 then EnergyToShield = 0 end
  3110. if EnergyToFly < 0 then EnergyToFly = 0 end
  3111. if EnergyToTeleport < 0 then EnergyToTeleport = 0 end
  3112. if EnergyToRepair < 0 then EnergyToRepair = 0 end
  3113.  
  3114. TextLabel.Text = Prefix..tostring(math.ceil(((EnergyToWeapon + EnergyToShield + EnergyToFly + EnergyToTeleport + EnergyToRepair) * 100) / EnergyMax)).. "%"
  3115. wait()
  3116. end
  3117. end)()
  3118. end
  3119. end
  3120. elseif Seat:FindFirstChild("SeatWeld") == nil and EnergyPlayer ~= nil then
  3121. if EnergyPlayer:FindFirstChild("PlayerGui") ~= nil then
  3122. if EnergyPlayer.PlayerGui:FindFirstChild("EnergyGui") ~= nil then
  3123. EnergyPlayer.PlayerGui.EnergyGui:Remove()
  3124. end
  3125. end
  3126. EnergyPlayer = nil
  3127. end
  3128. end
  3129. if DamageHealth <= DamageMaxHealth / 10 then
  3130. pcall(function() if DamageEffect[1].Parent == nil then DamageEffect[1] = nil end end)
  3131. if DamageEffect[1] == nil then
  3132. DamageEffect[1] = DamageEffectBase:Clone()
  3133. DamageEffect[1].Parent = Exterior
  3134. DamageEffect[1].Fire.Enabled = true
  3135. DamageEffect[1].Fire.Heat = 10
  3136. DamageEffect[1].Fire.Size = 10
  3137. DamageEffect[1].Smoke.Enabled = true
  3138. DamageEffect[1].Smoke.RiseVelocity = 5
  3139. DamageEffect[1].Smoke.Size = 8
  3140. DamageEffect[1].Smoke.Color = Color3.new(0.3, 0.3, 0.3)
  3141. DamageEffect[1]:BreakJoints()
  3142. end
  3143. while DamageEffectPart[1] == nil do
  3144. local Choice = math.random(2, #Exterior:GetChildren())
  3145. for i, Part in pairs(Exterior:GetChildren()) do
  3146. if i == Choice and Part:FindFirstChild("Weld") ~= nil then
  3147. DamageEffectPart[1] = Part
  3148. end
  3149. end
  3150. end
  3151. DamageEffect[1].CFrame = CFrame.new(DamageEffectPart[1].Position)
  3152. else
  3153. pcall(function() DamageEffect[1]:Remove() end)
  3154. pcall(function() DamageEffectPart[1] = nil end)
  3155. end
  3156. if DamageHealth <= DamageMaxHealth / 5 then
  3157. pcall(function() if DamageEffect[2].Parent == nil then DamageEffect[2] = nil end end)
  3158. if DamageEffect[2] == nil then
  3159. DamageEffect[2] = DamageEffectBase:Clone()
  3160. DamageEffect[2].Parent = Exterior
  3161. DamageEffect[2].Fire.Enabled = true
  3162. DamageEffect[2].Fire.Heat = 10
  3163. DamageEffect[2].Fire.Size = 10
  3164. DamageEffect[2].Smoke.Enabled = true
  3165. DamageEffect[2].Smoke.RiseVelocity = 5
  3166. DamageEffect[2].Smoke.Size = 8
  3167. DamageEffect[2].Smoke.Color = Color3.new(0.3, 0.3, 0.3)
  3168. DamageEffect[2]:BreakJoints()
  3169. end
  3170. while DamageEffectPart[2] == nil do
  3171. local Choice = math.random(2, #Exterior:GetChildren())
  3172. for i, Part in pairs(Exterior:GetChildren()) do
  3173. if i == Choice and Part:FindFirstChild("Weld") ~= nil then
  3174. DamageEffectPart[2] = Part
  3175. end
  3176. end
  3177. end
  3178. DamageEffect[2].CFrame = CFrame.new(DamageEffectPart[2].Position)
  3179. else
  3180. pcall(function() DamageEffect[1]:Remove() end)
  3181. pcall(function() DamageEffectPart[2] = nil end)
  3182. end
  3183. if DamageHealth <= DamageMaxHealth / 2 then
  3184. pcall(function() if DamageEffect[2].Parent == nil then DamageEffect[2] = nil end end)
  3185. if DamageEffect[2] == nil then
  3186. DamageEffect[2] = DamageEffectBase:Clone()
  3187. DamageEffect[2].Parent = Exterior
  3188. DamageEffect[2].Smoke.Enabled = true
  3189. DamageEffect[2].Smoke.RiseVelocity = 4
  3190. DamageEffect[2].Smoke.Size = 3
  3191. DamageEffect[2]:BreakJoints()
  3192. end
  3193. while DamageEffectPart[2] == nil do
  3194. local Choice = math.random(2, #Exterior:GetChildren())
  3195. for i, Part in pairs(Exterior:GetChildren()) do
  3196. if i == Choice and Part:FindFirstChild("Weld") ~= nil then
  3197. DamageEffectPart[2] = Part
  3198. end
  3199. end
  3200. end
  3201. DamageEffect[2].CFrame = CFrame.new(DamageEffectPart[2].Position)
  3202. else
  3203. pcall(function() DamageEffect[2]:Remove() end)
  3204. pcall(function() DamageEffectPart[2] = nil end)
  3205. end
  3206. if FlySpeed > 100 then
  3207. FlySpeed = 100
  3208. elseif FlySpeed < 10 then
  3209. FlySpeed = 10
  3210. end
  3211. wait()
  3212. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement