Added Tesla sound fxs
This commit is contained in:
parent
c686e325b9
commit
8436e0aa50
10 changed files with 43 additions and 3 deletions
BIN
resources/assets/resonantinduction/sound/electricshock1.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock1.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock2.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock2.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock3.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock3.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock4.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock4.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock5.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock5.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock6.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock6.ogg
Normal file
Binary file not shown.
BIN
resources/assets/resonantinduction/sound/electricshock7.ogg
Normal file
BIN
resources/assets/resonantinduction/sound/electricshock7.ogg
Normal file
Binary file not shown.
|
@ -5,6 +5,7 @@ package resonantinduction;
|
|||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import resonantinduction.base.Vector3;
|
||||
import resonantinduction.contractor.TileEntityEMContractor;
|
||||
import resonantinduction.fx.FXElectricBolt;
|
||||
|
@ -28,6 +29,8 @@ public class ClientProxy extends CommonProxy
|
|||
@Override
|
||||
public void registerRenderers()
|
||||
{
|
||||
MinecraftForge.EVENT_BUS.register(SoundHandler.INSTANCE);
|
||||
|
||||
RenderingRegistry.registerBlockHandler(BlockRenderingHandler.INSTANCE);
|
||||
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTesla.class, new RenderTesla());
|
||||
|
|
32
src/resonantinduction/SoundHandler.java
Normal file
32
src/resonantinduction/SoundHandler.java
Normal file
|
@ -0,0 +1,32 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package resonantinduction;
|
||||
|
||||
import net.minecraftforge.client.event.sound.SoundLoadEvent;
|
||||
import net.minecraftforge.event.ForgeSubscribe;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
/**
|
||||
* @author Calclavia
|
||||
*
|
||||
*/
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class SoundHandler
|
||||
{
|
||||
public static final SoundHandler INSTANCE = new SoundHandler();
|
||||
|
||||
public static final String[] SOUND_FILES = { "electricshock1.ogg", "electricshock2.ogg", "electricshock3.ogg", "electricshock4.ogg", "electricshock5.ogg", "electricshock6.ogg", "electricshock7.ogg" };
|
||||
|
||||
@ForgeSubscribe
|
||||
public void loadSoundEvents(SoundLoadEvent event)
|
||||
{
|
||||
for (int i = 0; i < SOUND_FILES.length; i++)
|
||||
{
|
||||
event.manager.soundPoolSounds.addSound(ResonantInduction.PREFIX + SOUND_FILES[i]);
|
||||
}
|
||||
|
||||
ResonantInduction.LOGGER.fine("Loaded sound fxs");
|
||||
}
|
||||
}
|
|
@ -78,8 +78,10 @@ public class TileEntityTesla extends TileEntityBase implements ITesla, IPacketRe
|
|||
|
||||
for (ITesla tesla : transferTeslaCoils)
|
||||
{
|
||||
tesla.transfer(transferEnergy * (1 - (this.worldObj.rand.nextFloat() * 0.1f)));
|
||||
this.transfer(-transferEnergy);
|
||||
if (this.ticks % 20 == 0)
|
||||
{
|
||||
this.worldObj.playSoundEffect(this.xCoord + 0.5, this.yCoord + 0.5, this.zCoord + 0.5, ResonantInduction.PREFIX + "electricshock", this.getEnergyStored() / 10, (float) (1 - 0.2 * (this.dyeID / 16)));
|
||||
}
|
||||
|
||||
Vector3 teslaVector = new Vector3((TileEntity) tesla);
|
||||
|
||||
|
@ -89,6 +91,9 @@ public class TileEntityTesla extends TileEntityBase implements ITesla, IPacketRe
|
|||
}
|
||||
|
||||
ResonantInduction.proxy.renderElectricShock(this.worldObj, new Vector3(this.getTopTelsa()).translate(new Vector3(0.5)), teslaVector.translate(new Vector3(0.5)), (float) dyeColors[this.dyeID].x, (float) dyeColors[this.dyeID].y, (float) dyeColors[this.dyeID].z);
|
||||
|
||||
tesla.transfer(transferEnergy * (1 - (this.worldObj.rand.nextFloat() * 0.1f)));
|
||||
this.transfer(-transferEnergy);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue