PositionsPropDistribution class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.propdistributions
Файл: com/hypixel/hytale/builtin/hytalegenerator/propdistributions/PositionsPropDistribution.java
extends: PropDistribution
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public void |
acceptpublic void accept(@Nonnull Vector3d var1, @Nonnull Control var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.propdistributions;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.pipe.Control;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.pipe.Pipe;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.positionproviders.PositionProvider;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.props.EmptyProp;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.props.Prop;
class="kw">import java.util.function.Consumer;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;
class="kw">public class PositionsPropDistribution class="kw">extends PropDistribution {
@Nonnull
class="kw">private class="kw">final PositionProvider positionProvider;
@Nonnull
class="kw">private class="kw">final PositionProvider.Context rPositionProviderContext;
@Nonnull
class="kw">private PropDistribution.Context rContext;
@Nonnull
class="kw">private class="kw">final Pipe.One<Vector3d> rPositionsPipe = new Pipe.One<Vector3d>() {
class="kw">public void accept(@Nonnull Vector3d var1, @Nonnull Control var2) {
assert PositionsPropDistribution.this.rContext.bounds.contains(var1);
PositionsPropDistribution.this.rContext.pipe.accept(var1, EmptyProp.INSTANCE, var2);
}
};
class="kw">public PositionsPropDistribution(@Nonnull PositionProvider var1) {
this.positionProvider = var1;
this.rPositionProviderContext = new PositionProvider.Context();
this.rContext = PropDistribution.Context.DEFAULT_INSTANCE;
}
@Override
class="kw">public void distribute(@Nonnull PropDistribution.Context var1) {
this.rContext = var1;
this.rPositionProviderContext.assign(var1);
this.rPositionProviderContext.pipe = this.rPositionsPipe;
this.positionProvider.generate(this.rPositionProviderContext);
this.rPositionProviderContext.clearReferences();
this.rContext = PropDistribution.Context.DEFAULT_INSTANCE;
}
@Override
class="kw">public void forEachPossibleProp(@Nonnull Consumer<Prop> var1) {
}
}