aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java
diff options
context:
space:
mode:
authorsyeyoung <42869671+cyoung06@users.noreply.github.com>2020-11-22 20:05:51 +0900
committersyeyoung <42869671+cyoung06@users.noreply.github.com>2020-11-22 20:05:51 +0900
commit70a753c2a0aac9bd7e7e21ca081c4ee994bc4891 (patch)
treede7bef79f537650c7c1d557fcf86dd1bce7d64f0 /src/main/java/kr/syeyoung/dungeonsguide/utils/ShortUtils.java
parent527732c2242d1dc0556c6a6cd49f4847b1f9c716 (diff)
downloadSkyblock-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.java29
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);
+ }
+}