WrappedInfoProvider class
Пакет: com.hypixel.hytale.server.npc.sensorinfo
Файл: com/hypixel/hytale/server/npc/sensorinfo/WrappedInfoProvider.java
implements: InfoProvider
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
InfoProvider |
var3 |
|
ExtraInfoProvider |
var4 |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
void |
addMatchvoid addMatch(Sensor var1) |
public |
void |
clearMatchesvoid clearMatches() |
public |
void |
clearPositionMatchvoid clearPositionMatch() |
abstract |
|
for for(int var2 = 0; var2 < this.sensors.size() |
|
|
if if(var3 != null) |
|
|
if if(var4 != null) |
public |
void |
setPositionMatchvoid setPositionMatch(IPositionProvider var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.sensorinfo;
class="kw">import com.hypixel.hytale.server.npc.instructions.Sensor;
class="kw">import com.hypixel.hytale.server.npc.sensorinfo.parameterproviders.ParameterProvider;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class WrappedInfoProvider class="kw">implements InfoProvider {
@Nonnull
class="kw">private class="kw">final List<Sensor> sensors;
@Nullable
class="kw">private IPositionProvider positionMatch;
class="kw">protected ExtraInfoProvider passedExtraInfo;
class="kw">public WrappedInfoProvider() {
this.sensors = new ObjectArrayList();
}
class="kw">public WrappedInfoProvider(Sensor[] var1) {
this.sensors = List.of(var1);
}
@Nullable
@Override
class="kw">public <E class="kw">extends ExtraInfoProvider> E getExtraInfo(Class<E> var1) {
for (int var2 = 0; var2 < this.sensors.size(); var2++) {
InfoProvider var3 = this.sensors.get(var2).getSensorInfo();
if (var3 != null) {
ExtraInfoProvider var4 = var3.getExtraInfo(var1);
if (var4 != null) {
class="kw">return var4;
}
}
}
class="kw">return null;
}
@Override
class="kw">public <E class="kw">extends ExtraInfoProvider> void passExtraInfo(E var1) {
this.passedExtraInfo = var1;
}
@Override
class="kw">public <E class="kw">extends ExtraInfoProvider> E getPassedExtraInfo(Class<E> var1) {
class="kw">return (E)this.passedExtraInfo;
}
@Override
class="kw">public boolean hasPosition() {
class="kw">return this.positionMatch != null && this.positionMatch.hasPosition();
}
@Nullable
@Override
class="kw">public IPositionProvider getPositionProvider() {
class="kw">return this.positionMatch;
}
@Nullable
@Override
class="kw">public ParameterProvider getParameterProvider(int var1) {
class="kw">return null;
}
class="kw">public void clearMatches() {
this.sensors.clear();
}
class="kw">public void addMatch(Sensor var1) {
this.sensors.add(var1);
}
class="kw">public void clearPositionMatch() {
this.positionMatch = null;
}
class="kw">public void setPositionMatch(IPositionProvider var1) {
this.positionMatch = var1;
}
}