1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
package gtPlusPlus;
import java.io.File;
import java.util.Random;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import cofh.mod.ChildMod;
import cpw.mods.fml.common.*;
import cpw.mods.fml.common.Mod.CustomProperty;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.*;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.IFMLLoadingPlugin.MCVersion;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.world.darkworld.Dimension_DarkWorld;
import gtPlusPlus.core.world.darkworld.biome.Biome_DarkWorld;
import gtPlusPlus.core.world.darkworld.block.blockDarkWorldGround;
import gtPlusPlus.core.world.darkworld.block.blockDarkWorldPollutedDirt;
import gtPlusPlus.core.world.darkworld.block.blockDarkWorldPortal;
import gtPlusPlus.core.world.darkworld.block.blockDarkWorldPortalFrame;
import gtPlusPlus.core.world.darkworld.item.itemDarkWorldPortalTrigger;
import gtPlusPlus.xmod.gregtech.HANDLER_GT;
import gtPlusPlus.xmod.gregtech.api.util.GTPP_Config;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraftforge.common.DimensionManager;
import net.minecraftforge.common.config.Configuration;
@MCVersion(value = "1.7.10")
@ChildMod(parent = CORE.MODID, mod = @Mod(modid = "GT++DarkWorld",
name = "GT++ Dark World",
version = CORE.VERSION,
dependencies = "after:Miscutils;after:Gregtech",
customProperties = @CustomProperty(k = "cofhversion", v = "true")))
public class GTplusplus_Secondary implements IFuelHandler, IWorldGenerator{
public static final String MODID2 = "GT++ Dark World";
public static final String VERSION2 = "0.1";
// Dark World Handler
Biome_DarkWorld DarkWorld_Biome = new Biome_DarkWorld();
Dimension_DarkWorld DarkWorld_Dimension = new Dimension_DarkWorld();
public static int globalDarkWorldPortalSpawnTimer = 0;
@EventHandler
public void load(final FMLInitializationEvent e) {
Utils.LOG_INFO("Begin resource allocation for " + MODID2 + " V" + VERSION2);
try {
initMod();
} catch (final Throwable $) {
final ModContainer This = FMLCommonHandler.instance().findContainerFor(this);
LogManager.getLogger(This.getModId()).log(Level.ERROR, "There was a problem loading " + This.getName(), $);
}
//Load Dark World and Biome
GameRegistry.registerFuelHandler(this);
GameRegistry.registerWorldGenerator(this, 1);
DarkWorld_Biome.load();
DarkWorld_Dimension.load();
}
// Pre-Init
@Mod.EventHandler
public void preInit(final FMLPreInitializationEvent event) {
Utils.LOG_INFO("Loading " + MODID2 + " V" + VERSION2);
//Setup
setVars();
// Load Dark World
DarkWorld_Biome.instance = GTplusplus.instance;
DarkWorld_Dimension.instance = GTplusplus.instance;
DarkWorld_Biome.preInit(event);
DarkWorld_Dimension.preInit(event);
//Load/Set Custom Ore Gen
HANDLER_GT.sCustomWorldgenFile = new GTPP_Config(new Configuration(new File(new File(event.getModConfigurationDirectory(), "GTplusplus"), "WorldGeneration.cfg")));
}
void setVars(){
Dimension_DarkWorld.DIMID = DimensionManager.getNextFreeDimId();
Dimension_DarkWorld.portalBlock = new blockDarkWorldPortal();
Dimension_DarkWorld.portalItem = (itemDarkWorldPortalTrigger) (new itemDarkWorldPortalTrigger().setUnlocalizedName("dimensionDarkWorld_trigger"));
Item.itemRegistry.addObject(423, "dimensionDarkWorld_trigger", Dimension_DarkWorld.portalItem);
Dimension_DarkWorld.blockTopLayer = new blockDarkWorldGround();
Dimension_DarkWorld.blockSecondLayer = new blockDarkWorldPollutedDirt();
GameRegistry.registerBlock(Dimension_DarkWorld.blockTopLayer, "blockDarkWorldGround");
GameRegistry.registerBlock(Dimension_DarkWorld.blockSecondLayer, "blockDarkWorldGround2");
Blocks.fire.setFireInfo(Dimension_DarkWorld.blockTopLayer, 30, 20);
Dimension_DarkWorld.blockPortalFrame = new blockDarkWorldPortalFrame();
GameRegistry.registerBlock(Dimension_DarkWorld.blockPortalFrame, "blockDarkWorldPortalFrame");
}
@EventHandler
public void serverLoad(FMLServerStartingEvent event) {
DarkWorld_Biome.serverLoad(event);
DarkWorld_Dimension.serverLoad(event);
}
@Override
public int getBurnTime(ItemStack fuel) {
if (DarkWorld_Biome.addFuel(fuel) != 0)
return DarkWorld_Biome.addFuel(fuel);
if (DarkWorld_Dimension.addFuel(fuel) != 0)
return DarkWorld_Dimension.addFuel(fuel);
return 0;
}
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider) {
chunkX = chunkX * 16;
chunkZ = chunkZ * 16;
if (world.provider.dimensionId == -1) {
DarkWorld_Biome.generateNether(world, random, chunkX, chunkZ);
}
if (world.provider.dimensionId == 0) {
DarkWorld_Biome.generateSurface(world, random, chunkX, chunkZ);
}
if (world.provider.dimensionId == -1) {
DarkWorld_Dimension.generateNether(world, random, chunkX, chunkZ);
}
if (world.provider.dimensionId == 0) {
}
}
private static void initMod() {
}
@EventHandler
public static void postInit(final FMLPostInitializationEvent e) {
Utils.LOG_INFO("Finished loading Dark World plugin for GT++.");
}
}
|