mixins: use inverseAlpha, reset viewportColor

This commit is contained in:
zeruth
2021-02-19 03:11:35 -05:00
parent 197447f048
commit 669865d8d4
2 changed files with 3 additions and 2 deletions

View File

@@ -1575,7 +1575,7 @@ public abstract class RSClientMixin implements RSClient
int vpc = viewportColor;
int c1 = (alpha * (tc & 0xff00ff) >> 8 & 0xFF00FF) + (alpha * (tc & 0x00FF00) >> 8 & 0x00FF00);
int c2 = (inverseAlpha * (vpc & 0xff00ff) >> 8 & 0xFF00FF) + (inverseAlpha * (vpc & 0x00FF00) >> 8 & 0x00FF00);
int outAlpha = alpha + ((vpc >>> 24) * (255 - alpha) * 0x8081 >>> 23);
int outAlpha = inverseAlpha + ((vpc >>> 24) * (255 - alpha) * 0x8081 >>> 23);
viewportColor = outAlpha << 24 | c1 + c2;
widget.setHidden(true);
hiddenWidgets.add(widget);

View File

@@ -87,7 +87,8 @@ public abstract class RSGameEngineMixin implements RSGameEngine
DrawCallbacks drawCallbacks = client.getDrawCallbacks();
if (drawCallbacks != null)
{
drawCallbacks.draw(-viewportColor);
drawCallbacks.draw(viewportColor);
viewportColor = 0;
}
}