]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Prototype-ize Mind (#41384)
authorAiden <28298836+Aidenkrz@users.noreply.github.com>
Mon, 10 Nov 2025 18:06:18 +0000 (12:06 -0600)
committerGitHub <noreply@github.com>
Mon, 10 Nov 2025 18:06:18 +0000 (18:06 +0000)
* Use MindBase prototype for mind creation

* Create mind.yml

* Add ContainerContainer

Content.Shared/Mind/SharedMindSystem.cs
Resources/Prototypes/Entities/Virtual/mind.yml [new file with mode: 0644]

index 309f37be3ffec123f933aa35e947ae83685e9241..a7d3357f00f822e8859d6ecb4b616abd7705d4b2 100644 (file)
@@ -20,6 +20,7 @@ using Robust.Shared.Containers;
 using Robust.Shared.Map;
 using Robust.Shared.Network;
 using Robust.Shared.Player;
+using Robust.Shared.Prototypes;
 using Robust.Shared.Random;
 using Robust.Shared.Utility;
 
@@ -43,6 +44,8 @@ public abstract partial class SharedMindSystem : EntitySystem
 
     private HashSet<Entity<MindComponent>> _pickingMinds = new();
 
+    private readonly EntProtoId _mindProto = "MindBase";
+
     public override void Initialize()
     {
         base.Initialize();
@@ -226,7 +229,7 @@ public abstract partial class SharedMindSystem : EntitySystem
 
     public Entity<MindComponent> CreateMind(NetUserId? userId, string? name = null)
     {
-        var mindId = Spawn(null, MapCoordinates.Nullspace);
+        var mindId = Spawn(_mindProto, MapCoordinates.Nullspace);
         _metadata.SetEntityName(mindId, name == null ? "mind" : $"mind ({name})");
         var mind = EnsureComp<MindComponent>(mindId);
         mind.CharacterName = name;
diff --git a/Resources/Prototypes/Entities/Virtual/mind.yml b/Resources/Prototypes/Entities/Virtual/mind.yml
new file mode 100644 (file)
index 0000000..33e9ba2
--- /dev/null
@@ -0,0 +1,10 @@
+- type: entity
+  id: MindBase
+  name: mind
+  categories: [ HideSpawnMenu ]
+  components:
+  - type: Mind
+  - type: ContainerContainer
+    containers:
+      mind_roles: !type:Container
+        ents: []