From ee362c617e27a7b6d924200118531a87bdc96908 Mon Sep 17 00:00:00 2001 From: HbmMods Date: Sat, 20 May 2017 00:33:12 +0200 Subject: [PATCH] Polymer, durasteel, black hole grenade --- assets/hbm/lang/de_DE.lang | 12 +- assets/hbm/lang/en_US.lang | 12 +- assets/hbm/textures/gui/gui_nei_cyclotron.png | Bin 0 -> 1494 bytes assets/hbm/textures/items/elec_chainsaw.png | Bin 0 -> 277 bytes .../hbm/textures/items/elec_chainsaw_anim.png | Bin 0 -> 515 bytes .../items/elec_chainsaw_anim.png.mcmeta | 5 + assets/hbm/textures/items/elec_drill.png | Bin 0 -> 279 bytes assets/hbm/textures/items/elec_drill_anim.png | Bin 0 -> 333 bytes .../textures/items/elec_drill_anim.png.mcmeta | 5 + assets/hbm/textures/items/elec_shovel.png | Bin 0 -> 323 bytes .../hbm/textures/items/elec_shovel_anim.png | Bin 0 -> 476 bytes .../items/elec_shovel_anim.png.mcmeta | 5 + assets/hbm/textures/items/elec_sword.png | Bin 0 -> 267 bytes assets/hbm/textures/items/elec_sword_anim.png | Bin 0 -> 442 bytes .../textures/items/elec_sword_anim.png.mcmeta | 3 + .../hbm/textures/items/grenade_black_hole.png | Bin 0 -> 269 bytes .../hbm/textures/items/ingot_dura_steel.png | Bin 0 -> 285 bytes .../textures/items/ingot_lanthanium_alloy.png | Bin 442 -> 0 bytes assets/hbm/textures/items/ingot_polymer.png | Bin 0 -> 262 bytes assets/hbm/textures/items/nothing.png | Bin 0 -> 179 bytes assets/hbm/textures/items/part_beryllium.png | Bin 264 -> 266 bytes .../hbm/textures/items/part_beryllium_alt.png | Bin 0 -> 264 bytes .../hbm/textures/items/powder_dura_steel.png | Bin 0 -> 272 bytes assets/hbm/textures/items/powder_polymer.png | Bin 0 -> 256 bytes com/hbm/entity/effect/EntityBlackHole.java | 17 + .../grenade/EntityGrenadeBlackHole.java | 59 +++ com/hbm/explosion/ExplosionNukeGeneric.java | 3 +- com/hbm/handler/CyclotronRecipeHandler.java | 131 +++++++ com/hbm/inventory/MachineRecipes.java | 349 +++++++++++++++++- com/hbm/items/ModItems.java | 33 ++ com/hbm/items/weapon/ItemGrenade.java | 6 +- com/hbm/lib/HbmWorldGen.java | 2 +- com/hbm/main/ClientProxy.java | 2 + com/hbm/main/CraftingManager.java | 9 +- com/hbm/main/MainRegistry.java | 10 +- com/hbm/main/NEIConfig.java | 3 + com/hbm/render/entity/RenderBlackHole.java | 2 +- 37 files changed, 655 insertions(+), 13 deletions(-) create mode 100644 assets/hbm/textures/gui/gui_nei_cyclotron.png create mode 100644 assets/hbm/textures/items/elec_chainsaw.png create mode 100644 assets/hbm/textures/items/elec_chainsaw_anim.png create mode 100644 assets/hbm/textures/items/elec_chainsaw_anim.png.mcmeta create mode 100644 assets/hbm/textures/items/elec_drill.png create mode 100644 assets/hbm/textures/items/elec_drill_anim.png create mode 100644 assets/hbm/textures/items/elec_drill_anim.png.mcmeta create mode 100644 assets/hbm/textures/items/elec_shovel.png create mode 100644 assets/hbm/textures/items/elec_shovel_anim.png create mode 100644 assets/hbm/textures/items/elec_shovel_anim.png.mcmeta create mode 100644 assets/hbm/textures/items/elec_sword.png create mode 100644 assets/hbm/textures/items/elec_sword_anim.png create mode 100644 assets/hbm/textures/items/elec_sword_anim.png.mcmeta create mode 100644 assets/hbm/textures/items/grenade_black_hole.png create mode 100644 assets/hbm/textures/items/ingot_dura_steel.png delete mode 100644 assets/hbm/textures/items/ingot_lanthanium_alloy.png create mode 100644 assets/hbm/textures/items/ingot_polymer.png create mode 100644 assets/hbm/textures/items/nothing.png create mode 100644 assets/hbm/textures/items/part_beryllium_alt.png create mode 100644 assets/hbm/textures/items/powder_dura_steel.png create mode 100644 assets/hbm/textures/items/powder_polymer.png create mode 100644 com/hbm/entity/grenade/EntityGrenadeBlackHole.java create mode 100644 com/hbm/handler/CyclotronRecipeHandler.java diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index d6b61b3e6..a4bac11bc 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -258,6 +258,8 @@ item.wire_magnetized_tungsten.name=4000K Hochtemperaturensupraleiter item.coil_magnetized_tungsten.name=4000K Hochtemperaturensupraleitermagnetspule item.plate_mixed.name=Gemischte Platte item.plate_paa.name=PaA-Legierungsplatte +item.ingot_dura_steel.name=Schnellarbeitsstahlbarren +item.ingot_polymer.name=Polymerbarren item.ingot_australium.name=Australiumbarren item.ingot_weidanium.name=Weidaniumbarren @@ -415,6 +417,10 @@ item.powder_bromine.name=Bromstaub item.powder_niobium.name=Niobstaub item.powder_tennessine.name=Tennessinstaub item.powder_cerium.name=Cerstaub +item.powder_dura_steel.name=Schnellarbeitsstahlstaub +item.powder_polymer.name=Polymerstaub +item.powder_lanthanium.name=Lanthanstaub +item.powder_actinium.name=Actiniumstaub item.battery_generic.name=Batterie item.battery_advanced.name=Fortgeschrittene Batterie @@ -445,6 +451,9 @@ item.telepad.name=Teleplatte item.entanglement_kit.name=Verschränkungskit item.toothpicks.name=Zahnstocher item.ducttape.name=Klebeband +item.magnet_dee.name=Duantenmagnete +item.magnet_circular.name=Flachmagnet +item.cyclotron_tower.name=Zyklotronenturm item.cell_empty.name=Leere Zelle item.cell_uf6.name=Uranhexafluorit-Zelle @@ -863,7 +872,6 @@ item.paa_boots.name=PaA-"olle Latschen" item.goggles.name=Schutzbrille item.gas_mask.name=Gasmaske item.oxy_mask.name=Sauerstoffmaske - item.t45_helmet.name=T45-Powerrüstungshelm item.t45_plate.name=T45-Powerrüstungsbrustpanzer item.t45_legs.name=T45-Powerrüstungsbeinschutz @@ -1082,6 +1090,8 @@ tile.dummy_port.name=Dummyblock (Stromanschluss) item.chopper.name=Jagdschrauber +item.nothing.name=Diesen Slot freilassen + tile.crystal_virus.name=Dunkler Kristall tile.crystal_hardened.name=Gehärteter Dunkler Kristall tile.crystal_pulsar.name=Pulsating Crystal diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index e2c005d5a..39f682930 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -258,6 +258,8 @@ item.wire_magnetized_tungsten.name=4000K High Temperature Super Conductor item.coil_magnetized_tungsten.name=4000K High Temperature Super Conducting Coil item.plate_mixed.name=Mixed Plate item.plate_paa.name=PaA Alloy Plate +item.ingot_dura_steel.name=High-Speed Steel Ingot +item.ingot_polymer.name=Polymer Ingot item.ingot_australium.name=Australium Ingot item.ingot_weidanium.name=Weidanium Ingot @@ -415,6 +417,10 @@ item.powder_bromine.name=Bromine Powder item.powder_niobium.name=Niobium Powder item.powder_tennessine.name=Tennessine Powder item.powder_cerium.name=Cerium Powder +item.powder_dura_steel.name=High-Speed Steel Powder +item.powder_polymer.name=Polymer Powder +item.powder_lanthanium.name=Lanthanium Powder +item.powder_actinium.name=Actinium Powder item.battery_generic.name=Battery item.battery_advanced.name=Advanced Battery @@ -445,6 +451,9 @@ item.telepad.name=Telepad item.entanglement_kit.name=Entaglement Kit item.toothpicks.name=Toothpicks item.ducttape.name=Duct Tape +item.magnet_dee.name=Dee Magnets +item.magnet_circular.name=Flat Magnet +item.cyclotron_tower.name=Cyclotron Tower item.cell_empty.name=Empty Cell item.cell_uf6.name=Uranium Hexafluorite Cell @@ -863,7 +872,6 @@ item.paa_boots.name=PaA "good ol' shoes" item.goggles.name=Protection Goggles item.gas_mask.name=Gas Mask item.oxy_mask.name=Oxygen Mask - item.t45_helmet.name=T45 Power Armor Helmet item.t45_plate.name=T45 Power Armor Chestplate item.t45_legs.name=T45 Power Armor Leggings @@ -1082,6 +1090,8 @@ tile.dummy_port.name=Dummy Block (Electricity Port) item.chopper.name=Hunter Chopper +item.nothing.name=Keep This Slot Clear + tile.crystal_virus.name=Dark Crystal tile.crystal_hardened.name=Hardened Dark Crystal tile.crystal_pulsar.name=Pulsating Crystal diff --git a/assets/hbm/textures/gui/gui_nei_cyclotron.png b/assets/hbm/textures/gui/gui_nei_cyclotron.png new file mode 100644 index 0000000000000000000000000000000000000000..5f59189030aea82c864897f1a8de821d6912cddd GIT binary patch literal 1494 zcmcgsTToMH5dP2Uk)BX4AtIonNfyoD4?74YECY?r17OKnHfvkZ@vHBYdwDN8 zmU!QfstVhhzTt*h3+L9n=7ZK2H8G*Vx_yB%Ogf1RJ>IOLzx_Exa*QXJ+jwbQ^t0!C zJ;fJa<4!v2piCy58}<|j-xjfGr>T$MPsM8HGdaQHFmb075H`g~?g&K-QQ(V?;L>z!XEKu8Y9JuqESf~{Zg9PF ze6T<&s)||z3hlwA#9GCGYq_CR6CepiSNj30{x;x1#=TZv8%}ErNZ@bnXMQ(O9QCqh zEe{{-KIAZNeRDMh7Y!LGZKI=y&$q_Sr$*kIZ;5|Fg<0O#)YQgDw{_qr%e2tzvpyHnw0u$D%i&8L%5A^&>ZhN|*o3O=g;VnI2D)7*f(ALYhyERnGe@7lQ`! z%qkBR-~9)WL05SldagfE=OzSi^t&=gl=npR{JJR7L*w2vmA;hJM(tL}CV#X2-r3V9 zkZ78!h^72uXeoZ`x*7Yq-p(A_nJly?T9Es8!1oiw$2`BJ5 zoX&!_=gh&WzhwOO2g(hD#8^#=^-W#3I&KCsppt}zzR0fivJh$(v4_IXzIBk0oo@7f z3G`13%}Kh_WU8rqNkcq@foIslubwFsipkMF7peE0Qx1r|uXwla zLyzQiPBvan!W{L#eq$@>Q=hVh8mn465!#IyM<_qc>f9U1r{4!a?2-1Gp~dkoP=@hq-znHn?>&m2=zy_Pvqqr@j!{NX0+~pHL3j*@jclIAuy?$R5l1Se5PP&#Ll?&iV(oq+*Z& literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/elec_chainsaw.png b/assets/hbm/textures/items/elec_chainsaw.png new file mode 100644 index 0000000000000000000000000000000000000000..2084612af88d958782bdd279487f8c9285787e01 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf?Wwij^w+O^HlxM5I_kG!<6F+H1gvgO257)geI9D4yb9%=K|N3Xj^*2?X ZaeB*#+Ju?(v;qCa;OXk;vd$@?2>|_&ati)Sh6Fhdx{y-7Ut5Js_9Dh1IB zr~S@r3$hXbw^CRz!?n1eNRmz@e)XkD67O1Ez=9cUJt3mTH~;ZNkt80`s?if7(n_gD zR?al5J^A_k0OuT8mUSlpZasNPQ*h3~7y|&D&*xf9ql79ay9r9AmT3&JS=+kF9m^ML&f4L=y= zzR-uHabIXVsdS#cFpBkjv#mAO75vl>ruzbFqfUNc$1h{*Zhps=%>rL{PMo^bdy{BX z{?2*+9VZ@~QF$=YHFokcP0vXQYh_&@U0B91oqXc6%z<7-#{>88nD8=$hW08kFVNs( zS5V4WyC2BRjgD&&66`U|xkrW4R-44$rjF6*2UngAVVZTA2G literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/elec_drill_anim.png b/assets/hbm/textures/items/elec_drill_anim.png new file mode 100644 index 0000000000000000000000000000000000000000..06ce62a8aff16302a190c79916f9958a535363f3 GIT binary patch literal 333 zcmV-T0kZyyP){ z6lNfr7}K|+FWkdxNe}!~?TqQSsm(-i02EF=jveb`z{Q4|3E93%+v zUv8QPfU2ryArnAZmOX%oV2n8nnE=|hi-|Qb}b!KO5;U@Vki>r z>(JV`!3|EyorK^X9j@S7xe-x-vf1h-Ju{R|o|8F8JRHm=fDGWH?@i_$nYE+Ade<&8 z`SqIfUJG}N$Q`c__lr!j;ZQbPec$iLlJovwn*iVX&U;-_&Q34ZyH=s_nz^FtS> zY_=*Qx>~KYuIpJyey;ra@{F~Xx~{3J3P8KAGlNmz_vTN)+tZ@~5D^U_0I=C?05qjU zj1idG;51#=8GsN1$K!E;V69ySn1d8WK?uRXnGL295ltyEK&Dv)0EjVStsQNymM?j^ VVVy-oJQ)B0002ovPDHLkV1iQRia`JX literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/elec_shovel_anim.png b/assets/hbm/textures/items/elec_shovel_anim.png new file mode 100644 index 0000000000000000000000000000000000000000..3b98710050c5a39245a8a35671332f38cbc5d9f5 GIT binary patch literal 476 zcmV<20VDp2P)^$FR_$_s`b^zV+#D&BOA1vaSNGXcdN`wF+fDda$q!f{q z!5KvUraJO)I&%Oj%Pzw9fbMwW-j~ZgL}gj+`66Jucox;Ghh74l96@E7OVlk|Kd@cQ zvDUULW3LqAjDK^h4l9H7;Gvvz@dq> zF_jv?e|%^v`ph3XOIKOuI_ou3N|GdLtiqF}Tn+w_ANc9~`@y&VnjZuM{Q2PK?mnos z?*UNvgSM@`27vI^eguGUQ#k@OnM!B9ZlA%SsZ_Rf`}2X?O(VK-&obP=GNmf zOYcbyh5t_fjGR_s(%WJ_bDhJd@Hg(4_xQU0Q?l8zR$ZB z^{mqGv5oW6$O0a9#_U8+g%2;+tU9SKw|}EX*Ugte(V-Y#WY{hZZQvH4T1l>o?- N44$rjF6*2UngDeoZJ7W7 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/elec_sword_anim.png b/assets/hbm/textures/items/elec_sword_anim.png new file mode 100644 index 0000000000000000000000000000000000000000..5709a374cb32a47cb07e71bfa85eec3c032d2199 GIT binary patch literal 442 zcmV;r0Y(0aP)uL_oNolQFDaCo7b5Ut-OS)=|%_758GqpzGr)F!dxW)ZvEX#7R z*=L}X;1r*S;!z}P%II2`Mo%NV~sHs z-pJuRh?G3UIBgFTi7t2`HO6MKX^MH}!3>h68@xv2=L4MEd-!|+07Nu?K49h$WBy{j zy#UnrP`bL4^MO;kghbk*xwnLMK3IA1H%fd)`Sb3y!2be}9K3=5J0CdBKOZ=Zh3n)z k=rAYM$pfiY9xT9vZ+RX3^#%`<%Y4_ah7X=G()Sggd*&}cUs=R1f5804Jq|^W=OP;qY_cn4ni-VQw%wZh z|CDQ07o+r-+J~OJW5Rn(!i8n22*b5o2Nrw1JSOq1lCP&Umfgj(NoHH|x=)ODAEr3p zpUlv4B5Cc~Z6bjT2TXitE=*EozVnkywm|Y8e?Oz!h4a;4%=aF-dT0BE?b!j}Ss9fN z9O#{(uyjSMfBWOvC$=$c$USJzprGVX;qy|k?AWA9-Zoin@_HW&J_YV&=-&`>q(@gzRMUw*bINM&b83$vPo` zcskYf=Ews(BLCXi-@wgv0lwM)?$6Gy%0*9LEVDkFWZ3vA7G#1psW@9#gVKr82fe$8l&h8sIpbZEg=Cx7hYP zynRe4@jMUD(|H)6-EIS*l%iU#GPkCc*w}#*Z`cuwMJJXX2B_6)0GOuv<0_u_pp)n# z{eB(;VNB{r; diff --git a/assets/hbm/textures/items/ingot_polymer.png b/assets/hbm/textures/items/ingot_polymer.png new file mode 100644 index 0000000000000000000000000000000000000000..d259eda1d9a3dc72e617244f0eaa48c6e4755f24 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfK% zH8c8WFJnAld3=-3#M8k6x3~FRE_qdWE_b)*H(n;Y1F?@Sj(Hjh-h8#|n1rzOzQ)@7 z^NZg9t!7Q;iM_sXRsV#JJJJj*v<@3ASk*6ZVAndsbN$NVu8mvGIAy0YM`SauSoKPf zNAba4`)ivjS~uzB*E7s`{*y&E+i>SB8^`TzyFED+IsZzopr0I;uQH2?qr literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/nothing.png b/assets/hbm/textures/items/nothing.png new file mode 100644 index 0000000000000000000000000000000000000000..bb91d3e959bb7955736f0a3ea59fd14017bb5ccd GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vfp^nd{evuE3a&my<#rAl=Y%?soH92UtG+S*X!^dz2X0%J=4x>aZYyqWHC>I{p6 znr7OzwN4T8=nVha Z$2Ec7$)q{u*(RW^44$rjF6*2UngCLjKLlTxXB%Vi-eau=m?Riuev-WR09SNfx5>rp!toTvJ=h~u zb>S}>%oA1hz&S^j-F79#>%d5c@8_lIbwe8UhYJ|;Jl~yWtwlso)v!OI!7h8kX8BHz Y4|d8_)T=;lDgXcg07*qoM6N<$f>97=jsO4v delta 220 zcmV<203-j30*C^TG=INIL_t(Ijn$Gp4udcZMjsUulh4uvFfr!{3|)~}yRo-Bw@If? zNJy~e0-1dSI#dmRZJ}d5M2_QU=d%odZ_zR!BEw!-Rik(sNRnh|np?O#=Yrq&eekR5 ziiiMkn0D^E`z|=ob5wPd@XNQ2F?jE>)&h(Yj4>Y}?>zu*+f}aK;&+Jvb$y{I&a-4y zo#nt}220pEM_Hb}%9#~d!tfkknjTlsOMf_kAPksJHBL$_yaS@@5E2KOorDV*C-eLW`>HhcH5365wbubjnD0{c-x1PoM;*ioQ zA5L%YHLQ5Q@fuT)P>-R!;(J?$+}rE!Ju2^HD6L(nac*-;=-j6VQrNt2Sh`2f+jnZF zXvCopGI6uy!Y_E&TQn%1-gGwaT9gY*DDQ7!uAEDY*G_wX{w?Dh2S25hR;J@XuP}JJ L`njxgN@xNAopNak literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/powder_dura_steel.png b/assets/hbm/textures/items/powder_dura_steel.png new file mode 100644 index 0000000000000000000000000000000000000000..1e64c4a89b9fc404a31850f7b5c31b579f01cf07 GIT binary patch literal 272 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfG5ozH&y1-fN=&gkkliXst_XdC3@qO=P z{vY|RPCW|+9?w#b;C|ni&M@yfck{K)_s#}coGoJ566O-L$>mY$R(1cZS6mHon*B!< zXK?#hmC9yLt5#Xo*lW9xS>^VVC6jPM4dd0uNoi! zSk&zJdO>*CvUNMAw;HZEes<0G_Q~ZFH?L<9@O*itdg&R3-TQt`eDn8``>(zCB7THs Uhi|_59_S?oPgg&ebxsLQ0I;WY4*&oF literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/powder_polymer.png b/assets/hbm/textures/items/powder_polymer.png new file mode 100644 index 0000000000000000000000000000000000000000..cf4f93ca6b44bacf889f113a5589208562187872 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfmJu`ek+d(PpyIKNSnG|i)AM{ZpDtb1!C{#$ ztaCc)dFHHLj&c8(95@y}481CK_0MCatKWCK{<6LI;%LYNzvC@!Krb+Oy85}Sb4q9e E0Gr8a&;S4c literal 0 HcmV?d00001 diff --git a/com/hbm/entity/effect/EntityBlackHole.java b/com/hbm/entity/effect/EntityBlackHole.java index 0244abf85..b2b9dbfdd 100644 --- a/com/hbm/entity/effect/EntityBlackHole.java +++ b/com/hbm/entity/effect/EntityBlackHole.java @@ -20,6 +20,8 @@ public class EntityBlackHole extends Entity { public EntityBlackHole(World p_i1582_1_) { super(p_i1582_1_); + this.ignoreFrustumCheck = true; + this.isImmuneToFire = true; } public EntityBlackHole(World world, float size) { @@ -87,6 +89,8 @@ public class EntityBlackHole extends Entity { } } } + + worldObj.createExplosion(null, this.posX, this.posY, this.posZ, 5.0F, true); } } @@ -112,4 +116,17 @@ public class EntityBlackHole extends Entity { return distance < 25000; } + @Override + @SideOnly(Side.CLIENT) + public int getBrightnessForRender(float p_70070_1_) + { + return 15728880; + } + + @Override + public float getBrightness(float p_70013_1_) + { + return 1.0F; + } + } diff --git a/com/hbm/entity/grenade/EntityGrenadeBlackHole.java b/com/hbm/entity/grenade/EntityGrenadeBlackHole.java new file mode 100644 index 000000000..521ac734b --- /dev/null +++ b/com/hbm/entity/grenade/EntityGrenadeBlackHole.java @@ -0,0 +1,59 @@ +package com.hbm.entity.grenade; + +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.monster.EntityBlaze; +import net.minecraft.entity.projectile.EntityThrowable; +import net.minecraft.util.DamageSource; +import net.minecraft.util.MovingObjectPosition; +import net.minecraft.world.World; + +import com.hbm.entity.effect.EntityBlackHole; +import com.hbm.explosion.ExplosionChaos; + +public class EntityGrenadeBlackHole extends EntityThrowable +{ + private static final String __OBFID = "CL_00001722"; + + public EntityGrenadeBlackHole(World p_i1773_1_) + { + super(p_i1773_1_); + } + + public EntityGrenadeBlackHole(World p_i1774_1_, EntityLivingBase p_i1774_2_) + { + super(p_i1774_1_, p_i1774_2_); + } + + public EntityGrenadeBlackHole(World p_i1775_1_, double p_i1775_2_, double p_i1775_4_, double p_i1775_6_) + { + super(p_i1775_1_, p_i1775_2_, p_i1775_4_, p_i1775_6_); + } + + @Override + protected void onImpact(MovingObjectPosition p_70184_1_) + { + if (p_70184_1_.entityHit != null) + { + byte b0 = 0; + + if (p_70184_1_.entityHit instanceof EntityBlaze) + { + b0 = 3; + } + + p_70184_1_.entityHit.attackEntityFrom(DamageSource.causeThrownDamage(this, this.getThrower()), b0); + } + + if (!this.worldObj.isRemote) + { + this.setDead(); + this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 1.5F, true); + + EntityBlackHole bl = new EntityBlackHole(this.worldObj, 1.5F); + bl.posX = this.posX; + bl.posY = this.posY; + bl.posZ = this.posZ; + this.worldObj.spawnEntityInWorld(bl); + } + } +} diff --git a/com/hbm/explosion/ExplosionNukeGeneric.java b/com/hbm/explosion/ExplosionNukeGeneric.java index 5daa0871d..925295a8b 100644 --- a/com/hbm/explosion/ExplosionNukeGeneric.java +++ b/com/hbm/explosion/ExplosionNukeGeneric.java @@ -213,8 +213,7 @@ public class ExplosionNukeGeneric { // entity.boundingBox); // if(d10 > 0) isOccupied = true; double d11 = (1.0D - d4);// * d10; - if (!(entity instanceof EntityPlayerMP) || (entity instanceof EntityPlayerMP - && ((EntityPlayerMP) entity).theItemInWorldManager.getGameType() != GameType.CREATIVE)) { + if (!(entity instanceof EntityPlayerMP && ((EntityPlayerMP) entity).theItemInWorldManager.getGameType() == GameType.CREATIVE)) { // entity.attackEntityFrom(DamageSource.generic, // ((int)((d11 * d11 + d11) / 2.0D * 8.0D * // bombStartStrength + 1.0D))); diff --git a/com/hbm/handler/CyclotronRecipeHandler.java b/com/hbm/handler/CyclotronRecipeHandler.java new file mode 100644 index 000000000..22c6ea4b4 --- /dev/null +++ b/com/hbm/handler/CyclotronRecipeHandler.java @@ -0,0 +1,131 @@ +package com.hbm.handler; + +import java.awt.Rectangle; +import java.util.Arrays; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +import com.hbm.handler.CMBFurnaceRecipeHandler.SmeltingSet; +import com.hbm.inventory.MachineRecipes; +import com.hbm.inventory.gui.GUIMachineCMBFactory; +import com.hbm.inventory.gui.GUIMachineCyclotron; +import com.hbm.lib.RefStrings; + +import codechicken.nei.NEIServerUtils; +import codechicken.nei.PositionedStack; +import codechicken.nei.api.IOverlayHandler; +import codechicken.nei.api.IRecipeOverlayRenderer; +import codechicken.nei.recipe.GuiRecipe; +import codechicken.nei.recipe.ICraftingHandler; +import codechicken.nei.recipe.TemplateRecipeHandler; +import codechicken.nei.recipe.TemplateRecipeHandler.RecipeTransferRect; +import codechicken.nei.recipe.TemplateRecipeHandler.RecipeTransferRectHandler; +import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.inventory.Container; +import net.minecraft.item.ItemStack; + +public class CyclotronRecipeHandler extends TemplateRecipeHandler { + + public LinkedList transferRectsRec = new LinkedList(); + public LinkedList transferRectsGui = new LinkedList(); + public LinkedList> guiRec = new LinkedList>(); + public LinkedList> guiGui = new LinkedList>(); + + public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe + { + PositionedStack input1; + PositionedStack input2; + PositionedStack result; + + public SmeltingSet(ItemStack input1, ItemStack input2, ItemStack result) { + input1.stackSize = 1; + input2.stackSize = 1; + this.input1 = new PositionedStack(input1, 66 - 45, 6 + 18); + this.input2 = new PositionedStack(input2, 66 + 9, 42 - 18); + this.result = new PositionedStack(result, 129, 24); + } + + public List getIngredients() { + return getCycledIngredients(cycleticks / 48, Arrays.asList(new PositionedStack[] {input1, input2})); + } + + public PositionedStack getResult() { + return result; + } + } + + @Override + public String getRecipeName() { + return "Cyclotron"; + } + + @Override + public String getGuiTexture() { + return RefStrings.MODID + ":textures/gui/gui_nei_cyclotron.png"; + } + + public void loadCraftingRecipes(String outputId, Object... results) { + if ((outputId.equals("cyclotronProcessing")) && getClass() == CyclotronRecipeHandler.class) { + Map recipes = MachineRecipes.instance().getCyclotronRecipes(); + for (Map.Entry recipe : recipes.entrySet()) { + this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue())); + } + } else { + super.loadCraftingRecipes(outputId, results); + } + } + + public void loadCraftingRecipes(ItemStack result) { + Map recipes = MachineRecipes.instance().getCyclotronRecipes(); + for (Map.Entry recipe : recipes.entrySet()) { + if (NEIServerUtils.areStacksSameType((ItemStack)recipe.getValue(), result)) + this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue())); + } + } + + public void loadUsageRecipes(String inputId, Object... ingredients) { + if ((inputId.equals("cyclotronProcessing")) && getClass() == CyclotronRecipeHandler.class) { + loadCraftingRecipes("cyclotronProcessing", new Object[0]); + } else { + super.loadUsageRecipes(inputId, ingredients); + } + } + + public void loadUsageRecipes(ItemStack ingredient) { + Map recipes = MachineRecipes.instance().getCyclotronRecipes(); + for (Map.Entry recipe : recipes.entrySet()) { + if (NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey()[0]) || NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey()[1])) + this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue())); + } + } + + @Override + public Class getGuiClass() { + //return GUITestDiFurnace.class; + return null; + } + + @Override + public void loadTransferRects() { + transferRectsGui = new LinkedList(); + guiGui = new LinkedList>(); + + transferRects.add(new RecipeTransferRect(new Rectangle(83 - 3 + 16 - 52, 5 + 18 + 1, 24, 18), "cyclotronProcessing")); + transferRectsGui.add(new RecipeTransferRect(new Rectangle(61 - 4, 26 - 10, 36, 36), "cyclotronProcessing")); + guiGui.add(GUIMachineCyclotron.class); + RecipeTransferRectHandler.registerRectsToGuis(getRecipeTransferRectGuis(), transferRects); + RecipeTransferRectHandler.registerRectsToGuis(guiGui, transferRectsGui); + } + + @Override + public void drawExtras(int recipe) { + + drawProgressBar(83 - 3 + 16 - 52, 5 + 18 + 1, 100, 118 + 1, 24, 16, 48, 0); + } + + @Override + public TemplateRecipeHandler newInstance() { + return super.newInstance(); + } +} diff --git a/com/hbm/inventory/MachineRecipes.java b/com/hbm/inventory/MachineRecipes.java index db30be033..1074b7324 100644 --- a/com/hbm/inventory/MachineRecipes.java +++ b/com/hbm/inventory/MachineRecipes.java @@ -115,6 +115,21 @@ public class MachineRecipes { return new ItemStack(ModItems.canister_canola); } + if (item == Items.coal && item2 == ModItems.niter + || item == ModItems.niter && item2 == Items.coal) { + return new ItemStack(ModItems.ingot_polymer, 2); + } + + if (item == ModItems.ingot_steel && item2 == ModItems.ingot_tungsten + || item == ModItems.ingot_tungsten && item2 == ModItems.ingot_steel) { + return new ItemStack(ModItems.ingot_dura_steel, 2); + } + + if (item == ModItems.ingot_steel && item2 == ModItems.powder_cobalt + || item == ModItems.powder_cobalt && item2 == ModItems.ingot_steel) { + return new ItemStack(ModItems.ingot_dura_steel, 2); + } + return null; } @@ -501,7 +516,7 @@ public class MachineRecipes { if(item.getItem() == ModItems.powder_lithium) return new ItemStack(ModItems.fluorite, 1); if(item.getItem() == ModItems.powder_iodine) - return new ItemStack(ModItems.powder_astatine, 1); + return new ItemStack(ModItems.powder_tungsten, 1); if(item.getItem() == ModItems.powder_neodymium) return new ItemStack(ModItems.powder_tungsten, 1); if(item.getItem() == ModItems.powder_australium) @@ -553,7 +568,7 @@ public class MachineRecipes { if(item.getItem() == ModItems.powder_lithium) return new ItemStack(ModItems.powder_bromine, 1); if(item.getItem() == ModItems.powder_iodine) - return new ItemStack(ModItems.powder_tungsten, 1); + return new ItemStack(ModItems.powder_astatine, 1); if(item.getItem() == ModItems.powder_thorium) return new ItemStack(ModItems.powder_tennessine, 1); if(item.getItem() == ModItems.powder_neodymium) @@ -590,6 +605,8 @@ public class MachineRecipes { return new ItemStack(ModItems.powder_schrabidium, 1); if(item.getItem() == ModItems.powder_unobtainium) return new ItemStack(ModItems.powder_daffergon, 1); + if(item.getItem() == ModItems.cell_antimatter) + return new ItemStack(ModItems.cell_anti_schrabidium, 1); } return null; @@ -602,7 +619,7 @@ public class MachineRecipes { new ItemStack(Item.getItemFromBlock(ModBlocks.test_render))); } recipes.put(new ItemStack[] { new ItemStack(Items.iron_ingot), new ItemStack(Items.coal) }, - new ItemStack(ModItems.ingot_steel)); + new ItemStack(ModItems.ingot_steel, 2)); recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_lead), new ItemStack(ModItems.ingot_copper) }, new ItemStack(ModItems.neutron_reflector, 2)); recipes.put(new ItemStack[] { new ItemStack(ModItems.plate_lead), new ItemStack(ModItems.plate_copper) }, @@ -626,6 +643,15 @@ public class MachineRecipes { recipes.put( new ItemStack[] { new ItemStack(ModItems.canister_empty), new ItemStack(ModItems.oil_canola) }, new ItemStack(ModItems.canister_canola, 1)); + recipes.put( + new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_tungsten) }, + new ItemStack(ModItems.ingot_dura_steel, 2)); + recipes.put( + new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.powder_cobalt) }, + new ItemStack(ModItems.ingot_dura_steel, 2)); + recipes.put( + new ItemStack[] { new ItemStack(Items.coal), new ItemStack(ModItems.niter) }, + new ItemStack(ModItems.ingot_polymer, 2)); return recipes; } @@ -732,6 +758,323 @@ public class MachineRecipes { recipes.put(new ItemStack(ModItems.rod_quad_lithium), getReactorOutput(ModItems.rod_quad_lithium)); return recipes; } + + public Map getCyclotronRecipes() { + Map recipes = new HashMap(); + Item part = ModItems.part_lithium; + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.niter) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.niter))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_coal) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_coal))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iron) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iron))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_gold) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_gold))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_quartz) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_quartz))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_uranium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_uranium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_aluminium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_aluminium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_beryllium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_beryllium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_schrabidium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_schrabidium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lithium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lithium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iodine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iodine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_thorium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_thorium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_caesium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_caesium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_reiium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_reiium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cobalt) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cobalt))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cerium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cerium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_actinium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_actinium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lanthanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lanthanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.nothing) }, + new ItemStack(ModItems.cell_antimatter)); + + part = ModItems.part_beryllium; + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.sulfur) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.sulfur))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.fluorite) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.fluorite))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iron) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iron))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_quartz) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_quartz))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_titanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_titanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_copper) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_copper))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_tungsten) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_tungsten))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_aluminium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_aluminium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lead) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lead))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_beryllium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_beryllium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lithium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lithium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iodine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iodine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_thorium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_thorium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_astatine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_astatine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_caesium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_caesium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_weidanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_weidanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_strontium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_strontium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_bromine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_bromine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_actinium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_actinium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lanthanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lanthanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.nothing) }, + new ItemStack(ModItems.cell_antimatter)); + + part = ModItems.part_carbon; + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.sulfur) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.sulfur))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.niter) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.niter))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.fluorite) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.fluorite))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_coal) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_coal))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iron) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iron))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_gold) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_gold))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_quartz) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_quartz))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_plutonium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_plutonium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_neptunium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_neptunium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_titanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_titanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_copper) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_copper))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_tungsten) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_tungsten))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_aluminium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_aluminium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lead) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lead))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_beryllium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_beryllium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lithium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lithium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iodine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iodine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_neodymium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_neodymium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_australium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_australium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_strontium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_strontium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cobalt) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cobalt))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_bromine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_bromine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_niobium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_niobium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_tennessine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_tennessine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cerium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cerium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.nothing) }, + new ItemStack(ModItems.cell_antimatter)); + + part = ModItems.part_copper; + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.sulfur) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.sulfur))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.niter) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.niter))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.fluorite) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.fluorite))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_coal) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_coal))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iron) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iron))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_gold) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_gold))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_quartz) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_quartz))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_uranium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_uranium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_titanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_titanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_copper) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_copper))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_tungsten) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_tungsten))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_aluminium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_aluminium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lead) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lead))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_beryllium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_beryllium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lithium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lithium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_iodine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_iodine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_thorium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_thorium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_neodymium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_neodymium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_astatine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_astatine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_caesium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_caesium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_verticium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_verticium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cobalt) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cobalt))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_bromine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_bromine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_niobium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_niobium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_tennessine) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_tennessine))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_cerium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_cerium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_actinium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_actinium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_lanthanium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_lanthanium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.nothing) }, + new ItemStack(ModItems.cell_antimatter)); + + part = ModItems.part_plutonium; + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_uranium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_uranium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_plutonium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_plutonium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_neptunium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_neptunium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.powder_unobtainium) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.powder_unobtainium))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.cell_antimatter) }, + getCyclotronOutput(new ItemStack(part), new ItemStack(ModItems.cell_antimatter))); + + recipes.put(new ItemStack[] { new ItemStack(part), new ItemStack(ModItems.nothing) }, + new ItemStack(ModItems.cell_antimatter)); + + return recipes; + } public ArrayList getReactorFuels() { ArrayList fuels = new ArrayList(); diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index dbd325cd6..37fd3c1fc 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -202,6 +202,9 @@ public class ModItems { public static Item plate_mixed; public static Item plate_paa; public static Item board_copper; + + public static Item ingot_dura_steel; + public static Item ingot_polymer; public static Item ingot_lanthanium; public static Item ingot_actinium; @@ -254,6 +257,9 @@ public class ModItems { public static Item powder_daffergon; public static Item powder_verticium; + public static Item powder_dura_steel; + public static Item powder_polymer; + public static Item powder_lanthanium; public static Item powder_actinium; @@ -653,6 +659,7 @@ public class ModItems { public static Item grenade_nuke; public static Item grenade_nuclear; public static Item grenade_zomg; + public static Item grenade_black_hole; public static Item ullapool_caber; public static Item bomb_waffle; @@ -787,6 +794,10 @@ public class ModItems { public static Item cmb_axe; public static Item cmb_shovel; public static Item cmb_hoe; + public static Item elec_sword; + public static Item elec_pickaxe; + public static Item elec_axe; + public static Item elec_shovel; public static Item matchstick; @@ -944,6 +955,7 @@ public class ModItems { public static Item ln2_8; public static Item ln2_9; public static Item ln2_10; + public static Item nothing; public static void initializeItem() { @@ -1012,6 +1024,9 @@ public class ModItems { plate_paa = new ItemCustomLore().setUnlocalizedName("plate_paa").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_paa"); board_copper = new Item().setUnlocalizedName("board_copper").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":board_copper"); + ingot_dura_steel = new ItemCustomLore().setUnlocalizedName("ingot_dura_steel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_dura_steel"); + ingot_polymer = new ItemCustomLore().setUnlocalizedName("ingot_polymer").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_polymer"); + ingot_lanthanium = new ItemCustomLore().setUnlocalizedName("ingot_lanthanium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_lanthanium"); ingot_actinium = new ItemCustomLore().setUnlocalizedName("ingot_actinium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_actinium"); @@ -1094,6 +1109,8 @@ public class ModItems { powder_niobium = new ItemCustomLore().setUnlocalizedName("powder_niobium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_niobium"); powder_tennessine = new ItemCustomLore().setUnlocalizedName("powder_tennessine").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_tennessine"); powder_cerium = new ItemCustomLore().setUnlocalizedName("powder_cerium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_cerium"); + powder_dura_steel = new ItemCustomLore().setUnlocalizedName("powder_dura_steel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_dura_steel"); + powder_polymer = new ItemCustomLore().setUnlocalizedName("powder_polymer").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_polymer"); powder_lanthanium = new ItemCustomLore().setUnlocalizedName("powder_lanthanium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_lanthanium"); powder_actinium = new ItemCustomLore().setUnlocalizedName("powder_actinium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_actinium"); @@ -1481,6 +1498,7 @@ public class ModItems { grenade_nuke = new ItemGrenade().setUnlocalizedName("grenade_nuke").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":grenade_nuke_alt"); grenade_nuclear = new ItemGrenade().setUnlocalizedName("grenade_nuclear").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":grenade_nuclear"); grenade_zomg = new ItemGrenade().setUnlocalizedName("grenade_zomg").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":grenade_zomg"); + grenade_black_hole = new ItemGrenade().setUnlocalizedName("grenade_black_hole").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":grenade_black_hole"); ullapool_caber = new WeaponSpecial(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("ullapool_caber").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":ullapool_caber"); bomb_waffle = new ItemWaffle(20, false).setUnlocalizedName("bomb_waffle").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":bomb_waffle"); @@ -1658,6 +1676,10 @@ public class ModItems { cmb_axe = new ModAxe(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_axe"); cmb_shovel = new ModSpade(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_shovel"); cmb_hoe = new ModHoe(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_hoe"); + elec_sword = new Item().setUnlocalizedName("elec_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_sword_anim"); + elec_pickaxe = new Item().setUnlocalizedName("elec_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_drill_anim"); + elec_axe = new Item().setUnlocalizedName("elec_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_chainsaw_anim"); + elec_shovel = new Item().setUnlocalizedName("elec_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_shovel_anim"); mask_of_infamy = new MaskOfInfamy(ArmorMaterial.IRON, 8, 0).setUnlocalizedName("mask_of_infamy").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mask_of_infamy"); @@ -1769,6 +1791,7 @@ public class ModItems { ln2_8 = new Item().setUnlocalizedName("ln2_8").setTextureName(RefStrings.MODID + ":ln2_8"); ln2_9 = new Item().setUnlocalizedName("ln2_9").setTextureName(RefStrings.MODID + ":ln2_9"); ln2_10 = new Item().setUnlocalizedName("ln2_10").setTextureName(RefStrings.MODID + ":ln2_10"); + nothing = new Item().setUnlocalizedName("nothing").setTextureName(RefStrings.MODID + ":nothing"); FluidContainerRegistry.registerFluidContainer(new FluidStack(ModBlocks.mud_fluid, 1000), new ItemStack(ModItems.bucket_mud)); FluidContainerRegistry.registerFluidContainer(new FluidStack(ModBlocks.acid_fluid, 1000), new ItemStack(ModItems.bucket_acid)); @@ -1819,6 +1842,8 @@ public class ModItems { GameRegistry.registerItem(ingot_steel, ingot_steel.getUnlocalizedName()); GameRegistry.registerItem(ingot_lead, ingot_lead.getUnlocalizedName()); GameRegistry.registerItem(ingot_beryllium, ingot_beryllium.getUnlocalizedName()); + GameRegistry.registerItem(ingot_dura_steel, ingot_dura_steel.getUnlocalizedName()); + GameRegistry.registerItem(ingot_polymer, ingot_polymer.getUnlocalizedName()); GameRegistry.registerItem(ingot_schrabidium, ingot_schrabidium.getUnlocalizedName()); GameRegistry.registerItem(ingot_magnetized_tungsten, ingot_magnetized_tungsten.getUnlocalizedName()); GameRegistry.registerItem(ingot_combine_steel, ingot_combine_steel.getUnlocalizedName()); @@ -1861,6 +1886,8 @@ public class ModItems { GameRegistry.registerItem(powder_steel, powder_steel.getUnlocalizedName()); GameRegistry.registerItem(powder_lead, powder_lead.getUnlocalizedName()); GameRegistry.registerItem(powder_beryllium, powder_beryllium.getUnlocalizedName()); + GameRegistry.registerItem(powder_dura_steel, powder_dura_steel.getUnlocalizedName()); + GameRegistry.registerItem(powder_polymer, powder_polymer.getUnlocalizedName()); GameRegistry.registerItem(powder_schrabidium, powder_schrabidium.getUnlocalizedName()); GameRegistry.registerItem(powder_magnetized_tungsten, powder_magnetized_tungsten.getUnlocalizedName()); GameRegistry.registerItem(powder_combine_steel, powder_combine_steel.getUnlocalizedName()); @@ -2379,6 +2406,7 @@ public class ModItems { GameRegistry.registerItem(grenade_aschrab, grenade_aschrab.getUnlocalizedName()); GameRegistry.registerItem(grenade_nuclear, grenade_nuclear.getUnlocalizedName()); GameRegistry.registerItem(grenade_zomg, grenade_zomg.getUnlocalizedName()); + GameRegistry.registerItem(grenade_black_hole, grenade_black_hole.getUnlocalizedName()); GameRegistry.registerItem(ullapool_caber, ullapool_caber.getUnlocalizedName()); //Capes @@ -2417,6 +2445,10 @@ public class ModItems { GameRegistry.registerItem(cmb_axe, cmb_axe.getUnlocalizedName()); GameRegistry.registerItem(cmb_shovel, cmb_shovel.getUnlocalizedName()); GameRegistry.registerItem(cmb_hoe, cmb_hoe.getUnlocalizedName()); + GameRegistry.registerItem(elec_sword, elec_sword.getUnlocalizedName()); + GameRegistry.registerItem(elec_pickaxe, elec_pickaxe.getUnlocalizedName()); + GameRegistry.registerItem(elec_axe, elec_axe.getUnlocalizedName()); + GameRegistry.registerItem(elec_shovel, elec_shovel.getUnlocalizedName()); GameRegistry.registerItem(matchstick, matchstick.getUnlocalizedName()); GameRegistry.registerItem(crowbar, crowbar.getUnlocalizedName()); GameRegistry.registerItem(saw, saw.getUnlocalizedName()); @@ -2674,5 +2706,6 @@ public class ModItems { GameRegistry.registerItem(ln2_8, ln2_8.getUnlocalizedName()); GameRegistry.registerItem(ln2_9, ln2_9.getUnlocalizedName()); GameRegistry.registerItem(ln2_10, ln2_10.getUnlocalizedName()); + GameRegistry.registerItem(nothing, nothing.getUnlocalizedName()); } } diff --git a/com/hbm/items/weapon/ItemGrenade.java b/com/hbm/items/weapon/ItemGrenade.java index 63114b9f8..40529f6fe 100644 --- a/com/hbm/items/weapon/ItemGrenade.java +++ b/com/hbm/items/weapon/ItemGrenade.java @@ -1,6 +1,7 @@ package com.hbm.items.weapon; import com.hbm.entity.grenade.EntityGrenadeASchrab; +import com.hbm.entity.grenade.EntityGrenadeBlackHole; import com.hbm.entity.grenade.EntityGrenadeCluster; import com.hbm.entity.grenade.EntityGrenadeElectric; import com.hbm.entity.grenade.EntityGrenadeFire; @@ -107,6 +108,9 @@ public class ItemGrenade extends Item { if (this == ModItems.grenade_shrapnel) { p_77659_2_.spawnEntityInWorld(new EntityGrenadeShrapnel(p_77659_2_, p_77659_3_)); } + if (this == ModItems.grenade_black_hole) { + p_77659_2_.spawnEntityInWorld(new EntityGrenadeBlackHole(p_77659_2_, p_77659_3_)); + } } return p_77659_1_; @@ -119,7 +123,7 @@ public class ItemGrenade extends Item { return EnumRarity.rare; } - if (this == ModItems.grenade_plasma || this == ModItems.grenade_zomg) { + if (this == ModItems.grenade_plasma || this == ModItems.grenade_zomg || this == ModItems.grenade_black_hole) { return EnumRarity.epic; } diff --git a/com/hbm/lib/HbmWorldGen.java b/com/hbm/lib/HbmWorldGen.java index d086630c0..dd2e858ed 100644 --- a/com/hbm/lib/HbmWorldGen.java +++ b/com/hbm/lib/HbmWorldGen.java @@ -98,7 +98,7 @@ public class HbmWorldGen implements IWorldGenerator { int randPosY = rand.nextInt(35); int randPosZ = j + rand.nextInt(16); - (new WorldGenMinable(ModBlocks.ore_niter, 4)).generate(world, rand, randPosX, randPosY, randPosZ); + (new WorldGenMinable(ModBlocks.ore_niter, 6)).generate(world, rand, randPosX, randPosY, randPosZ); } for (int k = 0; k < MainRegistry.tungstenSpawn; k++) { diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index 693188e72..8aa9aa120 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -14,6 +14,7 @@ import com.hbm.entity.effect.EntityNukeCloudBig; import com.hbm.entity.effect.EntityNukeCloudNoShroom; import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.grenade.EntityGrenadeASchrab; +import com.hbm.entity.grenade.EntityGrenadeBlackHole; import com.hbm.entity.grenade.EntityGrenadeCluster; import com.hbm.entity.grenade.EntityGrenadeElectric; import com.hbm.entity.grenade.EntityGrenadeFire; @@ -280,6 +281,7 @@ public class ClientProxy extends ServerProxy RenderingRegistry.registerEntityRenderingHandler(EntityGrenadeASchrab.class, new RenderSnowball(ModItems.grenade_aschrab)); RenderingRegistry.registerEntityRenderingHandler(EntityGrenadePulse.class, new RenderSnowball(ModItems.grenade_pulse)); RenderingRegistry.registerEntityRenderingHandler(EntityGrenadeShrapnel.class, new RenderSnowball(ModItems.grenade_shrapnel)); + RenderingRegistry.registerEntityRenderingHandler(EntityGrenadeBlackHole.class, new RenderSnowball(ModItems.grenade_black_hole)); RenderingRegistry.registerEntityRenderingHandler(EntitySchrab.class, new RenderFlare()); diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index 7093d313d..65c279182 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -595,7 +595,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator_ammo, 16), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.canister_fuel })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator_ammo, 24), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.canister_napalm })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator, 1), new Object[] { "SSS", "IWL", "LMI", 'S', "plateSteel", 'I', "plateIron", 'L', Items.leather, 'M', ModItems.motor, 'W', ModItems.wire_aluminium })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator_ammo, 16), new Object[] { "SPS", "PCP", "SPS", 'S', "plateSteel", 'C', "dustNiter", 'P', Items.snowball })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator_ammo, 16), new Object[] { "SPS", "PCP", "SPS", 'S', "plateSteel", 'C', "dustSalpeter", 'P', Items.snowball })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator_ammo, 16), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.powder_ice })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_zomg, 1), new Object[] { "PRR", "CCS", "PXX", 'P', ModItems.plate_paa, 'R', "plateDenseLead", 'S', ModItems.singularity_counter_resonant, 'X', ModItems.crystal_xen, 'C', ModItems.coil_magnetized_tungsten})); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp, 1), new Object[] { "EEE", "SSM", "III", 'E', new ItemStack(ModItems.ingot_euphemium, 1, 34), 'S', "plateSteel", 'I', "ingotSteel", 'M', ModItems.motor})); @@ -870,6 +870,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_magnetized_tungsten, 1), new Object[] { "dustTungsten", "nuggetSchrabidium" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_red_copper, 2), new Object[] { "dustRedstone", "dustCopper" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_steel, 2), new Object[] { "dustIron", "dustCoal" })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 2), new Object[] { "dustSteel", "dustTungsten" })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 2), new Object[] { "dustSteel", ModItems.powder_cobalt })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_polymer, 2), new Object[] { "dustCoal", "dustSalpeter" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.saw, 1), new Object[] { "IIL", "PP ", 'P', "plateSteel", 'I', "ingotSteel", 'L', Items.leather })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.bat, 1), new Object[] { "P", "P", "S", 'S', "plateSteel", 'P', "plankWood" })); @@ -939,6 +942,10 @@ public class CraftingManager { GameRegistry.addSmelting(ModItems.powder_red_copper, new ItemStack(ModItems.ingot_red_copper), 1.0F); GameRegistry.addSmelting(ModItems.powder_steel, new ItemStack(ModItems.ingot_steel), 1.0F); GameRegistry.addSmelting(ModItems.powder_lithium, new ItemStack(ModItems.lithium), 1.0F); + GameRegistry.addSmelting(ModItems.powder_dura_steel, new ItemStack(ModItems.ingot_dura_steel), 1.0F); + GameRegistry.addSmelting(ModItems.powder_polymer, new ItemStack(ModItems.ingot_polymer), 1.0F); + GameRegistry.addSmelting(ModItems.powder_lanthanium, new ItemStack(ModItems.ingot_lanthanium), 1.0F); + GameRegistry.addSmelting(ModItems.powder_actinium, new ItemStack(ModItems.ingot_actinium), 1.0F); GameRegistry.addSmelting(ModItems.combine_scrap, new ItemStack(ModItems.ingot_combine_steel), 1.0F); GameRegistry.addSmelting(ModItems.tank_waste, new ItemStack(ModItems.tank_waste), 0.0F); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index fbe74008c..ddbd67cc9 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -35,6 +35,7 @@ import com.hbm.entity.effect.EntityNukeCloudBig; import com.hbm.entity.effect.EntityNukeCloudNoShroom; import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.grenade.EntityGrenadeASchrab; +import com.hbm.entity.grenade.EntityGrenadeBlackHole; import com.hbm.entity.grenade.EntityGrenadeCluster; import com.hbm.entity.grenade.EntityGrenadeElectric; import com.hbm.entity.grenade.EntityGrenadeFire; @@ -240,7 +241,7 @@ public class MainRegistry public static int aluminiumSpawn = 7; public static int copperSpawn = 12; public static int fluoriteSpawn = 6; - public static int niterSpawn = 4; + public static int niterSpawn = 6; public static int tungstenSpawn = 10; public static int leadSpawn = 6; public static int berylliumSpawn = 6; @@ -449,6 +450,7 @@ public class MainRegistry EntityRegistry.registerModEntity(EntityShrapnel.class, "entity_shrapnel", 68, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityGrenadeShrapnel.class, "entity_grenade_shrapnel", 69, this, 250, 1, true); EntityRegistry.registerModEntity(EntityBlackHole.class, "entity_black_hole", 70, this, 250, 1, true); + EntityRegistry.registerModEntity(EntityGrenadeBlackHole.class, "entity_grenade_black_hole", 71, this, 250, 1, true); EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00); EntityRegistry.registerGlobalEntityID(EntityHunterChopper.class, "entity_mob_hunter_chopper", EntityRegistry.findGlobalUniqueEntityId(), 0x000020, 0x2D2D72); @@ -495,6 +497,8 @@ public class MainRegistry OreDictionary.registerOre("ingotUnobtainium", ModItems.ingot_unobtainium); OreDictionary.registerOre("ingotDaffergon", ModItems.ingot_daffergon); OreDictionary.registerOre("ingotVerticium", ModItems.ingot_verticium); + OreDictionary.registerOre("ingotLanthanium", ModItems.ingot_lanthanium); + OreDictionary.registerOre("ingotActinium", ModItems.ingot_actinium); OreDictionary.registerOre("dustFluorite", ModItems.fluorite); OreDictionary.registerOre("nuggetLead", ModItems.nugget_lead); OreDictionary.registerOre("nuggetUranium", ModItems.nugget_uranium); @@ -557,6 +561,8 @@ public class MainRegistry OreDictionary.registerOre("dustUnobtainium", ModItems.powder_unobtainium); OreDictionary.registerOre("dustDaffergon", ModItems.powder_daffergon); OreDictionary.registerOre("dustVerticium", ModItems.powder_verticium); + OreDictionary.registerOre("dustLanthanium", ModItems.powder_lanthanium); + OreDictionary.registerOre("dustActinium", ModItems.powder_actinium); OreDictionary.registerOre("gemCoal", Items.coal); @@ -709,7 +715,7 @@ public class MainRegistry Property PFluoriteSpawn = config.get(Configuration.CATEGORY_GENERAL, "2.5_fluoriteSpawnrate", 6); PFluoriteSpawn.comment = "Ammount of fluorite ore veins per chunk"; fluoriteSpawn = PFluoriteSpawn.getInt(); - Property PNiterSpawn = config.get(Configuration.CATEGORY_GENERAL, "2.6_niterSpawnrate", 4); + Property PNiterSpawn = config.get(Configuration.CATEGORY_GENERAL, "2.6_niterSpawnrate", 6); PNiterSpawn.comment = "Ammount of niter ore veins per chunk"; niterSpawn = PNiterSpawn.getInt(); Property PtungstenSpawn = config.get(Configuration.CATEGORY_GENERAL, "2.7_tungstenSpawnrate", 10); diff --git a/com/hbm/main/NEIConfig.java b/com/hbm/main/NEIConfig.java index ff5285c41..f956fa9a9 100644 --- a/com/hbm/main/NEIConfig.java +++ b/com/hbm/main/NEIConfig.java @@ -4,6 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.handler.AlloyFurnaceRecipeHandler; import com.hbm.handler.CMBFurnaceRecipeHandler; import com.hbm.handler.CentrifugeRecipeHandler; +import com.hbm.handler.CyclotronRecipeHandler; import com.hbm.handler.ReactorRecipeHandler; import com.hbm.handler.ShredderRecipeHandler; import com.hbm.inventory.gui.GUITestDiFurnace; @@ -29,6 +30,8 @@ public class NEIConfig implements IConfigureNEI { API.registerUsageHandler(new ShredderRecipeHandler()); API.registerRecipeHandler(new CMBFurnaceRecipeHandler()); API.registerUsageHandler(new CMBFurnaceRecipeHandler()); + API.registerRecipeHandler(new CyclotronRecipeHandler()); + API.registerUsageHandler(new CyclotronRecipeHandler()); //Some things are even beyond my control...or are they? API.hideItem(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_coal_on))); diff --git a/com/hbm/render/entity/RenderBlackHole.java b/com/hbm/render/entity/RenderBlackHole.java index ffc7c1126..6804dd173 100644 --- a/com/hbm/render/entity/RenderBlackHole.java +++ b/com/hbm/render/entity/RenderBlackHole.java @@ -104,6 +104,7 @@ public class RenderBlackHole extends Render { } GL11.glPopMatrix(); + GL11.glPopMatrix(); GL11.glDepthMask(true); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_BLEND); @@ -114,7 +115,6 @@ public class RenderBlackHole extends Render { RenderHelper.enableStandardItemLighting(); //FLARE END - GL11.glPopMatrix(); } }