diff --git a/Resources/Locale/en-US/_NF/advertisements/vending/civimed.ftl b/Resources/Locale/en-US/_NF/advertisements/vending/civimed.ftl new file mode 100644 index 00000000000..9878202e969 --- /dev/null +++ b/Resources/Locale/en-US/_NF/advertisements/vending/civimed.ftl @@ -0,0 +1,9 @@ +advertisement-civimed-1 = MINERS, DON'T DIE! +advertisement-civimed-2 = You're better than dying in space! Stock up now! +advertisement-civimed-3 = We're not overcharging you, we just know what you're worth! Pay up! +advertisement-civimed-4 = Your money or your life! This is not legally a threat! +advertisement-civimed-5 = Nine out of ten corpses did NOT stock up on medicine! The last one was an idiot. +advertisement-civimed-6 = Packs laden with loot are often low on supplies. +advertisement-civimed-7 = Get gouged, not burned. Patch yourself up! +advertisement-civimed-8 = I'm not a doctor, but you could be! Self-medicate the pain away! +advertisement-civimed-9 = Focus groups show our products are MOSTLY SAFE for consumption! diff --git a/Resources/Prototypes/_NF/Catalog/Cargo/cargo_vending.yml b/Resources/Prototypes/_NF/Catalog/Cargo/cargo_vending.yml index 47ab0cdd1b5..3c59f20ad19 100644 --- a/Resources/Prototypes/_NF/Catalog/Cargo/cargo_vending.yml +++ b/Resources/Prototypes/_NF/Catalog/Cargo/cargo_vending.yml @@ -87,3 +87,14 @@ cost: 100 # Frontier category: cargoproduct-category-name-fun group: market + +- type: cargoProduct + id: CrateVendingMachineRestockCiviMed + abstract: true + icon: + sprite: _NF/Objects/Specific/Service/vending_machine_restock.rsi + state: base + product: CrateVendingMachineRestockCiviMedFilled + cost: 100 # Frontier + category: cargoproduct-category-name-medical + group: market diff --git a/Resources/Prototypes/_NF/Catalog/Fills/Crates/vending.yml b/Resources/Prototypes/_NF/Catalog/Fills/Crates/vending.yml index a4972ba8759..6c5ff2f1a43 100644 --- a/Resources/Prototypes/_NF/Catalog/Fills/Crates/vending.yml +++ b/Resources/Prototypes/_NF/Catalog/Fills/Crates/vending.yml @@ -85,3 +85,14 @@ contents: - id: VendingMachineRestockPottedPlantVend amount: 2 + +- type: entity + id: CrateVendingMachineRestockCiviMedVendFilled + parent: CratePlasticBiodegradable + name: CiviMed restock crate + description: Contains two restock boxes for the CiviMed vending machine. + components: + - type: StorageFill + contents: + - id: VendingMachineRestockCiviMedVend + amount: 2 diff --git a/Resources/Prototypes/_NF/Catalog/VendingMachines/Advertisements/civimed.yml b/Resources/Prototypes/_NF/Catalog/VendingMachines/Advertisements/civimed.yml new file mode 100644 index 00000000000..5215e3cca54 --- /dev/null +++ b/Resources/Prototypes/_NF/Catalog/VendingMachines/Advertisements/civimed.yml @@ -0,0 +1,5 @@ +- type: localizedDataset + id: CiviMedAds + values: + prefix: advertisement-civimed- + count: 9 diff --git a/Resources/Prototypes/_NF/Catalog/VendingMachines/Inventories/civimed.yml b/Resources/Prototypes/_NF/Catalog/VendingMachines/Inventories/civimed.yml new file mode 100644 index 00000000000..c6bf048306e --- /dev/null +++ b/Resources/Prototypes/_NF/Catalog/VendingMachines/Inventories/civimed.yml @@ -0,0 +1,7 @@ +- type: vendingMachineInventory + id: CiviMedVendInventory + startingInventory: + Brutepack: 20 + Ointment: 20 + Bloodpack: 20 + Gauze: 20 diff --git a/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_general.yml b/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_general.yml index 7778c05dd48..d3791e8860e 100644 --- a/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_general.yml +++ b/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_general.yml @@ -1047,6 +1047,7 @@ - VendingMachineRestockEngineering - VendingMachineRestockGames - VendingMachineRestockMedical + - VendingMachineRestockCiviMedVend - VendingMachineRestockNutriMax - VendingMachineRestockSalvageEquipment - VendingMachineRestockSeeds diff --git a/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_medical.yml b/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_medical.yml index 4b92bd7a654..2cd01bc44be 100644 --- a/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_medical.yml +++ b/Resources/Prototypes/_NF/Entities/Markers/Spawners/Random/dungeon_items_medical.yml @@ -605,6 +605,7 @@ prototypes: - CrateVendingMachineRestockMedicalFilled - CrateVendingMachineRestockChemVendFilled + - CrateVendingMachineRestockCiviMedVendFilled chance: 1.0 offset: 0.0 diff --git a/Resources/Prototypes/_NF/Entities/Objects/Specific/Service/vending_machine_restock.yml b/Resources/Prototypes/_NF/Entities/Objects/Specific/Service/vending_machine_restock.yml index 66fd6af1219..0ca6028669e 100644 --- a/Resources/Prototypes/_NF/Entities/Objects/Specific/Service/vending_machine_restock.yml +++ b/Resources/Prototypes/_NF/Entities/Objects/Specific/Service/vending_machine_restock.yml @@ -194,3 +194,20 @@ - state: green_bit shader: unshaded - state: refill_contravend + +- type: entity + parent: SecuredVendingMachineRestock + id: VendingMachineRestockCiviMedVend + name: CiviMed restock box + description: A box containing medical supplies for the CiviMed vending machine. A label reads THE BOX IS TAMPER PROOF AND WILL DESTROY IT'S CONTENT ON HARM. + components: + - type: VendingMachineRestock + canRestock: + - CiviMedVendInventory + - type: Sprite + sprite: _NF/Objects/Specific/Service/vending_machine_restock.rsi + layers: + - state: base + - state: green_bit + shader: unshaded + - state: refill_civimed diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/vending_machines.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/vending_machines.yml index 9301f074536..cc1f3822d79 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Machines/vending_machines.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/vending_machines.yml @@ -599,3 +599,34 @@ shader: unshaded - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] + +- type: entity + parent: [BaseStructureUnanchorable, BaseStructureIndestructible, VendingMachine] + id: VendingMachineCiviMedVend + name: CiviMedVend + description: CiviMed, distributing lifesaving meds harder than the rocks you break! Miners, DON'T DIE! + components: + - type: VendingMachine + pack: CiviMedVendInventory + offState: off + brokenState: broken + normalState: normal-unshaded + # ejectState: eject-unshaded No sprite, see chefvend/dinnerware/BODA/etc for expamples + - type: Advertise + pack: CiviMedAds + - type: Sprite + sprite: _NF/Structures/Machines/VendingMachines/civimed.rsi + layers: + - state: "off" + map: ["enum.VendingMachineVisualLayers.Base"] + - state: "off" + map: ["enum.VendingMachineVisualLayers.BaseUnshaded"] + shader: unshaded + - state: panel + map: ["enum.WiresVisualLayers.MaintenancePanel"] + - type: PointLight + radius: 1.5 + energy: 1.6 + color: "#4b93ad" + - type: MarketModifier + mod: 15 diff --git a/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/meta.json b/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/meta.json index db6e71c3e7e..b5a3a5afa5e 100644 --- a/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/meta.json +++ b/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/meta.json @@ -28,11 +28,14 @@ { "name": "refill_nfsdtec" }, - { - "name": "refill_nonlethal" - }, - { - "name": "refill_contravend" - } + { + "name": "refill_nonlethal" + }, + { + "name": "refill_contravend" + }, + { + "name": "refill_civimed" + } ] } diff --git a/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/refill_civimed.png b/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/refill_civimed.png new file mode 100644 index 00000000000..c79e029284b Binary files /dev/null and b/Resources/Textures/_NF/Objects/Specific/Service/vending_machine_restock.rsi/refill_civimed.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/broken.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/broken.png new file mode 100644 index 00000000000..a6e60a2352c Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/broken.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/deny-unshaded.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/deny-unshaded.png new file mode 100644 index 00000000000..85dcb639683 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/deny-unshaded.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/eject-unshaded.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/eject-unshaded.png new file mode 100644 index 00000000000..5f71048acf2 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/eject-unshaded.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/meta.json b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/meta.json new file mode 100644 index 00000000000..ffcd378509a --- /dev/null +++ b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/meta.json @@ -0,0 +1,48 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/1516a728931b4985c1e86f0c5995a5aa1554a1ad and modified by Dusty Lens", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "normal-unshaded", + "delays": [ + [ + 0.5, + 0.5 + ] + ] + }, + { + "name": "broken" + }, + { + "name": "deny-unshaded", + "delays": [ + [ + 0.1, + 0.1 + ] + ] + }, + { + "name": "off" + }, + { + "name": "panel" + }, + { + "name": "eject-unshaded", + "delays": [ + [ + 0.1, + 0.4, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/normal-unshaded.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/normal-unshaded.png new file mode 100644 index 00000000000..0084601527a Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/normal-unshaded.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/off.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/off.png new file mode 100644 index 00000000000..bc342677ab0 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/off.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/panel.png b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/panel.png new file mode 100644 index 00000000000..a797b42b18b Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/VendingMachines/civimed.rsi/panel.png differ