Merge pull request #3179 from Owain94/interpolation-blacklist

This commit is contained in:
Owain van Brakel
2022-04-29 20:07:48 +02:00
committed by GitHub
3 changed files with 13 additions and 4 deletions

View File

@@ -25,6 +25,7 @@
package net.runelite.mixins; package net.runelite.mixins;
import net.runelite.api.DialogOption; import net.runelite.api.DialogOption;
import net.runelite.api.ObjectID;
import net.runelite.api.events.DialogProcessed; import net.runelite.api.events.DialogProcessed;
import net.runelite.api.events.DynamicObjectAnimationChanged; import net.runelite.api.events.DynamicObjectAnimationChanged;
import net.runelite.api.mixins.Copy; import net.runelite.api.mixins.Copy;
@@ -75,7 +76,7 @@ public abstract class RSDynamicObjectMixin implements RSDynamicObject
@Inject @Inject
public void onAnimCycleCountChanged(int idx) public void onAnimCycleCountChanged(int idx)
{ {
if (client.isInterpolateObjectAnimations()) if (client.isInterpolateObjectAnimations() && this.getId() != ObjectID.WATER_WHEEL_26671)
{ {
// sets the packed anim frame with the frame cycle // sets the packed anim frame with the frame cycle
int objectFrameCycle = client.getGameCycle() - getAnimCycleCount(); int objectFrameCycle = client.getGameCycle() - getAnimCycleCount();

View File

@@ -28,6 +28,7 @@ import java.awt.Polygon;
import java.awt.Shape; import java.awt.Shape;
import net.runelite.api.AnimationID; import net.runelite.api.AnimationID;
import net.runelite.api.NPCComposition; import net.runelite.api.NPCComposition;
import net.runelite.api.NpcID;
import net.runelite.api.Perspective; import net.runelite.api.Perspective;
import net.runelite.api.coords.LocalPoint; import net.runelite.api.coords.LocalPoint;
import net.runelite.api.events.NpcChanged; import net.runelite.api.events.NpcChanged;
@@ -140,8 +141,15 @@ public abstract class RSNPCMixin implements RSNPC
public RSModel copy$getModel() public RSModel copy$getModel()
{ {
if (!client.isInterpolateNpcAnimations() if (!client.isInterpolateNpcAnimations()
|| getAnimation() == AnimationID.HELLHOUND_DEFENCE) || this.getAnimation() == AnimationID.HELLHOUND_DEFENCE
{ || this.getAnimation() == 8270
|| this.getAnimation() == 8271
|| this.getPoseAnimation() == 5583
|| this.getId() == NpcID.WYRM && this.getAnimation() == AnimationID.IDLE
|| this.getId() == NpcID.TREE_SPIRIT && this.getAnimation() == AnimationID.IDLE
|| this.getId() == NpcID.TREE_SPIRIT_6380 && this.getAnimation() == AnimationID.IDLE
|| this.getId() == NpcID.TREE_SPIRIT_HARD && this.getAnimation() == AnimationID.IDLE
) {
return copy$getModel(); return copy$getModel();
} }
int actionFrame = getActionFrame(); int actionFrame = getActionFrame();

View File

@@ -231,7 +231,7 @@ public abstract class RSPlayerMixin implements RSPlayer
@Replace("getModel") @Replace("getModel")
public RSModel copy$getModel() public RSModel copy$getModel()
{ {
if (!client.isInterpolatePlayerAnimations()) if (!client.isInterpolatePlayerAnimations() || this.getPoseAnimation() == 244)
{ {
return copy$getModel(); return copy$getModel();
} }