From e1b790eecdd88d5696ac403321ed593080df6194 Mon Sep 17 00:00:00 2001
From: Samuka <47865393+Samuka-C@users.noreply.github.com>
Date: Thu, 1 Jan 2026 18:23:34 -0300
Subject: [PATCH] Make xenoborg thrusters anti-easy-sabotagge (#42201)
* code
* cant be toggled
* can't unwrench
* no rotating it
* comments
* change from PreventToggle to CanToggle
* commentary
* Update Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
---
Content.Server/Shuttles/Components/ThrusterComponent.cs | 6 ++++++
Content.Server/Shuttles/Systems/ThrusterSystem.cs | 2 +-
.../Prototypes/Entities/Structures/Shuttles/thrusters.yml | 8 ++++++++
3 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/Content.Server/Shuttles/Components/ThrusterComponent.cs b/Content.Server/Shuttles/Components/ThrusterComponent.cs
index 20f020743d..2a68b4f290 100644
--- a/Content.Server/Shuttles/Components/ThrusterComponent.cs
+++ b/Content.Server/Shuttles/Components/ThrusterComponent.cs
@@ -10,6 +10,12 @@ namespace Content.Server.Shuttles.Components
[Access(typeof(ThrusterSystem))]
public sealed partial class ThrusterComponent : Component
{
+ ///
+ /// If the thruster can be toggled on or off via interaction
+ ///
+ [DataField]
+ public bool CanToggle = true;
+
///
/// Whether the thruster has been force to be enabled / disabled (e.g. VV, interaction, etc.)
///
diff --git a/Content.Server/Shuttles/Systems/ThrusterSystem.cs b/Content.Server/Shuttles/Systems/ThrusterSystem.cs
index 20040ab40a..3d3cf1aa28 100644
--- a/Content.Server/Shuttles/Systems/ThrusterSystem.cs
+++ b/Content.Server/Shuttles/Systems/ThrusterSystem.cs
@@ -135,7 +135,7 @@ public sealed class ThrusterSystem : EntitySystem
private void OnActivateThruster(EntityUid uid, ThrusterComponent component, ActivateInWorldEvent args)
{
- if (args.Handled || !args.Complex)
+ if (args.Handled || !args.Complex || !component.CanToggle)
return;
component.Enabled ^= true;
diff --git a/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml b/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml
index bb43cb3b2c..e251d1bfff 100644
--- a/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml
+++ b/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml
@@ -106,6 +106,14 @@
parent: Thruster
id: ThrusterXenoborg
components:
+ # temporary solution until thruster rework
+ - type: Thruster
+ canToggle: false # no turning it off by just clicking it
+ - type: Anchorable
+ flags:
+ - Anchorable # no unwrenching it
+ - type: Rotatable
+ rotateWhileAnchored: false # no rotating it backwards so it doesn't face space
- type: Sprite
sprite: Structures/Shuttles/xenoborg_thruster.rsi
--
2.52.0