GiveItemsCompletion class
Пакет: com.hypixel.hytale.builtin.adventure.objectives.completion
Файл: com/hypixel/hytale/builtin/adventure/objectives/completion/GiveItemsCompletion.java
extends: ObjectiveCompletion
Поля (9)
| Модификаторы | Тип | Имя |
|---|---|---|
|
UUIDComponent |
var10 |
|
UUID |
var11 |
|
World |
var3 |
|
Store |
var4 |
|
boolean |
var5 |
|
CombinedItemContainer |
var6 |
|
List |
var7 |
|
Player |
var8 |
|
PlayerRef |
var9 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(ItemStack var13 : var7) |
|
|
if if(var3 != null) |
|
|
if if(var8 != null) |
|
|
if if(var5) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.objectives.completion;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.Objective;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.config.completion.GiveItemsCompletionAsset;
class="kw">import com.hypixel.hytale.builtin.adventure.objectives.historydata.ItemObjectiveRewardHistoryData;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.Message;
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.inventory.InventoryComponent;
class="kw">import com.hypixel.hytale.server.core.inventory.ItemStack;
class="kw">import com.hypixel.hytale.server.core.inventory.container.CombinedItemContainer;
class="kw">import com.hypixel.hytale.server.core.inventory.container.SimpleItemContainer;
class="kw">import com.hypixel.hytale.server.core.modules.item.ItemModule;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.Universe;
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 com.hypixel.hytale.server.core.util.NotificationUtil;
class="kw">import java.util.List;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">public class GiveItemsCompletion class="kw">extends ObjectiveCompletion {
class="kw">public GiveItemsCompletion(@Nonnull GiveItemsCompletionAsset var1) {
super(var1);
}
@Nonnull
class="kw">public GiveItemsCompletionAsset getAsset() {
class="kw">return (GiveItemsCompletionAsset)super.getAsset();
}
@Override
class="kw">public void handle(@Nonnull Objective var1, @Nonnull ComponentAccessor<EntityStore> var2) {
World var3 = Universe.get().getWorld(var1.getWorldUUID());
if (var3 != null) {
Store var4 = var3.getEntityStore().getStore();
boolean var5 = var3.getGameplayConfig().getShowItemPickupNotifications();
var1.forEachParticipant(
(var3x, var4x, var5x) -> {
CombinedItemContainer var6 = InventoryComponent.getCombined(var2, var3x, InventoryComponent.HOTBAR_FIRST);
List var7 = ItemModule.get().getRandomItemDrops(var4x.getDropListId());
SimpleItemContainer.addOrDropItemStacks(var4, var3x, var6, var7);
Player var8 = var2.getComponent(var3x, Player.getComponentType());
if (var8 != null) {
PlayerRef var9 = var2.getComponent(var3x, PlayerRef.getComponentType());
assert var9 != null;
UUIDComponent var10 = var4.getComponent(var3x, UUIDComponent.getComponentType());
assert var10 != null;
UUID var11 = var10.getUuid();
for (ItemStack var13 : var7) {
var5x.addRewardForPlayerUUID(var11, new ItemObjectiveRewardHistoryData(var13.getItemId(), var13.getQuantity()));
if (var5) {
NotificationUtil.sendNotification(
var9.getPacketHandler(),
Message.translation("server.objectives.itemObjectiveCompletion").param("item", var13.getDisplayName()),
null,
var13.toPacket()
);
}
}
}
},
this.getAsset(),
var1.getObjectiveHistoryData()
);
}
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "GiveItemsCompletion{} " + super.toString();
}
}