BiomeDataSystem class
Пакет: com.hypixel.hytale.server.worldgen
Файл: com/hypixel/hytale/server/worldgen/BiomeDataSystem.java
extends: DelayedEntitySystem<EntityStore>
Поля (15)
| Модификаторы | Тип | Имя |
|---|---|---|
|
WorldMapTracker |
var10 |
|
TransformComponent |
var12 |
|
Vector3d |
var13 |
|
int |
var14 |
|
int |
var15 |
|
int |
var16 |
|
ZoneBiomeResult |
var17 |
|
Biome |
var18 |
|
Zone |
var19 |
|
ZoneDiscoveryConfig |
var20 |
|
WorldMapTracker.ZoneDiscoveryInfo |
var21 |
|
World |
var6 |
|
IWorldGen |
var7 |
|
Player |
var8 |
|
Ref |
var9 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(var7 instanceof ChunkGenerator var11) |
abstract |
|
super super(1.0F) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen;
class="kw">import com.hypixel.hytale.component.Archetype;
class="kw">import com.hypixel.hytale.component.ArchetypeChunk;
class="kw">import com.hypixel.hytale.component.CommandBuffer;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.component.query.Query;
class="kw">import com.hypixel.hytale.component.system.tick.DelayedEntitySystem;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.WorldMapTracker;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.IWorldGen;
class="kw">import com.hypixel.hytale.server.worldgen.biome.Biome;
class="kw">import com.hypixel.hytale.server.worldgen.chunk.ChunkGenerator;
class="kw">import com.hypixel.hytale.server.worldgen.chunk.ZoneBiomeResult;
class="kw">import com.hypixel.hytale.server.worldgen.zone.Zone;
class="kw">import com.hypixel.hytale.server.worldgen.zone.ZoneDiscoveryConfig;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector3d;
class="kw">public class BiomeDataSystem class="kw">extends DelayedEntitySystem<EntityStore> {
class="kw">public BiomeDataSystem() {
super(1.0F);
}
@Override
class="kw">public void tick(float var1, int var2, @Nonnull ArchetypeChunk<EntityStore> var3, @Nonnull Store<EntityStore> var4, @Nonnull CommandBuffer<EntityStore> var5) {
World var6 = var5.getExternalData().getWorld();
IWorldGen var7 = var6.getChunkStore().getGenerator();
Player var8 = var3.getComponent(var2, Player.getComponentType());
assert var8 != null;
Ref var9 = var3.getReferenceTo(var2);
WorldMapTracker var10 = var8.getWorldMapTracker();
if (var7 class="kw">instanceof ChunkGenerator var11) {
TransformComponent var12 = var3.getComponent(var2, TransformComponent.getComponentType());
assert var12 != null;
Vector3d var13 = var12.getPosition();
int var14 = (int)var6.getWorldConfig().getSeed();
int var15 = (int)var13.x();
int var16 = (int)var13.z();
ZoneBiomeResult var17 = var11.getZoneBiomeResultAt(var14, var15, var16);
Biome var18 = var17.getBiome();
Zone var19 = var17.getZoneResult().getZone();
ZoneDiscoveryConfig var20 = var19.discoveryConfig();
WorldMapTracker.ZoneDiscoveryInfo var21 = new WorldMapTracker.ZoneDiscoveryInfo(
var20.zone(),
var19.name(),
var20.display(),
var20.soundEventId(),
var20.icon(),
var20.major(),
var20.duration(),
var20.fadeInDuration(),
var20.fadeOutDuration()
);
var10.updateCurrentZoneAndBiome(var9, var21, var18.getName(), var5);
} else {
var10.updateCurrentZoneAndBiome(var9, null, null, var5);
}
}
@Nullable
@Override
class="kw">public Query<EntityStore> getQuery() {
class="kw">return Archetype.of(Player.getComponentType(), TransformComponent.getComponentType());
}
}