Censer tweaks part 2 (#4171)

* Kill asphyx damage

* UI goidacode

* Locale

* I think this is needed too???

* Code stuff

* Code stuff

* Replace fuel with mindbreaker toxin

* Move censer to lockers

* Halve censer fuel capacity

* I sure hope the branch won't fucking explode

* Remove accidental line break

* blyat

* Update desc

* Move to nested fill
This commit is contained in:
No Elka 2025-08-13 14:34:50 +03:00 committed by GitHub
parent 8334da35e5
commit a7df10b20d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 87 additions and 8 deletions

View File

@ -0,0 +1,25 @@
using Content.Client.Eui;
namespace Content.Client._DV.CosmicCult.UI;
public sealed class CosmicMindwipedEui : BaseEui
{
private readonly CosmicMindwipedMenu _menu;
public CosmicMindwipedEui()
{
_menu = new CosmicMindwipedMenu();
}
public override void Opened()
{
_menu.OpenCentered();
}
public override void Closed()
{
base.Closed();
_menu.Close();
}
}

View File

@ -0,0 +1,11 @@
<controls:FancyWindow xmlns="https://spacestation14.io"
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
Title="{Loc 'cosmiccult-ui-mindwiped-title'}">
<BoxContainer Orientation="Vertical" Margin="10">
<Label Text="{Loc 'cosmiccult-ui-mindwiped-text-1'}" Margin="5" Align="Center"/>
<Label Text="{Loc 'cosmiccult-ui-mindwiped-text-2'}" Margin="5" Align="Center"/>
<BoxContainer Orientation="Horizontal" Margin="5" Align="Center">
<Button Name="ConfirmButton" Text="{Loc 'cosmiccult-ui-popup-confirm'}"/>
</BoxContainer>
</BoxContainer>
</controls:FancyWindow>

View File

@ -0,0 +1,16 @@
using Content.Client.UserInterface.Controls;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.XAML;
namespace Content.Client._DV.CosmicCult.UI;
[GenerateTypedNameReferences]
public sealed partial class CosmicMindwipedMenu : FancyWindow
{
public CosmicMindwipedMenu()
{
RobustXamlLoader.Load(this);
ConfirmButton.OnPressed += _ => Close();
}
}

View File

@ -0,0 +1,8 @@
using Content.Server.EUI;
namespace Content.Server._DV.CosmicCult;
/// <summary>
/// Does nothing on the server as this popup has no interactions
/// </summary>
public sealed class CosmicMindwipedEui : BaseEui;

View File

@ -1,5 +1,6 @@
using Content.Server._DV.CosmicCult.Components;
using Content.Server.Bible.Components;
using Content.Server.EUI;
using Content.Shared._DV.CosmicCult.Components.Examine;
using Content.Shared._DV.CosmicCult.Components;
using Content.Shared._DV.CosmicCult;
@ -8,10 +9,13 @@ using Content.Shared.DoAfter;
using Content.Shared.IdentityManagement;
using Content.Shared.Interaction;
using Content.Shared.Jittering;
using Content.Shared.Mind;
using Content.Shared.Mobs.Systems;
using Content.Shared.Popups;
using Content.Shared.Stunnable;
using Content.Shared.Timing;
using Content.Shared.Tools.Systems;
using Robust.Server.Player;
using Robust.Shared.Audio.Systems;
using Robust.Shared.Audio;
using Robust.Shared.Timing;
@ -30,6 +34,10 @@ public sealed class DeconversionSystem : EntitySystem
[Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly SharedToolSystem _tools = default!;
[Dependency] private readonly UseDelaySystem _delay = default!;
[Dependency] private readonly SharedStunSystem _stun = default!;
[Dependency] private readonly SharedMindSystem _mind = default!;
[Dependency] private readonly IPlayerManager _playerMan = default!;
[Dependency] private readonly EuiManager _euiMan = default!;
public override void Initialize()
{
@ -114,6 +122,11 @@ public sealed class DeconversionSystem : EntitySystem
_popup.PopupCoordinates(Loc.GetString("cleanse-deconvert-attempt-rebound"), targetPosition, PopupType.MediumCaution);
_damageable.TryChangeDamage(args.User, censer.FailedDeconversionDamage, true);
_damageable.TryChangeDamage(args.Target, censer.FailedDeconversionDamage, true);
_stun.TryKnockdown(target.Value, TimeSpan.FromSeconds(2), true);
if (_mind.TryGetMind(target.Value, out _, out var mind) && _playerMan.TryGetSessionById(mind.UserId, out var session))
{
_euiMan.OpenEui(new CosmicMindwipedEui(), session);
}
}
args.Handled = true;
}

View File

@ -131,6 +131,7 @@ cosmiccult-chantry-powerup = The vacuous chantry flares to life!
cosmiccult-ui-deconverted-title = Deconverted
cosmiccult-ui-converted-title = Converted
cosmiccult-ui-mindwiped-title = Mindwiped
cosmiccult-ui-roundstart-title = The Unknown
cosmiccult-ui-converted-text-1 =
@ -151,6 +152,12 @@ cosmiccult-ui-deconverted-text-2 =
You have lost all memories pertaining to the Cosmic Cult.
If you are converted back, these memories will return.
cosmiccult-ui-mindwiped-text-1 =
You have been mindwiped with a censer.
cosmiccult-ui-mindwiped-text-2 =
You no longer remember anything that happened during this round.
There is no way to recover your memory.
cosmiccult-ui-popup-confirm = Confirm

View File

@ -29,4 +29,3 @@
back:
- Bible
- RubberStampChaplain
- CosmicCenser # DeltaV - Cosmic Cult

View File

@ -50,4 +50,3 @@
storage:
back:
- Flash
- CosmicCenser # DeltaV - Cosmic Cult

View File

@ -87,6 +87,7 @@
- id: EpistemicsTechFabCircuitboard
- id: LunchboxCommandFilledRandom
prob: 0.3
- id: CosmicCenser
- type: entityTable
id: LockerFillHeadOfSecurityDeltaV

View File

@ -9,7 +9,7 @@
parent: BaseItem
id: CosmicCenser
name: ardent censer
description: Cleanses and sanctifies the air around it.
description: Cleanses and sanctifies the air around it. If used on another being, it would irreversibly wipe their memories.
components:
- type: Item
size: Small
@ -35,21 +35,21 @@
failedDeconversionDamage:
types:
Cold: 80
Asphyxiation: 40
- type: Tool
qualities: Censer
- type: Welder
fuelSolutionName: Censer
fuelReagent: Holywater
fuelReagent: MindbreakerToxin
fuelConsumption: 0.5
- type: RefillableSolution
solution: Censer
- type: SolutionContainerManager
solutions:
Censer:
reagents:
- ReagentId: Holywater
Quantity: 100
maxVol: 100
- ReagentId: MindbreakerToxin
Quantity: 50
maxVol: 50
- type: ItemTogglePointLight
- type: ToggleableLightVisuals
spriteLayer: flame