Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Converted with ttyyuu12345's model to script plugin v4
- function sandbox(var,func)
- local env = getfenv(func)
- local newenv = setmetatable({},{
- __index = function(self,k)
- if k=="script" then
- return var
- else
- return env[k]
- end
- end,
- })
- setfenv(func,newenv)
- return func
- end
- cors = {}
- mas = Instance.new("Model",game:GetService("Lighting"))
- Model0 = Instance.new("Model")
- Part1 = Instance.new("Part")
- ClickDetector2 = Instance.new("ClickDetector")
- Script3 = Instance.new("Script")
- SurfaceGui4 = Instance.new("SurfaceGui")
- TextLabel5 = Instance.new("TextLabel")
- Model6 = Instance.new("Model")
- Model7 = Instance.new("Model")
- Model8 = Instance.new("Model")
- Model9 = Instance.new("Model")
- Model10 = Instance.new("Model")
- Folder11 = Instance.new("Folder")
- RemoteEvent12 = Instance.new("RemoteEvent")
- RemoteEvent13 = Instance.new("RemoteEvent")
- RemoteEvent14 = Instance.new("RemoteEvent")
- RemoteEvent15 = Instance.new("RemoteEvent")
- RemoteFunction16 = Instance.new("RemoteFunction")
- RemoteEvent17 = Instance.new("RemoteEvent")
- RemoteEvent18 = Instance.new("RemoteEvent")
- Folder19 = Instance.new("Folder")
- ObjectValue20 = Instance.new("ObjectValue")
- Folder21 = Instance.new("Folder")
- Part22 = Instance.new("Part")
- ParticleEmitter23 = Instance.new("ParticleEmitter")
- ParticleEmitter24 = Instance.new("ParticleEmitter")
- PointLight25 = Instance.new("PointLight")
- Sound26 = Instance.new("Sound")
- Part27 = Instance.new("Part")
- ParticleEmitter28 = Instance.new("ParticleEmitter")
- ParticleEmitter29 = Instance.new("ParticleEmitter")
- PointLight30 = Instance.new("PointLight")
- Sound31 = Instance.new("Sound")
- Part32 = Instance.new("Part")
- Sound33 = Instance.new("Sound")
- ParticleEmitter34 = Instance.new("ParticleEmitter")
- ParticleEmitter35 = Instance.new("ParticleEmitter")
- PointLight36 = Instance.new("PointLight")
- Part37 = Instance.new("Part")
- Sound38 = Instance.new("Sound")
- ParticleEmitter39 = Instance.new("ParticleEmitter")
- ParticleEmitter40 = Instance.new("ParticleEmitter")
- PointLight41 = Instance.new("PointLight")
- Folder42 = Instance.new("Folder")
- ParticleEmitter43 = Instance.new("ParticleEmitter")
- ParticleEmitter44 = Instance.new("ParticleEmitter")
- ParticleEmitter45 = Instance.new("ParticleEmitter")
- Sound46 = Instance.new("Sound")
- Sound47 = Instance.new("Sound")
- ParticleEmitter48 = Instance.new("ParticleEmitter")
- ParticleEmitter49 = Instance.new("ParticleEmitter")
- ParticleEmitter50 = Instance.new("ParticleEmitter")
- Folder51 = Instance.new("Folder")
- ModuleScript52 = Instance.new("ModuleScript")
- Folder53 = Instance.new("Folder")
- Part54 = Instance.new("Part")
- Sound55 = Instance.new("Sound")
- Sound56 = Instance.new("Sound")
- VehicleSeat57 = Instance.new("VehicleSeat")
- Script58 = Instance.new("Script")
- LocalScript59 = Instance.new("LocalScript")
- ObjectValue60 = Instance.new("ObjectValue")
- ScreenGui61 = Instance.new("ScreenGui")
- Frame62 = Instance.new("Frame")
- Frame63 = Instance.new("Frame")
- TextLabel64 = Instance.new("TextLabel")
- TextLabel65 = Instance.new("TextLabel")
- TextLabel66 = Instance.new("TextLabel")
- TextLabel67 = Instance.new("TextLabel")
- TextLabel68 = Instance.new("TextLabel")
- Part69 = Instance.new("Part")
- Part70 = Instance.new("Part")
- SurfaceGui71 = Instance.new("SurfaceGui")
- Frame72 = Instance.new("Frame")
- Frame73 = Instance.new("Frame")
- Frame74 = Instance.new("Frame")
- Frame75 = Instance.new("Frame")
- Frame76 = Instance.new("Frame")
- Frame77 = Instance.new("Frame")
- Frame78 = Instance.new("Frame")
- Frame79 = Instance.new("Frame")
- Frame80 = Instance.new("Frame")
- BlockMesh81 = Instance.new("BlockMesh")
- SurfaceGui82 = Instance.new("SurfaceGui")
- Frame83 = Instance.new("Frame")
- Frame84 = Instance.new("Frame")
- Frame85 = Instance.new("Frame")
- Frame86 = Instance.new("Frame")
- Frame87 = Instance.new("Frame")
- Frame88 = Instance.new("Frame")
- Frame89 = Instance.new("Frame")
- Frame90 = Instance.new("Frame")
- Frame91 = Instance.new("Frame")
- Part92 = Instance.new("Part")
- ParticleEmitter93 = Instance.new("ParticleEmitter")
- Folder94 = Instance.new("Folder")
- ModuleScript95 = Instance.new("ModuleScript")
- Folder96 = Instance.new("Folder")
- Part97 = Instance.new("Part")
- Weld98 = Instance.new("Weld")
- Weld99 = Instance.new("Weld")
- UnionOperation100 = Instance.new("UnionOperation")
- Script101 = Instance.new("Script")
- ClickDetector102 = Instance.new("ClickDetector")
- Part103 = Instance.new("Part")
- Part104 = Instance.new("Part")
- Part105 = Instance.new("Part")
- Part106 = Instance.new("Part")
- SpecialMesh107 = Instance.new("SpecialMesh")
- UnionOperation108 = Instance.new("UnionOperation")
- Script109 = Instance.new("Script")
- ClickDetector110 = Instance.new("ClickDetector")
- MeshPart111 = Instance.new("MeshPart")
- MeshPart112 = Instance.new("MeshPart")
- MeshPart113 = Instance.new("MeshPart")
- MeshPart114 = Instance.new("MeshPart")
- Part115 = Instance.new("Part")
- SurfaceGui116 = Instance.new("SurfaceGui")
- Script117 = Instance.new("Script")
- Frame118 = Instance.new("Frame")
- Frame119 = Instance.new("Frame")
- ImageLabel120 = Instance.new("ImageLabel")
- Frame121 = Instance.new("Frame")
- Vector3Value122 = Instance.new("Vector3Value")
- BlockMesh123 = Instance.new("BlockMesh")
- Seat124 = Instance.new("Seat")
- BlockMesh125 = Instance.new("BlockMesh")
- Part126 = Instance.new("Part")
- Folder127 = Instance.new("Folder")
- Part128 = Instance.new("Part")
- ClickDetector129 = Instance.new("ClickDetector")
- BoolValue130 = Instance.new("BoolValue")
- Script131 = Instance.new("Script")
- Part132 = Instance.new("Part")
- Sound133 = Instance.new("Sound")
- Sound134 = Instance.new("Sound")
- Part135 = Instance.new("Part")
- Sound136 = Instance.new("Sound")
- Sound137 = Instance.new("Sound")
- Part138 = Instance.new("Part")
- PointLight139 = Instance.new("PointLight")
- Script140 = Instance.new("Script")
- BillboardGui141 = Instance.new("BillboardGui")
- ImageLabel142 = Instance.new("ImageLabel")
- Part143 = Instance.new("Part")
- Script144 = Instance.new("Script")
- BillboardGui145 = Instance.new("BillboardGui")
- ImageLabel146 = Instance.new("ImageLabel")
- SpotLight147 = Instance.new("SpotLight")
- Part148 = Instance.new("Part")
- Script149 = Instance.new("Script")
- BillboardGui150 = Instance.new("BillboardGui")
- ImageLabel151 = Instance.new("ImageLabel")
- SpotLight152 = Instance.new("SpotLight")
- Part153 = Instance.new("Part")
- PointLight154 = Instance.new("PointLight")
- Script155 = Instance.new("Script")
- BillboardGui156 = Instance.new("BillboardGui")
- ImageLabel157 = Instance.new("ImageLabel")
- Script158 = Instance.new("Script")
- StringValue159 = Instance.new("StringValue")
- IntValue160 = Instance.new("IntValue")
- StringValue161 = Instance.new("StringValue")
- IntValue162 = Instance.new("IntValue")
- Model163 = Instance.new("Model")
- Script164 = Instance.new("Script")
- MeshPart165 = Instance.new("MeshPart")
- UnionOperation166 = Instance.new("UnionOperation")
- Model167 = Instance.new("Model")
- Script168 = Instance.new("Script")
- MeshPart169 = Instance.new("MeshPart")
- UnionOperation170 = Instance.new("UnionOperation")
- UnionOperation171 = Instance.new("UnionOperation")
- UnionOperation172 = Instance.new("UnionOperation")
- UnionOperation173 = Instance.new("UnionOperation")
- UnionOperation174 = Instance.new("UnionOperation")
- Model175 = Instance.new("Model")
- Part176 = Instance.new("Part")
- BlockMesh177 = Instance.new("BlockMesh")
- Sound178 = Instance.new("Sound")
- Script179 = Instance.new("Script")
- ClickDetector180 = Instance.new("ClickDetector")
- Script181 = Instance.new("Script")
- Script182 = Instance.new("Script")
- Part183 = Instance.new("Part")
- BlockMesh184 = Instance.new("BlockMesh")
- Sound185 = Instance.new("Sound")
- Script186 = Instance.new("Script")
- ClickDetector187 = Instance.new("ClickDetector")
- Script188 = Instance.new("Script")
- Script189 = Instance.new("Script")
- Camera190 = Instance.new("Camera")
- Model0.Name = "LITTLEBIRD"
- Model0.Parent = mas
- Part1.Name = "Regen"
- Part1.Parent = Model0
- Part1.CFrame = CFrame.new(22.2381229, 0.325311989, -62.3152885, 0, 0, -1, -0.000183999262, 1, 0, 1, 0.000183999262, 0)
- Part1.Orientation = Vector3.new(0, -90, -0.00999999978)
- Part1.Position = Vector3.new(22.2381229, 0.325311989, -62.3152885)
- Part1.Rotation = Vector3.new(0.00999999978, -90, 0)
- Part1.Color = Color3.new(0.388235, 0.372549, 0.384314)
- Part1.Size = Vector3.new(2.90902591, 0.0500000007, 2.90902543)
- Part1.Anchored = true
- Part1.BottomSurface = Enum.SurfaceType.Smooth
- Part1.BrickColor = BrickColor.new("Dark stone grey")
- Part1.Material = Enum.Material.DiamondPlate
- Part1.TopSurface = Enum.SurfaceType.Smooth
- Part1.brickColor = BrickColor.new("Dark stone grey")
- Part1.FormFactor = Enum.FormFactor.Custom
- Part1.formFactor = Enum.FormFactor.Custom
- ClickDetector2.Parent = Part1
- ClickDetector2.MaxActivationDistance = 100
- Script3.Name = "regen"
- Script3.Parent = Part1
- table.insert(cors,sandbox(Script3,function()
- ---Model By: Midnight Productions
- location = script.Parent.Parent.Parent
- regen = script.Parent.Parent
- save = regen:clone()
- function onClicked()
- regen:remove()
- local back = save:clone()
- back.Parent = location
- back:MakeJoints()
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- SurfaceGui4.Name = "Display"
- SurfaceGui4.Parent = Part1
- SurfaceGui4.Face = Enum.NormalId.Top
- SurfaceGui4.CanvasSize = Vector2.new(300, 300)
- TextLabel5.Name = "Label"
- TextLabel5.Parent = SurfaceGui4
- TextLabel5.Size = UDim2.new(1, 0, 1, 0)
- TextLabel5.BackgroundColor = BrickColor.new("Institutional white")
- TextLabel5.BackgroundColor3 = Color3.new(1, 1, 1)
- TextLabel5.BackgroundTransparency = 1
- TextLabel5.Font = Enum.Font.ArialBold
- TextLabel5.FontSize = Enum.FontSize.Size14
- TextLabel5.Text = "REGEN"
- TextLabel5.TextColor = BrickColor.new("Really black")
- TextLabel5.TextColor3 = Color3.new(0, 0, 0)
- TextLabel5.TextScaled = true
- TextLabel5.TextSize = 14
- TextLabel5.TextWrap = true
- TextLabel5.TextWrapped = true
- Model6.Name = "Vehicle"
- Model6.Parent = Model0
- Model7.Name = "Heli"
- Model7.Parent = Model6
- Model8.Name = "Plane"
- Model8.Parent = Model7
- Model9.Name = "Body"
- Model9.Parent = Model8
- Model10.Name = "AH6 LITTLE BIRD"
- Model10.Parent = Model9
- Folder11.Name = "Networking"
- Folder11.Parent = Model10
- RemoteEvent12.Name = "TurnOff"
- RemoteEvent12.Parent = Folder11
- RemoteEvent13.Name = "TurnOn"
- RemoteEvent13.Parent = Folder11
- RemoteEvent14.Name = "DustEvent"
- RemoteEvent14.Parent = Folder11
- RemoteEvent15.Name = "FXEvent"
- RemoteEvent15.Parent = Folder11
- RemoteFunction16.Name = "HitEvent"
- RemoteFunction16.Parent = Folder11
- RemoteEvent17.Name = "DamageEvent"
- RemoteEvent17.Parent = Folder11
- RemoteEvent18.Name = "CreateOwner"
- RemoteEvent18.Parent = Folder11
- Folder19.Name = "Vals"
- Folder19.Parent = Model10
- ObjectValue20.Name = "Owner"
- ObjectValue20.Parent = Folder19
- Folder21.Name = "Weaponry"
- Folder21.Parent = Model10
- Part22.Name = "MG"
- Part22.Parent = Folder21
- Part22.CFrame = CFrame.new(4.42165089, 4.97584105, -50.6344261, -1.0000025, -2.9254752e-05, -1.57830073e-07, -2.92546811e-05, 1, 5.91748119e-07, 1.57800969e-07, 5.91754201e-07, -1.0000025)
- Part22.Orientation = Vector3.new(0, -180, 0)
- Part22.Position = Vector3.new(4.42165089, 4.97584105, -50.6344261)
- Part22.Rotation = Vector3.new(-180, 0, 180)
- Part22.Color = Color3.new(1, 0, 0)
- Part22.Transparency = 1
- Part22.Size = Vector3.new(0.199999481, 0.400000006, 0.199999973)
- Part22.Anchored = true
- Part22.BackSurface = Enum.SurfaceType.Weld
- Part22.BottomSurface = Enum.SurfaceType.Smooth
- Part22.BrickColor = BrickColor.new("Really red")
- Part22.CanCollide = false
- Part22.Material = Enum.Material.Neon
- Part22.TopSurface = Enum.SurfaceType.Smooth
- Part22.brickColor = BrickColor.new("Really red")
- ParticleEmitter23.Name = "FlashFX3[Burst]"
- ParticleEmitter23.Parent = Part22
- ParticleEmitter23.Speed = NumberRange.new(10, 10)
- ParticleEmitter23.Color = ColorSequence.new(Color3.new(0.647059, 0.647059, 0.647059),Color3.new(0.647059, 0.647059, 0.647059))
- ParticleEmitter23.Enabled = false
- ParticleEmitter23.LightEmission = 1
- ParticleEmitter23.Texture = "rbxassetid://241539438"
- ParticleEmitter23.Transparency = NumberSequence.new(0.012499988079071,0.46448087692261,0.69398903846741,0.87431693077087,1,1)
- ParticleEmitter23.Acceleration = Vector3.new(0, 4, 0)
- ParticleEmitter23.Drag = 5
- ParticleEmitter23.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter23.Lifetime = NumberRange.new(3, 3)
- ParticleEmitter23.Rate = 100
- ParticleEmitter23.SpreadAngle = Vector2.new(50, 50)
- ParticleEmitter23.VelocityInheritance = 0.15000000596046
- ParticleEmitter23.VelocitySpread = 50
- ParticleEmitter24.Name = "FlashFX3[Front]"
- ParticleEmitter24.Parent = Part22
- ParticleEmitter24.Speed = NumberRange.new(10, 10)
- ParticleEmitter24.Color = ColorSequence.new(Color3.new(1, 0.666667, 0.498039),Color3.new(1, 0.666667, 0.498039))
- ParticleEmitter24.Enabled = false
- ParticleEmitter24.LightEmission = 1
- ParticleEmitter24.Texture = "rbxassetid://241539438"
- ParticleEmitter24.Transparency = NumberSequence.new(0.012499988079071,0.91874998807907,0.94999998807907,1)
- ParticleEmitter24.Size = NumberSequence.new(0.69999998807907,0.69999998807907)
- ParticleEmitter24.Acceleration = Vector3.new(0, -1.5, 10)
- ParticleEmitter24.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter24.Lifetime = NumberRange.new(0.40000000596046, 0.40000000596046)
- ParticleEmitter24.Rate = 200
- ParticleEmitter24.SpreadAngle = Vector2.new(100, 100)
- ParticleEmitter24.VelocitySpread = 100
- PointLight25.Name = "FlashFX[Light]"
- PointLight25.Parent = Part22
- PointLight25.Color = Color3.new(1, 1, 0.498039)
- PointLight25.Enabled = false
- PointLight25.Range = 6
- PointLight25.Brightness = 10
- PointLight25.Shadows = true
- Sound26.Name = "Fire"
- Sound26.Parent = Part22
- Sound26.Looped = true
- Sound26.Pitch = 1.1000000238419
- Sound26.PlaybackSpeed = 1.1000000238419
- Sound26.SoundId = "rbxassetid://571911854"
- Sound26.Volume = 1
- Part27.Name = "MG"
- Part27.Parent = Folder21
- Part27.CFrame = CFrame.new(11.9116259, 4.97584105, -50.6344261, -1.0000025, -2.9254752e-05, -1.57830073e-07, -2.92546811e-05, 1, 5.91748119e-07, 1.57800969e-07, 5.91754201e-07, -1.0000025)
- Part27.Orientation = Vector3.new(0, -180, 0)
- Part27.Position = Vector3.new(11.9116259, 4.97584105, -50.6344261)
- Part27.Rotation = Vector3.new(-180, 0, 180)
- Part27.Color = Color3.new(1, 0, 0)
- Part27.Transparency = 1
- Part27.Size = Vector3.new(0.199999481, 0.400000006, 0.199999973)
- Part27.Anchored = true
- Part27.BackSurface = Enum.SurfaceType.Weld
- Part27.BottomSurface = Enum.SurfaceType.Smooth
- Part27.BrickColor = BrickColor.new("Really red")
- Part27.CanCollide = false
- Part27.Material = Enum.Material.Neon
- Part27.TopSurface = Enum.SurfaceType.Smooth
- Part27.brickColor = BrickColor.new("Really red")
- ParticleEmitter28.Name = "FlashFX3[Burst]"
- ParticleEmitter28.Parent = Part27
- ParticleEmitter28.Speed = NumberRange.new(10, 10)
- ParticleEmitter28.Color = ColorSequence.new(Color3.new(0.647059, 0.647059, 0.647059),Color3.new(0.647059, 0.647059, 0.647059))
- ParticleEmitter28.Enabled = false
- ParticleEmitter28.LightEmission = 1
- ParticleEmitter28.Texture = "rbxassetid://241539438"
- ParticleEmitter28.Transparency = NumberSequence.new(0.012499988079071,0.46448087692261,0.69398903846741,0.87431693077087,1,1)
- ParticleEmitter28.Acceleration = Vector3.new(0, 4, 0)
- ParticleEmitter28.Drag = 5
- ParticleEmitter28.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter28.Lifetime = NumberRange.new(3, 3)
- ParticleEmitter28.Rate = 100
- ParticleEmitter28.SpreadAngle = Vector2.new(50, 50)
- ParticleEmitter28.VelocityInheritance = 0.15000000596046
- ParticleEmitter28.VelocitySpread = 50
- ParticleEmitter29.Name = "FlashFX3[Front]"
- ParticleEmitter29.Parent = Part27
- ParticleEmitter29.Speed = NumberRange.new(10, 10)
- ParticleEmitter29.Color = ColorSequence.new(Color3.new(1, 0.666667, 0.498039),Color3.new(1, 0.666667, 0.498039))
- ParticleEmitter29.Enabled = false
- ParticleEmitter29.LightEmission = 1
- ParticleEmitter29.Texture = "rbxassetid://241539438"
- ParticleEmitter29.Transparency = NumberSequence.new(0.012499988079071,0.91874998807907,0.94999998807907,1)
- ParticleEmitter29.Size = NumberSequence.new(0.69999998807907,0.69999998807907)
- ParticleEmitter29.Acceleration = Vector3.new(0, -1.5, 10)
- ParticleEmitter29.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter29.Lifetime = NumberRange.new(0.40000000596046, 0.40000000596046)
- ParticleEmitter29.Rate = 200
- ParticleEmitter29.SpreadAngle = Vector2.new(100, 100)
- ParticleEmitter29.VelocitySpread = 100
- PointLight30.Name = "FlashFX[Light]"
- PointLight30.Parent = Part27
- PointLight30.Color = Color3.new(1, 1, 0.498039)
- PointLight30.Enabled = false
- PointLight30.Range = 6
- PointLight30.Brightness = 10
- PointLight30.Shadows = true
- Sound31.Name = "Fire"
- Sound31.Parent = Part27
- Sound31.Looped = true
- Sound31.Pitch = 1.1000000238419
- Sound31.PlaybackSpeed = 1.1000000238419
- Sound31.SoundId = "rbxassetid://571911854"
- Sound31.Volume = 1
- Part32.Name = "ATG"
- Part32.Parent = Folder21
- Part32.CFrame = CFrame.new(2.45181203, 5.02611589, -49.1044388, -1.0000025, -2.9254752e-05, -1.57830073e-07, -2.92546811e-05, 1, 5.91748119e-07, 1.57800969e-07, 5.91754201e-07, -1.0000025)
- Part32.Orientation = Vector3.new(0, -180, 0)
- Part32.Position = Vector3.new(2.45181203, 5.02611589, -49.1044388)
- Part32.Rotation = Vector3.new(-180, 0, 180)
- Part32.Color = Color3.new(0.54902, 0.356863, 0.623529)
- Part32.Transparency = 1
- Part32.Size = Vector3.new(0.199998185, 0.200000033, 2.40000367)
- Part32.Anchored = true
- Part32.BottomSurface = Enum.SurfaceType.Smooth
- Part32.BrickColor = BrickColor.new("Lavender")
- Part32.CanCollide = false
- Part32.Material = Enum.Material.Neon
- Part32.TopSurface = Enum.SurfaceType.Smooth
- Part32.brickColor = BrickColor.new("Lavender")
- Sound33.Name = "Fire"
- Sound33.Parent = Part32
- Sound33.Pitch = 1.1000000238419
- Sound33.PlaybackSpeed = 1.1000000238419
- Sound33.SoundId = "rbxassetid://515942061"
- Sound33.Volume = 1
- ParticleEmitter34.Name = "FlashFX3[Burst]"
- ParticleEmitter34.Parent = Part32
- ParticleEmitter34.Speed = NumberRange.new(10, 10)
- ParticleEmitter34.Color = ColorSequence.new(Color3.new(0.647059, 0.647059, 0.647059),Color3.new(0.647059, 0.647059, 0.647059))
- ParticleEmitter34.Enabled = false
- ParticleEmitter34.LightEmission = 1
- ParticleEmitter34.Texture = "rbxassetid://241539438"
- ParticleEmitter34.Transparency = NumberSequence.new(0.012499988079071,0.46448087692261,0.69398903846741,0.87431693077087,1,1)
- ParticleEmitter34.Acceleration = Vector3.new(0, 4, 0)
- ParticleEmitter34.Drag = 5
- ParticleEmitter34.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter34.Lifetime = NumberRange.new(3, 3)
- ParticleEmitter34.Rate = 100
- ParticleEmitter34.SpreadAngle = Vector2.new(50, 50)
- ParticleEmitter34.VelocityInheritance = 0.15000000596046
- ParticleEmitter34.VelocitySpread = 50
- ParticleEmitter35.Name = "FlashFX3[Front]"
- ParticleEmitter35.Parent = Part32
- ParticleEmitter35.Speed = NumberRange.new(10, 10)
- ParticleEmitter35.Color = ColorSequence.new(Color3.new(1, 0.666667, 0.498039),Color3.new(1, 0.666667, 0.498039))
- ParticleEmitter35.Enabled = false
- ParticleEmitter35.LightEmission = 1
- ParticleEmitter35.Texture = "rbxassetid://241539438"
- ParticleEmitter35.Transparency = NumberSequence.new(0.012499988079071,0.91874998807907,0.94999998807907,1)
- ParticleEmitter35.Size = NumberSequence.new(0.69999998807907,0.69999998807907)
- ParticleEmitter35.Acceleration = Vector3.new(0, -1.5, 10)
- ParticleEmitter35.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter35.Lifetime = NumberRange.new(0.40000000596046, 0.40000000596046)
- ParticleEmitter35.Rate = 200
- ParticleEmitter35.SpreadAngle = Vector2.new(100, 100)
- ParticleEmitter35.VelocitySpread = 100
- PointLight36.Name = "FlashFX[Light]"
- PointLight36.Parent = Part32
- PointLight36.Color = Color3.new(1, 1, 0.498039)
- PointLight36.Enabled = false
- PointLight36.Range = 6
- PointLight36.Brightness = 10
- PointLight36.Shadows = true
- Part37.Name = "ATG"
- Part37.Parent = Folder21
- Part37.CFrame = CFrame.new(13.8918257, 5.02611589, -49.1044388, -1.0000025, -2.9254752e-05, -1.57830073e-07, -2.92546811e-05, 1, 5.91748119e-07, 1.57800969e-07, 5.91754201e-07, -1.0000025)
- Part37.Orientation = Vector3.new(0, -180, 0)
- Part37.Position = Vector3.new(13.8918257, 5.02611589, -49.1044388)
- Part37.Rotation = Vector3.new(-180, 0, 180)
- Part37.Color = Color3.new(0.54902, 0.356863, 0.623529)
- Part37.Transparency = 1
- Part37.Size = Vector3.new(0.199998185, 0.200000033, 2.40000367)
- Part37.Anchored = true
- Part37.BottomSurface = Enum.SurfaceType.Smooth
- Part37.BrickColor = BrickColor.new("Lavender")
- Part37.CanCollide = false
- Part37.Material = Enum.Material.Neon
- Part37.TopSurface = Enum.SurfaceType.Smooth
- Part37.brickColor = BrickColor.new("Lavender")
- Sound38.Name = "Fire"
- Sound38.Parent = Part37
- Sound38.Pitch = 1.1000000238419
- Sound38.PlaybackSpeed = 1.1000000238419
- Sound38.SoundId = "rbxassetid://515942061"
- Sound38.Volume = 1
- ParticleEmitter39.Name = "FlashFX3[Burst]"
- ParticleEmitter39.Parent = Part37
- ParticleEmitter39.Speed = NumberRange.new(10, 10)
- ParticleEmitter39.Color = ColorSequence.new(Color3.new(0.647059, 0.647059, 0.647059),Color3.new(0.647059, 0.647059, 0.647059))
- ParticleEmitter39.Enabled = false
- ParticleEmitter39.LightEmission = 1
- ParticleEmitter39.Texture = "rbxassetid://241539438"
- ParticleEmitter39.Transparency = NumberSequence.new(0.012499988079071,0.46448087692261,0.69398903846741,0.87431693077087,1,1)
- ParticleEmitter39.Acceleration = Vector3.new(0, 4, 0)
- ParticleEmitter39.Drag = 5
- ParticleEmitter39.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter39.Lifetime = NumberRange.new(3, 3)
- ParticleEmitter39.Rate = 100
- ParticleEmitter39.SpreadAngle = Vector2.new(50, 50)
- ParticleEmitter39.VelocityInheritance = 0.15000000596046
- ParticleEmitter39.VelocitySpread = 50
- ParticleEmitter40.Name = "FlashFX3[Front]"
- ParticleEmitter40.Parent = Part37
- ParticleEmitter40.Speed = NumberRange.new(10, 10)
- ParticleEmitter40.Color = ColorSequence.new(Color3.new(1, 0.666667, 0.498039),Color3.new(1, 0.666667, 0.498039))
- ParticleEmitter40.Enabled = false
- ParticleEmitter40.LightEmission = 1
- ParticleEmitter40.Texture = "rbxassetid://241539438"
- ParticleEmitter40.Transparency = NumberSequence.new(0.012499988079071,0.91874998807907,0.94999998807907,1)
- ParticleEmitter40.Size = NumberSequence.new(0.69999998807907,0.69999998807907)
- ParticleEmitter40.Acceleration = Vector3.new(0, -1.5, 10)
- ParticleEmitter40.EmissionDirection = Enum.NormalId.Front
- ParticleEmitter40.Lifetime = NumberRange.new(0.40000000596046, 0.40000000596046)
- ParticleEmitter40.Rate = 200
- ParticleEmitter40.SpreadAngle = Vector2.new(100, 100)
- ParticleEmitter40.VelocitySpread = 100
- PointLight41.Name = "FlashFX[Light]"
- PointLight41.Parent = Part37
- PointLight41.Color = Color3.new(1, 1, 0.498039)
- PointLight41.Enabled = false
- PointLight41.Range = 6
- PointLight41.Brightness = 10
- PointLight41.Shadows = true
- Folder42.Name = "FX"
- Folder42.Parent = Model10
- ParticleEmitter43.Name = "Smoke"
- ParticleEmitter43.Parent = Folder42
- ParticleEmitter43.Speed = NumberRange.new(30, 30)
- ParticleEmitter43.Rotation = NumberRange.new(50, 80)
- ParticleEmitter43.Color = ColorSequence.new(Color3.new(0.611765, 0.611765, 0.611765),Color3.new(0.227451, 0.227451, 0.227451))
- ParticleEmitter43.Enabled = false
- ParticleEmitter43.LightEmission = 0.10000000149012
- ParticleEmitter43.Texture = "rbxassetid://286708119"
- ParticleEmitter43.Transparency = NumberSequence.new(0.94375002384186,0.85000002384186,1,1,1,1)
- ParticleEmitter43.Size = NumberSequence.new(0.81250011920929,0.43749988079071,3.9375,0.81250011920929)
- ParticleEmitter43.Acceleration = Vector3.new(0, -10, 0)
- ParticleEmitter43.Lifetime = NumberRange.new(1, 1)
- ParticleEmitter43.Rate = 130
- ParticleEmitter43.RotSpeed = NumberRange.new(5, 20)
- ParticleEmitter43.SpreadAngle = Vector2.new(25, 25)
- ParticleEmitter43.VelocitySpread = 25
- ParticleEmitter44.Name = "Spark"
- ParticleEmitter44.Parent = Folder42
- ParticleEmitter44.Speed = NumberRange.new(10, 10)
- ParticleEmitter44.Color = ColorSequence.new(Color3.new(0.666667, 0.666667, 1),Color3.new(0.666667, 0.666667, 1))
- ParticleEmitter44.Enabled = false
- ParticleEmitter44.LightEmission = 1
- ParticleEmitter44.Texture = "rbxassetid://311395391"
- ParticleEmitter44.Transparency = NumberSequence.new(0,0.77499997615814,0.83749997615814,0)
- ParticleEmitter44.Size = NumberSequence.new(0.20000000298023,0.20000000298023)
- ParticleEmitter44.Acceleration = Vector3.new(0, -15, 0)
- ParticleEmitter44.Lifetime = NumberRange.new(0.69999998807907, 0.80000001192093)
- ParticleEmitter44.Rate = 60
- ParticleEmitter44.SpreadAngle = Vector2.new(20, 20)
- ParticleEmitter44.VelocitySpread = 20
- ParticleEmitter45.Name = "Blood"
- ParticleEmitter45.Parent = Folder42
- ParticleEmitter45.Speed = NumberRange.new(2, 2)
- ParticleEmitter45.Rotation = NumberRange.new(50, 80)
- ParticleEmitter45.Color = ColorSequence.new(Color3.new(1, 0, 0),Color3.new(1, 0, 0))
- ParticleEmitter45.Enabled = false
- ParticleEmitter45.Texture = "rbxassetid://172841900"
- ParticleEmitter45.Transparency = NumberSequence.new(0,0,1)
- ParticleEmitter45.Size = NumberSequence.new(0.12345671653748,3.0601096153259,2.7777779102325)
- ParticleEmitter45.Lifetime = NumberRange.new(1, 1)
- ParticleEmitter45.Rate = 15
- ParticleEmitter45.RotSpeed = NumberRange.new(5, 20)
- ParticleEmitter45.SpreadAngle = Vector2.new(10, 10)
- ParticleEmitter45.VelocitySpread = 10
- Sound46.Name = "BodyHit"
- Sound46.Parent = Folder42
- Sound46.SoundId = "rbxassetid://1565725028"
- Sound46.Volume = 1
- Sound47.Name = "ExplosionSound"
- Sound47.Parent = Folder42
- Sound47.SoundId = "rbxassetid://268869717"
- Sound47.Volume = 1
- ParticleEmitter48.Name = "Debris"
- ParticleEmitter48.Parent = Folder42
- ParticleEmitter48.Speed = NumberRange.new(200, 300)
- ParticleEmitter48.Rotation = NumberRange.new(-360, 360)
- ParticleEmitter48.Color = ColorSequence.new(Color3.new(0.486275, 0.486275, 0.486275),Color3.new(0.486275, 0.486275, 0.486275))
- ParticleEmitter48.Enabled = false
- ParticleEmitter48.Texture = "rbxassetid://1998115207"
- ParticleEmitter48.Transparency = NumberSequence.new(0,1)
- ParticleEmitter48.ZOffset = 2
- ParticleEmitter48.Size = NumberSequence.new(2.5,2.5,10)
- ParticleEmitter48.Drag = 8
- ParticleEmitter48.EmissionDirection = Enum.NormalId.Back
- ParticleEmitter48.Lifetime = NumberRange.new(1, 1)
- ParticleEmitter48.Rate = 200
- ParticleEmitter48.SpreadAngle = Vector2.new(0, 360)
- ParticleEmitter49.Name = "DustUp"
- ParticleEmitter49.Parent = Folder42
- ParticleEmitter49.Speed = NumberRange.new(200, 300)
- ParticleEmitter49.Rotation = NumberRange.new(-360, 360)
- ParticleEmitter49.Color = ColorSequence.new(Color3.new(0.168627, 0.14902, 0.137255),Color3.new(0.168627, 0.14902, 0.137255))
- ParticleEmitter49.Enabled = false
- ParticleEmitter49.Texture = "rbxassetid://1894103633"
- ParticleEmitter49.Transparency = NumberSequence.new(0,1)
- ParticleEmitter49.Size = NumberSequence.new(2.5,6,10)
- ParticleEmitter49.Drag = 10
- ParticleEmitter49.EmissionDirection = Enum.NormalId.Back
- ParticleEmitter49.Lifetime = NumberRange.new(1, 1)
- ParticleEmitter49.Rate = 200
- ParticleEmitter49.SpreadAngle = Vector2.new(0, 360)
- ParticleEmitter50.Name = "RocketTrail"
- ParticleEmitter50.Parent = Folder42
- ParticleEmitter50.Color = ColorSequence.new(Color3.new(1, 1, 0.498039),Color3.new(0, 0, 0))
- ParticleEmitter50.Enabled = false
- ParticleEmitter50.LightEmission = 1
- ParticleEmitter50.Texture = "http://www.roblox.com/asset/?id=241685484"
- ParticleEmitter50.Size = NumberSequence.new(0.89999997615814,0.89999997615814)
- ParticleEmitter50.Lifetime = NumberRange.new(0.34999999403954, 0.34999999403954)
- ParticleEmitter50.Rate = 500
- ParticleEmitter50.SpreadAngle = Vector2.new(10, 10)
- ParticleEmitter50.VelocitySpread = 10
- Folder51.Name = "Modules"
- Folder51.Parent = Model10
- ModuleScript52.Name = "Config_Module"
- ModuleScript52.Parent = Folder51
- table.insert(cors,sandbox(ModuleScript52,function()
- local config = {
- --// Customizations
- StartupTime = 5;
- --// Group Only
- isGroupOnly = false;
- GroupID = 4194865;
- GroupRank = 1;
- --// Weapon Config
- BulletSpeed = 2500;
- CastDist = 10000;
- BulletSize = Vector3.new(0.2, 0.2, 12);
- FireRate = 1000;
- BulletDamage = 60;
- RocketFireRate = 200;
- BlastRadius = 10;
- --// Ammo
- RocketAmmo = math.huge;
- --// Speeds
- UpSpeed = 1.5;
- DownSpeed = 1.5;
- ForwardSpeed = 3;
- BackwardSpeed = 2;
- RightSpeed = 1.2;
- LeftSpeed = 1.2;
- --// Rotations
- FrontRotation = 5;
- BackRotation = 15;
- RightRotation = 15;
- LeftRotation = 15;
- --// Keybindings
- StartupKey = Enum.KeyCode.Y;
- UpKey = Enum.KeyCode.Space;
- DownKey = Enum.KeyCode.LeftControl;
- ForwardKey = Enum.KeyCode.W;
- BackwardKey = Enum.KeyCode.S;
- RightKey = Enum.KeyCode.D;
- LeftKey = Enum.KeyCode.A;
- MouseToggleKey = Enum.UserInputType.MouseButton1;
- }
- return config
- end))
- Folder53.Name = "Required"
- Folder53.Parent = Model10
- Part54.Name = "Engine"
- Part54.Parent = Folder53
- Part54.CFrame = CFrame.new(8.03365803, 11.895874, -54.9263649, -1, -2.89998825e-05, 0, -2.89998825e-05, 1, 0, 0, 0, -1)
- Part54.Orientation = Vector3.new(0, 180, 0)
- Part54.Position = Vector3.new(8.03365803, 11.895874, -54.9263649)
- Part54.Rotation = Vector3.new(-180, 0, 180)
- Part54.Transparency = 1
- Part54.Size = Vector3.new(2.43157935, 0.368421227, 4.20000267)
- Part54.Anchored = true
- Part54.BottomSurface = Enum.SurfaceType.Smooth
- Part54.CanCollide = false
- Part54.TopSurface = Enum.SurfaceType.Smooth
- Sound55.Name = "Spin"
- Sound55.Parent = Part54
- Sound55.Looped = true
- Sound55.Pitch = 2.5999999046326
- Sound55.PlaybackSpeed = 2.5999999046326
- Sound55.SoundId = "rbxassetid://165113352"
- Sound55.Volume = 1
- Sound56.Name = "StartUp"
- Sound56.Parent = Part54
- Sound56.Looped = true
- Sound56.SoundId = "http://roblox.com/asset/?id=150485913"
- Sound56.Volume = 0.60000002384186
- VehicleSeat57.Name = "DriverSeat"
- VehicleSeat57.Parent = Folder53
- VehicleSeat57.CFrame = CFrame.new(9.59871769, 6.14013004, -50.3627853, -0.999999166, 0.000773377949, -0.00104256824, 0.000868734031, 0.995495677, -0.0948033258, 0.00096455327, -0.0948041528, -0.995495498)
- VehicleSeat57.Orientation = Vector3.new(5.44000006, -179.940002, 0.0500000007)
- VehicleSeat57.Position = Vector3.new(9.59871769, 6.14013004, -50.3627853)
- VehicleSeat57.Rotation = Vector3.new(174.559998, -0.0599999987, -179.960007)
- VehicleSeat57.Color = Color3.new(0.105882, 0.164706, 0.207843)
- VehicleSeat57.Transparency = 1
- VehicleSeat57.Size = Vector3.new(1.86999917, 0.0500000007, 1.49999571)
- VehicleSeat57.Anchored = true
- VehicleSeat57.BottomSurface = Enum.SurfaceType.Smooth
- VehicleSeat57.BrickColor = BrickColor.new("Black")
- VehicleSeat57.CanCollide = false
- VehicleSeat57.TopSurface = Enum.SurfaceType.Smooth
- VehicleSeat57.brickColor = BrickColor.new("Black")
- VehicleSeat57.HeadsUpDisplay = false
- Script58.Name = "Heli_SControl"
- Script58.Parent = VehicleSeat57
- table.insert(cors,sandbox(Script58,function()
- --// Variables
- local L_1_ = script.Parent
- local L_2_ = L_1_.Parent.Parent
- local L_3_ = L_2_:WaitForChild('Required')
- local L_4_ = L_2_:WaitForChild('BodyKit')
- local L_5_ = L_2_:WaitForChild('Networking')
- local L_6_ = L_2_:WaitForChild('Vals')
- local L_7_ = L_6_:WaitForChild('Owner')
- local L_8_ = require(L_2_:WaitForChild('Modules'):WaitForChild('Config_Module'))
- local L_9_ = L_3_:WaitForChild('Rotor')
- local L_10_
- if L_3_:FindFirstChild('Rotor2') then
- L_10_ = L_3_.Rotor2
- end
- local L_11_ = L_9_:WaitForChild('Top'):WaitForChild('Rotor')
- local L_12_ = L_9_:WaitForChild('Bottom'):WaitForChild('Rotor')
- local L_13_
- local L_14_
- if L_10_ then
- L_13_ = L_10_:WaitForChild('Top'):WaitForChild('Rotor')
- L_14_ = L_10_:WaitForChild('Bottom'):WaitForChild('Rotor')
- end
- local L_15_
- local L_16_, L_17_
- local L_18_ = false
- local L_19_ = L_2_:WaitForChild('FX')
- local L_20_ = game.ReplicatedStorage:FindFirstChild('[WB] Leaderstat Network') or nil
- local L_21_ = {
- L_2_
- }
- --// Events
- local L_22_ = L_5_:WaitForChild('TurnOff')
- local L_23_ = L_5_:WaitForChild('TurnOn')
- local L_24_ = L_5_:WaitForChild('DustEvent')
- local L_25_ = L_5_:WaitForChild('FXEvent')
- local L_26_ = L_5_:WaitForChild('HitEvent')
- local L_27_ = L_5_:WaitForChild('DamageEvent')
- local L_28_ = L_5_:WaitForChild('CreateOwner')
- --// Functions
- function Weld(L_31_arg1, L_32_arg2)
- local L_33_ = Instance.new("WeldConstraint", L_31_arg1)
- L_33_.Part0 = L_31_arg1
- L_33_.Part1 = L_32_arg2
- L_33_.Name = L_31_arg1.Name
- end
- --// Weld Connection
- wait(0.5)
- local L_29_ = L_2_:GetDescendants()
- for L_34_forvar1, L_35_forvar2 in pairs(L_29_) do
- if L_35_forvar2:IsA('BasePart') then
- if L_35_forvar2.Name ~= 'Engine' and L_35_forvar2.Parent ~= L_2_.RegenButton then
- Weld(L_35_forvar2, L_2_.Required.Engine)
- end
- end
- end
- for L_36_forvar1, L_37_forvar2 in pairs(L_29_) do
- if L_37_forvar2:IsA('BasePart') then
- if L_37_forvar2.Parent ~= L_2_.RegenButton then
- L_37_forvar2.Anchored = false
- end
- end
- end
- --// Connections
- L_1_.ChildAdded:connect(function(L_38_arg1)
- if L_38_arg1:IsA('Weld') then
- local L_39_ = L_38_arg1.Part1.Parent
- local L_40_ = game.Players:GetPlayerFromCharacter(L_39_)
- if not L_8_.isGroupOnly or L_8_.isGroupOnly and L_40_:GetRankInGroup(L_8_.GroupID) >= L_8_.GroupRank then
- L_7_.Value = L_40_
- L_2_:WaitForChild('RegenButton'):WaitForChild('Regen'):WaitForChild('CanRegen').Value = false
- local L_41_ = L_1_.Parent.Engine:FindFirstChild('BodyGyro') or Instance.new('BodyGyro', L_1_.Parent:WaitForChild('Engine'))
- L_41_.CFrame = L_1_.Parent:WaitForChild('Engine').CFrame
- L_41_.D = 500
- L_41_.P = 3000
- L_41_.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
- local L_42_ = L_1_.Parent.Engine:FindFirstChild('BodyPosition') or Instance.new('BodyPosition', L_1_.Parent:WaitForChild('Engine'))
- L_42_.D = 1250
- L_42_.P = 10000
- L_42_.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- L_42_.Position = L_1_.Parent:WaitForChild('Engine').Position
- if L_40_ then
- local L_43_ = script:WaitForChild('Heli_Control'):clone()
- L_43_.Parent = L_40_.PlayerGui
- L_43_:WaitForChild('EnginePart').Value = L_1_.Parent:WaitForChild('Engine')
- L_43_.Disabled = false
- end
- end;
- end
- end)
- L_1_.ChildRemoved:connect(function(L_44_arg1)
- if L_44_arg1:IsA('Weld') then
- L_2_:WaitForChild('RegenButton'):WaitForChild('Regen'):WaitForChild('CanRegen').Value = true
- end
- end)
- --// Event Connections
- L_22_.OnServerEvent:connect(function(L_45_arg1)
- if L_45_arg1 == L_7_.Value then
- L_18_ = false
- L_3_:WaitForChild('Engine'):WaitForChild('BodyGyro'):Destroy()
- L_3_:WaitForChild('Engine'):WaitForChild('BodyPosition'):Destroy()
- for L_46_forvar1, L_47_forvar2 in pairs(L_3_:WaitForChild('Engine'):GetChildren()) do
- if L_47_forvar2:IsA('Sound') then
- L_47_forvar2:Stop()
- end
- end
- for L_48_forvar1, L_49_forvar2 in pairs(L_3_:GetChildren()) do
- if L_49_forvar2.Name == 'Vents' then
- if L_49_forvar2:FindFirstChild('Smoke') then
- L_49_forvar2.Smoke.EmissionDirection = 'Back'
- L_49_forvar2.Smoke.Enabled = false
- end
- end
- end
- if L_15_ then
- L_15_:Destroy()
- end
- elseif L_45_arg1 ~= L_7_.Value then
- L_45_arg1:Kick('Stop Exploiting')
- end
- end)
- L_23_.OnServerEvent:connect(function(L_50_arg1)
- if L_50_arg1 == L_7_.Value then
- for L_51_forvar1, L_52_forvar2 in pairs(L_3_:GetChildren()) do
- if L_52_forvar2.Name == 'Vents' then
- if L_52_forvar2:FindFirstChild('Smoke') then
- L_52_forvar2.Smoke.EmissionDirection = 'Back'
- L_52_forvar2.Smoke.Enabled = true
- end
- end
- end
- L_18_ = true
- elseif L_50_arg1 ~= L_7_.Value then
- L_50_arg1:Kick('Stop Exploiting')
- end
- end)
- L_26_.OnServerInvoke = function(L_53_arg1, L_54_arg2, L_55_arg3, L_56_arg4, L_57_arg5, L_58_arg6, L_59_arg7, L_60_arg8)
- local L_61_
- if not L_61_ then
- L_61_ = Instance.new("Part", workspace)
- L_61_.Name = 'Crack'
- L_61_.FormFactor = "Custom"
- L_61_.TopSurface = 0
- L_61_.BottomSurface = 0
- L_61_.Transparency = 1
- L_61_.Anchored = true
- L_61_.CanCollide = false
- L_61_.Size = Vector3.new(0.5, 0, 0.5)
- L_61_.CFrame = CFrame.new(L_54_arg2) * CFrame.fromAxisAngle(L_55_arg3.magnitude == 0 and Vector3.new(1) or L_55_arg3.unit, L_56_arg4)
- L_61_.BrickColor = BrickColor.new("Really black")
- L_61_.Material = "SmoothPlastic"
- if L_60_arg8 == 'NonExplosive' then
- local L_62_ = Instance.new("Decal", L_61_)
- L_62_.Texture = "rbxassetid://64291977"
- L_62_.Face = "Top"
- game.Debris:AddItem(L_62_, 3)
- local L_63_ = Instance.new("PointLight", L_61_)
- L_63_.Color = Color3.new(0, 0, 0)
- L_63_.Range = 0
- L_63_.Shadows = true
- game.Debris:AddItem(L_61_, 3)
- local L_64_
- local L_65_
- if L_58_arg6 == "Part" then
- L_64_ = L_19_:WaitForChild("Spark"):clone()
- L_64_.Parent = L_61_
- L_64_.EmissionDirection = "Top"
- L_65_ = L_19_:WaitForChild("Smoke"):clone()
- L_65_.Parent = L_61_
- L_65_.EmissionDirection = "Top"
- L_64_.Enabled = true
- L_65_.Enabled = true
- game.Debris:AddItem(L_64_, 1)
- game.Debris:AddItem(L_65_, 1)
- delay(0.1, function()
- L_64_.Enabled = false
- L_65_.Enabled = false
- end)
- elseif L_58_arg6 == "Human" then
- L_64_ = L_19_:WaitForChild("Blood"):clone()
- L_64_.Parent = L_61_
- L_64_.EmissionDirection = "Top"
- L_64_.Enabled = true
- game.Debris:AddItem(L_64_, 1)
- delay(0.1, function()
- L_64_.Enabled = false
- end)
- end
- elseif L_60_arg8 == 'Explosive' then
- local L_66_ = L_19_:WaitForChild('ExplosionSound'):clone()
- L_66_.Parent = L_61_
- L_66_:Play()
- game.Debris:AddItem(L_61_, 3)
- local L_67_ = Instance.new('Explosion')
- L_67_.Parent = L_61_
- L_67_.DestroyJointRadiusPercent = 10
- L_67_.ExplosionType = Enum.ExplosionType.NoCraters
- L_67_.Position = L_61_.Position
- end;
- end
- end;
- L_25_.OnServerEvent:connect(function(L_68_arg1, L_69_arg2)
- for L_70_forvar1, L_71_forvar2 in pairs(game.Players:GetChildren()) do
- if L_71_forvar2:IsA('Player') and L_71_forvar2.PlayerGui:FindFirstChild('MainGui') and L_71_forvar2.PlayerGui.MainGui:FindFirstChild('Shading') then
- for L_72_forvar1, L_73_forvar2 in pairs(L_71_forvar2.Character:GetChildren()) do
- if L_73_forvar2:IsA('Tool') and L_73_forvar2:FindFirstChild('Resource') and L_73_forvar2.Resource:FindFirstChild('Events') and L_73_forvar2.Resource.Events:FindFirstChild('ServerFXEvent') then
- L_73_forvar2.Resource.Events.ServerFXEvent:FireClient(L_71_forvar2, L_69_arg2, L_68_arg1)
- end
- end
- end
- end
- end)
- local L_30_
- L_27_.OnServerEvent:connect(function(L_74_arg1, L_75_arg2, L_76_arg3)
- L_75_arg2:TakeDamage(L_76_arg3)
- if L_75_arg2.Health <= 0 and L_75_arg2 ~= L_30_ then
- if L_20_ and L_20_:FindFirstChild(L_74_arg1.Name) then
- local L_77_ = L_20_[L_74_arg1.Name]
- L_77_.Value = not L_77_.Value
- end
- L_30_ = L_75_arg2
- end
- end)
- L_28_.OnServerEvent:connect(function(L_78_arg1, L_79_arg2)
- local L_80_ = Instance.new("ObjectValue")
- L_80_.Name = "creator"
- L_80_.Value = L_78_arg1
- L_80_.Parent = L_79_arg2
- game.Debris:AddItem(L_80_, 3)
- end)
- --// Renders
- game:GetService('RunService').Heartbeat:connect(function()
- if L_18_ then
- L_11_.Rotation = L_11_.Rotation + 5000
- L_12_.Rotation = L_11_.Rotation + 5000
- if L_10_ then
- L_13_.Rotation = L_13_.Rotation + 5000
- L_14_.Rotation = L_13_.Rotation + 5000
- end
- local L_81_, L_82_, L_83_ = workspace:FindPartOnRayWithIgnoreList(Ray.new(L_3_:WaitForChild('Engine').CFrame.p, (L_3_:WaitForChild('Engine').CFrame.upVector).unit * -20), L_21_)
- if L_81_ then
- local L_84_ = Vector3.new(0, 1, 0):Cross(L_83_)
- local L_85_ = math.asin(L_84_.magnitude)
- if not L_15_ then
- L_15_ = Instance.new('Part', workspace)
- table.insert(L_21_, L_15_)
- --newPart.Position = position
- L_15_.Anchored = true
- L_15_.CanCollide = false
- L_15_.Transparency = 1
- L_15_.CFrame = CFrame.new(L_82_) * CFrame.fromAxisAngle(L_84_.magnitude == 0 and Vector3.new(1) or L_84_.unit, L_85_)
- elseif L_15_ then
- --newPart.Position = position
- L_15_.Anchored = true
- L_15_.CanCollide = false
- L_15_.Transparency = 1
- L_15_.CFrame = CFrame.new(L_82_) * CFrame.fromAxisAngle(L_84_.magnitude == 0 and Vector3.new(1) or L_84_.unit, L_85_)
- end
- if not L_16_ and not L_17_ then
- L_16_ = L_19_:WaitForChild('Debris'):clone()
- L_16_.Parent = L_15_
- L_16_.Enabled = true
- L_17_ = L_19_:WaitForChild('DustUp'):clone()
- L_17_.Parent = L_15_
- L_17_.Enabled = true
- end
- if L_17_ then
- L_17_.Color = ColorSequence.new(L_81_.BrickColor.Color)
- end
- end
- if not L_81_ then
- if L_15_ then
- L_16_.Enabled = false
- L_17_.Enabled = false
- end
- elseif L_81_ then
- if L_15_ then
- L_16_.Enabled = true
- L_17_.Enabled = true
- end
- end
- end
- end)
- end))
- LocalScript59.Name = "Heli_Control"
- LocalScript59.Parent = Script58
- table.insert(cors,sandbox(LocalScript59,function()
- repeat
- wait()
- until game.Players.LocalPlayer.Character
- --// Variables
- local L_1_ = game.Players.LocalPlayer
- local L_2_ = L_1_.Character
- local L_3_ = L_1_:GetMouse()
- local L_4_ = script:WaitForChild('EnginePart').Value.Parent.Parent
- local L_5_ = L_4_:WaitForChild('Networking')
- local L_6_ = L_4_:WaitForChild('Modules')
- local L_7_ = require(L_6_:WaitForChild('Config_Module'))
- local L_8_ = game:GetService("UserInputService")
- local L_9_ = game:GetService("RunService").RenderStepped
- local L_10_ = script:WaitForChild('EnginePart').Value
- local L_11_ = L_10_:WaitForChild('BodyPosition')
- local L_12_ = L_10_:WaitForChild('BodyGyro')
- local L_13_ = L_4_:WaitForChild('Required')
- local L_14_ = false
- local L_15_ = true
- local L_16_ = false
- local L_17_ = false
- local L_18_ = L_7_.RocketAmmo
- local L_19_ = false
- local L_20_ = false
- local L_21_ = false
- local L_22_ = false
- local L_23_ = false
- local L_24_ = false
- local L_25_ = true
- local L_26_ = true
- local L_27_ = true
- local L_28_ = L_10_.Position
- local L_29_ = L_10_.CFrame
- local L_30_
- local L_31_ = script:WaitForChild('HeliUI')
- local L_32_ = L_31_:WaitForChild('Frame')
- local L_33_ = L_32_:WaitForChild('Frame')
- local L_34_ = L_33_:WaitForChild('AltDisp')
- local L_35_ = L_33_:WaitForChild('StatusDisp')
- local L_36_ = L_32_:WaitForChild('Title')
- local L_37_ = L_33_:WaitForChild('RocketAmmo')
- L_37_.Text = 'ATGs: ' .. L_18_
- local L_38_ = workspace:FindFirstChild('BulletModel') or Instance.new('Folder')
- L_38_.Parent = workspace
- local L_39_ = {
- L_2_,
- L_4_,
- L_38_
- }
- --// Events
- local L_40_ = L_5_:WaitForChild('TurnOff')
- local L_41_ = L_5_:WaitForChild('TurnOn')
- local L_42_ = L_5_:WaitForChild('DustEvent')
- local L_43_ = L_5_:WaitForChild('FXEvent')
- local L_44_ = L_5_:WaitForChild('HitEvent')
- local L_45_ = L_5_:WaitForChild('DamageEvent')
- local L_46_ = L_5_:WaitForChild('CreateOwner')
- --// Renders
- L_9_:connect(function()
- if not L_15_ then
- L_2_:WaitForChild('Humanoid').Jump = false
- end
- if L_14_ then
- L_34_.Text = 'ALTITUDE: ' .. math.ceil(L_2_:WaitForChild('Torso').Position.Y)
- L_11_.Position = L_28_
- if L_27_ then
- L_12_.CFrame = L_3_.Hit * L_29_
- L_30_ = L_3_.Hit
- else
- L_12_.CFrame = L_30_ * L_29_
- end
- end
- end)
- --// Functions
- function TurnOff()
- L_27_ = false
- L_25_ = false
- L_14_ = false
- L_40_:FireServer()
- end
- function CheckForHumanoid(L_47_arg1)
- local L_48_ = false
- local L_49_ = nil
- if L_47_arg1 then
- if (L_47_arg1.Parent:FindFirstChild("Humanoid") or L_47_arg1.Parent.Parent:FindFirstChild("Humanoid")) then
- L_48_ = true
- if L_47_arg1.Parent:FindFirstChild('Humanoid') then
- L_49_ = L_47_arg1.Parent.Humanoid
- elseif L_47_arg1.Parent.Parent:FindFirstChild('Humanoid') then
- L_49_ = L_47_arg1.Parent.Parent.Humanoid
- end
- else
- L_48_ = false
- end
- end
- return L_48_, L_49_
- end
- function Fire(L_50_arg1)
- for L_61_forvar1, L_62_forvar2 in pairs(L_50_arg1:GetChildren()) do
- if L_62_forvar2.Name:sub(1, 7) == 'FlashFX' then
- L_62_forvar2.Enabled = true
- end
- end
- delay(1 / 30, function()
- for L_63_forvar1, L_64_forvar2 in pairs(L_50_arg1:GetChildren()) do
- if L_64_forvar2.Name:sub(1, 7) == 'FlashFX' then
- L_64_forvar2.Enabled = false
- end
- end
- end)
- local L_51_ = L_50_arg1.Position
- local L_52_ = L_50_arg1.CFrame.lookVector.unit
- local L_53_ = CFrame.new(L_51_, L_51_ + L_52_)
- local L_54_ = Instance.new("Part")
- L_54_.Parent = L_38_
- game.Debris:AddItem(L_54_, 3)
- L_54_.Shape = Enum.PartType.Block
- L_54_.Size = L_7_.BulletSize
- L_54_.Name = "Bullet"
- L_54_.TopSurface = "Smooth"
- L_54_.BottomSurface = "Smooth"
- L_54_.BrickColor = BrickColor.new("Bright green")
- L_54_.Material = "Neon"
- L_54_.CanCollide = false
- L_54_.CFrame = L_50_arg1.CFrame + (L_50_arg1.CFrame.p - L_50_arg1.CFrame.p)
- L_54_.CFrame = CFrame.new(L_50_arg1.CFrame.p, L_50_arg1.CFrame.p + L_52_)
- local L_55_ = Instance.new('BodyVelocity', L_54_)
- L_55_.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- L_55_.P = 10
- L_55_.Velocity = L_52_ * L_7_.BulletSpeed
- local L_56_, L_57_, L_58_ = workspace:FindPartOnRayWithIgnoreList(Ray.new(L_50_arg1.Position, L_50_arg1.CFrame.lookVector * L_7_.CastDist), L_39_);
- local L_59_ = Vector3.new(0, 1, 0):Cross(L_58_)
- local L_60_ = math.asin(L_59_.magnitude)
- if L_56_ and (L_56_ and L_56_.Transparency >= 1 or L_56_.CanCollide == false) and L_56_.Name ~= 'Right Arm' and L_56_.Name ~= 'Left Arm' and L_56_.Name ~= 'Right Leg' and L_56_.Name ~= 'Left Leg' and L_56_.Name ~= 'Armor' then
- table.insert(L_39_, L_56_)
- end
- if L_56_ then
- L_59_ = Vector3.new(0, 1, 0):Cross(L_58_)
- L_60_ = math.asin(L_59_.magnitude) -- division by 1 is redundant
- L_43_:FireServer(L_57_)
- local L_65_, L_66_ = CheckForHumanoid(L_56_)
- if L_65_ == false then
- local L_67_ = L_44_:InvokeServer(L_57_, L_59_, L_60_, L_58_, "Part", L_56_, 'NonExplosive')
- elseif L_65_ == true then
- local L_68_ = L_44_:InvokeServer(L_57_, L_59_, L_60_, L_58_, "Human", L_56_, 'NonExplosive')
- L_46_:FireServer(L_66_)
- L_45_:FireServer(L_66_, L_7_.BulletDamage)
- end
- end
- end
- function FireATG(L_69_arg1)
- if L_18_ > 0 then
- L_18_ = L_18_ - 1
- if L_18_ < 0 then
- L_18_ = 0
- end
- L_37_.Text = 'ATGs: ' .. L_18_
- for L_84_forvar1, L_85_forvar2 in pairs(L_69_arg1:GetChildren()) do
- if L_85_forvar2.Name:sub(1, 7) == 'FlashFX' then
- L_85_forvar2.Enabled = true
- end
- end
- delay(1 / 30, function()
- for L_86_forvar1, L_87_forvar2 in pairs(L_69_arg1:GetChildren()) do
- if L_87_forvar2.Name:sub(1, 7) == 'FlashFX' then
- L_87_forvar2.Enabled = false
- end
- end
- end)
- local L_70_ = L_69_arg1.Position
- local L_71_ = L_69_arg1.CFrame.lookVector.unit
- local L_72_ = CFrame.new(L_70_, L_70_ + L_71_)
- local L_73_ = Instance.new("Part")
- L_73_.Parent = L_38_
- game.Debris:AddItem(L_73_, 10)
- L_73_.Shape = Enum.PartType.Block
- L_73_.Size = L_7_.BulletSize
- L_73_.Name = "Bullet"
- L_73_.TopSurface = "Smooth"
- L_73_.BottomSurface = "Smooth"
- L_73_.BrickColor = BrickColor.new("Bright green")
- L_73_.Material = "Neon"
- L_73_.CanCollide = false
- L_73_.CFrame = L_69_arg1.CFrame + (L_69_arg1.CFrame.p - L_69_arg1.CFrame.p)
- L_73_.CFrame = CFrame.new(L_69_arg1.CFrame.p, L_69_arg1.CFrame.p + L_71_)
- local L_74_ = L_4_:WaitForChild('FX'):WaitForChild('RocketTrail'):clone()
- L_74_.Parent = L_73_
- L_74_.Enabled = true
- local L_75_ = Instance.new('BodyVelocity', L_73_)
- L_75_.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- L_75_.P = 10
- L_75_.Velocity = L_71_ * L_7_.BulletSpeed
- local L_76_ = L_69_arg1.Position;
- local L_77_ = L_73_.Position;
- local L_78_ = 0
- local L_79_, L_80_, L_81_
- local L_82_
- local L_83_
- while true do
- L_9_:wait()
- L_77_ = L_73_.Position;
- L_78_ = L_78_ + (L_77_ - L_76_).magnitude
- L_79_, L_80_, L_81_ = workspace:FindPartOnRayWithIgnoreList(Ray.new(L_76_, (L_77_ - L_76_)), L_39_);
- L_82_ = Vector3.new(0, 1, 0):Cross(L_81_)
- L_83_ = math.asin(L_82_.magnitude) -- division by 1 is redundant
- --[[if distance >= config.CastDist then
- Bullet:Destroy()
- break
- end]]--
- if L_79_ and (L_79_ and L_79_.Transparency >= 1 or L_79_.CanCollide == false) and L_79_.Name ~= 'Right Arm' and L_79_.Name ~= 'Left Arm' and L_79_.Name ~= 'Right Leg' and L_79_.Name ~= 'Left Leg' and L_79_.Name ~= 'Armor' then
- table.insert(L_39_, L_79_)
- end
- if L_79_ then
- L_82_ = Vector3.new(0, 1, 0):Cross(L_81_)
- L_83_ = math.asin(L_82_.magnitude) -- division by 1 is redundant
- L_43_:FireServer(L_80_)
- local L_88_ = L_44_:InvokeServer(L_80_, L_82_, L_83_, L_81_, "Part", L_79_, 'Explosive')
- L_73_:Destroy()
- break
- end
- end
- end
- end
- --// Connections
- L_8_.InputBegan:connect(function(L_89_arg1, L_90_arg2)
- if not L_90_arg2 then
- if L_89_arg1.KeyCode == L_7_.StartupKey then
- if not L_14_ and L_15_ then
- L_15_ = false
- L_35_.Text = 'STATUS: ' .. 'STARTING UP'
- L_41_:FireServer()
- L_10_:WaitForChild('StartUp'):Play()
- wait(L_7_.StartupTime) -- 26.13
- L_10_:WaitForChild('Spin'):Play()
- L_10_:WaitForChild('StartUp'):Stop()
- L_35_.Text = 'STATUS: ' .. 'ONLINE'
- L_14_ = true
- L_36_.Text = L_4_.Name
- else
- TurnOff()
- L_31_:Destroy()
- L_15_ = true
- script:Destroy()
- end
- end
- if L_14_ then
- if L_89_arg1.KeyCode == L_7_.UpKey and not L_19_ then
- L_19_ = true
- while L_19_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.upVector.unit * L_7_.UpSpeed
- end
- end;
- if L_89_arg1.KeyCode == L_7_.DownKey and not L_20_ then
- L_20_ = true
- while L_20_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.upVector.unit * -L_7_.DownSpeed
- end
- end;
- if L_89_arg1.KeyCode == L_7_.ForwardKey and not L_21_ then
- L_21_ = true
- while L_21_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.lookVector.unit * L_7_.ForwardSpeed
- L_29_ = CFrame.Angles(math.rad(-L_7_.FrontRotation), 0, 0)
- end
- L_29_ = CFrame.Angles(0, 0, 0)
- end;
- if L_89_arg1.KeyCode == L_7_.BackwardKey and not L_22_ then
- L_22_ = true
- while L_22_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.lookVector.unit * -L_7_.BackwardSpeed
- L_29_ = CFrame.Angles(math.rad(L_7_.BackRotation), 0, 0)
- end
- L_29_ = CFrame.Angles(0, 0, 0)
- end;
- if L_89_arg1.KeyCode == L_7_.RightKey and not L_23_ then
- L_23_ = true
- while L_23_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.rightVector.unit * L_7_.RightSpeed
- L_29_ = CFrame.Angles(0, 0, math.rad(-L_7_.RightRotation))
- end
- L_29_ = CFrame.Angles(0, 0, 0)
- end;
- if L_89_arg1.KeyCode == L_7_.LeftKey and not L_24_ then
- L_24_ = true
- while L_24_ do
- L_9_:wait()
- L_28_ = L_28_ + L_10_.CFrame.rightVector.unit * -L_7_.LeftSpeed
- L_29_ = CFrame.Angles(0, 0, math.rad(L_7_.LeftRotation))
- end
- L_29_ = CFrame.Angles(0, 0, 0)
- end;
- if L_89_arg1.UserInputType == L_7_.MouseToggleKey and L_25_ then
- if not L_27_ then
- L_27_ = true
- else
- L_27_ = false
- end
- end;
- if L_89_arg1.KeyCode == Enum.KeyCode.C and not L_16_ then
- L_16_ = true
- while L_16_ do
- for L_91_forvar1, L_92_forvar2 in pairs(L_4_:WaitForChild('Weaponry'):GetChildren()) do
- if L_92_forvar2:IsA('BasePart') and L_92_forvar2.Name == 'MG' then
- L_92_forvar2.Fire:Play()
- spawn(function ()
- Fire(L_92_forvar2)
- end)
- end
- end
- wait(60 / L_7_.FireRate)
- end
- end;
- if L_89_arg1.KeyCode == Enum.KeyCode.F and not L_17_ and L_26_ and L_18_ > 0 then
- L_17_ = true
- while L_17_ and L_26_ and L_18_ > 0 do
- for L_93_forvar1, L_94_forvar2 in pairs(L_4_:WaitForChild('Weaponry'):GetChildren()) do
- if L_94_forvar2:IsA('BasePart') and L_94_forvar2.Name == 'ATG' then
- L_94_forvar2.Fire:Play()
- spawn(function ()
- FireATG(L_94_forvar2)
- end)
- end
- end
- L_26_ = false
- wait(60 / L_7_.RocketFireRate)
- L_26_ = true
- end
- end;
- end
- end;
- end)
- L_8_.InputEnded:connect(function(L_95_arg1, L_96_arg2)
- if not L_96_arg2 then
- if L_95_arg1.KeyCode == L_7_.UpKey and L_19_ then
- L_19_ = false
- end;
- if L_95_arg1.KeyCode == L_7_.DownKey and L_20_ then
- L_20_ = false
- end;
- if L_95_arg1.KeyCode == L_7_.ForwardKey and L_21_ then
- L_21_ = false
- end;
- if L_95_arg1.KeyCode == L_7_.BackwardKey and L_22_ then
- L_22_ = false
- end;
- if L_95_arg1.KeyCode == L_7_.RightKey and L_23_ then
- L_23_ = false
- end;
- if L_95_arg1.KeyCode == L_7_.LeftKey and L_24_ then
- L_24_ = false
- end;
- if L_95_arg1.KeyCode == Enum.KeyCode.C and L_16_ then
- L_16_ = false
- for L_97_forvar1, L_98_forvar2 in pairs(L_4_:WaitForChild('Weaponry'):GetChildren()) do
- if L_98_forvar2:IsA('BasePart') and L_98_forvar2.Name == 'MG' then
- L_98_forvar2.Fire:Stop()
- end
- end
- end;
- if L_95_arg1.KeyCode == Enum.KeyCode.F and L_17_ then
- L_17_ = false
- end;
- end
- end)
- L_2_:WaitForChild('Humanoid').Died:connect(function()
- TurnOff()
- L_31_:Destroy()
- L_15_ = true
- script:Destroy()
- end)
- L_8_.JumpRequest:connect(function()
- if L_15_ then
- if L_1_.PlayerGui:FindFirstChild('Heli_Control') then
- L_1_.PlayerGui['Heli_Control']:Destroy()
- end
- end
- end)
- end))
- LocalScript59.Disabled = true
- ObjectValue60.Name = "EnginePart"
- ObjectValue60.Parent = LocalScript59
- ScreenGui61.Name = "HeliUI"
- ScreenGui61.Parent = LocalScript59
- Frame62.Parent = ScreenGui61
- Frame62.Position = UDim2.new(0.5, -150, 1, -250)
- Frame62.Size = UDim2.new(0, 300, 0, 150)
- Frame62.BackgroundColor = BrickColor.new("Black")
- Frame62.BackgroundColor3 = Color3.new(0.192157, 0.192157, 0.192157)
- Frame62.BackgroundTransparency = 1
- Frame62.BorderSizePixel = 0
- Frame63.Parent = Frame62
- Frame63.Position = UDim2.new(0, 0, 0, 27)
- Frame63.Size = UDim2.new(1, 0, 1, -25)
- Frame63.BackgroundColor = BrickColor.new("Black metallic")
- Frame63.BackgroundColor3 = Color3.new(0.121569, 0.121569, 0.121569)
- Frame63.BackgroundTransparency = 0.5
- TextLabel64.Name = "AltDisp"
- TextLabel64.Parent = Frame63
- TextLabel64.Position = UDim2.new(0, 0, 1, -25)
- TextLabel64.Size = UDim2.new(0.5, 0, 0, 25)
- TextLabel64.BackgroundColor = BrickColor.new("Institutional white")
- TextLabel64.BackgroundColor3 = Color3.new(1, 1, 1)
- TextLabel64.BackgroundTransparency = 1
- TextLabel64.Font = Enum.Font.SourceSans
- TextLabel64.FontSize = Enum.FontSize.Size24
- TextLabel64.Text = "ALTITUDE: "
- TextLabel64.TextColor = BrickColor.new("Institutional white")
- TextLabel64.TextColor3 = Color3.new(1, 1, 1)
- TextLabel64.TextSize = 20
- TextLabel65.Name = "COMING SOON"
- TextLabel65.Parent = Frame63
- TextLabel65.Position = UDim2.new(0.5, 0, 1, -25)
- TextLabel65.Size = UDim2.new(0.5, 0, 0, 25)
- TextLabel65.BackgroundColor = BrickColor.new("Institutional white")
- TextLabel65.BackgroundColor3 = Color3.new(1, 1, 1)
- TextLabel65.BackgroundTransparency = 1
- TextLabel65.Font = Enum.Font.SourceSans
- TextLabel65.FontSize = Enum.FontSize.Size24
- TextLabel65.Text = "COMING SOON"
- TextLabel65.TextColor = BrickColor.new("Institutional white")
- TextLabel65.TextColor3 = Color3.new(1, 1, 1)
- TextLabel65.TextSize = 20
- TextLabel66.Name = "StatusDisp"
- TextLabel66.Parent = Frame63
- TextLabel66.Position = UDim2.new(0.5, -100, 0, 0)
- TextLabel66.Size = UDim2.new(0, 200, 0, 25)
- TextLabel66.BackgroundColor = BrickColor.new("Institutional white")
- TextLabel66.BackgroundColor3 = Color3.new(1, 1, 1)
- TextLabel66.BackgroundTransparency = 1
- TextLabel66.Font = Enum.Font.SourceSans
- TextLabel66.FontSize = Enum.FontSize.Size24
- TextLabel66.Text = "STATUS:"
- TextLabel66.TextColor = BrickColor.new("Institutional white")
- TextLabel66.TextColor3 = Color3.new(1, 1, 1)
- TextLabel66.TextSize = 20
- TextLabel67.Name = "RocketAmmo"
- TextLabel67.Parent = Frame63
- TextLabel67.Position = UDim2.new(0.5, -100, 0.5, 0)
- TextLabel67.Size = UDim2.new(0, 200, 0, 25)
- TextLabel67.BackgroundColor = BrickColor.new("Institutional white")
- TextLabel67.BackgroundColor3 = Color3.new(1, 1, 1)
- TextLabel67.BackgroundTransparency = 1
- TextLabel67.Font = Enum.Font.SourceSans
- TextLabel67.FontSize = Enum.FontSize.Size24
- TextLabel67.Text = "ATGs: "
- TextLabel67.TextColor = BrickColor.new("Institutional white")
- TextLabel67.TextColor3 = Color3.new(1, 1, 1)
- TextLabel67.TextSize = 20
- TextLabel68.Name = "Title"
- TextLabel68.Parent = Frame62
- TextLabel68.Size = UDim2.new(1, 0, 0, 25)
- TextLabel68.BackgroundColor = BrickColor.new("Black metallic")
- TextLabel68.BackgroundColor3 = Color3.new(0.121569, 0.121569, 0.121569)
- TextLabel68.BorderSizePixel = 0
- TextLabel68.Font = Enum.Font.SourceSans
- TextLabel68.FontSize = Enum.FontSize.Size28
- TextLabel68.Text = "Heli Kit"
- TextLabel68.TextColor = BrickColor.new("Institutional white")
- TextLabel68.TextColor3 = Color3.new(1, 1, 1)
- TextLabel68.TextSize = 25
- Part69.Name = "Staff"
- Part69.Parent = Folder53
- Part69.CFrame = CFrame.new(8.09359837, 10.6408682, -61.7264786, -1, -2.89998825e-05, 0, -2.89998825e-05, 1, 0, 0, 0, -1)
- Part69.Orientation = Vector3.new(0, 180, 0)
- Part69.Position = Vector3.new(8.09359837, 10.6408682, -61.7264786)
- Part69.Rotation = Vector3.new(-180, 0, 180)
- Part69.Size = Vector3.new(0.599997044, 0.0500000007, 0.600005031)
- Part69.Anchored = true
- Part69.BottomSurface = Enum.SurfaceType.Smooth
- Part69.CanCollide = false
- Part69.TopSurface = Enum.SurfaceType.Smooth
- Part70.Name = "Rotor"
- Part70.Parent = Folder53
- Part70.CFrame = CFrame.new(8.08569431, 10.205636, -65.3116837, -0.000196999201, -3.60000013e-05, -1, 0, 1, -3.60000013e-05, 1, -7.09197145e-09, -0.000196999201)
- Part70.Orientation = Vector3.new(0, -90.0100021, 0)
- Part70.Position = Vector3.new(8.08569431, 10.205636, -65.3116837)
- Part70.Rotation = Vector3.new(0, -90, 0)
- Part70.Color = Color3.new(0.972549, 0.972549, 0.972549)
- Part70.Transparency = 1
- Part70.Size = Vector3.new(0.0500000007, 0.0995381102, 0.0500000007)
- Part70.Anchored = true
- Part70.BottomSurface = Enum.SurfaceType.Smooth
- Part70.BrickColor = BrickColor.new("Institutional white")
- Part70.CanCollide = false
- Part70.TopSurface = Enum.SurfaceType.Hinge
- Part70.brickColor = BrickColor.new("Institutional white")
- Part70.FormFactor = Enum.FormFactor.Custom
- Part70.formFactor = Enum.FormFactor.Custom
- SurfaceGui71.Name = "Top"
- SurfaceGui71.Parent = Part70
- SurfaceGui71.Face = Enum.NormalId.Top
- SurfaceGui71.CanvasSize = Vector2.new(800, 800)
- Frame72.Name = "Rotor"
- Frame72.Parent = SurfaceGui71
- Frame72.Position = UDim2.new(0, 80, 0, 80)
- Frame72.Size = UDim2.new(0.800000012, 0, 0.800000012, 0)
- Frame72.BackgroundColor = BrickColor.new("Really black")
- Frame72.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame72.BackgroundTransparency = 1
- Frame73.Name = "One"
- Frame73.Parent = Frame72
- Frame73.Position = UDim2.new(0.5, -10, 0, 10)
- Frame73.Size = UDim2.new(0, 20, 0, 400)
- Frame73.BackgroundColor = BrickColor.new("Really black")
- Frame73.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame73.BorderSizePixel = 0
- Frame74.Name = "Color"
- Frame74.Parent = Frame73
- Frame74.Size = UDim2.new(1, 0, 0, 15)
- Frame74.BackgroundColor = BrickColor.new("New Yeller")
- Frame74.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame74.BorderSizePixel = 0
- Frame74.ZIndex = 2
- Frame75.Name = "Two"
- Frame75.Parent = Frame72
- Frame75.Position = UDim2.new(0, -2, 0.5, -14)
- Frame75.Size = UDim2.new(0, 400, 0, 20)
- Frame75.BackgroundColor = BrickColor.new("Really black")
- Frame75.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame75.BorderSizePixel = 0
- Frame76.Name = "Color"
- Frame76.Parent = Frame75
- Frame76.Size = UDim2.new(0, 15, 1, 0)
- Frame76.BackgroundColor = BrickColor.new("New Yeller")
- Frame76.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame76.BorderSizePixel = 0
- Frame76.ZIndex = 2
- Frame77.Name = "Three"
- Frame77.Parent = Frame72
- Frame77.Position = UDim2.new(1, -400, 0.5, -14)
- Frame77.Rotation = 180
- Frame77.Size = UDim2.new(0, 400, 0, 20)
- Frame77.BackgroundColor = BrickColor.new("Really black")
- Frame77.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame77.BorderSizePixel = 0
- Frame78.Name = "Color"
- Frame78.Parent = Frame77
- Frame78.Size = UDim2.new(0, 15, 1, 0)
- Frame78.BackgroundColor = BrickColor.new("New Yeller")
- Frame78.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame78.BorderSizePixel = 0
- Frame78.ZIndex = 2
- Frame79.Name = "Four"
- Frame79.Parent = Frame72
- Frame79.Position = UDim2.new(0.5, -10, 1, -400)
- Frame79.Rotation = 180
- Frame79.Size = UDim2.new(0, 20, 0, 400)
- Frame79.BackgroundColor = BrickColor.new("Really black")
- Frame79.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame79.BorderSizePixel = 0
- Frame80.Name = "Color"
- Frame80.Parent = Frame79
- Frame80.Size = UDim2.new(1, 0, 0, 15)
- Frame80.BackgroundColor = BrickColor.new("New Yeller")
- Frame80.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame80.BorderColor = BrickColor.new("Cocoa")
- Frame80.BorderColor3 = Color3.new(0.207843, 0.164706, 0.0823529)
- Frame80.BorderSizePixel = 0
- Frame80.ZIndex = 2
- BlockMesh81.Parent = Part70
- BlockMesh81.Scale = Vector3.new(1, 0.988116205, 1)
- SurfaceGui82.Name = "Bottom"
- SurfaceGui82.Parent = Part70
- SurfaceGui82.Face = Enum.NormalId.Bottom
- SurfaceGui82.CanvasSize = Vector2.new(800, 800)
- Frame83.Name = "Rotor"
- Frame83.Parent = SurfaceGui82
- Frame83.Position = UDim2.new(0, 80, 0, 80)
- Frame83.Size = UDim2.new(0.800000012, 0, 0.800000012, 0)
- Frame83.BackgroundColor = BrickColor.new("Really black")
- Frame83.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame83.BackgroundTransparency = 1
- Frame84.Name = "Four"
- Frame84.Parent = Frame83
- Frame84.Position = UDim2.new(0.5, -10, 1, -400)
- Frame84.Rotation = 180
- Frame84.Size = UDim2.new(0, 20, 0, 400)
- Frame84.BackgroundColor = BrickColor.new("Really black")
- Frame84.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame84.BorderSizePixel = 0
- Frame85.Name = "Color"
- Frame85.Parent = Frame84
- Frame85.Size = UDim2.new(1, 0, 0, 15)
- Frame85.BackgroundColor = BrickColor.new("New Yeller")
- Frame85.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame85.BorderColor = BrickColor.new("Cocoa")
- Frame85.BorderColor3 = Color3.new(0.207843, 0.164706, 0.0823529)
- Frame85.BorderSizePixel = 0
- Frame85.ZIndex = 2
- Frame86.Name = "One"
- Frame86.Parent = Frame83
- Frame86.Position = UDim2.new(0.5, -10, 0, 10)
- Frame86.Size = UDim2.new(0, 20, 0, 400)
- Frame86.BackgroundColor = BrickColor.new("Really black")
- Frame86.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame86.BorderSizePixel = 0
- Frame87.Name = "Color"
- Frame87.Parent = Frame86
- Frame87.Size = UDim2.new(1, 0, 0, 15)
- Frame87.BackgroundColor = BrickColor.new("New Yeller")
- Frame87.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame87.BorderSizePixel = 0
- Frame87.ZIndex = 2
- Frame88.Name = "Three"
- Frame88.Parent = Frame83
- Frame88.Position = UDim2.new(1, -400, 0.5, -14)
- Frame88.Rotation = 180
- Frame88.Size = UDim2.new(0, 400, 0, 20)
- Frame88.BackgroundColor = BrickColor.new("Really black")
- Frame88.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame88.BorderSizePixel = 0
- Frame89.Name = "Color"
- Frame89.Parent = Frame88
- Frame89.Size = UDim2.new(0, 15, 1, 0)
- Frame89.BackgroundColor = BrickColor.new("New Yeller")
- Frame89.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame89.BorderSizePixel = 0
- Frame89.ZIndex = 2
- Frame90.Name = "Two"
- Frame90.Parent = Frame83
- Frame90.Position = UDim2.new(0, -2, 0.5, -14)
- Frame90.Size = UDim2.new(0, 400, 0, 20)
- Frame90.BackgroundColor = BrickColor.new("Really black")
- Frame90.BackgroundColor3 = Color3.new(0, 0, 0)
- Frame90.BorderSizePixel = 0
- Frame91.Name = "Color"
- Frame91.Parent = Frame90
- Frame91.Size = UDim2.new(0, 15, 1, 0)
- Frame91.BackgroundColor = BrickColor.new("New Yeller")
- Frame91.BackgroundColor3 = Color3.new(1, 1, 0)
- Frame91.BorderSizePixel = 0
- Frame91.ZIndex = 2
- Part92.Name = "Vents"
- Part92.Parent = Folder53
- Part92.CFrame = CFrame.new(8.19277, 7.33441401, -61.5414505, -1, 0, 0, 0, 1, 0, 0, 0, -1)
- Part92.Orientation = Vector3.new(0, 180, 0)
- Part92.Position = Vector3.new(8.19277, 7.33441401, -61.5414505)
- Part92.Rotation = Vector3.new(-180, 0, -180)
- Part92.Transparency = 1
- Part92.Size = Vector3.new(1.49999678, 1.27999771, 0.790004909)
- Part92.Anchored = true
- Part92.BottomSurface = Enum.SurfaceType.Smooth
- Part92.CanCollide = false
- Part92.TopSurface = Enum.SurfaceType.Smooth
- ParticleEmitter93.Name = "Smoke"
- ParticleEmitter93.Parent = Part92
- ParticleEmitter93.Enabled = false
- ParticleEmitter93.LightInfluence = 1
- ParticleEmitter93.Texture = "rbxassetid://1894103633"
- ParticleEmitter93.Transparency = NumberSequence.new(0.94999998807907,1)
- ParticleEmitter93.Size = NumberSequence.new(0.80000001192093,0.80000001192093)
- ParticleEmitter93.EmissionDirection = Enum.NormalId.Back
- ParticleEmitter93.Lifetime = NumberRange.new(2, 2)
- ParticleEmitter93.Rate = 50
- ParticleEmitter93.RotSpeed = NumberRange.new(3, 3)
- ParticleEmitter93.SpreadAngle = Vector2.new(30, 30)
- ParticleEmitter93.VelocitySpread = 30
- Folder94.Name = "INSTRUCTIONS"
- Folder94.Parent = Model10
- ModuleScript95.Name = "Instruction Manual"
- ModuleScript95.Parent = Folder94
- table.insert(cors,sandbox(ModuleScript95,function()
- --[[
- Welcome and thank you guys for your continued support of warbound! Here is Warbound's newest release, the helicopter kit! Made by StoneFox_Alfa
- Please guys don't break any braincells trying to figure this thing out, it's very VERY straight forward. Just make sure you got all the components
- and they're where they belong. If you want two rotors, name the second one "Rotor2" and make sure it has the same components as the Rotor does.
- Also make sure everything is anchored. That's really it. If y'all got any questions, join the provided link or add me on discord at StoneFox_Alfa#0986
- NOTE: This kit is currently in its very first version, V1. It's EXTREMELY basic. The reason why I haven't added much to it so far is because
- I want to make sure it's stable before I continue. Once I'm positive it's working right, I'll be adding a crap ton of cool features as always!
- I also plan to go more into detail in this instruction manual as the kit becomes more complex.
- WARBOUND SUPPORT LINK: https://discord.gg/EcuFrjT
- --]]
- end))
- Folder96.Name = "BodyKit"
- Folder96.Parent = Model10
- Part97.Parent = Folder96
- Part97.CFrame = CFrame.new(7.90240812, 9.31922626, -47.3142853, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Part97.Orientation = Vector3.new(90, 0, 0)
- Part97.Position = Vector3.new(7.90240812, 9.31922626, -47.3142853)
- Part97.Rotation = Vector3.new(90, 0, 0)
- Part97.Transparency = 4
- Part97.Size = Vector3.new(2.20000005, 0.200000003, 0.400000006)
- Part97.Anchored = true
- Part97.BottomSurface = Enum.SurfaceType.Weld
- Part97.Material = Enum.Material.SmoothPlastic
- Part97.TopSurface = Enum.SurfaceType.Smooth
- Weld98.Parent = Part97
- Weld98.C0 = CFrame.new(0, -0.100000001, 0, 1, 0, 0, -0, -0, -1, 0, 1, 0)
- Weld98.C1 = CFrame.new(-0.300014496, 0.100006104, -0.0999565125, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Weld98.Part0 = Part97
- Weld98.Part1 = Part183
- Weld98.part1 = Part183
- Weld99.Parent = Part97
- Weld99.C0 = CFrame.new(0, -0.100000001, 0, 1, 0, 0, -0, -0, -1, 0, 1, 0)
- Weld99.C1 = CFrame.new(-0.300014496, 0.0999450684, 0.099981308, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Weld99.Part0 = Part97
- Weld99.Part1 = Part176
- Weld99.part1 = Part176
- UnionOperation100.Name = "Carbiner"
- UnionOperation100.Parent = Folder96
- UnionOperation100.CFrame = CFrame.new(14.350872, 10.6103582, -53.8276672, -1.62981451e-09, 1, -2.45927301e-09, -5.21535242e-08, -2.45927323e-09, -1, -1, -1.62981451e-09, 5.21535242e-08)
- UnionOperation100.Orientation = Vector3.new(90, 90, 0)
- UnionOperation100.Position = Vector3.new(14.350872, 10.6103582, -53.8276672)
- UnionOperation100.Rotation = Vector3.new(90, 0, -90)
- UnionOperation100.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- UnionOperation100.Size = Vector3.new(0.050000038, 0.300000101, 0.550000012)
- UnionOperation100.BrickColor = BrickColor.new("Really black")
- UnionOperation100.CanCollide = false
- UnionOperation100.Material = Enum.Material.SmoothPlastic
- UnionOperation100.brickColor = BrickColor.new("Really black")
- Script101.Parent = UnionOperation100
- table.insert(cors,sandbox(Script101,function()
- --Rappel script
- --By: lordrex12345
- --August 3, 2017
- local RappelPart = script.Parent
- local ExperationTime = 15
- local Now = 0
- local Later = 0
- local WinchBusy = false
- RappelPart.ClickDetector.MouseClick:connect(function(PlayerWhoClicked)--Attach a rope constraint from the player to the RappelPart
- Now = tick()
- if PlayerWhoClicked and not WinchBusy then
- WinchBusy = true
- local Attachment0 = Instance.new('Attachment')
- Attachment0.Parent = RappelPart
- game:GetService("Debris"):AddItem(Attachment0,20)
- local Attachment1 = Instance.new('Attachment')
- Attachment1.Parent = PlayerWhoClicked.Character.Torso
- game:GetService("Debris"):AddItem(Attachment1,20)
- local RopeConstraint = Instance.new('RopeConstraint')
- RopeConstraint.Parent = script.Parent
- RopeConstraint.Length = 8
- RopeConstraint.Attachment0 = RappelPart.Attachment
- RopeConstraint.Attachment1 = PlayerWhoClicked.Character.Torso.Attachment
- RopeConstraint.Visible = true
- game:GetService("Debris"):AddItem(RopeConstraint,20)
- PlayerWhoClicked.Character.Humanoid.Jump = true
- wait(.2)
- while not PlayerWhoClicked.Character.Humanoid.Jump do--Gradually lengthen rope till the player jumps
- if Later - Now < ExperationTime then --Check to see if experation time will last
- RopeConstraint.Length = RopeConstraint.Length +.3
- Later = tick()
- wait()
- else
- break
- end
- end
- Attachment0:Destroy()
- Attachment1:Destroy()
- RopeConstraint:Destroy()
- WinchBusy = false
- end
- end)
- end))
- ClickDetector102.Parent = UnionOperation100
- ClickDetector102.MaxActivationDistance = 6
- Part103.Parent = UnionOperation100
- Part103.CFrame = CFrame.new(3.45325089, 2.88362503, -49.9481659, 2.09999998e-05, 0, 1, 0, 1, 0, -1, 0, 2.09999998e-05)
- Part103.Orientation = Vector3.new(0, 90, 0)
- Part103.Position = Vector3.new(3.45325089, 2.88362503, -49.9481659)
- Part103.Rotation = Vector3.new(0, 90, 0)
- Part103.Color = Color3.new(0.105882, 0.164706, 0.207843)
- Part103.Transparency = 1
- Part103.Size = Vector3.new(13.7942324, 0.646603942, 0.646604776)
- Part103.Anchored = true
- Part103.BottomSurface = Enum.SurfaceType.Smooth
- Part103.BrickColor = BrickColor.new("Black")
- Part103.TopSurface = Enum.SurfaceType.Smooth
- Part103.brickColor = BrickColor.new("Black")
- Part104.Parent = UnionOperation100
- Part104.CFrame = CFrame.new(13.0403824, 2.88363695, -49.9478912, 2.09999998e-05, 0, 1, 0, 1, 0, -1, 0, 2.09999998e-05)
- Part104.Orientation = Vector3.new(0, 90, 0)
- Part104.Position = Vector3.new(13.0403824, 2.88363695, -49.9478912)
- Part104.Rotation = Vector3.new(0, 90, 0)
- Part104.Color = Color3.new(0.105882, 0.164706, 0.207843)
- Part104.Transparency = 1
- Part104.Size = Vector3.new(13.7942324, 0.646603942, 0.646604776)
- Part104.Anchored = true
- Part104.BottomSurface = Enum.SurfaceType.Smooth
- Part104.BrickColor = BrickColor.new("Black")
- Part104.TopSurface = Enum.SurfaceType.Smooth
- Part104.brickColor = BrickColor.new("Black")
- Part105.Parent = UnionOperation100
- Part105.CFrame = CFrame.new(8.25249577, 8.41366005, -49.8912086, 2.09999998e-05, 0, 1, 0, 1, 0, -1, 0, 2.09999998e-05)
- Part105.Orientation = Vector3.new(0, 90, 0)
- Part105.Position = Vector3.new(8.25249577, 8.41366005, -49.8912086)
- Part105.Rotation = Vector3.new(0, 90, 0)
- Part105.Color = Color3.new(0.105882, 0.164706, 0.207843)
- Part105.Transparency = 1
- Part105.Size = Vector3.new(22.4897385, 11.207799, 12.2267094)
- Part105.Anchored = true
- Part105.BrickColor = BrickColor.new("Black")
- Part105.CanCollide = false
- Part105.brickColor = BrickColor.new("Black")
- Part106.Parent = UnionOperation100
- Part106.CFrame = CFrame.new(8.190732, 8.58090401, -49.0116615, -2.80000004e-05, 1, 0, 0, 0, 1, 1, 2.80000004e-05, 0)
- Part106.Orientation = Vector3.new(-90, -90, 0)
- Part106.Position = Vector3.new(8.190732, 8.58090401, -49.0116615)
- Part106.Rotation = Vector3.new(-90, 0, -90)
- Part106.Transparency = 0.5
- Part106.Size = Vector3.new(5.88524103, 5.15224934, 5.28458977)
- Part106.Anchored = true
- Part106.CanCollide = false
- SpecialMesh107.Parent = Part106
- SpecialMesh107.MeshId = "rbxassetid://753802163"
- SpecialMesh107.Scale = Vector3.new(-0.0389653705, -0.0389653556, -0.0389653929)
- SpecialMesh107.TextureId = "rbxassetid://642328882"
- SpecialMesh107.MeshType = Enum.MeshType.FileMesh
- UnionOperation108.Name = "Carbiner"
- UnionOperation108.Parent = Folder96
- UnionOperation108.CFrame = CFrame.new(2.10089803, 10.6103582, -53.8276672, -1.62981451e-09, 1, -2.45927301e-09, -5.21535242e-08, -2.45927323e-09, -1, -1, -1.62981451e-09, 5.21535242e-08)
- UnionOperation108.Orientation = Vector3.new(90, 90, 0)
- UnionOperation108.Position = Vector3.new(2.10089803, 10.6103582, -53.8276672)
- UnionOperation108.Rotation = Vector3.new(90, 0, -90)
- UnionOperation108.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- UnionOperation108.Size = Vector3.new(0.050000038, 0.300000101, 0.550000012)
- UnionOperation108.BrickColor = BrickColor.new("Really black")
- UnionOperation108.CanCollide = false
- UnionOperation108.Material = Enum.Material.SmoothPlastic
- UnionOperation108.brickColor = BrickColor.new("Really black")
- Script109.Parent = UnionOperation108
- table.insert(cors,sandbox(Script109,function()
- --Rappel script
- --By: lordrex12345
- --August 3, 2017
- local RappelPart = script.Parent
- local ExperationTime = 15
- local Now = 0
- local Later = 0
- local WinchBusy = false
- RappelPart.ClickDetector.MouseClick:connect(function(PlayerWhoClicked)--Attach a rope constraint from the player to the RappelPart
- Now = tick()
- if PlayerWhoClicked and not WinchBusy then
- WinchBusy = true
- local Attachment0 = Instance.new('Attachment')
- Attachment0.Parent = RappelPart
- game:GetService("Debris"):AddItem(Attachment0,20)
- local Attachment1 = Instance.new('Attachment')
- Attachment1.Parent = PlayerWhoClicked.Character.Torso
- game:GetService("Debris"):AddItem(Attachment1,20)
- local RopeConstraint = Instance.new('RopeConstraint')
- RopeConstraint.Parent = script.Parent
- RopeConstraint.Length = 8
- RopeConstraint.Attachment0 = RappelPart.Attachment
- RopeConstraint.Attachment1 = PlayerWhoClicked.Character.Torso.Attachment
- RopeConstraint.Visible = true
- game:GetService("Debris"):AddItem(RopeConstraint,20)
- PlayerWhoClicked.Character.Humanoid.Jump = true
- wait(.2)
- while not PlayerWhoClicked.Character.Humanoid.Jump do--Gradually lengthen rope till the player jumps
- if Later - Now < ExperationTime then --Check to see if experation time will last
- RopeConstraint.Length = RopeConstraint.Length +.3
- Later = tick()
- wait()
- else
- break
- end
- end
- Attachment0:Destroy()
- Attachment1:Destroy()
- RopeConstraint:Destroy()
- WinchBusy = false
- end
- end)
- end))
- ClickDetector110.Parent = UnionOperation108
- ClickDetector110.MaxActivationDistance = 6
- MeshPart111.Parent = Folder96
- MeshPart111.CFrame = CFrame.new(7.78247213, 7.74701023, -51.0449524, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart111.Orientation = Vector3.new(90, 90, 0)
- MeshPart111.Position = Vector3.new(7.78247213, 7.74701023, -51.0449524)
- MeshPart111.Rotation = Vector3.new(90, 0, -90)
- MeshPart111.Size = Vector3.new(10.7772427, 11.6506491, 10.2715235)
- MeshPart111.Anchored = true
- MeshPart111.CanCollide = false
- MeshPart111.Material = Enum.Material.Concrete
- MeshPart111.TextureID = "rbxassetid://753814487"
- MeshPart112.Parent = Folder96
- MeshPart112.CFrame = CFrame.new(8.67028046, 8.45157814, -60.9085922, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart112.Orientation = Vector3.new(90, 90, 0)
- MeshPart112.Position = Vector3.new(8.67028046, 8.45157814, -60.9085922)
- MeshPart112.Rotation = Vector3.new(90, 0, -90)
- MeshPart112.Size = Vector3.new(27.7473621, 11.5099363, 11.6807127)
- MeshPart112.Anchored = true
- MeshPart112.CanCollide = false
- MeshPart112.Material = Enum.Material.Concrete
- MeshPart112.TextureID = "rbxassetid://753814487"
- MeshPart113.Parent = Folder96
- MeshPart113.CFrame = CFrame.new(8.19104385, 8.56956959, -48.9936218, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart113.Orientation = Vector3.new(90, 90, 0)
- MeshPart113.Position = Vector3.new(8.19104385, 8.56956959, -48.9936218)
- MeshPart113.Rotation = Vector3.new(90, 0, -90)
- MeshPart113.Color = Color3.new(0.388235, 0.372549, 0.384314)
- MeshPart113.Transparency = 0.40000000596046
- MeshPart113.Size = Vector3.new(6.48067904, 5.15196657, 6.18852043)
- MeshPart113.Anchored = true
- MeshPart113.BrickColor = BrickColor.new("Dark stone grey")
- MeshPart113.CanCollide = false
- MeshPart113.Material = Enum.Material.Glass
- MeshPart113.Reflectance = -1
- MeshPart113.brickColor = BrickColor.new("Dark stone grey")
- MeshPart114.Parent = Folder96
- MeshPart114.CFrame = CFrame.new(8.16712189, 6.68372202, -53.8057251, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart114.Orientation = Vector3.new(90, 90, 0)
- MeshPart114.Position = Vector3.new(8.16712189, 6.68372202, -53.8057251)
- MeshPart114.Rotation = Vector3.new(90, 0, -90)
- MeshPart114.Size = Vector3.new(6.86945677, 12.7447577, 5.44702244)
- MeshPart114.Anchored = true
- MeshPart114.CanCollide = false
- MeshPart114.Material = Enum.Material.Concrete
- MeshPart114.TextureID = "rbxassetid://753814487"
- Part115.Name = "Drag"
- Part115.Parent = Folder96
- Part115.CFrame = CFrame.new(9.04350567, 8.23598099, -47.4135132, 1, -7.45530269e-06, -2.90588796e-05, 0, 0.96862936, -0.248510092, 2.99999992e-05, 0.248510092, 0.96862936)
- Part115.Orientation = Vector3.new(14.3900003, 0, 0)
- Part115.Position = Vector3.new(9.04350567, 8.23598099, -47.4135132)
- Part115.Rotation = Vector3.new(14.3900003, 0, 0)
- Part115.Transparency = 1
- Part115.Size = Vector3.new(0.63226831, 0.698435366, 0.222788483)
- Part115.Anchored = true
- Part115.BottomSurface = Enum.SurfaceType.Smooth
- Part115.CanCollide = false
- Part115.Material = Enum.Material.DiamondPlate
- Part115.TopSurface = Enum.SurfaceType.Smooth
- Part115.FormFactor = Enum.FormFactor.Custom
- Part115.formFactor = Enum.FormFactor.Custom
- SurfaceGui116.Name = "HologramGui"
- SurfaceGui116.Parent = Part115
- SurfaceGui116.CanvasSize = Vector2.new(305, 330)
- Script117.Name = "RadarScript"
- Script117.Parent = SurfaceGui116
- table.insert(cors,sandbox(Script117,function()
- local Tool = script.Parent
- local gui = Tool.RadarGui
- local guiEnabled = true
- local guiOnPlayer = nil
- local range = 300
- local torso = script.Parent.Parent
- local zIndex = 4
- local radarCenter = Vector2.new(140,155)
- enabled = true
- -- when activated, either bring gui up or down, depending on current state
- function removeGUIPlayers()
- local guiPlayers = gui.Frame.Players:GetChildren()
- for i = 1, #guiPlayers do
- guiPlayers[i]:remove()
- end
- end
- function incrementZIndex()
- zIndex = zIndex + 1
- if zIndex > 10000 then
- zIndex = 2
- end
- end
- function createPlayerGUINode(pos, playerText)
- local playerIcon = Instance.new("ImageLabel")
- playerIcon.Image = "http://www.roblox.com/asset/?id=0"
- playerIcon.BackgroundTransparency = 1
- playerIcon.BorderSizePixel = 0
- playerIcon.Size = UDim2.new(0,22.5,0,40.5)
- playerIcon.Position = UDim2.new(0,pos.x,0,pos.y)
- playerIcon.Parent = gui.Frame.Players
- playerIcon.ZIndex = zIndex
- incrementZIndex()
- local playerName = Instance.new("TextLabel")
- playerName.BackgroundTransparency = 1
- playerName.BorderSizePixel = 1
- playerName.Text = tostring(playerText)
- playerName.Size = UDim2.new(0,150,0,25)
- playerName.Parent = playerIcon
- playerName.Position = UDim2.new(0,-65,0,0)
- playerName.TextColor3 = Color3.new(0,0,0)
- playerName.ZIndex = zIndex
- incrementZIndex()
- end
- function updateGUI()
- removeGUIPlayers()
- local players = game.Players:GetChildren()
- for i = 1, #players do
- local playerTorso = players[i].Character:FindFirstChild("Torso")
- if playerTorso ~= nil then
- local posDiff = Vector3.new(torso.Position.x - playerTorso.Position.x,0,torso.Position.z - playerTorso.Position.z)
- if posDiff.magnitude < range and playerTorso.Parent.Name ~= torso.Parent.Name then
- -- translate coordinates to radar coordinates
- posDiff = Vector2.new((posDiff.x + range) * 0.5,(posDiff.z + range) * 0.5)
- local rotationVector = Tool.Angle.Value
- local denom = math.abs(rotationVector.x) + math.abs(rotationVector.z)
- local xDirect = (rotationVector.x/denom)
- local zDirect = (rotationVector.z/denom)
- local angle = math.atan2(1,0) - math.atan2(zDirect,xDirect)
- local point = Vector2.new(((posDiff.x - radarCenter.x) * math.cos(angle)) - ((posDiff.y - radarCenter.y) * math.sin(angle)) + radarCenter.x,
- ((posDiff.x - radarCenter.x) * math.sin(angle)) + ((posDiff.y - radarCenter.y) * math.cos(angle)) + radarCenter.y)
- createPlayerGUINode(point, playerTorso.Parent)
- elseif playerTorso.Parent.Name == torso.Parent.Name then
- createPlayerGUINode(radarCenter,playerTorso.Parent)
- end
- end
- end
- end
- while true do
- if guiEnabled then
- updateGUI()
- end
- wait()
- end
- end))
- Frame118.Name = "RadarGui"
- Frame118.Parent = SurfaceGui116
- Frame118.Size = UDim2.new(0, 100, 0, 100)
- Frame118.BackgroundColor = BrickColor.new("Institutional white")
- Frame118.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame118.BackgroundTransparency = 1
- Frame118.BorderSizePixel = 0
- Frame119.Parent = Frame118
- Frame119.BackgroundColor = BrickColor.new("Institutional white")
- Frame119.BackgroundColor3 = Color3.new(1, 1, 1)
- ImageLabel120.Name = "Radar"
- ImageLabel120.Parent = Frame119
- ImageLabel120.Position = UDim2.new(0, 0, 0, 30)
- ImageLabel120.Size = UDim2.new(0, 300, 0, 300)
- ImageLabel120.BackgroundColor = BrickColor.new("Institutional white")
- ImageLabel120.BackgroundColor3 = Color3.new(1, 1, 1)
- ImageLabel120.BackgroundTransparency = 1
- ImageLabel120.BorderSizePixel = 0
- ImageLabel120.Image = "http://www.roblox.com/asset/?id=29051010"
- Frame121.Name = "Players"
- Frame121.Parent = Frame119
- Frame121.BackgroundColor = BrickColor.new("Institutional white")
- Frame121.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame121.BackgroundTransparency = 1
- Frame121.BorderSizePixel = 0
- Vector3Value122.Name = "Angle"
- Vector3Value122.Parent = SurfaceGui116
- Vector3Value122.Value = Vector3.new(1, 0, 0)
- BlockMesh123.Parent = Part115
- BlockMesh123.Scale = Vector3.new(1, 1, 0.659994721)
- Seat124.Parent = Folder96
- Seat124.CFrame = CFrame.new(6.75900888, 6.14056778, -50.3630066, -0.999999225, 0.00075531553, -0.0010021897, 0.000847000163, 0.995487988, -0.0948842168, 0.000926000241, -0.0948849991, -0.995487869)
- Seat124.Orientation = Vector3.new(5.44000006, -179.940002, 0.0500000007)
- Seat124.Position = Vector3.new(6.75900888, 6.14056778, -50.3630066)
- Seat124.Rotation = Vector3.new(174.559998, -0.0599999987, -179.960007)
- Seat124.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- Seat124.Transparency = 1
- Seat124.Size = Vector3.new(1.76039124, 0.0500000007, 1.47039223)
- Seat124.Anchored = true
- Seat124.BackSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.BrickColor = BrickColor.new("Really black")
- Seat124.CanCollide = false
- Seat124.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.Material = Enum.Material.Metal
- Seat124.RightSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.TopSurface = Enum.SurfaceType.SmoothNoOutlines
- Seat124.brickColor = BrickColor.new("Really black")
- Seat124.FormFactor = Enum.FormFactor.Plate
- Seat124.formFactor = Enum.FormFactor.Plate
- BlockMesh125.Parent = Seat124
- Part126.Parent = Folder96
- Part126.CFrame = CFrame.new(7.39001799, 2.50001407, -72.359993, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Part126.Position = Vector3.new(7.39001799, 2.50001407, -72.359993)
- Part126.Transparency = 1
- Part126.Size = Vector3.new(4, 1, 2)
- Part126.BottomSurface = Enum.SurfaceType.Smooth
- Part126.TopSurface = Enum.SurfaceType.Smooth
- Folder127.Name = "RegenButton"
- Folder127.Parent = Model10
- Part128.Name = "Regen"
- Part128.Parent = Folder127
- Part128.CFrame = CFrame.new(8.20839977, 9.28084755, -72.4014664, 0, -3.50000009e-05, -1, 3.59998558e-05, 1, -3.50000009e-05, 1, -3.59998558e-05, 1.26055966e-09)
- Part128.Orientation = Vector3.new(0, -90, 0)
- Part128.Position = Vector3.new(8.20839977, 9.28084755, -72.4014664)
- Part128.Rotation = Vector3.new(0, -90, 0)
- Part128.Color = Color3.new(0.705882, 0.501961, 1)
- Part128.Size = Vector3.new(0.0500000007, 0.0500000007, 0.0500000007)
- Part128.Anchored = true
- Part128.BottomSurface = Enum.SurfaceType.Smooth
- Part128.BrickColor = BrickColor.new("Alder")
- Part128.CanCollide = false
- Part128.Material = Enum.Material.Neon
- Part128.TopSurface = Enum.SurfaceType.Smooth
- Part128.brickColor = BrickColor.new("Alder")
- ClickDetector129.Parent = Part128
- BoolValue130.Name = "CanRegen"
- BoolValue130.Parent = Part128
- BoolValue130.Value = true
- Script131.Name = "Regeneration"
- Script131.Parent = Part128
- table.insert(cors,sandbox(Script131,function()
- local kit = script.Parent.Parent.Parent
- local save = kit:clone()
- local detector = script.Parent:WaitForChild('ClickDetector')
- local canRegen = script.Parent:WaitForChild('CanRegen')
- kit:WaitForChild('Required'):WaitForChild('DriverSeat'):WaitForChild('Heli_SControl').Disabled = false
- detector.MouseClick:connect(function(player)
- if canRegen.Value == true then
- save.Parent = workspace
- kit:Destroy()
- kit = save
- kit:WaitForChild('Required'):WaitForChild('DriverSeat'):WaitForChild('Heli_SControl').Disabled = false
- end
- end)
- end))
- Part132.Name = "ROTOR"
- Part132.Parent = Model9
- Part132.CFrame = CFrame.new(8.20504379, 12.1293097, -53.6418686, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- Part132.Orientation = Vector3.new(0, 90, 0)
- Part132.Position = Vector3.new(8.20504379, 12.1293097, -53.6418686)
- Part132.Rotation = Vector3.new(0, 90, 0)
- Part132.Transparency = 1
- Part132.Size = Vector3.new(2.20000005, 0.200000003, 2.20000005)
- Part132.Anchored = true
- Part132.BottomSurface = Enum.SurfaceType.Smooth
- Part132.CanCollide = false
- Part132.CustomPhysicalProperties = 0.200000003, 0.300000012, 0.5, 1, 1
- Part132.TopParamA = -0.10000000149012
- Part132.TopParamB = 0.10000000149012
- Part132.TopSurface = Enum.SurfaceType.Motor
- Part132.FormFactor = Enum.FormFactor.Custom
- Part132.formFactor = Enum.FormFactor.Custom
- Sound133.Name = "START"
- Sound133.Parent = Part132
- Sound133.SoundId = "rbxassetid://150485913"
- Sound133.Volume = 0
- Sound134.Name = "STOP"
- Sound134.Parent = Part132
- Sound134.SoundId = "http://www.roblox.com/asset/?id=252436311"
- Part135.Name = "ROTOR2"
- Part135.Parent = Model9
- Part135.CFrame = CFrame.new(8.17953777, 9.36663628, -72.5365677, 0, 1, 0, 0, 0, -1, -1, 0, 0)
- Part135.Orientation = Vector3.new(90, 90, 0)
- Part135.Position = Vector3.new(8.17953777, 9.36663628, -72.5365677)
- Part135.Rotation = Vector3.new(90, 0, -90)
- Part135.Transparency = 1
- Part135.Size = Vector3.new(1, 0.200000003, 1)
- Part135.Anchored = true
- Part135.BottomSurface = Enum.SurfaceType.Smooth
- Part135.CanCollide = false
- Part135.CustomPhysicalProperties = 0.200000003, 0.300000012, 0.5, 1, 1
- Part135.TopParamA = -0.10000000149012
- Part135.TopParamB = 0.10000000149012
- Part135.TopSurface = Enum.SurfaceType.Motor
- Part135.FormFactor = Enum.FormFactor.Custom
- Part135.formFactor = Enum.FormFactor.Custom
- Sound136.Name = "START"
- Sound136.Parent = Part135
- Sound136.SoundId = "http://www.roblox.com/asset/?id=252436345"
- Sound137.Name = "STOP"
- Sound137.Parent = Part135
- Sound137.SoundId = "http://www.roblox.com/asset/?id=252436311"
- Sound137.Volume = 0
- Part138.Name = "l"
- Part138.Parent = Model9
- Part138.CFrame = CFrame.new(7.44075203, 13.968318, -74.4677582, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- Part138.Orientation = Vector3.new(0, 90, 0)
- Part138.Position = Vector3.new(7.44075203, 13.968318, -74.4677582)
- Part138.Rotation = Vector3.new(0, 90, 0)
- Part138.Transparency = 1
- Part138.Size = Vector3.new(0.319376022, 0.319376022, 0.319376022)
- Part138.Anchored = true
- Part138.CustomPhysicalProperties = 0.100000001, 0.400000006, 0.25, 1, 1
- Part138.FormFactor = Enum.FormFactor.Custom
- Part138.formFactor = Enum.FormFactor.Custom
- PointLight139.Parent = Part138
- PointLight139.Range = 9
- PointLight139.Brightness = 1.8799999952316
- PointLight139.Shadows = true
- Script140.Parent = Part138
- table.insert(cors,sandbox(Script140,function()
- b = script.Parent.Blue
- a = script.Parent.PointLight
- local oh,om = 6,30 -- Open Time (hours,minutes)
- local ch,cm = 18,00 -- Close Time (hours, minutes)
- local l = game:service("Lighting")
- if (om == nil) then om = 0 end
- if (cm == nil) then cm = 0 end
- function TimeChanged()
- local ot = (oh + (om/60)) * 60
- local ct = (ch + (cm/60)) * 60
- if (ot < ct) then
- if (l:GetMinutesAfterMidnight() >= ot) and (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- a.Enabled = true
- b.Enabled = true
- end
- elseif (ot > ct) then
- if (l:GetMinutesAfterMidnight() >= ot) or (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- b.Enabled = true
- a.Enabled = true
- end
- end
- end
- TimeChanged()
- game.Lighting.Changed:connect(function(property)
- if (property == "TimeOfDay") then
- TimeChanged()
- end
- end)
- -- Ganondude
- end))
- BillboardGui141.Name = "Blue"
- BillboardGui141.Parent = Part138
- BillboardGui141.Size = UDim2.new(7, 0, 7, 0)
- BillboardGui141.Active = true
- ImageLabel142.Name = "Light"
- ImageLabel142.Parent = BillboardGui141
- ImageLabel142.Position = UDim2.new(0.25, 0, 0.25, 0)
- ImageLabel142.Size = UDim2.new(0.5, 0, 0.5, 0)
- ImageLabel142.Active = true
- ImageLabel142.BackgroundColor = BrickColor.new("Light grey")
- ImageLabel142.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706)
- ImageLabel142.BackgroundTransparency = 1
- ImageLabel142.Image = "rbxassetid://145820175"
- Part143.Name = "l"
- Part143.Parent = Model9
- Part143.CFrame = CFrame.new(8.20531178, 4.40038681, -45.6737518, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- Part143.Orientation = Vector3.new(0, 90, 0)
- Part143.Position = Vector3.new(8.20531178, 4.40038681, -45.6737518)
- Part143.Rotation = Vector3.new(0, 90, 0)
- Part143.Transparency = 1
- Part143.Size = Vector3.new(0.319376022, 0.319376022, 0.319376022)
- Part143.Anchored = true
- Part143.CustomPhysicalProperties = 0.100000001, 0.400000006, 0.25, 1, 1
- Part143.FormFactor = Enum.FormFactor.Custom
- Part143.formFactor = Enum.FormFactor.Custom
- Script144.Parent = Part143
- table.insert(cors,sandbox(Script144,function()
- b = script.Parent.Blue
- a = script.Parent.SpotLight
- local oh,om = 6,30 -- Open Time (hours,minutes)
- local ch,cm = 18,00 -- Close Time (hours, minutes)
- local l = game:service("Lighting")
- if (om == nil) then om = 0 end
- if (cm == nil) then cm = 0 end
- function TimeChanged()
- local ot = (oh + (om/60)) * 60
- local ct = (ch + (cm/60)) * 60
- if (ot < ct) then
- if (l:GetMinutesAfterMidnight() >= ot) and (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- a.Enabled = true
- b.Enabled = true
- end
- elseif (ot > ct) then
- if (l:GetMinutesAfterMidnight() >= ot) or (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- b.Enabled = true
- a.Enabled = true
- end
- end
- end
- TimeChanged()
- game.Lighting.Changed:connect(function(property)
- if (property == "TimeOfDay") then
- TimeChanged()
- end
- end)
- -- Ganondude
- end))
- BillboardGui145.Name = "Blue"
- BillboardGui145.Parent = Part143
- BillboardGui145.Size = UDim2.new(7, 0, 7, 0)
- BillboardGui145.Active = true
- ImageLabel146.Name = "Light"
- ImageLabel146.Parent = BillboardGui145
- ImageLabel146.Position = UDim2.new(0.25, 0, 0.25, 0)
- ImageLabel146.Size = UDim2.new(0.5, 0, 0.5, 0)
- ImageLabel146.Active = true
- ImageLabel146.BackgroundColor = BrickColor.new("Light grey")
- ImageLabel146.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706)
- ImageLabel146.BackgroundTransparency = 1
- ImageLabel146.Image = "rbxassetid://145820175"
- SpotLight147.Parent = Part143
- SpotLight147.Face = Enum.NormalId.Left
- SpotLight147.Range = 60
- SpotLight147.Brightness = 20
- SpotLight147.Shadows = true
- Part148.Name = "l"
- Part148.Parent = Model9
- Part148.CFrame = CFrame.new(8.20531178, 6.40037489, -45.5337524, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- Part148.Orientation = Vector3.new(0, 90, 0)
- Part148.Position = Vector3.new(8.20531178, 6.40037489, -45.5337524)
- Part148.Rotation = Vector3.new(0, 90, 0)
- Part148.Transparency = 1
- Part148.Size = Vector3.new(0.319376022, 0.319376022, 0.319376022)
- Part148.Anchored = true
- Part148.CustomPhysicalProperties = 0.100000001, 0.400000006, 0.25, 1, 1
- Part148.FormFactor = Enum.FormFactor.Custom
- Part148.formFactor = Enum.FormFactor.Custom
- Script149.Parent = Part148
- table.insert(cors,sandbox(Script149,function()
- b = script.Parent.Blue
- a = script.Parent.SpotLight
- local oh,om = 6,30 -- Open Time (hours,minutes)
- local ch,cm = 18,00 -- Close Time (hours, minutes)
- local l = game:service("Lighting")
- if (om == nil) then om = 0 end
- if (cm == nil) then cm = 0 end
- function TimeChanged()
- local ot = (oh + (om/60)) * 60
- local ct = (ch + (cm/60)) * 60
- if (ot < ct) then
- if (l:GetMinutesAfterMidnight() >= ot) and (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- a.Enabled = true
- b.Enabled = true
- end
- elseif (ot > ct) then
- if (l:GetMinutesAfterMidnight() >= ot) or (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- b.Enabled = true
- a.Enabled = true
- end
- end
- end
- TimeChanged()
- game.Lighting.Changed:connect(function(property)
- if (property == "TimeOfDay") then
- TimeChanged()
- end
- end)
- -- Ganondude
- end))
- BillboardGui150.Name = "Blue"
- BillboardGui150.Parent = Part148
- BillboardGui150.Size = UDim2.new(7, 0, 7, 0)
- BillboardGui150.Active = true
- ImageLabel151.Name = "Light"
- ImageLabel151.Parent = BillboardGui150
- ImageLabel151.Position = UDim2.new(0.25, 0, 0.25, 0)
- ImageLabel151.Size = UDim2.new(0.5, 0, 0.5, 0)
- ImageLabel151.Active = true
- ImageLabel151.BackgroundColor = BrickColor.new("Light grey")
- ImageLabel151.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706)
- ImageLabel151.BackgroundTransparency = 1
- ImageLabel151.Image = "rbxassetid://145820175"
- SpotLight152.Parent = Part148
- SpotLight152.Face = Enum.NormalId.Left
- SpotLight152.Range = 60
- SpotLight152.Brightness = 20
- SpotLight152.Shadows = true
- Part153.Name = "l"
- Part153.Parent = Model9
- Part153.CFrame = CFrame.new(7.44075203, 10.1483221, -73.5377502, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- Part153.Orientation = Vector3.new(0, 90, 0)
- Part153.Position = Vector3.new(7.44075203, 10.1483221, -73.5377502)
- Part153.Rotation = Vector3.new(0, 90, 0)
- Part153.Transparency = 1
- Part153.Size = Vector3.new(0.319376022, 0.319376022, 0.319376022)
- Part153.Anchored = true
- Part153.CustomPhysicalProperties = 0.100000001, 0.400000006, 0.25, 1, 1
- Part153.FormFactor = Enum.FormFactor.Custom
- Part153.formFactor = Enum.FormFactor.Custom
- PointLight154.Parent = Part153
- PointLight154.Range = 9
- PointLight154.Brightness = 1.8799999952316
- PointLight154.Shadows = true
- Script155.Parent = Part153
- table.insert(cors,sandbox(Script155,function()
- b = script.Parent.Blue
- a = script.Parent.PointLight
- local oh,om = 6,30 -- Open Time (hours,minutes)
- local ch,cm = 18,00 -- Close Time (hours, minutes)
- local l = game:service("Lighting")
- if (om == nil) then om = 0 end
- if (cm == nil) then cm = 0 end
- function TimeChanged()
- local ot = (oh + (om/60)) * 60
- local ct = (ch + (cm/60)) * 60
- if (ot < ct) then
- if (l:GetMinutesAfterMidnight() >= ot) and (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- a.Enabled = true
- b.Enabled = true
- end
- elseif (ot > ct) then
- if (l:GetMinutesAfterMidnight() >= ot) or (l:GetMinutesAfterMidnight() <= ct) then
- b.Enabled = false
- a.Enabled = false
- else
- b.Enabled = true
- a.Enabled = true
- end
- end
- end
- TimeChanged()
- game.Lighting.Changed:connect(function(property)
- if (property == "TimeOfDay") then
- TimeChanged()
- end
- end)
- -- Ganondude
- end))
- BillboardGui156.Name = "Blue"
- BillboardGui156.Parent = Part153
- BillboardGui156.Size = UDim2.new(7, 0, 7, 0)
- BillboardGui156.Active = true
- ImageLabel157.Name = "Light"
- ImageLabel157.Parent = BillboardGui156
- ImageLabel157.Position = UDim2.new(0.25, 0, 0.25, 0)
- ImageLabel157.Size = UDim2.new(0.5, 0, 0.5, 0)
- ImageLabel157.Active = true
- ImageLabel157.BackgroundColor = BrickColor.new("Light grey")
- ImageLabel157.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706)
- ImageLabel157.BackgroundTransparency = 1
- ImageLabel157.Image = "rbxassetid://145820175"
- Script158.Name = "CarWeld"
- Script158.Parent = Model8
- table.insert(cors,sandbox(Script158,function()
- -- Created by Quenty (@Quenty, follow me on twitter).
- -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
- -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
- --[[ INSTRUCTIONS
- - Place in the model
- - Make sure model is anchored
- - That's it. It will weld the model and all children.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
- ]]
- --[[ DOCUMENTATION
- - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
- - Will work in PBS servers
- - Will work as long as it starts out with the part anchored
- - Stores the relative CFrame as a CFrame value
- - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
- - Utilizes a recursive algorith to find all parts in the model
- - Will reweld on script reparent if the script is initially parented to a tool.
- - Welds as fast as possible
- ]]
- -- qPerfectionWeld.lua
- -- Created 10/6/2014
- -- Author: Quenty
- -- Version 1.0.3
- -- Updated 10/14/2014 - Updated to 1.0.1
- --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
- -- Updated 10/14/2014 - Updated to 1.0.2
- --- Fixed bug fix.
- -- Updated 10/14/2014 - Updated to 1.0.3
- --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
- local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
- local function CallOnChildren(Instance, FunctionToCall)
- -- Calls a function on each of the children of a certain object, using recursion.
- FunctionToCall(Instance)
- for _, Child in next, Instance:GetChildren() do
- CallOnChildren(Child, FunctionToCall)
- end
- end
- local function GetNearestParent(Instance, ClassName)
- -- Returns the nearest parent of a certain class, or returns nil
- local Ancestor = Instance
- repeat
- Ancestor = Ancestor.Parent
- if Ancestor == nil then
- return nil
- end
- until Ancestor:IsA(ClassName)
- return Ancestor
- end
- local function GetBricks(StartInstance)
- local List = {}
- -- if StartInstance:IsA("BasePart") then
- -- List[#List+1] = StartInstance
- -- end
- CallOnChildren(StartInstance, function(Item)
- if Item:IsA("BasePart") and
- Item.Parent.Name ~= ("S") and
- Item.Parent.Name ~= ("TailRotor")and
- Item.Parent.Name ~= ("TopRotor") then
- List[#List+1] = Item;
- end
- end)
- return List
- end
- local function Modify(Instance, Values)
- -- Modifies an Instance by using a table.
- assert(type(Values) == "table", "Values is not a table");
- for Index, Value in next, Values do
- if type(Index) == "number" then
- Value.Parent = Instance
- else
- Instance[Index] = Value
- end
- end
- return Instance
- end
- local function Make(ClassType, Properties)
- -- Using a syntax hack to create a nice way to Make new items.
- return Modify(Instance.new(ClassType), Properties)
- end
- local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
- local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
- local function HasWheelJoint(Part)
- for _, SurfaceName in pairs(Surfaces) do
- for _, HingSurfaceName in pairs(HingSurfaces) do
- if Part[SurfaceName].Name == HingSurfaceName then
- return true
- end
- end
- end
- return false
- end
- local function ShouldBreakJoints(Part)
- --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
- -- definitely some edge cases.
- if NEVER_BREAK_JOINTS then
- return false
- end
- if HasWheelJoint(Part) then
- return false
- end
- local Connected = Part:GetConnectedParts()
- if #Connected == 1 then
- return false
- end
- for _, Item in pairs(Connected) do
- if HasWheelJoint(Item) then
- return false
- elseif not Item:IsDescendantOf(script.Parent) then
- return false
- end
- end
- return true
- end
- local function WeldTogether(Part0, Part1, JointType, WeldParent)
- --- Weld's 2 parts together
- -- @param Part0 The first part
- -- @param Part1 The second part (Dependent part most of the time).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
- -- @return The weld created.
- JointType = JointType or "Weld"
- local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
- local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
- Modify(NewWeld, {
- Name = "qCFrameWeldThingy";
- Part0 = Part0;
- Part1 = Part1;
- C0 = CFrame.new();--Part0.CFrame:inverse();
- C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
- Parent = Part1;
- })
- if not RelativeValue then
- RelativeValue = Make("CFrameValue", {
- Parent = Part1;
- Name = "qRelativeCFrameWeldValue";
- Archivable = true;
- Value = NewWeld.C1;
- })
- end
- return NewWeld
- end
- local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
- -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
- -- @param MainPart The part to weld the model to (can be in the model).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
- for _, Part in pairs(Parts) do
- if Part ~= MainPart then
- WeldTogether(MainPart, Part, JointType, MainPart)
- end
- end
- if not DoNotUnanchor then
- for _, Part in pairs(Parts) do
- Part.Anchored = false
- end
- MainPart.Anchored = false
- end
- end
- local function PerfectionWeld()
- local Tool = GetNearestParent(script, "Tool")
- local Parts = GetBricks(script.Parent)
- local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
- if PrimaryPart then
- WeldParts(Parts, PrimaryPart, "Weld", false)
- else
- warn("qWeld - Unable to weld part")
- end
- return Tool
- end
- local Tool = PerfectionWeld()
- if Tool and script.ClassName == "Script" then
- --- Don't bother with local scripts
- script.Parent.AncestryChanged:connect(function()
- PerfectionWeld()
- end)
- end
- -- Created by Quenty (@Quenty, follow me on twitter).
- end))
- StringValue159.Name = "Owner"
- StringValue159.Parent = Model8
- StringValue159.Value = "No Data"
- IntValue160.Name = "PlaneCheck"
- IntValue160.Parent = Model8
- StringValue161.Name = "Tool"
- StringValue161.Parent = Model8
- StringValue161.Value = "2011"
- IntValue162.Name = "Stunt"
- IntValue162.Parent = Model8
- Model163.Name = "TailRotor"
- Model163.Parent = Model6
- Script164.Name = "Weld"
- Script164.Parent = Model163
- table.insert(cors,sandbox(Script164,function()
- -- Created by Quenty (@Quenty, follow me on twitter).
- -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
- -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
- --[[ INSTRUCTIONS
- - Place in the model
- - Make sure model is anchored
- - That's it. It will weld the model and all children.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
- ]]
- --[[ DOCUMENTATION
- - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
- - Will work in PBS servers
- - Will work as long as it starts out with the part anchored
- - Stores the relative CFrame as a CFrame value
- - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
- - Utilizes a recursive algorith to find all parts in the model
- - Will reweld on script reparent if the script is initially parented to a tool.
- - Welds as fast as possible
- ]]
- -- qPerfectionWeld.lua
- -- Created 10/6/2014
- -- Author: Quenty
- -- Version 1.0.3
- -- Updated 10/14/2014 - Updated to 1.0.1
- --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
- -- Updated 10/14/2014 - Updated to 1.0.2
- --- Fixed bug fix.
- -- Updated 10/14/2014 - Updated to 1.0.3
- --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
- local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
- local function CallOnChildren(Instance, FunctionToCall)
- -- Calls a function on each of the children of a certain object, using recursion.
- FunctionToCall(Instance)
- for _, Child in next, Instance:GetChildren() do
- CallOnChildren(Child, FunctionToCall)
- end
- end
- local function GetNearestParent(Instance, ClassName)
- -- Returns the nearest parent of a certain class, or returns nil
- local Ancestor = Instance
- repeat
- Ancestor = Ancestor.Parent
- if Ancestor == nil then
- return nil
- end
- until Ancestor:IsA(ClassName)
- return Ancestor
- end
- local function GetBricks(StartInstance)
- local List = {}
- -- if StartInstance:IsA("BasePart") then
- -- List[#List+1] = StartInstance
- -- end
- CallOnChildren(StartInstance, function(Item)
- if Item:IsA("BasePart") then
- List[#List+1] = Item;
- end
- end)
- return List
- end
- local function Modify(Instance, Values)
- -- Modifies an Instance by using a table.
- assert(type(Values) == "table", "Values is not a table");
- for Index, Value in next, Values do
- if type(Index) == "number" then
- Value.Parent = Instance
- else
- Instance[Index] = Value
- end
- end
- return Instance
- end
- local function Make(ClassType, Properties)
- -- Using a syntax hack to create a nice way to Make new items.
- return Modify(Instance.new(ClassType), Properties)
- end
- local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
- local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
- local function HasWheelJoint(Part)
- for _, SurfaceName in pairs(Surfaces) do
- for _, HingSurfaceName in pairs(HingSurfaces) do
- if Part[SurfaceName].Name == HingSurfaceName then
- return true
- end
- end
- end
- return false
- end
- local function ShouldBreakJoints(Part)
- --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
- -- definitely some edge cases.
- if NEVER_BREAK_JOINTS then
- return false
- end
- if HasWheelJoint(Part) then
- return false
- end
- local Connected = Part:GetConnectedParts()
- if #Connected == 1 then
- return false
- end
- for _, Item in pairs(Connected) do
- if HasWheelJoint(Item) then
- return false
- elseif not Item:IsDescendantOf(script.Parent) then
- return false
- end
- end
- return true
- end
- local function WeldTogether(Part0, Part1, JointType, WeldParent)
- --- Weld's 2 parts together
- -- @param Part0 The first part
- -- @param Part1 The second part (Dependent part most of the time).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
- -- @return The weld created.
- JointType = JointType or "Weld"
- local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
- local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
- Modify(NewWeld, {
- Name = "qCFrameWeldThingy";
- Part0 = Part0;
- Part1 = Part1;
- C0 = CFrame.new();--Part0.CFrame:inverse();
- C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
- Parent = Part1;
- })
- if not RelativeValue then
- RelativeValue = Make("CFrameValue", {
- Parent = Part1;
- Name = "qRelativeCFrameWeldValue";
- Archivable = true;
- Value = NewWeld.C1;
- })
- end
- return NewWeld
- end
- local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
- -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
- -- @param MainPart The part to weld the model to (can be in the model).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
- for _, Part in pairs(Parts) do
- if ShouldBreakJoints(Part) then
- Part:BreakJoints()
- end
- end
- for _, Part in pairs(Parts) do
- if Part ~= MainPart then
- WeldTogether(MainPart, Part, JointType, MainPart)
- end
- end
- if not DoNotUnanchor then
- for _, Part in pairs(Parts) do
- Part.Anchored = false
- end
- MainPart.Anchored = false
- end
- end
- local function PerfectionWeld()
- local Tool = GetNearestParent(script, "Tool")
- local Parts = GetBricks(script.Parent)
- local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
- if PrimaryPart then
- WeldParts(Parts, PrimaryPart, "Weld", false)
- else
- warn("qWeld - Unable to weld part")
- end
- return Tool
- end
- local Tool = PerfectionWeld()
- if Tool and script.ClassName == "Script" then
- --- Don't bother with local scripts
- script.Parent.AncestryChanged:connect(function()
- PerfectionWeld()
- end)
- end
- -- Created by Quenty (@Quenty, follow me on twitter).
- end))
- MeshPart165.Parent = Model163
- MeshPart165.CFrame = CFrame.new(8.9596138, 9.35667038, -72.5371323, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart165.Orientation = Vector3.new(90, 90, 0)
- MeshPart165.Position = Vector3.new(8.9596138, 9.35667038, -72.5371323)
- MeshPart165.Rotation = Vector3.new(90, 0, -90)
- MeshPart165.Size = Vector3.new(0.483680218, 1.26647043, 0.946389616)
- MeshPart165.Anchored = true
- MeshPart165.CanCollide = false
- MeshPart165.Material = Enum.Material.Concrete
- MeshPart165.TextureID = "rbxassetid://753814487"
- UnionOperation166.Parent = Model163
- UnionOperation166.CFrame = CFrame.new(9.33064365, 9.36296368, -72.5089493, 0, 0, -1, 0.999963522, -0.00854399614, 0, -0.00854399614, -0.999963582, 0)
- UnionOperation166.Orientation = Vector3.new(0, -90, 90.4899979)
- UnionOperation166.Position = Vector3.new(9.33064365, 9.36296368, -72.5089493)
- UnionOperation166.Rotation = Vector3.new(-90.4899979, -90, 0)
- UnionOperation166.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- UnionOperation166.Size = Vector3.new(7.13023043, 0.441696078, 0.088342078)
- UnionOperation166.Anchored = true
- UnionOperation166.BrickColor = BrickColor.new("Really black")
- UnionOperation166.CanCollide = false
- UnionOperation166.Material = Enum.Material.Metal
- UnionOperation166.brickColor = BrickColor.new("Really black")
- Model167.Name = "TopRotor"
- Model167.Parent = Model6
- Script168.Name = "Weld"
- Script168.Parent = Model167
- table.insert(cors,sandbox(Script168,function()
- -- Created by Quenty (@Quenty, follow me on twitter).
- -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
- -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
- --[[ INSTRUCTIONS
- - Place in the model
- - Make sure model is anchored
- - That's it. It will weld the model and all children.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
- This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
- ]]
- --[[ DOCUMENTATION
- - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
- - Will work in PBS servers
- - Will work as long as it starts out with the part anchored
- - Stores the relative CFrame as a CFrame value
- - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
- - Utilizes a recursive algorith to find all parts in the model
- - Will reweld on script reparent if the script is initially parented to a tool.
- - Welds as fast as possible
- ]]
- -- qPerfectionWeld.lua
- -- Created 10/6/2014
- -- Author: Quenty
- -- Version 1.0.3
- -- Updated 10/14/2014 - Updated to 1.0.1
- --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
- -- Updated 10/14/2014 - Updated to 1.0.2
- --- Fixed bug fix.
- -- Updated 10/14/2014 - Updated to 1.0.3
- --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
- local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
- local function CallOnChildren(Instance, FunctionToCall)
- -- Calls a function on each of the children of a certain object, using recursion.
- FunctionToCall(Instance)
- for _, Child in next, Instance:GetChildren() do
- CallOnChildren(Child, FunctionToCall)
- end
- end
- local function GetNearestParent(Instance, ClassName)
- -- Returns the nearest parent of a certain class, or returns nil
- local Ancestor = Instance
- repeat
- Ancestor = Ancestor.Parent
- if Ancestor == nil then
- return nil
- end
- until Ancestor:IsA(ClassName)
- return Ancestor
- end
- local function GetBricks(StartInstance)
- local List = {}
- -- if StartInstance:IsA("BasePart") then
- -- List[#List+1] = StartInstance
- -- end
- CallOnChildren(StartInstance, function(Item)
- if Item:IsA("BasePart") then
- List[#List+1] = Item;
- end
- end)
- return List
- end
- local function Modify(Instance, Values)
- -- Modifies an Instance by using a table.
- assert(type(Values) == "table", "Values is not a table");
- for Index, Value in next, Values do
- if type(Index) == "number" then
- Value.Parent = Instance
- else
- Instance[Index] = Value
- end
- end
- return Instance
- end
- local function Make(ClassType, Properties)
- -- Using a syntax hack to create a nice way to Make new items.
- return Modify(Instance.new(ClassType), Properties)
- end
- local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
- local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
- local function HasWheelJoint(Part)
- for _, SurfaceName in pairs(Surfaces) do
- for _, HingSurfaceName in pairs(HingSurfaces) do
- if Part[SurfaceName].Name == HingSurfaceName then
- return true
- end
- end
- end
- return false
- end
- local function ShouldBreakJoints(Part)
- --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
- -- definitely some edge cases.
- if NEVER_BREAK_JOINTS then
- return false
- end
- if HasWheelJoint(Part) then
- return false
- end
- local Connected = Part:GetConnectedParts()
- if #Connected == 1 then
- return false
- end
- for _, Item in pairs(Connected) do
- if HasWheelJoint(Item) then
- return false
- elseif not Item:IsDescendantOf(script.Parent) then
- return false
- end
- end
- return true
- end
- local function WeldTogether(Part0, Part1, JointType, WeldParent)
- --- Weld's 2 parts together
- -- @param Part0 The first part
- -- @param Part1 The second part (Dependent part most of the time).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
- -- @return The weld created.
- JointType = JointType or "Weld"
- local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
- local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
- Modify(NewWeld, {
- Name = "qCFrameWeldThingy";
- Part0 = Part0;
- Part1 = Part1;
- C0 = CFrame.new();--Part0.CFrame:inverse();
- C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
- Parent = Part1;
- })
- if not RelativeValue then
- RelativeValue = Make("CFrameValue", {
- Parent = Part1;
- Name = "qRelativeCFrameWeldValue";
- Archivable = true;
- Value = NewWeld.C1;
- })
- end
- return NewWeld
- end
- local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
- -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
- -- @param MainPart The part to weld the model to (can be in the model).
- -- @param [JointType] The type of joint. Defaults to weld.
- -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
- for _, Part in pairs(Parts) do
- if ShouldBreakJoints(Part) then
- Part:BreakJoints()
- end
- end
- for _, Part in pairs(Parts) do
- if Part ~= MainPart then
- WeldTogether(MainPart, Part, JointType, MainPart)
- end
- end
- if not DoNotUnanchor then
- for _, Part in pairs(Parts) do
- Part.Anchored = false
- end
- MainPart.Anchored = false
- end
- end
- local function PerfectionWeld()
- local Tool = GetNearestParent(script, "Tool")
- local Parts = GetBricks(script.Parent)
- local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
- if PrimaryPart then
- WeldParts(Parts, PrimaryPart, "Weld", false)
- else
- warn("qWeld - Unable to weld part")
- end
- return Tool
- end
- local Tool = PerfectionWeld()
- if Tool and script.ClassName == "Script" then
- --- Don't bother with local scripts
- script.Parent.AncestryChanged:connect(function()
- PerfectionWeld()
- end)
- end
- -- Created by Quenty (@Quenty, follow me on twitter).
- end))
- MeshPart169.Parent = Model167
- MeshPart169.CFrame = CFrame.new(8.16751575, 13.186902, -53.8059731, 2.30000005e-05, 1, 0, 0, 0, -1, -1, 2.30000005e-05, 0)
- MeshPart169.Orientation = Vector3.new(90, 90, 0)
- MeshPart169.Position = Vector3.new(8.16751575, 13.186902, -53.8059731)
- MeshPart169.Rotation = Vector3.new(90, 0, -90)
- MeshPart169.Size = Vector3.new(5.82631254, 6.07807446, 1.8321557)
- MeshPart169.Anchored = true
- MeshPart169.CanCollide = false
- MeshPart169.Material = Enum.Material.Concrete
- MeshPart169.TextureID = "rbxassetid://753814487"
- UnionOperation170.Parent = Model167
- UnionOperation170.CFrame = CFrame.new(13.5536718, 13.4305601, -46.3177948, -0.580812931, -0.018743068, 0.813821197, -0.00187699974, 0.999763131, 0.0216858946, -0.814034879, 0.0110679064, -0.58071053)
- UnionOperation170.Orientation = Vector3.new(-1.24000001, 125.510002, -0.109999999)
- UnionOperation170.Position = Vector3.new(13.5536718, 13.4305601, -46.3177948)
- UnionOperation170.Rotation = Vector3.new(-177.860001, 54.4700012, 178.149994)
- UnionOperation170.Color = Color3.new(0.937255, 0.721569, 0.219608)
- UnionOperation170.Size = Vector3.new(14.4147911, 0.0683179647, 0.819819748)
- UnionOperation170.Anchored = true
- UnionOperation170.BrickColor = BrickColor.new("Gold")
- UnionOperation170.CanCollide = false
- UnionOperation170.Material = Enum.Material.Metal
- UnionOperation170.brickColor = BrickColor.new("Gold")
- UnionOperation171.Parent = Model167
- UnionOperation171.CFrame = CFrame.new(-0.587390006, 13.2079782, -56.3086739, 0.957236469, -0.0187379979, -0.288699508, 0.0147420075, 0.999763131, -0.0160096418, 0.288931161, 0.0110690016, 0.957285881)
- UnionOperation171.Orientation = Vector3.new(0.920000017, -16.7800007, 0.839999974)
- UnionOperation171.Position = Vector3.new(-0.587390006, 13.2079782, -56.3086739)
- UnionOperation171.Rotation = Vector3.new(0.959999979, -16.7800007, 1.12)
- UnionOperation171.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- UnionOperation171.Size = Vector3.new(14.4147835, 0.0683190152, 0.819819748)
- UnionOperation171.Anchored = true
- UnionOperation171.BrickColor = BrickColor.new("Really black")
- UnionOperation171.CanCollide = false
- UnionOperation171.Material = Enum.Material.Metal
- UnionOperation171.brickColor = BrickColor.new("Really black")
- UnionOperation172.Parent = Model167
- UnionOperation172.CFrame = CFrame.new(7.9359479, 13.4397736, -62.8178978, 0.0347620137, -0.0187520105, -0.999219656, -0.0104060043, 0.999763012, -0.0191242211, 0.999341488, 0.0110626798, 0.0345586389)
- UnionOperation172.Orientation = Vector3.new(1.10000002, -88.0199966, -0.600000024)
- UnionOperation172.Position = Vector3.new(7.9359479, 13.4397736, -62.8178978)
- UnionOperation172.Rotation = Vector3.new(28.9599991, -87.7399979, 28.3400002)
- UnionOperation172.Color = Color3.new(0.937255, 0.721569, 0.219608)
- UnionOperation172.Size = Vector3.new(14.4148083, 0.0683179647, 0.819802999)
- UnionOperation172.Anchored = true
- UnionOperation172.BrickColor = BrickColor.new("Gold")
- UnionOperation172.CanCollide = false
- UnionOperation172.Material = Enum.Material.Metal
- UnionOperation172.brickColor = BrickColor.new("Gold")
- UnionOperation173.Parent = Model167
- UnionOperation173.CFrame = CFrame.new(2.89528394, 13.2310143, -46.337429, 0.591503978, -0.0187360533, 0.806084454, 0.0200030003, 0.99976337, 0.00855960511, -0.806053996, 0.0110610668, 0.591738701)
- UnionOperation173.Orientation = Vector3.new(-0.49000001, 53.7200012, 1.14999998)
- UnionOperation173.Position = Vector3.new(2.89528394, 13.2310143, -46.337429)
- UnionOperation173.Rotation = Vector3.new(-0.829999983, 53.7200012, 1.80999994)
- UnionOperation173.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- UnionOperation173.Size = Vector3.new(14.4147749, 0.0683190152, 0.819802999)
- UnionOperation173.Anchored = true
- UnionOperation173.BrickColor = BrickColor.new("Really black")
- UnionOperation173.CanCollide = false
- UnionOperation173.Material = Enum.Material.Metal
- UnionOperation173.brickColor = BrickColor.new("Really black")
- UnionOperation174.Parent = Model167
- UnionOperation174.CFrame = CFrame.new(16.8343639, 13.5225916, -56.6540833, -0.945297658, -0.0187311713, -0.325670838, -0.0213159919, 0.99976325, 0.00437011989, 0.325511873, 0.0110730603, -0.945473194)
- UnionOperation174.Orientation = Vector3.new(-0.25, -160.990005, -1.22000003)
- UnionOperation174.Position = Vector3.new(16.8343639, 13.5225916, -56.6540833)
- UnionOperation174.Rotation = Vector3.new(-179.740005, -19.0100002, 178.860001)
- UnionOperation174.Color = Color3.new(0.937255, 0.721569, 0.219608)
- UnionOperation174.Size = Vector3.new(14.4147749, 0.0683190152, 0.819828153)
- UnionOperation174.Anchored = true
- UnionOperation174.BrickColor = BrickColor.new("Gold")
- UnionOperation174.CanCollide = false
- UnionOperation174.Material = Enum.Material.Metal
- UnionOperation174.brickColor = BrickColor.new("Gold")
- Model175.Name = "Ignition"
- Model175.Parent = Model6
- Part176.Name = "Shutdown"
- Part176.Parent = Model175
- Part176.CFrame = CFrame.new(8.2024231, 9.41920757, -47.5142288, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Part176.Orientation = Vector3.new(90, 0, 0)
- Part176.Position = Vector3.new(8.2024231, 9.41920757, -47.5142288)
- Part176.Rotation = Vector3.new(90, 0, 0)
- Part176.Color = Color3.new(1, 0, 0)
- Part176.Size = Vector3.new(0.400000006, 0.200000003, 0.200000003)
- Part176.BottomSurface = Enum.SurfaceType.Weld
- Part176.BrickColor = BrickColor.new("Really red")
- Part176.Material = Enum.Material.Neon
- Part176.TopSurface = Enum.SurfaceType.Smooth
- Part176.brickColor = BrickColor.new("Really red")
- BlockMesh177.Parent = Part176
- BlockMesh177.Scale = Vector3.new(1, 1, 0.5)
- Sound178.Name = "BUTTON"
- Sound178.Parent = Part176
- Sound178.SoundId = "http://www.roblox.com/asset/?id=138081500"
- Script179.Name = "CLICK"
- Script179.Parent = Part176
- table.insert(cors,sandbox(Script179,function()
- function onClicked()
- script.Parent.BUTTON:Play()
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- ClickDetector180.Parent = Part176
- ClickDetector180.MaxActivationDistance = 100
- Script181.Parent = Part176
- table.insert(cors,sandbox(Script181,function()
- prop = script.Parent.Parent.Parent.Heli.Plane.Body.ROTOR2
- function onClicked()
- prop.TopSurfaceInput = "NoInput"
- prop.STOP:Play()
- prop.TopParamA = 0
- prop.TopParamB = 0
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- Script182.Parent = Part176
- table.insert(cors,sandbox(Script182,function()
- prop = script.Parent.Parent.Parent.Heli.Plane.Body.ROTOR
- function onClicked()
- prop.TopSurfaceInput = "NoInput"
- prop.STOP:Play()
- prop.TopParamA = 0
- prop.TopParamB = 0
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- Part183.Name = "Startup"
- Part183.Parent = Model175
- Part183.CFrame = CFrame.new(8.2024231, 9.21926975, -47.5142899, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Part183.Orientation = Vector3.new(90, 0, 0)
- Part183.Position = Vector3.new(8.2024231, 9.21926975, -47.5142899)
- Part183.Rotation = Vector3.new(90, 0, 0)
- Part183.Color = Color3.new(0, 1, 0)
- Part183.Size = Vector3.new(0.400000006, 0.200000003, 0.200000003)
- Part183.BottomSurface = Enum.SurfaceType.Weld
- Part183.BrickColor = BrickColor.new("Lime green")
- Part183.Material = Enum.Material.Neon
- Part183.TopSurface = Enum.SurfaceType.Smooth
- Part183.brickColor = BrickColor.new("Lime green")
- BlockMesh184.Parent = Part183
- BlockMesh184.Scale = Vector3.new(1, 1, 0.5)
- Sound185.Name = "BUTTON"
- Sound185.Parent = Part183
- Sound185.SoundId = "http://www.roblox.com/asset/?id=138081500"
- Script186.Name = "CLICK"
- Script186.Parent = Part183
- table.insert(cors,sandbox(Script186,function()
- function onClicked()
- script.Parent.BUTTON:Play()
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- ClickDetector187.Parent = Part183
- ClickDetector187.MaxActivationDistance = 100
- Script188.Parent = Part183
- table.insert(cors,sandbox(Script188,function()
- prop = script.Parent.Parent.Parent.Heli.Plane.Body.ROTOR
- function onClicked()
- prop.TopSurfaceInput = "Constant"
- prop.START:Play()
- for i = 0, 2, .004 do
- prop.TopParamA = i
- prop.TopParamB = i
- wait(0.01)
- end
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- Script189.Parent = Part183
- table.insert(cors,sandbox(Script189,function()
- prop = script.Parent.Parent.Parent.Heli.Plane.Body.ROTOR2
- function onClicked()
- prop.TopSurfaceInput = "Constant"
- prop.START:Play()
- for i = 0, 2, .005 do
- prop.TopParamA = i
- prop.TopParamB = i
- wait(0.01)
- end
- end
- script.Parent.ClickDetector.MouseClick:connect(onClicked)
- end))
- Camera190.Name = "ThumbnailCamera"
- Camera190.Parent = Model0
- Camera190.CFrame = CFrame.new(-86.7071228, 10.8974686, 57.1042633, 0.907782853, 0.0109846741, -0.419296652, -9.31322464e-10, 0.999657154, 0.0261888746, 0.419440448, -0.0237738118, 0.907471597)
- Camera190.CoordinateFrame = CFrame.new(-86.7071228, 10.8974686, 57.1042633, 0.907782853, 0.0109846741, -0.419296652, -9.31322464e-10, 0.999657154, 0.0261888746, 0.419440448, -0.0237738118, 0.907471597)
- Camera190.FieldOfView = 20
- Camera190.Focus = CFrame.new(-85.8685303, 10.8450909, 55.2893219, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Camera190.focus = CFrame.new(-85.8685303, 10.8450909, 55.2893219, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- for i,v in pairs(mas:GetChildren()) do
- v.Parent = script
- pcall(function() v:MakeJoints() end)
- end
- mas:Destroy()
- for i,v in pairs(cors) do
- spawn(function()
- pcall(v)
- end)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement