Jonqora
Greenhorn
Hello,
See photo - the iridium quality icon does not appear correctly on items of the ColoredObject class. The only roe with the correct icon in the photo is generic Aged Roe, which was created as an Object only and not as a ColoredObject.
This bug does not affect the vanilla game directly, since the affected items (class ColoredObject such as flowers, roe, and aged roe) cannot currently be obtained in iridium quality without mods. However, the bug itself originates from the game code and not from any mod. I have verified this in the code and by testing with a minimal mod loadout (and then opening the same save game with no mods at all - the issue persists).
The issue is caused by this part of the drawInMenu method. Compare code from the ColoredObject class:
With this equivalent bit of code in the Object class:
The version in ColoredObject is outdated, and predates the introduction of iridium quality levels into the game. Interestingly, this error is not present in the mobile game code, so far as I can tell - only PC (and possibly consoles, with no good way to check of course).
See photo - the iridium quality icon does not appear correctly on items of the ColoredObject class. The only roe with the correct icon in the photo is generic Aged Roe, which was created as an Object only and not as a ColoredObject.
This bug does not affect the vanilla game directly, since the affected items (class ColoredObject such as flowers, roe, and aged roe) cannot currently be obtained in iridium quality without mods. However, the bug itself originates from the game code and not from any mod. I have verified this in the code and by testing with a minimal mod loadout (and then opening the same save game with no mods at all - the issue persists).
The issue is caused by this part of the drawInMenu method. Compare code from the ColoredObject class:
Code:
spriteBatch.Draw(Game1.mouseCursors, location + new Vector2(12f, 52f + num), new Rectangle?(new Rectangle(338 + ((int) (NetFieldBase<int, NetInt>) this.quality - 1) * 8, 400, 8, 8)), Color.White * transparency, 0.0f, new Vector2(4f, 4f), (float) (3.0 * (double) scaleSize * (1.0 + (double) num)), SpriteEffects.None, layerDepth);
Code:
spriteBatch.Draw(Game1.mouseCursors, location + new Vector2(12f, 52f + num), new Microsoft.Xna.Framework.Rectangle?((int) (NetFieldBase<int, NetInt>) this.quality < 4 ? new Microsoft.Xna.Framework.Rectangle(338 + ((int) (NetFieldBase<int, NetInt>) this.quality - 1) * 8, 400, 8, 8) : new Microsoft.Xna.Framework.Rectangle(346, 392, 8, 8)), color * transparency, 0.0f, new Vector2(4f, 4f), (float) (3.0 * (double) scaleSize * (1.0 + (double) num)), SpriteEffects.None, layerDepth);
Attachments
-
103.4 KB Views: 222