runelite-api: expose scene tile colors
This commit is contained in:
@@ -85,4 +85,36 @@ public interface TileModel
|
|||||||
|
|
||||||
int getBufferLen();
|
int getBufferLen();
|
||||||
void setBufferLen(int bufferLen);
|
void setBufferLen(int bufferLen);
|
||||||
|
|
||||||
|
int getUnderlaySwColor();
|
||||||
|
|
||||||
|
void setUnderlaySwColor(int color);
|
||||||
|
|
||||||
|
int getUnderlaySeColor();
|
||||||
|
|
||||||
|
void setUnderlaySeColor(int color);
|
||||||
|
|
||||||
|
int getUnderlayNeColor();
|
||||||
|
|
||||||
|
void setUnderlayNeColor(int color);
|
||||||
|
|
||||||
|
int getUnderlayNwColor();
|
||||||
|
|
||||||
|
void setUnderlayNwColor(int color);
|
||||||
|
|
||||||
|
int getOverlaySwColor();
|
||||||
|
|
||||||
|
void setOverlaySwColor(int color);
|
||||||
|
|
||||||
|
int getOverlaySeColor();
|
||||||
|
|
||||||
|
void setOverlaySeColor(int color);
|
||||||
|
|
||||||
|
int getOverlayNeColor();
|
||||||
|
|
||||||
|
void setOverlayNeColor(int color);
|
||||||
|
|
||||||
|
int getOverlayNwColor();
|
||||||
|
|
||||||
|
void setOverlayNwColor(int color);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import net.runelite.api.coords.WorldPoint;
|
|||||||
import net.runelite.api.hooks.DrawCallbacks;
|
import net.runelite.api.hooks.DrawCallbacks;
|
||||||
import net.runelite.api.mixins.Copy;
|
import net.runelite.api.mixins.Copy;
|
||||||
import net.runelite.api.mixins.Inject;
|
import net.runelite.api.mixins.Inject;
|
||||||
|
import net.runelite.api.mixins.MethodHook;
|
||||||
import net.runelite.api.mixins.Mixin;
|
import net.runelite.api.mixins.Mixin;
|
||||||
import net.runelite.api.mixins.Replace;
|
import net.runelite.api.mixins.Replace;
|
||||||
import net.runelite.api.mixins.Shadow;
|
import net.runelite.api.mixins.Shadow;
|
||||||
@@ -787,4 +788,28 @@ public abstract class RSSceneMixin implements RSScene
|
|||||||
|
|
||||||
client.updateItemPile(sceneX, sceneY);
|
client.updateItemPile(sceneX, sceneY);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@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 heightSe,
|
||||||
|
int heightNe, int heightNw, int underlaySwColor, int underlaySeColor, int underlayNeColor,
|
||||||
|
int underlayNwColor, int overlaySwColor, int overlaySeColor, int overlayNeColor,
|
||||||
|
int overlayNwColor, int underlayRgb, int overlayRgb)
|
||||||
|
{
|
||||||
|
if (shape != 0 && shape != 1)
|
||||||
|
{
|
||||||
|
Tile tile = getTiles()[z][x][y];
|
||||||
|
TileModel sceneTileModel = tile.getTileModel();
|
||||||
|
|
||||||
|
sceneTileModel.setUnderlaySwColor(underlaySwColor);
|
||||||
|
sceneTileModel.setUnderlaySeColor(underlaySeColor);
|
||||||
|
sceneTileModel.setUnderlayNeColor(underlayNeColor);
|
||||||
|
sceneTileModel.setUnderlayNwColor(underlayNwColor);
|
||||||
|
|
||||||
|
sceneTileModel.setOverlaySwColor(overlaySwColor);
|
||||||
|
sceneTileModel.setOverlaySeColor(overlaySeColor);
|
||||||
|
sceneTileModel.setOverlayNeColor(overlayNeColor);
|
||||||
|
sceneTileModel.setOverlayNwColor(overlayNwColor);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,30 @@ public abstract class RSTileModelMixin implements RSTileModel
|
|||||||
@Inject
|
@Inject
|
||||||
private int rl$modelBufferLen;
|
private int rl$modelBufferLen;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int underlaySwColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int underlaySeColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int underlayNeColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int underlayNwColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int overlaySwColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int overlaySeColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int overlayNeColor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private int overlayNwColor;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
@Override
|
@Override
|
||||||
public int getBufferOffset()
|
public int getBufferOffset()
|
||||||
@@ -57,4 +81,116 @@ public abstract class RSTileModelMixin implements RSTileModel
|
|||||||
{
|
{
|
||||||
rl$modelBufferLen = bufferLen;
|
rl$modelBufferLen = bufferLen;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getUnderlaySwColor()
|
||||||
|
{
|
||||||
|
return underlaySwColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setUnderlaySwColor(int color)
|
||||||
|
{
|
||||||
|
underlaySwColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getUnderlaySeColor()
|
||||||
|
{
|
||||||
|
return underlaySeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setUnderlaySeColor(int color)
|
||||||
|
{
|
||||||
|
underlaySeColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getUnderlayNeColor()
|
||||||
|
{
|
||||||
|
return underlayNeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setUnderlayNeColor(int color)
|
||||||
|
{
|
||||||
|
underlayNeColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getUnderlayNwColor()
|
||||||
|
{
|
||||||
|
return underlayNwColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setUnderlayNwColor(int color)
|
||||||
|
{
|
||||||
|
underlayNwColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getOverlaySwColor()
|
||||||
|
{
|
||||||
|
return overlaySwColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setOverlaySwColor(int color)
|
||||||
|
{
|
||||||
|
overlaySwColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getOverlaySeColor()
|
||||||
|
{
|
||||||
|
return overlaySeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setOverlaySeColor(int color)
|
||||||
|
{
|
||||||
|
overlaySeColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getOverlayNeColor()
|
||||||
|
{
|
||||||
|
return overlayNeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setOverlayNeColor(int color)
|
||||||
|
{
|
||||||
|
overlayNeColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public int getOverlayNwColor()
|
||||||
|
{
|
||||||
|
return overlayNwColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@Override
|
||||||
|
public void setOverlayNwColor(int color)
|
||||||
|
{
|
||||||
|
overlayNwColor = color;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user