From e56f6a9f75c9a2c8cf966fbdf9c834d7d0386c3b Mon Sep 17 00:00:00 2001 From: VMSolidus Date: Sun, 20 Oct 2024 12:32:53 -0400 Subject: [PATCH] Musician Loadouts (#1108) # Description Fixes #1103 This PR removes the default saxophone and acoustic guitar that the Musician spawns with. Instead the Musician now has a selection of 3 free picks of *almost* any instrument in the game. The only instruments not included in his list are the Supersynth, DAW, and admeme items such as the "Musical Lung" and "Fingerless Frets". There's a few instruments leftover for the Clown that will be given to the clown in his own separate PR. To make sure the musicians can also take large instruments, this PR also takes a feature from Frontier, that of "InstrumentFlatpacks", and adds them to the musician loadouts. So Musicians can take for instance a Minimoog flatpack if they so desire.

Media

![image](https://github.com/user-attachments/assets/8b79e960-440f-4f7e-9b9a-bc56d30c104a)

# Changelog :cl: - add: Musicians can now select for free, any 3 instruments in the game with their loadout. This now includes things like Piano flatpacks. The only instruments not included are the Sypersynth, DAW, and "Admeme Instruments". - remove: Musicians no longer spawn with a Saxophone and Acoustic guitar by default. You pick which instruments you spawn with in your loadouts now. --- .../Locale/en-US/loadouts/categories.ftl | 1 + .../Fills/Backpacks/StarterGear/backpack.yml | 5 - .../musicianInstrumentsGroups.yml | 71 ++- .../Objects/Devices/instrumentFlatpacks.yml | 121 ++++ .../Fun/Instruments/instruments_wind.yml | 2 +- .../Loadouts/Categories/categories.yml | 4 + .../Loadouts/Jobs/Service/musician.yml | 554 ++++++++++++++++++ .../Prototypes/Loadouts/Jobs/service.yml | 172 +----- .../Objects/Devices/flatpack.rsi/meta.json | 5 +- .../Devices/flatpack.rsi/service_music.png | Bin 0 -> 6361 bytes 10 files changed, 753 insertions(+), 182 deletions(-) create mode 100644 Resources/Prototypes/Entities/Objects/Devices/instrumentFlatpacks.yml create mode 100644 Resources/Prototypes/Loadouts/Jobs/Service/musician.yml create mode 100644 Resources/Textures/Objects/Devices/flatpack.rsi/service_music.png diff --git a/Resources/Locale/en-US/loadouts/categories.ftl b/Resources/Locale/en-US/loadouts/categories.ftl index 193760005ea..778d0869b73 100644 --- a/Resources/Locale/en-US/loadouts/categories.ftl +++ b/Resources/Locale/en-US/loadouts/categories.ftl @@ -29,6 +29,7 @@ loadout-category-JobsServiceBartender = Bartender loadout-category-JobsServiceBotanist = Botanist loadout-category-JobsServiceChef = Chef loadout-category-JobsServiceJanitor = Janitor +loadout-category-JobsServiceMusician = Musician loadout-category-Mask = Mask loadout-category-Neck = Neck loadout-category-Outer = Outer diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml index 6713ed1e22b..da46ae75979 100644 --- a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml @@ -183,11 +183,6 @@ noSpawn: true parent: ClothingBackpack id: ClothingBackpackMusicianFilled - components: - - type: StorageFill - contents: - - id: AcousticGuitarInstrument - - id: SaxophoneInstrument - type: entity noSpawn: true diff --git a/Resources/Prototypes/CharacterItemGroups/musicianInstrumentsGroups.yml b/Resources/Prototypes/CharacterItemGroups/musicianInstrumentsGroups.yml index ccad399e74d..eac816b8db4 100644 --- a/Resources/Prototypes/CharacterItemGroups/musicianInstrumentsGroups.yml +++ b/Resources/Prototypes/CharacterItemGroups/musicianInstrumentsGroups.yml @@ -2,14 +2,36 @@ id: LoadoutMusicianInstruments maxItems: 3 items: + # Brass - type: loadout - id: LoadoutItemSynthesizerInstrumentMusician + id: LoadoutItemTrumpetInstrumentMusician + - type: loadout + id: LoadoutItemTromboneInstrumentMusician + - type: loadout + id: LoadoutItemFrenchHornInstrumentMusician + - type: loadout + id: LoadoutItemEuphoniumInstrumentMusician + # Misc + - type: loadout + id: LoadoutItemSeashellInstrumentMusician + - type: loadout + id: LoadoutItemBirdToyInstrumentMusician + # Percussion + - type: loadout + id: LoadoutItemGlockenspielInstrumentMusician + - type: loadout + id: LoadoutItemMusicBoxInstrumentMusician + - type: loadout + id: LoadoutItemXylophoneInstrumentMusician - type: loadout id: LoadoutItemMicrophoneInstrumentMusician + - type: loadout + id: LoadoutItemSynthesizerInstrumentMusician - type: loadout id: LoadoutItemKalimbaInstrumentMusician - type: loadout - id: LoadoutItemTrumpetInstrumentMusician + id: LoadoutItemWoodblockInstrumentMusician + # String - type: loadout id: LoadoutItemElectricGuitarInstrumentMusician - type: loadout @@ -18,14 +40,55 @@ id: LoadoutItemRockGuitarInstrumentMusician - type: loadout id: LoadoutItemAcousticGuitarInstrumentMusician + - type: loadout + id: LoadoutItemBanjoInstrumentMusician - type: loadout id: LoadoutItemViolinInstrumentMusician - type: loadout - id: LoadoutItemHarmonicaInstrumentMusician + id: LoadoutItemViolaInstrumentMusician + - type: loadout + id: LoadoutItemCelloInstrumentMusician + # Structure + - type: loadout + id: LoadoutItemPianoInstrumentMusician + - type: loadout + id: LoadoutItemUprightPianoInstrumentMusician + - type: loadout + id: LoadoutItemVibraphoneInstrumentMusician + - type: loadout + id: LoadoutItemMarimbaInstrumentMusician + - type: loadout + id: LoadoutItemChurchOrganInstrumentMusician + - type: loadout + id: LoadoutItemTubaInstrumentMusician + - type: loadout + id: LoadoutItemHarpInstrumentMusician + - type: loadout + id: LoadoutItemTimpaniInstrumentMusician + - type: loadout + id: LoadoutItemTaikoInstrumentMusician + - type: loadout + id: LoadoutItemContrabassInstrumentMusician + - type: loadout + id: LoadoutItemMinimoogInstrumentMusician + - type: loadout + id: LoadoutItemTomDrumsInstrumentMusician + # Wind + - type: loadout + id: LoadoutItemSaxophoneInstrumentMusician - type: loadout id: LoadoutItemAccordionInstrumentMusician + - type: loadout + id: LoadoutItemHarmonicaInstrumentMusician + - type: loadout + id: LoadoutItemClarinetInstrumentMusician - type: loadout id: LoadoutItemFluteInstrumentMusician + - type: loadout + id: LoadoutItemRecorderInstrumentMusician + - type: loadout + id: LoadoutItemPanFluteInstrumentMusician - type: loadout id: LoadoutItemOcarinaInstrumentMusician - + - type: loadout + id: LoadoutItemBagpipeInstrumentMusician diff --git a/Resources/Prototypes/Entities/Objects/Devices/instrumentFlatpacks.yml b/Resources/Prototypes/Entities/Objects/Devices/instrumentFlatpacks.yml new file mode 100644 index 00000000000..feb0e2ab5f7 --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Devices/instrumentFlatpacks.yml @@ -0,0 +1,121 @@ +- type: entity + parent: BaseFlatpack + id: InstrumentFlatpack + name: instrument flatpack + description: A flatpack used for constructing something. + categories: + - hideSpawnMenu + components: + - type: Item + size: Normal + - type: Sprite + layers: + - state: service_music + +- type: entity + parent: InstrumentFlatpack + id: PianoFlatpack + name: piano flatpack + description: A flatpack used for constructing a piano. + components: + - type: Flatpack + entity: PianoInstrument + +- type: entity + parent: InstrumentFlatpack + id: UprightPianoFlatpack + name: upright piano flatpack + description: A flatpack used for constructing an upright piano. + components: + - type: Flatpack + entity: UprightPianoInstrument + +- type: entity + parent: InstrumentFlatpack + id: VibraphoneFlatpack + name: vibraphone flatpack + description: A flatpack used for constructing a vibraphone. + components: + - type: Flatpack + entity: VibraphoneInstrument + +- type: entity + parent: InstrumentFlatpack + id: MarimbaFlatpack + name: marimba flatpack + description: A flatpack used for constructing a marimba. + components: + - type: Flatpack + entity: MarimbaInstrument + +- type: entity + parent: InstrumentFlatpack + id: ChurchOrganFlatpack + name: church organ flatpack + description: A flatpack used for constructing a church organ. + components: + - type: Flatpack + entity: ChurchOrganInstrument + +- type: entity + parent: InstrumentFlatpack + id: TubaFlatpack + name: tuba flatpack + description: A flatpack used for constructing a tuba. + components: + - type: Flatpack + entity: TubaInstrument + +- type: entity + parent: InstrumentFlatpack + id: HarpFlatpack + name: harp flatpack + description: A flatpack used for constructing a harp. + components: + - type: Flatpack + entity: HarpInstrument + +- type: entity + parent: InstrumentFlatpack + id: TimpaniFlatpack + name: timpani flatpack + description: A flatpack used for constructing a timpani. + components: + - type: Flatpack + entity: TimpaniInstrument + +- type: entity + parent: InstrumentFlatpack + id: TaikoFlatpack + name: taiko flatpack + description: A flatpack used for constructing a taiko. + components: + - type: Flatpack + entity: TaikoInstrument + +- type: entity + parent: InstrumentFlatpack + id: ContrabassFlatpack + name: contrabass flatpack + description: A flatpack used for constructing a contrabass. + components: + - type: Flatpack + entity: ContrabassInstrument + +- type: entity + parent: InstrumentFlatpack + id: MinimoogFlatpack + name: minimoog flatpack + description: A flatpack used for constructing a minimoog. + components: + - type: Flatpack + entity: MinimoogInstrument + +- type: entity + parent: InstrumentFlatpack + id: TomDrumsFlatpack + name: tom drums flatpack + description: A flatpack used for constructing a tom drums set. + components: + - type: Flatpack + entity: TomDrumsInstrument diff --git a/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_wind.yml b/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_wind.yml index e99f825d483..e37fbaa3613 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_wind.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_wind.yml @@ -70,7 +70,7 @@ slots: - neck - type: ActivatableUI - inHandsOnly: false + inHandsOnly: false - type: Tag tags: - WoodwindInstrument diff --git a/Resources/Prototypes/Loadouts/Categories/categories.yml b/Resources/Prototypes/Loadouts/Categories/categories.yml index c47d6ddef89..bfda095b193 100644 --- a/Resources/Prototypes/Loadouts/Categories/categories.yml +++ b/Resources/Prototypes/Loadouts/Categories/categories.yml @@ -68,6 +68,7 @@ - JobsServiceBotanist - JobsServiceChef - JobsServiceJanitor + - JobsServiceMusician - type: loadoutCategory id: JobsServiceUncategorized @@ -84,6 +85,9 @@ - type: loadoutCategory id: JobsServiceJanitor +- type: loadoutCategory + id: JobsServiceMusician + - type: loadoutCategory id: Mask root: true diff --git a/Resources/Prototypes/Loadouts/Jobs/Service/musician.yml b/Resources/Prototypes/Loadouts/Jobs/Service/musician.yml new file mode 100644 index 00000000000..5bf5471697b --- /dev/null +++ b/Resources/Prototypes/Loadouts/Jobs/Service/musician.yml @@ -0,0 +1,554 @@ +# Musician +# Musician Instruments +# Brass Instruments +- type: loadout + id: LoadoutItemTrumpetInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TrumpetInstrument + +- type: loadout + id: LoadoutItemTromboneInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TromboneInstrument + +- type: loadout + id: LoadoutItemFrenchHornInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - FrenchHornInstrument + +- type: loadout + id: LoadoutItemEuphoniumInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - EuphoniumInstrument + +# Misc Instruments +- type: loadout + id: LoadoutItemSeashellInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - SeashellInstrument + +- type: loadout + id: LoadoutItemBirdToyInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - BirdToyInstrument + # After this are some instruments like "Phone, Helicopter, and Canned Aplause. I leave those to the Clown + +# Percussion +- type: loadout + id: LoadoutItemGlockenspielInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - GlockenspielInstrument + +- type: loadout + id: LoadoutItemMusicBoxInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - MusicBoxInstrument + +- type: loadout + id: LoadoutItemXylophoneInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - XylophoneInstrument + +- type: loadout + id: LoadoutItemMicrophoneInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - MicrophoneInstrument + +- type: loadout + id: LoadoutItemSynthesizerInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - SynthesizerInstrument + +- type: loadout + id: LoadoutItemKalimbaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - KalimbaInstrument + +- type: loadout + id: LoadoutItemWoodblockInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - WoodblockInstrument + +# Stringed Instruments +- type: loadout + id: LoadoutItemElectricGuitarInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ElectricGuitarInstrument + +- type: loadout + id: LoadoutItemBassGuitarInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - BassGuitarInstrument + +- type: loadout + id: LoadoutItemRockGuitarInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - RockGuitarInstrument + +- type: loadout + id: LoadoutItemAcousticGuitarInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - AcousticGuitarInstrument + +- type: loadout + id: LoadoutItemBanjoInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - BanjoInstrument + +- type: loadout + id: LoadoutItemViolinInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ViolinInstrument + +- type: loadout + id: LoadoutItemViolaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ViolaInstrument + +- type: loadout + id: LoadoutItemCelloInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - CelloInstrument + +# Structure Instruments +- type: loadout + id: LoadoutItemPianoInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - PianoFlatpack + +- type: loadout + id: LoadoutItemUprightPianoInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - UprightPianoFlatpack + +- type: loadout + id: LoadoutItemVibraphoneInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - VibraphoneFlatpack + +- type: loadout + id: LoadoutItemMarimbaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - MarimbaFlatpack + +- type: loadout + id: LoadoutItemChurchOrganInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ChurchOrganFlatpack + +- type: loadout + id: LoadoutItemTubaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TubaFlatpack + +- type: loadout + id: LoadoutItemHarpInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - HarpFlatpack + +- type: loadout + id: LoadoutItemTimpaniInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TimpaniFlatpack + +- type: loadout + id: LoadoutItemTaikoInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TaikoFlatpack + +- type: loadout + id: LoadoutItemContrabassInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ContrabassFlatpack + +- type: loadout + id: LoadoutItemMinimoogInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - MinimoogFlatpack + +- type: loadout + id: LoadoutItemTomDrumsInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - TomDrumsFlatpack + +# Wind Instruments +- type: loadout + id: LoadoutItemSaxophoneInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - SaxophoneInstrument + +- type: loadout + id: LoadoutItemAccordionInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - AccordionInstrument + +- type: loadout + id: LoadoutItemHarmonicaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - HarmonicaInstrument + +- type: loadout + id: LoadoutItemClarinetInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - ClarinetInstrument + +- type: loadout + id: LoadoutItemFluteInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - FluteInstrument + +- type: loadout + id: LoadoutItemRecorderInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - RecorderInstrument + +- type: loadout + id: LoadoutItemPanFluteInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - PanFluteInstrument + +- type: loadout + id: LoadoutItemOcarinaInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - OcarinaInstrument + +- type: loadout + id: LoadoutItemBagpipeInstrumentMusician + category: JobsServiceMusician + cost: 0 + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMusicianInstruments + - !type:CharacterJobRequirement + jobs: + - Musician + items: + - BagpipeInstrument diff --git a/Resources/Prototypes/Loadouts/Jobs/service.yml b/Resources/Prototypes/Loadouts/Jobs/service.yml index b346bc31822..c0f04ef151a 100644 --- a/Resources/Prototypes/Loadouts/Jobs/service.yml +++ b/Resources/Prototypes/Loadouts/Jobs/service.yml @@ -658,176 +658,6 @@ items: - ClothingUniformJumpskirtDetective -# Musician -- type: loadout - id: LoadoutItemSynthesizerInstrumentMusician - category: JobsServiceUncategorized - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - SynthesizerInstrument - -- type: loadout - id: LoadoutItemMicrophoneInstrumentMusician - category: JobsServiceUncategorized - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - MicrophoneInstrument - -- type: loadout - id: LoadoutItemKalimbaInstrumentMusician - category: Items - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - KalimbaInstrument - -- type: loadout - id: LoadoutItemTrumpetInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - TrumpetInstrument - -- type: loadout - id: LoadoutItemElectricGuitarInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - ElectricGuitarInstrument - -- type: loadout - id: LoadoutItemBassGuitarInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - BassGuitarInstrument - -- type: loadout - id: LoadoutItemRockGuitarInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - RockGuitarInstrument - -- type: loadout - id: LoadoutItemAcousticGuitarInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - AcousticGuitarInstrument - -- type: loadout - id: LoadoutItemViolinInstrumentMusician - category: Items - cost: 2 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - ViolinInstrument - -- type: loadout - id: LoadoutItemHarmonicaInstrumentMusician - category: Items - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - HarmonicaInstrument - -- type: loadout - id: LoadoutItemAccordionInstrumentMusician - category: Items - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - AccordionInstrument - -- type: loadout - id: LoadoutItemFluteInstrumentMusician - category: Items - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - FluteInstrument - -- type: loadout - id: LoadoutItemOcarinaInstrumentMusician - category: Items - cost: 0 - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMusicianInstruments - - !type:CharacterJobRequirement - jobs: - - Musician - items: - - OcarinaInstrument - # Chef - type: loadout id: LoadoutServiceJumpsuitChefNt @@ -996,4 +826,4 @@ jobs: - Janitor items: - - ClothingUniformJumpsuitJanitorOrion \ No newline at end of file + - ClothingUniformJumpsuitJanitorOrion diff --git a/Resources/Textures/Objects/Devices/flatpack.rsi/meta.json b/Resources/Textures/Objects/Devices/flatpack.rsi/meta.json index 8f46a0ca53b..11f5d24e111 100644 --- a/Resources/Textures/Objects/Devices/flatpack.rsi/meta.json +++ b/Resources/Textures/Objects/Devices/flatpack.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC0-1.0", - "copyright": "Created by EmoGarbage404 (github) for SS14, solar-assembly-part taken from tgstation and modified at https://tgstation13.org/wiki/Guide_to_construction#Solar_Panels_and_Trackers, ame-part taken from vgstation at https://github.com/vgstation-coders/vgstation13/commit/1b7952787c06c21ef1623e494dcfe7cb1f46e041; singularity-generator, tesla-generator, radiation-collector, containment-field-generator, tesla-coil, grounding-rod inner icons made by lzk228; emitter made by pigeonpeas", + "copyright": "service_music by erhardsteinhauer, Created by EmoGarbage404 (github) for SS14, solar-assembly-part taken from tgstation and modified at https://tgstation13.org/wiki/Guide_to_construction#Solar_Panels_and_Trackers, ame-part taken from vgstation at https://github.com/vgstation-coders/vgstation13/commit/1b7952787c06c21ef1623e494dcfe7cb1f46e041; singularity-generator, tesla-generator, radiation-collector, containment-field-generator, tesla-coil, grounding-rod inner icons made by lzk228; emitter made by pigeonpeas", "size": { "x": 32, "y": 32 @@ -42,6 +42,9 @@ }, { "name": "emitter" + }, + { + "name": "service_music" } ] } diff --git a/Resources/Textures/Objects/Devices/flatpack.rsi/service_music.png b/Resources/Textures/Objects/Devices/flatpack.rsi/service_music.png new file mode 100644 index 0000000000000000000000000000000000000000..db1a9a8aec83bd88ed68bcc03469925cd709d3cc GIT binary patch literal 6361 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 a-}>^=3~_W}g$Z;RFs6gM{aM?U8~zEhVYPDr literal 0 HcmV?d00001