fixed medical cyborgs not getting movement sprites (#39747)

the fix
This commit is contained in:
lunarcomets
2025-10-10 15:03:15 -07:00
committed by GitHub
parent dca80238f0
commit b5c8ed8356
2 changed files with 19 additions and 19 deletions

View File

@@ -58,25 +58,6 @@ public sealed class BorgSwitchableTypeSystem : SharedBorgSwitchableTypeSystem
} }
} }
if (prototype.SpriteBodyMovementState is { } movementState)
{
var spriteMovement = EnsureComp<SpriteMovementComponent>(entity);
spriteMovement.NoMovementLayers.Clear();
spriteMovement.NoMovementLayers["movement"] = new PrototypeLayerData
{
State = prototype.SpriteBodyState,
};
spriteMovement.MovementLayers.Clear();
spriteMovement.MovementLayers["movement"] = new PrototypeLayerData
{
State = movementState,
};
}
else
{
RemComp<SpriteMovementComponent>(entity);
}
base.UpdateEntityAppearance(entity, prototype); base.UpdateEntityAppearance(entity, prototype);
} }
} }

View File

@@ -120,5 +120,24 @@ public abstract class SharedBorgSwitchableTypeSystem : EntitySystem
{ {
footstepModifier.FootstepSoundCollection = prototype.FootstepCollection; footstepModifier.FootstepSoundCollection = prototype.FootstepCollection;
} }
if (prototype.SpriteBodyMovementState is { } movementState)
{
var spriteMovement = EnsureComp<SpriteMovementComponent>(entity);
spriteMovement.NoMovementLayers.Clear();
spriteMovement.NoMovementLayers["movement"] = new PrototypeLayerData
{
State = prototype.SpriteBodyState,
};
spriteMovement.MovementLayers.Clear();
spriteMovement.MovementLayers["movement"] = new PrototypeLayerData
{
State = movementState,
};
}
else
{
RemComp<SpriteMovementComponent>(entity);
}
} }
} }