private void calculateCelestialBodyDescriptors() { List<CelestialBodyType> celestialBodies = skyDescriptor.getCelestialBodies(); // Find the most suitable sun and moon. This is typically the largest sun in the list of // celestial bodies. int sunidx = -1; int bestsun = 0; int moonidx = -1; int bestmoon = 0; for (int i = 0; i < celestialBodies.size(); i++) { CelestialBodyType type = celestialBodies.get(i); if (type.getGoodSunFactor() > bestsun) { bestsun = type.getGoodSunFactor(); sunidx = i; } if (type.getGoodMoonFactor() > bestmoon) { bestmoon = type.getGoodMoonFactor(); moonidx = i; } } // Always the same random series. Random random = new Random(123); random.nextFloat(); celestialBodyDescriptors = new ArrayList<CelestialBodyDescriptor>(); for (int i = 0; i < celestialBodies.size(); i++) { CelestialBodyType type = celestialBodies.get(i); celestialBodyDescriptors.add(new CelestialBodyDescriptor(type, i == sunidx || i == moonidx)); } }
public void dump(EntityPlayer player) { String digits = getDigitString(); if (!digits.isEmpty()) { logDebug(player, " Digits: " + digits); } if (forcedDimensionSeed != 0) { logDebug(player, " Forced seed: " + forcedDimensionSeed); } if (baseSeed != 0) { logDebug(player, " Base seed: " + baseSeed); } logDebug(player, " World version: " + worldVersion); TerrainType terrainType = getTerrainType(); logDebug(player, " Terrain: " + terrainType.toString()); logDebug( player, " Base block: " + new ItemStack(baseBlockForTerrain.getBlock(), 1, baseBlockForTerrain.getMeta()) .getDisplayName()); if (featureTypes.contains(FeatureType.FEATURE_TENDRILS)) { logDebug( player, " Tendril block: " + new ItemStack(tendrilBlock.getBlock(), 1, tendrilBlock.getMeta()).getDisplayName()); } if (featureTypes.contains(FeatureType.FEATURE_PYRAMIDS)) { for (BlockMeta block : pyramidBlocks) { if (block != null) { logDebug( player, " Pyramid blocks: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } } if (featureTypes.contains(FeatureType.FEATURE_ORBS)) { for (BlockMeta block : sphereBlocks) { if (block != null) { logDebug( player, " Orb blocks: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } } if (featureTypes.contains(FeatureType.FEATURE_HUGEORBS)) { for (BlockMeta block : hugeSphereBlocks) { if (block != null) { logDebug( player, " Huge Orb blocks: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } } if (featureTypes.contains(FeatureType.FEATURE_LIQUIDORBS)) { for (BlockMeta block : liquidSphereBlocks) { if (block != null) { logDebug( player, " Liquid Orb blocks: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } } if (featureTypes.contains(FeatureType.FEATURE_HUGELIQUIDORBS)) { for (BlockMeta block : hugeLiquidSphereBlocks) { if (block != null) { logDebug( player, " Huge Liquid Orb blocks: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } } if (featureTypes.contains(FeatureType.FEATURE_CANYONS)) { logDebug( player, " Canyon block: " + new ItemStack(canyonBlock.getBlock(), 1, canyonBlock.getMeta()).getDisplayName()); } logDebug(player, " Base fluid: " + new ItemStack(fluidForTerrain).getDisplayName()); logDebug( player, " Biome controller: " + (controllerType == null ? "<null>" : controllerType.name())); for (BiomeGenBase biome : getBiomes()) { if (biome != null) { logDebug(player, " Biome: " + biome.biomeName); } } for (FeatureType featureType : getFeatureTypes()) { logDebug(player, " Feature: " + featureType.toString()); } for (BlockMeta block : extraOregen) { if (block != null) { logDebug( player, " Extra ore: " + new ItemStack(block.getBlock(), 1, block.getMeta()).getDisplayName()); } } for (Block block : fluidsForLakes) { logDebug(player, " Lake fluid: " + new ItemStack(block).getDisplayName()); } if (featureTypes.contains(FeatureType.FEATURE_LIQUIDORBS)) { for (Block fluid : liquidSphereFluids) { logDebug(player, " Liquid orb fluids: " + new ItemStack(fluid).getDisplayName()); } } if (featureTypes.contains(FeatureType.FEATURE_HUGELIQUIDORBS)) { for (Block fluid : hugeLiquidSphereFluids) { logDebug( player, " Huge Liquid orb fluids: " + new ItemStack(fluid).getDisplayName()); } } for (StructureType structureType : getStructureTypes()) { logDebug(player, " Structure: " + structureType.toString()); } if (structureTypes.contains(StructureType.STRUCTURE_RECURRENTCOMPLEX)) { for (String type : dimensionTypes) { logDebug(player, " RR DimensionType: " + type); } } for (EffectType effectType : getEffectTypes()) { logDebug(player, " Effect: " + effectType.toString()); } logDebug(player, " Sun brightness: " + skyDescriptor.getSunBrightnessFactor()); logDebug(player, " Star brightness: " + skyDescriptor.getStarBrightnessFactor()); float r = skyDescriptor.getSkyColorFactorR(); float g = skyDescriptor.getSkyColorFactorG(); float b = skyDescriptor.getSkyColorFactorB(); logDebug(player, " Sky color: " + r + ", " + g + ", " + b); r = skyDescriptor.getFogColorFactorR(); g = skyDescriptor.getFogColorFactorG(); b = skyDescriptor.getFogColorFactorB(); logDebug(player, " Fog color: " + r + ", " + g + ", " + b); SkyType skyType = skyDescriptor.getSkyType(); if (skyType != SkyType.SKY_NORMAL) { logDebug(player, " Sky type: " + skyType.toString()); } for (CelestialBodyType bodyType : skyDescriptor.getCelestialBodies()) { logDebug(player, " Sky body: " + bodyType.name()); } if (weatherDescriptor.getRainStrength() > -0.5f) { logDebug(player, " Weather rain: " + weatherDescriptor.getRainStrength()); } if (weatherDescriptor.getThunderStrength() > -0.5f) { logDebug(player, " Weather thunder " + weatherDescriptor.getThunderStrength()); } for (MobDescriptor mob : extraMobs) { if (mob != null) { if (mob.getEntityClass() == null) { logDebug(player, " Mob: " + mob); } else { logDebug(player, " Mob: " + mob.getEntityClass().getName()); } } } if (peaceful) { logDebug(player, " Peaceful mode"); } if (noanimals) { logDebug(player, " No animals mode"); } if (shelter) { logDebug(player, " Safe shelter"); } if (respawnHere) { logDebug(player, " Respawn local"); } if (celestialAngle != null) { logDebug(player, " Celestial angle: " + celestialAngle); } if (timeSpeed != null) { logDebug(player, " Time speed: " + timeSpeed); } if (probeCounter > 0) { logDebug(player, " Probes: " + probeCounter); } if (patreon1 != 0) { logDebug(player, " Patreon: " + patreon1); } }