CraftingRecipePacketGenerator class
Пакет: com.hypixel.hytale.server.core.modules.item
Файл: com/hypixel/hytale/server/core/modules/item/CraftingRecipePacketGenerator.java
extends: AssetPacketGenerator<String, CraftingRecipe, DefaultAssetMap<String, CraftingRecipe>>
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
|
UpdateRecipes |
var3 |
|
UpdateRecipes |
var4 |
|
UpdateRecipes |
var4 |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.item;
class="kw">import com.hypixel.hytale.assetstore.AssetUpdateQuery;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.protocol.ToClientPacket;
class="kw">import com.hypixel.hytale.protocol.UpdateType;
class="kw">import com.hypixel.hytale.protocol.packets.assets.UpdateRecipes;
class="kw">import com.hypixel.hytale.server.core.asset.packet.AssetPacketGenerator;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.CraftingRecipe;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
class="kw">import java.util.Map;
class="kw">import java.util.Set;
class="kw">import java.util.Map.Entry;
class="kw">import javax.annotation.Nonnull;
class="kw">public class CraftingRecipePacketGenerator class="kw">extends AssetPacketGenerator<String, CraftingRecipe, DefaultAssetMap<String, CraftingRecipe>> {
class="kw">public CraftingRecipePacketGenerator() {
}
@Nonnull
class="kw">public ToClientPacket generateInitPacket(DefaultAssetMap<String, CraftingRecipe> var1, @Nonnull Map<String, CraftingRecipe> var2) {
UpdateRecipes var3 = new UpdateRecipes();
var3.type = UpdateType.Init;
var3.recipes = new Object2ObjectOpenHashMap();
for (Entry var5 : var2.entrySet()) {
var3.recipes.put(var5.getKey(), var5.getValue().toPacket(var5.getKey()));
}
class="kw">return var3;
}
@Nonnull
class="kw">public ToClientPacket generateUpdatePacket(
DefaultAssetMap<String, CraftingRecipe> var1, @Nonnull Map<String, CraftingRecipe> var2, @Nonnull AssetUpdateQuery var3
) {
UpdateRecipes var4 = new UpdateRecipes();
var4.type = UpdateType.AddOrUpdate;
var4.recipes = new Object2ObjectOpenHashMap();
for (Entry var6 : var2.entrySet()) {
var4.recipes.put(var6.getKey(), var6.getValue().toPacket(var6.getKey()));
}
class="kw">return var4;
}
@Nonnull
class="kw">public ToClientPacket generateRemovePacket(DefaultAssetMap<String, CraftingRecipe> var1, @Nonnull Set<String> var2, @Nonnull AssetUpdateQuery var3) {
UpdateRecipes var4 = new UpdateRecipes();
var4.type = UpdateType.Remove;
var4.removedRecipes = var2.toArray(String[]::new);
class="kw">return var4;
}
}