Update 2.0.0 - Pretty Sweet Update

This commit is contained in:
Motschen
2020-09-20 12:42:45 +02:00
parent cb17179924
commit 4764147e1c
144 changed files with 3579 additions and 1021 deletions

View File

@@ -0,0 +1,65 @@
package eu.midnightdust.motschen.dishes.entities;
import com.google.common.collect.ImmutableMap;
import eu.midnightdust.motschen.dishes.DishesMain;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.village.TradeOffer;
import net.minecraft.village.TradeOffers;
import java.util.Random;
public class IceCreamTraderTradeOffers {
public static final Int2ObjectMap<TradeOffers.Factory[]> ICE_CREAM_TRADER_TRADES;
private static Int2ObjectMap<TradeOffers.Factory[]> copyToFastUtilMap(ImmutableMap<Integer, TradeOffers.Factory[]> map) {
return new Int2ObjectOpenHashMap(map);
}
static {
ICE_CREAM_TRADER_TRADES = copyToFastUtilMap(ImmutableMap.of(1, new TradeOffers.Factory[]
{new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamVanilla, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamChocolate, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamWhiteChocolate, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamStrawberry, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBanana, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamPear, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamSweetberry, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBlueberry, 1, 1, 10, 3),
new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBubblegum, 1, 1, 10, 3)}));
}
static class SellItemFactory implements TradeOffers.Factory {
private final ItemStack sell;
private final int price;
private final int count;
private final int maxUses;
private final int experience;
private final float multiplier;
public SellItemFactory(Item item, int price, int count, int maxUses, int experience) {
this(new ItemStack(item), price, count, maxUses, experience);
}
public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience) {
this(stack, price, count, maxUses, experience, 0.05F);
}
public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience, float multiplier) {
this.sell = stack;
this.price = price;
this.count = count;
this.maxUses = maxUses;
this.experience = experience;
this.multiplier = multiplier;
}
public TradeOffer create(Entity entity, Random random) {
return new TradeOffer(new ItemStack(Items.EMERALD, this.price), new ItemStack(this.sell.getItem(), this.count), this.maxUses, this.experience, this.multiplier);
}
}
}