Истинные дворфы и урон жаждой

This commit is contained in:
Vigers Ray 2025-02-14 03:18:27 +03:00
parent 372b4afebd
commit 170b987f2b
35 changed files with 602 additions and 49 deletions

View file

@ -34,7 +34,7 @@ public sealed partial class HungerComponent : Component
/// </summary>
/// <remarks>Any time this is modified, <see cref="HungerSystem.SetAuthoritativeHungerValue"/> should be called.</remarks>
[DataField("baseDecayRate"), ViewVariables(VVAccess.ReadWrite)]
public float BaseDecayRate = 0.01666666666f;
public float BaseDecayRate = 0.5f; // Sunrise-Edit
/// <summary>
/// The actual amount at which <see cref="LastAuthoritativeHungerValue"/> decays.

View file

@ -1,4 +1,5 @@
using Content.Shared.Alert;
using Content.Shared.Damage;
using Content.Shared.Nutrition.EntitySystems;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
@ -14,7 +15,7 @@ public sealed partial class ThirstComponent : Component
[ViewVariables(VVAccess.ReadWrite)]
[DataField("baseDecayRate")]
[AutoNetworkedField]
public float BaseDecayRate = 0.1f;
public float BaseDecayRate = 0.5f; // Sunrise-Edit
[ViewVariables(VVAccess.ReadWrite)]
[AutoNetworkedField]
@ -46,6 +47,11 @@ public sealed partial class ThirstComponent : Component
[DataField, AutoNetworkedField]
public TimeSpan UpdateRate = TimeSpan.FromSeconds(1);
// Sunrise-Start
[DataField]
public DamageSpecifier? DehydrationDamage;
// Sunrise-End
[DataField("thresholds")]
[AutoNetworkedField]
public Dictionary<ThirstThreshold, float> ThirstThresholds = new()

View file

@ -281,7 +281,7 @@ public sealed class HungerSystem : EntitySystem
var query = EntityQueryEnumerator<HungerComponent>();
while (query.MoveNext(out var uid, out var hunger))
{
if (_timing.CurTime < hunger.NextThresholdUpdateTime)
if (_timing.CurTime < hunger.NextThresholdUpdateTime || _mobState.IsDead(uid)) // Sunrise-Edit
continue;
hunger.NextThresholdUpdateTime = _timing.CurTime + hunger.ThresholdUpdateRate;

View file

@ -14,6 +14,8 @@ using Robust.Shared.Timing;
using Robust.Shared.Utility;
using System.Diagnostics.CodeAnalysis;
using Content.Shared._Sunrise.SunriseCCVars;
using Content.Shared.Damage;
using Content.Shared.Mobs.Systems;
namespace Content.Shared.Nutrition.EntitySystems;
@ -27,6 +29,8 @@ public sealed class ThirstSystem : EntitySystem
[Dependency] private readonly MovementSpeedModifierSystem _movement = default!;
[Dependency] private readonly SharedJetpackSystem _jetpack = default!;
[Dependency] private readonly IConfigurationManager _config = default!;
[Dependency] private readonly MobStateSystem _mobState = default!;
[Dependency] private readonly DamageableSystem _damageable = default!;
[ValidatePrototypeId<SatiationIconPrototype>]
private const string ThirstIconOverhydratedId = "ThirstIconOverhydrated";
@ -152,6 +156,19 @@ public sealed class ThirstSystem : EntitySystem
return prototype != null;
}
private void DoContinuousHungerEffects(EntityUid uid, ThirstComponent? component = null)
{
if (!Resolve(uid, ref component))
return;
if (component.CurrentThirstThreshold <= ThirstThreshold.Parched &&
component.DehydrationDamage is { } damage &&
!_mobState.IsDead(uid))
{
_damageable.TryChangeDamage(uid, damage, true, false);
}
}
private void UpdateEffects(EntityUid uid, ThirstComponent component)
{
if (!_config.GetCVar(SunriseCCVars.MoodEnabled)
@ -213,12 +230,13 @@ public sealed class ThirstSystem : EntitySystem
var query = EntityQueryEnumerator<ThirstComponent>();
while (query.MoveNext(out var uid, out var thirst))
{
if (_timing.CurTime < thirst.NextUpdateTime)
if (_timing.CurTime < thirst.NextUpdateTime || _mobState.IsDead(uid)) // Sunrise-Edit
continue;
thirst.NextUpdateTime += thirst.UpdateRate;
ModifyThirst(uid, thirst, -thirst.ActualDecayRate);
DoContinuousHungerEffects(uid, thirst);
var calculatedThirstThreshold = GetThirstThreshold(thirst, thirst.CurrentThirst);
if (calculatedThirstThreshold == thirst.CurrentThirstThreshold)

View file

@ -12435,3 +12435,36 @@
type: Fix
id: 860
time: '2025-02-13T21:48:16.591470+00:00'
- author: VigersRay
changes:
- message: "\u0416\u0430\u0436\u0434\u0430 \u0442\u0435\u043F\u0435\u0440\u044C\
\ \u043C\u043E\u0436\u0435\u0442 \u0443\u0431\u0438\u0442\u044C \u0432\u0430\
\u0441."
type: Tweak
- message: "\u0414\u0432\u043E\u0440\u0444\u044B \u0442\u0435\u043F\u0435\u0440\u044C\
\ \u043C\u043E\u0433\u0443\u0442 \u0443\u0442\u043E\u043B\u0438\u0442\u044C\
\ \u0436\u0430\u0436\u0434\u0443 \u0438\u0441\u043A\u043B\u044E\u0447\u0438\u0442\
\u0435\u043B\u044C\u043D\u043E \u0430\u043B\u043A\u043E\u0433\u043E\u043B\u0435\
\u043C."
type: Tweak
- message: "\u0423 \u0434\u0432\u043E\u0440\u0444\u043E\u0432 \u0432 \u0430\u0432\
\u0430\u0440\u0438\u0439\u043A\u043E\u043C \u043D\u0430\u0431\u043E\u0440\u0435\
\ \u0442\u0435\u043F\u0435\u0440\u044C \u0441\u043E\u0434\u0435\u0440\u0436\u0438\
\u0442\u0441\u044F \u043F\u0438\u0432\u043E."
type: Tweak
- message: "\u0412\u043A\u0443\u0441 \u043F\u0438\u0432\u0430 \u0442\u0435\u043F\
\u0435\u0440\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0430\u0435\u0442\
\u0441\u044F \u043A\u0430\u043A \"\u043F\u0438\u0432\u043E\" \u0430 \u043D\u0435\
\ \"\u043C\u043E\u0447\u0430\"."
type: Fix
- message: "\u0422\u0440\u043E\u0442\u0442\u0438\u043D\u044B \u043F\u043E\u043B\u0443\
\u0447\u0438\u043B\u0438 \u0431\u043E\u043B\u044C\u0448\u0438\u0435 \u0440\u0435\
\u0437\u0438\u0441\u0442\u044B \u043A \u0443\u0440\u043E\u043D\u0443."
type: Tweak
- message: "\u0418\u0441\u043F\u0440\u0430\u0432\u043B\u0435\u043D \u043E\u0442\u0441\
\u0443\u0442\u0441\u0432\u0443\u044E\u0449\u0438\u0439 \u043D\u0430\u0431\u043E\
\u0440 \u043C\u0438\u043C\u0430 \u0443 \u043A\u0441\u0435\u043D\u043E\u0441\u043E\
\u0432."
type: Fix
id: 861
time: '2025-02-14T00:18:07.814007+00:00'

View file

@ -193,7 +193,7 @@ flavor-complex-juice = как сок
flavor-complex-rocksandstones = как скалы и камни
flavor-complex-water = как вода
flavor-complex-beer = как моча
flavor-complex-beer = как пиво
flavor-complex-ale = как хлеб
flavor-complex-cola = как кола
flavor-complex-cognac = как сухой пряный алкоголь
@ -247,7 +247,7 @@ flavor-complex-white-russian = как подслащённый алкоголь
flavor-complex-moonshine = как чистый алкоголь
flavor-complex-tequila-sunrise = как мексиканское утро
flavor-complex-irish-coffee = как пробуждение алкоголика
flavor-complex-iced-beer = как ледяная моча
flavor-complex-iced-beer = как ледяная пиво
flavor-complex-gargle-blaster = как будто кто-то ударил вас по голове золотым слитком, покрытым лимоном.
flavor-complex-bloody-mary = как тяжёлое похмелье
flavor-complex-beepsky = как нефть и виски

View file

@ -279,7 +279,14 @@
- id: ClothingMaskBreath
- id: EmergencyOxygenTankFilled
- id: EmergencyMedipen
- id: Flare
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodBreadBaguette
- id: DrinkWaterBottleFull
@ -293,7 +300,14 @@
- id: ClothingMaskBreath
- id: EmergencyNitrogenTankFilled
- id: EmergencyMedipen
- id: Flare
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodBreadBaguette
- id: DrinkWaterBottleFull
- type: Sprite

View file

@ -13,6 +13,10 @@
species: Arachnid
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Sericulture
action: ActionSericulture
productionLength: 2

View file

@ -9,9 +9,13 @@
- type: HumanoidAppearance
species: Diona
- type: Hunger
baseDecayRate: 0.0083
baseDecayRate: 0.3
- type: Thirst
baseDecayRate: 0.0083
baseDecayRate: 0.3
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Diona/parts.rsi
state: full

View file

@ -8,6 +8,10 @@
- type: Absorbable
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Slime/parts.rsi # It was like this beforehand, no idea why.
state: full

View file

@ -11,6 +11,10 @@
sprite: Mobs/Species/Human/parts.rsi
state: full
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Butcherable
butcheringType: Spike
spawned:

View file

@ -12,6 +12,10 @@
- HeadTop
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Moth/parts.rsi
state: full

View file

@ -16,6 +16,10 @@
- type: Puller
needsHands: false
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Reptilian/parts.rsi
state: full

View file

@ -7,6 +7,10 @@
- type: Absorbable
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Slime/parts.rsi
state: full

View file

@ -6,6 +6,10 @@
- type: Absorbable
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: Mobs/Species/Vox/parts.rsi
state: vox_m

View file

@ -14,7 +14,6 @@
species:
- Arachnid
- Diona
- Dwarf
- Human
- Moth
- Reptilian

View file

@ -85,8 +85,9 @@
loadouts:
- EmergencyNitrogen
- EmergencyOxygen
- EmergencyWithoutGas # Sunrise-Edit
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGas # Sunrise-Edit
- EmergencyDwarf # Sunrise-Edit
- type: loadoutGroup
id: GroupEVATank
@ -488,6 +489,7 @@
- EmergencyOxygenClown
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasClown # Sunrise-Edit
- EmergencyDwarfClown # Sunrise-Edit
- type: loadoutGroup
id: MimeHead
@ -544,6 +546,8 @@
- EmergencyNitrogenMime
- EmergencyOxygenMime
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasMime # Sunrise-Edit
- EmergencyDwarfMime # Sunrise-Edit
- type: loadoutGroup
id: MusicianJumpsuit
@ -683,7 +687,7 @@
minLimit: 0
loadouts:
- CargoTechnicianHead
#Sunrise-start
#Sunrise-start
- Sunrise-BandOrange
- Sunrise-BandYellow
- Sunrise-BandBrown
@ -797,7 +801,7 @@
- Sunrise-ScarfOrange
- Sunrise-ScarfYellow
- Sunrise-ScarfCyan
- Sunrise-ScarfLightBlue
- Sunrise-ScarfLightBlue
- Sunrise-TieRed
#Sunrise-end
@ -948,6 +952,7 @@
- EmergencyOxygenExtended
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasExtended # Sunrise-Edit
- EmergencyDwarfExtended # Sunrise-Edit
# Science
- type: loadoutGroup
@ -1193,6 +1198,7 @@
- EmergencyOxygenSecurity
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasSecurity # Sunrise-Edit
- EmergencyDwarfSecurity # Sunrise-Edit
- type: loadoutGroup
id: SecurityStar
@ -1275,7 +1281,7 @@
- Sunrise-ScarfRed
- Sunrise-ScarfOrange
- Sunrise-ScarfGreen
- Sunrise-ScarfLightBlue
- Sunrise-ScarfLightBlue
- Sunrise-ScarfCyan
- Sunrise-ScarfBlue
- Sunrise-Stethoscope
@ -1504,6 +1510,7 @@
- EmergencyOxygenMedical
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasMedical # Sunrise-Edit
- EmergencyDwarfMedical # Sunrise-Edit
# Wildcards
- type: loadoutGroup
@ -1547,6 +1554,7 @@
- EmergencyOxygenSyndicate
- LoadoutSpeciesVoxNitrogen
- EmergencyWithoutGasSyndicate # Sunrise-Edit
- EmergencyDwarfSyndicate # Sunrise-Edit
- type: loadoutGroup
id: GroupSpeciesBreathTool

View file

@ -8,6 +8,10 @@
effects:
- !type:SatiateThirst
factor: 3
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
reactiveEffects:
Extinguish:
methods: [ Touch ]
@ -29,6 +33,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
plantMetabolism:
- !type:PlantAdjustNutrition
amount: 0.1

View file

@ -12,6 +12,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0
@ -40,6 +44,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Theobromine
amount: 0.05
@ -57,6 +65,10 @@
effects:
- !type:SatiateThirst
factor: 1
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: CoconutWater
@ -71,6 +83,10 @@
effects:
- !type:SatiateThirst
factor: 4 # Coconut water is 94% water
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: CreamOfCoconut
@ -85,6 +101,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: CafeLatte
@ -105,6 +125,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0
@ -163,6 +187,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0
@ -202,6 +230,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Theobromine
amount: 0.05
@ -219,6 +251,10 @@
Drink:
effects:
- !type:SatiateThirst
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
Poison:
effects:
- !type:HealthChange
@ -246,6 +282,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: Milk
@ -266,6 +306,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: MilkGoat
@ -287,6 +331,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: MilkSoy
@ -322,6 +370,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
# TODO heal mimes
- type: reagent
@ -344,6 +396,10 @@
effects:
- !type:SatiateThirst
factor: 6
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 3.0
@ -385,6 +441,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0
@ -404,6 +464,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Theobromine
amount: 0.05
@ -447,6 +511,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: Ice
@ -512,6 +580,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Theobromine
amount: 0.05
@ -529,6 +601,10 @@
effects:
- !type:SatiateThirst
factor: 1
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
fizziness: 0.3
- type: reagent
@ -585,3 +661,7 @@
effects:
- !type:SatiateThirst
factor: 0.6
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false

View file

@ -57,6 +57,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Oculine
amount: 0.5

View file

@ -18,6 +18,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 1.0
@ -39,6 +43,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: ChangelingSting
@ -77,6 +85,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0
@ -199,6 +211,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- type: reagent
id: SpaceMountainWind
@ -252,6 +268,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Theobromine
amount: 0.1

View file

@ -103,6 +103,10 @@
factor: 1
- !type:SatiateThirst
factor: 1
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
footstepSound:
collection: FootstepBlood
params:
@ -170,6 +174,10 @@
effects:
- !type:SatiateThirst
factor: 1.5
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
# Dragon doesn't require airloss healing, so omnizine is still best for humans.
Medicine:
effects:
@ -222,6 +230,10 @@
effects:
- !type:SatiateThirst
factor: 0.5
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:AdjustReagent
reagent: Nutriment
amount: 0.1
@ -277,4 +289,4 @@
maxIntensity: 2
intensityPerUnit: 0.5
intensitySlope: 4
maxTotalIntensity: 1
maxTotalIntensity: 1

View file

@ -656,6 +656,10 @@
effects:
- !type:SatiateThirst
factor: 6
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:ModifyBloodLevel
amount: 6
@ -1057,6 +1061,10 @@
effects:
- !type:SatiateThirst
factor: 3
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
Medicine:
effects:
#If vampire
@ -1196,7 +1204,7 @@
conditions:
- !type:ReagentThreshold
min: 12
- type: reagent
id: Opporozidone #Name based of an altered version of the startreck chem "Opporozine"
name: reagent-name-opporozidone

View file

@ -172,6 +172,10 @@
factor: 1
- !type:SatiateThirst
factor: 1
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:HealthChange
conditions:
- !type:TotalDamage

View file

@ -126,7 +126,7 @@
id: BoxHugWithoutGas
name: box of hugs
description: A special box for sensitive people.
suffix: Emergency
suffix: Emergency, Without gas
components:
- type: Sprite
layers:
@ -151,6 +151,25 @@
tags:
- BoxHug
- type: entity
parent: BoxSurvival
id: BoxMimeWithoutGas
suffix: Mime, Emergency, Without gas
components:
- type: StorageFill
contents:
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodBreadBaguette
- id: DrinkBeerBottleFull
- type: entity
parent: BoxCardboard
id: BoxSurvivalSecurityWithoutGas
@ -197,6 +216,189 @@
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkWaterBottleFull
- type: Sprite
layers:
- state: internals
- state: extendedtank
# With Beer
- type: entity
parent: BoxSurvival
id: BoxSurvivalWithBeer
name: survival box
suffix: With beer
components:
- type: StorageFill
contents:
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Label
currentLabel: без балона
- type: entity
parent: BoxCardboard
id: BoxSurvivalEngineeringWithBeer
name: extended-capacity survival box
description: It's a box with basic internals inside. This one is labelled to contain an extended-capacity tank.
suffix: Extended, With beer
components:
- type: StorageFill
contents:
- id: ClothingMaskBreath
- id: ExtendedEmergencyOxygenTankFilled
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Sprite
layers:
- state: internals
- state: extendedtank
- type: entity
parent: BoxCardboard
id: BoxSurvivalMedicalWithBeer
name: survival box
description: It's a box with basic internals inside.
suffix: Medical, With beer
components:
- type: StorageFill
contents:
- id: ClothingMaskBreathMedical
- id: EmergencyOxygenTankFilled
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Sprite
layers:
- state: internals
- state: emergencytank
- type: entity
parent: BoxCardboard
id: BoxHugWithBeer
name: box of hugs
description: A special box for sensitive people.
suffix: Emergency, With beer
components:
- type: Sprite
layers:
- state: box_hug
- state: heart
- type: Item
heldPrefix: hug
- type: StorageFill
contents:
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Tag
tags:
- BoxHug
- type: entity
parent: BoxSurvival
id: BoxMimeWithBeer
suffix: Mime, Emergency, With beer
components:
- type: StorageFill
contents:
- id: ClothingMaskBreath
- id: EmergencyOxygenTankFilled
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodBreadBaguette
- id: DrinkBeerBottleFull
- type: entity
parent: BoxCardboard
id: BoxSurvivalSecurityWithBeer
name: survival box
description: It's a box with basic internals inside.
suffix: Security, With beer
components:
- type: StorageFill
contents:
- id: ClothingMaskGasSecurity
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Sprite
layers:
- state: internals
- state: emergencytank
- type: entity
parent: BoxCardboard
id: BoxSurvivalSyndicateWithBeer
name: extended-capacity survival box
description: It's a box with basic internals inside. This one is labelled to contain an extended-capacity tank.
suffix: Syndicate, With beer
components:
- type: StorageFill
contents:
- id: ClothingMaskGasSyndicate
- id: EmergencyMedipen
- id: GlowstickRed
orGroup: Glowstick
- id: GlowstickPurple
orGroup: Glowstick
- id: GlowstickYellow
orGroup: Glowstick
- id: GlowstickBlue
orGroup: Glowstick
- id: FoodSnackNutribrick
- id: DrinkBeerBottleFull
- type: Sprite
layers:
- state: internals

View file

@ -10,11 +10,11 @@
- type: damageModifierSet
id: Swine
coefficients:
Blunt: 0.9
Slash: 0.9
Piercing: 0.9
Cold: 0.8
Heat: 0.8
Blunt: 0.5
Slash: 0.7
Piercing: 0.7
Cold: 0.5
Heat: 0.5
- type: damageModifierSet
id: Predator

View file

@ -10,6 +10,10 @@
species: Demon
- type: Hunger
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: _Sunrise/Mobs/Species/Demon/parts.rsi
state: full_m

View file

@ -16,6 +16,10 @@
sprite: Mobs/Species/Human/parts.rsi
state: full
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Hunger
- type: Butcherable
butcheringType: Spike

View file

@ -101,8 +101,13 @@
state: body-overlay-2
visible: false
- type: Hunger
baseDecayRate: 0.05
baseDecayRate: 0.07
- type: Thirst
baseDecayRate: 0.07
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon # It will not have an icon in the adminspawn menu without this. Body parts seem fine for whatever reason.
sprite: _Sunrise/Mobs/Species/HumanoidXeno/parts.rsi
state: full

View file

@ -11,6 +11,10 @@
sprite: _Sunrise/Mobs/Species/Predator/parts.rsi
state: full
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Perishable
- type: HumanoidAppearance
species: Predator

View file

@ -8,8 +8,12 @@
- type: HumanoidAppearance
species: Swine
- type: Hunger
baseDecayRate: 0.03
baseDecayRate: 0.07
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: _Sunrise/Mobs/Species/Swine/parts.rsi
state: full

View file

@ -20,6 +20,10 @@
speechVerb: Felinid
allowedEmotes: ['Mew', 'Meow', 'Hisses', 'Purr']
- type: Thirst
dehydrationDamage:
types:
Bloodloss: 2
Asphyxiation: 2
- type: Icon
sprite: _Sunrise/Mobs/Species/Tajaran/parts.rsi
state: tajaran_m

View file

@ -10,13 +10,9 @@
# Basic
- type: loadout
id: EmergencyWithoutGas
startingGear: EmergencyWithoutGas
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
- type: startingGear
id: EmergencyWithoutGas
storage:
back:
- BoxSurvivalWithoutGas
@ -24,27 +20,29 @@
# Clown
- type: loadout
id: EmergencyWithoutGasClown
startingGear: EmergencyWithoutGasClown
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
- type: startingGear
id: EmergencyWithoutGasClown
storage:
back:
- BoxHugWithoutGas
# Engineering / Extended
# Mime
- type: loadout
id: EmergencyWithoutGasExtended
startingGear: EmergencyWithoutGasExtended
id: EmergencyWithoutGasMime
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
storage:
back:
- BoxMimeWithoutGas
- type: startingGear
# Engineering / Extended
- type: loadout
id: EmergencyWithoutGasExtended
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
storage:
back:
- BoxSurvivalWithoutGas
@ -52,27 +50,22 @@
# Medical
- type: loadout
id: EmergencyWithoutGasMedical
startingGear: EmergencyWithoutGasMedical
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
- type: startingGear
id: EmergencyWithoutGasMedical
storage:
back:
- BoxSurvivalWithoutGas
- type: startingGear
id: EmergencyWithoutGasMedical
# Security
- type: loadout
id: EmergencyWithoutGasSecurity
startingGear: EmergencyWithoutGasSecurity
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
- type: startingGear
id: EmergencyWithoutGasSecurity
storage:
back:
- BoxSurvivalSecurityWithoutGas
@ -80,13 +73,88 @@
# Syndicate
- type: loadout
id: EmergencyWithoutGasSyndicate
startingGear: EmergencyWithoutGasSyndicate
effects:
- !type:GroupLoadoutEffect
proto: NoBreather
- type: startingGear
id: EmergencyWithoutGasSyndicate
storage:
back:
- BoxSurvivalSyndicateWithoutGas
# Dwarf
- type: loadoutEffectGroup
id: Dwarf
effects:
- !type:SpeciesLoadoutEffect
species:
- Dwarf
# Basic
- type: loadout
id: EmergencyDwarf
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxSurvivalWithBeer
# Clown
- type: loadout
id: EmergencyDwarfClown
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxHugWithBeer
# Mime
- type: loadout
id: EmergencyDwarfMime
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxMimeWithBeer
# Engineering / Extended
- type: loadout
id: EmergencyDwarfExtended
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxSurvivalEngineeringWithBeer
# Medical
- type: loadout
id: EmergencyDwarfMedical
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxSurvivalMedicalWithBeer
# Security
- type: loadout
id: EmergencyDwarfSecurity
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxSurvivalSecurityWithBeer
# Syndicate
- type: loadout
id: EmergencyDwarfSyndicate
effects:
- !type:GroupLoadoutEffect
proto: Dwarf
storage:
back:
- BoxSurvivalSyndicateWithBeer

View file

@ -25,6 +25,10 @@
effects:
- !type:SatiateThirst
factor: 4
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
Medicine:
effects:
- !type:HealthChange
@ -48,6 +52,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
- !type:GenericStatusEffect
key: Drowsiness
time: 2.0

View file

@ -11,6 +11,10 @@
effects:
- !type:SatiateThirst
factor: 2
conditions:
- !type:OrganType
type: Dwarf
shouldHave: false
Narcotic:
effects:
- !type:MovespeedModifier