Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package tutorial.dimension;
- import tutorial.TutorialMoon;
- import java.util.Random;
- import micdoodle8.mods.galacticraft.api.galaxies.CelestialBody;
- import micdoodle8.mods.galacticraft.api.prefab.world.gen.WorldProviderSpace;
- import micdoodle8.mods.galacticraft.api.vector.Vector3;
- import micdoodle8.mods.galacticraft.api.world.IExitHeight;
- import micdoodle8.mods.galacticraft.api.world.ISolarLevel;
- import micdoodle8.mods.galacticraft.api.world.ITeleportType;
- import micdoodle8.mods.galacticraft.core.client.CloudRenderer;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.player.EntityPlayerMP;
- import net.minecraft.world.World;
- import net.minecraft.world.WorldServer;
- import net.minecraft.world.biome.WorldChunkManager;
- import net.minecraft.world.chunk.IChunkProvider;
- import net.minecraftforge.client.IRenderHandler;
- public class TutorialWorldProvider extends WorldProviderSpace implements IExitHeight, ISolarLevel, ITeleportType{
- @Override
- public boolean canSpaceshipTierPass(int tier) {
- return tier >= 1;
- }
- @Override
- public float getFallDamageModifier() {
- return 0.75;
- }
- @Override
- public double getFuelUsageMultiplier() {
- return 0.8;
- }
- //Gravity is tricky. The only working values I have found are between 0.04 and 0.075 exclusive.
- //Anything else tends to be a bit wonky. Feel free to experiment.
- //Also a higher value means less gravity
- @Override
- public float getGravity() {
- return 0.07F;
- }
- //The moon is 7.0, 0 is none, lower numbers mean more
- @Override
- public double getMeteorFrequency() {
- return 4.0;
- }
- @Override
- public float getSoundVolReductionAmount() {
- return Float.MAX_VALUE;
- }
- @Override
- public float getThermalLevelModifier() {
- return -2;
- }
- @Override
- public float getWindLevel() {
- return 0;
- }
- @Override
- public boolean canRainOrSnow() {
- return false;
- }
- @Override
- public CelestialBody getCelestialBody() {
- return ;
- }
- //Created later
- @Override
- public Class<? extends IChunkProvider> getChunkProviderClass() {
- return TutorialChunkProvider.class;
- }
- @Override
- public long getDayLength() {
- return 24000L;
- }
- @Override
- public Vector3 getFogColor() {
- return new Vector3(0, 0, 0);
- }
- @Override
- public Vector3 getSkyColor() {
- return new Vector3(0, 0, 0);
- }
- //Created Later
- @Override
- public Class<? extends WorldChunkManager> getWorldChunkManagerClass() {
- return WorldChunkManagerTutorial.class;
- }
- @Override
- public boolean hasSunset() {
- return false;
- }
- //Can players respawn here?
- @Override
- public boolean shouldForceRespawn() {
- return true;
- }
- @Override
- public double getSolarEnergyMultiplier() {
- return 0.85;
- }
- @Override
- public double getYCoordinateToTeleport() {
- return 800;
- }
- @Override
- public Vector3 getEntitySpawnLocation(WorldServer arg0, Entity arg1) {
- return new Vector3(arg1.posX, 140, arg1.posZ);
- }
- @Override
- public Vector3 getParaChestSpawnLocation(WorldServer arg0,
- EntityPlayerMP arg1, Random arg2) {
- //Randomize parachest spawn location
- return new Vector3(arg1.posX - 5 + arg2.nextInt(10), 150, arg1.posZ - 5 + arg2.nextInt(10));
- }
- @Override
- public Vector3 getPlayerSpawnLocation(WorldServer arg0, EntityPlayerMP arg1) {
- return getEntitySpawnLocation(arg0, arg1);
- }
- @Override
- public void onSpaceDimensionChanged(World arg0, EntityPlayerMP arg1,
- boolean arg2) {}
- @Override
- public boolean useParachute() {
- return true;
- }
- @Override
- public IRenderHandler getCloudRenderer(){
- //Removes clouds from dimension
- return new CloudRenderer();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement