What version did the issue occur in?
No response
Description
|
private void ApplyMarkings(Entity<VisualOrganMarkingsComponent> ent, EntityUid target) |
|
{ |
|
var applied = new List<Marking>(); |
|
foreach (var marking in AllMarkings(ent)) |
|
{ |
|
if (!_marking.TryGetMarking(marking, out var proto)) |
|
continue; |
|
|
|
if (!_sprite.LayerMapTryGet(target, proto.BodyPart, out var index, true)) |
|
continue; |
|
|
|
for (var i = 0; i < proto.Sprites.Count; i++) |
|
{ |
|
var sprite = proto.Sprites[i]; |
|
|
|
DebugTools.Assert(sprite is SpriteSpecifier.Rsi); |
|
if (sprite is not SpriteSpecifier.Rsi rsi) |
|
continue; |
|
|
|
var layerId = $"{proto.ID}-{rsi.RsiState}"; |
|
|
|
if (!_sprite.LayerMapTryGet(target, layerId, out _, false)) |
|
{ |
|
var layer = _sprite.AddLayer(target, sprite, index + i + 1); |
|
_sprite.LayerMapSet(target, layerId, layer); |
|
_sprite.LayerSetSprite(target, layerId, rsi); |
|
} |
|
|
|
if (marking.MarkingColors is not null && i < marking.MarkingColors.Count) |
|
_sprite.LayerSetColor(target, layerId, marking.MarkingColors[i]); |
|
else |
|
_sprite.LayerSetColor(target, layerId, Color.White); |
|
} |
|
|
|
applied.Add(marking); |
|
} |
|
ent.Comp.AppliedMarkings = applied; |
|
} |
Lost Impstation's markings shader change from #146
Reproduction
a
Additional Context
No response
What version did the issue occur in?
No response
Description
starcup/Content.Client/Body/VisualBodySystem.cs
Lines 170 to 207 in cb5f1b9
Lost Impstation's markings shader change from #146
Reproduction
a
Additional Context
No response