WildernessEntitySystems class

Пакет: com.hypixel.hytale.builtin.adventure.wilderness.system

Файл: com/hypixel/hytale/builtin/adventure/wilderness/system/WildernessEntitySystems.java

Поля (16)

МодификаторыТипИмя
protected final Query<EntityStore> query
protected final Query<EntityStore> query
protected final ComponentType<EntityStore, TransformComponent> transformComponentType
int var10
int var11
World var5
WildernessTracker var5
WildernessConfig var6
int var7
Wilderness var7
int var8
TransformComponent var8
int var9
protected final ComponentType<EntityStore, Wilderness> wildernessComponentType
protected final ComponentType<EntityStore, Wilderness> wildernessComponentType
protected final ResourceType<ChunkStore, WildernessTracker> wildernessTrackerResourceType

Методы (8)

МодификаторыВозвратСигнатура
public AddSystempublic AddSystem(@Nonnull ComponentType<EntityStore, Wilderness> var1)
public TickSystempublic TickSystem(@Nonnull ComponentType<EntityStore, Wilderness> var1, @Nonnull ComponentType<EntityStore, TransformComponent> var2, @Nonnull ResourceType<ChunkStore, WildernessTracker> var3)
abstract for for(int var6 = 0; var6 < var2.size()
public Query<EntityStore> getQuerypublic Query<EntityStore> getQuery()
public Query<EntityStore> getQuerypublic Query<EntityStore> getQuery()
public void onEntityAddedpublic void onEntityAdded(@Nonnull Ref<EntityStore> var1, @Nonnull AddReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4)
public void onEntityRemovepublic void onEntityRemove(@Nonnull Ref<EntityStore> var1, @Nonnull RemoveReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4)
public void tickpublic void tick(float var1, @Nonnull ArchetypeChunk<EntityStore> var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.wilderness.system;

class="kw">import com.hypixel.hytale.builtin.adventure.wilderness.WildernessConfig;
class="kw">import com.hypixel.hytale.builtin.adventure.wilderness.component.Wilderness;
class="kw">import com.hypixel.hytale.builtin.adventure.wilderness.resource.WildernessTracker;
class="kw">import com.hypixel.hytale.component.AddReason;
class="kw">import com.hypixel.hytale.component.ArchetypeChunk;
class="kw">import com.hypixel.hytale.component.CommandBuffer;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.RemoveReason;
class="kw">import com.hypixel.hytale.component.ResourceType;
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.RefSystem;
class="kw">import com.hypixel.hytale.component.system.tick.ArchetypeTickingSystem;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.Spectating;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;

class="kw">public class WildernessEntitySystems {
   class="kw">public WildernessEntitySystems() {
   }

   class="kw">public class="kw">static class AddSystem class="kw">extends RefSystem<EntityStore> {
      @Nonnull
      class="kw">protected class="kw">final ComponentType<EntityStore, Wilderness> wildernessComponentType;
      @Nonnull
      class="kw">protected class="kw">final Query<EntityStore> query = Query.and(PlayerRef.getComponentType(), TransformComponent.getComponentType());

      class="kw">public AddSystem(@Nonnull ComponentType<EntityStore, Wilderness> var1) {
         this.wildernessComponentType = var1;
      }

      @Nonnull
      @Override
      class="kw">public Query<EntityStore> getQuery() {
         class="kw">return this.query;
      }

      @Override
      class="kw">public void onEntityAdded(
         @Nonnull Ref<EntityStore> var1, @Nonnull AddReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4
      ) {
         World var5 = var3.getExternalData().getWorld();
         WildernessConfig var6 = WildernessConfig.getOrDefault(var5);
         int var7 = var6.getPlayerTrackerChunkRadius();
         int var8 = var6.getPlayerTrackerChunkRadiusY();
         var4.putComponent(var1, this.wildernessComponentType, new Wilderness(var7, var8));
      }

      @Override
      class="kw">public void onEntityRemove(
         @Nonnull Ref<EntityStore> var1, @Nonnull RemoveReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4
      ) {
      }
   }

   class="kw">public class="kw">static class TickSystem class="kw">extends ArchetypeTickingSystem<EntityStore> {
      @Nonnull
      class="kw">protected class="kw">final ComponentType<EntityStore, Wilderness> wildernessComponentType;
      @Nonnull
      class="kw">protected class="kw">final ComponentType<EntityStore, TransformComponent> transformComponentType;
      @Nonnull
      class="kw">protected class="kw">final ResourceType<ChunkStore, WildernessTracker> wildernessTrackerResourceType;
      class="kw">protected class="kw">final Query<EntityStore> query;

      class="kw">public TickSystem(
         @Nonnull ComponentType<EntityStore, Wilderness> var1,
         @Nonnull ComponentType<EntityStore, TransformComponent> var2,
         @Nonnull ResourceType<ChunkStore, WildernessTracker> var3
      ) {
         this.wildernessComponentType = var1;
         this.transformComponentType = var2;
         this.wildernessTrackerResourceType = var3;
         this.query = Query.and(var1, var2, Query.not(Spectating.getComponentType()));
      }

      @Nonnull
      @Override
      class="kw">public Query<EntityStore> getQuery() {
         class="kw">return this.query;
      }

      @Override
      class="kw">public void tick(float var1, @Nonnull ArchetypeChunk<EntityStore> var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4) {
         WildernessTracker var5 = WildernessTracker.getTracker(var3.getExternalData().getWorld());
         if (!var5.isDisabled()) {
            for (int var6 = 0; var6 < var2.size(); var6++) {
               Wilderness var7 = var2.getComponent(var6, this.wildernessComponentType);
               assert var7 != null;
               TransformComponent var8 = var2.getComponent(var6, this.transformComponentType);
               assert var8 != null;
               int var9 = MathUtil.floor(var8.getPosition().x);
               int var10 = MathUtil.floor(var8.getPosition().y);
               int var11 = MathUtil.floor(var8.getPosition().z);
               var7.move(var9, var10, var11, var5);
            }
         }
      }
   }
}