BlockCylinderUtil class
Пакет: com.hypixel.hytale.math.block
Файл: com/hypixel/hytale/math/block/BlockCylinderUtil.java
Поля (37)
| Модификаторы | Тип | Имя |
|---|---|---|
|
float |
var10 |
|
int |
var11 |
|
int |
var12 |
|
float |
var12 |
|
int |
var13 |
|
int |
var13 |
|
float |
var14 |
|
int |
var14 |
|
float |
var15 |
|
int |
var15 |
|
double |
var16 |
|
float |
var16 |
|
float |
var17 |
|
float |
var18 |
|
double |
var19 |
|
float |
var19 |
|
double |
var20 |
|
double |
var21 |
|
double |
var22 |
|
double |
var23 |
|
int |
var24 |
|
int |
var25 |
|
|
var25 |
|
int |
var25 |
|
int |
var26 |
|
|
var26 |
|
boolean |
var27 |
|
double |
var29 |
|
double |
var31 |
|
double |
var33 |
|
int |
var35 |
|
|
var35 |
|
int |
var36 |
|
|
var36 |
|
double |
var37 |
|
double |
var39 |
|
int |
var41 |
Методы (23)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(int var18 = -var3; var18 <= var11; var18++) |
|
|
for for(int var27 = var25; var27 <= var26; var27++) |
|
|
for for(int var28 = var13 - 1; var28 >= 0; var28--) |
|
|
for for(int var26 = var15 - 1; var26 >= 0; var26--) |
|
|
for for(int var28 = -var3; var28 <= var13; var28++) |
|
|
for for(int var42 = var35; var42 <= var36; var42++) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, T var6, @Nonnull TriIntObjPredicate<T> var7) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, boolean var6, boolean var7, T var8, @Nonnull TriIntObjPredicate<T> var9) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, int var6, T var7, @Nonnull TriIntObjPredicate<T> var8) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, int var6, boolean var7, T var8, @Nonnull TriIntObjPredicate<T> var9) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0,
int var1,
int var2,
int var3,
int var4,
int var5,
int var6,
boolean var7,
boolean var8,
boolean var9,
T var10,
@Nonnull TriIntObjPredicate<T> var11) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, false, false, var6, var7) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, var6, false, var7, var8) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, var6, var7, false, false, var8, var9) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, var8, var9, var10, var11) |
|
|
if if(var3 <= 0) |
|
|
if if(var4 <= 0) |
|
|
if if(var5 <= 0) |
|
|
if if(var6 < 1) |
|
|
if if(var3 <= 0) |
|
|
if if(var4 <= 0) |
|
|
if if(var5 <= 0) |
|
|
if if(var35 <= var36) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.math.block;
class="kw">import com.hypixel.hytale.function.predicate.TriIntObjPredicate;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import javax.annotation.Nonnull;
class="kw">public class BlockCylinderUtil {
class="kw">public BlockCylinderUtil() {
}
class="kw">public class="kw">static <T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, T var6, @Nonnull TriIntObjPredicate<T> var7) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, false, false, var6, var7);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0, int var1, int var2, int var3, int var4, int var5, boolean var6, boolean var7, T var8, @Nonnull TriIntObjPredicate<T> var9
) {
if (var3 <= 0) {
throw new IllegalArgumentException(String.valueOf(var3));
}
if (var4 <= 0) {
throw new IllegalArgumentException(String.valueOf(var4));
}
if (var5 <= 0) {
throw new IllegalArgumentException(String.valueOf(var5));
}
float var10 = var6 ? 0.5F : 0.0F;
int var11 = var6 ? var3 - 1 : var3;
int var12 = var6 ? var5 - 1 : var5;
int var13 = var4;
float var14 = var3 + 0.41F;
float var15 = var5 + 0.41F;
double var16 = 1.0 / (var14 * var14);
for (int var18 = -var3; var18 <= var11; var18++) {
double var19 = var18 + var10;
double var21 = 1.0 - var19 * var19 * var16;
if (!(var21 < 0.0)) {
double var23 = Math.sqrt(var21) * var15;
int var25 = (int)Math.ceil(-var23 - var10);
int var26 = (int)(var23 - var10);
var25 = Math.max(var25, -var5);
var26 = Math.min(var26, var12);
for (int var27 = var25; var27 <= var26; var27++) {
for (int var28 = var13 - 1; var28 >= 0; var28--) {
if (!var9.test(var0 + var18, var1 + var28, var2 + var27, var8)) {
class="kw">return false;
}
}
}
}
}
class="kw">return true;
}
class="kw">public class="kw">static <T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, int var6, T var7, @Nonnull TriIntObjPredicate<T> var8) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var6, false, var7, var8);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0, int var1, int var2, int var3, int var4, int var5, int var6, boolean var7, T var8, @Nonnull TriIntObjPredicate<T> var9
) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var6, var7, false, false, var8, var9);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0,
int var1,
int var2,
int var3,
int var4,
int var5,
int var6,
boolean var7,
boolean var8,
boolean var9,
T var10,
@Nonnull TriIntObjPredicate<T> var11
) {
if (var6 < 1) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var8, var9, var10, var11);
}
if (var3 <= 0) {
throw new IllegalArgumentException(String.valueOf(var3));
}
if (var4 <= 0) {
throw new IllegalArgumentException(String.valueOf(var4));
}
if (var5 <= 0) {
throw new IllegalArgumentException(String.valueOf(var5));
}
float var12 = var8 ? 0.5F : 0.0F;
int var13 = var8 ? var3 - 1 : var3;
int var14 = var8 ? var5 - 1 : var5;
int var15 = var4;
float var16 = var3 + 0.41F;
float var17 = var5 + 0.41F;
float var18 = var16 - var6;
float var19 = var17 - var6;
if (!(var18 <= 0.0F) && !(var19 <= 0.0F)) {
double var20 = 1.0 / (var16 * var16);
double var22 = 1.0 / (var18 * var18);
int var24 = var6;
int var25 = var15 - var6;
for (int var26 = var15 - 1; var26 >= 0; var26--) {
boolean var27 = var7 && (var26 < var24 || var26 > var25);
for (int var28 = -var3; var28 <= var13; var28++) {
double var29 = var28 + var12;
double var31 = 1.0 - var29 * var29 * var20;
if (!(var31 < 0.0)) {
double var33 = Math.sqrt(var31) * var17;
int var35 = (int)Math.ceil(-var33 - var12);
int var36 = (int)(var33 - var12);
var35 = Math.max(var35, -var5);
var36 = Math.min(var36, var14);
if (var35 <= var36) {
double var37 = 1.0 - var29 * var29 * var22;
double var39 = var37 > 0.0 ? Math.sqrt(var37) * var19 : 0.0;
int var41 = !var27 && !(var39 <= 0.0) ? MathUtil.ceil(var39 - var12) : 0;
for (int var42 = var35; var42 <= var36; var42++) {
if ((var27 || !(var39 > 0.0) || Math.abs(var42) >= var41) && !var11.test(var0 + var28, var1 + var26, var2 + var42, var10)) {
class="kw">return false;
}
}
}
}
}
}
class="kw">return true;
} else {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var8, var9, var10, var11);
}
}
}