From 23e6e2f8e5e2d2f20d56ef28b5d3bd11e781526f Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 6 Jan 2021 00:32:44 +0100 Subject: [PATCH] when the big pizza pie hits the moon like your eye that's amoreeee --- src/main/java/assets/hbm/sounds.json | 1 + .../hbm/sounds/weapon/mukeExplosion.ogg | Bin 0 -> 43171 bytes .../hbm/textures/particle/shockwave.png | Bin 6935 -> 5866 bytes .../hbm/handler/guncfg/GunFatmanFactory.java | 1 + .../com/hbm/items/weapon/ItemGunBase.java | 8 ++++ src/main/java/com/hbm/main/ClientProxy.java | 44 ++++++++++++++++++ .../com/hbm/particle/ParticleMukeCloud.java | 12 ++++- .../com/hbm/particle/ParticleMukeFlash.java | 12 ++--- .../com/hbm/particle/ParticleMukeWave.java | 2 +- 9 files changed, 70 insertions(+), 10 deletions(-) create mode 100644 src/main/java/assets/hbm/sounds/weapon/mukeExplosion.ogg diff --git a/src/main/java/assets/hbm/sounds.json b/src/main/java/assets/hbm/sounds.json index 610cc1189..db82bb773 100644 --- a/src/main/java/assets/hbm/sounds.json +++ b/src/main/java/assets/hbm/sounds.json @@ -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}]}, diff --git a/src/main/java/assets/hbm/sounds/weapon/mukeExplosion.ogg b/src/main/java/assets/hbm/sounds/weapon/mukeExplosion.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b59f0473992deba86fc2c63306f2c18d7131d3f2 GIT binary patch literal 43171 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 literal 0 HcmV?d00001 diff --git a/src/main/java/assets/hbm/textures/particle/shockwave.png b/src/main/java/assets/hbm/textures/particle/shockwave.png index 3448b65f1dbbf131da1369cebae9764d4a7cb7f3..22698e1949571d35c9799ab63e06da4e32cc2812 100644 GIT binary patch literal 5866 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 literal 6935 zcmV+y8|dVTP)C00001b5ch_0Itp) z=>Px#1ZP1_K>z@;j|==^1poj808mU+MF0Q*0RaI50s;dA0|W#F1qB5L1_lQQ2M7oV z2?+@b3JMDg3k(bl4Gj$r4h|0w4-gO#5fKp*5)u;=6BHB_6%`d078Vy57Z?~A85tQG z8X6lL8yp-Q9UUDW9v&YbA0QwgAt50mA|fLrBP1jwB_$;$CMG8*CnzW=DJdx`Dk>{0 zD=aK5EiElBE-o)GFEB7LF)=YRGBPtWGc+_bH8nLhHa0gmH#j&rIXO8xIyyT$J3Kr* zJv}`>K0ZG`KR`f0K|w)6LPA4BLqtSGMMXtMMn*?RM@UFWNl8gcN=i#hOH52mO-)Ts zPEJoxPf$=$QBhG+Qc_b>Q&dz`RaI41R#sP6S6EnBSy@?HT3TCMTU=aRU0q#XUS3~c zUtnNhVPRonVq#-sV`OAxWo2b%W@cw+XJ}|>X=!O{YHDk1Yiw+6ZEbCCZf7mzbECnVFfInwp!No1C1Sot>SYo}QndpP-Ll?si~=|s;aB2tE{Z7t*x!DuCA}IuduMNv9YnTva++Yv$V9dwY9aj zwzjvox45{txw*Nzy1Ki&yS%)-y}iA@zP`V|zreu2!NI}8!otJD!^FhI#l^+O#>U6T z$H>UY$;rve%F4^j%goHo&CSiu&d$%z&(P4&(b3V;($dq@)6~?|)z#J3*4Ee8*Vx$D z+1c6J+S=RO+uYpT-QC^Z-rnEe-{9cj;o;%p;^O1ulq(=H}<;=jiC@>FMd} z>gwz3>+J08?d|RE?(XmJ@9^;O@$vEU^78ZZ^Yrxe_4W1k_V)Mp_xSku`T6}0OAgNZvX%Q32;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y8E;VI^GGzb&7ko)XK~#8N?R$4r6iN5?faEkVFu*WF&LBZ0 ziy)FzP>D)5th!1PL=hDf6DmR7#eif{QIVtql7l44L6QN9x+*AXNdtI()nU+g7m%Re zIo~<^`~g&T)Ay;H>Q;9Z=0E(0|M34Ss3@RDe^XJRSAIPpVbs*r%Mj3@zd_Ic6Be*= zAeM%fj*gC=o}Ph$0sI7i)6xJcFbVX|UjbA&Egd}rBNH$LV`X7sW@2QZ z2P_a0=>0zz(AXj2KsE~-JC2hJ&&|V2fWXVcjpxF#vjG+i^pGZgg&yF+1L;6G2PdAF z$S))!CN3!@EiEH0Eh!-;A|ya0aC70XEHH#laf_fsjRA@xkgJ{ zTU$$0Lrr;=!g47wArdbh<^b8^CsKgL(=jl!ad7eSi%7|>RMpfmFxp~fX=QC|XJ>0; zwbgu!k>R>EYOCa>L6x*3qNtpjo{59=u?yE?k}``bU%YC6_uC52o$mrNOnLGi3OdcN_9UkoKdEeGtUHCLEEYQcrVaqyY8DRpfgvBy|)X&7mMG{xk z+-T!?JTM|5>-mef?|TP^N5>~7C#R;qe*K!8mzM{AeVv+`oEQfrdf&foc%GFI8RYF` zW3)z5oP@_R(L-iHpSchK`Si@}+yc_dy5_q*FNDQsmp65M>i>I`41~W(va}?jHv*6> zEt49)0up1x{hvCUD{>OTE_&`Z*He)eO_E0kd%K#;GVfnI(Ox0Ohhtqh14KTb_^Ndl`+S1$ zXIH)XFaX4NyQA0VfO|KfFz~UpI_E*K&pwNFt0ah=3uXYxXXPYHDCt|doC!@TZ0!Cr zJU%b+5Zt>b$s>K;O-0F}XI-rHl_g1B3uFMfWi1NpDMuC}JOzM=VbTV<3P5xoe3R6a!>{@h-Zc{{+vZoP^m5ywJ5 zZw4U$(J^uGi7Oe}c?90gsq5?;nfUsh_K7ZOZ=37N3v-@6PKtl{Fh22dT2{gHnx@ti z=kGYUf1McZ>#EO*4LW3Js4T(90ito93_$*6WG9HN(ziJn7@PZ|yMJ_|TOGXy#QU{1 zRTX9=-U<6N;M}Pb-rhdGXD?p4c{@I>prY|@q#Ak~2BY3RIX3XFA@5$0hpql9aRNIN z-Td4DazHj75yf>@ZvJ=k8r}_zO(ssOpZK)3z9c;^{L-mI`*&EGZQ8hD{l-nE+Z=vB zcp@(prqq@=0wfp?90u>tPZx{4w^SVr3Ur~q;RRxUv~Z3~wRw{sBr=p_us zueGl5@vSQ-TNBIy?l)O2L&7o7!w5hDj96ZA<&C?1Ler`{`@fU#_qrlI zCcwkiKuL_3oe8dek*C2$3nOf{ZLWS1PfA;+mEaB-bk(GV`s~`M0^H!oMgS2&&x#jT z)U)*rPA+fj`zD{5((o)H*vr9Sg%Bs0;Hc5=X;6WwlS4pG$J*o4z1+Gdlz2#*8tZE> zPY(99(_0}t43O#6tiS zaAF!;4+kfe7OSFtWfQ|6n{uL0?=eyl=lxM6Kpw~m^l0OG?MZd_Ao(jAf5g`EM^`<} zR0Of~bBKpPMa#;kXzY9`zW5cY15!76sJlAl`Vrf8@`9Xms{m2}mLRFV#qr|(qSh~C zQ|Q!7EGtj`!_`Qhmx*R>7lN>ikxN>C@5Q*{Vw8a;aD&$3`~FTQ>XL-HRRAkMP*Km} zcvwcm$KeUo0f^<5kFGdxki|3nVE72A={dyL?YS6NQi?LTHaYUKAv4_DL0?g5P8Gl& zz$>9{>Jk)R)-f>Nh4zP6rv$rhkmmf6`YE8IV;9re6Od3AhIVw52Rq9XF1ea&NY3d6 zRMfQ0H~|Gc2cO97=AO|>3#8lmMMlU$Bbj;2M;Petzw)@+329qSj`lX^M4i~KuQ;a{ zfE>WaBd%uR9GFnvHApT)dR1TMM|qjZam`;o#DGI`y<12|0~!itJq$c zP%c2a{{f%?CJuhNb#}+YvYUHHC(#-3@$(0#t(AD^XMYN)=s4v}kKKBfgf!KsMtfVb zBfRa`$?@YrAkSlF2t2}PAkBLNkQbHjS_4$aBBgeW){?Ox}Nn6i3Fg6 zp2qYWp4+sf`LMIt0I~pZL4%#AZWp!nkE053s!H^;S%IgU#ck#Q4ZDnqckJ^sNUMxI z&{lN!^ezJhf!S;TSpYApvc)+lsphZY2{Z(X^KQE62rSe95UA*R)p!5#^cm8!oE-kE z=FugWEh?hitTWqyY8glZQfsz(hGez$j!q$+PSuHLEaf;BYyb$$*u;&G-F@zev_6b| zZpjWkVzow!FtZJyLV$x`UT?>#JH_n-WV8k^EeLbf;a^w;P(Ve`qqh6c3{(ZzCI;J! z@1EYNFF#8hKrX;3w9;t5e?ry!Vbldx>z`b(R=_Pv0gwtLO-{yDA-O;u*q}No(9vj> zFc0i>aBp2d6dkP%Ln^^tPv=&|*9Q0u?=V{KeJ&jMV9W+xDpV%MVx8Y<4Yx<{3p7HKRTG#v6a0ja1B63Kn9^CFK~Ye^BnlJ!NpntvH@X@OGFV82fzv5SH@r1yIyg|On~^{Dr3i>k@r8i!v?R1t2FN=^egXfq3Cn z5C*y7URzg7@XSbno|Q)uL}5h!+W|5%5tvmyIBF=!@Q*te0xCLQtpib|rf|b@V&H8- z)Nv4pyfefhk_NPFjz<@^O%tfNdsvr5zXSppT5fg6@FEI5KE9*Ykwl9xMOGn zSr3?&Mjy~3EIJQDpy5>Bb3Gp=Fges&a>v&}XGQ{0Im9;ufi=8KB%rkWdLA+xOcRiu zLj!g`zgPpn1T$*@^#NP&=)#}t1FHMJ^8v^S?Pl`+X1{crNZy|!se&YTCJ zRIF|RrQ$DWCd9l*K5Zhtq)f=bZ*b&ZCDOP`{_-*_eZk{J- zK}B{Y1ASJ)SZ`DMb&pxZu{THPubgH=TZ7jyJ$T*;8Oz9hK{D#GlrqgE6b__tZ%R0NjiE|(sG`p1`d4WVv`c~o-O$80%{cA*St*u*z@MC4OmlT8eDl_vx^ZiX!| zLl%Gl*?@yzPS@T$BB!O7q5@)5R*0*CDC<1l5`T|nOr$k?FQ?X_Z)=~A^|s_h`Z(x9 zF)-VkO2`KAn_AbPq{{AT6`ZS14){$|fO$b~K+VXjY;)!T?@$fk14@zvXSQlEAcVzE+@Sz%SqAaWmruY5)uJU{^)bxjDm`mmAJ~};MFG;6!{k9 zp?9^ZH@xh06@UlK{RJ7QfC0-ZreeJJ%&pw!Z$`jG)MZ7TbXY5i|ItUAWsEpcP+Nzj zPLH3|InvXT7jtH>G4j!B4h29e0D*ub$!b};1;v%LejY7FFJK~GJD03SR4q9&8?3>J3$@N-%{WSMl%KP?rVR1ldja4*2UuPSwM~0{Lm!tkPk%j593Ski zO^@*1ZLBKEhkU`GlK`v&U<4UWQ^#{L*)QG?j#EMbLo9#sEHUKNe)F}8B0TKSem!`j z7%&?R9RmwHx8QQk&AX2WKgg*mqqq*n4f=eZ6XWM-rYXbEIj>z5fB^$5UQmAR)&u@` z^BMtzX&qqvURUKjym7|W)<{!PLVyRyj%8zIWo2W>ar2AIs~cK5o(PW3C~rB3-VRkE zgMUFA2;8>nCFaCYf70OJ|+RkZz{Nd$-_o(r6><}9tMB_MFJB$0op=x`0|5- z#`gnb@!y`Qmh!5mFzrG3l`~!ke&1Y7_4oYBiL+{nXUI%;!bFCBK+pejY;L^hPo ziva8f3@n@^z`)MKKPJ7h_0!N;$u~1VP&*%)()Q-n%a-PrS8v{?MEZR8}RiyaQtz7e!|BZp9lHOLwlh+>R*0y~b9Buy}JIoHZ4lw+-+PsI?eVw+!Tglkq zDPaEcDOSJ{#aFB~+wBz;lUmZ$^?7Js6oB}@KX)~irp8=4y2ngs<@9E{g~+Ec;2?;~ zYZ}?RoxKs4Rq?XBcW9IxKZC}&S;z<%Kw2bYXPh5^p&aG%_|L}QmWQ<%JZ}C4YEG!c0$YUczUp{m+SL7x`o2~3N zX|0sxhc>k?PCmkbj*%5d5Rp~UHQnLndpR;8v!wQA=ZD_@q2ZCSaq>iMHbCvf1bJ+9 zd*#D*X(_dY!%{8StPww3eJaJ&Bxq*g)1V1-BF#qD^!wi5KpuNq4 zl8UPh%p4q#oV^kjo1BqfT2R-HkhylD$j2X*G5Ry{V(A#YFo9odtLD!>V6P~1J=RGSfDJ?B6F3itPf0A%7 z>PFC+qX%|dZ`RXTAtlVm1#fPLhQE0E0I(9E(*;}vK?!*kEkhIQT}~dyPhY%z^=3qL z%$>V;@5Dq$+`M-A;u-HlPP?p4*K4cDO9~OVpo#^EU&`Uq%R_no#Dn+&v76=g(`(*?+OyCus9fRq4JVB^5^35rU~ zuTt06+px*hVw;Vf!}jeC_O@1*rkghCYpW|MNQ(&)xp5TnOCLT0NC|M^$Haogaq|fX zi%ZKXDyeE{YOmE69++9N>^M&NoD&}(k&lnS z%Y)~_abQ`YLq^Epf3|oC;E^Z?=%^PHGYhDPp_5+lSuY^_+fgq_`cD@R1LXjpHv=q? zvu^NdHy|4o{_CV8fF2K%K#u#-K!E>(`{1kSoxcvS6qLm`puOllzaFT(?}1+V5C7pm dEC?9P{{iO@A3OUhItl;)002ovPDHLkV1k^h5JCU| diff --git a/src/main/java/com/hbm/handler/guncfg/GunFatmanFactory.java b/src/main/java/com/hbm/handler/guncfg/GunFatmanFactory.java index 5eb887599..a513099b1 100644 --- a/src/main/java/com/hbm/handler/guncfg/GunFatmanFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/GunFatmanFactory.java @@ -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); } } }; diff --git a/src/main/java/com/hbm/items/weapon/ItemGunBase.java b/src/main/java/com/hbm/items/weapon/ItemGunBase.java index 1c191ec67..364f67d5e 100644 --- a/src/main/java/com/hbm/items/weapon/ItemGunBase.java +++ b/src/main/java/com/hbm/items/weapon/ItemGunBase.java @@ -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 diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 1e371f62c..392ec52c8 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -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)) { diff --git a/src/main/java/com/hbm/particle/ParticleMukeCloud.java b/src/main/java/com/hbm/particle/ParticleMukeCloud.java index ea0f51b11..4f20c0781 100644 --- a/src/main/java/com/hbm/particle/ParticleMukeCloud.java +++ b/src/main/java/com/hbm/particle/ParticleMukeCloud.java @@ -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; + } } diff --git a/src/main/java/com/hbm/particle/ParticleMukeFlash.java b/src/main/java/com/hbm/particle/ParticleMukeFlash.java index 37a7e4e60..5c33b7683 100644 --- a/src/main/java/com/hbm/particle/ParticleMukeFlash.java +++ b/src/main/java/com/hbm/particle/ParticleMukeFlash.java @@ -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); diff --git a/src/main/java/com/hbm/particle/ParticleMukeWave.java b/src/main/java/com/hbm/particle/ParticleMukeWave.java index b21ed1e5a..209c59bfd 100644 --- a/src/main/java/com/hbm/particle/ParticleMukeWave.java +++ b/src/main/java/com/hbm/particle/ParticleMukeWave.java @@ -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);