]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Fix another storedSprite bug (#36662)
authorNemanja <98561806+EmoGarbage404@users.noreply.github.com>
Fri, 18 Apr 2025 02:15:31 +0000 (22:15 -0400)
committerGitHub <noreply@github.com>
Fri, 18 Apr 2025 02:15:31 +0000 (12:15 +1000)
Content.Client/UserInterface/Systems/Storage/Controls/ItemGridPiece.cs

index 92035ba8d91532b103fa5c9e4f703507d692868f..d07db112c8abaa599c0504580f6b5ca386d1e01e 100644 (file)
@@ -172,14 +172,16 @@ public sealed class ItemGridPiece : Control, IEntityControl
         if (itemComponent.StoredSprite is { } storageSprite)
         {
             var scale = 2 * UIScale;
-            var offset = (((Box2) boundingGrid).Size - Vector2.One) * size + iconOffset;
             var sprite = _entityManager.System<SpriteSystem>().Frame0(storageSprite);
 
+            var sizeDifference = ((boundingGrid.Size + Vector2i.One) * _centerTexture.Size * 2 - sprite.Size) * UIScale;
+
             var spriteBox = new Box2Rotated(new Box2(0f, sprite.Height * scale, sprite.Width * scale, 0f), -iconRotation, Vector2.Zero);
             var root = spriteBox.CalcBoundingBox().BottomLeft;
             var pos = PixelPosition * 2
                       + (Parent?.GlobalPixelPosition ?? Vector2.Zero)
-                      + offset;
+                      + sizeDifference
+                      + iconOffset;
 
             handle.SetTransform(pos, iconRotation);
             var box = new UIBox2(root, root + sprite.Size * scale);