diff --git a/Content.Server/_CP14/GameTicking/Rules/CP14CommonObjectivesRule.cs b/Content.Server/_CP14/GameTicking/Rules/CP14CommonObjectivesRule.cs index 7258d4c508..9e76e60aa7 100644 --- a/Content.Server/_CP14/GameTicking/Rules/CP14CommonObjectivesRule.cs +++ b/Content.Server/_CP14/GameTicking/Rules/CP14CommonObjectivesRule.cs @@ -117,8 +117,7 @@ public sealed class CP14CommonObjectivesRule : GameRuleSystem(uid, out var stationMind)) - return; + EnsureComp(uid, out var stationMind); var query = EntityQueryEnumerator(); while (query.MoveNext(out var objectives)) diff --git a/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.Scanner.cs b/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.Scanner.cs deleted file mode 100644 index d0ad19ed46..0000000000 --- a/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.Scanner.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Content.Shared._CP14.MagicEnergy.Components; -using Content.Shared.Examine; - -namespace Content.Server._CP14.MagicEnergy; - -public partial class CP14MagicEnergySystem -{ - private void InitializeScanner() - { - SubscribeLocalEvent(OnExamined); - } - - private void OnExamined(Entity ent, ref ExaminedEvent args) - { - if (!TryComp(ent, out var magicContainer)) - return; - - if (!args.IsInDetailsRange) - return; - - args.PushMarkup(GetEnergyExaminedText(ent, magicContainer)); - } -} diff --git a/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.cs b/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.cs index 57f2a708c2..2de80a3a67 100644 --- a/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.cs +++ b/Content.Server/_CP14/MagicEnergy/CP14MagicEnergySystem.cs @@ -11,7 +11,6 @@ public sealed partial class CP14MagicEnergySystem : SharedCP14MagicEnergySystem public override void Initialize() { InitializeDraw(); - InitializeScanner(); InitializePortRelay(); } diff --git a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellProrotypeService.cs b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellProrotypeService.cs index c64eddc411..78db8fea78 100644 --- a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellProrotypeService.cs +++ b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellProrotypeService.cs @@ -39,7 +39,7 @@ public sealed partial class CP14SellPrototypeService : CP14StoreSellService foreach (var selledEnt in suitable) { - entManager.QueueDeleteEntity(selledEnt); + entManager.DeleteEntity(selledEnt); } return true; diff --git a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellStackService.cs b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellStackService.cs index c691637b16..63c4338113 100644 --- a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellStackService.cs +++ b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellStackService.cs @@ -40,7 +40,7 @@ public sealed partial class CP14SellStackService : CP14StoreSellService if (selledEnt.Key.Comp.Count == selledEnt.Value) { entities.Remove(selledEnt.Key); - entManager.QueueDeleteEntity(selledEnt.Key); + entManager.DeleteEntity(selledEnt.Key); } else { diff --git a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellWhitelistService.cs b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellWhitelistService.cs index 1ee8ddffd0..0d15060158 100644 --- a/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellWhitelistService.cs +++ b/Content.Shared/_CP14/Cargo/Prototype/SellServices/CP14SellWhitelistService.cs @@ -31,9 +31,6 @@ public sealed partial class CP14SellWhitelistService : CP14StoreSellService if (needCount <= 0) break; - if (!entManager.TryGetComponent(ent, out var metaData) || metaData.EntityPrototype is null) - continue; - if (!whitelistSystem.IsValid(Whitelist, ent)) continue; @@ -52,7 +49,7 @@ public sealed partial class CP14SellWhitelistService : CP14StoreSellService foreach (var selledEnt in suitable) { entities.Remove(selledEnt); - entManager.QueueDeleteEntity(selledEnt); + entManager.DeleteEntity(selledEnt); } return true; diff --git a/Content.Shared/_CP14/MagicEnergy/SharedCP14MagicEnergySystem.cs b/Content.Shared/_CP14/MagicEnergy/SharedCP14MagicEnergySystem.cs index 7d7b3fedd3..bc02167aad 100644 --- a/Content.Shared/_CP14/MagicEnergy/SharedCP14MagicEnergySystem.cs +++ b/Content.Shared/_CP14/MagicEnergy/SharedCP14MagicEnergySystem.cs @@ -2,8 +2,8 @@ using Content.Shared._CP14.MagicEnergy.Components; using Content.Shared._CP14.MagicEssence; using Content.Shared.Alert; using Content.Shared.Audio; +using Content.Shared.Examine; using Content.Shared.FixedPoint; -using Content.Shared.Inventory; using Content.Shared.Rounding; namespace Content.Shared._CP14.MagicEnergy; @@ -19,6 +19,8 @@ public partial class SharedCP14MagicEnergySystem : EntitySystem SubscribeLocalEvent(OnComponentStartup); SubscribeLocalEvent(OnComponentShutdown); + + SubscribeLocalEvent(OnExamined); } private void OnSlotPowerChanged(Entity ent, ref CP14SlotCrystalPowerChangedEvent args) @@ -164,6 +166,17 @@ public partial class SharedCP14MagicEnergySystem : EntitySystem _alerts.GetMaxSeverity(ent.Comp.MagicAlert.Value)); _alerts.ShowAlert(ent, ent.Comp.MagicAlert.Value, (short)level); } + + private void OnExamined(Entity ent, ref ExaminedEvent args) + { + if (!TryComp(ent, out var magicContainer)) + return; + + if (!args.IsInDetailsRange) + return; + + args.PushMarkup(GetEnergyExaminedText(ent, magicContainer)); + } } /// diff --git a/Content.Shared/_CP14/Temperature/CP14FireSpreadComponent.cs b/Content.Shared/_CP14/Temperature/CP14FireSpreadComponent.cs index 7eae565a48..e0db424dfb 100644 --- a/Content.Shared/_CP14/Temperature/CP14FireSpreadComponent.cs +++ b/Content.Shared/_CP14/Temperature/CP14FireSpreadComponent.cs @@ -29,13 +29,13 @@ public sealed partial class CP14FireSpreadComponent : Component /// how often objects will try to set the neighbors on fire. In Seconds /// [DataField] - public float SpreadCooldownMin = 5f; + public float SpreadCooldownMin = 10f; /// /// how often objects will try to set the neighbors on fire. In Seconds /// [DataField] - public float SpreadCooldownMax = 10f; + public float SpreadCooldownMax = 20f; /// /// the time of the next fire spread diff --git a/Resources/Locale/en-US/_CP14/demiplane/modifiers.ftl b/Resources/Locale/en-US/_CP14/demiplane/modifiers.ftl index 6d6a1b737c..4fcc6552c3 100644 --- a/Resources/Locale/en-US/_CP14/demiplane/modifiers.ftl +++ b/Resources/Locale/en-US/_CP14/demiplane/modifiers.ftl @@ -12,6 +12,7 @@ cp14-modifier-explosive = explosive mines cp14-modifier-ruins = ancient ruins cp14-modifier-xeno = xenomorphs cp14-modifier-zombie = swarms of undead +cp14-modifier-slime = slimes cp14-modifier-skeleton = sentient skeletons cp14-modifier-dyno = prehistoric fauna cp14-modifier-mole = predatory moles diff --git a/Resources/Locale/ru-RU/_CP14/demiplane/modifiers.ftl b/Resources/Locale/ru-RU/_CP14/demiplane/modifiers.ftl index 22123d2324..8d742e118e 100644 --- a/Resources/Locale/ru-RU/_CP14/demiplane/modifiers.ftl +++ b/Resources/Locale/ru-RU/_CP14/demiplane/modifiers.ftl @@ -12,6 +12,7 @@ cp14-modifier-explosive = взрывных мин cp14-modifier-ruins = древних руин cp14-modifier-xeno = ксеноморфов cp14-modifier-zombie = толп нежити +cp14-modifier-slime = слаймов cp14-modifier-skeleton = разумные скелеты cp14-modifier-dyno = доисторической фауны cp14-modifier-mole = хищных кротов diff --git a/Resources/Prototypes/_CP14/Catalog/Cargo/Store/Sylphoria/sell.yml b/Resources/Prototypes/_CP14/Catalog/Cargo/Store/Sylphoria/sell.yml index eb43246ce9..388603bf57 100644 --- a/Resources/Prototypes/_CP14/Catalog/Cargo/Store/Sylphoria/sell.yml +++ b/Resources/Prototypes/_CP14/Catalog/Cargo/Store/Sylphoria/sell.yml @@ -22,11 +22,11 @@ sprite: _CP14/Objects/Bureaucracy/paper.rsi state: scrolls -#- type: storePositionSell -# id: CP14ClothingCloakAmuletGold -# price: 80 -# factions: -# - Sylphoria -# service: !type:CP14SellPrototypeService -# proto: CP14ClothingCloakAmuletGold -# count: 1 +- type: storePositionSell + id: CP14ClothingCloakAmuletGold + price: 80 + factions: + - Sylphoria + service: !type:CP14SellPrototypeService + proto: CP14ClothingCloakAmuletGold + count: 1 diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/electric.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/electric.yml index b45c1d63b1..1f84b97b72 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/electric.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/electric.yml @@ -33,12 +33,12 @@ Blunt: 3 Shock: 3 - type: CP14SpellEffectOnHit - prob: 0.75 + prob: 0.3 effects: - !type:CP14SpellApplyEntityEffect effects: - !type:Electrocute - electrocuteTime: 0.5 + electrocuteTime: 1 electrocuteDamageScale: 1 - !type:CP14SpellSpawnEntityOnTarget spawns: diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/fire.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/fire.yml index 8382a9e072..20774dfad2 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/fire.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/Slimes/fire.yml @@ -98,7 +98,7 @@ effects: - !type:Jitter - !type:FlammableReaction - multiplier: 1.5 + multiplier: 1 - !type:AdjustTemperature amount: 6000 - !type:Ignite \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/base.yml b/Resources/Prototypes/_CP14/Entities/base.yml deleted file mode 100644 index 6a034e9503..0000000000 --- a/Resources/Prototypes/_CP14/Entities/base.yml +++ /dev/null @@ -1,46 +0,0 @@ -- type: entity - id: CP14BaseFlammable - abstract: true - categories: [ ForkFiltered ] - components: - - type: CP14FlammableAmbientSound - - type: AmbientSound - enabled: false - volume: -5 - range: 5 - sound: - path: /Audio/Ambience/Objects/fireplace.ogg #TODO replace - - type: Appearance - - type: Reactive - groups: - Flammable: [ Touch ] - Extinguish: [ Touch ] - - type: Flammable - fireSpread: true - canResistFire: false - alwaysCombustible: true - canExtinguish: true - firestacksOnIgnite: 0.5 - firestackFade: 0.3 - damage: - types: - Heat: 0.5 - - type: FireVisuals - sprite: _CP14/Effects/fire.rsi - normalState: small - -- type: entity - id: CP14BaseFlammableSpreading - parent: CP14BaseFlammable - abstract: true - components: - - type: CP14FireSpread - -- type: entity - id: CP14BaseFlammableSpreadingStrong - parent: CP14BaseFlammableSpreading - abstract: true - components: - - type: CP14FireSpread - spreadCooldownMin: 1 - spreadCooldownMax: 3 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/fire.yml b/Resources/Prototypes/_CP14/Entities/fire.yml index dc3c5addea..b55fa76377 100644 --- a/Resources/Prototypes/_CP14/Entities/fire.yml +++ b/Resources/Prototypes/_CP14/Entities/fire.yml @@ -82,6 +82,53 @@ - type: CP14AutoIgnite - type: CP14ActiveFireSpreading - type: TimedDespawn - lifetime: 60 + lifetime: 120 - type: CP14FireSpread - - type: CP14DespawnOnExtinguish \ No newline at end of file + - type: CP14DespawnOnExtinguish + +- type: entity + id: CP14BaseFlammable + abstract: true + categories: [ ForkFiltered ] + components: + - type: CP14FlammableAmbientSound + - type: AmbientSound + enabled: false + volume: -5 + range: 5 + sound: + path: /Audio/Ambience/Objects/fireplace.ogg #TODO replace + - type: Appearance + - type: Reactive + groups: + Flammable: [ Touch ] + Extinguish: [ Touch ] + - type: Flammable + fireSpread: true + canResistFire: false + alwaysCombustible: true + canExtinguish: true + firestacksOnIgnite: 0.25 + firestackFade: 0.15 + damage: + types: + Heat: 0.25 + - type: FireVisuals + sprite: _CP14/Effects/fire.rsi + normalState: small + +- type: entity + id: CP14BaseFlammableSpreading + parent: CP14BaseFlammable + abstract: true + components: + - type: CP14FireSpread + +- type: entity + id: CP14BaseFlammableSpreadingStrong + parent: CP14BaseFlammableSpreading + abstract: true + components: + - type: CP14FireSpread + spreadCooldownMin: 1 + spreadCooldownMax: 3 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/GameRules/roundstart.yml b/Resources/Prototypes/_CP14/GameRules/roundstart.yml index e4ac9f3a27..2e78fe80fe 100644 --- a/Resources/Prototypes/_CP14/GameRules/roundstart.yml +++ b/Resources/Prototypes/_CP14/GameRules/roundstart.yml @@ -19,10 +19,10 @@ id: CP14RoundObjectivesRule parent: CP14BaseGameRule components: - - type: CP14CommonObjectivesRule - departmentObjectives: - CP14Command: - - CP14TownSendObjectiveGroup + #- type: CP14CommonObjectivesRule + # departmentObjectives: + # CP14Command: + # - CP14TownSendObjectiveGroup - type: CP14PersonalObjectivesRule roleObjectives: CP14Guildmaster: diff --git a/Resources/Prototypes/_CP14/Polymorph/polymorph.yml b/Resources/Prototypes/_CP14/Polymorph/polymorph.yml index 5d3189701f..e924a10d74 100644 --- a/Resources/Prototypes/_CP14/Polymorph/polymorph.yml +++ b/Resources/Prototypes/_CP14/Polymorph/polymorph.yml @@ -5,7 +5,7 @@ forced: true revertOnCrit: true revertOnDeath: true - transferDamage: true + transferDamage: false polymorphSound: !type:SoundPathSpecifier path: /Audio/Magic/forcewall.ogg exitPolymorphSound: !type:SoundPathSpecifier diff --git a/Resources/Prototypes/_CP14/Procedural/Demiplane/Modifiers/Danger/mobs.yml b/Resources/Prototypes/_CP14/Procedural/Demiplane/Modifiers/Danger/mobs.yml index f9c039b790..a8d813cd95 100644 --- a/Resources/Prototypes/_CP14/Procedural/Demiplane/Modifiers/Danger/mobs.yml +++ b/Resources/Prototypes/_CP14/Procedural/Demiplane/Modifiers/Danger/mobs.yml @@ -124,28 +124,29 @@ minGroupSize: 1 maxGroupSize: 2 -- type: cp14DemiplaneModifier - id: EnemyInvisibleWhistler - levels: - min: 6 - max: 10 - name: cp14-modifier-invisible-whistler - categories: - Danger: 0.4 - requiredTags: - - CP14DemiplaneUnderground - layers: - - !type:OreDunGen - entity: CP14MobMonsterInvisibleWhistler - count: 2 - minGroupSize: 1 - maxGroupSize: 2 +#- type: cp14DemiplaneModifier #Removed to Whistler rebalance +# id: EnemyInvisibleWhistler +# levels: +# min: 6 +# max: 10 +# name: cp14-modifier-invisible-whistler +# categories: +# Danger: 0.4 +# requiredTags: +# - CP14DemiplaneUnderground +# layers: +# - !type:OreDunGen +# entity: CP14MobMonsterInvisibleWhistler +# count: 2 +# minGroupSize: 1 +# maxGroupSize: 2 - type: cp14DemiplaneModifier id: MobSlimeElectric levels: min: 1 max: 10 + name: cp14-modifier-slime categories: Danger: 0.3 layers: @@ -160,6 +161,7 @@ levels: min: 1 max: 10 + name: cp14-modifier-slime categories: Danger: 0.3 requiredTags: @@ -176,6 +178,7 @@ levels: min: 1 max: 10 + name: cp14-modifier-slime categories: Danger: 0.3 requiredTags: