1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
package lance5057.tDefense.holiday;
import java.util.Calendar;
import lance5057.tDefense.Reference;
import lance5057.tDefense.util.ModuleBase;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood;
import net.minecraft.world.storage.loot.LootEntryItem;
import net.minecraft.world.storage.loot.LootTable;
import net.minecraft.world.storage.loot.conditions.LootCondition;
import net.minecraft.world.storage.loot.conditions.RandomChance;
import net.minecraft.world.storage.loot.functions.LootFunction;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.LootTableLoadEvent;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.registries.IForgeRegistry;
@Mod.EventBusSubscriber(modid = Reference.MOD_ID)
public class HolidayBase extends ModuleBase
{
public HolidayBase()
{
MinecraftForge.EVENT_BUS.register(this);
}
public static ItemFood item_redmintcane;
public static ItemFood item_greenmintcane;
public static ItemFood item_gingerbread;
@Override
public void preInit(FMLPreInitializationEvent e)
{
}
@Override
public void init(FMLInitializationEvent e)
{
// TODO Auto-generated method stub
}
@Override
public void postInit(FMLPostInitializationEvent e)
{
// TODO Auto-generated method stub
}
public void registerItems(final RegistryEvent.Register<Item> event)
{
final IForgeRegistry registry = event.getRegistry();
item_redmintcane = new ItemFood(2, 0, false);
item_greenmintcane = new ItemFood(2, 0, false);
item_gingerbread = new ItemFood(20, 20, false);
item_redmintcane.setRegistryName("redmintcane");
item_greenmintcane.setRegistryName("greenmintcane");
item_gingerbread.setRegistryName("gingerbread");
registry.register(item_gingerbread);
registry.register(item_redmintcane);
registry.register(item_greenmintcane);
}
@SideOnly(Side.CLIENT)
@SubscribeEvent
public static void registerModels(ModelRegistryEvent event)
{
ModelLoader.setCustomModelResourceLocation(item_gingerbread, 0, new ModelResourceLocation(Reference.MOD_ID + ":gingerbread", "inventory"));
ModelLoader.setCustomModelResourceLocation(item_redmintcane, 0, new ModelResourceLocation(Reference.MOD_ID + ":redmintcane", "inventory"));
ModelLoader.setCustomModelResourceLocation(item_greenmintcane, 0, new ModelResourceLocation(Reference.MOD_ID + ":greenmintcane", "inventory"));
}
@SubscribeEvent
public void EditLootTables(LootTableLoadEvent e)
{
if (Calendar.getInstance().get(Calendar.MONTH) == Calendar.DECEMBER)
{
LootTable t = e.getTable();
if (e.getName().toString().equals("minecraft:entities/skeleton") || e.getName().toString().equals("minecraft:entities/zombie"))
{
LootCondition[] testchance = { new RandomChance(1.01F) };
LootCondition[] chance = { new RandomChance(0.25F) };
t.getPool("main").addEntry(new LootEntryItem(item_redmintcane, 5, 1, new LootFunction[0], chance, "redcandy"));
t.getPool("main").addEntry(new LootEntryItem(item_greenmintcane, 5, 1, new LootFunction[0], chance, "greencandy"));
LootCondition[] chance2 = { new RandomChance(0.05F) };
t.getPool("main").addEntry(new LootEntryItem(item_gingerbread, 1, 5, new LootFunction[0], chance2, "gingerbread"));
}
}
}
}
|