types and sound editor entity

This commit is contained in:
2024-03-07 14:04:15 -05:00
parent 6000e80164
commit a6df78e64f
3 changed files with 37 additions and 29 deletions

View File

@@ -2,16 +2,17 @@
--!native
--!strict
type UDP = UnreliableRemoteEvent
type FlashlightUDP = RBXScriptConnection
type LocalPlayer = Player
type HumanoidRootPart = BasePart
type EulerXYZ_struct = {number}
local Flashlight = {}
Flashlight.__index = Flashlight
type UDP = UnreliableRemoteEvent
type FlashlightUDP = RBXScriptConnection
type LocalPlayer = Player
type HumanoidRootPart = BasePart
type EulerXYZ_struct = {number}
Flashlight.Enabled = false
Flashlight.HeadHeight = 1
@@ -45,7 +46,7 @@ local function FlashlightPart(HumanoidRootPart: HumanoidRootPart): (Part, SpotLi
ToggleSound.Name = "Flashlight"
ToggleSound.SoundId = "rbxassetid://16454678462"
ToggleSound.Volume = .5
ToggleSound.Parent = HumanoidRootPart
ToggleSound.Parent = FlashlightPart
FlashlightPart.Parent = HumanoidRootPart

View File

@@ -4,12 +4,14 @@
--All debugging objects such as light source indicating objects will be turned invisible
export type Entities = {IndexedEntities: {Instance}}
type HideEditor = (a1: BasePart | Folder, a2: boolean) -> ()
type LuaChangeableContainer = Script | LocalScript
local Players = game:GetService("Players")
local CS = game:GetService("CollectionService")
export type Entities = {
IndexedEntities: {Instance}
}
local StudioEntities = {
IndexedEntities = {}
}
@@ -20,6 +22,19 @@ local function HidePart(Part: BasePart, enabled: boolean)
Part.CastShadow = false
end
local function HideIndicatorPart(Part: BasePart, enabled: boolean)
local billboard_light_indicator = Part:FindFirstChildOfClass("BillboardGui")
if billboard_light_indicator then
if enabled then
billboard_light_indicator:Destroy()
end
else
warn("Indicator source had no image indicator", Part:GetFullName())
end
HidePart(Part, enabled)
end
local function HideBarrierCollision(Part: BasePart, enabled: boolean)
Part.Transparency = enabled and 1 or .9
Part.CastShadow = false
@@ -30,12 +45,8 @@ local function HideRaycastContainers(Folder: Folder, enabled: boolean)
local End = Folder:WaitForChild("End") :: BasePart
local Start = Folder:WaitForChild("Start") :: BasePart
End.CanCollide = false
End.CastShadow = false
End.Transparency = enabled and 1 or .9
Start.CanCollide = false
Start.CastShadow = false
Start.Transparency = enabled and 1 or .9
HidePart(Start, enabled)
HidePart(End, enabled)
end
local function HideLadderContact(Part: BasePart, enabled: boolean)
@@ -45,17 +56,15 @@ local function HideLadderContact(Part: BasePart, enabled: boolean)
end
local EditorEntities = {
["LightSource"] = HidePart,
["LightSource"] = HideIndicatorPart,
["SoundSource"] = HideIndicatorPart,
["PulleyRopeContact"] = HidePart,
["BarrierCollision"] = HideBarrierCollision,
["StairSource"] = HideBarrierCollision,
["RaycastContainer"] = HideRaycastContainers,
["LadderContact"] = HideLadderContact
["BarrierCollision"] = HideBarrierCollision,
["StairSource"] = HideBarrierCollision,
["RaycastContainer"] = HideRaycastContainers,
["LadderContact"] = HideLadderContact,
}
type HideEditor = (a1: BasePart | Folder, a2: boolean) -> ()
type LuaChangeableContainer = Script | LocalScript
function StudioEntities.indexAll(enabled: boolean): Entities
if #StudioEntities.IndexedEntities == 0 then
--Run when the server starts

View File

@@ -17,10 +17,8 @@ function Tags.constructor()
for n: number = 1, #AllTags do
local TagName = AllTags[n]
if TagName ~= "RopeMasterObject" and TagName ~= "ServerGuard_Physics" then
local Tagged = CS:GetTagged(TagName)
Exports[TagName] = #Tagged>1 and Tagged or Tagged[1]
end
local Tagged = CS:GetTagged(TagName)
Exports[TagName] = #Tagged>1 and Tagged or Tagged[1]
end
return setmetatable({
Exports = Exports