Prototype-ize Mind (#41384)

* Use MindBase prototype for mind creation

* Create mind.yml

* Add ContainerContainer
This commit is contained in:
Aiden
2025-11-10 12:06:18 -06:00
committed by GitHub
parent 00b542220b
commit 158f351900
2 changed files with 14 additions and 1 deletions

View 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;

View File

@@ -0,0 +1,10 @@
- type: entity
id: MindBase
name: mind
categories: [ HideSpawnMenu ]
components:
- type: Mind
- type: ContainerContainer
containers:
mind_roles: !type:Container
ents: []