Implemented Nether Gateways

Completed Nether gateways as part of Nether fortresses.
This commit is contained in:
SenseiKiwi
2014-01-28 07:02:11 -04:00
parent 7700d72a99
commit 78d7db0f75
5 changed files with 369 additions and 10 deletions

View File

@@ -1,9 +1,7 @@
package StevenDimDoors.mod_pocketDim;
import paulscode.sound.SoundSystem;
import net.minecraft.block.Block;
import net.minecraft.client.audio.SoundManager;
import net.minecraft.client.audio.SoundPool;
import net.minecraft.client.audio.SoundPoolEntry;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@@ -14,15 +12,13 @@ import net.minecraft.util.ChunkCoordinates;
import net.minecraft.world.World;
import net.minecraftforge.client.event.sound.PlayBackgroundMusicEvent;
import net.minecraftforge.client.event.sound.SoundLoadEvent;
import net.minecraftforge.event.Event;
import net.minecraftforge.event.EventPriority;
import net.minecraftforge.event.ForgeSubscribe;
import net.minecraftforge.event.entity.living.LivingDeathEvent;
import net.minecraftforge.event.entity.living.LivingFallEvent;
import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.terraingen.InitMapGenEvent;
import net.minecraftforge.event.world.WorldEvent;
import StevenDimDoors.mod_pocketDim.blocks.IDimDoor;
import StevenDimDoors.mod_pocketDim.core.DDTeleporter;
import StevenDimDoors.mod_pocketDim.core.PocketManager;
import StevenDimDoors.mod_pocketDim.items.BaseItemDoor;
@@ -30,6 +26,7 @@ import StevenDimDoors.mod_pocketDim.ticking.RiftRegenerator;
import StevenDimDoors.mod_pocketDim.util.Point4D;
import StevenDimDoors.mod_pocketDim.world.LimboProvider;
import StevenDimDoors.mod_pocketDim.world.PocketProvider;
import StevenDimDoors.mod_pocketDim.world.fortresses.DDNetherFortressGenerator;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -43,6 +40,15 @@ public class EventHookContainer
this.properties = properties;
}
@ForgeSubscribe(priority = EventPriority.LOW)
public void onMapGen(InitMapGenEvent event)
{
if (event.type == InitMapGenEvent.EventType.NETHER_BRIDGE)
{
event.newGen = new DDNetherFortressGenerator();
}
}
@SideOnly(Side.CLIENT)
@ForgeSubscribe
public void onSoundLoad(SoundLoadEvent event)
@@ -56,8 +62,8 @@ public class EventHookContainer
event.manager.addSound(mod_pocketDim.modid+":riftClose.ogg");
event.manager.addSound(mod_pocketDim.modid+":riftDoor.ogg");
event.manager.addSound(mod_pocketDim.modid+":creepy.ogg");
}
@SideOnly(Side.CLIENT)
@ForgeSubscribe
public void onSoundEffectResult(PlayBackgroundMusicEvent event)
@@ -68,7 +74,6 @@ public class EventHookContainer
}
}
@ForgeSubscribe
public void onPlayerEvent(PlayerInteractEvent event)
{
@@ -113,6 +118,7 @@ public class EventHookContainer
}
}
}
@ForgeSubscribe
public void onWorldLoad(WorldEvent.Load event)
{
@@ -129,7 +135,7 @@ public class EventHookContainer
RiftRegenerator.regenerateRiftsInAllWorlds();
}
if(event.world!=null)
if (event.world != null)
{
this.playMusicForDim(event.world);
}
@@ -140,7 +146,8 @@ public class EventHookContainer
{
event.setCanceled(event.entity.worldObj.provider.dimensionId == properties.LimboDimensionID);
}
@ForgeSubscribe(priority=EventPriority.HIGHEST)
@ForgeSubscribe(priority = EventPriority.HIGHEST)
public boolean LivingDeathEvent(LivingDeathEvent event)
{
Entity entity = event.entity;