TriggerVolumeDeathSystem class

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

Файл: com/hypixel/hytale/builtin/triggervolumes/system/TriggerVolumeDeathSystem.java

extends: DeathSystems.OnDeathSystem

Поля (3)

МодификаторыТипИмя
TriggerVolumeManager var5
TransformComponent var6
UUIDComponent var7

Методы (4)

МодификаторыВозвратСигнатура
if if(var5 != null)
if if(var6 != null)
if if(var7 != null)
public void onComponentAddedvoid onComponentAdded(@Nonnull Ref<EntityStore> var1, @Nonnull DeathComponent var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4)

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.triggervolumes.effect.TriggerEventType;
class="kw">import com.hypixel.hytale.builtin.triggervolumes.manager.TriggerVolumeManager;
class="kw">import com.hypixel.hytale.component.CommandBuffer;
class="kw">import com.hypixel.hytale.component.Ref;
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.server.core.entity.UUIDComponent;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.DeathComponent;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.DeathSystems;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class="kw">final class TriggerVolumeDeathSystem class="kw">extends DeathSystems.OnDeathSystem {
   @Nonnull
   class="kw">private class="kw">static class="kw">final Query<EntityStore> QUERY = Query.and(TransformComponent.getComponentType(), UUIDComponent.getComponentType());
   @Nonnull
   class="kw">private class="kw">final ResourceType<EntityStore, TriggerVolumeManager> managerResourceType;

   class="kw">public TriggerVolumeDeathSystem(@Nonnull ResourceType<EntityStore, TriggerVolumeManager> var1) {
      this.managerResourceType = var1;
   }

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

   class="kw">public void onComponentAdded(
      @Nonnull Ref<EntityStore> var1, @Nonnull DeathComponent var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4
   ) {
      TriggerVolumeManager var5 = var3.getResource(this.managerResourceType);
      if (var5 != null) {
         TransformComponent var6 = var3.getComponent(var1, TransformComponent.getComponentType());
         if (var6 != null) {
            UUIDComponent var7 = var3.getComponent(var1, UUIDComponent.getComponentType());
            if (var7 != null) {
               var5.enqueuePositionalEvent(TriggerEventType.ENTITY_DIED, var1, var7.getUuid(), new Vector3d(var6.getPosition()));
            }
         }
      }
   }
}