mirror of
https://github.com/webbukkit/dynmap.git
synced 2025-02-17 20:31:37 +01:00
Add support for lily pad orientation calculation
This commit is contained in:
parent
a5bc33e1e9
commit
98a1f32e0f
@ -1179,6 +1179,25 @@ public class TexturePack {
|
|||||||
break;
|
break;
|
||||||
case COLORMOD_CLEARINSIDE:
|
case COLORMOD_CLEARINSIDE:
|
||||||
break;
|
break;
|
||||||
|
case COLORMOD_LILYTONED:
|
||||||
|
/* Rotate texture based on lily orientation function (from renderBlockLilyPad in RenderBlocks.jara in MCP) */
|
||||||
|
long l1 = (long)(mapiter.getX() * 0x2fc20f) ^ (long)mapiter.getZ() * 0x6ebfff5L ^ (long)mapiter.getY();
|
||||||
|
l1 = l1 * l1 * 0x285b825L + l1 * 11L;
|
||||||
|
int orientation = (int)(l1 >> 16 & 3L);
|
||||||
|
switch(orientation) {
|
||||||
|
case 0:
|
||||||
|
tmp = u; u = native_scale - v - 1; v = tmp;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
u = native_scale - u - 1; v = native_scale - v - 1;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
tmp = u; u = v; v = native_scale - tmp - 1;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
/* Read color from texture */
|
/* Read color from texture */
|
||||||
rslt.setARGB(texture[v*native_scale + u]);
|
rslt.setARGB(texture[v*native_scale + u]);
|
||||||
|
Loading…
Reference in New Issue
Block a user