SensorTime class
Пакет: com.hypixel.hytale.server.npc.corecomponents.world
Файл: com/hypixel/hytale/server/npc/corecomponents/world/SensorTime.java
extends: SensorBase
Поля (4)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
double |
minTime |
|
double[] |
var3 |
|
WorldTimeResource |
var6 |
|
boolean |
var7 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(this.checkDay) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.corecomponents.world;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.modules.time.WorldTimeResource;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.SensorBase;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.world.builders.BuilderSensorTime;
class="kw">import com.hypixel.hytale.server.npc.instructions.ExecutionSupport;
class="kw">import com.hypixel.hytale.server.npc.sensorinfo.InfoProvider;
class="kw">import javax.annotation.Nonnull;
class="kw">public class SensorTime class="kw">extends SensorBase {
class="kw">protected class="kw">final double minTime;
class="kw">protected class="kw">final double maxTime;
class="kw">protected class="kw">final boolean checkDay;
class="kw">protected class="kw">final boolean checkYear;
class="kw">protected class="kw">final boolean scaleDayTimeRange;
class="kw">public SensorTime(@Nonnull BuilderSensorTime var1, @Nonnull BuilderSupport var2) {
super(var1);
double[] var3 = var1.getPeriod(var2);
this.minTime = var3[0] / WorldTimeResource.HOURS_PER_DAY;
this.maxTime = var3[1] / WorldTimeResource.HOURS_PER_DAY;
this.checkDay = var1.isCheckDay();
this.checkYear = var1.isCheckYear();
this.scaleDayTimeRange = var1.isScaleDayTimeRange();
}
@Override
class="kw">public InfoProvider getSensorInfo() {
class="kw">return null;
}
@Override
class="kw">public boolean matches(@Nonnull Ref<EntityStore> var1, @Nonnull ExecutionSupport var2, double var3, @Nonnull Store<EntityStore> var5) {
if (!super.matches(var1, var2, var3, var5)) {
class="kw">return false;
} else {
WorldTimeResource var6 = var5.getResource(WorldTimeResource.getResourceType());
if (this.checkDay) {
boolean var7 = this.scaleDayTimeRange
? var6.isScaledDayTimeWithinRange(this.minTime, this.maxTime)
: var6.isDayTimeWithinRange(this.minTime, this.maxTime);
class="kw">return var7 && (!this.checkYear || var6.isYearWithinRange(this.minTime, this.maxTime));
} else {
class="kw">return this.checkYear ? var6.isYearWithinRange(this.minTime, this.maxTime) : false;
}
}
}
}