fix: Fixes issue with cached static gump strings. Fixes bad gump colors (#1771)
### Summary - Fixes an issue that causes CUO to crash due to bad string caching in static gumps - Fixes wrong/bad 16bit html gump hues. - Moves `C16232` (16-bit to 32-bit) and `C32216` (32-bit to 16-bit) to Utility class for broader use. TODO: - Some gumps have different 32bit (for string content) vs 16bit (for localized content) strings. Does this matter?
This commit is contained in:
parent
a001eb03da
commit
622250b8f4
27 changed files with 129 additions and 155 deletions
|
|
@ -1528,4 +1528,28 @@ public static class Utility
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static int C16232(this int c16)
|
||||
{
|
||||
c16 &= 0x7FFF;
|
||||
|
||||
var r = ((c16 >> 10) & 0x1F) << 3;
|
||||
var g = ((c16 >> 05) & 0x1F) << 3;
|
||||
var b = (c16 & 0x1F) << 3;
|
||||
|
||||
return (r << 16) | (g << 8) | b;
|
||||
}
|
||||
|
||||
public static int C16216(this int c16) => c16 & 0x7FFF;
|
||||
|
||||
public static int C32216(this int c32)
|
||||
{
|
||||
c32 &= 0xFFFFFF;
|
||||
|
||||
var r = ((c32 >> 16) & 0xFF) >> 3;
|
||||
var g = ((c32 >> 08) & 0xFF) >> 3;
|
||||
var b = (c32 & 0xFF) >> 3;
|
||||
|
||||
return (r << 10) | (g << 5) | b;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue