diff options
author | syeyoung <42869671+cyoung06@users.noreply.github.com> | 2020-11-22 20:05:51 +0900 |
---|---|---|
committer | syeyoung <42869671+cyoung06@users.noreply.github.com> | 2020-11-22 20:05:51 +0900 |
commit | 70a753c2a0aac9bd7e7e21ca081c4ee994bc4891 (patch) | |
tree | de7bef79f537650c7c1d557fcf86dd1bce7d64f0 /src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java | |
parent | 527732c2242d1dc0556c6a6cd49f4847b1f9c716 (diff) | |
download | Skyblock-Dungeons-Guide-70a753c2a0aac9bd7e7e21ca081c4ee994bc4891.tar.gz Skyblock-Dungeons-Guide-70a753c2a0aac9bd7e7e21ca081c4ee994bc4891.tar.bz2 Skyblock-Dungeons-Guide-70a753c2a0aac9bd7e7e21ca081c4ee994bc4891.zip |
room building
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java')
-rw-r--r-- | src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java b/src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java new file mode 100644 index 00000000..d7ce60c5 --- /dev/null +++ b/src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java @@ -0,0 +1,29 @@ +package kr.syeyoung.dungeonsguide.utils; + +public class ShortUtils { + public static short rotateClockwise(short integer) { + int res = 0; + for(int i=0; i<16; i++){ + int x = i % 4; + int y = i / 4; + res |= (integer >> i & 0x1) << (x*4 + y); + } + return (short) (res & 0xFFFF); + } + public static short rotateCounterClockwise(short integer) { + int res = 0; + for(int i=0; i<16; i++){ + int x = i % 4; + int y = i / 4; + res |= (integer >> i & 0x1) << ((4-x-1) *4 +(4 - y - 1)); + } + return (short) (res & 0xFFFF); + } + + public static short topLeftifyInt(short integer) { + int it = integer & 0xFFFF; + while ((it & (0x1111)) == 0) it >>= 1; + while ((it & (0xF)) == 0) it >>= 4; + return (short) (it & 0xFFFF); + } +} |