From f262aaaac09d1f0e68a5232e06b6222905343f47 Mon Sep 17 00:00:00 2001 From: brainfood1183 <113240905+brainfood1183@users.noreply.github.com> Date: Sat, 16 Dec 2023 22:20:14 +0000 Subject: [PATCH] crystals drop shards and ore crab tweaks. (#20930) * crystals drop shards and ore crab tweaks * crystals drop shards, shards can be crafted into colored light tubes and silver ore crab. * crystals can now be unanchored. * added silver crab to rock anom spawn * fixes * sorted out the parenting for crystal light tubes. --- .../Markers/Spawners/Random/asteroidcrab.yml | 4 +- .../Markers/Spawners/Random/crystal.yml | 3 +- .../Entities/Markers/Spawners/mobs.yml | 3 +- .../Entities/Mobs/NPCs/elemental.yml | 98 +++++++----- .../Objects/Materials/crystal_shard.yml | 138 ++++++++++++++++ .../Entities/Objects/Power/lights.yml | 128 +++++++++++++++ .../Structures/Decoration/crystals.yml | 148 ++++++++++++++---- .../Graphs/utilities/lighting.yml | 120 ++++++++++++++ .../Recipes/Construction/lighting.yml | 65 ++++++++ Resources/Prototypes/ore.yml | 7 +- Resources/Prototypes/tags.yml | 18 +++ .../{ironcrab.png => iron_crab.png} | Bin .../Mobs/Elemental/orecrab.rsi/meta.json | 10 +- .../{quartzcrab.png => quartz_crab.png} | Bin .../Elemental/orecrab.rsi/silver_crab.png | Bin 0 -> 32092 bytes .../{uraniumcrab.png => uranium_crab.png} | Bin .../Materials/Shards/crystal.rsi/meta.json | 20 +++ .../Materials/Shards/crystal.rsi/shard1.png | Bin 0 -> 15346 bytes .../Materials/Shards/crystal.rsi/shard2.png | Bin 0 -> 15474 bytes .../Materials/Shards/crystal.rsi/shard3.png | Bin 0 -> 15503 bytes .../Decoration/crystal.rsi/crystal_blue.png | Bin 1163 -> 0 bytes .../Decoration/crystal.rsi/crystal_cyan.png | Bin 1147 -> 0 bytes .../Decoration/crystal.rsi/crystal_green.png | Bin 1179 -> 0 bytes .../Decoration/crystal.rsi/crystal_grey.png | Bin 1038 -> 15581 bytes .../Decoration/crystal.rsi/crystal_orange.png | Bin 1149 -> 0 bytes .../Decoration/crystal.rsi/crystal_pink.png | Bin 846 -> 0 bytes .../Decoration/crystal.rsi/meta.json | 15 -- 27 files changed, 678 insertions(+), 99 deletions(-) create mode 100644 Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml create mode 100644 Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml create mode 100644 Resources/Prototypes/Recipes/Construction/lighting.yml rename Resources/Textures/Mobs/Elemental/orecrab.rsi/{ironcrab.png => iron_crab.png} (100%) rename Resources/Textures/Mobs/Elemental/orecrab.rsi/{quartzcrab.png => quartz_crab.png} (100%) create mode 100644 Resources/Textures/Mobs/Elemental/orecrab.rsi/silver_crab.png rename Resources/Textures/Mobs/Elemental/orecrab.rsi/{uraniumcrab.png => uranium_crab.png} (100%) create mode 100644 Resources/Textures/Objects/Materials/Shards/crystal.rsi/meta.json create mode 100644 Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard1.png create mode 100644 Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard2.png create mode 100644 Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard3.png delete mode 100644 Resources/Textures/Structures/Decoration/crystal.rsi/crystal_blue.png delete mode 100644 Resources/Textures/Structures/Decoration/crystal.rsi/crystal_cyan.png delete mode 100644 Resources/Textures/Structures/Decoration/crystal.rsi/crystal_green.png delete mode 100644 Resources/Textures/Structures/Decoration/crystal.rsi/crystal_orange.png delete mode 100644 Resources/Textures/Structures/Decoration/crystal.rsi/crystal_pink.png diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/asteroidcrab.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/asteroidcrab.yml index 07820e91cd..190ee079e4 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/asteroidcrab.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/asteroidcrab.yml @@ -6,8 +6,8 @@ - type: Sprite layers: - state: red - - sprite: Structures/Decoration/crystal.rsi - state: crystal_cyan + - sprite: Structures/Walls/rock.rsi + state: rock_asteroid_ore - type: RandomSpawner prototypes: - AsteroidRockCrab diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml index c90f2d0bf6..84adf28e2d 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml @@ -8,7 +8,7 @@ layers: - state: red - sprite: Structures/Decoration/crystal.rsi - state: crystal_cyan + state: crystal_grey - type: RandomSpawner prototypes: - CrystalGreen @@ -16,4 +16,5 @@ - CrystalOrange - CrystalBlue - CrystalCyan + - CrystalGrey chance: 0.7 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/mobs.yml b/Resources/Prototypes/Entities/Markers/Spawners/mobs.yml index 0766fc18d8..eecf395bb1 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/mobs.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/mobs.yml @@ -774,13 +774,14 @@ - type: Sprite layers: - state: green - - state: quartzcrab + - state: quartz_crab sprite: Mobs/Elemental/orecrab.rsi - type: RandomSpawner prototypes: - MobUraniumCrab - MobIronCrab - MobQuartzCrab + - MobSilverCrab - type: entity name: luminous person spawner diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml b/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml index 8ab65c340e..483659f1c1 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml @@ -1,5 +1,4 @@ - type: entity - save: false abstract: true id: MobElementalBase components: @@ -76,27 +75,38 @@ - type: ZombieImmune - type: entity + abstract: true + id: MobOreCrab + name: ore crab parent: [ MobElementalBase, MobCombat ] - id: MobQuartzCrab - name: quartz crab - description: An ore crab made from quartz. components: - type: Sprite sprite: Mobs/Elemental/orecrab.rsi - state: quartzcrab + state: uranium_crab - type: HTN rootTask: task: SimpleHostileCompound - type: MeleeWeapon + hidden: true soundHit: path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg damage: types: - Piercing: 12 - - type: CombatMode + Blunt: 6 + - type: MovementSpeedModifier + baseWalkSpeed : 2 + baseSprintSpeed : 2.5 - type: NpcFactionMember factions: - SimpleHostile + +- type: entity + parent: MobOreCrab + id: MobQuartzCrab + description: An ore crab made from Quartz. + components: + - type: Sprite + state: quartz_crab - type: Destructible thresholds: - trigger: @@ -115,30 +125,19 @@ acts: [ "Destruction" ] - type: entity - parent: [ MobElementalBase, MobCombat ] + parent: MobOreCrab id: MobIronCrab - name: ore crab description: An ore crab made from iron. components: - type: Sprite - sprite: Mobs/Elemental/orecrab.rsi - state: ironcrab - - type: HTN - rootTask: - task: SimpleHostileCompound + state: iron_crab - type: MeleeWeapon - soundHit: - path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg damage: types: - Blunt: 8 - - type: CombatMode + Blunt: 5 - type: MovementSpeedModifier baseWalkSpeed : 1.5 baseSprintSpeed : 2 - - type: NpcFactionMember - factions: - - SimpleHostile - type: Destructible thresholds: - trigger: @@ -157,30 +156,16 @@ acts: [ "Destruction" ] - type: entity - parent: [ MobElementalBase, MobCombat ] + parent: MobOreCrab id: MobUraniumCrab - name: ore crab description: An ore crab made from uranium. components: - - type: Sprite - sprite: Mobs/Elemental/orecrab.rsi - state: uraniumcrab - - type: HTN - rootTask: - task: IdleCompound - - type: MeleeWeapon - soundHit: - path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg - damage: - types: - Blunt: 8 - - type: CombatMode - - type: MovementSpeedModifier - baseWalkSpeed : 2 - baseSprintSpeed : 2.5 + - type: FactionException + - type: NPCRetaliation + attackMemoryLength: 10 - type: NpcFactionMember factions: - - SimpleHostile + - SimpleNeutral - type: RadiationSource intensity: 2 slope: 0.3 @@ -196,8 +181,8 @@ - !type:SpawnEntitiesBehavior spawn: UraniumOre1: - min: 8 - max: 10 + min: 3 + max: 6 - !type:DoActsBehavior acts: [ "Destruction" ] - type: PointLight @@ -205,6 +190,35 @@ energy: 3 color: "#06DF24" +- type: entity + parent: MobOreCrab + id: MobSilverCrab + name: ore crab + description: An ore crab made from silver. + components: + - type: Sprite + state: silver_crab + - type: MeleeWeapon + damage: + types: + Blunt: 5 + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 70 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + SilverOre1: + min: 4 + max: 6 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: entity name: Reagent slime id: ReagentSlime diff --git a/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml b/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml new file mode 100644 index 0000000000..797cee6b4f --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml @@ -0,0 +1,138 @@ +- type: entity + abstract: true + parent: BaseItem + id: ShardCrystalBase + name: crystal shard + description: A small piece of crystal. + components: + - type: Sharp + - type: Sprite + layers: + - sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + map: [ "enum.DamageStateVisualLayers.Base" ] + - type: RandomSprite + available: + - enum.DamageStateVisualLayers.Base: + shard1: "" + - enum.DamageStateVisualLayers.Base: + shard2: "" + - enum.DamageStateVisualLayers.Base: + shard3: "" + - type: SpaceGarbage + - type: ItemCooldown + - type: MeleeWeapon + attackRate: 1.5 + damage: + types: + Slash: 3.5 + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Glass + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: StaticPrice + price: 50 + +- type: entity + parent: ShardCrystalBase + id: ShardCrystalCyan + name: cyan crystal shard + description: A small piece of crystal. + components: + - type: Sprite + color: "#47f8ff" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#47f8ff" + - type: Tag + tags: + - Trash + - CrystalCyan + +- type: entity + parent: ShardCrystalBase + name: blue crystal shard + id: ShardCrystalBlue + components: + - type: Sprite + color: "#39a1ff" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#39a1ff" + - type: Tag + tags: + - Trash + - CrystalBlue + +- type: entity + parent: ShardCrystalBase + id: ShardCrystalOrange + name: orange crystal shard + components: + - type: Sprite + color: "#ff8227" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#ff8227" + - type: Tag + tags: + - Trash + - CrystalOrange + +- type: entity + parent: ShardCrystalBase + id: ShardCrystalPink + name: pink crystal shard + components: + - type: Sprite + color: "#ff66cc" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#ff66cc" + - type: Tag + tags: + - Trash + - CrystalPink + +- type: entity + parent: ShardCrystalBase + id: ShardCrystalGreen + name: green crystal shard + components: + - type: Sprite + color: "#52ff39" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#52ff39" + - type: Tag + tags: + - Trash + - CrystalGreen + +- type: entity + parent: ShardCrystalBase + id: ShardCrystalRed + name: red crystal shard + components: + - type: Sprite + color: "#fb4747" + - type: PointLight + radius: 2 + energy: 2.5 + color: "#fb4747" + - type: Tag + tags: + - Trash + - CrystalRed diff --git a/Resources/Prototypes/Entities/Objects/Power/lights.yml b/Resources/Prototypes/Entities/Objects/Power/lights.yml index 05454c374f..361ee1e808 100644 --- a/Resources/Prototypes/Entities/Objects/Power/lights.yml +++ b/Resources/Prototypes/Entities/Objects/Power/lights.yml @@ -77,6 +77,37 @@ sprite: Objects/Power/light_tube.rsi - type: LightBulb bulb: Tube + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: #excess damage (nuke?). avoid computational cost of spawning entities. + - !type:DoActsBehavior + acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 5 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:DoActsBehavior + acts: [ "Breakage" ] + - trigger: + !type:DamageTrigger + damage: 10 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardGlass: + min: 1 + max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] # Lighting color values gathered from # https://andi-siess.de/rgb-to-color-temperature/ @@ -169,3 +200,100 @@ lightSoftness: 0.5 BurningTemperature: 350 PowerUse: 100 + +- type: entity + parent: BaseLightTube + name: cyan crystal light tube + description: A high power high energy bulb which has a small colored crystal inside. + id: LightTubeCrystalCyan + components: + - type: LightBulb + color: "#47f8ff" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: CyanLight + node: icon + +- type: entity + parent: LightTubeCrystalCyan + name: blue crystal light tube + id: LightTubeCrystalBlue + components: + - type: LightBulb + color: "#39a1ff" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: BlueLight + node: icon + +- type: entity + parent: LightTubeCrystalCyan + name: pink crystal light tube + id: LightTubeCrystalPink + components: + - type: LightBulb + color: "#ff66cc" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: PinkLight + node: icon + +- type: entity + parent: LightTubeCrystalCyan + name: orange crystal light tube + id: LightTubeCrystalOrange + components: + - type: LightBulb + color: "#ff8227" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: OrangeLight + node: icon + +- type: entity + parent: LightTubeCrystalCyan + name: red crystal light tube + id: LightTubeCrystalRed + components: + - type: LightBulb + color: "#fb4747" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: RedLight + node: icon + +- type: entity + parent: LightTubeCrystalCyan + name: green crystal light tube + id: LightTubeCrystalGreen + components: + - type: LightBulb + color: "#52ff39" + lightEnergy: 3 + lightRadius: 8 + lightSoftness: 0.5 + BurningTemperature: 350 + PowerUse: 60 + - type: Construction + graph: GreenLight + node: icon diff --git a/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml b/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml index 4afe06c8a5..9bee6a0d4d 100644 --- a/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml +++ b/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml @@ -1,17 +1,24 @@ - type: entity id: CrystalGreen parent: BaseStructure - name: green crystal - description: It's a shiny green crystal. + suffix: green + name: crystal + description: A crystaline solid. components: - type: Sprite sprite: Structures/Decoration/crystal.rsi - state: crystal_green + state: crystal_grey + color: "#52ff39" noRot: true - type: Reflect reflectProb: 0.5 reflects: - Energy + spread: 75 + - type: Anchorable + delay: 2 + - type: Physics + bodyType: Static - type: Fixtures fixtures: fix1: @@ -29,89 +36,162 @@ - type: PointLight radius: 3 energy: 3 - color: "#06DF24" + color: "#52ff39" - type: Damageable damageContainer: Inorganic - damageModifierSet: Metallic + damageModifierSet: Glass - type: Destructible thresholds: - trigger: !type:DamageTrigger damage: 50 behaviors: - - !type:DoActsBehavior - acts: [ "Destruction" ] - !type:PlaySoundBehavior sound: collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalGreen: + min: 1 + max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity id: CrystalPink parent: CrystalGreen - name: pink crystal - description: It's a shiny pink crystal. + suffix: pink components: - type: Sprite - sprite: Structures/Decoration/crystal.rsi - state: crystal_pink + color: "#ff66cc" - type: PointLight radius: 3 energy: 3 - color: "#DF06DC" + color: "#ff66cc" + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalPink: + min: 1 + max: 1 - type: entity id: CrystalGrey parent: CrystalGreen - name: grey crystal - description: It's a shiny grey crystal. + suffix: red components: - type: Sprite - sprite: Structures/Decoration/crystal.rsi state: crystal_grey + color: "#fb4747" - type: PointLight - radius: 3 - energy: 3 - color: "#C1B0C1" + color: "#fb4747" + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalRed: + min: 1 + max: 2 - type: entity id: CrystalOrange parent: CrystalGreen - name: orange crystal - description: It's a shiny orange crystal. + suffix: orange components: - type: Sprite - sprite: Structures/Decoration/crystal.rsi - state: crystal_orange + color: "#ff8227" - type: PointLight radius: 3 energy: 3 - color: "#E8820F" + color: "#ff8227" + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalOrange: + min: 1 + max: 2 - type: entity id: CrystalBlue parent: CrystalGreen - name: blue crystal - description: It's a shiny blue crystal. + suffix: blue components: - type: Sprite - sprite: Structures/Decoration/crystal.rsi - state: crystal_blue + color: "#39a1ff" - type: PointLight radius: 3 energy: 3 - color: "#1843D4" + color: "#39a1ff" + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalBlue: + min: 1 + max: 2 - type: entity id: CrystalCyan parent: CrystalGreen - name: cyan crystal - description: It's a shiny cyan crystal. + suffix: cyan components: - type: Sprite - sprite: Structures/Decoration/crystal.rsi - state: crystal_cyan + color: "#47f8ff" - type: PointLight radius: 3 energy: 3 - color: "#18C9D4" - + color: "#47f8ff" + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardCrystalCyan: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml new file mode 100644 index 0000000000..378feb1cf8 --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml @@ -0,0 +1,120 @@ +- type: constructionGraph + id: CyanLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 1 + doAfter: 1 + - tag: CrystalCyan + name: cyan crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + color: #52ff39 + doAfter: 1 + - node: icon + entity: LightTubeCrystalCyan + +- type: constructionGraph + id: BlueLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 2 + doAfter: 1 + - tag: CrystalBlue + name: blue crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + doAfter: 1 + - node: icon + entity: LightTubeCrystalBlue + +- type: constructionGraph + id: PinkLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 2 + doAfter: 1 + - tag: CrystalPink + name: pink crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + doAfter: 1 + - node: icon + entity: LightTubeCrystalPink + +- type: constructionGraph + id: OrangeLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 2 + doAfter: 1 + - tag: CrystalOrange + name: orange crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + doAfter: 1 + - node: icon + entity: LightTubeCrystalOrange + +- type: constructionGraph + id: RedLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 2 + doAfter: 1 + - tag: CrystalRed + name: red crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + doAfter: 1 + - node: icon + entity: LightTubeCrystalRed + +- type: constructionGraph + id: GreenLight + start: start + graph: + - node: start + edges: + - to: icon + steps: + - material: Glass + amount: 2 + doAfter: 1 + - tag: CrystalGreen + name: green crystal shard + icon: + sprite: Objects/Materials/Shards/crystal.rsi + state: shard1 + doAfter: 1 + - node: icon + entity: LightTubeCrystalGreen diff --git a/Resources/Prototypes/Recipes/Construction/lighting.yml b/Resources/Prototypes/Recipes/Construction/lighting.yml new file mode 100644 index 0000000000..0533f70f1a --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/lighting.yml @@ -0,0 +1,65 @@ +- type: construction + name: cyan light tube + id: CyanLight + graph: CyanLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing a cyan crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item + +- type: construction + name: blue light tube + id: BlueLight + graph: BlueLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing a blue crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item + +- type: construction + name: pink light tube + id: PinkLight + graph: PinkLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing a pink crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item + +- type: construction + name: orange light tube + id: OrangeLight + graph: OrangeLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing an orange crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item + +- type: construction + name: red light tube + id: RedLight + graph: RedLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing a red crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item + +- type: construction + name: green light tube + id: GreenLight + graph: GreenLight + startNode: start + targetNode: icon + category: construction-category-utilities + description: A high powered light tube containing a green crystal + icon: { sprite: Objects/Power/light_tube.rsi, state: normal } + objectType: Item diff --git a/Resources/Prototypes/ore.yml b/Resources/Prototypes/ore.yml index 89214c96fa..f8861af834 100644 --- a/Resources/Prototypes/ore.yml +++ b/Resources/Prototypes/ore.yml @@ -44,6 +44,10 @@ id: OreIronCrab oreEntity: MobIronCrab +- type: ore + id: OreSilverCrab + oreEntity: MobSilverCrab + - type: ore id: OreUraniumCrab oreEntity: MobUraniumCrab @@ -71,4 +75,5 @@ weights: OreQuartzCrab: 5 OreIronCrab: 5 - OreUraniumCrab: 3 + OreUraniumCrab: 2 + OreSilverCrab: 3 diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 4546c4ac48..a65ea0d5fa 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -365,6 +365,24 @@ - type: Tag id: Cryobeaker +- type: Tag + id: CrystalCyan + +- type: Tag + id: CrystalBlue + +- type: Tag + id: CrystalPink + +- type: Tag + id: CrystalGreen + +- type: Tag + id: CrystalOrange + +- type: Tag + id: CrystalRed + - type: Tag id: ConveyorAssembly diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/ironcrab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/iron_crab.png similarity index 100% rename from Resources/Textures/Mobs/Elemental/orecrab.rsi/ironcrab.png rename to Resources/Textures/Mobs/Elemental/orecrab.rsi/iron_crab.png diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json b/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json index b8ffd5034d..a85de36617 100644 --- a/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json +++ b/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json @@ -8,15 +8,19 @@ "copyright": "Made by brainfood1183 (github)", "states": [ { - "name": "ironcrab", + "name": "iron_crab", "directions": 4 }, { - "name": "uraniumcrab", + "name": "uranium_crab", "directions": 4 }, { - "name": "quartzcrab", + "name": "silver_crab", + "directions": 4 + }, + { + "name": "quartz_crab", "directions": 4 } ] diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/quartzcrab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/quartz_crab.png similarity index 100% rename from Resources/Textures/Mobs/Elemental/orecrab.rsi/quartzcrab.png rename to Resources/Textures/Mobs/Elemental/orecrab.rsi/quartz_crab.png diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/silver_crab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/silver_crab.png new file mode 100644 index 0000000000000000000000000000000000000000..b378d65baf19b04ab5157544fbf7df241aaa187b GIT binary patch literal 32092 zcmeHw2V4_N*LSec6bmY#s22fIfsozJZn7HzrGtt}6R>Z#08)a06f0n_hzN*Wuwp~; z+EA>3ilPF7T@=NF6}f_5?0yr960bh-;re~g_q=cTX|l7kb7tm$&iv=hnb}_!j~?lu zq25cK!{KN+Ioi5{@1fHFs>BE~Xuqs9#rk&~M|4xtkU(IrqMD#wP!( zN9(JKJ{`Db`DkZd+P)H%T-A!w^V7?x*2i=7x-pAvIlhBA zJ4?navEz6_obK%KQv~NamjgL@vW}cT4svpfyL8ygQSHcqTo%nA#A!E!Gx@B6K_q8h z3a7h$t*7}*ldLX}i~&+9d(CqU3A>nas@$n6o}OlX2NpYNn{*eDZOFAl&GMsCdLl7s z=eu$_cr_xUcgZTXdE#4DaSk62cKH0E&n5j+ zPU0LdueG^ehxUAwFf$3asHTMsWc;=yKMs1_OIas zx_E`<-mB+uYL7_rE)P^~8|^!{vLxbj&5(}{>-%$}S*KM~Ih={MhGy>P_6<3s%Hi0q zk1_tkO7~Tsj%luP@4WW6@;ZE&ESP6)cq-qzi?uo(-8*FRpq;VS0~Zwi(Z_f)@AA+- zXs(Ozf`s5sX89h6I#~pFen+aN=M6j>qt?#qtZFy1-_1oz;w4@ND^#^p=D+Ee=h#kj zsi9usqV6vG!{aeW*ma4!o`++fT8of2#KQ6RhvNsIii!4ogFg^di^nGXWJu-UsEM}BHC%j*yXAT+C^CFk$tTky+(MAyzaP7ueTxE^`@Fo zt?fLQ`~mt2+lKEqI^6Z`DIGBaFZ6OWHMpu7*NxX@#v+?jLPO2PHpqaSm2I5%Y<4fx zEVC~Qay58jx;+(j>}8Npc$4OYAon6_sk-nfjv`oRCIiLM(FHb zGh$26OG|s6afgKPvo()WI;TiHyo|GrXZDCcr=B=0(I`>ZnCHHI$Ce!xJ34sOd7O8T z+dk24R+ha7-|hZ(waZDF9y`)TKXcP{^VvRl+rk|_+a&HoHqZ9{xLDcy?IZ5YX;pLq`L(jkpna1{dXiKCwXN$X1ZiLJUb@Hs@|Hm z<(ST(oA$px5Bbw`_9Y!3dY|zydPK)Sg^@R*{Gk zBhD0EDB4(bH3dtxfUhBsQXi#WOTBY&^4Q3+rrF!F4>3-AAB^4N{UZBl(EPE4cZQe8 z*a`dWccty>fAz?&BU`&}%^8_6GBf?E&&fYtW*25}KiKn+hu4+Mv$6xTXOTW)ZJ&du zvrfK9IF>N$@T}z@EmSlX-sqIsXKbI@q5DI+i^hm5))xQ%V#uu1uachde7s7!lw9ZE z&+c}9&?&z(x714xKH5Gxp>yjNEnPf3_PklLrCF+O!R@oh9t;b6J#|9m^s?7!sryp% ztGAW!ej#|__hR9#br;ZegVMeEp%+h{wYlr^uyja=b%~Jwot?8s*^G+uIq=AUNAco4 zcU}AAU`E7_da_2_@-NGfb@wgrn+q$D3hzl5gt-UL9y~wlq$GXP{5v*t3_jDJr++Tx zY>n=(j8)9IHt*j|pV{xkiXozM=C8dss;!o-&#~%Z6&JfJ_F>+xe!gd)uiVwI z{?VG^_+r0K^GDBqeD$IVSw${AIlJS4`3vWJE*P>Rc#&7HQaBllD7|G9ddK#iZIW$8 zst-Jh*v%b=8C&i!n__-bco;oAq`-{zzHr4W&C4lZcyGeYI7<)|aQx1P>biyZ((ZM* zKSO&B@9c!&s13#WujX&n+HR(4DoPqUV$n!^^`BNtEX~qW=o@sQfe$XH#9s5MQRV9Q zd$c!MFh+T&`JpA*#(`HxWmbD8XU#rlG~L-hW@6sC*t`Qu{?9sis6U)P>)EYq)e}Z} z@x1RGAm1%W)3xlecu7|Ga_!_EbFL4(75Pwiq2%0&lv}I!Z_hlHLzl2+?31brZu+=R zNjs9Ok~;-y+_<@4(+TrKN13gK#YKaMxNmlU<^IlH z@S^PY0rJ|Lpwbt*Gmid+KEF~v?r8l-%fjR39!eh0SJ*4ed#CsN>W5@4-tpv3()+*( zyG901tv=JXtnEh?gHGAkaxP!#Q)c1r8h6#?nM0>Dza9USRujS15NLQT|GnUzL9lJq zgD3TBck26Uh;D{2o3XP}<ovFLOv#N{Usrm|p%f6uj4w~w2w=PJHJ3tD#s0TCk<_!Go`*zQ3w~JffC-h86_}s4Tnz|1ZpIgr1_?G** zdxd#9j}TFkKr@n-h#9lUz+m8rayaHgB7;fFp9#|wGd_Mn7Wy?uPU!3T(H8oim^0)Y zY{U5aIZh8@+@_Cor>6T;1g$^BQr$dK1Ox;!VWeJUU_el)DAGc|L9Pf~OK>moCsV^mir-cMG^o^!?OaK$e1cilya`1O620C$e{!;Y2?F|h4 zZpqLvyKn$O6QtiQ8R{Mt%9P|36qim?j^Eiw3B??b~}nXlUU2~ptj?+Oa@V}Bq= zn)5^Om`J}L6qDvO7HhDnMpc^w&_p&N3>hW~ahFH}EE~=B>p~2y!=&b^H_+2Bh?Ycz z4l?I`TjZ1VW9{Wh%liE1dAZ3g^VSxxGL>Sgmip;a$%8}51Y}8Ll`TArF8DET5WFrZXgg8rR#*%N&``+#EmIBMz z(T%HE%TQMbYdt4B8v#rR1YE=nZYie4bKjL?E1{-Ijo&JWVnTtcLR+X1D6)YctVti) zyUiH^ewGknWse|yYdc$ejIg({vO^Kv2D8T@p&f)+!5?}%hva%ush&?V>0ER+#R=7QiU{-`JVlA+>#_VAPg7~(40s=DR z3J@TOEozSnA;K1hYzYFjK~Z}GvazzYh6%`?kSl-?;y9=g<0Cj?E5NLT1YwK8_OP8D z0o&ON?d1w+qT+B?ugWK;QU$0&T5miXs^V z$f5)|A{9+@#Sr+Q1PlZdd=!TWs+FQ)L?Gs)1j>aVLfF`9F$D%IE)+rnmf;f^+IrDq zF--%h6im~Nt;Q(^ zLW(JID@F4WF@lOIj4KdQO==|g;0hPBC`mCwK7hQnqJ?}R#1aIT5m0P1AQ;A_P=dh` zmIjvH>Q*zT7^MN9P%wrziY5hwn9DGX0HOtaQUJ*x+uz3;6$-@ylqR?W0&T)tjFLdB zG)ur@0%J(DwXH@;goap>;SwkqHw|`;vwVch!eWv}AfRNZwL=EO#V{^FATA?Bn*hP7 zUxPJ9(lkSg!Gs1AO%{UVVw6h~2mt{F(9fSDvTB4fa$?31+y50 z{Dha^EDRF>Zxtti9KKM@Ao z5)qP%0oq0ckeERk`Sjf^j6h(9#2^$nBDk0f0ovo@I0U?4;5*?EEoO1PeClf!CKf|t z;E2KiDTd(EfH%Q<3-Bl*5QA<4Zwmj3HEpvnS`5*^sl~WpfrtX&z}zin`F!w!2yj{~ zq)1l&wB0O>#b6pZ%wUBt#sN|!5C(jFoGU;C6b(^01(uyZtpJvkssQ+f0#FR}RmwO* z6u60e2w^D*0fXZQm^D@*8xm+4aQIgN1#_Abv67HLGR)F1kn~}A!9hOeystOE#t5YG z9%pBfQ&4Ca2_h3tww6*D{J?M%W3&+P3ChJVF<2TysI>V4u$Z9uB=FzBkde-ze=Ghs z(ar4yqQCER{oFF8v7#2j{#Mbb5I+zACIebLBkhZnI)2V_8>{$^n7>u!=qC-~M9Icl z8bUa3%v9OCUqd(zq1s?FB$SZ`A}#crBavTXyN&Uhrl?IrKvP6g(jc!TB@OQ}fZAp5 zer?v5lID#M`2Ag-KL^3zivPHd2wx`XUxf!7MKwJ2V37U_S-| z9vTUJWH3BIuoFa|7%mDTP%O=eAtClpI8`w+zql9QjLd(mIZOx^B8(6$VEG8jMOdIY z5`^(VXcNL%oCbco0Qi`#<5Yr+;O-D2g1~~G^+4Zo6Pn?K{1LAzJKZW5iL^A}7gV=tv?X-yCd^=Tsos(OHV7_=eijgTL;-> znuBQsoTwoot^i~C(kL$2C}J?2OT!@I57Rgb!osc8ob*&2><&R9j4$FVIQ1LNDg4wQ zkNy@c_ywlMwg3MjKlSJK@ml5WC`M+3OZ(;H7jr7fKrAJIfuD+s!O09THG-3X-~<7V zv)~v6PJ_rzYuEl#%^~gxEIqHR@Ke8?4Zn~@^NgkNQ@=p;V^00=@y-9Sw}a#0Pzg*4 zz+o6LD8V5Ou*repV2sk>;1o@RV=PE(c;aQ8HJ0suN)E2_NSC{0U9=B+$6{e^}77sZo z1zd6flFe4YC5wlglmad}0Lf-6;F85dPD%ln9DroA6>!PoAt$APOAbJ?*$TL1@sN{J zz$FJD*=z+|vUtczDd3U=kZiUBE?GR}q!e(;0Z2Am0hcTua#9Mo>6X zTyg-C%~rrAi-(+)0xmfK$!06ylEp(#N&%M~fMl~3aLM8!C#8T(4nVTm3bJd=^)KO4|N4tXOc3~)q6qMN zL}7_mmEgCG^e9JHXAWn2e-0;lE{F5>Gx&bO;Y@=#oTrmH9MKvMM_aOL(rJ6}3!Lkn zY^~fQZ$2Mq;cMWeHJj-ku(y<}YOm+BqGN%obI|hMI`snw>llSpwcoI9Pq2{*G0!T# z>+|tw>E1t5Zr#o8rJ_Cd@v_|b*xUPtwuyP9IUwOm`=_4o-c9p3NXI1;1?}_qUiNr> zyyoNO%pC(V4s5B(*;N`*fy6y=uYGE^&&4zE$>$zQQ+jHzjGpuU^{IEaj?@n*8R^*O zZQNRZV)QD{YqK{Ev$fql`(5eG^!MeR;~yEVJF%wz(t8zs{VBr1lM?5FN2>QxhYua? zufK7kP)~nj$Y}%pjmK^~*ZS{DtQujs{=pTj^YH`6UKr*n&yEaTXl=Qq-S+C`*71uL z+0Q-x`t7`$w7RVY(JyKHx8su*2qX3%I5zUq`-Q4%*A3sir2jGuOg8Ded;q`gqR(c} zVs+>1KMeJLI<4)5+NWbQm$kn>(|^b3iy z50^NcOdZTuIXq7DO=VG^L{Pi(tX`woWhR10z2<)Y^JTX*m1~!uDR(XKp6gre7^`7E zW!pi&2Y`=P(qJeQtoW@k5NX5I}O8GX5L*RFxPOLpnm z=YOzB&^xdq&&Q@?s4pg-s39&tXg3|cia0M$KV{&GCAYm#KfCLof1vb;|q5m z2rJCYTxL>x#L>%lo6eKDM(dO(qW5FXI~}<@+AC(i`IAoBoMmR$gTj5yQ|4T?9Bg#r zYFSTx*JDBJOKpYfb_RcT8Q*W+`Lal4pM7|{lI7jB!Zgx1UDMb${-yhF-NzmippCs% zr^ijr>)6$gop(Twt90N@ta$x{{wljpWxRYz7d-FQ?X!-y?c`BY^RRZmO>rdeu4BYJo`m)@*G{y6etI0|= z@X#)*t7LQ;NM)etVg3T(@NrHKRax^lKiu%y{{{ z;>DKITfP^s`F7RYKhPYcE|cb)1B9L?QrUdN#DoG zRd=2k;~p3Ks-I2m`{_gAw%be3kK3ft&Sc!G4jYG?mS2DH&@#U&)_;SVYtFqv6IVe? zB!RmV?rd`{%zU;^_k{md(K{kll5?-reuHB*>+pWLG3dE&o1VUoZHjwN%?nO+DJzK& zFtmGjaAv2xxgB~fJvT4k1pRINj40vR_ra4rDh-bXO}m zC$fP(^|Rh)T{*Y=0DA61D4P}QmOpd+n?32B1wMcMc~_%rVA0*ZMwA0 zzNYc2OGvwL?bHtXktbX{9_3+sOtaX+;qH+GH$}BIa)PvS$Jyq|Dfw;o+Y=Ku|E_W^wByh=C4=0^?ri0e4RhWd zNLp}fypqoR)RaHH$Fc#b9TxNgBhjOpUAQ@MSo@rji}Pm#{XGj+EyjHUc+vT1PtMJ} zix#{pS$=2Gy7Oyi166z&YjXAAgDVD9hklgV*}D_=Ixck3 zpzPh2w083gSN76)_X_LeeliMs-u^=2%6CaY3xK0q{}CEi017(%%mTvo|H6l-XT1H zTAvkz@#}}ob-Sw0?2)s|F<3KNH(~z*m2H`0e0Qo>gdmAYpIq0x&&*I87&Wcv%*fgg z72%?#^?#OF0fw4%gi07wd2MW!YLR_x0tY`e0)-7@oV$IRgQ#_!xJ*}RU6uMwoHEd( z+Q#KxGDg;@9xu`;d70i{`K|`9&8SsVYu_$)p$jwpovcr_0R*$&DWY!XvE>6q=XYvl zJuasD$2g>nNA_WQYVp1Lt=O3zvuc>zW(-p6J#SG}vT5+xodFK4?Pf5*MdpzdcYb-S zZsq=}d_B(v8Jhjn(s_0-nQ=XJawCyVPd>Ko)Awj)i9rUe`Qg>4n1X~9C0@yg2h;z1IJtt$t#W8Od1t!iA zy{Zh=e^z$Ra`|vAl`9@qr`IYar4IK?GK#KwkPuz2ZWO?tv)*$Dfy%ERT@`%y!M#Nj zlf|K1ik|7`3nWH?vkrPlCMzeoAAdT`GjQ$d149aoduJ}5HBs2p>|o*btKI=wwK{5s z>+1B|rYqK=A14Ycs?w^dCOlt3wJC#dN%k% z#QXv++oD3hrNcB=ym~uc5R!8*JpcXs#AGT~b#@uqVLz4i*j_VfFYs5j9_d180CQPkvKf)^ERgW+Y7BdZ9+}&$m zVc}!$oF{pnk3I7S-Tv@)QmsEX@a;o~08`WSyE!Rg9ap=Cw_6v7Se?J;yHd^WKnG zUJ-KI?ZYa|z+tW%)|4qv42T4ifb9|}aJY8d$=%`mx-D+I)35KswmE^?Yn{sHguXOX z*4BzHD%P55ou}_%@VL#uj@nN15?SLgC5@}hlqLQ1LaR$ooOw8P(`fgFDw4BcwkpdT zX;i&mr9(sGGxr25 z1>Bow6RyUGn^zfM9oB}-{B2mT0ay25jlWj>DgIOaZ|h!z?@n2tZ3e%0c++S8x@T!0 z4URpJ7&XfxyaHUR!#X2E0?MPJ)kA|HUcYHPGGNTx7u%}`)mdM;d2mv{+7RIz?Sr2+ aI0It-8fQz+y(0aQN+-LKwprGbWB(7GEh`NG literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/uraniumcrab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/uranium_crab.png similarity index 100% rename from Resources/Textures/Mobs/Elemental/orecrab.rsi/uraniumcrab.png rename to Resources/Textures/Mobs/Elemental/orecrab.rsi/uranium_crab.png diff --git a/Resources/Textures/Objects/Materials/Shards/crystal.rsi/meta.json b/Resources/Textures/Objects/Materials/Shards/crystal.rsi/meta.json new file mode 100644 index 0000000000..f800f2b6f6 --- /dev/null +++ b/Resources/Textures/Objects/Materials/Shards/crystal.rsi/meta.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by brainfood1183 (github)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "shard1" + }, + { + "name": "shard2" + }, + { + "name": "shard3" + } + ] +} diff --git a/Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard1.png b/Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard1.png new file mode 100644 index 0000000000000000000000000000000000000000..f8cb52c0cea026ba4d23c6ffb4330779464e75a8 GIT binary patch literal 15346 zcmeI3d2AF_9LHZ{Q7jfEA}A^umm?CGonw#gPPS`nx7aFMn^LtH6=rANZYSNHS$3v$ zTa`4@Xf^(!1}zW~4B(Yuydr2N93Ci!;6XHKDk>rILJ~DG9;k12x4YBV?Mvek|9O+W ze((2w-`~vV_kM5ZpSicS<(lfMIaL6F>gJ|M8~SGK_tdk|r`gx{6Z$$g-L%34VEP;O zyW-)+(=P=e_?_0?VRb~8Ns5tj%c>EB?rbWJW&;qqDw~#-E@&|^n9%fE*XiNCE=E&p zT{rond^FtvJGG|13|!vV(ysJ%DM8hBRk$jYm5@LRS~8POC3REE*1B@K68dcqb1o(~ z#pU}PZUbNg9^_t!8rLAT(msqxk*1RZPmJ5cB0}@xUN*Xm`FDZ><~pRE2lZZ&2!~~RHYb`?#?80 zr=}_#Ou`h@Efd8FW#iJFhGm$Y#sn#g?gMkS1O=pJBhB{S zH00W#X>?~4*tiB=%Di${Z)x#TamFawo(az#X0-{zY)?Kcw-oXf3ZZM28ZuC}j7+;> zB*Xbt);fxiX=uo;D(1?YG+i}%%tav%4=L5Vqy{6h1;ZjQdRX3vUhRTkLQ9elEanA? z=N%&XnV3e@P_=k(NkiaS!P_o~k{4-soEnaqxCZJURkq|wsW|64bW}x(8<~`Bg|(EN zfLvNngt*e6V`gzxNexEQ$e`1LVNZxFH|&VYtu(1wH!WFLU~?pl2HcvaNDeBX~eA_IRonxXoXCs^Yf}>!*KZ!Xa5%@wf~?Hro85#m0@yS^|#7Ueuw)1 z%1~OxN~f$Rpc>{z7x3u7ek@;X=iVFim zHYqMLAIwW}VL-?x5m!~|5l*P1=QexL1DfYgJ9sU6xRX(u+M)pTEdZc@9RR=liN3!E zpqmHan^gcv8vvMXJhbx7r2tg)H%IE*v!8r7RD0+Ef7v}->bdvoPkb=9u5$0z!0_M$ z%F%|6*Ufx&cecO3asP#ZOQzfoX5aeKPp5vEvvbD&TbT2Yoc{B{qwb+;TSC6@9c#hy zDO=ai0ou&Q?<>}~t()I`W80y}+nx~zHyu9t;<5XGx#PA)12ux*e=B@+$_7Q#F z0I2IawRZNBq3hl{A?&@8(SjJUcKtBzW`je))4>z literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard2.png b/Resources/Textures/Objects/Materials/Shards/crystal.rsi/shard2.png new file mode 100644 index 0000000000000000000000000000000000000000..f7925af0e689a9b3cf8313e7f1df8b3be90f7df3 GIT binary patch literal 15474 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 diff --git a/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_cyan.png b/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_cyan.png deleted file mode 100644 index f245ead0358244bd5986e37dc01eee1160065c2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1147 zcmV->1cdvEP)^FEDIV0mTO<(^Flk_xX6Mx?Av_@q-cg?{l~H`}ZYJza4?3cp>_(%Ge@FEHr|G`nl!@ zbKXEiq>4r2>j)Uu=RFUor0y-kg@rg!P_^rR`E4iE^pqd;97tSPL~qPbAia17LA<^1 zWBDH&ovt(?+0t~9y@03>W@a$jw;Mw=pdMV(E;JG`UEy^y8aN?fPpZ0vUf#CeGUp#RV7$5VA?LaVj6X*(^+`!wA74x6lx1j((c<>O|yDy37Zuo!k z+V?N|r%MMhbb-`YsI|5yEL=SxsQ-Hg>d*ZMCTTGPgY+L~S9_?`XA>t_;TjJ!&ugeq z6dDp8M|0pHMznJYj2=jLDZ4N}>?>y5y*XqZffqWq-i!Mnhzg$mB^N4W(0sKrY|2p@ z=h!OjB99+Ff?zIj-RyyaWt}ELoga|BxN=!+=ij`b%I6SpEWBvXZy5S}IF3n(wRfV} z85VD&eu}}@>pUX@(|S=l=Br$XvjH_$QUo8LCzb|t#@>unvP05wcEPh!*GX(Z5QrZkPMqy!Bd58gj*w)cw16fF2hv_&*5jmb z%w6U)L3V)PQlII7RuUgPOP7JSrFOw}>ZO%i_B+%k1d={zZ~@pUdDrO}4RU#4$1d5D zLl?%RIVBo);l+!jI4d{oZ>D};2N=AEPa!;li(W|@v;llr-MV27>8)qL`TExQEYL16 z*m6>*h{O~iPGGQ+gnIQdywIx6=3_TA(9D6VjzJHI6ZB~#d)azfVem4Od z)z}64vRu%G>319jJHo|X>YKbNy9v0Wh>CF$-fnN`T1e1GiZhyJpMmBMByUI?DTXJp z3$yfupcfS`9+Qa3>4QfQ+MlUDn}A8efHc_obK#F^<1L4;TU)VEd;!hKK#sHvY=Hm( N002ovPDHLkV1k<+7;gXo diff --git a/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_green.png b/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_green.png deleted file mode 100644 index d8d60fd2763b8eea731bd25a8d8b9286cc6b3f09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1179 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 P00000NkvXXu0mjfLJ=-D diff --git a/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_pink.png b/Resources/Textures/Structures/Decoration/crystal.rsi/crystal_pink.png deleted file mode 100644 index f9f81c5cfe555d0d48a44fb12521b48c67d26656..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmV-U1F`&xP)3wokD1p%{wf%(e7 zF*W&`DG+Aq%FJF7E_9jBm<)t6((EjA8WUWu^OP{b%wXg^hN-0Qaa;I#DEYb`xOo+T znef95f{SpHDkW2)G0%F`0I8_+L<@6iL-2$|;{osVb7sa~Na6)JKc6)rCzwANI* zEfC0M4aGG|ae3F+Loi~~0`l(*Tcnx@9E;1_1*-g_5G?(-g4&jK@zsbn064)5j%gAV z5~=h6_iQUHeN4su5XhomhdZIu5++Dg@Bq{Y6cQ`5l3ZAcle@t!petzs4O2plSQaWd z@M=^AybnYLz%+@x;ss%@{k=mrCxd8ARaBzbe}5krK*rwc#*a}u4Um0-NUh?_dXw7( zVpSS0Ynw%vcgG$3<9bjq*R@Xe5%h>`BA0L$D+;~MKi8e!j%fj;%~V|i|?H9Y`ZDnupZSJ@XqjG>L5K5xEQkK)a0Z7EPykONIjX+2_M&PXnQ%<^R^ zzE6IwKny`G%dxU7$?BMf!a7BW}?iZc2R{n&R$U>(Sb%_C9o^-v!{>uu`F_OZod?g}e&(K`ODk zdHwbO3xX0J2zA`QwL9Jf;8n0Tms Y0brumP0ZUVUjP6A07*qoM6N<$g0sVVz5oCK diff --git a/Resources/Textures/Structures/Decoration/crystal.rsi/meta.json b/Resources/Textures/Structures/Decoration/crystal.rsi/meta.json index 14fb2c7974..21a6cf7150 100644 --- a/Resources/Textures/Structures/Decoration/crystal.rsi/meta.json +++ b/Resources/Textures/Structures/Decoration/crystal.rsi/meta.json @@ -7,21 +7,6 @@ "y": 32 }, "states": [ - { - "name": "crystal_green" - }, - { - "name": "crystal_pink" - }, - { - "name": "crystal_orange" - }, - { - "name": "crystal_blue" - }, - { - "name": "crystal_cyan" - }, { "name": "crystal_grey" } -- 2.51.2