animation smoothing: fix angle bounds for rotation
This commit is contained in:
committed by
Adam
parent
309665c8ff
commit
62dec90d42
@@ -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)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user