From e1997495bb7d97941ce60d32eacac19252fd4ff6 Mon Sep 17 00:00:00 2001 From: HbmMods Date: Sun, 20 Jan 2019 18:14:56 +0100 Subject: [PATCH] ricochet sounds, DU bullets, rocket models --- assets/hbm/lang/de_DE.lang | 5 + assets/hbm/lang/en_US.lang | 5 + assets/hbm/sounds.json | 1 + assets/hbm/sounds/weapon/ric1.ogg | Bin 0 -> 13161 bytes assets/hbm/sounds/weapon/ric2.ogg | Bin 0 -> 11470 bytes assets/hbm/sounds/weapon/ric3.ogg | Bin 0 -> 11091 bytes assets/hbm/sounds/weapon/ric4.ogg | Bin 0 -> 13500 bytes assets/hbm/sounds/weapon/ric5.ogg | Bin 0 -> 9886 bytes assets/hbm/sounds/weapon/rocketFlame.ogg | Bin 0 -> 19346 bytes assets/hbm/textures/items/ammo_44_du.png | Bin 0 -> 259 bytes assets/hbm/textures/items/ammo_50bmg_du.png | Bin 0 -> 234 bytes assets/hbm/textures/items/ammo_5mm_du.png | Bin 0 -> 225 bytes assets/hbm/textures/items/ammo_9mm.png | Bin 200 -> 187 bytes assets/hbm/textures/items/ammo_9mm_du.png | Bin 0 -> 233 bytes assets/hbm/textures/items/book_of_.png | Bin 407 -> 459 bytes assets/hbm/textures/items/book_of_.png.mcmeta | 5 + assets/hbm/textures/models/ModelRocket.png | Bin 519 -> 337 bytes assets/hbm/textures/models/ModelRocketEMP.png | Bin 0 -> 322 bytes .../hbm/textures/models/ModelRocketGlare.png | Bin 0 -> 339 bytes assets/hbm/textures/models/ModelRocketHE.png | Bin 0 -> 333 bytes .../textures/models/ModelRocketIncendiary.png | Bin 0 -> 333 bytes assets/hbm/textures/models/ModelRocketOld.png | Bin 0 -> 519 bytes .../textures/models/ModelRocketShrapnel.png | Bin 0 -> 326 bytes .../hbm/textures/models/ModelRocketSleek.png | Bin 0 -> 327 bytes .../entity/projectile/EntityBulletBase.java | 29 +++- com/hbm/handler/BulletConfigFactory.java | 144 +++++++++++++++++- com/hbm/handler/BulletConfiguration.java | 19 ++- com/hbm/items/ModItems.java | 15 ++ com/hbm/items/special/ItemCustomLore.java | 6 + com/hbm/items/weapon/GunLeverAction.java | 82 ++++------ com/hbm/main/CraftingManager.java | 4 + com/hbm/main/NEIConfig.java | 1 + com/hbm/render/entity/RenderBullet.java | 27 +++- com/hbm/render/model/ModelRocket.java | 94 +++++++++--- com/hbm/render/model/ModelRocketOld.java | 63 ++++++++ 35 files changed, 423 insertions(+), 77 deletions(-) create mode 100644 assets/hbm/sounds/weapon/ric1.ogg create mode 100644 assets/hbm/sounds/weapon/ric2.ogg create mode 100644 assets/hbm/sounds/weapon/ric3.ogg create mode 100644 assets/hbm/sounds/weapon/ric4.ogg create mode 100644 assets/hbm/sounds/weapon/ric5.ogg create mode 100644 assets/hbm/sounds/weapon/rocketFlame.ogg create mode 100644 assets/hbm/textures/items/ammo_44_du.png create mode 100644 assets/hbm/textures/items/ammo_50bmg_du.png create mode 100644 assets/hbm/textures/items/ammo_5mm_du.png create mode 100644 assets/hbm/textures/items/ammo_9mm_du.png create mode 100644 assets/hbm/textures/items/book_of_.png.mcmeta create mode 100644 assets/hbm/textures/models/ModelRocketEMP.png create mode 100644 assets/hbm/textures/models/ModelRocketGlare.png create mode 100644 assets/hbm/textures/models/ModelRocketHE.png create mode 100644 assets/hbm/textures/models/ModelRocketIncendiary.png create mode 100644 assets/hbm/textures/models/ModelRocketOld.png create mode 100644 assets/hbm/textures/models/ModelRocketShrapnel.png create mode 100644 assets/hbm/textures/models/ModelRocketSleek.png create mode 100644 com/hbm/render/model/ModelRocketOld.java diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 58045e8ec..ccdb06584 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -1359,11 +1359,14 @@ item.ammo_20gauge_explosive.name=Kaliber 20 Schrot (Explosiv) item.ammo_20gauge_wither.name=Kaliber 20 Schrot (Wither) item.ammo_5mm.name=5mm Patrone item.ammo_5mm_explosive.name=5mm Patrone (Explosiv) +item.ammo_5mm_du.name=5mm Patrone (DU) item.ammo_50bmg.name=.50 BMG Patrone item.ammo_50bmg_incendiary.name=.50 BMG Patrone (Brand) item.ammo_50bmg_explosive.name=.50 BMG Patrone (Explosiv) +item.ammo_50bmg_du.name=.50 BMG Patrone (DU) item.ammo_9mm.name=9mm Patrone item.ammo_9mm_ap.name=9mm Patrone (Panzerbrechend) +item.ammo_9mm_du.name=9mm Patrone (DU) item.ammo_22lr.name=.22 LR Patrone item.ammo_22lr_ap.name=.22 LR Patrone (Panzerbrechend) item.ammo_folly_taint.name=Silbernes Geschoss (Original) @@ -1371,6 +1374,7 @@ item.ammo_folly_nuclear.name=Silbernes Geschoss (Atomar) item.ammo_folly_du.name=Silbernes Geschoss (DU, Nicht-Explosiv) item.ammo_44.name=.44 Magnum Patrone item.ammo_44_ap.name=.44 Magnum Patrone (Panzerbrechend) +item.ammo_44_du.name=.44 Magnum Patrone (DU) item.ammo_44_pip.name=.44 Magnum Patrone (Güterwagon) item.ammo_44_bj.name=.44 Magnum Patrone (Boot) item.ammo_rocket.name=84mm Rakete @@ -1959,6 +1963,7 @@ item.letter.name=Eilbrief item.polaroid.name=Das Polaroid item.glitch.name=Glitch item.book_secret.name=3-596-50802-9 +item.book_of_.name=Das Buch der item.burnt_bark.name=Verbrannte Rinde item.crystal_horn.name=Kristallhorn diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 579ac3df3..65434cbc8 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -1359,11 +1359,14 @@ item.ammo_20gauge_explosive.name=20 Gauge Buckshot (Explosive) item.ammo_20gauge_wither.name=20 Gauge Buckshot (Withering) item.ammo_5mm.name=5mm Round item.ammo_5mm_explosive.name=5mm Round (Explosive) +item.ammo_5mm_du.name=5mm Round (DU) item.ammo_50bmg.name=.50 BMG Round item.ammo_50bmg_incendiary.name=.50 BMG Round (Incendiary) item.ammo_50bmg_explosive.name=.50 BMG Round (Explosive) +item.ammo_50bmg_du.name=.50 BMG Round (DU) item.ammo_9mm.name=9mm Round item.ammo_9mm_ap.name=9mm Round (Armor Piercing) +item.ammo_9mm_du.name=9mm Round (DU) item.ammo_22lr.name=.22 LR Round item.ammo_22lr_ap.name=.22 LR Round (Armor Piercing) item.ammo_folly.name=Silver Bullet (Original) @@ -1371,6 +1374,7 @@ item.ammo_folly_nuclear.name=Silver Bullet (Nuclear) item.ammo_folly_du.name=Silver Bullet (DU, Non-Explosive) item.ammo_44.name=.44 Magnum Bullet item.ammo_44_ap.name=.44 Magnum Bullet (Armor Piercing) +item.ammo_44_du.name=.44 Magnum Bullet (DU) item.ammo_44_pip.name=.44 Magnum Bullet (Boxcar) item.ammo_44_bj.name=.44 Magnum Bullet (Boat) item.ammo_rocket.name=84mm Rocket @@ -1959,6 +1963,7 @@ item.letter.name=Express Mail item.polaroid.name=The Polaroid item.glitch.name=Glitch item.book_secret.name=3-596-50802-9 +item.book_of_.name=The Book of item.burnt_bark.name=Burnt Bark item.crystal_horn.name=Crystal Horn diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index 8df77013c..ca134c1eb 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -99,6 +99,7 @@ "weapon.follyBuzzer": {"category": "player", "sounds": [{"name": "weapon/follyBuzzer", "stream": false}]}, "weapon.follyAquired": {"category": "player", "sounds": [{"name": "weapon/follyAquiredAlt", "stream": false}]}, "weapon.follyFire": {"category": "player", "sounds": [{"name": "weapon/follyFire", "stream": false}]}, + "weapon.ricochet": {"category": "player", "sounds": ["weapon/ric1", "weapon/ric2", "weapon/ric3", "weapon/ric4", "weapon/ric5"]}, "weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]}, "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, diff --git a/assets/hbm/sounds/weapon/ric1.ogg b/assets/hbm/sounds/weapon/ric1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7897b8408da7358fd1ccbc6ef11a330bd38debf1 GIT binary patch literal 13161 zcmeHuWmr^E+wKq|3Me8-rywagbR$TMbPl6*rE~hR6U1hCaR*{Pj`nQgg2LAUNmXSdHF;5CVX?cy;&+9m2rm6?m`mlJ2?0n61mg6i zn6R5&W-0xqB@ocF5d+9f*h47OP*C5s{0=S#xhengO|M8P98#ZMR_9hC!b z{cVF&StB8WMEM(C9A_e3$VhS|gENLWinkRDo@hj1#0*IPFUi43K z4G`#|KDnAV_2ob1>_8yW9I2Q>vzS7snANB^q>(Q_5`w}(AYz~y@I6C0^(0lKk?};m zJLCChui^g$Ih;=GTHcj%>G_Ps9P?{% zt!ioJ42`;=#PpaZ>D3J1!M>FYkwGAomtjs02jo^WzUG);{Tt%04jO{)kgk1^=6g}qpUZmp8dJv2i|B{8rj+!dZXl%B zvo@DO`7e<_a(_Su#;Zj6GVbvVFX_mt6Wje8HVmR`%E!NjuP{VpsH_kFb}C4cA>~T; zHqhe!3pgQ2iIn{XwSmSzFE&x^FX?>xd5d$NYw?wQ$cq(42-JT6bCKEnSbI&DT;wa| zJ^u2q28Qn9<7Teg(yQ=@PbLnxcSl9VM-A1C{p=@F{LC9dEhk?Js5p^ASLdfd7th_@+DnsOgixM&lm}0D;K+s;CjeOuAHDV+MDP4eyQ_sErvK|94Jz z6s&s_0QL$ffdG_4X{lY_J#)o{$!5goJLi)JHk75+q#WvX4gDg8Ox;-wQAzq#!KFO5 zF`C~+J`M45mya9Byr3?4Z+Ml);F<-XycZx!IKfXZCZ!qyr5f-bWI&(mqztR8ERcQpQgq8#RKWYIQ+Eu*)_x%{J|gQ!arAYCtI@LvrD(1b{^V zgn2G{SEX!d;~fqdenOBw2t=Y*Euec-4PN97zY_z#u!qz^Sw%rv&MKpFNHBX$mLr@} z4JoGkzKExkk5bJTK;_}j3)mxyzAk`Xy!=QEQXvG9zp*jT;s!WTOi@WGP>Y-%wc0S) zc+A)t4%7vZCFj!8^?f;@p;2Io0{F{|qUbzl_(k$YCt7tFtP9xcF~46yc}{Sk24LBs zRMQ9Q0VMq(Y%xIRO4plf$N@pXqC-qmp7FqoN`bQdqQZZKk|E|K?~6*CD+CatO2&{0 zKYR0f0-#6*Kca@h3o?-m#N9y`F*g)|`ZXqiW5?#ai{*P=H5^HHT`8BHpD>&U1o})@ zL~YnFe22Y&lA(t)l1k+cS8|e8DO-Vo0WVFYkpUl9exiX3uQ8V%@zCj;7KrUSD4gv+uxQ(oixyGa4oY86Hi!{f&3G3p((~STP?MM5_Pg|IK~n4m zD>Bepxu8b8g@1TYl7SYG_CSl5D{@epyD(`45V;8g8T~;!|Jw@jZRJ038xR0++nNI! z0}xN)bcU}22*ZmUG~p{jKuS>``XA^gUu0ZB&o@B>@B&=`x*CChVEGp|Kl}GZ7b<8L zbVC^d_}kOhm%~f>T58CxOaaDH{|s2ZH>c}Cpk3n2pd3O*6Ll$G1~LJ#9oNNrsYDkM z3sCYGlqy%*Ba;kBul&dKrvhmJQ$C@3{DM%8E2&>FDyIyHyQ9swF92nUq&nXd4?&jS@+8kJb-JM4wG_#^26jI~5=A*C

oMVZVR&HU?U~f72o#8m#}7i=@=z%lso3X`rQ9 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 literal 0 HcmV?d00001 diff --git a/assets/hbm/sounds/weapon/ric2.ogg b/assets/hbm/sounds/weapon/ric2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..4506f50323873527cfc286c51583ac15c25a28d4 GIT binary patch literal 11470 zcmeHsby!tF*Y8F`y1U~L2Wbu|Egb@fkVfeSNdX0ppj$IeX7uvu4)JZ_Qrwn|-wH?e&0Lz(3M#F&EKwk;$YK2aOTU z*WJ^~(d$}pOR?hm1|~nWn_DxQ_I1mDrR$d0H4m)Ltcd-u{v)lT|LuqetT%G>aNyJS zv}bm4v@*Quo>`4qNI+0TKu|!0nQJvO{9hS*JuD9Jr{`|x?f1yjR$9;9&C!}!+1KtPyRK!jI791ZiYVRnUkhG>8s06@H`xs?mO zD8q?q6?AA&^a>-+do&7~B%$;|nx=#7UI{D(Zxo_Txt@HBNw@vsSuF#!M#zy|eHqYG5y)>IQA#)<4VdE;dn&tUCM7P@J!3IIB~_)3q- zZ{M`D0RZeb;?adh(S;7tn^AGt;gJ=$fDiz{0L{Se=}D<1D~{?L%rv?p|4TMawWYaf z4q`|=;b>Qi6(xX9gLUHva2O#Z(E{Be{{%UNTAeT-r&3}m3-!jB5TRZp!H}ie;GdWo z-6FA>)tbW8A+b&KmzQ1oyS<@yPbWERtTZ#8K&=fQW4X zOPH08aR`kXu%z1J56{%NmU&%wb#vM2*{07TyM8R`Xi3c+>j6vJz1xdf#Q##c(YpZ| zoUa^lWbC7_Q0$3K2WDjwD_Ws#`O_@{9NMrfg`M#&hk|5DZ1$ALaCOeVfZqb-uvsF= z;i~_oP^=u z`8)k63A-*Sn0Y6KL?-o=418>7Qhkh@o|(=@n4dmd0P`=OM@Ff(#{ZH3P91y^nZd>W zcOuYUYOf)QEl4u)Kc@*g6!0Kdxmj;&wGfR7$nXS@_7O~*Oj?&*X%c2IPGPPq=Bg`d zJ1JtWCu(kB==vbl)wIzEnP!VTeYW&pvia?sDUt$!WFi|hkrkSV5|4wZ$vO0K19Di` zZ)Ef;R~$+_5u%pJ?wDxrpIVZE*v`n|F1t|yh_6+yQ*_aj=+YugsK6mgaIkQLZV3K0y7XOw5G7BZ!3o&kIgXP_gMdEp z{u?y@;Q#=@?|(-=I8Luc%030>HPGXof-6nw8T@xiYZ9hK1_Fx%B%lFrh)p#rd%og0 z(OXS;4ne%{TM?JlV6&<;Gz|zA()Z-hMkVW#29|MIN2?79){j9sE2rU-5#$BwdbkvD zLKDz=5dbj)ZP|lfu9iox7IuRS03^T&#-xbeN!^5cPzKRL=g~%ojiUdf{(o|ln}Eq3 zNrCwvoq&eEDUyKsAJ06a=u+e8Qo3OD_#dYa$tj+7=B6L4iX8fH;&9CCJHA*`opAp)rCB4D|oA^q&Sv zfv8)602gQwWEc;PQ!!z~wLmJ?m{iCn8W<5kWv=Vdy_46odK>}<{#$@90AMNA@Mw`K zA&MLk9MQ1rcu4M_Q{*<)Um#g>EGygjAq5(m1h*)VzeE(h z%y&dwi+4XADUQRmz*s%yv*MrcfB<^{w+&(?U9cZe)5n}S8XR2NPHQbbs0c=M^9QNV zxe!HVVA}y9fg7b1b7QRZqO#U1omiBFg5;QMRs>hyxTZ$X!W-U`3|9wb_tl~7;Uf~9g~=13 z3K;Mg2$rKtJWW;u?DH z848dWXo1kx^85qKzp(k(rWakipq0-BsSo0BOVe11DC2Ic#W#BZGM2{Y;P$;Y-v|KT zFm3~HZqXU4h(l@dcwjc{*ZZX$byy5Y$s>pra9P5W;n+C;vHVE^RdC5C)J$I!s%bfu zYeuDB>JjsoTip<>>x=roO8;BM|KTGhz-J&1Y{|^Nll-JMZuAiJC|U^UoDbB6>7Mr$ zpcD!*5*#drly}0ZL5$S}DMux4=Os^@@Z@+ADnKiHjP!T1l9NrMD@(|QpwPl;E86Et-;l(?}m5gsFmwGtLzlVaqAFY}Ap^p4<^2>{rIp#zGc z1m$d5d**cb+D8OSA!Oks^fqa*ClcVY<94c``QUOd0_X@La>=SOR|mv6!aXu zI7ob{C-JxfZU@RcRo{T1Z_mub`37Cl!)tVz%O9Q|FG?| zK|G7z0Lq1G{s?uj)_mC9IyS@6HgEZUZpv1*_vAj!W>%o&fu@?j`9Of*?o)HSO{ZPj z*7A##(Q4TsMXBc-y3=SId-$U~+NZqfHkM6;@xr-}GS^PU2`yw(>`WiL&T|&Lgg5CO z!1jk81KulwM^M`bW}lCi4n;1W@RKMxY0vQ$e@D)CNnOO`XTSJ5{K`VFG>!Vn;?`vDA@A!@184GJ=ZnTyF9`XY%nRt$?blDKHovsBI;>B1 z7m9p;jb?@_WwD$zbQPs2cm6SnijSd=p`A_`_Ae}Nr>At?+@*PDnPzKMwUs?8)nLEy zXGhxHQSz3{3Jw|Vcjt1aq2u$?ik^qZ57~7Vx3tdF1|`LaH1zkDM15N4vdevAjrB!3 zWjTpL*=<&!9I(~7rm6RGn=7aExmFU1W?zJ-$!8q9jKw_Hw`GT0MO^BJo>2{=m~+>J zRxd?*b0*%~7LgulDEErVx>!<(zS>1rI(-NzzVkD(2Ng&3ldutGlT(w9OQKCg9jU9G z`}^DWw_~3^0sYMHeEszS!G4!j1cv5pZHl+&{TCDmSBk{w(3$nx`fUpK7V8PISI)b? zd3Ci0A9s{*#=Eb6o10~;nqTA(I=|RGM(H_U9ek((X!$WXjhMRrSWZ3bL0BfO>=<@( z>;^5>z@43%WC2A+Ur zb^qn|amOhqWxQBy(_yv-!#R%8n`d)~x1lj;u{$mUiQ8di&d~>YE;wIU&ja|fvcDjq z5YCkO{xgaD&WVC5f${ybUj}}Pm&NkyAG+MHT5nE29N5yXwwh_vlWjPNXQw^5vR`nP zh~mIF|Ew36pC|n#IL-QAr+b0f1YOPS%<$@E%S@}ax>X(j+60m~%o)Gt%cJtBai+e~ z^&*^I^V|bFvRI*S_pmIS795mA?o-2fzNsyw56jWZ-5T4UEPnCbkSTBvLyrx|0J~AD zO75y_cKGb>>_->djwPmCSWh0Fb|x9e;n8^S*6!8SV%XBjRKv@1F~a@S{)ZBSUr(Ez zzb5W_`P4L-1Z`i~IV{RFj^xH4u3z<_nu6Uaw^7?PdXH3I>A5Qp=e;WRE-i>|93LBA zAI}<2GOy4Wd3$Wb`e-<(K*IntiidwW!b)3AVn{-%tBoo@3EbYd#lu z@&jq}xHI@TK>Nkl7wZ-yilaIBgyr-H3zqz;qfD~F89AedGw(B9n;NTA-$StVST}^9 z&%SIpimA_VZpuwj@vW1euy%qwEe)5*bM%qi39}H)%+)fzPqi%yW!3AM*9y*_i+!nCT<>)>>$799V33c`)$fr9eV0>lZ ze+vsQLBKAI*oY;j$JOIDAW;KH*E4y)rUOJVD-Zy%ctVcP~+4wM1BNGgeKlCuX+VOrF-ogkomWijFL@Sy1pDH zp^a6p8+h;3Xj-)8#P9x|&ZKzg?qp!3i}j9&$(k_Yq=n+{XqKzq1Ft7qt(&EDy7ONI zimlv#5o5^5S1OJgH$sf)L@omb-_xdVR9_x=2Q|h=hQ6wq7a}jU)vR!}>mA{3fUCxh z8Co_t5w~;DF#TYR$A*(o)l!bWul#rvTkfr8DqoltU;x>u?B>#vEK0eTDXKEBn3OBu zerWf3<6!xxb0F3&PoXk&;x(~R{25ywM{aPO1C#nye{)Y2-@m`Xzb3{&H!O2*qh1LimQ=WKtL3j|%!F1n; zhRP-Sp|aS!r?OtHQ*MuBZBM#7IbRk;?FPKBcZ5#}a1>2e^1DVF{BWUlbbRYBGIxh= zDc?lbF>`o4aIf%`R7s(}fnRH$N?R+wHW0NwdxZMr_O-l(%_RSJa3`g5dC~hl_VPtC zx?e2!0GaclJNUFXnhCYs4QK%QLqIAa63`$#v=dvLALa3;b^za@hn>pBBGki1#-Bb`fT^o`n`zuTJEGcXAm+x)AChj-21 zW;-BMbjD$i291ke*b2KnH(t+5Qnq(Y&c85^BfNlTyd0vqtEESe3dHmz*6rW9|-{wz0mU(TwH$wodZs3~CUa{}H-g8vk!SjxQA5XHG5#!Z0^osQiB} zc=-LuK6bNvy;*`7ATZ8WnM@9aDcMcG`5ZAm;zk5Kz`K`FC#XS=N@CZ%Xi=wpt(^39 z-oewkJPPlM4ITu~cKsS^?Z)|%-#1~=P#fpY`D)uE2a`MVue-`=c6mo0u(weTv%y>^ zA*ZtH(#`Ums%}Rtk00M>vc_NN2v^N-(uIY;u1c%4Y%!5%P|$)sC1=WM88V^nCU5}q z3^i;Y+TAAT&c(~b9-Po;iBb!-{(Z$ZRH@-bJ=&ee))bR1wa#yi_j5J6BhJiF&2y=C zj^0Z=OJu{K_f@6%*TVNhPiIGn#4g0{+)WcMGEW@zi7x%^vniCg=ehR1)jo7=#NGZY z=0!0_u=XncNpjA^%&Wx_e&4nU3E6cKyJ4Oqb}w97I^v&{33gg)dRuTuh1H2p+3~<1 z&=%7c4OXYcbzHKdro{cj0XusEoEJImzi!Whe4y9*(s06c zPlfvQ>{MU7X)lc+Uc~%E-K;iGY==2!c8$+s;6d&S*OnxxMA29=eYRwks9*5V5u4w$ z^kR$V4Fab{)~hHUchNu!nex6>ya=7AM8Y|L80X!SMw~n?K4g~1`A7K|G8C%J#br~7 z2COZ8f3b_a3rDWqIanwkwo$rLVwWK!vs{abDLbw0qjTvtJwTymSZQ2f$IOCD2Yg`@(^0i^BILDQ$m>+cajZM+#xC+*8AJPyXE#GS9!w<13%UZ_lO_5N% zS_<=!Vz@i+t7RDQm78sHO)~N92O`rZxyai1?cCO{Ulp`;j;JxAj8}r}tZcQ+}dRfLovRh=(hGE|we#~W60qMyz2~jfO zvU6q|{j-9iJZ~*iEz(NzP1btgh&92XGS+GR$+9YpEa{9eFOjkUS2v-$FoDh(cyKL!@Wst2~wPiXfmit^ajs;174p> z`IE#X`nz9VGEI^YK_cq=T_{8LUUO_PB&@yK;D<;TI*A%WiU z*;Y#ceD(LLG8Hc~?^S2h4r@}KP0aVVC$^W1KEfnL)sL~2jWtH31`~N_8yQ$#g&*Cr zPy^puo4ZDGtgXXNeM%3X838g>Sk#&LxG^l^EJZ3;iR{BB3ch8L{SOdgJHiq{isC%g zq4yb`sRuO&lWA2-O2#tMnc226bR8|cw`>(h^YzUXE4lMBqZ}Yxx>HI8(GE^@j)_8| zJ_%p@xl`bHIw+c2r*fNy#(@D7N6AzeLEwzRFY6BeP60b%=1*d1$gNw5Va1jVJ3oqD z?z!{8P7M>QU{9$fIO|1s!Be+jwoLVGGqJnl&7IHJL*HJxzZ*wzr`b?7hR1Xasrw>& z#m6YISFvusSYW8R{QHZ=^*>E|9)u1=)2nN{Kle8-k55jo(62~k)P{{o9PofY!%mTR z9wPCuzO@JdnLOqS0`Dreqw=rvj57E;gk4k&R$g23^{Iu%k>oF0-&Z!7OwwZwjH%the`vdUN^j!G&Pv}_ zjY=}vYUZaM&jVO+r(%6ajX%$F@7Cd{dC4%{Z73nHB__!A)PLS6?3Pk^x?AOZ*rJv= z|1GnM+>PXAqBQh9M2oLay_fo9lt1ppa4F}=AT_}j7x-1O{kuN5lC-BT-7Ua^X4nI( z1Rbzk7uKMC<3}8_Ukf@_Q}~Yd{Z*s&D@)R%jDvxG7{$QPJ~|zIAEU-PoDEIFw^K>; z>5OUh5{4PBs$G2Q2#PtZ*rL2Md?6)xWaJ5V7)5D9g(UoAjWYD!%dL6tG4g(yud%Jk z?V7bFb*Z9|%5pE3VyD_r{dtTd>Xd14tD@rXlCQ2~0YXEFn( zY2Q0}+B;~~4X|Fj3jUVG&s5qEBo}5BgJiZax*Q4Xp4YDj8?kYxdnf7MTC3sL*JCMC zHxm6p9C^_TP=yqtS)A2Npuz7NVm?XfPq3Er0X{^a&DwDHMG%KF#{WrUOY;Bp$Q^~Y z_Jn&X-v+z{|x7JT<+BDmB!|`#l2Rl%O6;+Ss`reVo(2m7yB!>zOr4Tcl zAiUlrDiDTatd_jdtF3iN;u+^s9WP@YV0E^Yp_?KPhw$89*-`%_6?oF&*IHp$e6RLv z@3`z0bx>#8m%YUXf3+lilNRUiG20n4!ZpkD>kENcp3sKubG zKefx}Vz=k=QUi5$wu4{6SNr6;~f@@gmQk-zat$Zuha!t7j|i)qF1jSiV-vn(W$qy`F6%cik!7vSg^XIV8fOe9Z1oisV~CMq71IARDJ zcJO-77fAOOc+Zy&Ht6q(9l;d!sPCy2G+I&iAu{HnrflI`@7q(%+Lh~g7jqg1TrB@k z_4rS!PZqt4sucYR9mky$t84gKf9EBedv^}ad)s6@bKUnSyg;!j(bpTiL(7G@X9WZu z^f-U)IksG$I`xJpvWo@%nJ}9f>tch|9ZU8~4I+i;rW*{gwS5H^;9uvH>M6ll$tqAJf9Q_yk;7X#4Z%zhz{4{578>7hUb~`d2GgqDq=SMt)&gbLMOZPc3b zZzgXJ{p{1S3!LCnjq?#^3+_yKfA9!rdDxY1fZlzVuhC)~3N1Rpof7-4{i@`%+$;1J z6++aUHKH=yxBY;jup7qoCIRh{qDn2TQvbue{=Wx%l30{_?SCrMC2E zf${tNePjlD&?SZf}g7qb^rgLS1q;uj)8IrPBsb~Ba$W6+Y)KT6C>jD0Bg?tx1 z>tc@j9fx;HlwXyUqBk!Enf}?CWtye<{iFB9Fx50|3?cNhgtURZ_5n{|e^A$b+U@Z# zCD}9t+lZ!qF(hM2RLyTdk5nW9FNf(RdRkW7iwI(RtPM{$T7XJb!6OkZ==S;)BLy)L z-LI23+)Memj~zc$XJW|bPzV_0;jl!#+xlr4BQM{^A&A&oP-zp3o68MGI{IkV2TM@A zGTMt42~^`3o*yYediVcOHS{ohSZx?pYc?wWuFJciW=g(r(~VSj^*6~+e`ADFfFn}5 zp4_;&A_+Ex(4Rl2*P4Dgsy{}Qes+f3;oaz5SQl$JL(Vo5n?6&=zkH@Xd zXmpyUd>;%AK5iJjz2b*xcm}&mpz6DPk_V!!2>JLX=@Rw4agdu5)3Malw`+a{scEh;{!qNMUC{`Hj#LRt5-@3!feB9(vF0|K{;)@=aDX{q-`TUPtp`cnUId zV+~|;60!t#q-S_`4HWC7>6&s-+u6a>@tNCi2c<^M9C=9i%}hVL*P`{YHLD(`HV`jw3e z+sbK>Qk^uiC_;4p)#X`D(L8yNNW+7b2=6=Unrz8xFFuPuI4cNs&f8SswZ`X;@}H>Z z<6DQ%p#QT_} zHqKCpcV}D9ujcfHtYqyaFVh1Ko2JfJ?UecU_5-R7Jdu5_1T;%sG`kr$x z)lcKi=!~5EL6@I#hgTcfQM8=Af6n6%widiRqUDqwb|d;JLwPYyw~0c(?L0jH_`^xy z*~XS5d!-b$;OuOc2DNgs5$4yi;&%s?N@Np&m?G3Gg Z%HI~|zMCS8McOj%e=6rfFtO=@{{=F~NlpL& literal 0 HcmV?d00001 diff --git a/assets/hbm/sounds/weapon/ric3.ogg b/assets/hbm/sounds/weapon/ric3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..09ec853b67c442434de84d4b169fe1d870cd5974 GIT binary patch literal 11091 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 literal 0 HcmV?d00001 diff --git a/assets/hbm/sounds/weapon/ric4.ogg b/assets/hbm/sounds/weapon/ric4.ogg new file mode 100644 index 0000000000000000000000000000000000000000..08bcd7ff70c16f0a8939b92c5638bdc799154e68 GIT binary patch literal 13500 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 Oo^jSa#{$5Q2mcQ`6Y@g< literal 0 HcmV?d00001 diff --git a/assets/hbm/sounds/weapon/ric5.ogg b/assets/hbm/sounds/weapon/ric5.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7830ce2fecd86c9cd2e26384d6bc7a59bcaf18bf GIT binary patch literal 9886 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 m}~G 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 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/ammo_44_du.png b/assets/hbm/textures/items/ammo_44_du.png new file mode 100644 index 0000000000000000000000000000000000000000..f1fa1881682fbe5070f4046c02a084d1e67032e9 GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfRORM_I#-=|hW9q-EZ1zcc)o~X zV_u!pt!=!ev5U8+%}YO4C=%VUg3)1Gs)y#ppm+6&ui5VX&d@liaQ<`20jocq2cIP} ztXjq8#4#l(BHQp-&bu^2hs!1zYXiLueT9$BP+5HcJaeXj%iMn{ze0e%VDNPHb6Mw< G&;$S-aA{Bg literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/ammo_50bmg_du.png b/assets/hbm/textures/items/ammo_50bmg_du.png new file mode 100644 index 0000000000000000000000000000000000000000..2702520cb03f7b1a2db465d6d8d7222fac3eac84 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfB;)a^FQCz$l#Dl%+&RU9||@b)%^T5`{C*9_j&d%+11cKdurqK_Nk5S z(oG+$7}Jb5aaUAENdBm}`JnBAX~QIg1235-@hF5FcQHO;5{nT!A77XJ)#XOfX$6 z?X-nE&(z33>9UHnLnrqGvsG7(|G1YO>^-db|7XQb3A@^VM?d^LozE70zBeM)+~ZI~ z%vl~F(AlA4SO1fD`Tm-}zPlLr*sS5H*^|Q(+hD4>`1pb8>-S5V>6fTlHgqyE{O5Bn UD*5wkIna#^p00i_>zopr0FkCw8vp_q7b^!}EL0O%946Iyo3@q$I41a!pVfg*+5yPLK@30y$NCRD%PDHLkV1lyTHr)UK delta 156 zcmV;N0Av5V0muQ6G=G0dL_t(IjbmV-C3uk_^Z!AF@PB-2nDA+4Wn*XH;NWDyX9!LM zhy}DU0OouqR(1wL-k{h8ELcrV7Gq%Il4D?D7h?GH^Bn`zw?_zopr0ByBa^Z)<= literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/book_of_.png b/assets/hbm/textures/items/book_of_.png index 08da95df5bb4cefd22ce7d946835e7770ded92c8..b2890e301e09d24cba1dbbd8b0e1acedb6fec4a2 100644 GIT binary patch delta 431 zcmV;g0Z{&z1Iq)D7YZN<1^@s68;SVLks%X*f=NU{R7i>Kls!wsP!xurq)K~l6=@^X zibaKPDmaN_|Aruff5HAB2PbD|5jSTQ6cnVWwV-M3U~WyZ$Dv=QiJHNog9k!RF6X@W zJ@=9a{yK_IMv6{G;?~<=KeX18La=-jdqaD4;fVw@b_Y2imWz;pLRh)-*;|2Hx$vuh zNJs#{Pr=a!Hin>=2glg!V?y! zM@I-8qUU)-F$-qxVeWRi`BS4A*fer~1f>)P@BrNx9E=yN4G9=yI5|D0Qn_PsahXQ5 zLA82MT2GP7<=Nia2{?^(P%pQ@YLL6G z8`U>1F+Mzq`xl0;vCo6U8k~V_?nmC#_YPplgQaXCHkp9$c_0T}Ccr-r;GYK?{rFQJ Zd;$?j_gkoNMr;58002ovPDHLkV1h`_#e)C< delta 378 zcmV-=0fqj{1D6Ak7YYyv1^@s6AM^iVks%X*PDw;TR5*>TkU>iVQ51#084Z1Jim(aH z2qbV{0_pd(YSFS~v~ATc2 zh0|@gJJ{2;i?hV{KuW1?+t#)vv^3CLbLdhUeRXuGYt<3a=Gsb#(1;Q&i7cw8a6T3G zSYIIpJq==vz8OsBrfvYBv_ZLCCNun^-|dje<#4+$ueaA^3ajwa{M&+*QUjr9o1;H! zA#_B~^Cn~lESr@Ri^93q9yCJ2q3ffK^&r>`;Jz!Z2^m={X+aLG?e+p~F%m*T+ltEJn5#)~J#LdkX Y-&+KKT#o@iBLDyZ07*qoM6N<$f)cE)*Z=?k diff --git a/assets/hbm/textures/items/book_of_.png.mcmeta b/assets/hbm/textures/items/book_of_.png.mcmeta new file mode 100644 index 000000000..b84e69f2c --- /dev/null +++ b/assets/hbm/textures/items/book_of_.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 4 + } +} diff --git a/assets/hbm/textures/models/ModelRocket.png b/assets/hbm/textures/models/ModelRocket.png index 36835fb13ccb95770b928d3256a93d250bb97c0e..9ada99c32c013b2dcb63e7b4cc6394e4f4a757dd 100644 GIT binary patch delta 295 zcmZo?xyYp08Q|y6%O%Cdz`(%k>ERLtq!mDzgAGU)S5bS=j2^5_R@md)5+Wkb~ zz11JzU;lZNA?bp#N8*oV&>l z)5;bsW<2|&oAE=d=9On1XB$^$=$FeJFO*4_Q{2O7@*@6h4BwmrpobVdUHx3vIVCg! mnervB5hcF)DXBROA*sn3d8ztA`N`R-CHi172wQY}tTzDu1A0mT delta 479 zcmV<50U-X-0*3@4iBL{Q4GJ0x0000DNk~Le0000$0000W2nGNE0HU3KgpnaMe*t<) zL_t(&L+zI7O2jY}g)a;<9cH1Ou6EI27`e_Q6%z>8m|o4#A)w9f9wqmpkNB;*w2g{VC*f&OJn2;HJ1=i1Kj96&$W?v zi2GW`{|+XcBL1AeVxJ~_;N2VMtm}&R!T_=hk-P&O6iV0@8%PM>v-j^|4in&T2K3q# z#-Atrgd~93Y}TfNoWT^f#v$&6N9;Yo04CwT*skdAe&4W{901w>e zegQyT*D{?>B?tn^vP_aBvHN5+8ZBp@!%rRm3Eat#$79$dj@ut4z&fVHD=3zO!g#t)pi6bmnYyebc VV`y$=FHUu9WpXc0Wp@*!4&+LY(yssj diff --git a/assets/hbm/textures/models/ModelRocketEMP.png b/assets/hbm/textures/models/ModelRocketEMP.png new file mode 100644 index 0000000000000000000000000000000000000000..5dcff98f237bba5d8d09525349aae9fe68626b1f GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;2KXC$B+p3w-aKym=$?iitXZSJ~;0AdoQ7X zf>DB(SA>5M*iHZ&*y*M%8+!yNOEWJ?Y-wcK2NmX zdRM8h`K8Uw89z78W0LxIVcF##)4iO_{qH(0YgzcG?=NGu-PGBc-kLmDix}r}CdxTQ zNH|Gn=Q{QnY!tg8#H5zA;^4h{mJK%?)-&lnR%c?E;k4}@laFip*2flok1Z}MR56^% zD6Uy~c%mK9-3*?telF{r5}JTa`4ZQN65srk)EtJ8)Z~o3RQ;g*!lvI6;>1s;*b3=DjSL74G){)!Z!;9gG`$B+p3w-XL>9yZ`{we?Y$5V)r;{e-G` ze9_6Sy9<=REcxW9bx5VpTPJ9RT#Zs>-@YdbPb!y{MrNG;srQmmkth40I)9eL`?d=(t^N!8h%)2{3)_GgY!aaUJnNs&^ zSKnSXh2zl{`*i6;Hpeo|Tg32n4IMl!FI;R$`*Vch#~~4| z;v>%vglw5^-S^m{?{dGuy%lF-51pFYydCHf22WQ%mvv4FO+co6iEBiOZ+=Q@4ns(4 Yaz!lvI6;>1s;*b3=DjSL74G){)!Z!;C4?J$B+p3w-X$>m<>5xZR5=%Qv{3dt=s*c zx2i$zz$Zs`PUD$VI=2MK*SIAgTd%14{LE63bzAeC`aTEx*6lxcoh_hw;>k0zncppq z&!)fgu$G@^{^L2rZ!lvI6;>1s;*b3=DjSL74G){)!Z!;C4?J$B+p3w-XGx4jb^emTu6CwW|2|;NXvM zdmZ~1d~)PEq|)cD6SYFFMk%syUrJEXxfrj9QLojWSjb;}^8Iy9E`zDW%rkc;md!W5 zT=T4N%jbuc%5`@;e>&zQYsNG4s@fcxrDwctPVSDH*MhrLdA^qZ5`Xd9`{wO!TaQgx z^4jvYz%xzN{fcWgPMuO4sGO6Nn!WCT3$L!l?|#OrUyXfiC6CqF4u~%cn6F&MzHHTA z8;&Lgj;2z9y^N+>))t;-TIYdYVDNPHb6Mw<&;(@4m$*ih_~xgi<}ie$CTHZO>IdZ~ QXQ!6vgT)|h(e1I`06%ViX#fBK literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/models/ModelRocketOld.png b/assets/hbm/textures/models/ModelRocketOld.png new file mode 100644 index 0000000000000000000000000000000000000000..36835fb13ccb95770b928d3256a93d250bb97c0e GIT binary patch literal 519 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=$zQjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@iy0XB4ude`@%$AjKn+!%E{-7?&Tpr^^g3c7(yGs6ESt7)?z*yz z%Yz(`um%nN`2Uz_C&*c)7*cO4s6YhE`chadZpI$+&Gf? z-r)@|&w>Q5=Qqyx$RxbcJ?@?Sgv)fgfIst{7q;iOPAu>E9d+zKpV}Oye{=RH%~z{= za98@-n%7<54>4@wp16luM#Sren6wAS{mtLsC-MnDC}8_?OXS#m^*=2t4L5VHEo+){ zP-NRN#dj_4Z)^`Rs6E_&W8I5)b@w++m*F^k;oR=+_4A&8dzrQ8U>&1F>~*8LeySWy zCpY;_QrY-B#Y9RsecoYz+5en(PWB&9zAe;!^w7Fa@22n)|2gMPe3xcQ&F-`4yDhJJ zz-rkMZH;NohbngYE%0vKE5aCkI69-D+36-%irxIv1r}3Qt$H)-LsN)|YakMOsjjqt z^7ID74_aGp0HcP%)78&qol`;+kSSK;8d2h#pOTux5R#glk(a9PSDKw#r0?XN+ra<; literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/models/ModelRocketShrapnel.png b/assets/hbm/textures/models/ModelRocketShrapnel.png new file mode 100644 index 0000000000000000000000000000000000000000..62fa9befdb2d0fdce8efa0276a40c993b2d67a6d GIT binary patch literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;08|@$B+p3w-da%niY9kil;a&Y%hF#sI}tv zy#?+bk_M{0^;d(owmxfSe5`Cdu|-08`4o%ie+07LY(Mwv^ZB1q42Bsqd+w}!doO*- z&l7WRPLMif%Qa+ZjAv{an^LB{Tt<@+GbjCBFG7sW}WGsmU36sro_r$=RtT`d~2# JTXcJ@Hvp~ldr<%Y literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/models/ModelRocketSleek.png b/assets/hbm/textures/models/ModelRocketSleek.png new file mode 100644 index 0000000000000000000000000000000000000000..cd8b7015351e2ab6b4de32cc6fe56aa5085fc60a GIT binary patch literal 327 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;6_gu$B+p3w-c?o4jTx#TxGk&)%5F&RfG23 z|6FY5jdz?9&v>m7k8F&P=lGq#_4Za(a*jmdUAc>v)05Zs&QM@!6-Wf#( zX-{a9tY#Xeni;hc|e z^tUc4spL>pD#_uWeky@~=l6a2oiC^CtC3KBctPkgx5tv2ikUB28J5K8obOts(Y5Fg z=dl`w#23p~*lhda0CYTqr>mdKI;VstAXC1?HKN2fKP5GXAtW_9BQI4yC_gznwL~8* L24RbCkM#xsa config.maxAge) + this.setDead(); //this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F; //this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F; @@ -426,6 +439,10 @@ public class EntityBulletBase extends Entity implements IProjectile { for(PotionEffect effect : config.effects) ((EntityLivingBase)e).addPotionEffect(effect); } + + if(config.instakill && e instanceof EntityLivingBase) { + ((EntityLivingBase)e).setHealth(0.0F); + } } @Override diff --git a/com/hbm/handler/BulletConfigFactory.java b/com/hbm/handler/BulletConfigFactory.java index 83fe8e8a0..0bd0d4cbb 100644 --- a/com/hbm/handler/BulletConfigFactory.java +++ b/com/hbm/handler/BulletConfigFactory.java @@ -1,6 +1,11 @@ package com.hbm.handler; +import java.util.ArrayList; + import com.hbm.items.ModItems; +import com.hbm.potion.HbmPotion; + +import net.minecraft.potion.PotionEffect; public class BulletConfigFactory { @@ -10,7 +15,7 @@ public class BulletConfigFactory { BulletConfiguration bullet = new BulletConfiguration(); - bullet.ammo = ModItems.gun_revolver_lead_ammo; + bullet.ammo = ModItems.gun_revolver_ammo; bullet.velocity = 5.0F; bullet.spread = 0.05F; bullet.dmgMin = 15; @@ -26,6 +31,7 @@ public class BulletConfigFactory { bullet.rainbow = 0; bullet.nuke = 0; bullet.boxcar = false; + bullet.boat = false; bullet.destroysBlocks = false; bullet.style = 0; bullet.plink = 1; @@ -33,5 +39,141 @@ public class BulletConfigFactory { return bullet; } + + /// STANDARD CONFIGS /// + //do not include damage or ammo + protected static BulletConfiguration standardBulletConfig() { + + BulletConfiguration bullet = new BulletConfiguration(); + + bullet.velocity = 5.0F; + bullet.spread = 0.005F; + bullet.gravity = 0D; + bullet.maxAge = 100; + bullet.doesRicochet = true; + bullet.ricochetAngle = 5; + bullet.doesPenetrate = true; + bullet.doesBreakGlass = true; + bullet.incendiary = 0; + bullet.emp = 0; + bullet.rainbow = 0; + bullet.nuke = 0; + bullet.boxcar = false; + bullet.boat = false; + bullet.destroysBlocks = false; + bullet.style = 0; + bullet.plink = 1; + bullet.instakill = false; + + return bullet; + } + + protected static BulletConfiguration standardBuckshotConfig() { + + BulletConfiguration bullet = new BulletConfiguration(); + + bullet.velocity = 5.0F; + bullet.spread = 0.05F; + bullet.gravity = 0D; + bullet.maxAge = 100; + bullet.doesRicochet = true; + bullet.ricochetAngle = 3; + bullet.doesPenetrate = false; + bullet.doesBreakGlass = true; + bullet.incendiary = 0; + bullet.emp = 0; + bullet.rainbow = 0; + bullet.nuke = 0; + bullet.boxcar = false; + bullet.boat = false; + bullet.destroysBlocks = false; + bullet.style = 0; + bullet.plink = 1; + bullet.instakill = false; + + return bullet; + } + + /// ADJUSTED CONFIGS /// + protected static BulletConfiguration getRevIronConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_iron_ammo; + bullet.dmgMin = 5; + bullet.dmgMax = 10; + + return bullet; + } + + protected static BulletConfiguration getRevSteelConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_ammo; + bullet.dmgMin = 10; + bullet.dmgMax = 20; + + return bullet; + } + + protected static BulletConfiguration getRevLeadConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_lead_ammo; + bullet.dmgMin = 5; + bullet.dmgMax = 10; + + bullet.effects = new ArrayList(); + bullet.effects.add(new PotionEffect(HbmPotion.radiation.id, 10 * 20, 4)); + + return bullet; + } + + protected static BulletConfiguration getRevGoldConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_gold_ammo; + bullet.dmgMin = 20; + bullet.dmgMax = 25; + + return bullet; + } + + protected static BulletConfiguration getRevSchrabidiumConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_schrabidium_ammo; + bullet.dmgMin = 10000; + bullet.dmgMax = 100000; + bullet.instakill = true; + + return bullet; + } + + protected static BulletConfiguration getRevCursedConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_cursed_ammo; + bullet.dmgMin = 25; + bullet.dmgMax = 35; + + return bullet; + } + + protected static BulletConfiguration getRevNightmareConfig() { + + BulletConfiguration bullet = standardBulletConfig(); + + bullet.ammo = ModItems.gun_revolver_nightmare_ammo; + bullet.dmgMin = 1; + bullet.dmgMax = 100; + + return bullet; + } } diff --git a/com/hbm/handler/BulletConfiguration.java b/com/hbm/handler/BulletConfiguration.java index d17e2236a..b5ac40d19 100644 --- a/com/hbm/handler/BulletConfiguration.java +++ b/com/hbm/handler/BulletConfiguration.java @@ -47,12 +47,29 @@ public class BulletConfiguration { public boolean boxcar; public boolean boat; public boolean destroysBlocks; + public boolean instakill; //appearance public int style; //additional appearance data, i.e. particle effects public int trail; - //0: no plinking, 1: bullet plink, 2: grenade plink, 3: sing boink + //ricochet sound type public int plink; + public static final int STYLE_NORMAL = 0; + public static final int STYLE_FLECHETTE = 1; + public static final int STYLE_PELLET = 2; + public static final int STYLE_BOLT = 3; + public static final int STYLE_FOLLY = 4; + public static final int STYLE_ROCKET = 5; + public static final int STYLE_STINGER = 6; + public static final int STYLE_NUKE = 7; + public static final int STYLE_MIRV = 8; + + public static final int PLINK_NONE = 0; + public static final int PLINK_BULLET = 1; + public static final int PLINK_GRENADE = 2; + public static final int PLINK_ENERGY = 3; + public static final int PLINK_SING = 4; + } diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index b0c0bad0c..9b1418c66 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -818,17 +818,21 @@ public class ModItems { public static Item ammo_20gauge_wither; public static Item ammo_44; public static Item ammo_44_ap; + public static Item ammo_44_du; public static Item ammo_44_pip; public static Item ammo_44_bj; public static Item ammo_5mm; public static Item ammo_5mm_explosive; + public static Item ammo_5mm_du; public static Item ammo_9mm; public static Item ammo_9mm_ap; + public static Item ammo_9mm_du; public static Item ammo_22lr; public static Item ammo_22lr_ap; public static Item ammo_50bmg; public static Item ammo_50bmg_incendiary; public static Item ammo_50bmg_explosive; + public static Item ammo_50bmg_du; public static Item ammo_folly; public static Item ammo_folly_nuclear; public static Item ammo_folly_du; @@ -1396,6 +1400,7 @@ public class ModItems { public static Item glitch; public static Item letter; public static Item book_secret; + public static Item book_of_; public static Item burnt_bark; public static Item smoke1; @@ -2251,13 +2256,17 @@ public class ModItems { ammo_20gauge_wither = new Item().setUnlocalizedName("ammo_20gauge_wither").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_20gauge_wither"); ammo_5mm = new Item().setUnlocalizedName("ammo_5mm").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm"); ammo_5mm_explosive = new Item().setUnlocalizedName("ammo_5mm_explosive").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm_explosive"); + ammo_5mm_du = new Item().setUnlocalizedName("ammo_5mm_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm_du"); ammo_9mm = new Item().setUnlocalizedName("ammo_9mm").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm"); ammo_9mm_ap = new Item().setUnlocalizedName("ammo_9mm_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm_ap"); + ammo_9mm_du = new Item().setUnlocalizedName("ammo_9mm_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm_du"); ammo_50bmg = new Item().setUnlocalizedName("ammo_50bmg").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg"); ammo_50bmg_incendiary = new Item().setUnlocalizedName("ammo_50bmg_incendiary").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_incendiary"); ammo_50bmg_explosive = new Item().setUnlocalizedName("ammo_50bmg_explosive").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_explosive"); + ammo_50bmg_du = new Item().setUnlocalizedName("ammo_50bmg_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_du"); ammo_44 = new Item().setUnlocalizedName("ammo_44").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44"); ammo_44_ap = new Item().setUnlocalizedName("ammo_44_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_ap"); + ammo_44_du = new Item().setUnlocalizedName("ammo_44_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_du"); ammo_44_pip = new Item().setUnlocalizedName("ammo_44_pip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_pip"); ammo_44_bj = new Item().setUnlocalizedName("ammo_44_bj").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_bj"); ammo_22lr = new Item().setUnlocalizedName("ammo_22lr").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_22lr"); @@ -2851,6 +2860,7 @@ public class ModItems { glitch = new ItemGlitch().setUnlocalizedName("glitch").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":glitch_" + MainRegistry.polaroidID); letter = new ItemStarterKit().setUnlocalizedName("letter").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":letter"); book_secret = new ItemCustomLore().setUnlocalizedName("book_secret").setCreativeTab(MainRegistry.polaroidID == 11 ? MainRegistry.consumableTab : null).setTextureName(RefStrings.MODID + ":book_secret"); + book_of_ = new ItemCustomLore().setUnlocalizedName("book_of_").setCreativeTab(null).setTextureName(RefStrings.MODID + ":book_of_"); burnt_bark = new ItemCustomLore().setUnlocalizedName("burnt_bark").setCreativeTab(null).setTextureName(RefStrings.MODID + ":burnt_bark"); smoke1 = new Item().setUnlocalizedName("smoke1").setTextureName(RefStrings.MODID + ":smoke1"); @@ -3974,17 +3984,21 @@ public class ModItems { GameRegistry.registerItem(ammo_20gauge_wither, ammo_20gauge_wither.getUnlocalizedName()); GameRegistry.registerItem(ammo_44, ammo_44.getUnlocalizedName()); GameRegistry.registerItem(ammo_44_ap, ammo_44_ap.getUnlocalizedName()); + GameRegistry.registerItem(ammo_44_du, ammo_44_du.getUnlocalizedName()); GameRegistry.registerItem(ammo_44_pip, ammo_44_pip.getUnlocalizedName()); GameRegistry.registerItem(ammo_44_bj, ammo_44_bj.getUnlocalizedName()); GameRegistry.registerItem(ammo_5mm, ammo_5mm.getUnlocalizedName()); GameRegistry.registerItem(ammo_5mm_explosive, ammo_5mm_explosive.getUnlocalizedName()); + GameRegistry.registerItem(ammo_5mm_du, ammo_5mm_du.getUnlocalizedName()); GameRegistry.registerItem(ammo_9mm, ammo_9mm.getUnlocalizedName()); GameRegistry.registerItem(ammo_9mm_ap, ammo_9mm_ap.getUnlocalizedName()); + GameRegistry.registerItem(ammo_9mm_du, ammo_9mm_du.getUnlocalizedName()); GameRegistry.registerItem(ammo_22lr, ammo_22lr.getUnlocalizedName()); GameRegistry.registerItem(ammo_22lr_ap, ammo_22lr_ap.getUnlocalizedName()); GameRegistry.registerItem(ammo_50bmg, ammo_50bmg.getUnlocalizedName()); GameRegistry.registerItem(ammo_50bmg_incendiary, ammo_50bmg_incendiary.getUnlocalizedName()); GameRegistry.registerItem(ammo_50bmg_explosive, ammo_50bmg_explosive.getUnlocalizedName()); + GameRegistry.registerItem(ammo_50bmg_du, ammo_50bmg_du.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket, ammo_rocket.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket_he, ammo_rocket_he.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket_incendiary, ammo_rocket_incendiary.getUnlocalizedName()); @@ -4387,6 +4401,7 @@ public class ModItems { GameRegistry.registerItem(polaroid, polaroid.getUnlocalizedName()); GameRegistry.registerItem(glitch, glitch.getUnlocalizedName()); GameRegistry.registerItem(book_secret, book_secret.getUnlocalizedName()); + GameRegistry.registerItem(book_of_, book_of_.getUnlocalizedName()); GameRegistry.registerItem(burnt_bark, burnt_bark.getUnlocalizedName()); //Kits diff --git a/com/hbm/items/special/ItemCustomLore.java b/com/hbm/items/special/ItemCustomLore.java index 2ebb19d1b..cc823a653 100644 --- a/com/hbm/items/special/ItemCustomLore.java +++ b/com/hbm/items/special/ItemCustomLore.java @@ -680,6 +680,12 @@ public class ItemCustomLore extends Item { list.add("Explore the other side."); } } + + if(this == ModItems.book_of_) + { + list.add("Denn wer den Walzer richtig tritt,"); + list.add("der ist auch für den Abgang fit."); + } } @Override diff --git a/com/hbm/items/weapon/GunLeverAction.java b/com/hbm/items/weapon/GunLeverAction.java index b239062d9..bcddf5f70 100644 --- a/com/hbm/items/weapon/GunLeverAction.java +++ b/com/hbm/items/weapon/GunLeverAction.java @@ -5,6 +5,8 @@ import java.util.Random; import com.google.common.collect.Multimap; import com.hbm.entity.projectile.EntityBullet; +import com.hbm.entity.projectile.EntityBulletBase; +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.items.ModItems; import net.minecraft.enchantment.Enchantment; @@ -67,59 +69,39 @@ public class GunLeverAction extends Item { if (j > 10.0F) { f = 10.0F; } - EntityBullet entityarrow1; - EntityBullet entityarrow2; - EntityBullet entityarrow3; - EntityBullet entityarrow4; - EntityBullet entityarrow5; - EntityBullet entityarrow6; - EntityBullet entityarrow7; - EntityBullet entityarrow8; - EntityBullet entityarrow9; - EntityBullet entityarrow10; + EntityBulletBase entityarrow1; + EntityBulletBase entityarrow2; + EntityBulletBase entityarrow3; + EntityBulletBase entityarrow4; + EntityBulletBase entityarrow5; + EntityBulletBase entityarrow6; + EntityBulletBase entityarrow7; + EntityBulletBase entityarrow8; + EntityBulletBase entityarrow9; + EntityBulletBase entityarrow10; if (!p_77615_3_.isSneaking()) { - entityarrow1 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow1.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow2 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow2.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow3 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow3.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow4 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow4.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow5 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow5.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow6 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow6.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow7 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow7.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow8 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow8.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow9 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow9.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow10 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F); - entityarrow10.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); + entityarrow1 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow2 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow3 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow4 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow5 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow6 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow7 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow8 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow9 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow10 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); } else { - entityarrow1 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow1.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow2 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow2.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow3 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow3.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow4 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow4.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow5 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow5.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow6 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow6.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow7 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow7.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow8 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow8.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow9 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow9.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); - entityarrow10 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false); - entityarrow10.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin)); + entityarrow1 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow2 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow3 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow4 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow5 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow6 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow7 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow8 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow9 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); + entityarrow10 = new EntityBulletBase(p_77615_2_, BulletConfigSyncingUtil.TEST_CONFIG, p_77615_3_); } p_77615_1_.damageItem(1, p_77615_3_); diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index 5d3f11918..cb6dc1bde 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -865,13 +865,17 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_20gauge_shock, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_20gauge, 'A', "dustDiamond" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_20gauge_wither, 4), new Object[] { "BCB", "CAC", "BCB", 'B', ModItems.ammo_20gauge, 'A', Blocks.soul_sand, 'C', "dustCoal" })); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_44, 'A', ModItems.ingot_dura_steel }); + GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_44, 'A', ModItems.ingot_u238 }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_pip, 1), new Object[] { " B ", "BAB", " B ", 'A', ModItems.ammo_44, 'B', ModItems.powder_magic }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_44_bj, 1), new Object[] { " C ", "BAB", " C ", 'A', ModItems.ammo_44, 'B', ModItems.powder_magic, 'C', "dustDesh" })); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_5mm_explosive, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_5mm, 'A', Blocks.tnt }); + GameRegistry.addRecipe(new ItemStack(ModItems.ammo_5mm_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_5mm, 'A', ModItems.ingot_u238 }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_9mm_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_9mm, 'A', ModItems.ingot_dura_steel }); + GameRegistry.addRecipe(new ItemStack(ModItems.ammo_9mm_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_9mm, 'A', ModItems.ingot_u238 }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_22lr_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_22lr, 'A', ModItems.ingot_dura_steel }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_incendiary, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', ModItems.powder_fire }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_explosive, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', Blocks.tnt }); + GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', ModItems.ingot_u238 }); GameRegistry.addRecipe(new ItemStack(ModItems.folly_bullet, 1), new Object[] { " S ", "STS", "SMS", 'S', ModItems.ingot_starmetal, 'T', ModItems.powder_magic, 'M', ModBlocks.block_meteor }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.folly_bullet_nuclear, 1), new Object[] { " N ", "UTU", "UTU", 'N', ModItems.gun_fatman_ammo, 'U', "ingotIron", 'T', "blockTungsten" })); diff --git a/com/hbm/main/NEIConfig.java b/com/hbm/main/NEIConfig.java index cb7c5ac18..348007d55 100644 --- a/com/hbm/main/NEIConfig.java +++ b/com/hbm/main/NEIConfig.java @@ -72,6 +72,7 @@ public class NEIConfig implements IConfigureNEI { //API.hideItem(new ItemStack(ModItems.rod_euphemium)); if(MainRegistry.polaroidID != 11) { API.hideItem(new ItemStack(ModItems.book_secret)); + API.hideItem(new ItemStack(ModItems.book_of_)); API.hideItem(new ItemStack(ModItems.burnt_bark)); API.hideItem(new ItemStack(ModItems.ams_core_thingy)); } diff --git a/com/hbm/render/entity/RenderBullet.java b/com/hbm/render/entity/RenderBullet.java index a8c968957..8fd3703dd 100644 --- a/com/hbm/render/entity/RenderBullet.java +++ b/com/hbm/render/entity/RenderBullet.java @@ -7,6 +7,7 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.projectile.EntityBullet; import com.hbm.lib.RefStrings; import com.hbm.render.model.ModelBullet; +import com.hbm.render.model.ModelRocket; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.Render; @@ -16,9 +17,11 @@ import net.minecraft.util.ResourceLocation; public class RenderBullet extends Render { private ModelBullet bullet; + private ModelRocket rocket; public RenderBullet() { bullet = new ModelBullet(); + rocket = new ModelRocket(); } @Override @@ -34,7 +37,7 @@ public class RenderBullet extends Render { GL11.glRotatef(new Random(bullet.getEntityId()).nextInt(360), 1.0F, 0.0F, 0.0F); - renderFlechette(); + renderDart(0.75F, 0.0F, 1.0F); GL11.glPopMatrix(); } @@ -52,6 +55,28 @@ public class RenderBullet extends Render { bullet.renderAll(0.0625F); } + private void renderRocket(int type) { + + switch(type) { + case 0: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocket.png")); break; + case 1: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketHE.png")); break; + case 2: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketIncendiary.png")); break; + case 3: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketShrapnel.png")); break; + case 4: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketEMP.png")); break; + case 5: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketGlare.png")); break; + case 6: + bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/models/ModelRocketSleek.png")); break; + } + + rocket.renderAll(0.0625F); + } + private void renderFlechette() { GL11.glPushMatrix(); GL11.glDisable(GL11.GL_TEXTURE_2D); diff --git a/com/hbm/render/model/ModelRocket.java b/com/hbm/render/model/ModelRocket.java index d27be67f4..78dbc2895 100644 --- a/com/hbm/render/model/ModelRocket.java +++ b/com/hbm/render/model/ModelRocket.java @@ -1,4 +1,4 @@ -// Date: 20.07.2015 22:08:24 +// Date: 20.01.2019 12:33:09 // Template version 1.1 // Java generated by Techne // Keep in mind that you still need to fill in some blanks @@ -12,38 +12,97 @@ import net.minecraft.entity.Entity; public class ModelRocket extends ModelBase { // fields + ModelRenderer Shape1; + ModelRenderer Shape2; + ModelRenderer Shape3; + ModelRenderer Shape4; + ModelRenderer Shape5; + ModelRenderer Shape6; ModelRenderer Shape7; ModelRenderer Shape8; ModelRenderer Shape9; public ModelRocket() { - textureWidth = 64; + textureWidth = 32; textureHeight = 32; - Shape7 = new ModelRenderer(this, 10, 0); - Shape7.addBox(0F, 0F, 0F, 1, 2, 2); - Shape7.setRotationPoint(-3F, -2F, -0.5F); - Shape7.setTextureSize(64, 32); + Shape1 = new ModelRenderer(this, 0, 0); + Shape1.addBox(0F, 0F, 0F, 7, 2, 2); + Shape1.setRotationPoint(0F, -1F, -1F); + Shape1.setTextureSize(32, 32); + Shape1.mirror = true; + setRotation(Shape1, 0F, 0F, 0F); + Shape2 = new ModelRenderer(this, 0, 4); + Shape2.addBox(0F, 0F, 0F, 3, 1, 1); + Shape2.setRotationPoint(-3F, -0.5F, -0.5F); + Shape2.setTextureSize(32, 32); + Shape2.mirror = true; + setRotation(Shape2, 0F, 0F, 0F); + Shape3 = new ModelRenderer(this, 8, 4); + Shape3.addBox(0F, 0F, 0F, 3, 1, 1); + Shape3.setRotationPoint(-3F, -0.5F, -0.5F); + Shape3.setTextureSize(32, 32); + Shape3.mirror = true; + setRotation(Shape3, 0F, 0.1745329F, 0F); + Shape4 = new ModelRenderer(this, 0, 6); + Shape4.addBox(0F, 0F, -1F, 3, 1, 1); + Shape4.setRotationPoint(-3F, -0.5F, 0.5F); + Shape4.setTextureSize(32, 32); + Shape4.mirror = true; + setRotation(Shape4, 0F, -0.1745329F, 0F); + Shape5 = new ModelRenderer(this, 8, 6); + Shape5.addBox(0F, 0F, 0F, 3, 1, 1); + Shape5.setRotationPoint(-3F, -0.5F, -0.5F); + Shape5.setTextureSize(32, 32); + Shape5.mirror = true; + setRotation(Shape5, 0F, 0F, -0.1745329F); + Shape6 = new ModelRenderer(this, 0, 8); + Shape6.addBox(0F, -1F, 0F, 3, 1, 1); + Shape6.setRotationPoint(-3F, 0.5F, -0.5F); + Shape6.setTextureSize(32, 32); + Shape6.mirror = true; + setRotation(Shape6, 0F, 0F, 0.1745329F); + Shape7 = new ModelRenderer(this, 0, 10); + Shape7.addBox(0F, 0F, 0F, 4, 4, 0); + Shape7.setRotationPoint(4F, 0F, 0F); + Shape7.setTextureSize(32, 32); Shape7.mirror = true; - setRotation(Shape7, 0F, 0F, 0F); - Shape8 = new ModelRenderer(this, 0, 4); - Shape8.addBox(0F, 0F, 0F, 10, 1, 1); - Shape8.setRotationPoint(-8F, -1.5F, 0F); - Shape8.setTextureSize(64, 32); + setRotation(Shape7, 0F, 0F, -0.7853982F); + Shape8 = new ModelRenderer(this, 0, 14); + Shape8.addBox(0F, 0F, 0F, 4, 0, 4); + Shape8.setRotationPoint(4F, 0F, 0F); + Shape8.setTextureSize(32, 32); Shape8.mirror = true; - setRotation(Shape8, 0F, 0F, 0F); - Shape9 = new ModelRenderer(this, 0, 0); - Shape9.addBox(0F, 0F, 0F, 3, 2, 2); - Shape9.setRotationPoint(-6.5F, -2F, -0.5F); - Shape9.setTextureSize(64, 32); + setRotation(Shape8, 0F, 0.7853982F, 0F); + Shape9 = new ModelRenderer(this, 8, 8); + Shape9.addBox(0F, 0F, 0F, 1, 1, 1); + Shape9.setRotationPoint(7F, -0.5F, -0.5F); + Shape9.setTextureSize(32, 32); Shape9.mirror = true; setRotation(Shape9, 0F, 0F, 0F); } - @Override public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { super.render(entity, f, f1, f2, f3, f4, f5); setRotationAngles(f, f1, f2, f3, f4, f5, entity); + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); + Shape7.render(f5); + Shape8.render(f5); + Shape9.render(f5); + } + + public void renderAll(float f5) { + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); Shape7.render(f5); Shape8.render(f5); Shape9.render(f5); @@ -55,7 +114,6 @@ public class ModelRocket extends ModelBase { model.rotateAngleZ = z; } - @Override public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { super.setRotationAngles(f, f1, f2, f3, f4, f5, entity); } diff --git a/com/hbm/render/model/ModelRocketOld.java b/com/hbm/render/model/ModelRocketOld.java new file mode 100644 index 000000000..a1c846d49 --- /dev/null +++ b/com/hbm/render/model/ModelRocketOld.java @@ -0,0 +1,63 @@ +// Date: 20.07.2015 22:08:24 +// Template version 1.1 +// Java generated by Techne +// Keep in mind that you still need to fill in some blanks +// - ZeuX + +package com.hbm.render.model; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +public class ModelRocketOld extends ModelBase { + // fields + ModelRenderer Shape7; + ModelRenderer Shape8; + ModelRenderer Shape9; + + public ModelRocketOld() { + textureWidth = 64; + textureHeight = 32; + + Shape7 = new ModelRenderer(this, 10, 0); + Shape7.addBox(0F, 0F, 0F, 1, 2, 2); + Shape7.setRotationPoint(-3F, -2F, -0.5F); + Shape7.setTextureSize(64, 32); + Shape7.mirror = true; + setRotation(Shape7, 0F, 0F, 0F); + Shape8 = new ModelRenderer(this, 0, 4); + Shape8.addBox(0F, 0F, 0F, 10, 1, 1); + Shape8.setRotationPoint(-8F, -1.5F, 0F); + Shape8.setTextureSize(64, 32); + Shape8.mirror = true; + setRotation(Shape8, 0F, 0F, 0F); + Shape9 = new ModelRenderer(this, 0, 0); + Shape9.addBox(0F, 0F, 0F, 3, 2, 2); + Shape9.setRotationPoint(-6.5F, -2F, -0.5F); + Shape9.setTextureSize(64, 32); + Shape9.mirror = true; + setRotation(Shape9, 0F, 0F, 0F); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + super.render(entity, f, f1, f2, f3, f4, f5); + setRotationAngles(f, f1, f2, f3, f4, f5, entity); + Shape7.render(f5); + Shape8.render(f5); + Shape9.render(f5); + } + + private void setRotation(ModelRenderer model, float x, float y, float z) { + model.rotateAngleX = x; + model.rotateAngleY = y; + model.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, entity); + } + +}