AddSystem class

Пакет: com.hypixel.hytale.server.core.modules.entity.player

Файл: com/hypixel/hytale/server/core/modules/entity/player/PlayerChunkTrackerSystems.java

extends: HolderSystem<EntityStore>

Поля (2)

МодификаторыТипИмя
private static final ComponentType<EntityStore, ChunkTracker> CHUNK_TRACKER_COMPONENT_TYPE
ChunkTracker var4

Методы (3)

МодификаторыВозвратСигнатура
public Query<EntityStore> getQuerypublic Query<EntityStore> getQuery()
public void onEntityAddpublic void onEntityAdd(@Nonnull Holder<EntityStore> var1, @Nonnull AddReason var2, @Nonnull Store<EntityStore> var3)
public void onEntityRemovedpublic void onEntityRemoved(@Nonnull Holder<EntityStore> var1, @Nonnull RemoveReason var2, @Nonnull Store<EntityStore> var3)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.entity.player;

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.Holder;
class="kw">import com.hypixel.hytale.component.RemoveReason;
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.HolderSystem;
class="kw">import com.hypixel.hytale.component.system.tick.EntityTickingSystem;
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.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;

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

   class="kw">public class="kw">static class AddSystem class="kw">extends HolderSystem<EntityStore> {
      @Nonnull
      class="kw">private class="kw">static class="kw">final ComponentType<EntityStore, ChunkTracker> CHUNK_TRACKER_COMPONENT_TYPE = ChunkTracker.getComponentType();

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

      @Override
      class="kw">public Query<EntityStore> getQuery() {
         class="kw">return CHUNK_TRACKER_COMPONENT_TYPE;
      }

      @Override
      class="kw">public void onEntityAdd(@Nonnull Holder<EntityStore> var1, @Nonnull AddReason var2, @Nonnull Store<EntityStore> var3) {
         ChunkTracker var4 = var1.getComponent(CHUNK_TRACKER_COMPONENT_TYPE);
         assert var4 != null;
         var4.setReadyForChunks(true);
      }

      @Override
      class="kw">public void onEntityRemoved(@Nonnull Holder<EntityStore> var1, @Nonnull RemoveReason var2, @Nonnull Store<EntityStore> var3) {
      }
   }

   class="kw">public class="kw">static class UpdateSystem class="kw">extends EntityTickingSystem<EntityStore> {
      @Nonnull
      class="kw">private class="kw">static class="kw">final ComponentType<EntityStore, ChunkTracker> CHUNK_TRACKER_COMPONENT_TYPE = ChunkTracker.getComponentType();
      @Nonnull
      class="kw">private class="kw">static class="kw">final ComponentType<EntityStore, Player> PLAYER_COMPONENT_TYPE = Player.getComponentType();
      @Nonnull
      class="kw">private class="kw">static class="kw">final ComponentType<EntityStore, PlayerRef> PLAYER_REF_COMPONENT_TYPE = PlayerRef.getComponentType();
      @Nonnull
      class="kw">private class="kw">static class="kw">final ComponentType<EntityStore, TransformComponent> TRANSFORM_COMPONENT_TYPE = TransformComponent.getComponentType();

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

      @Override
      class="kw">public Query<EntityStore> getQuery() {
         class="kw">return Query.and(CHUNK_TRACKER_COMPONENT_TYPE, PLAYER_COMPONENT_TYPE, PLAYER_REF_COMPONENT_TYPE, TRANSFORM_COMPONENT_TYPE);
      }

      @Override
      class="kw">public boolean isParallel(int var1, int var2) {
         class="kw">return false;
      }

      @Override
      class="kw">public void tick(
         float var1, int var2, @Nonnull ArchetypeChunk<EntityStore> var3, @Nonnull Store<EntityStore> var4, @Nonnull CommandBuffer<EntityStore> var5
      ) {
         ChunkTracker var6 = var3.getComponent(var2, CHUNK_TRACKER_COMPONENT_TYPE);
         assert var6 != null;
         Player var7 = var3.getComponent(var2, PLAYER_COMPONENT_TYPE);
         assert var7 != null;
         PlayerRef var8 = var3.getComponent(var2, PLAYER_REF_COMPONENT_TYPE);
         assert var8 != null;
         TransformComponent var9 = var3.getComponent(var2, TRANSFORM_COMPONENT_TYPE);
         assert var9 != null;
         var6.tick(var7, var8, var9, var1, var5);
      }
   }
}