Added custom ambient music to limbo

This commit is contained in:
StevenRS11
2013-10-17 22:43:38 -04:00
parent 9418ed59df
commit 2f7b713f5e
11 changed files with 36 additions and 60 deletions

View File

@@ -1,8 +1,14 @@
package StevenDimDoors.mod_pocketDim; package StevenDimDoors.mod_pocketDim;
import paulscode.sound.SoundSystem;
import net.minecraft.client.audio.SoundPool;
import net.minecraft.client.audio.SoundPoolEntry;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChunkCoordinates; import net.minecraft.util.ChunkCoordinates;
import net.minecraft.world.World;
import net.minecraftforge.client.event.sound.PlayBackgroundMusicEvent;
import net.minecraftforge.client.event.sound.PlaySoundEffectEvent;
import net.minecraftforge.client.event.sound.SoundLoadEvent; import net.minecraftforge.client.event.sound.SoundLoadEvent;
import net.minecraftforge.event.EventPriority; import net.minecraftforge.event.EventPriority;
import net.minecraftforge.event.ForgeSubscribe; import net.minecraftforge.event.ForgeSubscribe;
@@ -15,6 +21,7 @@ import StevenDimDoors.mod_pocketDim.ticking.RiftRegenerator;
import StevenDimDoors.mod_pocketDim.util.Point4D; import StevenDimDoors.mod_pocketDim.util.Point4D;
import StevenDimDoors.mod_pocketDim.world.LimboProvider; import StevenDimDoors.mod_pocketDim.world.LimboProvider;
import StevenDimDoors.mod_pocketDim.world.PocketProvider; import StevenDimDoors.mod_pocketDim.world.PocketProvider;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
@@ -39,8 +46,18 @@ public class EventHookContainer
event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftEnd.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftEnd.ogg"))); event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftEnd.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftEnd.ogg")));
event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftClose.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftClose.ogg"))); event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftClose.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftClose.ogg")));
event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftDoor.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftDoor.ogg"))); event.manager.soundPoolSounds.addSound("mods/DimDoors/sfx/riftDoor.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/riftDoor.ogg")));
} event.manager.soundPoolMusic.addSound("mods/DimDoors/sfx/creepy.ogg", (mod_pocketDim.class.getResource("/mods/DimDoors/sfx/creepy.ogg")));
}
@SideOnly(Side.CLIENT)
@ForgeSubscribe
public void onSoundEffectResult(PlayBackgroundMusicEvent event)
{
if (FMLClientHandler.instance().getClient().thePlayer.worldObj.provider.dimensionId==mod_pocketDim.properties.LimboDimensionID);
{
this.playMusicForDim(FMLClientHandler.instance().getClient().thePlayer.worldObj);
}
}
@ForgeSubscribe @ForgeSubscribe
public void onWorldLoad(WorldEvent.Load event) public void onWorldLoad(WorldEvent.Load event)
{ {
@@ -56,6 +73,8 @@ public class EventHookContainer
{ {
RiftRegenerator.regenerateRiftsInAllWorlds(); RiftRegenerator.regenerateRiftsInAllWorlds();
} }
this.playMusicForDim(event.world);
} }
@ForgeSubscribe @ForgeSubscribe
@@ -63,8 +82,6 @@ public class EventHookContainer
{ {
event.setCanceled(event.entity.worldObj.provider.dimensionId == properties.LimboDimensionID); event.setCanceled(event.entity.worldObj.provider.dimensionId == properties.LimboDimensionID);
} }
@ForgeSubscribe(priority=EventPriority.HIGHEST) @ForgeSubscribe(priority=EventPriority.HIGHEST)
public boolean LivingDeathEvent(LivingDeathEvent event) public boolean LivingDeathEvent(LivingDeathEvent event)
{ {
@@ -96,4 +113,20 @@ public class EventHookContainer
PocketManager.save(); PocketManager.save();
} }
} }
public void playMusicForDim(World world)
{
if(world.isRemote&&world.provider instanceof LimboProvider)
{
SoundSystem sndSystem = FMLClientHandler.instance().getClient().sndManager.sndSystem;
sndSystem.stop("BgMusic");
SoundPoolEntry soundPoolEntry = FMLClientHandler.instance().getClient().sndManager.soundPoolMusic.getRandomSoundFromSoundPool("mods.DimDoors.sfx.creepy");
sndSystem.backgroundMusic("LimboMusic", soundPoolEntry.soundUrl, soundPoolEntry.soundName, false);
sndSystem.play("LimboMusic");
}
else if(world.isRemote && !(world.provider instanceof LimboProvider))
{
FMLClientHandler.instance().getClient().sndManager.sndSystem.stop("LimboMusic");
}
}
} }

View File

@@ -1,57 +0,0 @@
<?xml version="1.0" standalone="no" ?>
<!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN" "http://audacity.sourceforge.net/xml/audacityproject-1.3.0.dtd" >
<project xmlns="http://audacity.sourceforge.net/xml/" projname="creeepysound_data" version="1.3.0" audacityversion="2.0.3" sel0="2.8328344671" sel1="2.8328344671" vpos="0" h="0.0000000000" zoom="86.1328125000" rate="44100.0">
<tags/>
<wavetrack name="Audio Track" channel="0" linked="1" mute="0" solo="0" height="150" minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
<waveclip offset="0.00000000">
<sequence maxsamples="262144" sampleformat="262159" numsamples="636928">
<waveblock start="0">
<simpleblockfile filename="e0000f7b.au" len="258048" min="-0.208184" max="0.177342" rms="0.031214"/>
</waveblock>
<waveblock start="258048">
<simpleblockfile filename="e0000a54.au" len="258048" min="-0.003662" max="0.004272" rms="0.000371"/>
</waveblock>
<waveblock start="516096">
<simpleblockfile filename="e0000fde.au" len="120832" min="-0.000061" max="0.000061" rms="0.000014"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
<wavetrack name="Audio Track" channel="1" linked="0" mute="0" solo="0" height="150" minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
<waveclip offset="0.00000000">
<sequence maxsamples="262144" sampleformat="262159" numsamples="636928">
<waveblock start="0">
<simpleblockfile filename="e0000d4e.au" len="258048" min="-0.16133" max="0.200306" rms="0.031537"/>
</waveblock>
<waveblock start="258048">
<simpleblockfile filename="e000041b.au" len="258048" min="-0.003632" max="0.004272" rms="0.000371"/>
</waveblock>
<waveblock start="516096">
<simpleblockfile filename="e000014d.au" len="120832" min="-0.000061" max="0.000061" rms="0.000014"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
<wavetrack name="Audio Track" channel="0" linked="1" mute="1" solo="0" height="150" minimized="0" isSelected="1" rate="44100" gain="1.0" pan="0.0">
<waveclip offset="0.24151927">
<sequence maxsamples="262144" sampleformat="262159" numsamples="173056">
<waveblock start="0">
<simpleblockfile filename="e00006cb.au" len="173056" min="-0.15036" max="0.179535" rms="0.01021"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
<wavetrack name="Audio Track" channel="1" linked="0" mute="1" solo="0" height="150" minimized="0" isSelected="1" rate="44100" gain="1.0" pan="0.0">
<waveclip offset="0.24151927">
<sequence maxsamples="262144" sampleformat="262159" numsamples="173056">
<waveblock start="0">
<simpleblockfile filename="e0000805.au" len="173056" min="-0.15036" max="0.179504" rms="0.01021"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
</project>

Binary file not shown.