IiIDriversIiI

[Roblox] Tardis Script

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