UseBlockObjectiveTask class

Пакет: com.hypixel.hytale.builtin.adventure.objectives.task

Файл: com/hypixel/hytale/builtin/adventure/objectives/task/UseBlockObjectiveTask.java

extends: CountObjectiveTask

Поля (6)

МодификаторыТипИмя
BlockType var4
String var5
Ref var6
Store var7
Player var8
UUIDComponent var9

Методы (3)

МодификаторыВозвратСигнатура
if if(var4 != null)
if if(var8 != null)
abstract super super(var1, var2, var3)

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.adventure.objectives.Objective;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.config.task.UseBlockObjectiveTaskAsset;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.transaction.RegistrationTransactionRecord;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.transaction.TransactionRecord;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
class="kw">import com.hypixel.hytale.server.core.entity.UUIDComponent;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.event.events.entity.LivingEntityUseBlockEvent;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;

class="kw">public class UseBlockObjectiveTask class="kw">extends CountObjectiveTask {
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<UseBlockObjectiveTask> CODEC = BuilderCodec.builder(
         UseBlockObjectiveTask.class, UseBlockObjectiveTask::new, CountObjectiveTask.CODEC
      )
      .build();

   class="kw">public UseBlockObjectiveTask(@Nonnull UseBlockObjectiveTaskAsset var1, int var2, int var3) {
      super(var1, var2, var3);
   }

   class="kw">protected UseBlockObjectiveTask() {
   }

   @Nonnull
   class="kw">public UseBlockObjectiveTaskAsset getAsset() {
      class="kw">return (UseBlockObjectiveTaskAsset)super.getAsset();
   }

   @Nonnull
   @Override
   class="kw">protected TransactionRecord[] setup0(@Nonnull Objective var1, @Nonnull World var2, @Nonnull Store<EntityStore> var3) {
      this.eventRegistry.register(LivingEntityUseBlockEvent.class, var2.getName(), var3x -> {
         BlockType var4 = BlockType.getAssetMap().getAsset(var3x.getBlockType());
         if (var4 != null) {
            String var5 = var4.getItem().getId();
            if (this.getAsset().getBlockTagOrItemIdField().isBlockTypeIncluded(var5)) {
               Ref var6 = var3x.getRef();
               Store var7 = var6.getStore();
               Player var8 = var7.getComponent(var6, Player.getComponentType());
               if (var8 != null) {
                  UUIDComponent var9 = var3.getComponent(var6, UUIDComponent.getComponentType());
                  assert var9 != null;
                  if (var1.getActivePlayerUUIDs().contains(var9.getUuid())) {
                     this.increaseTaskCompletion(var3, var6, 1, var1);
                  }
               }
            }
         }
      });
      class="kw">return RegistrationTransactionRecord.wrap(this.eventRegistry);
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "UseBlockObjectiveTask{} " + super.toString();
   }
}