Invalid species fallback on spawn/profile validation (#14675)
* if a player's profile has an invalid species, station spawning will always try to fallback to the default humanoid species * validation always ensures that if a species can't be indexed, the species falls back to the default species
This commit is contained in:
@@ -105,9 +105,12 @@ public sealed class StationSpawningSystem : EntitySystem
|
||||
return jobEntity;
|
||||
}
|
||||
|
||||
var entity = EntityManager.SpawnEntity(
|
||||
_prototypeManager.Index<SpeciesPrototype>(profile?.Species ?? HumanoidAppearanceSystem.DefaultSpecies).Prototype,
|
||||
coordinates);
|
||||
if (!_prototypeManager.TryIndex(profile?.Species ?? HumanoidAppearanceSystem.DefaultSpecies, out SpeciesPrototype? species))
|
||||
{
|
||||
species = _prototypeManager.Index<SpeciesPrototype>(HumanoidAppearanceSystem.DefaultSpecies);
|
||||
}
|
||||
|
||||
var entity = EntityManager.SpawnEntity(species.Prototype, coordinates);
|
||||
|
||||
if (job?.StartingGear != null)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user