finish upstream

This commit is contained in:
TheRealNull
2021-01-03 19:02:15 -05:00
parent 1d461f38ff
commit 751d2c1c6e
35 changed files with 146 additions and 123 deletions

View File

@@ -69,6 +69,7 @@ public class ExternalPluginClient
.newBuilder()
.addPathSegments("manifest.js")
.build();
System.out.println(manifest.uri());
try (Response res = okHttpClient.newCall(new Request.Builder().url(manifest).build()).execute())
{
if (res.code() != 200)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,15 +0,0 @@
runelite.version=@project.version@
runescape.version=@rs.version@
open.osrs.discord.appid=627741263881568257
runelite.discord.invite=https://discord.gg/openosrs
runelite.github.link=https://github.com/open-osrs/runelite
runelite.wiki.link=https://github.com/open-osrs/runelite/wiki
runelite.patreon.link=https://www.patreon.com/openosrs
open.osrs.title=OpenOSRS
open.osrs.version=@open.osrs.version@
open.osrs.builddate=@open.osrs.builddate@
runelite.wiki.troubleshooting.link=https://github.com/open-osrs/runelite/wiki/Troubleshooting-problems-with-the-client
runelite.wiki.building.link=https://github.com/open-osrs/runelite/wiki/Building-with-IntelliJ-IDEA
runelite.dnschange.link=https://1.1.1.1/dns/
plugin.path=@plugin.path@
runelite.imgur.client.id=30d71e5f6860809

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

View File

@@ -40,6 +40,7 @@ void main() {
int uvOffset = minfo.uvOffset;
int flags = minfo.flags;
ivec4 pos = ivec4(minfo.x, minfo.y, minfo.z, 0);
if (localId >= size) {
return;
}
@@ -78,4 +79,4 @@ void main() {
uvout[outOffset + myOffset * 3 + 1] = uv[uvOffset + localId * 3 + 1];
uvout[outOffset + myOffset * 3 + 2] = uv[uvOffset + localId * 3 + 2];
}
}
}

View File

@@ -43,26 +43,29 @@ out vec4 FragColor;
#include colorblind.glsl
void main() {
int hsl = int(fHsl);
vec3 rgb = hslToRgb(hsl) * smoothBanding + Color.rgb * (1.f - smoothBanding);
vec4 smoothColor = vec4(rgb, Color.a);
vec4 c;
if (textureId > 0) {
int textureIdx = textureId - 1;
vec2 uv = fUv;
vec2 animatedUv = uv + textureOffsets[textureIdx];
vec2 animatedUv = fUv + textureOffsets[textureIdx];
vec4 textureColor = texture(textures, vec3(animatedUv, float(textureIdx)));
vec4 textureColorBrightness = pow(textureColor, vec4(brightness, brightness, brightness, 1.0f));
smoothColor = textureColorBrightness * smoothColor;
// textured triangles hsl is a 7 bit lightness 2-126
float light = fHsl / 127.f;
c = textureColorBrightness * vec4(light, light, light, 1.f);
} else {
// pick interpolated hsl or rgb depending on smooth banding setting
vec3 rgb = hslToRgb(int(fHsl)) * smoothBanding + Color.rgb * (1.f - smoothBanding);
c = vec4(rgb, Color.a);
}
if (colorBlindMode > 0) {
smoothColor.rgb = colorblind(colorBlindMode, smoothColor.rgb);
c.rgb = colorblind(colorBlindMode, c.rgb);
}
vec3 mixedColor = mix(smoothColor.rgb, fogColor.rgb, fogAmount);
FragColor = vec4(mixedColor, smoothColor.a);
vec3 mixedColor = mix(c.rgb, fogColor.rgb, fogAmount);
FragColor = vec4(mixedColor, c.a);
}

View File

@@ -34,6 +34,7 @@ uniform int samplingMode;
uniform ivec2 sourceDimensions;
uniform ivec2 targetDimensions;
uniform int colorBlindMode;
uniform vec4 alphaOverlay;
#include scale/bicubic.glsl
#include scale/xbr_lv2_frag.glsl
@@ -44,6 +45,13 @@ in XBRTable xbrTable;
out vec4 FragColor;
vec4 alphaBlend(vec4 src, vec4 dst) {
return vec4(
src.rgb + dst.rgb * (1.0f - src.a),
src.a + dst.a * (1.0f - src.a)
);
}
void main() {
vec4 c;
@@ -51,14 +59,17 @@ void main() {
case SAMPLING_CATROM:
case SAMPLING_MITCHELL:
c = textureCubic(tex, TexCoord, samplingMode);
c = alphaBlend(c, alphaOverlay);
c.rgb = colorblind(colorBlindMode, c.rgb);
break;
case SAMPLING_XBR:
c = textureXBR(tex, TexCoord, xbrTable, ceil(1.0 * targetDimensions.x / sourceDimensions.x));
c = alphaBlend(c, alphaOverlay);
c.rgb = colorblind(colorBlindMode, c.rgb);
break;
default: // NEAREST or LINEAR, which uses GL_TEXTURE_MIN_FILTER/GL_TEXTURE_MAG_FILTER to affect sampling
c = texture(tex, TexCoord);
c = alphaBlend(c, alphaOverlay);
c.rgb = colorblind(colorBlindMode, c.rgb);
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 673 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 384 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 580 B

View File

@@ -360,6 +360,12 @@
"name": "Extended Antifire (3)",
"xp": 82.5
},
{
"level": 84,
"icon": 11951,
"name": "Extended Antifire (4)",
"xp": 110
},
{
"level": 86,
"icon": 24635,
@@ -378,6 +384,12 @@
"name": "Anti-venom(3)",
"xp": 90
},
{
"level": 87,
"icon": 12905,
"name": "Anti-venom(4)",
"xp": 120
},
{
"level": 90,
"icon": 12695,
@@ -386,14 +398,14 @@
},
{
"level": 92,
"icon": 21981,
"name": "Super Antifire (3)",
"icon": 21978,
"name": "Super Antifire (4)",
"xp": 130
},
{
"level": 94,
"icon": 12915,
"name": "Anti-venom+(3)",
"icon": 12913,
"name": "Anti-venom+(4)",
"xp": 125
},
{

View File

@@ -974,7 +974,7 @@ c 7 4
#100
R 19 19 21 20
// Cosmic renderable's plane
// Cosmic entity's plane
#040404
r 32 75

View File

@@ -244,6 +244,87 @@ public abstract class RSSceneMixin implements RSScene
}
}
}
for (int z = minLevel; z < maxY; ++z)
{
RSTile[][] planeTiles = tiles[z];
for (int x = -distance; x <= 0; ++x)
{
int var10 = x + screenCenterX;
int var16 = screenCenterX - x;
if (var10 >= minTileX || var16 < maxTileX)
{
for (int y = -distance; y <= 0; ++y)
{
int var13 = y + screenCenterZ;
int var14 = screenCenterZ - y;
if (var10 >= minTileX)
{
if (var13 >= minTileZ)
{
RSTile tile = planeTiles[var10][var13];
if (tile != null && tile.isDraw())
{
draw(tile, true);
}
}
if (var14 < maxTileZ)
{
RSTile tile = planeTiles[var10][var14];
if (tile != null && tile.isDraw())
{
draw(tile, true);
}
}
}
if (var16 < maxTileX)
{
if (var13 >= minTileZ)
{
RSTile tile = planeTiles[var16][var13];
if (tile != null && tile.isDraw())
{
draw(tile, true);
}
}
if (var14 < maxTileZ)
{
RSTile tile = planeTiles[var16][var14];
if (tile != null && tile.isDraw())
{
draw(tile, true);
}
}
}
if (client.getTileUpdateCount() == 0)
{
if (!isGpu && (client.getOculusOrbState() != 0 && !client.getComplianceValue("orbInteraction")))
{
client.setEntitiesAtMouseCount(0);
}
client.setCheckClick(false);
if (!checkClick)
{
client.setViewportWalking(false);
}
client.getCallbacks().drawScene();
if (client.getDrawCallbacks() != null)
{
client.getDrawCallbacks().postDrawScene();
}
return;
}
}
}
}
}
outer:
for (int z = minLevel; z < maxY; ++z)
{
@@ -266,7 +347,7 @@ public abstract class RSSceneMixin implements RSScene
RSTile tile = planeTiles[var10][var13];
if (tile != null && tile.isDraw())
{
draw(tile, true);
draw(tile, false);
}
}
@@ -275,7 +356,7 @@ public abstract class RSSceneMixin implements RSScene
RSTile tile = planeTiles[var10][var14];
if (tile != null && tile.isDraw())
{
draw(tile, true);
draw(tile, false);
}
}
}
@@ -287,7 +368,7 @@ public abstract class RSSceneMixin implements RSScene
RSTile tile = planeTiles[var16][var13];
if (tile != null && tile.isDraw())
{
draw(tile, true);
draw(tile, false);
}
}
@@ -296,7 +377,7 @@ public abstract class RSSceneMixin implements RSScene
RSTile tile = planeTiles[var16][var14];
if (tile != null && tile.isDraw())
{
draw(tile, true);
draw(tile, false);
}
}
}
@@ -311,81 +392,6 @@ public abstract class RSSceneMixin implements RSScene
}
}
for (int z = minLevel; z < maxY; ++z)
{
RSTile[][] planeTiles = tiles[z];
for (int x = -distance; x <= 0; ++x)
{
int var10 = x + screenCenterX;
int var16 = screenCenterX - x;
if (var10 >= minTileX || var16 < maxTileX)
{
for (int y = -distance; y <= 0; ++y)
{
int var13 = y + screenCenterZ;
int var14 = screenCenterZ - y;
if (var10 >= minTileX)
{
if (var13 >= minTileZ)
{
RSTile tile = planeTiles[var10][var13];
if (tile != null && tile.isDraw())
{
draw(tile, false);
}
}
if (var14 < maxTileZ)
{
RSTile tile = planeTiles[var10][var14];
if (tile != null && tile.isDraw())
{
draw(tile, false);
}
}
}
if (var16 < maxTileX)
{
if (var13 >= minTileZ)
{
RSTile tile = planeTiles[var16][var13];
if (tile != null && tile.isDraw())
{
draw(tile, false);
}
}
if (var14 < maxTileZ)
{
RSTile tile = planeTiles[var16][var14];
if (tile != null && tile.isDraw())
{
draw(tile, false);
}
}
}
if (client.getTileUpdateCount() == 0)
{
if (!isGpu && (client.getOculusOrbState() != 0 && !client.getComplianceValue("orbInteraction")))
{
client.setEntitiesAtMouseCount(0);
}
client.setCheckClick(false);
if (!checkClick)
{
client.setViewportWalking(false);
}
client.getCallbacks().drawScene();
return;
}
}
}
}
}
if (!isGpu && (client.getOculusOrbState() != 0 && !client.getComplianceValue("orbInteraction")))
{
client.setEntitiesAtMouseCount(0);
@@ -398,6 +404,10 @@ public abstract class RSSceneMixin implements RSScene
client.setViewportWalking(false);
}
client.getCallbacks().drawScene();
if (client.getDrawCallbacks() != null)
{
client.getDrawCallbacks().postDrawScene();
}
}
@Copy("newWallDecoration")
@@ -790,9 +800,9 @@ public abstract class RSSceneMixin implements RSScene
@MethodHook(value = "addTile", end = true)
@Inject
public void rl$addTile(int z, int x, int y, int shape, int rotation, int texture, int heightSw, int heightNw,
int heightNe, int heightSe, int underlaySwColor, int underlayNwColor, int underlayNeColor,
int underlaySeColor, int overlaySwColor, int overlayNwColor, int overlayNeColor,
int overlaySeColor, int underlayRgb, int overlayRgb)
int heightNe, int heightSe, int underlaySwColor, int underlayNwColor, int underlayNeColor,
int underlaySeColor, int overlaySwColor, int overlayNwColor, int overlayNeColor,
int overlaySeColor, int underlayRgb, int overlayRgb)
{
if (shape != 0 && shape != 1)
{
@@ -929,28 +939,28 @@ public abstract class RSSceneMixin implements RSScene
{
int lig = 0xFF - ((seLightness >> 1) * (seLightness >> 1) >> 8);
pixels[pixelOffset] = ((overlayRgb & 0xFF00FF) * lig & ~0xFF00FF) +
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
}
if (points[indices[shapeOffset++]] != 0)
{
int lig = 0xFF - ((seLightness * 3 + neLightness >> 3) *
(seLightness * 3 + neLightness >> 3) >> 8);
(seLightness * 3 + neLightness >> 3) >> 8);
pixels[pixelOffset + 1] = ((overlayRgb & 0xFF00FF) * lig & ~0xFF00FF) +
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
}
if (points[indices[shapeOffset++]] != 0)
{
int lig = 0xFF - ((seLightness + neLightness >> 2) *
(seLightness + neLightness >> 2) >> 8);
(seLightness + neLightness >> 2) >> 8);
pixels[pixelOffset + 2] = ((overlayRgb & 0xFF00FF) * lig & ~0xFF00FF) +
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
}
if (points[indices[shapeOffset++]] != 0)
{
int lig = 0xFF - ((seLightness + neLightness * 3 >> 3) *
(seLightness + neLightness * 3 >> 3) >> 8);
(seLightness + neLightness * 3 >> 3) >> 8);
pixels[pixelOffset + 3] = ((overlayRgb & 0xFF00FF) * lig & ~0xFF00FF) +
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
((overlayRgb & 0xFF00) * lig & 0xFF0000) >> 8;
}
}
seLightness += southDeltaLightness;
@@ -1000,11 +1010,11 @@ public abstract class RSSceneMixin implements RSScene
{
pixels[pixelOffset] = points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
pixels[pixelOffset + 1] =
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
pixels[pixelOffset + 2] =
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
pixels[pixelOffset + 3] =
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
points[indices[shapeOffset++]] != 0 ? overlayRgb : underlayRgb;
pixelOffset += width;
}
}
@@ -1033,4 +1043,4 @@ public abstract class RSSceneMixin implements RSScene
}
}
}
}
}