Advertisement
nicholasXPG

Untitled

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