From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Thu, 15 Aug 2024 19:26:02 +0000 (-0400) Subject: Salvage Spawners (#31020) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=c41fe93040ff9a63ba26a39c0c505fce35b02389;p=space-station-14.git Salvage Spawners (#31020) * treasure entities and spawners * no more smiles --- diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml new file mode 100644 index 0000000000..9979090459 --- /dev/null +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml @@ -0,0 +1,458 @@ +- type: entityTable + id: SalvageScrapSpawnerCommon + table: !type:GroupSelector + children: + # 70% chance of scrap of some kind + - !type:GroupSelector + weight: 70 + children: + - !type:NestedSelector + tableId: SalvageScrapLowValue + weight: 60 + - !type:NestedSelector + tableId: SalvageScrapHighValue + weight: 30 + - !type:NestedSelector + tableId: SalvageScrapLarge + weight: 10 + # 10% chance of some trash + - !type:NestedSelector + tableId: GenericTrashItems + weight: 10 + # 15% chance of low-value equipment + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 15 + # 5% chance of low-value treasure or maintenance tools + - !type:GroupSelector + weight: 5 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + - !type:NestedSelector + tableId: MaintToolsTable + +- type: entity + parent: MarkerBase + id: SalvageSpawnerScrapCommon + name: Salvage Scrap Spawner + suffix: Common, 50% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Materials/Scrap/generic.rsi + state: metal-1 + - type: EntityTableSpawner + offset: 0.4 + table: !type:NestedSelector + tableId: SalvageScrapSpawnerCommon + prob: 0.5 + +- type: entity + parent: SalvageSpawnerScrapCommon + id: SalvageSpawnerScrapCommon75 + suffix: Common, 75% + components: + - type: EntityTableSpawner + offset: 0.4 + table: !type:NestedSelector + tableId: SalvageScrapSpawnerCommon + prob: 0.75 + +- type: entityTable + id: SalvageScrapSpawnerValuable + table: !type:GroupSelector + children: + # 75% chance of scrap of some kind + - !type:GroupSelector + weight: 75 + children: + - !type:NestedSelector + tableId: SalvageScrapLowValue + weight: 20 + - !type:NestedSelector + tableId: SalvageScrapHighValue + weight: 40 + - !type:NestedSelector + tableId: SalvageScrapLarge + weight: 40 + # 15% chance of low-value equipment + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 15 + # 10% chance of low-value treasure or maintenance tools + - !type:GroupSelector + weight: 10 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + - !type:NestedSelector + tableId: MaintToolsTable + - !type:NestedSelector + tableId: SalvageTreasureUncommon + weight: 0.25 + +- type: entity + parent: MarkerBase + id: SalvageSpawnerScrapValuable + name: Salvage Scrap Spawner + suffix: Valuable, 50% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Materials/Scrap/generic.rsi + state: junk-airlock-1 + - type: EntityTableSpawner + offset: 0.4 + table: !type:NestedSelector + tableId: SalvageScrapSpawnerValuable + prob: 0.5 + +- type: entity + parent: SalvageSpawnerScrapValuable + id: SalvageSpawnerScrapValuable75 + suffix: Valuable, 75% + components: + - type: EntityTableSpawner + offset: 0.4 + table: !type:NestedSelector + tableId: SalvageScrapSpawnerValuable + prob: 0.75 + +- type: entity + parent: MarkerBase + id: SalvageSpawnerTreasure + name: Salvage Treasure Spawner + suffix: Common, 75% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Materials/materials.rsi + state: diamond + - type: EntityTableSpawner + offset: 0.4 + table: !type:GroupSelector + prob: 0.75 + children: + # 80% chance of some treasure + - !type:GroupSelector + weight: 80 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + weight: 60 + - !type:NestedSelector + tableId: SalvageTreasureUncommon + weight: 30 + - !type:NestedSelector + tableId: SalvageTreasureRare + weight: 9 + - !type:NestedSelector + tableId: SalvageTreasureLegendary + weight: 1 + # 10% chance of low-level equipment + - !type:GroupSelector + weight: 10 + children: + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 60 + - !type:NestedSelector + tableId: SalvageEquipmentUncommon + weight: 40 + # 5% chance of moderate scrap + - !type:GroupSelector + weight: 5 + children: + - !type:NestedSelector + tableId: SalvageScrapLowValue + weight: 60 + - !type:NestedSelector + tableId: SalvageScrapHighValue + weight: 30 + - !type:NestedSelector + tableId: SalvageScrapLarge + weight: 10 + # 5% chance of maintenance fluff + - !type:NestedSelector + tableId: MaintFluffTable + weight: 5 + +- type: entity + parent: MarkerBase + id: SalvageSpawnerTreasureValuable + name: Salvage Treasure Spawner + suffix: Valuable, 75% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Materials/materials.rsi + state: diamond + - type: EntityTableSpawner + offset: 0.4 + table: !type:GroupSelector + prob: 0.75 + children: + # 80% chance of some treasure + - !type:GroupSelector + weight: 80 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + weight: 45 + - !type:NestedSelector + tableId: SalvageTreasureUncommon + weight: 35 + - !type:NestedSelector + tableId: SalvageTreasureRare + weight: 15 + - !type:NestedSelector + tableId: SalvageTreasureLegendary + weight: 5 + # 10% chance of low-level equipment + - !type:GroupSelector + weight: 10 + children: + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 50 + - !type:NestedSelector + tableId: SalvageEquipmentUncommon + weight: 40 + - !type:NestedSelector + tableId: SalvageEquipmentUncommon + weight: 10 + # 5% chance of moderate scrap + - !type:GroupSelector + weight: 5 + children: + - !type:NestedSelector + tableId: SalvageScrapLowValue + weight: 30 + - !type:NestedSelector + tableId: SalvageScrapHighValue + weight: 45 + - !type:NestedSelector + tableId: SalvageScrapLarge + weight: 25 + # 5% chance of maintenance fluff + - !type:NestedSelector + tableId: MaintFluffTable + weight: 5 + rolls: !type:RangeNumberSelector + range: 1, 2 + +- type: entity + parent: MarkerBase + id: SalvageSpawnerEquipment + name: Salvage Equipment Spawner + suffix: Common, 75% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Devices/communication.rsi + state: walkietalkie + - type: EntityTableSpawner + offset: 0.4 + table: !type:GroupSelector + prob: 0.75 + children: + # 80% chance of equipment item + - !type:GroupSelector + weight: 80 + children: + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 60 + - !type:NestedSelector + tableId: SalvageEquipmentUncommon + weight: 30 + - !type:NestedSelector + tableId: SalvageEquipmentRare + weight: 9 + - !type:NestedSelector + tableId: SalvageEquipmentLegendary + weight: 1 + # 15% chance of decent-ish treasure + - !type:GroupSelector + weight: 15 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + weight: 75 + - !type:NestedSelector + tableId: SalvageTreasureUncommon + weight: 20 + - !type:NestedSelector + tableId: SalvageTreasureRare + weight: 5 + # 5% chance of decent maintenance loot + - !type:GroupSelector + weight: 5 + children: + - !type:NestedSelector + tableId: MaintToolsTable + - !type:NestedSelector + tableId: MaintFluffTable + +- type: entity + parent: MarkerBase + id: SalvageSpawnerEquipmentValuable + name: Salvage Equipment Spawner + suffix: Valuable, 75% + components: + - type: Sprite + layers: + - state: pink + - sprite: Objects/Devices/communication.rsi + state: walkietalkie + - type: EntityTableSpawner + offset: 0.4 + table: !type:GroupSelector + prob: 0.75 + children: + # 80% chance of equipment item + - !type:GroupSelector + weight: 80 + children: + - !type:NestedSelector + tableId: SalvageEquipmentCommon + weight: 45 + - !type:NestedSelector + tableId: SalvageEquipmentUncommon + weight: 35 + - !type:NestedSelector + tableId: SalvageEquipmentRare + weight: 15 + - !type:NestedSelector + tableId: SalvageEquipmentLegendary + weight: 5 + # 14% chance of decent-ish treasure + - !type:GroupSelector + weight: 14 + children: + - !type:NestedSelector + tableId: SalvageTreasureCommon + weight: 60 + - !type:NestedSelector + tableId: SalvageTreasureUncommon + weight: 30 + - !type:NestedSelector + tableId: SalvageTreasureRare + weight: 10 + # 5% chance of decent maintenance loot + - !type:GroupSelector + weight: 5 + children: + - !type:NestedSelector + tableId: MaintToolsTable + - !type:NestedSelector + tableId: MaintFluffTable + # 1% chance of syndie maintenance loot + - !type:GroupSelector + weight: 1 + children: + - !type:NestedSelector + tableId: SyndieMaintLoot + +- type: entity + name: Salvage Canister Spawner + id: SalvageCanisterSpawner + parent: MarkerBase + components: + - type: Sprite + layers: + - state: pink + - sprite: Structures/Storage/canister.rsi + state: blue + - type: EntityTableSpawner + table: !type:GroupSelector + prob: 0.9 + children: + - id: AirCanister + - id: NitrogenCanister + - id: OxygenCanister + - id: CarbonDioxideCanister + - id: PlasmaCanister + weight: 0.25 + - id: NitrousOxideCanister + weight: 0.25 + +- type: entityTable + id: SalvageMagnetMobTable + table: !type:GroupSelector + children: + - id: MobCarpSalvage + weight: 60 + - id: MobCarpSalvage + weight: 25 + amount: !type:RangeNumberSelector + range: 1, 3 + - !type:AllSelector + weight: 15 + children: + - id: MobShark + - id: MobCarpSalvage + amount: !type:ConstantNumberSelector + value: 3 + # - id: MobHivebot (solo hivebot spawn) + +- type: entity + parent: MarkerBase + id: SalvageSpawnerMobMagnet + name: Salvage Magnet Mob Spawner + suffix: 50% + components: + - type: Sprite + layers: + - state: pink + - sprite: Mobs/Aliens/Carps/space.rsi + state: alive + - type: EntityTableSpawner + table: !type:NestedSelector + prob: 0.5 + tableId: SalvageMagnetMobTable + +- type: entity + parent: SalvageSpawnerMobMagnet + id: SalvageSpawnerMobMagnet75 + suffix: 75% + components: + - type: EntityTableSpawner + table: !type:NestedSelector + prob: 0.75 + tableId: SalvageMagnetMobTable + +- type: entity + parent: SalvageSpawnerMobMagnet + id: SalvageSpawnerMobMagnet100 + suffix: 100% + components: + - type: EntityTableSpawner + table: !type:NestedSelector + prob: 1.0 + tableId: SalvageMagnetMobTable + +- type: entity + parent: MarkerBase + id: SalvageSpawnerMobShark + name: Salvage Sharkminnow Spawner + components: + - type: Sprite + layers: + - state: pink + - sprite: Mobs/Aliens/Carps/sharkminnow.rsi + state: alive + - type: EntityTableSpawner + table: !type:AllSelector + children: + - id: MobShark + - id: MobCarpSalvage + amount: !type:ConstantNumberSelector + value: 3 + diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml new file mode 100644 index 0000000000..976febbd1d --- /dev/null +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml @@ -0,0 +1,226 @@ +# Scrap: Worthless items that can be recycled into materials + +- type: entityTable + id: SalvageScrapLowValue + table: !type:GroupSelector + children: + - id: ScrapAirlock2 + - id: ScrapBucket + - id: ScrapCamera + - id: ScrapCanister1 + - id: ScrapCanister2 + - id: ScrapFaxMachine + - id: ScrapFireExtinguisher + - id: ScrapFirelock3 + - id: ScrapIntercom + - id: ScrapMedkit + - !type:GroupSelector + children: + - id: ScrapPAI + - id: ScrapPAIGold + weight: 0.1 + - id: ScrapTube + - id: ShardGlass + amount: !type:RangeNumberSelector + range: 1, 3 + - id: SheetSteel1 + weight: 0.5 + amount: !type:RangeNumberSelector + range: 1, 3 + - id: SheetPlastic1 + weight: 0.5 + amount: !type:RangeNumberSelector + range: 1, 3 + - id: PartRodMetal1 + weight: 0.5 + amount: !type:RangeNumberSelector + range: 1, 3 + +- type: entityTable + id: SalvageScrapHighValue + table: !type:GroupSelector + children: + - id: ScrapSteel + weight: 2 + - id: ScrapGlass + weight: 2 + # - id: ScrapPlastic TODO: high-value plastic scrap. + # weight: 2 + - id: SheetSteel10 + - id: SheetGlass10 + - id: SheetPlastic10 + - id: PartRodMetal10 + weight: 0.33 + - id: MaterialWoodPlank10 + weight: 0.2 + - id: SheetPlasma10 + weight: 0.2 + - id: ArtifactFragment1 + weight: 0.05 + - id: SheetPlasteel10 + weight: 0.05 + +- type: entityTable + id: SalvageScrapLarge + table: !type:GroupSelector + children: + - id: ScrapAirlock1 + - id: ScrapCloset + - id: ScrapFirelock1 + - id: ScrapFirelock2 + - id: ScrapJetpack + weight: 0.5 + - id: ScrapMopBucket + weight: 0.5 + +# Treasure: High-value scatterables that don't do a ton. + +- type: entityTable + id: SalvageTreasureCommon + table: !type:GroupSelector + children: + - id: SheetPlasma1 + amount: !type:RangeNumberSelector + range: 3, 5 + - id: ResearchDisk + - id: DrinkGoldenCup + - id: TreasureSampleTube + - !type:NestedSelector + tableId: TreasureCoinPile + rolls: !type:RangeNumberSelector + range: 1, 2 + - !type:NestedSelector + tableId: RandomInstrumentTable + +- type: entityTable + id: SalvageTreasureUncommon + table: !type:GroupSelector + children: + - id: IngotSilver1 + amount: !type:RangeNumberSelector + range: 1, 5 + - id: IngotGold1 + amount: !type:RangeNumberSelector + range: 3, 5 + - id: TreasureDatadiskEncrypted + - !type:GroupSelector + children: + - id: TreasureCDDrive + - id: TreasureHardDiskDrive + - id: TreasureFlopDiskDrive + - !type:NestedSelector + tableId: TreasureCoinPile + rolls: !type:RangeNumberSelector + range: 4, 7 + - id: SpaceCash1000 + - id: WristwatchGold + +- type: entityTable + id: SalvageTreasureRare + table: !type:GroupSelector + children: + - id: MaterialDiamond1 + - id: TreasureCPUSupercharged + - id: TechnologyDiskRare + weight: 0.5 + - id: ResearchDisk10000 + weight: 0.5 + - id: ArabianLamp + - !type:NestedSelector + tableId: TreasureCoinPileRare + rolls: !type:RangeNumberSelector + range: 2, 5 + - !type:AllSelector + children: + - id: BriefcaseBrown + - !type:GroupSelector + rolls: !type:RangeNumberSelector + range: 3, 5 + children: + - id: SpaceCash1000 + weight: 60 + - id: SpaceCash2500 + weight: 25 + - id: SpaceCash5000 + weight: 14 + - id: SpaceCash10000 + weight: 1 + +- type: entityTable + id: SalvageTreasureLegendary + table: !type:GroupSelector + children: + - id: ClothingMaskGoldenCursed + - id: ClothingHeadHatFancyCrown + - id: GoldenBikeHorn + - id: ClothingHeadHatCatEars + - id: TreasureCoinDiamond + amount: !type:RangeNumberSelector + range: 2, 5 + +# Equipment: Tools and things used by salvagers. Quote unquote "Gamer Loot" + +- type: entityTable + id: SalvageEquipmentCommon + table: !type:GroupSelector + children: + - id: Flare + - id: Crowbar + - id: Pickaxe + - id: ClothingMaskGas + - !type:GroupSelector + children: + - id: Wirecutter + - id: Screwdriver + - id: Wrench + - id: Welder + weight: 0.5 + - id: Shovel + - id: FlashlightLantern + - id: FireExtinguisher + +- type: entityTable + id: SalvageEquipmentUncommon + table: !type:GroupSelector + children: + - id: OreBag + - id: HandheldGPSBasic + - id: PowerCellHighPrinted + - id: RadioHandheld + - id: ClothingBeltUtility + - id: SurvivalKnife + - id: WeaponProtoKineticAccelerator + weight: 0.5 + - id: OxygenTankFilled + - !type:GroupSelector + children: + - id: ClothingHeadHatWelding + - id: ClothingHeadHatWeldingMaskFlame + weight: 0.25 + - id: ClothingHeadHatWeldingMaskFlameBlue + weight: 0.25 + - id: ClothingHeadHatWeldingMaskPainted + weight: 0.1 + +- type: entityTable + id: SalvageEquipmentRare + table: !type:GroupSelector + children: + - id: FultonBeacon + - id: Fulton + amount: !type:RangeNumberSelector + range: 1, 3 + - id: HandHeldMassScanner + - id: WeaponCrusherDagger + - id: MiningDrill + - id: ClothingEyesGlassesMeson + - id: ClothingBeltSalvageWebbing + - id: ClothingOuterHardsuitSalvage + +- type: entityTable + id: SalvageEquipmentLegendary + table: !type:GroupSelector + children: + - id: WeaponCrusher + - id: WeaponCrusherGlaive + - id: OmnizineChemistryBottle diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/instruments.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/instruments.yml index 0c54f37bd7..0d38015c40 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/instruments.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/instruments.yml @@ -1,3 +1,43 @@ +- type: entityTable + id: RandomInstrumentTable + table: !type:GroupSelector + children: + - !type:GroupSelector + weight: 95 + children: + - id: AcousticGuitarInstrument + - id: ViolinInstrument + - id: TrumpetInstrument + - id: ElectricGuitarInstrument + - id: AccordionInstrument + - id: HarmonicaInstrument + - id: TromboneInstrument + - id: FrenchHornInstrument + - id: EuphoniumInstrument + - id: SaxophoneInstrument + - id: BanjoInstrument + - id: GlockenspielInstrument + - id: XylophoneInstrument + - id: BikeHornInstrument + - id: RecorderInstrument + - id: FluteInstrument + - id: ClarinetInstrument + - id: CelloInstrument + - id: KalimbaInstrument + - id: MicrophoneInstrument + - id: BassGuitarInstrument + - id: OcarinaInstrument + - id: PanFluteInstrument + - !type:GroupSelector + weight: 5 + children: + - id: SynthesizerInstrument + - id: GunpetInstrument + - id: BagpipeInstrument + - id: RockGuitarInstrument + - id: MusicBoxInstrument + - id: ViolaInstrument + - type: entity id: RandomInstruments name: random instruments spawner @@ -8,37 +48,6 @@ - state: red - sprite: Objects/Fun/Instruments/h_synthesizer.rsi state: icon - - type: RandomSpawner - prototypes: - - AcousticGuitarInstrument - - ViolinInstrument - - TrumpetInstrument - - ElectricGuitarInstrument - - AccordionInstrument - - HarmonicaInstrument - - TromboneInstrument - - FrenchHornInstrument - - EuphoniumInstrument - - SaxophoneInstrument - - BanjoInstrument - - GlockenspielInstrument - - XylophoneInstrument - - BikeHornInstrument - - RecorderInstrument - - FluteInstrument - - ClarinetInstrument - - CelloInstrument - - KalimbaInstrument - - MicrophoneInstrument - - BassGuitarInstrument - - OcarinaInstrument - - PanFluteInstrument - chance: 0.95 - rarePrototypes: - - SynthesizerInstrument - - GunpetInstrument - - BagpipeInstrument - - RockGuitarInstrument - - MusicBoxInstrument - - ViolaInstrument - rareChance: 0.05 + - type: EntityTableSpawner + table: !type:NestedSelector + tableId: RandomInstrumentTable diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml index 34bf32d8d7..54020e2ab5 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml @@ -39,29 +39,6 @@ chance: 0.9 offset: 0.0 -- type: entity - name: Salvage Canister Spawner - id: SalvageCanisterSpawner - parent: MarkerBase - components: - - type: Sprite - layers: - - state: red - - sprite: Structures/Storage/canister.rsi - state: blue - - type: RandomSpawner - rarePrototypes: - - PlasmaCanister - rareChance: 0.03 - prototypes: - - AirCanister - - NitrogenCanister - - OxygenCanister - - CarbonDioxideCanister - - WaterVaporCanister - chance: 0.9 - offset: 0.0 - - type: entity name: salvage loot spawner id: SalvageLootSpawner diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml index 18e70d5d66..9dd386426c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml @@ -51,6 +51,8 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/golden_cup.rsi + - type: StaticPrice + price: 125 - type: entity parent: DrinkBaseCup diff --git a/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml b/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml index dfb5133628..1218f7a9d4 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml @@ -111,6 +111,16 @@ tags: - Sheet +- type: entity + parent: SheetPlasma + id: SheetPlasma10 + suffix: 10 + components: + - type: Sprite + state: plasma + - type: Stack + count: 10 + - type: entity parent: SheetPlasma id: SheetPlasma1 diff --git a/Resources/Prototypes/Entities/Objects/Misc/treasure.yml b/Resources/Prototypes/Entities/Objects/Misc/treasure.yml new file mode 100644 index 0000000000..20e72f8a11 --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Misc/treasure.yml @@ -0,0 +1,191 @@ +- type: entity + parent: BaseItem + id: TreasureDatadiskEncrypted + name: encrypted datadisk + description: An old data disk. Someone savvier than you could unencrypt it and learn something juicy. All you can do is sell it. + components: + - type: Sprite + sprite: Objects/Misc/module.rsi + layers: + - state: datadisk_base + color: "#868686" + - state: datadisk_label + - state: datadisk_encrypted + - type: PointLight + radius: 1.5 + energy: 0.5 + castShadows: false + color: "#0000ff" + - type: StaticPrice + price: 500 + +- type: entity + parent: BaseItem + id: TreasureHardDiskDrive + name: hard disk drive + description: A disk drive designed for old Earth technology, circa 1980. There's probably some kind of collector who might want to get their paws on this. + components: + - type: Sprite + sprite: Objects/Misc/module.rsi + layers: + - state: harddisk + map: [ "base" ] + - type: Item + storedRotation: -90 + - type: RandomSprite + available: + - base: + harddisk: "" + harddisk_mini: "" + harddisk_micro: "" + - type: StaticPrice + price: 275 + +- type: entity + parent: BaseItem + id: TreasureFlopDiskDrive + name: floppy disk drive + description: A drive for reading off info off of floppy disks. Shame that the only things stored on them nowadays are nuclear bomb operations. + components: + - type: Sprite + sprite: Objects/Misc/module.rsi + layers: + - state: flopdrive + - type: Item + storedRotation: -90 + - type: StaticPrice + price: 350 + +- type: entity + parent: BaseItem + id: TreasureCDDrive + name: CD drive + description: A piece of tech for reading data off of CDs. Nowadays that's not the most useful thing, unless you plan on flying somewhere. + components: + - type: Sprite + sprite: Objects/Misc/module.rsi + layers: + - state: cddrive + - type: Item + storedRotation: -90 + - type: StaticPrice + price: 300 + +- type: entity + parent: BaseItem + id: TreasureCPUSupercharged + name: supercharged CPU + description: Some kind of super alien space tech. Shame all the computers already come with CPUs nowadays. + components: + - type: Sprite + sprite: Objects/Misc/module.rsi + layers: + - state: cpu_super + - type: Item + size: Tiny + - type: StaticPrice + price: 750 + +- type: entity + parent: BaseItem + id: TreasureSampleTube + name: sample tube + description: A glass tube with some sort of goop in it. Looks prone to breaking. + components: + - type: Sprite + sprite: Objects/Misc/sample_tubes.rsi + layers: + - state: blank + map: [ "base" ] + - type: RandomSprite + available: + - base: + blank: "" + power: "" + reinforcer: "" + energy: "" + synchronizer: "" + stabilizer: "" + - type: StaticPrice + price: 120 + +- type: entityTable + id: TreasureCoinPile + table: !type:GroupSelector + children: + - id: TreasureCoinIron + weight: 24 + - id: TreasureCoinSilver + weight: 40 + - id: TreasureCoinGold + weight: 24 + - id: TreasureCoinAdamantine + weight: 11 + - id: TreasureCoinDiamond + weight: 1 + +- type: entityTable + id: TreasureCoinPileRare + table: !type:GroupSelector + children: + - id: TreasureCoinIron + weight: 10 + - id: TreasureCoinSilver + weight: 25 + - id: TreasureCoinGold + weight: 40 + - id: TreasureCoinAdamantine + weight: 20 + - id: TreasureCoinDiamond + weight: 5 + +- type: entity + parent: BaseItem + id: TreasureCoinIron + name: coin + description: A flat bit of metal. If it was still in circulation, inflation would've made it worthless. Since it isn't, it's worth enough to keep in a book. + components: + - type: Sprite + sprite: Objects/Misc/coins.rsi + state: coin_iron + - type: Item + size: Tiny + - type: StaticPrice + price: 75 + +- type: entity + parent: TreasureCoinIron + id: TreasureCoinSilver + components: + - type: Sprite + state: coin_silver + - type: StaticPrice + price: 125 + +- type: entity + parent: TreasureCoinIron + id: TreasureCoinGold + components: + - type: Sprite + state: coin_gold + - type: StaticPrice + price: 175 + +- type: entity + parent: TreasureCoinIron + id: TreasureCoinAdamantine + components: + - type: Sprite + state: coin_adamantine + - type: StaticPrice + price: 250 + +- type: entity + parent: TreasureCoinIron + id: TreasureCoinDiamond + components: + - type: Sprite + state: coin_diamond + - type: StaticPrice + price: 500 + diff --git a/Resources/Textures/Objects/Misc/coins.rsi/coin_adamantine.png b/Resources/Textures/Objects/Misc/coins.rsi/coin_adamantine.png new file mode 100644 index 0000000000..1276489498 Binary files /dev/null and b/Resources/Textures/Objects/Misc/coins.rsi/coin_adamantine.png differ diff --git a/Resources/Textures/Objects/Misc/coins.rsi/coin_diamond.png b/Resources/Textures/Objects/Misc/coins.rsi/coin_diamond.png new file mode 100644 index 0000000000..275ac02331 Binary files /dev/null and b/Resources/Textures/Objects/Misc/coins.rsi/coin_diamond.png differ diff --git a/Resources/Textures/Objects/Misc/coins.rsi/coin_gold.png b/Resources/Textures/Objects/Misc/coins.rsi/coin_gold.png new file mode 100644 index 0000000000..8bdb9ffedd Binary files /dev/null and b/Resources/Textures/Objects/Misc/coins.rsi/coin_gold.png differ diff --git a/Resources/Textures/Objects/Misc/coins.rsi/coin_iron.png b/Resources/Textures/Objects/Misc/coins.rsi/coin_iron.png new file mode 100644 index 0000000000..b5bdbf2f74 Binary files /dev/null and b/Resources/Textures/Objects/Misc/coins.rsi/coin_iron.png differ diff --git a/Resources/Textures/Objects/Misc/coins.rsi/coin_silver.png b/Resources/Textures/Objects/Misc/coins.rsi/coin_silver.png new file mode 100644 index 0000000000..8891912416 Binary files /dev/null and b/Resources/Textures/Objects/Misc/coins.rsi/coin_silver.png differ diff --git a/Resources/Textures/Objects/Misc/coins.rsi/meta.json b/Resources/Textures/Objects/Misc/coins.rsi/meta.json new file mode 100644 index 0000000000..ac06e96730 --- /dev/null +++ b/Resources/Textures/Objects/Misc/coins.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from vgstation13 at https://github.com/vgstation-coders/vgstation13/blob/15121b534f4ef10339d96412e22fe3ce4d15a45d/icons/obj/coins.dmi", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "coin_silver" + }, + { + "name": "coin_gold" + }, + { + "name": "coin_iron" + }, + { + "name": "coin_diamond" + }, + { + "name": "coin_adamantine" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Misc/module.rsi/datadisk_encrypted.png b/Resources/Textures/Objects/Misc/module.rsi/datadisk_encrypted.png new file mode 100644 index 0000000000..55a8e19637 Binary files /dev/null and b/Resources/Textures/Objects/Misc/module.rsi/datadisk_encrypted.png differ diff --git a/Resources/Textures/Objects/Misc/module.rsi/meta.json b/Resources/Textures/Objects/Misc/module.rsi/meta.json index ba3abaa2dd..e332bf6c19 100644 --- a/Resources/Textures/Objects/Misc/module.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/module.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0, generic, service, command, science, security, medical, supply, and engineering taken from shiptest at https://github.com/shiptest-ss13/Shiptest/pull/1473, additional sprites created by EmoGarbage404", "states": [{"name": "abductor_mod"}, {"name": "airalarm_electronics"}, {"name": "ash_plating"}, {"name": "beaker_holder"}, {"name": "blank_mod"}, {"name": "bluespacearray"}, {"name": "boris"}, {"name": "boris_recharging", "delays": [[1.0, 1.0]]}, {"name": "card_mini"}, {"name": "card_mod"}, {"name": "cargodisk"}, {"name": "cart_connector"}, {"name": "cddrive"}, {"name": "cell"}, {"name": "cell_con"}, {"name": "cell_con_micro"}, {"name": "cell_micro"}, {"name": "cell_mini"}, {"name": "charger_APC"}, {"name": "charger_lambda"}, {"name": "charger_pda"}, {"name": "charger_wire"}, {"name": "clock_mod", "delays": [[0.6, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "command"}, {"name": "cpu"}, {"name": "cpu_adv"}, {"name": "cpu_command"}, {"name": "cpu_engineering"}, {"name": "cpu_medical"}, {"name": "cpu_science"}, {"name": "cpu_security"}, {"name": "cpu_service"}, {"name": "cpu_super", "delays": [[0.1, 0.1]]}, {"name": "cpu_supply"}, {"name": "cpuboard"}, {"name": "cpuboard_adv"}, {"name": "cpuboard_super", "delays": [[0.1, 0.1]]}, {"name": "cyborg_upgrade"}, {"name": "cyborg_upgrade1"}, {"name": "cyborg_upgrade2"}, {"name": "cyborg_upgrade3"}, {"name": "cyborg_upgrade4"}, {"name": "cyborg_upgrade5"}, {"name": "datadisk_base"}, {"name": "datadisk_gene", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_hydro", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_label"}, {"name": "depositbox"}, {"name": "door_electronics"}, {"name": "engineering"}, {"name": "flopdrive"}, {"name": "generic"}, {"name": "harddisk"}, {"name": "harddisk_micro"}, {"name": "harddisk_mini"}, {"name": "holodisk", "delays": [[0.1, 0.1]]}, {"name": "id_mod"}, {"name": "mainboard"}, {"name": "mcontroller"}, {"name": "medical"}, {"name": "net_wired"}, {"name": "power_mod"}, {"name": "printer"}, {"name": "printer_mini"}, {"name": "prizevendor"}, {"name": "radio"}, {"name": "radio_micro"}, {"name": "radio_mini"}, {"name": "ram"}, {"name": "rndmajordisk"}, {"name": "science"}, {"name": "secmodschematic"}, {"name": "security"}, {"name": "selfrepair_off"}, {"name": "selfrepair_on", "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "service"}, {"name": "servo"}, {"name": "ssd"}, {"name": "ssd_large"}, {"name": "ssd_micro"}, {"name": "ssd_mini"}, {"name": "std_mod"}, {"name": "supply"}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0, generic, service, command, science, security, medical, supply, and engineering taken from shiptest at https://github.com/shiptest-ss13/Shiptest/pull/1473, additional sprites created by EmoGarbage404", "states": [{"name": "abductor_mod"}, {"name": "airalarm_electronics"}, {"name": "ash_plating"}, {"name": "beaker_holder"}, {"name": "blank_mod"}, {"name": "bluespacearray"}, {"name": "boris"}, {"name": "boris_recharging", "delays": [[1.0, 1.0]]}, {"name": "card_mini"}, {"name": "card_mod"}, {"name": "cargodisk"}, {"name": "cart_connector"}, {"name": "cddrive"}, {"name": "cell"}, {"name": "cell_con"}, {"name": "cell_con_micro"}, {"name": "cell_micro"}, {"name": "cell_mini"}, {"name": "charger_APC"}, {"name": "charger_lambda"}, {"name": "charger_pda"}, {"name": "charger_wire"}, {"name": "clock_mod", "delays": [[0.6, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "command"}, {"name": "cpu"}, {"name": "cpu_adv"}, {"name": "cpu_command"}, {"name": "cpu_engineering"}, {"name": "cpu_medical"}, {"name": "cpu_science"}, {"name": "cpu_security"}, {"name": "cpu_service"}, {"name": "cpu_super", "delays": [[0.1, 0.1]]}, {"name": "cpu_supply"}, {"name": "cpuboard"}, {"name": "cpuboard_adv"}, {"name": "cpuboard_super", "delays": [[0.1, 0.1]]}, {"name": "cyborg_upgrade"}, {"name": "cyborg_upgrade1"}, {"name": "cyborg_upgrade2"}, {"name": "cyborg_upgrade3"}, {"name": "cyborg_upgrade4"}, {"name": "cyborg_upgrade5"}, {"name": "datadisk_base"}, {"name": "datadisk_gene", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_encrypted", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "datadisk_hydro", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_label"}, {"name": "depositbox"}, {"name": "door_electronics"}, {"name": "engineering"}, {"name": "flopdrive"}, {"name": "generic"}, {"name": "harddisk"}, {"name": "harddisk_micro"}, {"name": "harddisk_mini"}, {"name": "holodisk", "delays": [[0.1, 0.1]]}, {"name": "id_mod"}, {"name": "mainboard"}, {"name": "mcontroller"}, {"name": "medical"}, {"name": "net_wired"}, {"name": "power_mod"}, {"name": "printer"}, {"name": "printer_mini"}, {"name": "prizevendor"}, {"name": "radio"}, {"name": "radio_micro"}, {"name": "radio_mini"}, {"name": "ram"}, {"name": "rndmajordisk"}, {"name": "science"}, {"name": "secmodschematic"}, {"name": "security"}, {"name": "selfrepair_off"}, {"name": "selfrepair_on", "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "service"}, {"name": "servo"}, {"name": "ssd"}, {"name": "ssd_large"}, {"name": "ssd_micro"}, {"name": "ssd_mini"}, {"name": "std_mod"}, {"name": "supply"}]} diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/blank.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/blank.png new file mode 100644 index 0000000000..b3d3d4008f Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/blank.png differ diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/energy.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/energy.png new file mode 100644 index 0000000000..624ee66d52 Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/energy.png differ diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/meta.json b/Resources/Textures/Objects/Misc/sample_tubes.rsi/meta.json new file mode 100644 index 0000000000..8b343b4cfe --- /dev/null +++ b/Resources/Textures/Objects/Misc/sample_tubes.rsi/meta.json @@ -0,0 +1,29 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/blob/fb1012102257b7b0a08d861fd2b8ba963c416e93/icons/obj/science/chromosomes.dmi", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "blank" + }, + { + "name": "stabilizer" + }, + { + "name": "synchronizer" + }, + { + "name": "power" + }, + { + "name": "energy" + }, + { + "name": "reinforcer" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/power.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/power.png new file mode 100644 index 0000000000..1ffb356aa2 Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/power.png differ diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/reinforcer.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/reinforcer.png new file mode 100644 index 0000000000..2e7088544d Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/reinforcer.png differ diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/stabilizer.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/stabilizer.png new file mode 100644 index 0000000000..052b13521a Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/stabilizer.png differ diff --git a/Resources/Textures/Objects/Misc/sample_tubes.rsi/synchronizer.png b/Resources/Textures/Objects/Misc/sample_tubes.rsi/synchronizer.png new file mode 100644 index 0000000000..e5f7366bb3 Binary files /dev/null and b/Resources/Textures/Objects/Misc/sample_tubes.rsi/synchronizer.png differ