Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.27 KB | None | 0 0
  1. package com.locke.internet.europa;
  2.  
  3. import java.util.Random;
  4.  
  5. import micdoodle8.mods.galacticraft.api.galaxies.CelestialBody;
  6. import micdoodle8.mods.galacticraft.api.prefab.world.gen.WorldProviderSpace;
  7. import micdoodle8.mods.galacticraft.api.vector.Vector3;
  8. import micdoodle8.mods.galacticraft.api.world.IExitHeight;
  9. import micdoodle8.mods.galacticraft.api.world.ISolarLevel;
  10. import micdoodle8.mods.galacticraft.api.world.ITeleportType;
  11. import micdoodle8.mods.galacticraft.core.GalacticraftCore;
  12. import micdoodle8.mods.galacticraft.core.client.CloudRenderer;
  13. import net.minecraft.entity.Entity;
  14. import net.minecraft.entity.player.EntityPlayerMP;
  15. import net.minecraft.world.World;
  16. import net.minecraft.world.WorldServer;
  17. import net.minecraft.world.biome.WorldChunkManager;
  18. import net.minecraft.world.chunk.IChunkProvider;
  19. import net.minecraftforge.client.IRenderHandler;
  20. import com.locke.internet.europa.WorldChunkManagerEuropa;
  21. import com.locke.internet.main.Main;
  22.  
  23. public class WorldProviderEuropa extends WorldProviderSpace implements IExitHeight, ISolarLevel, ITeleportType{
  24.  
  25. @Override
  26. public boolean canSpaceshipTierPass(int tier) {
  27. return tier >= 1;
  28. }
  29.  
  30. @Override
  31. public float getFallDamageModifier() {
  32. return 0.75F;
  33. }
  34.  
  35. @Override
  36. public double getFuelUsageMultiplier() {
  37. return 0.8;
  38. }
  39.  
  40. //Gravity is tricky. The only working values I have found are between 0.04 and 0.075 exclusive.
  41. //Anything else tends to be a bit wonky. Feel free to experiment.
  42. //Also a higher value means less gravity
  43. @Override
  44. public float getGravity() {
  45. return 0.07F;
  46. }
  47.  
  48. //The moon is 7.0, 0 is none, lower numbers mean more
  49. @Override
  50. public double getMeteorFrequency() {
  51. return 4.0;
  52. }
  53.  
  54. @Override
  55. public float getSoundVolReductionAmount() {
  56. return Float.MAX_VALUE;
  57. }
  58.  
  59. @Override
  60. public float getThermalLevelModifier() {
  61. return -2;
  62. }
  63.  
  64. @Override
  65. public float getWindLevel() {
  66. return 0;
  67. }
  68.  
  69. @Override
  70. public boolean canRainOrSnow() {
  71. return false;
  72. }
  73.  
  74. @Override
  75. public CelestialBody getCelestialBody() {
  76. return EuropaRegistry.europa;
  77. }
  78.  
  79. //Created later
  80. @Override
  81. public Class<? extends IChunkProvider> getChunkProviderClass() {
  82. return ChunkProviderEuropa.class;
  83. }
  84.  
  85. @Override
  86. public long getDayLength() {
  87. return 24000L;
  88. }
  89.  
  90. @Override
  91. public Vector3 getFogColor() {
  92. return new Vector3(0, 0, 0);
  93. }
  94.  
  95. @Override
  96. public Vector3 getSkyColor() {
  97. return new Vector3(0, 0, 0);
  98. }
  99.  
  100. //Created Later
  101. @Override
  102. public Class<? extends WorldChunkManager> getWorldChunkManagerClass() {
  103. return WorldChunkManagerEuropa.class;
  104. }
  105.  
  106. @Override
  107. public boolean hasSunset() {
  108. return false;
  109. }
  110.  
  111. //Can players respawn here?
  112. @Override
  113. public boolean shouldForceRespawn() {
  114. return true;
  115. }
  116.  
  117. @Override
  118. public double getSolarEnergyMultiplier() {
  119. return 0.85;
  120. }
  121.  
  122. @Override
  123. public double getYCoordinateToTeleport() {
  124. return 800;
  125. }
  126.  
  127. @Override
  128. public Vector3 getEntitySpawnLocation(WorldServer arg0, Entity arg1) {
  129. return new Vector3(arg1.posX, 140, arg1.posZ);
  130. }
  131.  
  132. @Override
  133. public Vector3 getParaChestSpawnLocation(WorldServer arg0,
  134. EntityPlayerMP arg1, Random arg2) {
  135. //Randomize parachest spawn location
  136. return new Vector3(arg1.posX - 5 + arg2.nextInt(10), 150, arg1.posZ - 5 + arg2.nextInt(10));
  137. }
  138.  
  139. @Override
  140. public Vector3 getPlayerSpawnLocation(WorldServer arg0, EntityPlayerMP arg1) {
  141. return getEntitySpawnLocation(arg0, arg1);
  142. }
  143.  
  144. @Override
  145. public void onSpaceDimensionChanged(World arg0, EntityPlayerMP arg1,
  146. boolean arg2) {}
  147.  
  148. @Override
  149. public boolean useParachute() {
  150. return true;
  151. }
  152.  
  153. @Override
  154. public IRenderHandler getCloudRenderer(){
  155. //Removes clouds from dimension
  156. return new CloudRenderer();
  157. }
  158.  
  159. @Override
  160. public void setupAdventureSpawn(EntityPlayerMP player) {
  161. // TODO Auto-generated method stub
  162.  
  163. }
  164. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement