project: Mixins

This commit is contained in:
Owain van Brakel
2022-01-06 00:52:57 +01:00
parent c780009a99
commit bdbcfbe416
7 changed files with 81 additions and 16 deletions

View File

@@ -121,7 +121,7 @@ public abstract class RSGameObjectMixin implements RSGameObject
public Angle getOrientation() public Angle getOrientation()
{ {
int orientation = getModelOrientation(); int orientation = getModelOrientation();
int rotation = (getFlags() >> 6) & 3; int rotation = (getConfig() >> 6) & 3;
return new Angle(rotation * 512 + orientation); return new Angle(rotation * 512 + orientation);
} }

View File

@@ -1,10 +1,6 @@
package net.runelite.mixins; package net.runelite.mixins;
import net.runelite.api.HeadIcon; import net.runelite.api.HeadIcon;
import static net.runelite.api.HeadIcon.MAGIC;
import static net.runelite.api.HeadIcon.MELEE;
import static net.runelite.api.HeadIcon.RANGED;
import static net.runelite.api.HeadIcon.RANGE_MAGE;
import net.runelite.api.events.NpcActionChanged; import net.runelite.api.events.NpcActionChanged;
import net.runelite.api.mixins.FieldHook; import net.runelite.api.mixins.FieldHook;
import net.runelite.api.mixins.Inject; import net.runelite.api.mixins.Inject;
@@ -26,13 +22,35 @@ public abstract class RSNPCCompositionMixin implements RSNPCComposition
switch (getRsOverheadIcon()) switch (getRsOverheadIcon())
{ {
case 0: case 0:
return MELEE; return HeadIcon.MELEE;
case 1: case 1:
return RANGED; return HeadIcon.RANGED;
case 2: case 2:
return MAGIC; return HeadIcon.MAGIC;
case 3:
return HeadIcon.RETRIBUTION;
case 4:
return HeadIcon.SMITE;
case 5:
return HeadIcon.REDEMPTION;
case 6: case 6:
return RANGE_MAGE; return HeadIcon.RANGE_MAGE;
case 7:
return HeadIcon.RANGE_MELEE;
case 8:
return HeadIcon.MAGE_MELEE;
case 9:
return HeadIcon.RANGE_MAGE_MELEE;
case 10:
return HeadIcon.WRATH;
case 11:
return HeadIcon.SOUL_SPLIT;
case 12:
return HeadIcon.DEFLECT_MELEE;
case 13:
return HeadIcon.DEFLECT_RANGE;
case 14:
return HeadIcon.DEFLECT_MAGE;
default: default:
return null; return null;
} }

View File

@@ -31,7 +31,13 @@ import net.runelite.api.HeadIcon;
import net.runelite.api.Model; import net.runelite.api.Model;
import net.runelite.api.Perspective; import net.runelite.api.Perspective;
import net.runelite.api.SkullIcon; import net.runelite.api.SkullIcon;
import static net.runelite.api.SkullIcon.*; import static net.runelite.api.SkullIcon.DEAD_MAN_FIVE;
import static net.runelite.api.SkullIcon.DEAD_MAN_FOUR;
import static net.runelite.api.SkullIcon.DEAD_MAN_ONE;
import static net.runelite.api.SkullIcon.DEAD_MAN_THREE;
import static net.runelite.api.SkullIcon.DEAD_MAN_TWO;
import static net.runelite.api.SkullIcon.SKULL;
import static net.runelite.api.SkullIcon.SKULL_FIGHT_PIT;
import net.runelite.api.coords.LocalPoint; import net.runelite.api.coords.LocalPoint;
import net.runelite.api.events.OverheadPrayerChanged; import net.runelite.api.events.OverheadPrayerChanged;
import net.runelite.api.events.PlayerChanged; import net.runelite.api.events.PlayerChanged;
@@ -129,12 +135,41 @@ public abstract class RSPlayerMixin implements RSPlayer
@Inject @Inject
private HeadIcon getHeadIcon(int overheadIcon) private HeadIcon getHeadIcon(int overheadIcon)
{ {
if (overheadIcon == -1) switch (overheadIcon)
{ {
return null; case 0:
return HeadIcon.MELEE;
case 1:
return HeadIcon.RANGED;
case 2:
return HeadIcon.MAGIC;
case 3:
return HeadIcon.RETRIBUTION;
case 4:
return HeadIcon.SMITE;
case 5:
return HeadIcon.REDEMPTION;
case 6:
return HeadIcon.RANGE_MAGE;
case 7:
return HeadIcon.RANGE_MELEE;
case 8:
return HeadIcon.MAGE_MELEE;
case 9:
return HeadIcon.RANGE_MAGE_MELEE;
case 10:
return HeadIcon.WRATH;
case 11:
return HeadIcon.SOUL_SPLIT;
case 12:
return HeadIcon.DEFLECT_MELEE;
case 13:
return HeadIcon.DEFLECT_RANGE;
case 14:
return HeadIcon.DEFLECT_MAGE;
default:
return null;
} }
return HeadIcon.values()[overheadIcon];
} }
@Inject @Inject

View File

@@ -20,4 +20,8 @@ public interface RSFloorDecoration extends GroundObject
RSRenderable getRenderable(); RSRenderable getRenderable();
void setPlane(int plane); void setPlane(int plane);
@Import("flags")
@Override
int getConfig();
} }

View File

@@ -39,7 +39,8 @@ public interface RSGameObject extends GameObject
long getHash(); long getHash();
@Import("flags") @Import("flags")
int getFlags(); @Override
int getConfig();
int getPlane(); int getPlane();

View File

@@ -55,6 +55,9 @@ public interface RSScriptEvent extends ScriptEvent
@Import("mouseX") @Import("mouseX")
int getMouseX(); int getMouseX();
@Import("mouseY")
int getMouseY();
@Import("keyTyped") @Import("keyTyped")
// shit name // shit name
int getTypedKeyCode(); int getTypedKeyCode();

View File

@@ -33,4 +33,8 @@ public interface RSWallDecoration extends DecorativeObject
RSRenderable getRenderable2(); RSRenderable getRenderable2();
void setPlane(int plane); void setPlane(int plane);
@Import("flags")
@Override
int getConfig();
} }