CraftObjectiveTask class
Пакет: com.hypixel.hytale.builtin.adventure.objectives.task
Файл: com/hypixel/hytale/builtin/adventure/objectives/task/CraftObjectiveTask.java
extends: CountObjectiveTask
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
|
|
break |
|
Ref |
var11 |
|
UUIDComponent |
var12 |
|
String |
var4 |
|
CraftingRecipe |
var5 |
|
boolean |
var6 |
|
|
var6 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(var6) |
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.CraftObjectiveTaskAsset;
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.item.config.CraftingRecipe;
class="kw">import com.hypixel.hytale.server.core.entity.UUIDComponent;
class="kw">import com.hypixel.hytale.server.core.event.events.player.PlayerCraftEvent;
class="kw">import com.hypixel.hytale.server.core.inventory.MaterialQuantity;
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 java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">public class CraftObjectiveTask class="kw">extends CountObjectiveTask {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<CraftObjectiveTask> CODEC = BuilderCodec.builder(
CraftObjectiveTask.class, CraftObjectiveTask::new, CountObjectiveTask.CODEC
)
.build();
class="kw">public CraftObjectiveTask(@Nonnull CraftObjectiveTaskAsset var1, int var2, int var3) {
super(var1, var2, var3);
}
class="kw">protected CraftObjectiveTask() {
}
@Nonnull
class="kw">public CraftObjectiveTaskAsset getAsset() {
class="kw">return (CraftObjectiveTaskAsset)super.getAsset();
}
@Nonnull
@Override
class="kw">protected TransactionRecord[] setup0(@Nonnull Objective var1, @Nonnull World var2, @Nonnull Store<EntityStore> var3) {
this.eventRegistry.register(PlayerCraftEvent.class, var2.getName(), var3x -> {
String var4 = this.getAsset().getItemId();
CraftingRecipe var5 = var3x.getCraftedRecipe();
boolean var6 = false;
for (MaterialQuantity var10 : var5.getOutputs()) {
if (Objects.equals(var10.getItemId(), var4)) {
var6 = true;
break;
}
}
if (var6) {
Ref var11 = var3x.getPlayerRef();
UUIDComponent var12 = var3.getComponent(var11, UUIDComponent.getComponentType());
assert var12 != null;
if (var1.getActivePlayerUUIDs().contains(var12.getUuid())) {
this.increaseTaskCompletion(var3, var11, var3x.getQuantity(), var1);
}
}
});
class="kw">return RegistrationTransactionRecord.wrap(this.eventRegistry);
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "CraftObjectiveTask{} " + super.toString();
}
}