animation smoothing: fix angle bounds for rotation

This commit is contained in:
DESKTOP-G1DDN84\Denni
2018-05-29 14:32:18 +02:00
committed by Adam
parent 309665c8ff
commit 62dec90d42

View File

@@ -192,24 +192,24 @@ public abstract class RSModelMixin implements RSModel
int translateZ; int translateZ;
if (type == 2) if (type == 2)
{ {
int deltaX = nextTranslateX - currentTranslateX & 0x3fff; int deltaX = nextTranslateX - currentTranslateX & 0xFF;
int deltaY = nextTranslateY - currentTranslateY & 0x3fff; int deltaY = nextTranslateY - currentTranslateY & 0xFF;
int deltaZ = nextTranslateZ - currentTranslateZ & 0x3fff; int deltaZ = nextTranslateZ - currentTranslateZ & 0xFF;
if (deltaX >= 8192) if (deltaX >= 128)
{ {
deltaX -= 16384; deltaX -= 256;
} }
if (deltaY >= 8192) if (deltaY >= 128)
{ {
deltaY -= 16384; deltaY -= 256;
} }
if (deltaZ >= 8192) if (deltaZ >= 128)
{ {
deltaZ -= 16384; deltaZ -= 256;
} }
translateX = currentTranslateX + deltaX * interval / intervalCount & 0x3fff; translateX = currentTranslateX + deltaX * interval / intervalCount & 0xFF;
translateY = currentTranslateY + deltaY * interval / intervalCount & 0x3fff; translateY = currentTranslateY + deltaY * interval / intervalCount & 0xFF;
translateZ = currentTranslateZ + deltaZ * interval / intervalCount & 0x3fff; translateZ = currentTranslateZ + deltaZ * interval / intervalCount & 0xFF;
} }
else if (type == 5) else if (type == 5)
{ {