From: Hannah Giovanna Dawson Date: Fri, 20 Jun 2025 23:39:08 +0000 (+0100) Subject: Scurrets (#38218) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=48d897d31e3574938b70de8a7ac9131989394c4b;p=space-station-14.git Scurrets (#38218) * Scurrets. * Add missing equipment YAML * Fix count of NamesFirstScurret * Resolve PR comments, wa. Also add like a bunch more wa replacements * ed * Update Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json * :rivflabbergasted: * Fixed spacings in scurret_last.ftl * Fix mangled endings of some last names * wawa * the scug has a spear for self defence --- diff --git a/Resources/Audio/Ambience/Antag/attributions.yml b/Resources/Audio/Ambience/Antag/attributions.yml index 0d3d278a62..c0c34eb880 100644 --- a/Resources/Audio/Ambience/Antag/attributions.yml +++ b/Resources/Audio/Ambience/Antag/attributions.yml @@ -2,6 +2,10 @@ license: "CC-BY-SA-3.0" copyright: "Taken from TG station" source: "https://github.com/tgstation/tgstation/commit/827967c9650c23af64280ad1491405fed8f644c5#diff-6cc910b7cad9ac4333c8d0885fc844746066120b465d8d4ba8f7019169316574" +- files: ["traitor_wawa.ogg"] + license: "CC-BY-SA-3.0" + copyright: "Taken from TG station, edited by FairlySadPanda (Github)" + source: "https://github.com/tgstation/tgstation/commit/827967c9650c23af64280ad1491405fed8f644c5#diff-6cc910b7cad9ac4333c8d0885fc844746066120b465d8d4ba8f7019169316574" - files: ["pirate_start.ogg"] license: "CC-BY-NC-SA-3.0" copyright: "Made by @MIXnikita#1474 (Discord) for SS14" diff --git a/Resources/Audio/Ambience/Antag/traitor_wawa.ogg b/Resources/Audio/Ambience/Antag/traitor_wawa.ogg new file mode 100644 index 0000000000..7134be84cc Binary files /dev/null and b/Resources/Audio/Ambience/Antag/traitor_wawa.ogg differ diff --git a/Resources/Audio/Animals/attributions.yml b/Resources/Audio/Animals/attributions.yml index 7fd7e8b2e7..59d8bc5a6e 100644 --- a/Resources/Audio/Animals/attributions.yml +++ b/Resources/Audio/Animals/attributions.yml @@ -139,20 +139,34 @@ source: "https://github.com/ParadiseSS13/Paradise/commit/a34f1054cef5a44a67fdac3b67b811137c6071dd" - files: - - fox1.ogg - - fox2.ogg - - fox3.ogg - - fox4.ogg - - fox5.ogg - - fox6.ogg - - fox7.ogg - - fox8.ogg - - fox9.ogg - - fox10.ogg - - fox11.ogg - - fox12.ogg - - fox13.ogg - - fox14.ogg + - fox1.ogg + - fox2.ogg + - fox3.ogg + - fox4.ogg + - fox5.ogg + - fox6.ogg + - fox7.ogg + - fox8.ogg + - fox9.ogg + - fox10.ogg + - fox11.ogg + - fox12.ogg + - fox13.ogg + - fox14.ogg copyright: "Created by fujiwaranao" license: "CC-BY-NC-SA-4.0" source: "https://github.com/space-wizards/space-station-14/pull/27578" + +- files: + - wawa_achoo.ogg + - wawa_chatter.ogg + - wawa_chillin.ogg + - wawa_depression.ogg + - wawa_exclaim.ogg + - wawa_mock.ogg + - wawa_protest.ogg + - wawa_question.ogg + - wawa_statement.ogg + copyright: "created by FairlySadPanda" + license: "CC-BY-4.0" + source: "https://github.com/space-wizards/space-station-14/pull/37936" diff --git a/Resources/Audio/Animals/wawa_achoo.ogg b/Resources/Audio/Animals/wawa_achoo.ogg new file mode 100644 index 0000000000..56670c2d05 Binary files /dev/null and b/Resources/Audio/Animals/wawa_achoo.ogg differ diff --git a/Resources/Audio/Animals/wawa_chatter.ogg b/Resources/Audio/Animals/wawa_chatter.ogg new file mode 100644 index 0000000000..7e2a7ec3ca Binary files /dev/null and b/Resources/Audio/Animals/wawa_chatter.ogg differ diff --git a/Resources/Audio/Animals/wawa_chillin.ogg b/Resources/Audio/Animals/wawa_chillin.ogg new file mode 100644 index 0000000000..5955fdf967 Binary files /dev/null and b/Resources/Audio/Animals/wawa_chillin.ogg differ diff --git a/Resources/Audio/Animals/wawa_depression.ogg b/Resources/Audio/Animals/wawa_depression.ogg new file mode 100644 index 0000000000..3f8167acb7 Binary files /dev/null and b/Resources/Audio/Animals/wawa_depression.ogg differ diff --git a/Resources/Audio/Animals/wawa_exclaim.ogg b/Resources/Audio/Animals/wawa_exclaim.ogg new file mode 100644 index 0000000000..99f280091f Binary files /dev/null and b/Resources/Audio/Animals/wawa_exclaim.ogg differ diff --git a/Resources/Audio/Animals/wawa_mock.ogg b/Resources/Audio/Animals/wawa_mock.ogg new file mode 100644 index 0000000000..355c2aa841 Binary files /dev/null and b/Resources/Audio/Animals/wawa_mock.ogg differ diff --git a/Resources/Audio/Animals/wawa_protest.ogg b/Resources/Audio/Animals/wawa_protest.ogg new file mode 100644 index 0000000000..cc1cf60a04 Binary files /dev/null and b/Resources/Audio/Animals/wawa_protest.ogg differ diff --git a/Resources/Audio/Animals/wawa_question.ogg b/Resources/Audio/Animals/wawa_question.ogg new file mode 100644 index 0000000000..ce9008a5d8 Binary files /dev/null and b/Resources/Audio/Animals/wawa_question.ogg differ diff --git a/Resources/Audio/Animals/wawa_statement.ogg b/Resources/Audio/Animals/wawa_statement.ogg new file mode 100644 index 0000000000..21f9e8a23e Binary files /dev/null and b/Resources/Audio/Animals/wawa_statement.ogg differ diff --git a/Resources/Locale/en-US/chat/managers/chat-manager.ftl b/Resources/Locale/en-US/chat/managers/chat-manager.ftl index c20852468b..e7e55c1ea4 100644 --- a/Resources/Locale/en-US/chat/managers/chat-manager.ftl +++ b/Resources/Locale/en-US/chat/managers/chat-manager.ftl @@ -157,3 +157,9 @@ chat-speech-verb-name-electricity = Electricity chat-speech-verb-electricity-1 = crackles chat-speech-verb-electricity-2 = buzzes chat-speech-verb-electricity-3 = screeches + +chat-speech-verb-name-wawa = Wawa +chat-speech-verb-wawa-1 = intones +chat-speech-verb-wawa-2 = states +chat-speech-verb-wawa-3 = declares +chat-speech-verb-wawa-4 = ponders diff --git a/Resources/Locale/en-US/datasets/names/scurret_first.ftl b/Resources/Locale/en-US/datasets/names/scurret_first.ftl new file mode 100644 index 0000000000..4bbbf943f0 --- /dev/null +++ b/Resources/Locale/en-US/datasets/names/scurret_first.ftl @@ -0,0 +1,36 @@ +names-scurret-first-dataset-1 = Wa +names-scurret-first-dataset-2 = Calm +names-scurret-first-dataset-3 = Contented +names-scurret-first-dataset-4 = Patient +names-scurret-first-dataset-5 = Relaxed +names-scurret-first-dataset-6 = Serene +names-scurret-first-dataset-7 = Blissful +names-scurret-first-dataset-8 = Eager +names-scurret-first-dataset-9 = Happy +names-scurret-first-dataset-10 = Inspired +names-scurret-first-dataset-11 = Lively +names-scurret-first-dataset-12 = Playful +names-scurret-first-dataset-13 = Radiant +names-scurret-first-dataset-14 = Vibrant +names-scurret-first-dataset-15 = Brave +names-scurret-first-dataset-16 = Capable +names-scurret-first-dataset-17 = Confident +names-scurret-first-dataset-18 = Daring +names-scurret-first-dataset-19 = Proud +names-scurret-first-dataset-20 = Valiant +names-scurret-first-dataset-21 = Caring +names-scurret-first-dataset-22 = Compassionate +names-scurret-first-dataset-23 = Empathic +names-scurret-first-dataset-24 = Strong +names-scurret-first-dataset-25 = Free +names-scurret-first-dataset-26 = Lucky +names-scurret-first-dataset-27 = Worthy +names-scurret-first-dataset-28 = Blessed +names-scurret-first-dataset-29 = Fortunate +names-scurret-first-dataset-30 = Trusting +names-scurret-first-dataset-31 = Fast +names-scurret-first-dataset-32 = Energetic +names-scurret-first-dataset-33 = Wise +names-scurret-first-dataset-34 = Alert +names-scurret-first-dataset-35 = Uplifting +names-scurret-first-dataset-36 = Considerate diff --git a/Resources/Locale/en-US/datasets/names/scurret_last.ftl b/Resources/Locale/en-US/datasets/names/scurret_last.ftl new file mode 100644 index 0000000000..effe2180f0 --- /dev/null +++ b/Resources/Locale/en-US/datasets/names/scurret_last.ftl @@ -0,0 +1,36 @@ +names-scurret-last-dataset-1 = Wa +names-scurret-last-dataset-2 = Trees +names-scurret-last-dataset-3 = Plants +names-scurret-last-dataset-4 = Rocks +names-scurret-last-dataset-5 = Rivers +names-scurret-last-dataset-6 = Groves +names-scurret-last-dataset-7 = Lakes +names-scurret-last-dataset-8 = Marshes +names-scurret-last-dataset-9 = Spring +names-scurret-last-dataset-10 = Reeds +names-scurret-last-dataset-11 = Sunshine +names-scurret-last-dataset-12 = Rain +names-scurret-last-dataset-13 = Clouds +names-scurret-last-dataset-14 = Snowfall +names-scurret-last-dataset-15 = Stones +names-scurret-last-dataset-16 = Pebbles +names-scurret-last-dataset-17 = Fishes +names-scurret-last-dataset-18 = Insects +names-scurret-last-dataset-19 = Fruits +names-scurret-last-dataset-20 = Flowers +names-scurret-last-dataset-21 = Blossoms +names-scurret-last-dataset-22 = Fogs +names-scurret-last-dataset-23 = Willows +names-scurret-last-dataset-24 = Alders +names-scurret-last-dataset-25 = Birches +names-scurret-last-dataset-26 = Poplars +names-scurret-last-dataset-27 = Marigolds +names-scurret-last-dataset-28 = Robins +names-scurret-last-dataset-29 = Orchids +names-scurret-last-dataset-30 = Rushes +names-scurret-last-dataset-31 = Lillies +names-scurret-last-dataset-32 = Violets +names-scurret-last-dataset-33 = Maples +names-scurret-last-dataset-34 = Oaks +names-scurret-last-dataset-35 = Hazels +names-scurret-last-dataset-36 = the All-Knowing diff --git a/Resources/Locale/en-US/scurret copy/role.ftl b/Resources/Locale/en-US/scurret copy/role.ftl new file mode 100644 index 0000000000..cbc0f89657 --- /dev/null +++ b/Resources/Locale/en-US/scurret copy/role.ftl @@ -0,0 +1,25 @@ +petting-success-scurret = You pet {THE($target)} on {POSS-ADJ($target)} legally distinct head. +petting-failure-scurret = You reach out to pet {THE($target)}, but {SUBJECT($target)} does a backflip! + +accent-words-scurret-1 = Wa! +accent-words-scurret-2 = Wa? +accent-words-scurret-3 = Wa. +accent-words-scurret-4 = Wa... +accent-words-scurret-5 = Wawa! +accent-words-scurret-6 = Wawa? +accent-words-scurret-7 = Wawa. +accent-words-scurret-8 = Wawa... +accent-words-scurret-9 = Wa wawa! +accent-words-scurret-10 = Wa wawa? +accent-words-scurret-11 = Wa wawa. +accent-words-scurret-12 = Wa wawa... +accent-words-scurret-13 = Wawa wa! +accent-words-scurret-14 = Wawa wa? +accent-words-scurret-15 = Wawa wa. +accent-words-scurret-16 = Wawa wa... +accent-words-scurret-17 = Waaaaaa. +accent-words-scurret-18 = Waaaaaa! +accent-words-scurret-19 = Waaaaaa? +accent-words-scurret-20 = Waaaaaa... + +station-event-random-sentience-flavor-scurret = scurret diff --git a/Resources/Prototypes/Accents/full_replacements.yml b/Resources/Prototypes/Accents/full_replacements.yml index f495de250f..737739ba9d 100644 --- a/Resources/Prototypes/Accents/full_replacements.yml +++ b/Resources/Prototypes/Accents/full_replacements.yml @@ -183,3 +183,27 @@ - accent-words-tomato-3 - accent-words-tomato-4 - accent-words-tomato-5 + +- type: accent + id: scurret + fullReplacements: + - accent-words-scurret-1 + - accent-words-scurret-2 + - accent-words-scurret-3 + - accent-words-scurret-4 + - accent-words-scurret-5 + - accent-words-scurret-6 + - accent-words-scurret-7 + - accent-words-scurret-8 + - accent-words-scurret-9 + - accent-words-scurret-10 + - accent-words-scurret-11 + - accent-words-scurret-12 + - accent-words-scurret-13 + - accent-words-scurret-14 + - accent-words-scurret-15 + - accent-words-scurret-16 + - accent-words-scurret-17 + - accent-words-scurret-18 + - accent-words-scurret-19 + - accent-words-scurret-20 diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_fun.yml b/Resources/Prototypes/Catalog/Cargo/cargo_fun.yml index 445e7d941b..7a8deb3151 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_fun.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_fun.yml @@ -218,6 +218,16 @@ category: cargoproduct-category-name-fun group: market +- type: cargoProduct + id: HydratedScurret + icon: + sprite: Structures/Wallmounts/posters.rsi + state: poster55_legit + product: CrateFunScurret + cost: 25000 # You will surely not regret buying this + category: cargoproduct-category-name-fun + group: market + - type: cargoProduct id: FunCrateGambling icon: diff --git a/Resources/Prototypes/Catalog/Fills/Crates/fun.yml b/Resources/Prototypes/Catalog/Fills/Crates/fun.yml index 18b0dc26d8..1c0d3668ae 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/fun.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/fun.yml @@ -458,3 +458,22 @@ amount: 1 prob: 0.05 +- type: entity + name: hydrated scurret + description: Wait, what? + id: CrateFunScurret + parent: CratePlastic + components: + - type: StorageFill + contents: + - id: MobEmotionalSupportScurret # How? Why? + - id: DrinkVodkaBottleFull + - id: DrinkWhiskeyBottleFull + - id: DrinkTequilaBottleFull # ...that explains it. + - id: DrinkShotGlass + amount: 2 + - id: Spear # self defence + - id: ClothingHeadHatHardhatYellow + - id: ClothingNeckMantleQM + - id: ClothingHeadsetCargo + diff --git a/Resources/Prototypes/Datasets/Names/scurret.yml b/Resources/Prototypes/Datasets/Names/scurret.yml new file mode 100644 index 0000000000..b3ac08e2ad --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/scurret.yml @@ -0,0 +1,11 @@ +- type: localizedDataset + id: NamesFirstScurret + values: + prefix: names-scurret-first-dataset- + count: 36 + +- type: localizedDataset + id: NamesLastScurret + values: + prefix: names-scurret-last-dataset- + count: 36 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/posters.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/posters.yml index 70ddb4d7c0..0bc0d7655c 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/posters.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/posters.yml @@ -160,4 +160,5 @@ - PosterLegitSafetyMothSSD - PosterLegitOppenhopper - PosterLegitTyrone + - PosterLegitHelio chance: 1 diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/scurret.yml b/Resources/Prototypes/Entities/Mobs/NPCs/scurret.yml new file mode 100644 index 0000000000..458b977827 --- /dev/null +++ b/Resources/Prototypes/Entities/Mobs/NPCs/scurret.yml @@ -0,0 +1,170 @@ +# Defines the scurret, a small, agile sapient species intended for players who want to play as something similar to an ewok. +# Although based on MobBaseAncestor, this species does not have a "developed" playable species it is an ancestor to. + +- type: entity + name: scurret + id: MobBaseScurret + parent: MobBaseAncestor + abstract: true + components: + # Custom names + - type: ReplacementAccent + accent: scurret + - type: Sprite + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + sprite: Mobs/Animals/scurret/scurret.rsi + state: scurret + - map: [ "enum.HumanoidVisualLayers.Handcuffs" ] + color: "#ffffff" + sprite: Objects/Misc/handcuffs.rsi + state: body-overlay-2 + visible: false + # Custom visuals for dead scurrets; be aware these do not work well with equipment. + - type: DamageStateVisuals + states: + Alive: + Base: scurret + Critical: + Base: scurret_oof + Dead: + Base: scurret_rip + # About as tough as a monkey + - type: MobThresholds + thresholds: + 0: Alive + 60: Critical + 125: Dead + - type: Temperature + heatDamageThreshold: 360 + coldDamageThreshold: 285 + currentTemperature: 310.15 + specificHeat: 42 + # Good eatin', you monster. + - type: Butcherable + butcheringType: Spike + spawned: + - id: FoodMeat + amount: 4 + # They wawa! + - type: Vocal + sounds: + Male: Scurret + Female: Scurret + Unsexed: Scurret + wilhelmProbability: 0.01 # the scug, it screams like a man + - type: Speech + speechVerb: Wawa + speechSounds: Wawa + allowedEmotes: ['Thump'] # They're 80% tail + - type: TypingIndicator + proto: moth + - type: InteractionPopup + successChance: 0.99 # Imagine not being allowed to headpat a scurret, chat + interactSuccessString: petting-success-scurret + interactFailureString: petting-failure-scurret + interactSuccessSpawn: EffectHearts + interactSuccessSound: + path: /Audio/Animals/wawa_chillin.ogg + interactFailureSound: + path: /Audio/Animals/wawa_chatter.ogg + # They nyoom + - type: MovementSpeedModifier + baseWalkSpeed: 5 # nyoom + baseSprintSpeed: 7 # NYOOOOOM + - type: MeleeWeapon + soundHit: + path: /Audio/Effects/bite.ogg + angle: 30 + animation: WeaponArcBite + damage: + types: + Piercing: 10 # NOM + - type: Inventory + speciesId: scurret + templateId: scurret + displacements: + jumpsuit: + sizeMaps: + 32: + sprite: Mobs/Animals/scurret/displacement.rsi + state: jumpsuit + id: + sizeMaps: + 32: + sprite: Mobs/Animals/scurret/displacement.rsi + state: id + gloves: + sizeMaps: + 32: + sprite: Mobs/Animals/scurret/displacement.rsi + state: gloves + neck: + sizeMaps: + 32: + sprite: Mobs/Animals/scurret/displacement.rsi + state: neck + - type: InventorySlots + - type: Food + - type: Hunger + baseDecayRate: 0.05 # They get a lil' hungy + - type: BodyEmotes # Grants them clapping and so on. + soundsId: GeneralBodyEmotes + - type: Tag + tags: + - DoorBumpOpener + - FootstepSound + - CanPilot + - VimPilot + - AnomalyHost + +# Spawnable scurrets have a random name and colour. + +- type: entity + name: scurret + description: Commonly known as Wawa, from the wetlands of Planet Wawa, these critters make up the bulk of Arnolds's Pizza's "loyal workforce". + id: MobScurret + parent: MobBaseScurret + components: + # The have a rich culture + - type: RandomMetadata + nameSegments: + - NamesFirstScurret + - NamesLastScurret + nameFormat: name-format-standard + # They come in a variety of colours + - type: RandomSprite + available: + - enum.DamageStateVisualLayers.Base: + scurret: ScurretColors + +# Emotional Support Scurrets have a ghost role and equipment. At the moment, these are intended to be used for admemes, but +# feel free to hook them into random content. + +- type: entity + name: Emotional Support Scurret + id: MobBaseEmotionalSupportScurret + parent: MobBaseScurret + abstract: true + components: + - type: Loadout + prototypes: [ EmotionalSupportScurretGear ] + - type: NpcFactionMember + factions: + - Passive + - type: GhostRole + makeSentient: true + name: ghost-role-information-emotional-support-scurret-name + description: ghost-role-information-emotional-support-scurret-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: default + - type: GhostTakeoverAvailable + +# Spawnable ESS have a ghost role, equipment, a random name and a random colour. + +- type: entity + name: Emotional Support Scurret + id: MobEmotionalSupportScurret + parent: [MobScurret, MobBaseEmotionalSupportScurret] + description: Commonly known as Wawa, from the wetlands of Planet Wawa, these critters make up the bulk of Arnolds's Pizza's "loyal workforce". This one is here as a temp. diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index fbbdfe2b77..3de35c3519 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -1512,3 +1512,14 @@ borderColor: "#7F3300" - type: Icon state: pda-wizard + +- type: entity + parent: ClearPDA + id: ScurretPDA + description: A temporary PDA granted to scurret temps. Doesn't do much. Wawa! + components: + - type: Pda + id: VisitorIDCard + - type: Tag # Ignore Chameleon tags + tags: + - DoorBumpOpener diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml index b9a2191def..d4f8e29aa4 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml @@ -1123,6 +1123,15 @@ - type: Sprite state: poster54_legit +- type: entity + parent: PosterBase + id: PosterLegitHelio + name: Helio Logistics ad + description: "A poster advertising Helio Logistics and their adorable mascot. The slogan reads 'Come rain or shine, we deliver on time.'" + components: + - type: Sprite + state: poster55_legit + #maps - type: entity diff --git a/Resources/Prototypes/InventoryTemplates/scurret_inventory_template.yml b/Resources/Prototypes/InventoryTemplates/scurret_inventory_template.yml new file mode 100644 index 0000000000..10b9ac770d --- /dev/null +++ b/Resources/Prototypes/InventoryTemplates/scurret_inventory_template.yml @@ -0,0 +1,62 @@ +- type: inventoryTemplate + id: scurret + slots: + - name: ears + slotTexture: ears + slotFlags: EARS + stripTime: 3 + uiWindowPos: 0,2 + strippingWindowPos: 1,2 + displayName: Ears + - name: gloves + slotTexture: gloves + slotFlags: GLOVES + uiWindowPos: 0,1 + strippingWindowPos: 2,2 + displayName: Gloves + - name: head + slotTexture: head + slotFlags: HEAD + uiWindowPos: 1,3 + strippingWindowPos: 0,0 + displayName: Head + - name: mask + slotTexture: mask + slotFlags: MASK + uiWindowPos: 1,2 + strippingWindowPos: 1,1 + displayName: Mask + - name: neck + slotTexture: neck + slotFlags: NECK + uiWindowPos: 1,1 + strippingWindowPos: 0,1 + displayName: Neck + - name: jumpsuit + slotTexture: uniform + slotFlags: INNERCLOTHING + stripTime: 6 + uiWindowPos: 1,0 + strippingWindowPos: 0,2 + displayName: Jumpsuit + - name: id + slotTexture: id + fullTextureName: template_small + slotFlags: IDCARD + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 2,1 + strippingWindowPos: 2,4 + dependsOn: jumpsuit + displayName: ID + - name: suitstorage + slotTexture: suit_storage + slotFlags: SUITSTORAGE + slotGroup: MainHotbar + stripTime: 3 + uiWindowPos: 2,0 + strippingWindowPos: 2,5 + dependsOn: jumpsuit + dependsOnComponents: + - type: AllowSuitStorage + displayName: Suit Storage diff --git a/Resources/Prototypes/Palettes/critters.yml b/Resources/Prototypes/Palettes/critters.yml index 2f027b4b9c..af571840e0 100644 --- a/Resources/Prototypes/Palettes/critters.yml +++ b/Resources/Prototypes/Palettes/critters.yml @@ -41,3 +41,18 @@ HornA: "#d4c8bf" hornB: "#eec7ab" hornC: "#ad9584" + +- type: palette + id: ScurretColors + name: ScurretColors + colors: + Normal: "#ffffff" # Sluggy + Innocent: "#f6f439" # Monky + Angry: "#dc5864" # Hunty + Perceptive: "#222222" # Watchy + Eldritch: "#dc5864" + Fat: "#fefcab" + Violent: "#ab3430" + Speedy: "#679cfe" + Mutated: "#7824a0" + Damned: "#98e652" diff --git a/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml b/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml index 0462f61fc1..1448a07cba 100644 --- a/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml +++ b/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml @@ -103,6 +103,13 @@ jumpsuit: ClothingUniformJumpsuitJacketMonkey id: PunPunIDCard +# Emotional Support Scurret + +- type: startingGear + id: EmotionalSupportScurretGear + equipment: + id: ScurretPDA + # DeathMatch Gear - type: startingGear diff --git a/Resources/Prototypes/SoundCollections/scurret.yml b/Resources/Prototypes/SoundCollections/scurret.yml new file mode 100644 index 0000000000..34c83ed41a --- /dev/null +++ b/Resources/Prototypes/SoundCollections/scurret.yml @@ -0,0 +1,19 @@ +- type: soundCollection + id: WawaLaugh + files: + - /Audio/Animals/wawa_mock.ogg + +- type: soundCollection + id: WawaSneeze + files: + - /Audio/Animals/wawa_achoo.ogg + +- type: soundCollection + id: WawaSigh + files: + - /Audio/Animals/wawa_depression.ogg + +- type: soundCollection + id: WawaScream + files: + - /Audio/Animals/wawa_protest.ogg diff --git a/Resources/Prototypes/Voice/speech_emote_sounds.yml b/Resources/Prototypes/Voice/speech_emote_sounds.yml index 7e06860bc6..8fb4230a5f 100644 --- a/Resources/Prototypes/Voice/speech_emote_sounds.yml +++ b/Resources/Prototypes/Voice/speech_emote_sounds.yml @@ -575,3 +575,21 @@ path: /Audio/Animals/goat_bah.ogg params: variation: 0.125 + +- type: emoteSounds + id: Scurret + params: + variation: 0.125 + sounds: + Laugh: + collection: WawaLaugh + Sneeze: + collection: WawaSneeze + Cough: + collection: MaleCoughs + Whistle: + collection: Whistles + Sigh: + collection: WawaSigh + Scream: + collection: WawaScream diff --git a/Resources/Prototypes/Voice/speech_sounds.yml b/Resources/Prototypes/Voice/speech_sounds.yml index 1c31dcc280..5f48013e87 100644 --- a/Resources/Prototypes/Voice/speech_sounds.yml +++ b/Resources/Prototypes/Voice/speech_sounds.yml @@ -177,3 +177,12 @@ path: /Audio/Animals/goat_bah.ogg exclaimSound: path: /Audio/Animals/goat_bah.ogg + +- type: speechSounds + id: Wawa + saySound: + path: /Audio/Animals/wawa_statement.ogg + askSound: + path: /Audio/Animals/wawa_question.ogg + exclaimSound: + path: /Audio/Animals/wawa_exclaim.ogg diff --git a/Resources/Prototypes/Voice/speech_verbs.yml b/Resources/Prototypes/Voice/speech_verbs.yml index f8202847fd..39f304018b 100644 --- a/Resources/Prototypes/Voice/speech_verbs.yml +++ b/Resources/Prototypes/Voice/speech_verbs.yml @@ -172,3 +172,12 @@ - chat-speech-verb-electricity-1 - chat-speech-verb-electricity-2 - chat-speech-verb-electricity-3 + +- type: speechVerb + id: Wawa + name: chat-speech-verb-name-wawa + speechVerbStrings: + - chat-speech-verb-wawa-1 + - chat-speech-verb-wawa-2 + - chat-speech-verb-wawa-3 + - chat-speech-verb-wawa-4 diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/ears.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/ears.png new file mode 100644 index 0000000000..40bba4fdd3 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/ears.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/eyes.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/eyes.png new file mode 100644 index 0000000000..0c6b045da7 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/eyes.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/gloves.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/gloves.png new file mode 100644 index 0000000000..70ec1726d0 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/gloves.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/hand.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/hand.png new file mode 100644 index 0000000000..4611d66f51 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/hand.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/head.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/head.png new file mode 100644 index 0000000000..064d1d9e61 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/head.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/id.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/id.png new file mode 100644 index 0000000000..6af79fb8a3 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/id.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/jumpsuit.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/jumpsuit.png new file mode 100644 index 0000000000..2481e38540 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/jumpsuit.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/mask.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/mask.png new file mode 100644 index 0000000000..c8e757e2e5 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/mask.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json new file mode 100644 index 0000000000..1af00995c1 --- /dev/null +++ b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json @@ -0,0 +1,50 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Displacement maps made by Hannah 'FairlySadPanda' Dawson (Github), with assistance by TheShuEd (Discord). Wawa!", + "size": { + "x": 32, + "y": 32 + }, + "load": { + "srgb": false + }, + "states": [ + { + "name": "jumpsuit", + "directions": 4 + }, + { + "name": "head", + "directions": 4 + }, + { + "name": "neck", + "directions": 4 + }, + { + "name": "ears", + "directions": 4 + }, + { + "name": "eyes", + "directions": 4 + }, + { + "name": "mask", + "directions": 4 + }, + { + "name": "id", + "directions": 4 + }, + { + "name": "gloves", + "directions": 4 + }, + { + "name": "hand", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/neck.png b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/neck.png new file mode 100644 index 0000000000..5c2f5918c7 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/displacement.rsi/neck.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/meta.json b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/meta.json new file mode 100644 index 0000000000..c02aaa063d --- /dev/null +++ b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/meta.json @@ -0,0 +1,21 @@ +{ + "version": 1, + "license": "CC-BY-NC-SA-3.0", + "copyright": "Original sprite by Very-Soft (https://github.com/Very-Soft), edits by Hannah 'FairlySadPanda' Dawson. Displacement maps by Hannah 'FairlySadPanda' Dawson. Original creature concept by VIDEOCULT, and used with kind permission.", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "scurret", + "directions": 4 + }, + { + "name": "scurret_rip" + }, + { + "name": "scurret_oof" + } + ] +} diff --git a/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret.png b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret.png new file mode 100644 index 0000000000..7562f35fab Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_oof.png b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_oof.png new file mode 100644 index 0000000000..e0dd782fa0 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_oof.png differ diff --git a/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_rip.png b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_rip.png new file mode 100644 index 0000000000..9d3f2a7977 Binary files /dev/null and b/Resources/Textures/Mobs/Animals/scurret/scurret.rsi/scurret_rip.png differ diff --git a/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json b/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json index a45f465b54..9c073fc7f6 100644 --- a/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json +++ b/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b. poster52_contraband, poster53_contraband and poster54_contraband taken from https://github.com/vgstation-coders/vgstation13/blob/435ed5f2a7926e91cc31abac3a0d47d7e9ad7ed4/icons/obj/posters.dmi. originmap, poster55_contraband, poster56_contraband, poster57_contraband and poster39_legit by discord brainfood#7460, poster63_contraband by discord foboscheshir_, poster4_contraband edited, poster36_contraband and poster52_legit made by SlamBamActionman, poster53_legit and the original version by @RCOI on discord, modified by Spessmann, poster54_legit by hex_reject on Discord, poster64_contraband, poster65_contraband, poster66_contraband by JuneSzalkowska (Discord).", + "copyright": "Taken from at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b. poster52_contraband, poster53_contraband and poster54_contraband taken from https://github.com/vgstation-coders/vgstation13/blob/435ed5f2a7926e91cc31abac3a0d47d7e9ad7ed4/icons/obj/posters.dmi. originmap, poster55_contraband, poster56_contraband, poster57_contraband and poster39_legit by discord brainfood#7460, poster63_contraband by discord foboscheshir_, poster4_contraband edited, poster36_contraband and poster52_legit made by SlamBamActionman, poster53_legit and the original version by @RCOI on discord, modified by Spessmann, poster54_legit by hex_reject on Discord, poster64_contraband, poster65_contraband, poster66_contraband by JuneSzalkowska (Discord), poster55_legit by FairlySadPanda (Github), based on art and a character owned by Vytian (Discord).", "size": { "x": 32, "y": 32 @@ -399,6 +399,9 @@ { "name": "poster54_legit" }, + { + "name": "poster55_legit" + }, { "name": "random_legit" }, diff --git a/Resources/Textures/Structures/Wallmounts/posters.rsi/poster55_legit.png b/Resources/Textures/Structures/Wallmounts/posters.rsi/poster55_legit.png new file mode 100644 index 0000000000..ac02d887a0 Binary files /dev/null and b/Resources/Textures/Structures/Wallmounts/posters.rsi/poster55_legit.png differ