summaryrefslogtreecommitdiff
path: root/common/darkknight/jewelrycraft/JewelrycraftMod.java
blob: 68d26ec23a35f3eb51ab7b6e2552015d77815bd0 (plain)
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package darkknight.jewelrycraft;

import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.NetLoginHandler;
import net.minecraft.network.packet.NetHandler;
import net.minecraft.network.packet.Packet1Login;
import net.minecraft.server.MinecraftServer;
import net.minecraftforge.oredict.OreDictionary;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Mod.Metadata;
import cpw.mods.fml.common.ModMetadata;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.IConnectionHandler;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.network.NetworkMod.SidedPacketHandler;
import cpw.mods.fml.common.network.Player;
import cpw.mods.fml.common.registry.GameRegistry;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.client.JewelryCraftClient;
import darkknight.jewelrycraft.config.ConfigHandler;
import darkknight.jewelrycraft.container.GuiHandler;
import darkknight.jewelrycraft.item.ItemList;
import darkknight.jewelrycraft.lib.Reference;
import darkknight.jewelrycraft.recipes.CraftingRecipes;
import darkknight.jewelrycraft.server.JewelryCraftServer;
import darkknight.jewelrycraft.util.JewelrycraftUtil;
import darkknight.jewelrycraft.worldGen.Generation;

@Mod(modid = Reference.MODID, name = Reference.MODNAME, version = Reference.VERSION)
@NetworkMod(clientSideRequired = false, serverSideRequired = false,
clientPacketHandlerSpec = @SidedPacketHandler(channels = { Reference.PACKET_CHANNEL }, packetHandler = JewelryCraftClient.class),
serverPacketHandlerSpec = @SidedPacketHandler(channels = { Reference.PACKET_CHANNEL }, packetHandler = JewelryCraftServer.class),
connectionHandler = JewelrycraftMod.class)
public class JewelrycraftMod implements IConnectionHandler
{
    @Instance(Reference.MODID)
    public static JewelrycraftMod instance;

    @Metadata(Reference.MODID)
    public static ModMetadata metadata;

    @SidedProxy(clientSide = "darkknight.jewelrycraft.client.ClientProxy", serverSide = "darkknight.jewelrycraft.CommonProxy")
    public static CommonProxy proxy;

    public static CreativeTabs jewelrycraft = new CreativeTabs("JewelryCraft")
    {
        @Override
        public ItemStack getIconItemStack()
        {
            return new ItemStack(ItemList.ring, 1, 0);
        }
    };

    @EventHandler
    public void preInit(FMLPreInitializationEvent e)
    {
        ConfigHandler.preInit(e);
        ItemList.preInit(e);
        BlockList.preInit(e);
        CraftingRecipes.preInit(e);
        proxy.registerRenderers();
    }

    @EventHandler
    public void init(FMLInitializationEvent e)
    {
        OreDictionary.registerOre("ingotShadow", new ItemStack(ItemList.shadowIngot));
        OreDictionary.registerOre("oreShadow", new ItemStack(BlockList.shadowOre));
        GameRegistry.registerWorldGenerator(new Generation());
        new GuiHandler();
    }

    @EventHandler
    public void postInit(FMLPostInitializationEvent e)
    {   
        JewelrycraftUtil.addStuff();
        JewelrycraftUtil.jamcrafters();
    }

    @Override
    // 2) Called when a player logs into the server SERVER SIDE
    public void playerLoggedIn(Player player, NetHandler netHandler, INetworkManager manager)
    {   

    }

    @Override
    // If you don't want the connection to continue, return a non-empty string here SERVER SIDE
    public String connectionReceived(NetLoginHandler netHandler, INetworkManager manager)
    {
        return null;
    }

    @Override
    // 1) Fired when a remote connection is opened CLIENT SIDE
    public void connectionOpened(NetHandler netClientHandler, String server, int port, INetworkManager manager)
    {   

    }

    @Override
    // 1) Fired when a local connection is opened CLIENT SIDE
    public void connectionOpened(NetHandler netClientHandler, MinecraftServer server, INetworkManager manager)
    {   

    }

    @Override
    // Fired when a connection closes ALL SIDES
    public void connectionClosed(INetworkManager manager)
    {   

    }

    @Override
    // 3) Fired when the client established the connection to the server CLIENT SIDE
    public void clientLoggedIn(NetHandler clientHandler, INetworkManager manager, Packet1Login login)
    {   

    }
}