From e510504596f992744cfe62cdf26aa12f38ff6aa2 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Wed, 11 Sep 2024 09:52:27 -0400 Subject: [PATCH] Hivelord mob (#31322) * Hivelord * make it longah --- .../Atmos/Rotting/PerishableComponent.cs | 6 + .../Atmos/Rotting/SharedRottingSystem.cs | 4 + .../Components/IgnoreSlowOnDamageComponent.cs | 9 + .../Damage/Systems/SlowOnDamageSystem.cs | 19 +++ .../RechargeBasicEntityAmmoComponent.cs | 5 +- .../Systems/RechargeBasicEntityAmmoSystem.cs | 3 + Resources/Locale/en-US/alerts/alerts.ftl | 3 + .../guidebook/chemistry/statuseffects.ftl | 1 + .../Locale/en-US/reagents/meta/chemicals.ftl | 2 + Resources/Prototypes/Alerts/alerts.yml | 8 + .../Spawners/Random/Salvage/spawners.yml | 18 ++ .../Entities/Mobs/NPCs/asteroid.yml | 154 ++++++++++++++++++ .../Entities/Mobs/NPCs/simplemob.yml | 2 + .../Entities/Mobs/Player/dragon.yml | 1 + .../Prototypes/Entities/Mobs/Species/base.yml | 1 + Resources/Prototypes/Procedural/vgroid.yml | 8 +- Resources/Prototypes/Reagents/chemicals.yml | 20 +++ Resources/Prototypes/status_effects.yml | 4 + .../Aliens/Asteroid/hivelord.rsi/hivelord.png | Bin 0 -> 928 bytes .../Asteroid/hivelord.rsi/hivelord_alert.png | Bin 0 -> 713 bytes .../hivelord.rsi/hivelord_alert_nocore.png | Bin 0 -> 675 bytes .../Asteroid/hivelord.rsi/hivelord_dead.png | Bin 0 -> 293 bytes .../hivelord.rsi/hivelord_dead_nocore.png | Bin 0 -> 274 bytes .../Asteroid/hivelord.rsi/hivelord_nocore.png | Bin 0 -> 882 bytes .../Asteroid/hivelord.rsi/hivelordbrood.png | Bin 0 -> 637 bytes .../Aliens/Asteroid/hivelord.rsi/meta.json | 74 +++++++++ .../Consumable/Food/rorocore.rsi/boiled.png | Bin 0 -> 295 bytes .../Consumable/Food/rorocore.rsi/icon.png | Bin 0 -> 331 bytes .../Consumable/Food/rorocore.rsi/meta.json | 17 ++ 29 files changed, 354 insertions(+), 5 deletions(-) create mode 100644 Content.Shared/Damage/Components/IgnoreSlowOnDamageComponent.cs create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_alert.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_alert_nocore.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead_nocore.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_nocore.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelordbrood.png create mode 100644 Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/meta.json create mode 100644 Resources/Textures/Objects/Consumable/Food/rorocore.rsi/boiled.png create mode 100644 Resources/Textures/Objects/Consumable/Food/rorocore.rsi/icon.png create mode 100644 Resources/Textures/Objects/Consumable/Food/rorocore.rsi/meta.json diff --git a/Content.Shared/Atmos/Rotting/PerishableComponent.cs b/Content.Shared/Atmos/Rotting/PerishableComponent.cs index 6983b872b8..99b30fc906 100644 --- a/Content.Shared/Atmos/Rotting/PerishableComponent.cs +++ b/Content.Shared/Atmos/Rotting/PerishableComponent.cs @@ -45,6 +45,12 @@ public sealed partial class PerishableComponent : Component [DataField, AutoNetworkedField] public int Stage; + + /// + /// If true, rot will always progress. + /// + [DataField, AutoNetworkedField] + public bool ForceRotProgression; } diff --git a/Content.Shared/Atmos/Rotting/SharedRottingSystem.cs b/Content.Shared/Atmos/Rotting/SharedRottingSystem.cs index 840818dee5..60c89c012a 100644 --- a/Content.Shared/Atmos/Rotting/SharedRottingSystem.cs +++ b/Content.Shared/Atmos/Rotting/SharedRottingSystem.cs @@ -115,6 +115,10 @@ public abstract class SharedRottingSystem : EntitySystem if (!Resolve(uid, ref perishable, false)) return false; + // Overrides all the other checks. + if (perishable.ForceRotProgression) + return true; + // only dead things or inanimate objects can rot if (TryComp(uid, out var mobState) && !_mobState.IsDead(uid, mobState)) return false; diff --git a/Content.Shared/Damage/Components/IgnoreSlowOnDamageComponent.cs b/Content.Shared/Damage/Components/IgnoreSlowOnDamageComponent.cs new file mode 100644 index 0000000000..e933eb1a79 --- /dev/null +++ b/Content.Shared/Damage/Components/IgnoreSlowOnDamageComponent.cs @@ -0,0 +1,9 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.Damage.Components; + +/// +/// This is used for an effect that nullifies and adds an alert. +/// +[RegisterComponent, NetworkedComponent, Access(typeof(SlowOnDamageSystem))] +public sealed partial class IgnoreSlowOnDamageComponent : Component; diff --git a/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs b/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs index 3e50ee3557..6b5f57c595 100644 --- a/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs +++ b/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs @@ -22,6 +22,10 @@ namespace Content.Shared.Damage SubscribeLocalEvent(OnExamined); SubscribeLocalEvent(OnGotEquipped); SubscribeLocalEvent(OnGotUnequipped); + + SubscribeLocalEvent(OnIgnoreStartup); + SubscribeLocalEvent(OnIgnoreShutdown); + SubscribeLocalEvent(OnIgnoreModifySpeed); } private void OnRefreshMovespeed(EntityUid uid, SlowOnDamageComponent component, RefreshMovementSpeedModifiersEvent args) @@ -84,6 +88,21 @@ namespace Content.Shared.Damage { _movementSpeedModifierSystem.RefreshMovementSpeedModifiers(args.Wearer); } + + private void OnIgnoreStartup(Entity ent, ref ComponentStartup args) + { + _movementSpeedModifierSystem.RefreshMovementSpeedModifiers(ent); + } + + private void OnIgnoreShutdown(Entity ent, ref ComponentShutdown args) + { + _movementSpeedModifierSystem.RefreshMovementSpeedModifiers(ent); + } + + private void OnIgnoreModifySpeed(Entity ent, ref ModifySlowOnDamageSpeedEvent args) + { + args.Speed = 1f; + } } [ByRefEvent] diff --git a/Content.Shared/Weapons/Ranged/Components/RechargeBasicEntityAmmoComponent.cs b/Content.Shared/Weapons/Ranged/Components/RechargeBasicEntityAmmoComponent.cs index f478405bec..25d0453b59 100644 --- a/Content.Shared/Weapons/Ranged/Components/RechargeBasicEntityAmmoComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/RechargeBasicEntityAmmoComponent.cs @@ -17,7 +17,7 @@ public sealed partial class RechargeBasicEntityAmmoComponent : Component [DataField("rechargeSound")] [AutoNetworkedField] - public SoundSpecifier RechargeSound = new SoundPathSpecifier("/Audio/Magic/forcewall.ogg") + public SoundSpecifier? RechargeSound = new SoundPathSpecifier("/Audio/Magic/forcewall.ogg") { Params = AudioParams.Default.WithVolume(-5f) }; @@ -27,4 +27,7 @@ public sealed partial class RechargeBasicEntityAmmoComponent : Component AutoNetworkedField] [AutoPausedField] public TimeSpan? NextCharge; + + [DataField, AutoNetworkedField] + public bool ShowExamineText = true; } diff --git a/Content.Shared/Weapons/Ranged/Systems/RechargeBasicEntityAmmoSystem.cs b/Content.Shared/Weapons/Ranged/Systems/RechargeBasicEntityAmmoSystem.cs index 9d6d552400..3316df0b96 100644 --- a/Content.Shared/Weapons/Ranged/Systems/RechargeBasicEntityAmmoSystem.cs +++ b/Content.Shared/Weapons/Ranged/Systems/RechargeBasicEntityAmmoSystem.cs @@ -66,6 +66,9 @@ public sealed class RechargeBasicEntityAmmoSystem : EntitySystem private void OnExamined(EntityUid uid, RechargeBasicEntityAmmoComponent component, ExaminedEvent args) { + if (!component.ShowExamineText) + return; + if (!TryComp(uid, out var ammo) || ammo.Count == ammo.Capacity || component.NextCharge == null) diff --git a/Resources/Locale/en-US/alerts/alerts.ftl b/Resources/Locale/en-US/alerts/alerts.ftl index 319809da40..37af416c3a 100644 --- a/Resources/Locale/en-US/alerts/alerts.ftl +++ b/Resources/Locale/en-US/alerts/alerts.ftl @@ -96,6 +96,9 @@ alerts-bleed-desc = You're [color=red]bleeding[/color]. alerts-pacified-name = [color=green]Pacified[/color] alerts-pacified-desc = You're pacified; you won't be able to harm living creatures. +alerts-adrenaline-name = [color=red]Adrenaline[/color] +alerts-adrenaline-desc = You're full of adrenaline: pain won't slow you down. + alerts-suit-power-name = Suit Power alerts-suit-power-desc = How much power your space ninja suit has. diff --git a/Resources/Locale/en-US/guidebook/chemistry/statuseffects.ftl b/Resources/Locale/en-US/guidebook/chemistry/statuseffects.ftl index 9a8f2f6c8a..13d9ed5d6b 100644 --- a/Resources/Locale/en-US/guidebook/chemistry/statuseffects.ftl +++ b/Resources/Locale/en-US/guidebook/chemistry/statuseffects.ftl @@ -13,3 +13,4 @@ reagent-effect-status-effect-RatvarianLanguage = ratvarian language patterns reagent-effect-status-effect-StaminaModifier = modified stamina reagent-effect-status-effect-RadiationProtection = radiation protection reagent-effect-status-effect-Drowsiness = drowsiness +reagent-effect-status-effect-Adrenaline = adrenaline diff --git a/Resources/Locale/en-US/reagents/meta/chemicals.ftl b/Resources/Locale/en-US/reagents/meta/chemicals.ftl index 1d70ff65ff..ad9d12e26f 100644 --- a/Resources/Locale/en-US/reagents/meta/chemicals.ftl +++ b/Resources/Locale/en-US/reagents/meta/chemicals.ftl @@ -28,3 +28,5 @@ reagent-desc-sodium-polyacrylate = A super-absorbent polymer with assorted indus reagent-name-cellulose = cellulose fibers reagent-desc-cellulose = A crystaline polydextrose polymer, plants swear by this stuff. +reagent-name-rororium = rororium +reagent-desc-rororium = A strange substance which fills the cores of the hivelords that roam the mining asteroid. Thought to be the source of their regenerative powers. diff --git a/Resources/Prototypes/Alerts/alerts.yml b/Resources/Prototypes/Alerts/alerts.yml index 4ee4fdce0c..80fcc44a55 100644 --- a/Resources/Prototypes/Alerts/alerts.yml +++ b/Resources/Prototypes/Alerts/alerts.yml @@ -427,6 +427,14 @@ name: alerts-pacified-name description: alerts-pacified-desc +- type: alert + id: Adrenaline + icons: + - sprite: Mobs/Species/Human/organs.rsi + state: heart-on + name: alerts-adrenaline-name + description: alerts-adrenaline-desc + - type: alert id: Debug1 icons: diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml index d16499aa76..7e147ba711 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/spawners.yml @@ -476,3 +476,21 @@ amount: !type:ConstantNumberSelector value: 3 +- type: entity + parent: MarkerBase + id: SalvageSpawnerMobMiningAsteroid + name: Mining Asteroid Mob Spawner + components: + - type: Sprite + layers: + - state: green + - sprite: Mobs/Aliens/Asteroid/goliath.rsi + state: goliath + - type: EntityTableSpawner + table: !type:GroupSelector + children: + - id: MobGoliath + weight: 65 + - id: MobHivelord + weight: 35 + diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/asteroid.yml b/Resources/Prototypes/Entities/Mobs/NPCs/asteroid.yml index 8cbd40b5cc..877dd40cc3 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/asteroid.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/asteroid.yml @@ -26,6 +26,7 @@ - TemporaryBlindness - RadiationProtection - Drowsiness + - Adrenaline - type: StandingState - type: Tag tags: @@ -180,3 +181,156 @@ state: goliath_tentacle_retract - type: EffectVisuals - type: AnimationPlayer + +- type: entity + id: MobHivelord + parent: [ BaseMobAsteroid, FlyingMobBase ] + name: hivelord + description: A truly alien creature, it is a mass of unknown organic material, constantly fluctuating. When attacking, pieces of it split off and attack in tandem with the original. + components: + - type: Sprite + sprite: Mobs/Aliens/Asteroid/hivelord.rsi + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + state: hivelord + - type: DamageStateVisuals + states: + Alive: + Base: hivelord + Dead: + Base: hivelord_dead + - type: MovementSpeedModifier + baseWalkSpeed : 3.5 + baseSprintSpeed : 4.0 + - type: MobThresholds + thresholds: + 0: Alive + 75: Dead + - type: MeleeWeapon + damage: + types: + Blunt: 0 + - type: Gun + fireRate: 0.66 + selectedMode: SemiAuto + showExamineText: false + availableModes: + - SemiAuto + soundGunshot: null + - type: RechargeBasicEntityAmmo + showExamineText: false + rechargeCooldown: 0 + rechargeSound: null + - type: BasicEntityAmmoProvider + proto: MobHivelordBrood + capacity: 1 + count: 1 + - type: NpcFactionMember + factions: + - SimpleHostile + - type: HTN + rootTask: + task: SimpleRangedHostileCompound + blackboard: + VisionRadius: !type:Single + 4 + AggroVisionRadius: !type:Single + 9 + - type: Butcherable + spawned: + - id: FoodHivelordRemains + +- type: entity + id: MobHivelordBrood + parent: [ BaseMobAsteroid, FlyingMobBase ] + name: hivelord brood + description: A fragment of the original hivelord, rallying behind its original. One isn't much of a threat, but... + components: + - type: Sprite + sprite: Mobs/Aliens/Asteroid/hivelord.rsi + layers: + - state: hivelordbrood + - type: MovementSpeedModifier + baseWalkSpeed : 3.5 + baseSprintSpeed : 4.0 + - type: MobThresholds + thresholds: + 0: Alive + 5: Dead + - type: MeleeWeapon + soundHit: + path: /Audio/Weapons/bladeslice.ogg + angle: 0 + attackRate: 1.0 + range: 0.75 + animation: WeaponArcPunch + damage: + types: + Slash: 7 + - type: Ammo + muzzleFlash: null + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 5 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: NpcFactionMember + factions: + - SimpleHostile + - type: HTN + rootTask: + task: SimpleHostileCompound + blackboard: # highly aggressive + VisionRadius: !type:Single + 15 + AggroVisionRadius: !type:Single + 15 + - type: TimedDespawn + lifetime: 100 + +- type: entity + id: FoodHivelordRemains + parent: FoodBase + name: hivelord remains + description: All that remains of a hivelord, it seems to be what allows it to break pieces of itself off without being hurt... its healing properties will soon become inert if not used quickly. Try not to think about what you're eating. + components: + - type: SolutionContainerManager + solutions: + food: + maxVol: 5 + reagents: + - ReagentId: Rororium + Quantity: 5 + - type: Sprite + sprite: Objects/Consumable/Food/rorocore.rsi + state: boiled + - type: Item + size: Normal + - type: Perishable + rotAfter: 120 # rot after 2 minutes + molsPerSecondPerUnitMass: 0 + forceRotProgression: true + - type: RotInto + entity: FoodHivelordRemainsInert + stage: 1 + - type: StaticPrice + price: 5000 + +- type: entity + id: FoodHivelordRemainsInert + parent: BaseItem + name: inert hivelord remains + description: All that remains of a hivelord... Now all is truly lost. + components: + - type: Sprite + sprite: Objects/Consumable/Food/rorocore.rsi + state: boiled + color: "#664444" + - type: SpaceGarbage + - type: Item + size: Normal + - type: StaticPrice + price: 500 diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml b/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml index 8deefe9b8e..f400680eb0 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml @@ -29,6 +29,7 @@ - Flashed - RadiationProtection - Drowsiness + - Adrenaline - type: Buckle - type: StandingState - type: Tag @@ -106,6 +107,7 @@ - Flashed - RadiationProtection - Drowsiness + - Adrenaline - type: Bloodstream bloodMaxVolume: 150 - type: MobPrice diff --git a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml index fe2416510e..16e3038fcd 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml @@ -106,6 +106,7 @@ - Pacified - RadiationProtection - Drowsiness + - Adrenaline - type: Temperature heatDamageThreshold: 800 - type: Metabolizer diff --git a/Resources/Prototypes/Entities/Mobs/Species/base.yml b/Resources/Prototypes/Entities/Mobs/Species/base.yml index cbe09c29ad..2349eddd3a 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/base.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/base.yml @@ -135,6 +135,7 @@ - Flashed - RadiationProtection - Drowsiness + - Adrenaline - type: Body prototype: Human requiredLegs: 2 diff --git a/Resources/Prototypes/Procedural/vgroid.yml b/Resources/Prototypes/Procedural/vgroid.yml index 05ab652ece..0747a58b30 100644 --- a/Resources/Prototypes/Procedural/vgroid.yml +++ b/Resources/Prototypes/Procedural/vgroid.yml @@ -180,7 +180,7 @@ minCount: 8 maxCount: 15 groups: - - id: MobGoliath + - id: SalvageSpawnerMobMiningAsteroid amount: 1 #- type: dungeonConfig @@ -207,10 +207,10 @@ # Mobs # If you want exterior dungeon mobs add them under the prototype. - !type:MobsDunGen - minCount: 20 - maxCount: 30 + minCount: 25 + maxCount: 35 groups: - - id: MobGoliath + - id: SalvageSpawnerMobMiningAsteroid amount: 1 #- type: dungeonConfig diff --git a/Resources/Prototypes/Reagents/chemicals.yml b/Resources/Prototypes/Reagents/chemicals.yml index b2b4850c8f..769b7748f3 100644 --- a/Resources/Prototypes/Reagents/chemicals.yml +++ b/Resources/Prototypes/Reagents/chemicals.yml @@ -166,3 +166,23 @@ color: "#E6E6DA" physicalDesc: reagent-physical-desc-crystalline slippery: false + +- type: reagent + id: Rororium + name: reagent-name-rororium + desc: reagent-desc-rororium + group: Biological + flavor: tingly + physicalDesc: reagent-physical-desc-refreshing + color: "#bf1365" + metabolisms: + Medicine: + effects: + - !type:HealthChange + damage: + groups: + Brute: -4 + - !type:GenericStatusEffect + key: Adrenaline + component: IgnoreSlowOnDamage + time: 120 diff --git a/Resources/Prototypes/status_effects.yml b/Resources/Prototypes/status_effects.yml index 96379323fd..49e5ccc579 100644 --- a/Resources/Prototypes/status_effects.yml +++ b/Resources/Prototypes/status_effects.yml @@ -68,3 +68,7 @@ - type: statusEffect id: Drowsiness #blurs your vision and makes you randomly fall asleep + +- type: statusEffect + id: Adrenaline + alert: Adrenaline diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord.png b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord.png new file mode 100644 index 0000000000000000000000000000000000000000..09d70265e64004c27edb41d9b67e706abf204c20 GIT binary patch literal 928 zcmV;R17G}!P)X?OojQ++zmV@i1#$$tEt5i^f=rB63`1Sy{#94m1*V?NQJG>c?w(^ z2eg1I0ZxQ6pbDfrL1h)`R|_JVUsspSkX_c=;v}FK$Yz(mB%Pi_ti_n(@XXD z#>-=pRpD8Pl)`*@OX3umx_J_G`?d3P0%q|Cnvj>bsurdRz~D)#uv z3!^U}RdzJ2vhDF&q0t*eP+bS080(6TzJMpXR~J8#2NBpp0H?r+et%R3FTGi9I1B&* zzx4*l(#KI!74~d#Z%uG4N$>vPwK0mzAD9SfL}lZH-3B{Jh!ti*0#M(}G*mU&r<}Ge zE;UMRbTUDo(MPNL$0$P5h`_1YB6Xd#u{t^rBn}1ILx}ye_exy-adbe`WO+N$x(wri zgw)g1?+G`tOFX+RX6cl_yL$$m(E9b(xD_(Q1Fb#x^9!#)q%kpq1kZxJ(TfN2xZ;vn zb()Mowk7dMsv77Hij4stNm-at6Bu^^qF~1$dW?7`p7np~yIFZu&MxcTD)RgyH?k5v z`PBB_SThDhCbCM*Ku@L{JAPhvQ)E#yIOX!+<6-5z*hq29=$0hSsH7zy= zV=(0Hw$tb5KYw2v0=O#!;7-UbudqL4Ch# z+JCG^|FRp~iT$}huSCG{A1>&e6i;8vy`r6d*)_#`++PfZP&;jtDJioi7cmz~$s+xX0AE zgZa6yd$~{aT;_)o!0Cv002v7}*t`zgcOP_80yx9e8%B4&uETa~=MObZforagTNTpI zhr2$WUy5ZgG}OEERDvwk0JM(+0JR1Y+gHvCz-d2M(5bh=^+xSNxP}1rQ3BeAgpc<4agb=o&O_m4fLUK(Q4gFhv%2+k^2Gw zw8}+I3iF==;77~^0IZJCIHmS%A7@$QzQZtG4yYwMP9l_4kdS2%y-~?$>9Sp_ z9ln}whttokFenH%Crb(d-U-C*Y~5BFLTbP33lb$Kkg9iR!21Dy6l^-qNnj=W@^eJs zDlqFc7_EjkL`H~{aAk>dl6?Rr>1+4l>2rN|xd4Dz*yvjj09U+y!vX-pjz~wp>ndO= vyQI4a06RSZ+~#@!xXtwdaGUD^;5OGEE`KP%@bK+800000NkvXXu0mjfcE~*s literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_alert_nocore.png b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_alert_nocore.png new file mode 100644 index 0000000000000000000000000000000000000000..dc61d81d2be0b1729d3e72db1793175213d1fbd3 GIT binary patch literal 675 zcmV;U0$lxxP)k?0&{{)IN|m z*!qq2>_@w~oxDHy&l?_ae)(*G>jktiJ5l|M|1VFB!7hLpbZs_!RBnp_fa?Y5buSsb z9u(69A_TjRT;kcq(XhwT zXn~PKPy)z1g7kzOtgVy)ayLZ}-cKD%AVQdBS2&fP`gr|PY=fyG@4-_6vX%qTeG~v_ zHHbLAa&`bt`=x|VeH3mta(yOAoLcRmlqW-?Y*1qi1p%#cd|*_BG=>lmEOqtmpudz# znw=pb*ufNJgHojs(l)fg5&_}q(G>s|2a-{BLfSsFAfgo&(K$1Uf>vM76#(c`)aco- z%jsrF1Hq@j>UcFqS7-0?yPXDgvLp=r+X(z zZGD_=k^6>Wx){(3beupa$si%yAo`$Ej?#6zR6BeDZikV%I|ad}vZMguS>BRDaD5=* zp()=7SQj}t0gS3NOWJ~Zz^vC`v^rjhj1VW_%Di*(7;sAZ>^`kNw@;S~0LX>)z6Akr z#S7L807wTSoqg9`z*2TWcM$+~dI5yZ^#TZ+>je-t*9#zQu0PhQ74Sb`RuljL002ov JPDHLkV1n@@CKmtz literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead.png b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead.png new file mode 100644 index 0000000000000000000000000000000000000000..4e09b49b40a3c3b16d8223aaf96ae5f2c28fc32f GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D0tn| z#WAE}&fBT6d`A>GS`0tB-TTim@1$>e@-(GG5wqXg8Tj|wpINSO_R9t)1qKNEC%C|5 z(JVP8i!=4yiVVA6G8VAA*iY!OXMMn3uDHXpznsmmYeW7m)9sHX89H{_ELEF#tx%SE zMqoVS?2~I5weL?e3{w9kwL$RZ_4L_^=0_QRsp(JG{`6f#^Mc>&t4(J8jM|zGRSucG zuYPL>E|it*JrU%axl=EJVSjC$x!mPxrNKuSSm*9-JO9H;e!`^eaH%WXZ+xyyc>cVZ jp;uq~_2hDn?(a<7Cr0%ZrS6>u^df_&tDnm{r-UW|E2D1K literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead_nocore.png b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_dead_nocore.png new file mode 100644 index 0000000000000000000000000000000000000000..5f2a004190719a547da53ce37a0132ccda73b633 GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D0sxv z#WAE}&fBShd<_a5ZMl!#?*8YPyYksAZb5;|TiE}(JOA@{Y}ydP_kaO{>RE1_7wF3s zbTFCE?Z_}GlSP7YBA?6WZU&1D;!Lw2*I0I3YRL>OK}|aQVyT z6SS3mOI7xgTe~DWM4fU}|WY literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_nocore.png b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/hivelord_nocore.png new file mode 100644 index 0000000000000000000000000000000000000000..7d38dbfe899cab6583acc76728ed90fdae3a5158 GIT binary patch literal 882 zcmV-&1C9KNP)ljq0ndPOthV!0ZPsh> z*kBCq{r1aIAmH=g`QPu6-)pTRGS?h z{Dk}j-jw=heQ*&w@|VXemK%=VJ;PrcE>y&Mynf82=r{}8<4gtDTWbiYA z%uF$}iRxiP5rEnhyB&>zBP1|8iFSs3pA#Rz%zQL>*(T$-kzop4|opO0v!ldAO%=wg3c_`TN5IlU3aI= zm{oSw1tehR$aZgemP{lNyJAsRxPB_j$(8bF?d>+jtne;mQejx!QrHD{*?Z8~&knH>+OEPFmz7}N$Cbmsvi)|w(v z7eKswck+|D5W!6Zu?wuI_he{sycaXeM~M$3<2Inh^S_`($>Ac z&`Px5M{q&Hs_8}N1glECyDS#TwBOy4Mo)P4`l#Ir5#qpApZoI#+96YzSV00ZA>Ww! z1G`;wN~}9fW?<`5xFppLb_M0y5SOGP?8phMI{-nb2FNy!LsClS`~ zjC`&0>vPfsI#O=u<5X=vX$A%+ zeNPw1kcv5P=iKINR^V~ieZ>CO|N5r;TUvEgcy>;UdiiwE8^`T8lQlVBF&-;qOpp<0 zKu~YbzCZu|b4_EA7E{s##=QsGxtK0JSlV#@ijRZbo++E<`!|<;dR1tWbwJbL>*Zv> z)GNkMcDxI@7bvILR#$w^DB+EF(TUk^KmOS7Y*j1JTJvjVM?L2;HmB=6_Uokmul}v; zJH#{NHCO+{xh9JZn6suFXX0Yrvg^|`2M^)LzL6^%3S$@~jN{xADoowI$j8RCs^2QcLK-VAVPS$-f-t)bqu%Bf+S>ty-Kk_QwU%X1nt zm{zi!Ds4&M)V+Z1M4ZpfH5{LsMJ8Nl+8McF24lI1Yuro^#&U6;eIFSdc{?H%HcJXz zZ8*`@aw-3weyJhzBgSXR%_sgzIz}*Or5of)H`ediYoHot716~|_5IJqO%|$QyVkb7 z(&^eIqvtt+G0r`%-@KFT+-Q z+k5v}rT_dX-s4{o%sZiY=N*BDxgRGMK2v5kO?Y-7l~w+Qja_{7XKCM$#lIijJlPO( zh{u}6?ppKR8{9U$ul_PhWnMRY%JeI8L5#zKzflYanKJHGC`UN(50M9)z4*} HQ$iB}Ce97i literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/meta.json new file mode 100644 index 0000000000..b11726cf73 --- /dev/null +++ b/Resources/Textures/Mobs/Aliens/Asteroid/hivelord.rsi/meta.json @@ -0,0 +1,74 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from vgstation13 at https://github.com/vgstation-coders/vgstation13/blob/9bd459b27c73575fd5e3bf2efea13b816d0ac7c8/icons/mob/animal.dmi", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "hivelord", + "delays": [ + [ + 0.5, + 0.5, + 0.5, + 0.5 + ] + ] + }, + { + "name": "hivelord_nocore", + "delays": [ + [ + 0.5, + 0.5, + 0.5, + 0.5 + ] + ] + }, + { + "name": "hivelord_alert", + "delays": [ + [ + 0.5, + 0.5, + 0.5, + 0.5 + ] + ] + }, + { + "name": "hivelord_alert_nocore", + "delays": [ + [ + 0.5, + 0.5, + 0.5, + 0.5 + ] + ] + }, + { + "name": "hivelord_dead" + }, + { + "name": "hivelord_dead_nocore" + }, + { + "name": "hivelordbrood", + "delays": [ + [ + 0.5, + 0.5, + 0.5, + 0.5, + 0.5, + 0.5 + ] + ] + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/rorocore.rsi/boiled.png b/Resources/Textures/Objects/Consumable/Food/rorocore.rsi/boiled.png new file mode 100644 index 0000000000000000000000000000000000000000..1a1d0c92dc187279c1c577eabde66e18fa7b51d2 GIT binary patch literal 295 zcmV+?0oeYDP)Px#;Ymb6R9J=Wle=mHK@^6+CCP*(hA2z0FbGbS)Px$1xZ9fR9J=Wle+;M$yQk`nZtKEm5=IlK&4Z9AOL#n+psE=U zjU1=4$n>j8IRKVS1!)kHOfy!NE#mi#_00_cuFE0!YVvad=G_C7O7W6Elgy^vjQVW3 z9-g&I+>VStqR|tiK}a|pU^_OqYD}&R@?y++dI`;6+5+3L0myYh+>U^+8P72ie#hPm df*=Tgjt`G$aP*MDxu5_5002ovPDHLkV1nF5md^kH literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Food/rorocore.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rorocore.rsi/meta.json new file mode 100644 index 0000000000..84b5983a1c --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/rorocore.rsi/meta.json @@ -0,0 +1,17 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "boiled" + } + ] +}