Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package DragonvaleMod;
- import net.minecraft.block.Block;
- import net.minecraft.client.Minecraft;
- import net.minecraft.creativetab.CreativeTabs;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.EntityList;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemStack;
- import net.minecraft.server.MinecraftServer;
- import net.minecraft.src.ModLoader;
- import net.minecraft.util.ChunkCoordinates;
- import net.minecraft.world.Teleporter;
- import net.minecraft.world.WorldServer;
- import net.minecraft.world.biome.BiomeGenBase;
- import net.minecraftforge.common.Configuration;
- import net.minecraftforge.common.DimensionManager;
- import DragonvaleMod.blocks.*;
- import DragonvaleMod.entity.tile.TileEntityCoinPress;
- import DragonvaleMod.gui.GuiHandlerDragonvale;
- import DragonvaleMod.items.*;
- import DragonvaleMod.models.dragons.*;
- import DragonvaleMod.proxy.Common;
- import DragonvaleMod.renderer.*;
- import DragonvaleMod.world.*;
- import cpw.mods.fml.common.Mod;
- import cpw.mods.fml.common.Mod.EventHandler;
- import cpw.mods.fml.common.Mod.Init;
- import cpw.mods.fml.common.Mod.Instance;
- import cpw.mods.fml.common.Mod.PostInit;
- import cpw.mods.fml.common.Mod.PreInit;
- import cpw.mods.fml.common.Mod.ServerStarted;
- import cpw.mods.fml.common.Mod.ServerStarting;
- import cpw.mods.fml.common.SidedProxy;
- import cpw.mods.fml.common.event.FMLEvent;
- 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.FMLServerStartedEvent;
- import cpw.mods.fml.common.event.FMLServerStartingEvent;
- import cpw.mods.fml.common.network.NetworkMod;
- import cpw.mods.fml.common.network.NetworkRegistry;
- import cpw.mods.fml.common.registry.GameRegistry;
- import cpw.mods.fml.common.registry.LanguageRegistry;
- import cpw.mods.fml.common.registry.TickRegistry;
- import cpw.mods.fml.relauncher.Side;
- import cpw.mods.fml.relauncher.SideOnly;
- @Mod(modid = "DragonvaleMod", name = "Dragonvale", version = "alpha.1.0.1")
- @NetworkMod(clientSideRequired = true, serverSideRequired = true)
- public class DragonvaleMod
- {
- @SidedProxy(clientSide = "DragonvaleMod.proxy.Client", serverSide = "DragonvaleMod.proxy.Common")
- public static Common proxy;
- @Instance("Dragonvale")
- public static DragonvaleMod instance;
- public static final String modid = "dragonv:";
- //----------------declaration-------------------
- //stacksize
- public static int moneyStackSize = 64;
- //IDs
- public static int portalblockid = 500;
- public static int blockForPortalid = 501;
- public static int portalFireid = 502;
- public static int gemOreid = 503;
- public static int coinPressid = 504;
- public static int coinPressONid = 505;
- public static int portalPlacerid = 1500;
- public static int portalMakerid = 1501;
- public static int itemGemid = 1502;
- public static int itemMoneyid = 1503;
- public static int itemScaleid= 1504;
- public static int itemDragonEggid= 1505;
- public static int dimensionid = 2;
- public static int biomeid = 199;
- //Names
- public static final String[] NDRAGONS = new String[]{"Plant","Fire","Earth","Blue"};
- //Blocks and Items
- public static PortalBlock portalBlock = new PortalBlock(portalblockid);
- public static Block blockForPortal = new BlockForPortal(blockForPortalid);
- public static Block portalFire = new PortalFire(portalFireid);
- public static Block BlockGemOre = new BlockGemOre(gemOreid);
- public static Block BlockCoinPress = new BlockCoinPress(coinPressid, false);
- public static Block BlockCoinPressON = new BlockCoinPress(coinPressONid, true);
- public static Item portalPlacer = new PortalPlacer(portalPlacerid);
- public static Item portalMaker = new PortalMaker(portalMakerid);
- public static Item itemGem = new ItemGem(itemGemid);
- public static Item itemMoney = new ItemMoney(itemMoneyid);
- public static Item itemScale = new ItemScale(itemScaleid);
- public static Item itemDragonEgg = new ItemDragonEgg(itemDragonEggid);
- //Biomes
- public static BiomeGenBase islands = new BiomeGenDragonIslands(biomeid);
- //Renderer
- public static final ModelDragons[] MODELDRAGONS = new ModelDragons[]{new ModelPlantDragon(),new ModelFireDragon(),new ModelEarthDragon(),new ModelBlueEyes()};
- public static final RenderDragons[] RDRAGONS = new RenderDragons[]{new RenderPlantDragon(MODELDRAGONS[0], 0.6F),new RenderFireDragon(MODELDRAGONS[1], 0.6F),
- new RenderEarthDragon(MODELDRAGONS[2], 0.5F),new RenderBlueDragon(MODELDRAGONS[3], 0.6F)};//float fuer schatten
- //-----------------------------------
- public static CreativeTabs tabdragonvale = new CreativeTabs("Dragonvale")
- {
- public int getTabIconItemIndex()
- {
- return DragonvaleMod.itemDragonEgg.itemID;
- }
- public ItemStack getIconItemStack()
- {
- return new ItemStack(getTabIconItem(), 1, 0);
- }
- };
- @EventHandler
- public void preInit(FMLPreInitializationEvent event)
- {
- Configuration config = new Configuration(event.getSuggestedConfigurationFile());
- config.load();
- portalblockid = config.get(config.CATEGORY_BLOCK, "portalblockid", 500).getInt();
- blockForPortalid = config.get(config.CATEGORY_BLOCK, "blockforPortal", 501).getInt();
- portalFireid = config.get(config.CATEGORY_BLOCK, "Fireid", 502).getInt();
- gemOreid = config.get(config.CATEGORY_BLOCK, "GemOreid", 503).getInt();
- coinPressid = config.get(config.CATEGORY_BLOCK, "CoinPressid", 504).getInt();
- coinPressONid = config.get(config.CATEGORY_BLOCK, "CoinPressONid", 505).getInt();
- portalPlacerid = config.get(config.CATEGORY_ITEM, "Portalstarterid", 1500).getInt();
- portalMakerid = config.get(config.CATEGORY_ITEM, "PortalCreatorid", 1501).getInt();
- itemGemid = config.get(config.CATEGORY_ITEM, "Gemid", 1502).getInt();
- itemMoneyid = config.get(config.CATEGORY_ITEM, "Moneyid", 1503).getInt();
- itemScaleid = config.get(config.CATEGORY_ITEM, "Dragonscaleid", 1504).getInt();
- itemDragonEggid = config.get(config.CATEGORY_ITEM, "Dragoneggid",1505).getInt();
- dimensionid = config.get(config.CATEGORY_GENERAL, "dimensionid", 2).getInt();
- biomeid = config.get(config.CATEGORY_GENERAL, "biomeid", 199).getInt();
- config.save();
- }
- @EventHandler
- public void init(FMLInitializationEvent event)
- {
- DimensionManager.registerProviderType(dimensionid, WorldProviderDragonvale.class, false);
- DimensionManager.registerDimension(dimensionid, dimensionid);
- islands.setBiomeName("DragonIslands").setColor(353825).setTemperatureRainfall(0.5F, 0.6F).setMinMaxHeight(0.5F, 1F);
- portalBlock.setHardness(10F).setResistance(2F).setLightValue(10F);
- blockForPortal.setCreativeTab(tabdragonvale).func_111022_d(this.modid+"blockforportal").setHardness(5F).setResistance(25F);
- portalFire.func_111022_d(this.modid+"none");
- BlockGemOre.setCreativeTab(tabdragonvale).func_111022_d(this.modid+"Gem Ore").setHardness(5F).setResistance(2F);
- BlockCoinPress.setCreativeTab(tabdragonvale).setHardness(1F).setResistance(5F);
- BlockCoinPressON.setHardness(1F).setResistance(5F).setUnlocalizedName("CoinPressOn");
- portalPlacer.setCreativeTab(tabdragonvale).func_111206_d(this.modid+"portalplacer");
- portalMaker.setCreativeTab(tabdragonvale).func_111206_d(this.modid+"portalmaker");
- itemGem.setCreativeTab(tabdragonvale).func_111206_d(this.modid+"itemGem");
- itemMoney.setCreativeTab(tabdragonvale).func_111206_d(this.modid+"coin_real");
- itemScale.setCreativeTab(tabdragonvale).func_111206_d(this.modid+"Dragonscale");
- itemDragonEgg.setCreativeTab(tabdragonvale);
- //Coinpress
- GameRegistry.registerTileEntity(TileEntityCoinPress.class, "CoinPress");
- NetworkRegistry.instance().registerGuiHandler(this, new GuiHandlerDragonvale());
- craftrecipes();
- proxy.registerRenderThings();
- proxy.registerSound();
- proxy.registerTickHandler();
- regItemsBlocks();
- updatelang();
- regGen();
- }
- @EventHandler
- public static void postInit(FMLPostInitializationEvent event)
- {
- }
- @EventHandler
- public static void onServerStarting(FMLServerStartingEvent event)
- {
- }
- @EventHandler
- public static void onServerStarted(FMLServerStartedEvent event)
- {
- }
- //methods------------------------------------------
- private void craftrecipes()
- {
- //recipes
- GameRegistry.addRecipe(new ItemStack(portalMaker),
- "ttt", "isi", "ttt", 't', this.blockForPortal, 's', this.portalPlacer, 'i', this.itemGem);
- GameRegistry.addRecipe(new ItemStack(portalPlacer),
- "rrg","rsr","srr", 's', Item.stick, 'r', Item.redstone, 'g', this.itemGem);
- //shapeless
- GameRegistry.addShapelessRecipe(new ItemStack(blockForPortal),
- this.itemGem,this.itemGem,this.itemGem,this.itemGem);
- //smelting
- GameRegistry.addSmelting(this.BlockGemOre.blockID, new ItemStack(itemGem), 0.6F);
- }
- private void regib(Object object, String name)
- {
- if(object == null){System.out.println("Not Registerd: "+ name==null?"AND Name is null":name);}
- else
- {
- if(object instanceof Block)
- {
- GameRegistry.registerBlock((Block) object, name);
- LanguageRegistry.addName(object, name);
- }
- else if(object instanceof Item)
- {
- GameRegistry.registerItem((Item) object, name);
- LanguageRegistry.addName(object, name);
- }
- else
- {
- System.out.println("Wrong input in regib");
- }
- }
- }
- private void regItemsBlocks()
- {
- //blocks
- this.regib(portalBlock, "PortalBlockToDragonvale");
- this.regib(blockForPortal, "Portal Block");
- this.regib(BlockGemOre, "Gemore");
- this.regib(BlockCoinPress, "Coinpress");
- //items
- this.regib(portalPlacer, "Portalstarter");
- this.regib(portalMaker, "Portalcreator");
- this.regib(itemGem, "Gem");
- this.regib(itemMoney, "Coin");
- this.regib(itemScale, "Dragonscale");
- this.regib(itemDragonEgg, "Dragonegg");
- }
- private void regGen()
- {
- GameRegistry.registerWorldGenerator(new GeneratorOres());
- }
- private void updatelang()
- {
- //DragonEggs
- for(int i=0;i<ItemDragonEgg.DragonEggNames.length;i++)
- {
- LanguageRegistry.instance().addStringLocalization("item.itemDragonEgg."+ItemDragonEgg.DragonEggNames[i] + ".name", "en_US", ItemDragonEgg.DragonEggNames[i]+" Dragonegg");
- }
- //things
- LanguageRegistry.instance().addStringLocalization("itemGroup.Dragonvale", "en_US", "Dragonvale");
- //dragons
- for(int i=0;i<this.NDRAGONS.length;i++)
- {
- LanguageRegistry.instance().addStringLocalization("entity."+NDRAGONS[i]+".name", "en_US", NDRAGONS[i]+" Dragon");
- }
- }
- /**
- * Args: entity, dimensionID, teleporter
- * */
- public static void travelToDimension(Entity entity1, int par1, Teleporter teleporter)
- {
- if (!entity1.worldObj.isRemote && !entity1.isDead)
- {
- entity1.worldObj.theProfiler.startSection("changeDimension");
- MinecraftServer minecraftserver = MinecraftServer.getServer();
- int j = entity1.dimension;
- WorldServer worldserver = minecraftserver.worldServerForDimension(j);
- WorldServer worldserver1 = minecraftserver.worldServerForDimension(par1);
- entity1.dimension = par1;
- if (j == 1 && par1 == 1)
- {
- worldserver1 = minecraftserver.worldServerForDimension(0);
- entity1.dimension = 0;
- }
- entity1.worldObj.removeEntity(entity1);
- entity1.isDead = false;
- entity1.worldObj.theProfiler.startSection("reposition");
- if(teleporter != null)
- {
- minecraftserver.getConfigurationManager().transferEntityToWorld(entity1, j, worldserver, worldserver1, teleporter);
- }
- else
- {
- minecraftserver.getConfigurationManager().transferEntityToWorld(entity1, j, worldserver, worldserver1);
- }
- entity1.worldObj.theProfiler.endStartSection("reloading");
- Entity entity = EntityList.createEntityByName(EntityList.getEntityString(entity1), worldserver1);
- if (entity != null)
- {
- entity.copyDataFrom(entity1, true);
- if (j == 1 && par1 == 1)
- {
- ChunkCoordinates chunkcoordinates = worldserver1.getSpawnPoint();
- chunkcoordinates.posY = entity1.worldObj.getTopSolidOrLiquidBlock(chunkcoordinates.posX, chunkcoordinates.posZ);
- entity.setLocationAndAngles((double)chunkcoordinates.posX, (double)chunkcoordinates.posY, (double)chunkcoordinates.posZ, entity.rotationYaw, entity.rotationPitch);
- }
- worldserver1.spawnEntityInWorld(entity);
- }
- entity1.isDead = true;
- entity1.worldObj.theProfiler.endSection();
- worldserver.resetUpdateEntityTick();
- worldserver1.resetUpdateEntityTick();
- entity1.worldObj.theProfiler.endSection();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement