Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.mod.topazmod;
- import cpw.mods.fml.common.FMLCommonHandler;
- import cpw.mods.fml.common.IFuelHandler;
- 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.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.event.FMLServerStartingEvent;
- import cpw.mods.fml.common.eventhandler.SubscribeEvent;
- import cpw.mods.fml.common.network.NetworkRegistry;
- import cpw.mods.fml.common.registry.EntityRegistry;
- import cpw.mods.fml.common.registry.GameRegistry;
- import cpw.mods.fml.relauncher.Side;
- import cpw.mods.fml.relauncher.SideOnly;
- import net.minecraft.block.Block;
- import net.minecraft.block.material.Material;
- import net.minecraft.client.renderer.texture.IIconRegister;
- import net.minecraft.creativetab.CreativeTabs;
- import net.minecraft.entity.item.EntityItem;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.Items;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemStack;
- import net.minecraft.util.IIcon;
- import net.minecraftforge.common.MinecraftForge;
- import net.minecraftforge.event.entity.player.FillBucketEvent;
- import net.minecraftforge.fluids.Fluid;
- import net.minecraftforge.fluids.FluidContainerRegistry;
- import net.minecraftforge.fluids.FluidRegistry;
- import net.mod.topazmod.blocks.BlockFluidPoison;
- import net.mod.topazmod.blocks.ColoriumOre;
- import net.mod.topazmod.dynamite.EntityDynamite;
- import net.mod.topazmod.event.event;
- import net.mod.topazmod.init.BlockMod;
- import net.mod.topazmod.init.EntityMod;
- import net.mod.topazmod.init.ItemMod;
- import net.mod.topazmod.init.Recipe;
- import net.mod.topazmod.items.ItemBucketPoison;
- import net.mod.topazmod.proxy.CommonProxy;
- import net.mod.topazmod.world.WorldRegister;
- @Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.VERSION)
- public class TopazMod
- {
- public static Block poisenouswaterb;
- public static Fluid poison;
- public static Item poisonbucket;
- @Instance(Reference.MOD_NAME)
- public static TopazMod instance;
- public SpikeTopaze SpikeTopaze = new SpikeTopaze();
- @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
- public static CommonProxy proxy;
- public static CreativeTabs topatab = new CreativeTabs("topaTabs")
- {
- @SideOnly(Side.CLIENT)
- public Item getTabIconItem()
- {
- return ItemMod.item_topaze;
- }
- };
- @EventHandler
- public void load(FMLInitializationEvent event) {
- SpikeTopaze.load();
- }
- @EventHandler
- public void serverLoad(FMLServerStartingEvent event) {
- SpikeTopaze.serverLoad(event);
- }
- @EventHandler
- public void preInit (FMLPreInitializationEvent event)
- {
- ColoriumOre.init();
- ColoriumOre.register();
- BlockMod.init();
- BlockMod.register();
- ItemMod.init();
- ItemMod.register();
- Recipe.init();
- Recipe.register();
- WorldRegister.manRegistry();
- SpikeTopaze.preInit(event);
- proxy.registerRenderers(this);
- poison = new Fluid("poison").setLuminosity(0).setDensity(500).setViscosity(1000).setGaseous(false); //on cree notre fluid que l'on nomme poison
- FluidRegistry.registerFluid(poison); // on register notre fluid
- poison = FluidRegistry.getFluid("poison");
- poisenouswaterb = new BlockFluidPoison(poison, Material.water){
- @SideOnly(Side.CLIENT)
- protected IIcon stillIcon;
- @SideOnly(Side.CLIENT)
- protected IIcon flowingIcon;
- @Override
- public IIcon getIcon(int side, int meta) {
- IIcon result = stillIcon;
- if (side == 1) {
- result = flowingIcon;
- }
- return result;
- }
- @SideOnly(Side.CLIENT)
- @Override
- public void registerBlockIcons(IIconRegister iir) {
- stillIcon = iir.registerIcon(Reference.MOD_ID + ":PoisonStill");
- flowingIcon = iir.registerIcon(Reference.MOD_ID + ":PoisonFlowing");
- }
- }; // on crée notre block
- GameRegistry.registerBlock(poisenouswaterb, poisenouswaterb.getUnlocalizedName().substring(5)); //puis on le register
- poisonbucket = new ItemBucketPoison(TopazMod.poisenouswaterb).setMaxDamage(1).setUnlocalizedName("poisonbucket").setCreativeTab(CreativeTabs.tabMisc).setContainerItem(Items.bucket).setTextureName(Reference.MOD_ID + ":poisonbucket"); //on definit notre sceau de poison
- GameRegistry.registerItem(poisonbucket , "poisonbucket "); // on register l'item
- FluidContainerRegistry.registerFluidContainer(FluidRegistry.getFluidStack("poison", FluidContainerRegistry.BUCKET_VOLUME), new ItemStack(TopazMod.poisonbucket), FluidContainerRegistry.EMPTY_BUCKET);
- }
- @EventHandler
- public void init (FMLInitializationEvent event)
- {
- proxy.registerRenders();
- EntityMod.init();
- }
- @EventHandler
- public void postInit (FMLPostInitializationEvent event)
- {
- }
- @SubscribeEvent
- public void onBucketFill(FillBucketEvent event)
- {
- Block id = event.world.getBlock(event.target.blockX, event.target.blockY, event.target.blockZ);
- int metadata = event.world.getBlockMetadata(event.target.blockX, event.target.blockY, event.target.blockZ);
- if(id == this.poisenouswaterb && metadata == 0)
- {
- event.world.setBlockToAir(event.target.blockX, event.target.blockY, event.target.blockZ);
- if (!event.world.isRemote){
- event.entityPlayer.inventory.consumeInventoryItem(Items.bucket);
- EntityItem itemsc = new EntityItem(event.world, event.entityPlayer.posX, event.entityPlayer.posY, event.entityPlayer.posZ, new ItemStack(TopazMod.poisonbucket, 1));
- event.world.spawnEntityInWorld(itemsc);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment