mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
when the big pizza pie hits the moon like your eye that's amoreeee
This commit is contained in:
parent
4462a48648
commit
23e6e2f8e5
@ -141,6 +141,7 @@
|
||||
"weapon.rocketFlame": {"category": "block", "sounds": [{"name": "weapon/rocketFlame", "stream": false}]},
|
||||
"weapon.ballsLaser": {"category": "hostile", "sounds": [{"name": "weapon/ballsLaser", "stream": false}]},
|
||||
"weapon.dartShoot": {"category": "player", "sounds": [{"name": "weapon/dartShoot", "stream": false}]},
|
||||
"weapon.mukeExplosion": {"category": "player", "sounds": [{"name": "weapon/mukeExplosion", "stream": false}]},
|
||||
|
||||
"weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]},
|
||||
"weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]},
|
||||
|
||||
BIN
src/main/java/assets/hbm/sounds/weapon/mukeExplosion.ogg
Normal file
BIN
src/main/java/assets/hbm/sounds/weapon/mukeExplosion.ogg
Normal file
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 5.7 KiB |
@ -122,6 +122,7 @@ public class GunFatmanFactory {
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setString("type", "muke");
|
||||
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, bullet.posX, bullet.posY + 0.5, bullet.posZ), new TargetPoint(bullet.dimension, bullet.posX, bullet.posY, bullet.posZ, 250));
|
||||
bullet.worldObj.playSoundEffect(x, y, z, "hbm:weapon.mukeExplosion", 15.0F, 1.0F);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@ -12,6 +12,7 @@ import com.hbm.handler.BulletConfiguration;
|
||||
import com.hbm.handler.GunConfiguration;
|
||||
import com.hbm.interfaces.IHoldableWeapon;
|
||||
import com.hbm.interfaces.IItemHUD;
|
||||
import com.hbm.packet.AuxParticlePacketNT;
|
||||
import com.hbm.packet.GunAnimationPacket;
|
||||
import com.hbm.packet.GunButtonPacket;
|
||||
import com.hbm.packet.PacketDispatcher;
|
||||
@ -188,6 +189,13 @@ public class ItemGunBase extends Item implements IHoldableWeapon, IItemHUD {
|
||||
setItemWear(stack, getItemWear(stack) + wear);
|
||||
}
|
||||
world.playSoundAtEntity(player, mainConfig.firingSound, 1.0F, mainConfig.firingPitch);
|
||||
|
||||
if(player.getDisplayName().equals("Vic4Games")) {
|
||||
NBTTagCompound nbt = new NBTTagCompound();
|
||||
nbt.setString("type", "justTilt");
|
||||
nbt.setInteger("time", mainConfig.rateOfFire + 1);
|
||||
PacketDispatcher.wrapper.sendTo(new AuxParticlePacketNT(nbt, player.posX, player.posY, player.posZ), (EntityPlayerMP) player);
|
||||
}
|
||||
}
|
||||
|
||||
//unlike fire(), being called does not automatically imply success, some things may still have to be handled before spawning the projectile
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.model.ModelChicken;
|
||||
import net.minecraft.client.particle.EntityBlockDustFX;
|
||||
import net.minecraft.client.particle.EntityCloudFX;
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.particle.EntityFireworkSparkFX;
|
||||
@ -15,12 +16,15 @@ import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.MovingObjectPosition;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.Vec3;
|
||||
import net.minecraft.util.MovingObjectPosition.MovingObjectType;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.MinecraftForgeClient;
|
||||
import net.minecraftforge.client.model.AdvancedModelLoader;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
@ -43,6 +47,7 @@ import com.hbm.entity.particle.*;
|
||||
import com.hbm.entity.projectile.*;
|
||||
import com.hbm.handler.HbmKeybinds.EnumKeybind;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.lib.Library;
|
||||
import com.hbm.particle.*;
|
||||
import com.hbm.render.block.*;
|
||||
import com.hbm.render.entity.*;
|
||||
@ -914,6 +919,26 @@ public class ClientProxy extends ServerProxy {
|
||||
moZ -= look.zCoord * 0.1D;
|
||||
}
|
||||
|
||||
Vec3 pos = Vec3.createVectorHelper(ix, iy, iz);
|
||||
Vec3 thrust = Vec3.createVectorHelper(moX, moY, moZ);
|
||||
thrust = thrust.normalize();
|
||||
Vec3 target = pos.addVector(thrust.xCoord * 10, thrust.yCoord * 10, thrust.zCoord * 10);
|
||||
MovingObjectPosition mop = player.worldObj.func_147447_a(pos, target, false, false, true);
|
||||
|
||||
if(mop != null && mop.typeOfHit == MovingObjectType.BLOCK && mop.sideHit == 1) {
|
||||
|
||||
Block b = world.getBlock(mop.blockX, mop.blockY, mop.blockZ);
|
||||
int meta = world.getBlockMetadata(mop.blockX, mop.blockY, mop.blockZ);
|
||||
|
||||
Vec3 delta = Vec3.createVectorHelper(ix - mop.hitVec.xCoord, iy - mop.hitVec.yCoord, iz - mop.hitVec.zCoord);
|
||||
Vec3 vel = Vec3.createVectorHelper(0.75 - delta.lengthVector() * 0.075, 0, 0);
|
||||
|
||||
for(int i = 0; i < (10 - delta.lengthVector()); i++) {
|
||||
vel.rotateAroundY(world.rand.nextFloat() * (float)Math.PI * 2F);
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(new EntityBlockDustFX(world, mop.hitVec.xCoord, mop.hitVec.yCoord + 0.1, mop.hitVec.zCoord, vel.xCoord, 0.1, vel.zCoord, b, meta));
|
||||
}
|
||||
}
|
||||
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(new EntityFlameFX(world, ix + ox, iy, iz + oz, p.motionX + moX * 2, p.motionY + moY * 2, p.motionZ + moZ * 2));
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(new EntityFlameFX(world, ix - ox, iy, iz - oz, p.motionX + moX * 2, p.motionY + moY * 2, p.motionZ + moZ * 2));
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(new net.minecraft.client.particle.EntitySmokeFX(world, ix + ox, iy, iz + oz, p.motionX + moX * 3, p.motionY + moY * 3, p.motionZ + moZ * 3));
|
||||
@ -928,6 +953,25 @@ public class ClientProxy extends ServerProxy {
|
||||
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(wave);
|
||||
Minecraft.getMinecraft().effectRenderer.addEffect(flash);
|
||||
|
||||
//single swing: HT 15, MHT 15
|
||||
//double swing: HT 60, MHT 50
|
||||
//vic's immersive swing: HT 100, MHT 50
|
||||
|
||||
if(player.getDisplayName().equals("Vic4Games")) {
|
||||
player.hurtTime = 100;
|
||||
player.maxHurtTime = 50;
|
||||
} else {
|
||||
player.hurtTime = 15;
|
||||
player.maxHurtTime = 15;
|
||||
}
|
||||
player.attackedAtYaw = 0F;
|
||||
}
|
||||
|
||||
if("justTilt".equals(type)) {
|
||||
|
||||
player.hurtTime = player.maxHurtTime = data.getInteger("time");
|
||||
player.attackedAtYaw = 0F;
|
||||
}
|
||||
|
||||
if("hadron".equals(type)) {
|
||||
|
||||
@ -1,14 +1,24 @@
|
||||
package com.hbm.particle;
|
||||
|
||||
import com.hbm.lib.RefStrings;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.renderer.texture.TextureManager;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class ParticleMukeCloud extends EntityFX {
|
||||
|
||||
public ParticleMukeCloud(World world, double x, double y, double z, double mx, double my, double mz) {
|
||||
private static final ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/particle/explosion.png");
|
||||
|
||||
public ParticleMukeCloud(TextureManager texman, World world, double x, double y, double z, double mx, double my, double mz) {
|
||||
super(world, x, y, z, mx, my, mz);
|
||||
}
|
||||
|
||||
public int getFXLayer() {
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
|
||||
@ -32,10 +32,6 @@ public class ParticleMukeFlash extends EntityFX {
|
||||
return 3;
|
||||
}
|
||||
|
||||
public void onUpdate() {
|
||||
super.onUpdate();
|
||||
}
|
||||
|
||||
public void renderParticle(Tessellator tess, float interp, float x, float y, float z, float tx, float tz) {
|
||||
|
||||
this.theRenderEngine.bindTexture(texture);
|
||||
@ -64,13 +60,13 @@ public class ParticleMukeFlash extends EntityFX {
|
||||
|
||||
Random rand = new Random();
|
||||
|
||||
for(int i = 0; i < 16; i++) {
|
||||
for(int i = 0; i < 24; i++) {
|
||||
|
||||
rand.setSeed(i * 31 + 1);
|
||||
|
||||
float pX = (float) (dX + rand.nextDouble() * 5 - 2.5);
|
||||
float pY = (float) (dY + rand.nextDouble() * 3 - 1.5);
|
||||
float pZ = (float) (dZ + rand.nextDouble() * 5 - 2.5);
|
||||
float pX = (float) (dX + rand.nextDouble() * 10 - 5);
|
||||
float pY = (float) (dY + rand.nextDouble() * 5 - 2.5);
|
||||
float pZ = (float) (dZ + rand.nextDouble() * 10 - 5);
|
||||
|
||||
tess.addVertexWithUV((double) (pX - x * scale - tx * scale), (double) (pY - y * scale), (double) (pZ - z * scale - tz * scale), 1, 1);
|
||||
tess.addVertexWithUV((double) (pX - x * scale + tx * scale), (double) (pY + y * scale), (double) (pZ - z * scale + tz * scale), 1, 0);
|
||||
|
||||
@ -48,7 +48,7 @@ public class ParticleMukeWave extends EntityFX {
|
||||
tess.setBrightness(240);
|
||||
|
||||
this.particleAlpha = 1 - (((float)this.particleAge + interp) / (float)this.particleMaxAge);
|
||||
float scale = (this.particleAge + interp) * 2F;
|
||||
float scale = (1 - (float)Math.pow(Math.E, (this.particleAge + interp) * -0.125)) * 45;
|
||||
|
||||
tess.setColorRGBA_F(1.0F, 1.0F, 1.0F, this.particleAlpha);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user