diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Lighting/base_shuttle_lighting.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Lighting/base_shuttle_lighting.ftl new file mode 100644 index 0000000000..8077d8c6ae --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Lighting/base_shuttle_lighting.ftl @@ -0,0 +1,59 @@ +ent-ADTAlwaysPoweredShuttleLight = фара шаттла + .desc = Всегда работающая фара шаттла. + .suffix = Всегда запитанный +ent-ADTPoweredShuttleLightEmpty = фара шаттла + .desc = Осветительный прибор. Потребляет энергию и излучает свет, если оснащён лампой-трубкой. + .suffix = Пустой +ent-ADTPoweredShuttleLight = { ent-ADTPoweredShuttleLightEmpty } + .desc = Осветительный прибор. Потребляет энергию и излучает свет, если оснащён лампой-трубкой. + +ent-ADTAlwaysPoweredShuttleLightLED = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, LED, Светодиод + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightLED = { ent-ADTPoweredShuttleLight } + .desc = Осветительный прибор. Потребляет энергию и излучает свет, если оснащён лампой-трубкой. + .suffix = LED, Светодиод + +ent-ADTAlwaysPoweredShuttleLightSodium = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Натриевый + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightSodium = { ent-ADTPoweredShuttleLight } + .desc = Осветительный прибор. Потребляет энергию и излучает свет, если оснащён лампой-трубкой. + .suffix = Натриевый + +ent-ADTPoweredShuttleLightCyan = { ent-ADTPoweredShuttleLight } + .suffix = Голубой + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightCyan = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Голубой + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightBlue = { ent-ADTPoweredShuttleLight } + .suffix = Синий + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightBlue = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Синий + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightPink = { ent-ADTPoweredShuttleLight } + .suffix = Розовый + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightPink = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Розовый + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightOrange = { ent-ADTPoweredShuttleLight } + .suffix = Оранжевый + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightOrange = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Оранжевый + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightRed = { ent-ADTPoweredShuttleLight } + .suffix = Красный + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightRed = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Красный + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } +ent-ADTPoweredShuttleLightGreen = { ent-ADTPoweredShuttleLight } + .suffix = Зелёный + .desc = { ent-ADTPoweredShuttleLight.desc } +ent-AlwaysADTPoweredShuttleLightGreen = { ent-ADTAlwaysPoweredShuttleLight } + .suffix = Всегда запитанный, Зелёный + .desc = { ent-ADTAlwaysPoweredShuttleLight.desc } diff --git a/Resources/Prototypes/ADT/Entities/Structures/Lighting/base_shuttle_lighting.yml b/Resources/Prototypes/ADT/Entities/Structures/Lighting/base_shuttle_lighting.yml new file mode 100644 index 0000000000..b26c12dde5 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Lighting/base_shuttle_lighting.yml @@ -0,0 +1,409 @@ +#==Suffix Guide== + +#Always Powered - light doesn't need power to give off life +#Empty - on map init, light spawns without bulb +#Blue/Sodium/etc. - the color of the light + + +# ALWAYS POWERED (BASE) + + +- type: entity + id: ADTAlwaysPoweredShuttleLight + name: shuttle light + description: "An always powered shuttle light." + suffix: "Always powered" + components: + - type: MeleeSound + soundGroups: + Brute: + collection: GlassSmash + - type: Transform + anchored: true + - type: Clickable + - type: InteractionOutline + - type: Construction + graph: LightFixture + node: tubeLight + - type: Sprite + sprite: ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi + drawdepth: WallMountedItems + layers: + - map: ["enum.PoweredLightLayers.Base"] + state: base + - map: ["enum.PoweredLightLayers.Glow"] + state: glow + shader: unshaded + state: base + - type: PointLight + color: "#FAFFFF" # 5000K color temp + mask: /Textures/Effects/LightMasks/cone.png + # rotation: 45 + autoRot: true + energy: 4 + radius: 9 + softness: 2.1 + offset: "0, -0.9" + - type: HandheldLight + addPrefix: false + - type: Appearance + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Metallic + - type: RCDDeconstructable + cost: 4 + delay: 2 + fx: EffectRCDDeconstruct2 + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 200 + behaviors: #excess damage, don't spawn entities. + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:EmptyAllContainersBehaviour + - !type:SpawnEntitiesBehavior + spawn: + SheetSteel1: + min: 2 + max: 2 + - !type:DoActsBehavior + acts: ["Destruction"] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + placement: + mode: SnapgridCenter + snap: + - Wallmount + + +# EMPTY + + +- type: entity + name: shuttle light + description: "A light fixture. Draws power and produces light when equipped with a light tube." + id: ADTPoweredShuttleLightEmpty + suffix: Empty + parent: ADTAlwaysPoweredShuttleLight + components: + - type: Sprite + sprite: ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi + state: empty + - type: PointLight + enabled: false + - type: PoweredLight + bulb: Tube + - type: ContainerContainer + containers: + light_bulb: !type:ContainerSlot + - type: ApcPowerReceiver + - type: ExtensionCableReceiver + - type: DeviceNetwork + deviceNetId: Wireless + receiveFrequencyId: SmartLight + - type: WirelessNetworkConnection + range: 200 + - type: DeviceLinkSink + ports: + - On + - Off + - Toggle + - type: Appearance + - type: PoweredLightVisuals + blinkingSound: + path: "/Audio/Machines/light_tube_on.ogg" + spriteStateMap: + empty: empty + off: base + on: base + broken: broken + burned: burned + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + + +# BASIC POWERED + + +- type: entity + id: ADTPoweredShuttleLight + description: "A light fixture. Draws power and produces light when equipped with a light tube." + suffix: "" + parent: ADTPoweredShuttleLightEmpty + components: + - type: Sprite + state: base + - type: PointLight + enabled: true + - type: PoweredLight + hasLampOnSpawn: LightTube + - type: AmbientOnPowered + - type: AmbientSound + volume: -15 + range: 2 + sound: + path: /Audio/Ambience/Objects/light_hum.ogg + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + + +# LED + + +- type: entity + parent: ADTAlwaysPoweredShuttleLight + id: ADTAlwaysPoweredShuttleLightLED + suffix: Always Powered, LED + components: + - type: PointLight + radius: 15 + energy: 4.5 + softness: 0.9 + color: "#EEEEFF" + +- type: entity + id: ADTPoweredShuttleLightLED + description: "A light fixture. Draws power and produces light when equipped with a light tube." + suffix: LED + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LedLightTube + - type: PointLight + radius: 12 + energy: 6 + softness: 0.9 + color: "#EEEEFF" + - type: DamageOnInteract + damage: + types: + Heat: 1 # LEDs don't get as hot + popupText: powered-light-component-burn-hand + + +# SODIUM (НАТРИЕВЫЕ) + + +- type: entity + parent: ADTAlwaysPoweredShuttleLight + id: ADTAlwaysPoweredShuttleLightSodium + suffix: Always Powered, Sodium + components: + - type: PointLight + radius: 13 + energy: 6.5 + softness: 0.5 + color: "#FFAF38" + +- type: entity + id: ADTPoweredShuttleLightSodium + description: "A light fixture. Draws power and produces light when equipped with a light tube." + suffix: Sodium + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: SodiumLightTube + - type: PointLight + radius: 12 + energy: 4.5 + softness: 0.9 + color: "#FFAF38" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + + +# COLORED + + +- type: entity + id: ADTPoweredShuttleLightCyan + suffix: Cyan + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalCyan + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#47f8ff" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightCyan + suffix: Always Powered, Cyan + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#47f8ff" + +- type: entity + id: ADTPoweredShuttleLightBlue + suffix: Blue + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalBlue + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#39a1ff" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightBlue + suffix: Always Powered, Blue + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#39a1ff" + +- type: entity + id: ADTPoweredShuttleLightPink + suffix: Pink + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalPink + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#ff66cc" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightPink + suffix: Always Powered, Pink + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#ff66cc" + +- type: entity + id: ADTPoweredShuttleLightOrange + suffix: Orange + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalOrange + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#ff8227" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightOrange + suffix: Always Powered, Orange + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#ff8227" + +- type: entity + id: ADTPoweredShuttleLightRed + suffix: Red + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalRed + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#fb4747" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightRed + suffix: Always Powered, Red + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#fb4747" + +- type: entity + id: ADTPoweredShuttleLightGreen + suffix: Green + parent: ADTPoweredShuttleLight + components: + - type: PoweredLight + hasLampOnSpawn: LightTubeCrystalGreen + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#52ff39" + - type: DamageOnInteract + damage: + types: + Heat: 2 + popupText: powered-light-component-burn-hand + +- type: entity + id: ADTAlwaysPoweredShuttleLightGreen + suffix: Always Powered, Green + parent: ADTAlwaysPoweredShuttleLight + components: + - type: PointLight + radius: 10 + energy: 4.5 + softness: 0.5 + color: "#52ff39" diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/base.png b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/base.png new file mode 100644 index 0000000000..04a47ecc43 Binary files /dev/null and b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/base.png differ diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/broken.png b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/broken.png new file mode 100644 index 0000000000..268a7c1820 Binary files /dev/null and b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/broken.png differ diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/burned.png b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/burned.png new file mode 100644 index 0000000000..073bc2f81b Binary files /dev/null and b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/burned.png differ diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/empty.png b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/empty.png new file mode 100644 index 0000000000..1882290e90 Binary files /dev/null and b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/empty.png differ diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/glow.png b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/glow.png new file mode 100644 index 0000000000..c42d4c1714 Binary files /dev/null and b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/glow.png differ diff --git a/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/meta.json b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/meta.json new file mode 100644 index 0000000000..4ad8e207bc --- /dev/null +++ b/Resources/Textures/ADT/Structures/Wallmounts/Lighting/shuttle_light.rsi/meta.json @@ -0,0 +1,31 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "made by discord: prazat911", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "broken", + "directions": 4 + }, + { + "name": "burned", + "directions": 4 + }, + { + "name": "base", + "directions": 4 + }, + { + "name": "empty", + "directions": 4 + }, + { + "name": "glow", + "directions": 4 + } + ] + }