Model outliner (#735)

* Model outliner

* Partial revert

* Reformat code

* Object indicators overhaul -> Hull/Clickbox/Outline (with different outline styles)

* Implement config tweak for comboboxes
(unhideValue/hideValue/enabledByValue/disabledByValue)

* Reformat modeloutliner
This commit is contained in:
sdburns1998
2019-06-27 02:50:01 +02:00
committed by Kyleeld
parent bfd11cd745
commit 9142a08f3f
18 changed files with 506 additions and 92 deletions

View File

@@ -34,7 +34,7 @@ public abstract class RSBoundaryObjectMixin implements RSBoundaryObject
}
@Inject
private Model getModelA()
public Model getModelA()
{
Renderable renderable = getRenderable1();
if (renderable == null)
@@ -53,7 +53,7 @@ public abstract class RSBoundaryObjectMixin implements RSBoundaryObject
}
@Inject
private Model getModelB()
public Model getModelB()
{
Renderable renderable = getRenderable2();
if (renderable == null)

View File

@@ -34,7 +34,8 @@ public abstract class RSFloorDecorationMixin implements RSFloorDecoration
}
@Inject
private Model getModel()
@Override
public Model getModel()
{
Renderable renderable = getRenderable();
if (renderable == null)

View File

@@ -59,7 +59,8 @@ public abstract class RSGameObjectMixin implements RSGameObject
}
@Inject
private RSModel getModel()
@Override
public RSModel getModel()
{
RSEntity renderable = getRenderable();
if (renderable == null)

View File

@@ -1,6 +1,8 @@
package net.runelite.mixins;
import java.awt.geom.Area;
import net.runelite.api.Model;
import net.runelite.api.Renderable;
import net.runelite.api.mixins.Inject;
import net.runelite.api.mixins.Mixin;
import net.runelite.rs.api.RSGroundItemPile;
@@ -31,4 +33,64 @@ public abstract class RSGroundItemPileMixin implements RSGroundItemPile
{
throw new UnsupportedOperationException();
}
@Inject
@Override
public Model getModelBottom()
{
Renderable renderable = getBottom();
if (renderable == null)
{
return null;
}
if (renderable instanceof Model)
{
return (Model) renderable;
}
else
{
return renderable.getModel();
}
}
@Inject
@Override
public Model getModelMiddle()
{
Renderable renderable = getMiddle();
if (renderable == null)
{
return null;
}
if (renderable instanceof Model)
{
return (Model) renderable;
}
else
{
return renderable.getModel();
}
}
@Inject
@Override
public Model getModelTop()
{
Renderable renderable = getTop();
if (renderable == null)
{
return null;
}
if (renderable instanceof Model)
{
return (Model) renderable;
}
else
{
return renderable.getModel();
}
}
}

View File

@@ -37,7 +37,8 @@ public abstract class RSWallDecorationMixin implements RSWallDecoration
}
@Inject
private RSModel getModel()
@Override
public RSModel getModel1()
{
RSEntity renderable = getRenderable();
if (renderable == null)
@@ -60,7 +61,8 @@ public abstract class RSWallDecorationMixin implements RSWallDecoration
}
@Inject
private RSModel getModel2()
@Override
public RSModel getModel2()
{
RSEntity renderable = getRenderable2();
if (renderable == null)
@@ -89,7 +91,7 @@ public abstract class RSWallDecorationMixin implements RSWallDecoration
Area clickbox = new Area();
LocalPoint lp = getLocalLocation();
Area clickboxA = Perspective.getClickbox(client, getModel(), 0,
Area clickboxA = Perspective.getClickbox(client, getModel1(), 0,
new LocalPoint(lp.getX() + getXOffset(), lp.getY() + getYOffset()));
Area clickboxB = Perspective.getClickbox(client, getModel2(), 0, lp);
@@ -115,7 +117,7 @@ public abstract class RSWallDecorationMixin implements RSWallDecoration
@Override
public Polygon getConvexHull()
{
RSModel model = getModel();
RSModel model = getModel1();
if (model == null)
{