当前位置: 首页>>代码示例>>Java>>正文


Java IWorldGenerator类代码示例

本文整理汇总了Java中cpw.mods.fml.common.IWorldGenerator的典型用法代码示例。如果您正苦于以下问题:Java IWorldGenerator类的具体用法?Java IWorldGenerator怎么用?Java IWorldGenerator使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


IWorldGenerator类属于cpw.mods.fml.common包,在下文中一共展示了IWorldGenerator类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: generateWorld

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Callback hook for world gen - if your mod wishes to add extra mod related generation to the world
 * call this
 *
 * @param chunkX
 * @param chunkZ
 * @param world
 * @param chunkGenerator
 * @param chunkProvider
 */
public static void generateWorld(int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
{
    if (sortedGeneratorList == null)
    {
        computeSortedGeneratorList();
    }
    long worldSeed = world.func_72905_C();
    Random fmlRandom = new Random(worldSeed);
    long xSeed = fmlRandom.nextLong() >> 2 + 1L;
    long zSeed = fmlRandom.nextLong() >> 2 + 1L;
    long chunkSeed = (xSeed * chunkX + zSeed * chunkZ) ^ worldSeed;

    for (IWorldGenerator generator : sortedGeneratorList)
    {
        fmlRandom.setSeed(chunkSeed);
        generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
    }
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:29,代码来源:GameRegistry.java

示例2: generateWorld

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Callback hook for world gen - if your mod wishes to add extra mod related generation to the world
 * call this
 *
 * @param chunkX
 * @param chunkZ
 * @param world
 * @param chunkGenerator
 * @param chunkProvider
 */
public static void generateWorld(int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
{
    if (sortedGeneratorList == null)
    {
        computeSortedGeneratorList();
    }
    long worldSeed = world.getSeed();
    Random fmlRandom = new Random(worldSeed);
    long xSeed = fmlRandom.nextLong() >> 2 + 1L;
    long zSeed = fmlRandom.nextLong() >> 2 + 1L;
    long chunkSeed = (xSeed * chunkX + zSeed * chunkZ) ^ worldSeed;

    for (IWorldGenerator generator : sortedGeneratorList)
    {
        fmlRandom.setSeed(chunkSeed);
        generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
    }
}
 
开发者ID:alexandrage,项目名称:CauldronGit,代码行数:29,代码来源:GameRegistry.java

示例3: registerWorldGenerator

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Register a world generator - something that inserts new block types into the world
 *
 * @param generator the generator
 * @param modGenerationWeight a weight to assign to this generator. Heavy weights tend to sink to the bottom of
 * list of world generators (i.e. they run later)
 */
public static void registerWorldGenerator(IWorldGenerator generator, int modGenerationWeight)
{
    // Cauldron start - mod id's are not available during generateWorld so we must capture them here
    String modId = Loader.instance().activeModContainer().getModId();
    modId = modId.replaceAll("[^A-Za-z0-9]", ""); // remove all non-digits/alphanumeric
    modId.replace(" ", "_");
    worldGenerators.add(generator);
    worldGeneratorIndex.put(generator, modGenerationWeight);
    if (sortedGeneratorList != null)
    {
        sortedGeneratorList = null;
    }
    worldGenMap.put(generator.getClass().getName(), modId);
    // Cauldron end
}
 
开发者ID:xtrafrancyz,项目名称:Cauldron,代码行数:23,代码来源:GameRegistry.java

示例4: isEnabled

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public static boolean isEnabled(IWorldGenerator generator)
{
	if(isEnabled(generator))
	{
		long worldSeed = 0;
        Random fmlRandom = new Random(worldSeed);
        long xSeed = fmlRandom.nextLong() >> 2 + 1L;
        long zSeed = fmlRandom.nextLong() >> 2 + 1L;
        int chunkX = 0;
		int chunkZ = 0;
		long chunkSeed = (xSeed * chunkX  + zSeed * chunkZ ) ^ worldSeed;
		fmlRandom.setSeed(chunkSeed);
		World world = null;
		IChunkProvider chunkGenerator = null;
		IChunkProvider chunkProvider = null;
		generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
	}
	return false;
}
 
开发者ID:CreativeMD,项目名称:World-Generation-Manager,代码行数:20,代码来源:GenerationDummyContainer.java

示例5: getName

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public static String getName(IWorldGenerator generator)
{
	try
	{
		String name = (String) generator.getClass().getMethod("getName").invoke(generator);
		if(!name.equals(""))
			return name;
	}catch(Exception e){
		
	}
	if(!getPrefix().equals("minecraft"))
	{
		return getPrefix();
	}
	return generator.getClass().getName();
}
 
开发者ID:CreativeMD,项目名称:World-Generation-Manager,代码行数:17,代码来源:GenerationDummyContainer.java

示例6: onAdd

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public static void onAdd(IWorldGenerator generator)
{
	try
	{
		String name = getName(generator);
		while (containsName(name)) {
			name += "I";
		}
		WorldGenerator worldGenerator = new WorldGenerator(name, generator, getPrefix());
		worldGenerators.add(worldGenerator);
		configuration.load();
		worldGenerator.state = configuration.get("regeneration", worldGenerator.name, 1).getInt();
    	configuration.save();
	}catch(Exception e){
		System.out.println("Error registering World Generator");
		e.printStackTrace();
	}
}
 
开发者ID:CreativeMD,项目名称:World-Generation-Manager,代码行数:19,代码来源:GenerationDummyContainer.java

示例7: registerWorldGenerator

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Register a world generator - something that inserts new block types into the world
 *
 * @param generator the generator
 * @param modGenerationWeight a weight to assign to this generator. Heavy weights tend to sink to the bottom of
 * list of world generators (i.e. they run later)
 */
public static void registerWorldGenerator(IWorldGenerator generator, int modGenerationWeight)
{
    worldGenerators.add(generator);
    worldGeneratorIndex.put(generator, modGenerationWeight);
    if (sortedGeneratorList != null)
    {
        sortedGeneratorList = null;
    }
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:17,代码来源:GameRegistry.java

示例8: computeSortedGeneratorList

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
private static void computeSortedGeneratorList()
{
    ArrayList<IWorldGenerator> list = Lists.newArrayList(worldGenerators);
    Collections.sort(list, new Comparator<IWorldGenerator>() {
        @Override
        public int compare(IWorldGenerator o1, IWorldGenerator o2)
        {
            return Ints.compare(worldGeneratorIndex.get(o1), worldGeneratorIndex.get(o2));
        }
    });
    sortedGeneratorList = ImmutableList.copyOf(list);
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:13,代码来源:GameRegistry.java

示例9: generateWorld

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Callback hook for world gen - if your mod wishes to add extra mod related generation to the world
 * call this
 *
 * @param chunkX
 * @param chunkZ
 * @param world
 * @param chunkGenerator
 * @param chunkProvider
 */
public static void generateWorld(int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
{
    if (sortedGeneratorList == null)
    {
        computeSortedGeneratorList();
    }
    long worldSeed = world.getSeed();
    Random fmlRandom = new Random(worldSeed);
    long xSeed = fmlRandom.nextLong() >> 2 + 1L;
    long zSeed = fmlRandom.nextLong() >> 2 + 1L;
    long chunkSeed = (xSeed * chunkX + zSeed * chunkZ) ^ worldSeed;

    boolean before = ((net.minecraft.world.WorldServer)world).theChunkProviderServer.loadChunkOnProvideRequest; // Cauldron store value
    ((net.minecraft.world.WorldServer)world).theChunkProviderServer.loadChunkOnProvideRequest = true; // Cauldron load chunks on provide requests
    for (IWorldGenerator generator : worldGenerators)
    {
    // Cauldron start
        if (!configWorldGenCache.containsKey(generator.getClass().getName()))
        {
            String modId = worldGenMap.get(generator.getClass().getName());
            String generatorName = "";
            generatorName = modId + "-" + generator.getClass().getSimpleName();
            boolean generatorEnabled = world.cauldronConfig.getBoolean("worldgen-" + generatorName, true);
            configWorldGenCache.put(generator.getClass().getName(), generatorEnabled);
        }
        if (configWorldGenCache.get(generator.getClass().getName()))
        {
            fmlRandom.setSeed(chunkSeed);
            generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
        }
    }
    ((net.minecraft.world.WorldServer)world).theChunkProviderServer.loadChunkOnProvideRequest = before; // reset
    // Cauldron end
}
 
开发者ID:xtrafrancyz,项目名称:Cauldron,代码行数:45,代码来源:GameRegistry.java

示例10: generateWorld

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Callback hook for world gen - if your mod wishes to add extra mod related generation to the world
 * call this
 *
 * @param chunkX
 * @param chunkZ
 * @param world
 * @param chunkGenerator
 * @param chunkProvider
 */
public static void generateWorld(int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
{
    long worldSeed = world.func_72905_C();
    Random fmlRandom = new Random(worldSeed);
    long xSeed = fmlRandom.nextLong() >> 2 + 1L;
    long zSeed = fmlRandom.nextLong() >> 2 + 1L;
    long chunkSeed = (xSeed * chunkX + zSeed * chunkZ) ^ worldSeed;

    for (IWorldGenerator generator : worldGenerators)
    {
        fmlRandom.setSeed(chunkSeed);
        generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
    }
}
 
开发者ID:HATB0T,项目名称:RuneCraftery,代码行数:25,代码来源:GameRegistry.java

示例11: generateWorld

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
/**
 * Callback hook for world gen - if your mod wishes to add extra mod related generation to the world
 * call this
 *
 * @param chunkX
 * @param chunkZ
 * @param world
 * @param chunkGenerator
 * @param chunkProvider
 */
public static void generateWorld(int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
{
    long worldSeed = world.getSeed();
    Random fmlRandom = new Random(worldSeed);
    long xSeed = fmlRandom.nextLong() >> 2 + 1L;
    long zSeed = fmlRandom.nextLong() >> 2 + 1L;
    long chunkSeed = (xSeed * chunkX + zSeed * chunkZ) ^ worldSeed;

    for (IWorldGenerator generator : worldGenerators)
    {
        fmlRandom.setSeed(chunkSeed);
        generator.generate(fmlRandom, chunkX, chunkZ, world, chunkGenerator, chunkProvider);
    }
}
 
开发者ID:HATB0T,项目名称:RuneCraftery,代码行数:25,代码来源:GameRegistry.java

示例12: register

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
@Override
protected void register(IWorldGenerator value, RegWorldGen anno, String field)
        throws Exception {
    GameRegistry.registerWorldGenerator(value, anno.value());
}
 
开发者ID:LambdaInnovation,项目名称:LambdaLib,代码行数:6,代码来源:WorldGenRegistration.java

示例13: registerWorldGen

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public static void registerWorldGen(IWorldGenerator worldGenClass, int weightedProbability){
	GameRegistry.registerWorldGenerator(worldGenClass, weightedProbability);
}
 
开发者ID:Brandomine,项目名称:Augury,代码行数:4,代码来源:ModWorldGen.java

示例14: getWorldGenerators

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public List<Class<? extends IWorldGenerator>> getWorldGenerators() {
	return worldGens;
}
 
开发者ID:ExtrabiomesXL,项目名称:EBXS-AutumnWoods,代码行数:4,代码来源:AutumnWoods.java

示例15: registerWorldGen

import cpw.mods.fml.common.IWorldGenerator; //导入依赖的package包/类
public static void registerWorldGen(IWorldGenerator worldGenClass, int weightedProbablility)
{
    GameRegistry.registerWorldGenerator(worldGenClass, weightedProbablility);
}
 
开发者ID:phdsteve,项目名称:roddenberry,代码行数:5,代码来源:ModWorld.java


注:本文中的cpw.mods.fml.common.IWorldGenerator类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。