1

Problem with biome spawn :(

pieterx12's Avatar pieterx129/29/14 2:38 pm
1 emeralds 199
Hi I have a problem with my biome. My custom biome won't to spawn in my wordl can someone help me.

Basic.java:
package tutorial.basic;





import tutorial.basic.armor.Armor;
import tutorial.basic.biome.BiomeRegistry;
import tutorial.basic.biome.WorldTypeLavaLands;
import tutorial.basic.blocks.AlachiteOre;
import tutorial.basic.blocks.HardedIce;
import tutorial.basic.blocks.LavaBlock;
import tutorial.basic.blocks.MeteorBlock;
import tutorial.basic.blocks.MeteorBlockB;
import tutorial.basic.blocks.ModBlocks;
import tutorial.basic.items.AlachiteIngot;
import tutorial.basic.items.IceShard;
import tutorial.basic.items.MeteorHelmet;
import tutorial.basic.items.meteorore;
import tutorial.basic.tools.AlachiteSword;
import tutorial.basic.tools.IceSword;
import tutorial.basic.tools.MeteorSword;
import tutorial.basic.worldgeneration.MeteorBlockWG;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemArmor.ArmorMaterial;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement;
import net.minecraft.world.WorldType;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraftforge.common.AchievementPage;
import net.minecraftforge.common.util.EnumHelper;
import cpw.mods.fml.client.registry.RenderingRegistry;
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.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid="basic", name="basic", version="1.0.0")

public class basic {
public final static String NAME = "basic";
public static Block meteorblock = new MeteorBlock();
public static Block hardedice = new HardedIce();
public static Item meteorore = new meteorore(1600);
public static ToolMaterial meteorore1 = EnumHelper.addToolMaterial("meteorore", 2, 250, 11.0F, 2.5F, 10);
@Instance("basic")
public static basic instance;
public static MeteorBlockWG Worldgen1 = new MeteorBlockWG();
// Says where the client and server 'proxy' code is loaded.
@SidedProxy(clientSide="tutorial.basic.client.ClientProxy", serverSide="tutorial.basic.CommonProxy")
public static CommonProxy proxy;
//Achievements
public static Achievement MeteorAchievement;
//Blocks
public static Block LavaBlock = new LavaBlock();
public static Block AlachiteOre = new AlachiteOre();
public static MeteorBlockB MeteorBlock = new MeteorBlockB();
//Items
public static ToolMaterial AlachiteTool = EnumHelper.addToolMaterial("AlachiteIngot", 2, 250, 13.0F, 4.0F, 10);
public static tutorial.basic.items.AlachiteIngot AlachiteIngot = new AlachiteIngot(3602);
public static ToolMaterial iceshard1 = EnumHelper.addToolMaterial("iceshard", 2, 250, 13.0F, 4.0F, 10);
public static Item iceshard = new IceShard(30001);
//Armor
public static ArmorMaterial MeteorOre = EnumHelper.addArmorMaterial("MeteorOre", 15, new int[]{5, 10, 9, 5}, 30);
public static Item MeteorHelmet = new Armor(5000, MeteorOre, 0, 0, "meteorore").setUnlocalizedName("MeteorHelmet").setTextureName("basic:MeteorHelmet");
public static Item MeteorChestplate = new Armor(5001, MeteorOre, 0, 1, "meteorore").setUnlocalizedName("MeteorChestplate").setTextureName("basic:MeteorChestplate");
public static Item MeteorLeggins = new Armor(5002, MeteorOre, 0, 2, "meteorore").setUnlocalizedName("MeteorLeggings").setTextureName("basic:MeteorLeggings");
public static Item MeteorBoots = new Armor(5003, MeteorOre, 0, 3, "meteorore").setUnlocalizedName("MeteorBoots").setTextureName("basic:MeteorBoots");
//Tools
public final static Item AlachiteSword = new AlachiteSword(5000, AlachiteTool);
public final static Item meteorsword = new MeteorSword(5000, meteorore1);
public final static Item icesword = new IceSword(50001, iceshard1);

@EventHandler
public void load(FMLInitializationEvent event) {

//Achievement
MeteorAchievement = new Achievement("achievement.MeteorAchievement", "mineMeteorOre", 0, 0, new ItemStack(basic.meteorore), (Achievement)null).initIndependentStat().registerStat();
AchievementPage.registerAchievementPage(new AchievementPage("Minecraft2.0 Achievements", new Achievement[]{MeteorAchievement}));
proxy.registerRenderers();

GameRegistry.addRecipe(new ItemStack(meteorsword), new Object[]{
" y " ,
" y " ,
" z " ,
'y', basic.meteorore, 'x', ModBlocks.meteorblock, 'z', Items.stick
});
GameRegistry.addRecipe(new ItemStack(meteorsword), new Object[]{
" y " ,
" y " ,
" x " ,
'y', basic.AlachiteOre, 'x', Items.stick,
});

GameRegistry.registerBlock(LavaBlock, "LavaBlock");
LanguageRegistry.addName(LavaBlock, "Lava Block");
GameRegistry.registerItem(AlachiteSword, "AlachiteSword");
LanguageRegistry.addName(AlachiteSword, "Malachite Sword");
GameRegistry.registerItem(AlachiteIngot, "AlachiteIngot");
LanguageRegistry.addName(AlachiteIngot, "Malachite Ingot");
GameRegistry.registerBlock(AlachiteOre, "AlachiteOre");
LanguageRegistry.addName(AlachiteOre, "Alachite Ore");
GameRegistry.registerBlock(MeteorBlock, "MeteorBlock");
LanguageRegistry.addName(MeteorBlock, "Meteor Block");
GameRegistry.registerItem(MeteorBoots, "MeteorBoots");
LanguageRegistry.addName(MeteorBoots, "Meteor Boots");
GameRegistry.registerItem(MeteorLeggins, "MeteorLeggins");
LanguageRegistry.addName(MeteorLeggins, "Meteor Leggings");
GameRegistry.registerWorldGenerator(Worldgen1, 1);
GameRegistry.registerItem(icesword, "IceSword");
LanguageRegistry.addName(icesword, "Ice Sword");
GameRegistry.registerItem(MeteorHelmet, "MeteorHelmet");
LanguageRegistry.addName(MeteorHelmet, "Meteor Helmet");
GameRegistry.registerItem(MeteorChestplate, "Meteor Chestplate");
LanguageRegistry.addName(MeteorChestplate, "Meteor Chestplate");
GameRegistry.registerBlock(hardedice, "hardedice");
GameRegistry.registerItem(meteorsword, "meteorsword");
LanguageRegistry.addName(meteorsword, "Meteor Sword");
GameRegistry.registerBlock(meteorblock, "meteorblock");
LanguageRegistry.addName(hardedice, "Harded Ice");
GameRegistry.registerItem(meteorore, "meteorore");
LanguageRegistry.addName(meteorore, "Meteor Dust");
GameRegistry.registerItem(iceshard, "iceshard");
LanguageRegistry.addName(iceshard, "Ice Shard");
GameRegistry.addSmelting(new ItemStack(ModBlocks.meteorblock), new ItemStack(basic.meteorore), 20F);
GameRegistry.addSmelting(new ItemStack(basic.hardedice), new ItemStack(basic.iceshard), 20F);
GameRegistry.addSmelting(new ItemStack(basic.AlachiteOre), new ItemStack(basic.AlachiteIngot), 100F);
//Crafting
GameRegistry.addRecipe(new ItemStack(basic.MeteorHelmet), new Object[] { "WWW", "W W", " ", 'W', new ItemStack(meteorore)});
GameRegistry.addRecipe(new ItemStack(basic.AlachiteSword), new Object[] { " W ", " W ", " Z ", 'W', new ItemStack(basic.AlachiteOre),'Z' ,new ItemStack(Items.stick)});
GameRegistry.addRecipe(new ItemStack(basic.MeteorChestplate), new Object[] { "W W", "WWW", "WWW", 'W', new ItemStack(meteorore)});
BiomeRegistry.Basic();
};


@EventHandler
public void PreInit(FMLPreInitializationEvent event){
ModBlocks.init();
}
@EventHandler
public void PostLoad(FMLPostInitializationEvent PostEvent){
WorldType LAVALANDS = new WorldTypeLavaLands(3, "LavaLands");
}


}


BiomeRegistry.java:
package tutorial.basic.biome;


import net.minecraft.world.biome.BiomeGenBase;
import net.minecraftforge.common.BiomeDictionary;
import net.minecraftforge.common.BiomeDictionary.Type;
import net.minecraftforge.common.BiomeManager;
public class BiomeRegistry {

public static void Basic(){
initializeBiome();
registerBiome();
}
public static BiomeGenBase LavaLands;
public static void initializeBiome(){
LavaLands = new BiomeGenLavaLands(137).setBiomeName("LavaLands").setTemperatureRainfall(1.2F, 0.9F);
}
public static void registerBiome(){
BiomeDictionary.registerBiomeType(LavaLands, Type.FOREST);
BiomeManager.addSpawnBiome(LavaLands);
}
}

BiomeGenLavaLands.java:
package tutorial.basic.biome;

import net.minecraft.world.biome.BiomeGenBase;

public class BiomeGenLavaLands extends BiomeGenBase{
public BiomeGenLavaLands(int id){
super(id);
}
}

LavaLandsGenLayer.java:
package tutorial.basic.biome;
import java.util.List;
import java.util.ArrayList;

import net.minecraft.util.WeightedRandom;
import net.minecraft.world.WorldType;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.layer.GenLayer;
import net.minecraft.world.gen.layer.IntCache;
import net.minecraftforge.common.BiomeManager;
import net.minecraftforge.common.BiomeManager.BiomeEntry;

public class LavaLandsGenLayerBiome extends GenLayer
{
private List<BiomeEntry> desertBiomes = new ArrayList<BiomeEntry>();
private List<BiomeEntry> warmBiomes = new ArrayList<BiomeEntry>();
private List<BiomeEntry> coolBiomes = new ArrayList<BiomeEntry>();
private List<BiomeEntry> icyBiomes = new ArrayList<BiomeEntry>();

private static final String __OBFID = "CL_00000555";

public LavaLandsGenLayerBiome(long p_i2122_1_, GenLayer p_i2122_3_, WorldType p_i2122_4_)
{
super(p_i2122_1_);

this.parent = p_i2122_3_;

this.desertBiomes.addAll(BiomeManager.desertBiomes);
this.warmBiomes.addAll(BiomeManager.warmBiomes);
this.coolBiomes.addAll(BiomeManager.coolBiomes);
this.icyBiomes.addAll(BiomeManager.icyBiomes);

if (p_i2122_4_ == WorldType.DEFAULT_1_1)
{
desertBiomes.add(new BiomeEntry(BiomeGenBase.desert, 10));
desertBiomes.add(new BiomeEntry(BiomeGenBase.forest, 10));
desertBiomes.add(new BiomeEntry(BiomeGenBase.extremeHills, 10));
desertBiomes.add(new BiomeEntry(BiomeGenBase.swampland, 10));
desertBiomes.add(new BiomeEntry(BiomeGenBase.plains, 10));
desertBiomes.add(new BiomeEntry(BiomeGenBase.taiga, 10));
desertBiomes.add(new BiomeEntry(BiomeRegistry.LavaLands, 10));
}
else
{

desertBiomes.add(new BiomeEntry(BiomeGenBase.desert, 30));
desertBiomes.add(new BiomeEntry(BiomeGenBase.savanna, 20));
desertBiomes.add(new BiomeEntry(BiomeGenBase.plains, 10));
desertBiomes.add(new BiomeEntry(BiomeRegistry.LavaLands, 10));
}
}

/**
* Returns a list of integer values generated by this layer. These may be interpreted as temperatures, rainfall
* amounts, or biomeList[] indices based on the particular GenLayer subclass.
*/
public int[] getInts(int p_75904_1_, int p_75904_2_, int p_75904_3_, int p_75904_4_)
{
int[] aint = this.parent.getInts(p_75904_1_, p_75904_2_, p_75904_3_, p_75904_4_);
int[] aint1 = IntCache.getIntCache(p_75904_3_ * p_75904_4_);

for (int i1 = 0; i1 < p_75904_4_; ++i1)
{
for (int j1 = 0; j1 < p_75904_3_; ++j1)
{
this.initChunkSeed((long)(j1 + p_75904_1_), (long)(i1 + p_75904_2_));
int k1 = aint[j1 + i1 * p_75904_3_];
int l1 = (k1 & 3840) >> 8;
k1 &= -3841;

if (isBiomeOceanic(k1))
{
aint1[j1 + i1 * p_75904_3_] = k1;
}
else if (k1 == BiomeGenBase.mushroomIsland.biomeID)
{
aint1[j1 + i1 * p_75904_3_] = k1;
}
else if (k1 == 1)
{
if (l1 > 0)
{
if (this.nextInt(3) == 0)
{
aint1[j1 + i1 * p_75904_3_] = BiomeGenBase.mesaPlateau.biomeID;
}
else
{
aint1[j1 + i1 * p_75904_3_] = BiomeGenBase.mesaPlateau_F.biomeID;
}
}
else
{
aint1[j1 + i1 * p_75904_3_] = ((BiomeEntry)WeightedRandom.getItem(this.desertBiomes, (int)(this.nextLong(WeightedRandom.getTotalWeight(this.desertBiomes) / 10) * 10))).biome.biomeID;
}
}
else if (k1 == 2)
{
if (l1 > 0)
{
aint1[j1 + i1 * p_75904_3_] = BiomeGenBase.jungle.biomeID;
}
else
{
aint1[j1 + i1 * p_75904_3_] = ((BiomeEntry)WeightedRandom.getItem(this.warmBiomes, (int)(this.nextLong(WeightedRandom.getTotalWeight(this.warmBiomes) / 10) * 10))).biome.biomeID;
}
}
else if (k1 == 3)
{
if (l1 > 0)
{
aint1[j1 + i1 * p_75904_3_] = BiomeGenBase.megaTaiga.biomeID;
}
else
{
aint1[j1 + i1 * p_75904_3_] = ((BiomeEntry)WeightedRandom.getItem(this.coolBiomes, (int)(this.nextLong(WeightedRandom.getTotalWeight(this.coolBiomes) / 10) * 10))).biome.biomeID;
}
}
else if (k1 == 4)
{
aint1[j1 + i1 * p_75904_3_] = ((BiomeEntry)WeightedRandom.getItem(this.icyBiomes, (int)(this.nextLong(WeightedRandom.getTotalWeight(this.icyBiomes) / 10) * 10))).biome.biomeID;
}
else
{
aint1[j1 + i1 * p_75904_3_] = BiomeGenBase.mushroomIsland.biomeID;
}
}
}

return aint1;
}
}

WordTypeLavaLands:
package tutorial.basic.biome;

import net.minecraft.world.WorldType;
import net.minecraft.world.gen.layer.GenLayer;
import net.minecraft.world.gen.layer.GenLayerBiome;
import net.minecraft.world.gen.layer.GenLayerBiomeEdge;
import net.minecraft.world.gen.layer.GenLayerZoom;

public class WorldTypeLavaLands extends WorldType{
public WorldTypeLavaLands(int par1, String name){
super(name);

}
public GenLayer getBiomeLayer(long worldSeed, GenLayer parentLayer)
{
GenLayer ret = new LavaLandsGenLayerBiome(200L, parentLayer, this);
ret = GenLayerZoom.magnify(1000L, ret, 2);
ret = new GenLayerBiomeEdge(1000L, ret);
return ret;
}
}
Posted by pieterx12's Avatar
pieterx12
Level 8 : Apprentice Miner
1

Create an account or sign in to comment.

Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome