From 0a8fa40773d05ee02e187dcc664f7642a0168d46 Mon Sep 17 00:00:00 2001 From: HbmMods Date: Mon, 7 Mar 2016 20:23:57 +0100 Subject: [PATCH] The world's sexiest stuff ever made --- assets/hbm/lang/de_DE.lang | 36 +- assets/hbm/lang/en_US.lang | 36 +- assets/hbm/textures/armor/alloy_1.png | Bin 0 -> 1219 bytes assets/hbm/textures/armor/alloy_2.png | Bin 0 -> 708 bytes assets/hbm/textures/armor/gold_layer_1.png | Bin 0 -> 1161 bytes assets/hbm/textures/armor/gold_layer_2.png | Bin 0 -> 671 bytes assets/hbm/textures/armor/iron_layer_1.png | Bin 0 -> 1096 bytes assets/hbm/textures/armor/iron_layer_2.png | Bin 0 -> 649 bytes assets/hbm/textures/armor/steel_1.png | Bin 0 -> 1135 bytes assets/hbm/textures/armor/steel_2.png | Bin 0 -> 686 bytes assets/hbm/textures/armor/titanium_1.png | Bin 0 -> 1136 bytes assets/hbm/textures/armor/titanium_2.png | Bin 0 -> 687 bytes assets/hbm/textures/blocks/block_meteor.png | Bin 0 -> 321 bytes .../hbm/textures/blocks/fusion_center_top.png | Bin 444 -> 474 bytes assets/hbm/textures/blocks/red_cable_icon.png | Bin 268 -> 255 bytes assets/hbm/textures/items/alloy_axe.png | Bin 0 -> 253 bytes assets/hbm/textures/items/alloy_boots.png | Bin 0 -> 242 bytes assets/hbm/textures/items/alloy_helmet.png | Bin 0 -> 223 bytes assets/hbm/textures/items/alloy_hoe.png | Bin 0 -> 227 bytes assets/hbm/textures/items/alloy_legs.png | Bin 0 -> 222 bytes assets/hbm/textures/items/alloy_pickaxe.png | Bin 0 -> 271 bytes assets/hbm/textures/items/alloy_plate.png | Bin 0 -> 266 bytes assets/hbm/textures/items/alloy_shovel.png | Bin 0 -> 230 bytes assets/hbm/textures/items/alloy_sword.png | Bin 0 -> 273 bytes assets/hbm/textures/items/b_smoke1.png | Bin 0 -> 183 bytes assets/hbm/textures/items/b_smoke2.png | Bin 0 -> 173 bytes assets/hbm/textures/items/b_smoke3.png | Bin 0 -> 169 bytes assets/hbm/textures/items/b_smoke4.png | Bin 0 -> 167 bytes assets/hbm/textures/items/b_smoke5.png | Bin 0 -> 161 bytes assets/hbm/textures/items/b_smoke6.png | Bin 0 -> 158 bytes assets/hbm/textures/items/b_smoke7.png | Bin 0 -> 154 bytes assets/hbm/textures/items/b_smoke8.png | Bin 0 -> 148 bytes assets/hbm/textures/items/inf_coolant.png | Bin 0 -> 276 bytes assets/hbm/textures/items/inf_sulfur.png | Bin 0 -> 276 bytes assets/hbm/textures/items/steel_axe.png | Bin 0 -> 249 bytes assets/hbm/textures/items/steel_boots.png | Bin 0 -> 235 bytes assets/hbm/textures/items/steel_helmet.png | Bin 0 -> 221 bytes assets/hbm/textures/items/steel_hoe.png | Bin 0 -> 225 bytes assets/hbm/textures/items/steel_legs.png | Bin 0 -> 222 bytes assets/hbm/textures/items/steel_pickaxe.png | Bin 0 -> 261 bytes assets/hbm/textures/items/steel_plate.png | Bin 0 -> 260 bytes assets/hbm/textures/items/steel_shovel.png | Bin 0 -> 228 bytes assets/hbm/textures/items/steel_sword.png | Bin 0 -> 258 bytes assets/hbm/textures/items/titanium_axe.png | Bin 0 -> 256 bytes assets/hbm/textures/items/titanium_boots.png | Bin 0 -> 240 bytes assets/hbm/textures/items/titanium_helmet.png | Bin 0 -> 226 bytes assets/hbm/textures/items/titanium_hoe.png | Bin 0 -> 229 bytes assets/hbm/textures/items/titanium_legs.png | Bin 0 -> 224 bytes .../hbm/textures/items/titanium_pickaxe.png | Bin 0 -> 273 bytes assets/hbm/textures/items/titanium_plate.png | Bin 0 -> 263 bytes assets/hbm/textures/items/titanium_shovel.png | Bin 0 -> 232 bytes assets/hbm/textures/items/titanium_sword.png | Bin 0 -> 275 bytes com/hbm/blocks/BlockOre.java | 26 +- com/hbm/blocks/ModBlocks.java | 5 + com/hbm/blocks/TestTicker.java | 2 - com/hbm/blocks/TileEntityCable.java | 29 +- com/hbm/blocks/TileEntityLaunchPad.java | 26 +- com/hbm/blocks/TileEntityMachineBattery.java | 312 ++------------ com/hbm/blocks/TileEntityMachineCoal.java | 341 +++++----------- .../blocks/TileEntityMachineDeuterium.java | 35 +- .../TileEntityMachineElectricFurnace.java | 26 +- .../blocks/TileEntityMachineGenerator.java | 294 +------------- .../blocks/TileEntityReactorMultiblock.java | 9 + com/hbm/blocks/TileEntityWireCoated.java | 383 +----------------- com/hbm/blocks/TileEntityYellowBarrel.java | 10 +- com/hbm/blocks/WasteEarth.java | 18 +- com/hbm/calc/PowerNet.java | 7 - .../calc/UnionOfTileEntitiesAndBooleans.java | 15 + com/hbm/entity/EntityGrenadeNuclear.java | 8 +- com/hbm/entity/EntityMiniNuke.java | 15 +- com/hbm/entity/EntityNuclearCreeper.java | 18 +- com/hbm/explosion/ExplosionParticleB.java | 183 +++++++++ com/hbm/interfaces/IConductor.java | 2 +- com/hbm/interfaces/IConsumer.java | 10 + com/hbm/interfaces/ISource.java | 8 + com/hbm/items/ItemCell.java | 3 +- com/hbm/items/ItemCustomLore.java | 2 +- com/hbm/items/ModArmor.java | 39 ++ com/hbm/items/ModAxe.java | 12 + com/hbm/items/ModHoe.java | 12 + com/hbm/items/ModItems.java | 120 +++++- com/hbm/items/ModPickaxe.java | 12 + com/hbm/items/ModSpade.java | 12 + com/hbm/items/ModSword.java | 12 + com/hbm/lib/Library.java | 91 ++--- com/hbm/main/ClientProxy.java | 3 + com/hbm/main/MainRegistry.java | 18 +- com/hbm/particles/EntityBSmokeFX.java | 81 ++++ com/hbm/render/BSmokeRenderer.java | 155 +++++++ 89 files changed, 1154 insertions(+), 1272 deletions(-) create mode 100644 assets/hbm/textures/armor/alloy_1.png create mode 100644 assets/hbm/textures/armor/alloy_2.png create mode 100644 assets/hbm/textures/armor/gold_layer_1.png create mode 100644 assets/hbm/textures/armor/gold_layer_2.png create mode 100644 assets/hbm/textures/armor/iron_layer_1.png create mode 100644 assets/hbm/textures/armor/iron_layer_2.png create mode 100644 assets/hbm/textures/armor/steel_1.png create mode 100644 assets/hbm/textures/armor/steel_2.png create mode 100644 assets/hbm/textures/armor/titanium_1.png create mode 100644 assets/hbm/textures/armor/titanium_2.png create mode 100644 assets/hbm/textures/blocks/block_meteor.png create mode 100644 assets/hbm/textures/items/alloy_axe.png create mode 100644 assets/hbm/textures/items/alloy_boots.png create mode 100644 assets/hbm/textures/items/alloy_helmet.png create mode 100644 assets/hbm/textures/items/alloy_hoe.png create mode 100644 assets/hbm/textures/items/alloy_legs.png create mode 100644 assets/hbm/textures/items/alloy_pickaxe.png create mode 100644 assets/hbm/textures/items/alloy_plate.png create mode 100644 assets/hbm/textures/items/alloy_shovel.png create mode 100644 assets/hbm/textures/items/alloy_sword.png create mode 100644 assets/hbm/textures/items/b_smoke1.png create mode 100644 assets/hbm/textures/items/b_smoke2.png create mode 100644 assets/hbm/textures/items/b_smoke3.png create mode 100644 assets/hbm/textures/items/b_smoke4.png create mode 100644 assets/hbm/textures/items/b_smoke5.png create mode 100644 assets/hbm/textures/items/b_smoke6.png create mode 100644 assets/hbm/textures/items/b_smoke7.png create mode 100644 assets/hbm/textures/items/b_smoke8.png create mode 100644 assets/hbm/textures/items/inf_coolant.png create mode 100644 assets/hbm/textures/items/inf_sulfur.png create mode 100644 assets/hbm/textures/items/steel_axe.png create mode 100644 assets/hbm/textures/items/steel_boots.png create mode 100644 assets/hbm/textures/items/steel_helmet.png create mode 100644 assets/hbm/textures/items/steel_hoe.png create mode 100644 assets/hbm/textures/items/steel_legs.png create mode 100644 assets/hbm/textures/items/steel_pickaxe.png create mode 100644 assets/hbm/textures/items/steel_plate.png create mode 100644 assets/hbm/textures/items/steel_shovel.png create mode 100644 assets/hbm/textures/items/steel_sword.png create mode 100644 assets/hbm/textures/items/titanium_axe.png create mode 100644 assets/hbm/textures/items/titanium_boots.png create mode 100644 assets/hbm/textures/items/titanium_helmet.png create mode 100644 assets/hbm/textures/items/titanium_hoe.png create mode 100644 assets/hbm/textures/items/titanium_legs.png create mode 100644 assets/hbm/textures/items/titanium_pickaxe.png create mode 100644 assets/hbm/textures/items/titanium_plate.png create mode 100644 assets/hbm/textures/items/titanium_shovel.png create mode 100644 assets/hbm/textures/items/titanium_sword.png delete mode 100644 com/hbm/calc/PowerNet.java create mode 100644 com/hbm/calc/UnionOfTileEntitiesAndBooleans.java create mode 100644 com/hbm/explosion/ExplosionParticleB.java create mode 100644 com/hbm/interfaces/IConsumer.java create mode 100644 com/hbm/interfaces/ISource.java create mode 100644 com/hbm/items/ModArmor.java create mode 100644 com/hbm/items/ModAxe.java create mode 100644 com/hbm/items/ModHoe.java create mode 100644 com/hbm/items/ModPickaxe.java create mode 100644 com/hbm/items/ModSpade.java create mode 100644 com/hbm/items/ModSword.java create mode 100644 com/hbm/particles/EntityBSmokeFX.java create mode 100644 com/hbm/render/BSmokeRenderer.java diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index fb6b436dc..091892539 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -92,7 +92,7 @@ tile.machine_electric_furnace_on.name=Elektrischer Ofen container.electricFurnace=Elektrischer Ofen tile.machine_generator.name=Atomreaktor container.generator=Atomreaktor -tile.red_wire_coated.name=Rotes Kupferkabel +tile.red_wire_coated.name=Geschirmtes rotes Kupferkabel tile.machine_deuterium.name=Deuteriumextraktor container.machine_deuterium=Deuteriumextraktor tile.machine_battery.name=Energiespeicherblock @@ -584,4 +584,36 @@ item.thruster_small.name=Kleines Raketentriebwerk item.thruster_medium.name=Mittleres Raketentriebwerk item.thruster_large.name=Großes Raketentriebwerk -item.wand.name=Konstruktions-Zauberstab \ No newline at end of file +item.wand.name=Konstruktions-Zauberstab + +item.steel_helmet.name=Stahlhelm +item.steel_plate.name=Stahlbrustpanzer +item.steel_legs.name=Stahlbeinschutz +item.steel_boots.name=Stahlstiefel +item.titanium_helmet.name=Titanhelm +item.titanium_plate.name=Titanbrustpanzer +item.titanium_legs.name=Titanbeinschutz +item.titanium_boots.name=Titanstiefel +item.alloy_helmet.name=Legierungshelm +item.alloy_plate.name=Legierungsbrustpanzer +item.alloy_legs.name=Legierungsbeinschutz +item.alloy_boots.name=Legierungsstiefel + +item.steel_sword.name=Stahlschwert +item.steel_pickaxe.name=Stahlspitzhacke +item.steel_axe.name=Stahlaxt +item.steel_shovel.name=Stahlschaufel +item.steel_hoe.name=Stahlfeldhacke +item.titanium_sword.name=Titanschwert +item.titanium_pickaxe.name=Titanspitzhacke +item.titanium_axe.name=Titanaxt +item.titanium_shovel.name=Titanschaufel +item.titanium_hoe.name=Titanfeldhacke +item.alloy_sword.name=Legierungsschwert +item.alloy_pickaxe.name=Legierungsspitzhacke +item.alloy_axe.name=Legierungsaxt +item.alloy_shovel.name=Legierungsschaufel +item.alloy_hoe.name=Legierungsfeldhacke + +tile.red_cable.name=Rotes Kupferkabel +tile.meteor.name=Meteoritenblock \ No newline at end of file diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 3f9a24a3a..441032cdb 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -92,7 +92,7 @@ tile.machine_electric_furnace_on.name=Electric Furnace container.electricFurnace=Electric Furnace tile.machine_generator.name=Nuclear Reactor container.generator=Nuclear Reactor -tile.red_wire_coated.name=Red Copper Cable +tile.red_wire_coated.name=Coated Red Copper Cable tile.machine_deuterium.name=Deuterium Extractor container.machine_deuterium=Deuterium Extractor tile.machine_battery.name=Energy Storage Block @@ -585,4 +585,36 @@ item.thruster_small.name=Small Thruster item.thruster_medium.name=Medium Thruster item.thruster_large.name=Large Thruster -item.wand.name=Construction Wand \ No newline at end of file +item.wand.name=Construction Wand + +item.steel_helmet.name=Steel Helmet +item.steel_plate.name=Steel Chestplate +item.steel_legs.name=Steel Leggings +item.steel_boots.name=Steel Boots +item.titanium_helmet.name=Titanium Helmet +item.titanium_plate.name=Titanium Chestplate +item.titanium_legs.name=Titanium Leggings +item.titanium_boots.name=Titanium Boots +item.alloy_helmet.name=Advanced Alloy Helmet +item.alloy_plate.name=Advanced Alloy Chestplate +item.alloy_legs.name=Advanced Alloy Leggings +item.alloy_boots.name=Advanced Alloy Boots + +item.steel_sword.name=Steel Sword +item.steel_pickaxe.name=Steel Pickaxe +item.steel_axe.name=Steel Axe +item.steel_shovel.name=Steel Shovel +item.steel_hoe.name=Steel Hoe +item.titanium_sword.name=Titanium Sword +item.titanium_pickaxe.name=Titanium Pickaxe +item.titanium_axe.name=Titanium Axe +item.titanium_shovel.name=Titanium Shovel +item.titanium_hoe.name=Titanium Hoe +item.alloy_sword.name=Advanced Alloy Sword +item.alloy_pickaxe.name=Advanced Alloy Pickaxe +item.alloy_axe.name=Advanced Alloy Axe +item.alloy_shovel.name=Advanced Alloy Shovel +item.alloy_hoe.name=Advanced Alloy Hoe + +tile.red_cable.name=Red Cable +tile.meteor.name=Meteor Block \ No newline at end of file diff --git a/assets/hbm/textures/armor/alloy_1.png b/assets/hbm/textures/armor/alloy_1.png new file mode 100644 index 0000000000000000000000000000000000000000..9cc22b52322f50bfc4e01d7fbffeb5f4ba43fad7 GIT binary patch literal 1219 zcmV;!1U&nRP)<{97<5HgbW?9;ba!ELWdLwtX>N2bZe?^J zG%heMIczh2P5=M|K}keGRA@u(*!S)nMGObK-u@52as3#tT{Fh(*QGN`Y

Pzz4UD@#YOn4hQ`9{H2M4 z65C#y91sy7`>##o|9J88@#jldjF0bJY`+7JJapz{_;~f|@z={&X7tA^SDhR+AdP+d z#%1n90rnhoCr=TqyoZ2fh={pgpWD6t4p8Yu8Y_D8{)-1r&++H?pLXIq;NZQd40(>- z^FKUwVP0>HWhnms$qUlpZy!G|pS}C$v2(K@FxPCYUp>R2`%WF7+_lJGdziPc-#%|6 z9LTWgj+g78Ue_HXr}yTg@Tva4zi?R=!!~SMU+c0)ymM1JXu3skthcVyiK9x5og-06 z<=)z}WJRv3y(o1=)6kl4_;)v$>(zxSj`%XEF@81I%$+&!rP^ILjHe)y@$kMG1d;_puurNC4>?9+enO zu4{#TU8Q-Qc0U0r!DMRL_EI|+3e*pd_+{TEi5l}Iw*3Sd(x-2Zn*N_Qp1`&HfK7lb zUAhO6PBlFrfvaNX7mRCq$4H@e8wrfAw5I1H#Y^t`-GtuXwXB%ZXDywi=xbQ;@vg~r z5F|EGZ#(Y0UUO;2B+t{s}x0fEUk=7Y$CGqojm80VX$B8x)!)jdvAK! zmrS2i+s#M1y>4~8P#Ukcxs=oRbm2<*Xt^og>lb|rt^b)eUHhO z3iDAatG_P?P`VZHZ}OyY7|ao(k{w};MQK$&_wh01`Q5#_Hd}S$=pcW7_TuIG+ON^m z@2CA&#--+blm<{djB;Qb42s$RQzpIvj5!E&`@^ZzCS`nxX_4byca18&2zz#h{a4Rx znD;tgsX6vR77nz&)SQpfp!aXd$Wd;BAS1EfpThCWIg`Sb5{yVWGQo`H0P^Aq;4P+6l3~BhGO0p3?ybZe7Ybw-FQi ztfkY-Yb*|PsAo<{BV#N|`CJk4oQNr9Ij6Sy7nx5(ilM{a_4+@=5%%RgspcF`t=IEX zLSBS$AR%*FN`%1)XU>UtjF6LRLn0z%j|EW?mJ;??S896mNM!o@5Q&C0<^V=ArqiLL hWqxf@nvE8VzX5{mG}-mB+tC03002ovPDHLkV1nUAQm+62 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/alloy_2.png b/assets/hbm/textures/armor/alloy_2.png new file mode 100644 index 0000000000000000000000000000000000000000..45f0524cfc7152119a4aab8c533b97ed6e2351ce GIT binary patch literal 708 zcmV;#0z3VQP)N2bZe?^J zG%heMIczh2P5=M`LP1Y6uaxGmvHcszo;dvGuL z^>h}(|C`)%Z@*-cPCM=CH`aSoLqkJDLqkJDLqkJDLqkKulRYWFI50E6K0GJCJ2pSp z>CwTnebaNkvNnG|zdUnBogN*$IWjl@zO=fCah)C=NPom%9-NhBL!BO8+}V=y-K{A< z-8(J6Kfa*U|Eoi@3;D;pQz?T-yE>cu+dE;aKj;(nnEnEpk0%%9FK3n%vUKCnAMQ-~ z^Xakt_UODa<_z{9PAn{XJ*K}v0-R39@RRL#*o!YM--Yg?>?w z=`Rpg<48(rI;Z@ri@t`(8Mntfhj7|ZIKXo!nxcvjF&61to4c-$u-^qTAav_DHV#1v zASIgl@|yDY$E$##h+kco%JWF*Q6ljQC>xpLmEfFf>pQ1K_K6u-yhD2d)QmAIdwqF$6V0GMAfCD<0Er()8C7_oXbAnKVx!V{B&mT40=esD6&R& zu`#c#jAQ@*dx-PvH3t`>C_4~BhLey$*qr`C^p$XcH5sJDIGnw#Vjum-9=7!}g9}kY zCVECVL`KAaig;yY4F_5Kd2waQCQgYSgn0Cyc!la`1{X>wB8LouNYIrH(#RtzL)eS1 qIW^CL_H!D0I$Pqb`k5(0N`C;D6OAby3DT1Q0000#)v9<7-mazHXYKUs zQzz}eUQLJZ*V6IVZaR3kmKdvAzwqM_TYj!Cw$jDvX1W?}35lNP$}Xrf+GCp!FUJprH!%o$jpPe-*&e!)diJdg%TBs}+3@Ual-Y0DI5d2|cIb z=Z9aqa&Hg|p|s)WjtD;b*eQO;*wKd~9-z;SwfrV#7`#|XKc2MpW)J$=m$%QG3jiVP z`svHc+ucE=$LYuLVg1hs;RV7NnlP{TI@<^UD#sC8AM4l)RRXA)yGgjhGaiSZkA{)6 zwTDyYC~x;${2dLl9=l+|`3X>9 z2U2pW(U>!H0P4Pg!9@zN9{_Q>y)MaFia5dmBN?cVJxATZ|KI%S zsMB51`Okf1Bnf&Q|Ifck2zuN?pg;xIVJ z0HR#MLFC}7^-($wOuF literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/gold_layer_2.png b/assets/hbm/textures/armor/gold_layer_2.png new file mode 100644 index 0000000000000000000000000000000000000000..a7cf8351544f9952e0348c0fa576b15535ff848e GIT binary patch literal 671 zcmV;Q0$}}#P)pHK}keGRA@u(m-|XWK@i4$jZ%+y-~SPU zh@yz1h$4z23e8Junr2?6{f&-9|4P#F%);W%IkU3gH#6VtNu_)^1I~am;0!ne&VV!E z3^)VMfHU9>I0Mc=;u+}OM$&)G%g0MWM$Mumj*$2JoG@mSia%j`L`W~6nNk=|WSKHJ4b{XZ|jcW)vsgU)rNKJAOFPJGb^bRzZy0cPAS z$z)hou-L54?p#GO8I)yMF9>VMz<=B+sU3R)00E%cxT4^QJnQ+iqHDE-AY$W7R($mX z0bvjRu_u6(Cfa}|`T)iTpq59NL>th&f4j`ebX3*}8L=k-ASk{?98j9#VFH%ghY;SQ z4b(nlkrn7g>gib8!FQf9xC^(HOe}a6k@5R5_F>K42P0i)Vo4a2&S(kW;eov#Yb+ z8}z|)SVtj?$S!;sloe~+|9g*#^1s&@qDXcC2r%|70brh~zJ!Uc7y;U4LIzP{5Y9k! z@i+Zp&qgv}U52$}0vOW_BLrQs(y}f?)~xOo^QvZ(YR*!FtR3@T)`iwR-=FWNge-D^ zv5ORuq-+393k4(@qHQ%qmuJ*G1hStj!XH}+33C(QBHxMOOpWs%NJIbt002ovPDHLk FV1oSeC7}QS literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/iron_layer_1.png b/assets/hbm/textures/armor/iron_layer_1.png new file mode 100644 index 0000000000000000000000000000000000000000..6da6e8408d3f28dfe3a261e2011b902ae8854ac3 GIT binary patch literal 1096 zcmV-O1h@N%P)PbXFRA@u(*@sRmF%Sh%{{M%N=r#0C zLT>`T!%xT3MJvQhgv4$Vf+Z`v>o#-e&Uoz1&5bBqTU%v$dAaQE?Ujv}lmY?Z{r$b%-{02?fU~o+%7Rhjr@lP^ zu=vf*O;!Hl;-Xw$UY3Q0h2Iar=H}*y;#XH!rQh#Y>kkHl*@yv@eSCZ@d>;!`&%Vt} z5RBhrfXWqoJ3T%9{VpKVv$QJc@%#1l_4>ZHwl@6$tgNgQey-Z*4-O9M_C{HXs{8x< zRpH&;-TJI;XJ@D81HPpi>sijQy1H5x7Z>ZVIea&-->f$g08%W4UyJhD?kJgd-vvI= z|NQ*C2E!_ zLV}}b%3@RiG&YKBvz21U*a4s<;RG}SQVKO$pVCd5QWVW2w7#J;HUN`iY5?$!)$`37 zDzL0Eb^s`uAh)!%G*lpzMd@KeQ&_*m3Uk{^)g)4sSM?b?0Bs8paIrxA0L013NoCGV z(29Whjv0lb!P2*EKxw0cf?g>2SY(WUO$q|^sNv~yu-dVTV-#iXf%JcJc z9m~Rs^!fPsxLP*=hCOM|{LS~)89<0!k`N#YqoVv@$te;*sGEaR+(sVJC za)X0%tQvo$EQ##IBg%pHD@jB_RA@u(*XeFzF$@LZzW)m$ma^|_ z5tNo)JV{1hG_FSTw;D8*M6yWkbx_W+eVqI9Qbu8*Fi;pM3={?m1BHRYKw+RTP#7o- z6b1?dPtU+;G)lACEG?JIv|g{%(-AV6Op7ndpU;zQ z`0)g^TCLP>x6^n$PMggp*Z*R%$l!;=VJ?HgV32*f-EKC%^np%1JVC&`zrUx?&(93j z+C0|%em{MDe5ALxw`7hC{@d*~uOFTOAOJcX4jG)to1adnJZA*any;+b?RI$&|A!|) zN{cqoq7Se&fXai3HqhSpdcCyY@3SG};Ryiba=Cm(94O!!uxcM6GJrOyePqcBdhzfC z0IbG=l+xBn`ExD$1P>X_W;4G-+K(VWyAw@O1&Eo8^y}+uR(*io3uHj7y|35nkDmcR ziRSHg%e_Ck0)Qf3sZ?@%WY$q4(FJIR%+V!~Q>|9>Z)6kyPN$Ovv{tL-xo)Gp=t~H% zbGU!_pE$=|G$!r<4(MQ_>QJHhz%&|-uY)?A!%nBuOcuYmI>)^sKlnYOqsSuJ#m7)q z=CS|pJt4~fy~c>5>;MRu_?7_JGy1~lN)X_k3{qkUH;69(&>ws5k^$dkSQY>inh}K1 zmH4KJE+cE=UU5F3bE+dHG$`7!|B5d3-ShqP{Yoez2TWX~L{cdMt%U+9L->oXXKEgS j_RAvv)_mDLzD0fksv*FCYGN$y00000NkvXXu0mjf%aJI` literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/steel_1.png b/assets/hbm/textures/armor/steel_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a4854374c590688d05e13716e5c98a2fc6836635 GIT binary patch literal 1135 zcmV-#1d#iQP)<{97<5HgbW?9;ba!ELWdLwtX>N2bZe?^J zG%heMIczh2P5=M{?MXyIRA@u(*k^7dF$@J@Uo=2^@4feeBFy zB|wY{C9ynGvIpPM`uciVSXd}KJ3D1{b+v46ZkGN1{j#yKQOq^5{t{z9K0bzgcXwB= zudmDP?QL~N6YDR<0q^hc<^KM@G6$TToKzGvvHnsVAmTSSH`VyFv$Jx3eqLs0XZ!Df zwY9aO;a68z<>KO^M*s5i@^{n##y&ni*4&2ztZnSq6v5;@1Yn3Tc6@x?e+Q`aB8?S2 zdB3uuMQN>H{`cA{!-?glm(q}9$NzwOU!QWkz z;~+?s0$6|bllkmF+HY!h zN0gvAqZ}B6LDBnP+iw7U4g%f$a7x;c@k7j*xx5-xdJ)!khW$s+3(T|5uT*_M$T-mY zre=4E(XO3)+gc&C$G%`Z*Ol^j!Y0kpRv63MA2am)#e0>>Wh+gBBBj3QI>Ps zHh+NR-fj9H;t2b4o>X%Vr?%;C$w4B7AwfhzoWUZ+Ip!E4C)EasAo~?WMOaGM zUtMX#(?=qc>q8_0Ys>+RWK7Z_(K0@^D0N1I!5_Ep4^mc7=|}(o002ovPDHLkV1nR; B9k~Di literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/steel_2.png b/assets/hbm/textures/armor/steel_2.png new file mode 100644 index 0000000000000000000000000000000000000000..afe1b9cd1cdb084f64d33e58693d7e300cbf7b10 GIT binary patch literal 686 zcmV;f0#W^mP)N2bZe?^J zG%heMIczh2P5=M`EJ;K`RA@u(*Xd5GF%Sk|u9FBNAdBovlzj_V!j0BEO>0ihe-n_t z$;3`O?bmm_xrI7 zdc9t>d4GS8!d8FKC(<#G3uIQSRoHH~ku2Rf>)mcQY&M&)SS;e0GuVH9eMLPT^SD3) zq5Xaz$%(x2@pz15q9M}R%8K=R9rv(L$2=~iv}hwO`UukzR31dMk+$CHbi!`8i^3V{ zn8yVo=kxg|;z%J+kX8E}VqI@g`*EsD@ zIKXo!nxcvjF&61YqY=A4!hRRXfUH}u*Xxh(0Hj3odcDTCKfekHig>kJjn5;Y=Mu@U zfU=P(UJ1^5d3lL{bM}ySyB%$7wOSl|U6hyp!p<4);rEAg@;&TL*Ze&o^5}&w=)H8hbih;;i(UUqYqw4VpKP UNWJB8*Z=?k07*qoM6N<$g8Cs#1poj5 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/armor/titanium_1.png b/assets/hbm/textures/armor/titanium_1.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0cdc5c55faccd0b8c57bb0876eb6c2e677ce52 GIT binary patch literal 1136 zcmV-$1dscPP)<{97<5HgbW?9;ba!ELWdLwtX>N2bZe?^J zG%heMIczh2P5=M{?ny*JRA@u(*w=0&F$@Jz|NldP^xk{#1xdamzoW$wbPX>yNS?-a zCQE=A6-r{cq+}1iqxJRmvaqmFc6N5k>gsCQ+}tet`}<{MW22aBV*Mq?etdik`R?wn zTwh<8+uPgfj3(A!iUZ!?-^=~|ePs?fIXS5)Xkz`PI6%a2Zf>gaXJ=>S{QSJk&d&DV z0c&e(L&LAGuFA#5MUDRD<>l|F0gQcoe5|<-1z6kIuPK7bdkDY~VeI($xc?4N=|vhV zdh&i{Wu^9)mzRIO0~Qw-i#*5f`Mtfpdc850p?G(9w;H^?yI5 zrKP1ZH#b+m_AqW=-<&rU4rEyFczF%#x$YR5dE*M7>VJBAT8m)}%lfQSBc7g~s)KTi zVC$_*I&oA}V{#-alzVu1sI17P+KW;m>YMSvKd(XS)rAyCZN@@W=Bw<&3t~o3K*P@sNr#L>}FMUC+$)_;Nw>64qI4gaU9CveR> zU>YDxm%KrwQycD%z*RBx1>-h6F;b}AMglXIU!#hb-1VJ?x4&yyF{RH~UXr5k!GgcL zCdWaLCv7hnPqwMh z9Z`buaR8;GfPa&tFoQWlRJ;iFMQK#t9)3(|KR-X$wIZzV1$lUQSl4I2peOU$f3)A! z?2afwaYi{X27{vazqa21`Wyth`QenbA>)UbF>`q}s`MhP?F{>mo)?&BonNW?evomX z^-az0h(WKfuQhU%3j`^IMS{YHN_@?d3lfzNk8-VB2_iqpG z8Uans?ubzoetCJR3Q4~Dl9IDL;6xA0c?LEb3 zu)n&}hNq82CfA2Z1lE`X7|EEVL!xDTY*Ffr27^Csc!PP+=O<|Z0000N2bZe?^J zG%heMIczh2P5=M`ElET{RA@u(*H><;F%Sh{_Wy_iAwVdh7bWy2R>Ec+eU=?v-S`h2?S?()9CSI2?xC?G_G) zL*R@w{XCe@=izd>L@`d&&jaa?_+&B(vLQ|XT{N4`&}y~9U@!=upP#Y*r_*U9-|zQh z8T5L+X!HL59)+#`piiV@9v8^0R;#exZX;Q`an`%tZrE%#VX;`mF=w#<`ud7`I_7bK z1Va1$K9Uo8vZK-HXJ7v5%-$LFEcr!|HL{D1d1Yms_y50#I6qzUej$po10iHM z2?>PF=`TcI$quk4gOnJDvzJxubN{i2ZTigpLX?onJtI3rM&$n~@+%{2ILO-Rbc)%; zDY*wBp8HRJh00#LT=By}Z;C1rt33 zJgTe~DWM4fGIVyX literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/fusion_center_top.png b/assets/hbm/textures/blocks/fusion_center_top.png index 8604c6cefd8e68ee6550a85d98a3be2234a2833b..c947dc1ceb056da970266e39872220439704bfd1 100644 GIT binary patch delta 391 zcmV;20eJqr1KI&Y4#EKyC`y2lQzw5|Nklv zRI4_$-ocD(VtLn$RWBb0n?T>#pnizQ<5(7lR5TM<|b#WtsJCfdrTm=t2`KrEQz0c|Deg zJ$X8i=R-k{qN*r8bzmllS*=#LhL1D(y4d~9c3zIe);Ca^9HGmf$-JKm(L6M zu~?9&dUPyrCzBXdJ?>jcmj;wG+36gR#FTHwalGGfH$%�)D52K6Pw^7|Ks4&GjG$ zR25tsR35`o5JEI*_AUXcI6>qgX&46PriJ-eYGVL(rv&tvW3di37={MvCo$Mo675Li lhcHwg4qe$~#jC_|{0+e1{5ia1{;dE2002ovPDHLkV1k>Kwafqj delta 359 zcmV-t0hs>U1H1!}Bnkm@Qb$4nuFf3kks%uj!vFvd!vV){sAQ2wCx0zTL_t(IPmPkx zYK1TqMe}276*Vd-IxmV2+DV~MU)R6yN_JYLaG`4uk2$ZMlNf95%fBJm@EL}o>$<-0 zF@D#os*0juEz1%^WLaj?G_C8JU3?1qxS>tF#9%~GWQa(TB#z_d#@mf)n#OUYE-|DT zy0mSJq}001`Y~IkB}-#yAI3* zG3&a1dNe4VGSv65Lyn=?pULn`sMfIM36kAJ4R z4_`M_o`&E$XiDgl;~B(I-rY3MgB*}5c=t#f!x0D}nzZni07O;XAo7rOo+ootVa}=< z0Cimgdi=EnhYW_HApH`99VF3?G!BFzc{sFcTzG}G_8TI#``RxIS26$q002ovPDHLk FV1fsmpoahe diff --git a/assets/hbm/textures/blocks/red_cable_icon.png b/assets/hbm/textures/blocks/red_cable_icon.png index f21400da6d6f85538c0a8e0f8ccdfc2424e821ad..8d3fd85c09ad3278e2e0efd3c367fab7e49677e1 100644 GIT binary patch delta 163 zcmV;U09^l!0{;P!B#|)~3c>&Y4#EKyC`y2lQ!jsyI|{@w3`BK}ZBir`F$VvRn|Od9+zTXbGW)A9sq a#swSvy$`ZoX5eOEVDNPHb6Mw<&;$T3W=dfI diff --git a/assets/hbm/textures/items/alloy_axe.png b/assets/hbm/textures/items/alloy_axe.png new file mode 100644 index 0000000000000000000000000000000000000000..8f93acb17fd16c665a90f3c9f3c6625ee975f697 GIT binary patch literal 253 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J7152|xG`1?XimEcsZ!nNebL4u{X@sK~be;_lFsX%M)7b#U tM~p{jO`Pj1Bw;bzu_0%+CNmEY!xWy>_4E2G1Axw8@O1TaS?83{1OVLUQZxVn literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_boots.png b/assets/hbm/textures/items/alloy_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..936b79d3e80524657f14b06855eab87d2b19a8f7 GIT binary patch literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JKFq)k;U=TXIk}ZY7gQ0EVAqj>^ gUb|9fE&~Ig%kx+M(~nuk1hkvM)78&qol`;+0EvT3AOHXW literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_helmet.png b/assets/hbm/textures/items/alloy_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..0dc8807862e78a2d9c49a889cbd41b9ae8ef4a58 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33Jy~vFo|En>?aQay_?v*c5K3onl~SX7KX~k>&Sp RdIq$N!PC{xWt~$(696V4M_2#= literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_legs.png b/assets/hbm/textures/items/alloy_legs.png new file mode 100644 index 0000000000000000000000000000000000000000..98cbc9c16de0bee04a343becc0240deea232d015 GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JWWySP=@x7frVUgd L)z4*}Q$iB}j^aRw literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_pickaxe.png b/assets/hbm/textures/items/alloy_pickaxe.png new file mode 100644 index 0000000000000000000000000000000000000000..c8695f0ec67d9593bd0ada49a28e06add45369a4 GIT binary patch literal 271 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JwI1@0R;ZHyD#0z@90Fibytf?<7HjF~XYksCeY6LO7H8yXoIg4yy!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J3+%Rai zdkROe{IrKz*JM80M1@U}3Yjn~>i2BNq_|t6+!C8&4wq^0d;Z8{T`)VYwQ=FSMQYm_ zvi>_29X_y0#O3Vmh2JE(?Dal85o-v)#KYaAI`_4{;cZ6#LKWvT8+I=Nx{1Nl)z4*} HQ$iB})O%Z% literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_shovel.png b/assets/hbm/textures/items/alloy_shovel.png new file mode 100644 index 0000000000000000000000000000000000000000..6c76bcd7d51e032ee1d91b53636c339b26848163 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JlcR;RP=fJuBw3PU#A#!fSaSmO@0lMDhMOoW&E z6sPa{RnKdgcgm#shf4Oj50jg-)i@X2_7PIJoi>53D_1Srn5Thf;R%LIjLggo`uuSw U*&J&Y5)KL literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/alloy_sword.png b/assets/hbm/textures/items/alloy_sword.png new file mode 100644 index 0000000000000000000000000000000000000000..45bfe69276b39375ea2532a27734a3df71ef22a9 GIT binary patch literal 273 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JZU)BjeW P(-=Hm{an^LB{Ts51Or=t literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke1.png b/assets/hbm/textures/items/b_smoke1.png new file mode 100644 index 0000000000000000000000000000000000000000..cb231250ed8b22814a7df338f8dc10c5bfd1f319 GIT binary patch literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*si%u$ zh(>U-1DkQa{ty1tMH?Q!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*wx^3@ zh(>U-1Do6Sx&NJK-eB}$>^K(SGfBnI)xfbtisyru67w9P8;s1%3!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*x~Gd{ zh(>U-0EfY-nU;Xul`feMQv$Gf)eIr>mdK II;Vst0F7uXlmGw# literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke4.png b/assets/hbm/textures/items/b_smoke4.png new file mode 100644 index 0000000000000000000000000000000000000000..2d9c8dc3ce7b82ed420f68d80b0ee6a490826665 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*s;7%% zh(>U-0{@xE|M^oD8D}VT99zY}k}xSkRFON$J}#C5YGCkm^>bP0 Hl+XkKYThf; literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke5.png b/assets/hbm/textures/items/b_smoke5.png new file mode 100644 index 0000000000000000000000000000000000000000..18973a46136367b2cf107a19e33fefa9f10418e3 GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*yr+v} zh(>Vo0;Lnre(^6)%vr;*jA6CX423x16+99W42QzF7Y1)hYX&N1@O1TaS?83{1OSgI BDvAIA literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke6.png b/assets/hbm/textures/items/b_smoke6.png new file mode 100644 index 0000000000000000000000000000000000000000..d0b9ff88b274f6ca169cc265d9a24db32bb09dc5 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*jHioZ yh(>Vo0>%xgzxh)iG8nK%hzectWj=6#f#LcxR?aWq|2zSzWAJqKb6Mw<&;$Sg>nd&l literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke7.png b/assets/hbm/textures/items/b_smoke7.png new file mode 100644 index 0000000000000000000000000000000000000000..5637b1118d7bd158a9c2ba271ba6c130c578c315 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYYzr;B5V sMsTtO$AS}omdKI;Vst06z*QiU0rr literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/b_smoke8.png b/assets/hbm/textures/items/b_smoke8.png new file mode 100644 index 0000000000000000000000000000000000000000..caa2ddf3ff8a4b6368d49edafc247e14dfa80414 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqEa{HEjtmSN`?>!lvI6;>1s;*b z3=DibL6~s|oA`d9phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io@I`4ogYw*kf)1d nh(>U-gv1AVFMgo|2N)P8mNPPROvvU1$})Jm`njxgN@xNAFZv^M literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/inf_coolant.png b/assets/hbm/textures/items/inf_coolant.png new file mode 100644 index 0000000000000000000000000000000000000000..f4f6982477b737498d7658e97c2a7670991929ad GIT binary patch literal 276 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C{f}XQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXPIMM=Lb|X$skJ@uzy&tyrY48>7GN{hR0TYdAy)=uXA(9pF^=t5{sYAiGO1$ zDJGJ=_EJ>!%+_6uMlOdWlyBTTA)sKjB>8lM*p?;p7tPIVXiAmTSnA<*omtgZpZUkc z?H`!lvI6;>1s;*b z3=DjSK$uZf!>a)(C{f}XQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXPIMM=Lb|X$4D&4`x4BShWcpr7@v%BPeYzBi@VNgzyI)~CH?sCqgo=HJf8=o(U z4$xWZvG!}KNEX`(0nX%}gmmTDh8Gk1e3_#zOseZDYh&b^mZ|Vu=X#}0z@^V74f2)T z`ddT}=;kzhz9#&}_rqQh1s;Jn+nD6$Gd6UHH)W(=;E`%;P!}rS+1DcNP|7?_!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J z5DWk01>!&WkES&K&&|zE;7M|B>0nRj<>KP{9~%?nVaBjdvd#9a%m4HrCk1mkZZJ$Z zt8g|cDJdb!xo@^fc!R--v=rwBkB%_T*z9Q5Y%)28!J{~Rm(`}to|kzxOKQ2;EQm0k owYig>Io+6JLauRYLn9-@m)^*u`*-!O1v-Jj)78&qol`;+0OaFRKL7v# literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_boots.png b/assets/hbm/textures/items/steel_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..cb339a409325a8f694a3c39e23d4d0f122eea39f GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JG&vl?7%ugkWtbqbNos+?A%Pi8IkP4*zopr0MV^Rw*UYD literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_helmet.png b/assets/hbm/textures/items/steel_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..ef5dac44da5aca5f0ff9d44b0b199104adab81bc GIT binary patch literal 221 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33Jz2WW?r!cA41d}VnB4#OU#jOKuR;dLCdL~k!nq6_ z%{L5qrYN0d5YRn-ys@eAQi%z}36=9eXG$_H*`TSkrqYFpjg7(nO3N(sgR>U_tzqzV L^>bP0l+XkKB$`BM literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_hoe.png b/assets/hbm/textures/items/steel_hoe.png new file mode 100644 index 0000000000000000000000000000000000000000..3c4633a00c083a74c60ac8a9ea24f9aaa8aa9496 GIT binary patch literal 225 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J>p}PB~!~|!D9mcVL z_qWNIzg)+7lc$LFgn+_y6Xt|-ZMS@OrFG5eO)<_)xRPeXaMLW9O+tdfmenU$<$0Vj P&?*K`S3j3^P6!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33Jr9_`$dT*AsjuGAbNBF++tpVOE1v zg3mNY2fY|Yy+R&?EQYB(44Q}17|aTJ7=k#KOfZyqAhet*A%THmmdoKg>p6{#fc7wW My85}Sb4q9e08KGJ`Tzg` literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_pickaxe.png b/assets/hbm/textures/items/steel_pickaxe.png new file mode 100644 index 0000000000000000000000000000000000000000..a2358d23c18a6b87df8650208429508090655747 GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J{+BAc z<09F>kC2W*r!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33JtbA>tth=^7v=3?g3rH;OXk;vd$@?2>{%t BUT6RS literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_shovel.png b/assets/hbm/textures/items/steel_shovel.png new file mode 100644 index 0000000000000000000000000000000000000000..1a2a1e91df64738311388ba7735209d19d42c60b GIT binary patch literal 228 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J~yl&EGiilu7xr z)&H+gc)ZNVIHbemtYlr$iCLZO5jkpd6LO6`n2(xGUMtDw&=!!w@Uo$iks&rD)TG+v RS2@r&22WQ%mvv4FO#rw-L)`!X literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/steel_sword.png b/assets/hbm/textures/items/steel_sword.png new file mode 100644 index 0000000000000000000000000000000000000000..edf914a1e843aa0ce49087f3b6fb12d1882fe06a GIT binary patch literal 258 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J3&P`Rxsbca!@aU207ZsIxyPla(x#D^2>~sO)7u7CJ?Gnl-v!Wk6 ztlAo+c~tI#(Y|E|>{Dd+@U1mJ&A=a-+E{c>=HrP4>@ob;UQFC}?B@2F>y$Tkbkt4u zSGfP&DSMVnLZ!+f<{gnIXT5Lul`gJi&7^1}wzGkcQGMo5pj#L`UHx3vIVCg!0QV|f A1ONa4 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/titanium_axe.png b/assets/hbm/textures/items/titanium_axe.png new file mode 100644 index 0000000000000000000000000000000000000000..bc5c2ee4def1b421f9f90a1350128933c5c3455f GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+K$tP>S|=w^P@=>&q9iy!t)x7$D3zfgF*C13FE6!3!9>qM&oalj&JU=j&eO#) z#KJ#$0rw2k>}&M`ZAG5U3cb_yVwsXB@iu1O+mLwp|6=$4Nofq5(j>l_2>+e`P~Clw zq5-pmS+j|L=T8PpK%GW-R#NX@QiD;luj}BF!p3?FezWQ`tV%dV!?<>0uI|G vwOni#L>O<{?8(HOZp<+u*EqGIk&!|9ZQu6CoL|=fUBck$>gTe~DWM4fwFpp9 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/titanium_boots.png b/assets/hbm/textures/items/titanium_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..322bbfe2b5989f4559b32b513deba1f41324ca4d GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J*HGBmX*NH_Qz zUu0`A=-@r9;Hx6Zu;}RzivWW&0>2~}f?TFCDliza%vPEp;doYA$iRSsVUy!yj!BDe RivsOp@O1TaS?83{1OQ~>N5lXC literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/titanium_hoe.png b/assets/hbm/textures/items/titanium_hoe.png new file mode 100644 index 0000000000000000000000000000000000000000..09df9ec2e94188396686cdff96b672fa1c7640cc GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J`6S#wnK4V+M@r)f1Y?4^Q3Wb zlrLNT|N4Z-YIjW)W;?E9kaXHqo^X!srq8srt~tD$CAC~^B(~1vaoBct3L_gEgPBwA V_g!_?M}XEbc)I$ztaD0e0svkLOOXHo literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/titanium_legs.png b/assets/hbm/textures/items/titanium_legs.png new file mode 100644 index 0000000000000000000000000000000000000000..25bc3c4440112c719c0fe7fe86cfd09af0f66946 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J;(y7yq847~ZIUgC zY^BRq|Gz%rvD!UT1BOkK&y*%K1|&XWICE2B_Qbu+Q;+dG%$hit_cLE0o5F1#QKfqf zC9@M5mP}kAzTqYhvqJ9zjboV%db1}o#+}`fqsGy(QBq&wcG@WhW@d)B{PU0I&obE$ PbQ*)FtDnm{r-UW|e==WJ literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/titanium_plate.png b/assets/hbm/textures/items/titanium_plate.png new file mode 100644 index 0000000000000000000000000000000000000000..45a33e06df0558bf602959421100d22f15031c66 GIT binary patch literal 263 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33J5+wF$-NbdTsVOJDe!aG-6$mcPBZ zvQO_US5rE&@1*vG^~uvxrDh$F-qZF$K`nS&LHu<84JYfbP2=}_!OiiIO>67-*nBho R&p^j9c)I$ztaD0e0szS0V^shE literal 0 HcmV?d00001 diff --git a/com/hbm/blocks/BlockOre.java b/com/hbm/blocks/BlockOre.java index 6fc98c535..e55eb50d1 100644 --- a/com/hbm/blocks/BlockOre.java +++ b/com/hbm/blocks/BlockOre.java @@ -13,8 +13,10 @@ import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; +import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityMooshroom; +import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; import net.minecraft.item.Item; @@ -111,7 +113,13 @@ public class BlockOre extends Block { entity.setDead(); if(!p_149724_1_.isRemote) p_149724_1_.spawnEntityInWorld(creep); - } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) { + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(p_149724_1_); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!p_149724_1_.isRemote) + p_149724_1_.spawnEntityInWorld(creep); + } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 3 * 60 * 20, 2)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.id, 30 * 20, 0)); } @@ -141,7 +149,13 @@ public class BlockOre extends Block { if(!p_149724_1_.isRemote) p_149724_1_.spawnEntityInWorld(creep); entity.setDead(); - } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) { + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(p_149724_1_); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!p_149724_1_.isRemote) + p_149724_1_.spawnEntityInWorld(creep); + } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 10 * 60 * 20, 4)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 4 * 60 * 20, 2)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.id, 3 * 60 * 20, 2)); @@ -164,7 +178,13 @@ public class BlockOre extends Block { if(!p_149724_1_.isRemote) p_149724_1_.spawnEntityInWorld(creep); entity.setDead(); - } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) { + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(p_149724_1_); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!p_149724_1_.isRemote) + p_149724_1_.spawnEntityInWorld(creep); + } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 30 * 20, 1)); } } diff --git a/com/hbm/blocks/ModBlocks.java b/com/hbm/blocks/ModBlocks.java index b05697871..2cb2d09fb 100644 --- a/com/hbm/blocks/ModBlocks.java +++ b/com/hbm/blocks/ModBlocks.java @@ -69,6 +69,8 @@ public class ModBlocks { public static Block brick_concrete; public static Block brick_obsidian; public static Block brick_light; + + public static Block block_meteor; public static Block tape_recorder; public static Block steel_poles; @@ -285,6 +287,8 @@ public class ModBlocks { brick_obsidian = new BlockGeneric(Material.rock).setBlockName("brick_obsidian").setCreativeTab(MainRegistry.tabBlock).setLightOpacity(15).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":brick_obsidian"); brick_light = new BlockGeneric(Material.rock).setBlockName("brick_light").setCreativeTab(MainRegistry.tabBlock).setLightOpacity(15).setHardness(15.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":brick_light"); + block_meteor = new BlockGeneric(Material.rock).setBlockName("block_meteor").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_meteor"); + tape_recorder = new DecoTapeRecorder(Material.rock).setBlockName("tape_recorder").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_tape_recorder"); steel_poles = new DecoSteelPoles(Material.rock).setBlockName("steel_poles").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel_poles"); pole_top = new DecoPoleTop(Material.rock).setBlockName("pole_top").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_pole_top"); @@ -469,6 +473,7 @@ public class ModBlocks { GameRegistry.registerBlock(brick_light, brick_light.getUnlocalizedName()); //Decoration Blocks + GameRegistry.registerBlock(block_meteor, block_meteor.getUnlocalizedName()); GameRegistry.registerBlock(tape_recorder, tape_recorder.getUnlocalizedName()); GameRegistry.registerBlock(steel_poles, steel_poles.getUnlocalizedName()); GameRegistry.registerBlock(pole_top, pole_top.getUnlocalizedName()); diff --git a/com/hbm/blocks/TestTicker.java b/com/hbm/blocks/TestTicker.java index b0bc62bb9..302fd3f72 100644 --- a/com/hbm/blocks/TestTicker.java +++ b/com/hbm/blocks/TestTicker.java @@ -15,7 +15,6 @@ public class TestTicker extends Block { @Override public void updateTick(World world, int x, int y, int z, Random rand) { - { if(world.getBlock(x + 1, y, z) != ModBlocks.test_ticker) { world.setBlock(x + 1, y, z, ModBlocks.test_ticker); @@ -42,5 +41,4 @@ public class TestTicker extends Block { } } } - } diff --git a/com/hbm/blocks/TileEntityCable.java b/com/hbm/blocks/TileEntityCable.java index de5c56669..f2efbb0ac 100644 --- a/com/hbm/blocks/TileEntityCable.java +++ b/com/hbm/blocks/TileEntityCable.java @@ -3,8 +3,9 @@ package com.hbm.blocks; import java.util.ArrayList; import java.util.List; -import com.hbm.calc.PowerNet; +import com.hbm.calc.UnionOfTileEntitiesAndBooleans; import com.hbm.interfaces.IConductor; +import com.hbm.lib.Library; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection; @@ -14,8 +15,7 @@ public class TileEntityCable extends TileEntity implements IConductor { public ForgeDirection[] connections = new ForgeDirection[6]; - //Won't work as intended, shit. - //public List globalPowerNet = new ArrayList(); + public List uoteab = new ArrayList(); public TileEntityCable() { @@ -26,23 +26,22 @@ public class TileEntityCable extends TileEntity implements IConductor { } public void updateConnections() { - TileEntity e0 = this.worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(e0 instanceof IConductor) connections[0] = ForgeDirection.UP; + if(Library.checkConnectables(this.worldObj, xCoord, yCoord + 1, zCoord)) connections[0] = ForgeDirection.UP; else connections[0] = null; - TileEntity e1 = this.worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(e1 instanceof IConductor) connections[1] = ForgeDirection.DOWN; + + if(Library.checkConnectables(this.worldObj, xCoord, yCoord - 1, zCoord)) connections[1] = ForgeDirection.DOWN; else connections[1] = null; - TileEntity e2 = this.worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(e2 instanceof IConductor) connections[2] = ForgeDirection.NORTH; + + if(Library.checkConnectables(this.worldObj, xCoord, yCoord, zCoord - 1)) connections[2] = ForgeDirection.NORTH; else connections[2] = null; - TileEntity e3 = this.worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(e3 instanceof IConductor) connections[3] = ForgeDirection.EAST; + + if(Library.checkConnectables(this.worldObj, xCoord + 1, yCoord, zCoord)) connections[3] = ForgeDirection.EAST; else connections[3] = null; - TileEntity e4 = this.worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(e4 instanceof IConductor) connections[4] = ForgeDirection.SOUTH; + + if(Library.checkConnectables(this.worldObj, xCoord, yCoord, zCoord + 1)) connections[4] = ForgeDirection.SOUTH; else connections[4] = null; - TileEntity e5 = this.worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(e5 instanceof IConductor) connections[5] = ForgeDirection.WEST; + + if(Library.checkConnectables(this.worldObj, xCoord - 1, yCoord, zCoord)) connections[5] = ForgeDirection.WEST; else connections[5] = null; } diff --git a/com/hbm/blocks/TileEntityLaunchPad.java b/com/hbm/blocks/TileEntityLaunchPad.java index ea7d3ee2f..198ffbf34 100644 --- a/com/hbm/blocks/TileEntityLaunchPad.java +++ b/com/hbm/blocks/TileEntityLaunchPad.java @@ -1,6 +1,7 @@ package com.hbm.blocks; import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; @@ -13,7 +14,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; -public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, IConductor { +public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, IConsumer { public ItemStack slots[]; @@ -220,6 +221,12 @@ public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, slots[2].setItemDamage(slots[2].getItemDamage() + 1); } + if(power + 100 <= maxPower && slots[2] != null && slots[2].getItem() == ModItems.energy_core && slots[2].getItemDamage() < 5000) + { + power += 100; + slots[2].setItemDamage(slots[2].getItemDamage() + 1); + } + this.preState = this.state; if(this.slots[0] == null || @@ -419,4 +426,21 @@ public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, return this.worldObj; } + @Override + public void setPower(int i) { + power = i; + + } + + @Override + public int getPower() { + return power; + + } + + @Override + public int getMaxPower() { + return maxPower; + } + } diff --git a/com/hbm/blocks/TileEntityMachineBattery.java b/com/hbm/blocks/TileEntityMachineBattery.java index 14b781c97..afec96190 100644 --- a/com/hbm/blocks/TileEntityMachineBattery.java +++ b/com/hbm/blocks/TileEntityMachineBattery.java @@ -1,6 +1,8 @@ package com.hbm.blocks; import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; +import com.hbm.interfaces.ISource; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; @@ -11,7 +13,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; -public class TileEntityMachineBattery extends TileEntity implements ISidedInventory, IConductor { +public class TileEntityMachineBattery extends TileEntity implements ISidedInventory, IConsumer, ISource { private ItemStack slots[]; @@ -184,279 +186,8 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent public void updateEntity() { if(this.conducts) { - /*//Electric Furnace - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } + //Empty. } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Wire - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Deuterium - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Batteries - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - }*/ - - - //Energy distributing algorithm V2.1 - TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - TileEntity entity; - - for(int i = 0; i < 6; i++) - { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery || - entity instanceof TileEntityLaunchPad) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= TileEntityMachineElectricFurnace.maxPower) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityWireCoated && TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= TileEntityMachineDeuterium.maxPower) - { - ((TileEntityMachineDeuterium)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower && !((TileEntityMachineBattery)entity).conducts) - { - ((TileEntityMachineBattery)entity).power += 100; - this.power -= 100; - } - } - } - } if(power - 100 >= 0 && slots[1] != null && slots[1].getItem() == ModItems.battery_generic && slots[1].getItemDamage() > 0) { @@ -484,7 +215,7 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent slots[1].setItemDamage(slots[1].getItemDamage() - 1); } - if(/*power + 100 <= maxPower && */slots[0] != null && slots[0].getItem() == ModItems.battery_creative) + if(slots[0] != null && slots[0].getItem() == ModItems.battery_creative) { power = maxPower; } @@ -512,6 +243,39 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent power += 100; slots[0].setItemDamage(slots[0].getItemDamage() + 1); } + + if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.energy_core && slots[0].getItemDamage() < 5000) + { + power += 100; + slots[0].setItemDamage(slots[0].getItemDamage() + 1); + } + } + + @Override + public void setPower(int i) { + power = i; + + } + + @Override + public int getPower() { + return power; + + } + + @Override + public void ffgeua(int x, int y, int z, boolean newTact) { + + } + + @Override + public void ffgeuaInit() { + + } + + @Override + public int getMaxPower() { + return maxPower; } } diff --git a/com/hbm/blocks/TileEntityMachineCoal.java b/com/hbm/blocks/TileEntityMachineCoal.java index 2c1300614..3a1b937fa 100644 --- a/com/hbm/blocks/TileEntityMachineCoal.java +++ b/com/hbm/blocks/TileEntityMachineCoal.java @@ -10,10 +10,17 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; -import com.hbm.interfaces.IConductor; -import com.hbm.items.ModItems; +import java.util.ArrayList; +import java.util.List; -public class TileEntityMachineCoal extends TileEntity implements ISidedInventory, IConductor { +import com.hbm.calc.UnionOfTileEntitiesAndBooleans; +import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; +import com.hbm.interfaces.ISource; +import com.hbm.items.ModItems; +import com.hbm.lib.Library; + +public class TileEntityMachineCoal extends TileEntity implements ISidedInventory, ISource { private ItemStack slots[]; @@ -22,6 +29,8 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory public int burnTime; public static final int maxPower = 10000; public static final int maxWater = 10000; + public int age = 0; + public List list = new ArrayList(); private static final int[] slots_top = new int[] {1}; private static final int[] slots_bottom = new int[] {2}; @@ -192,6 +201,15 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory @Override public void updateEntity() { + age++; + if(age >= 20) + { + age = 0; + } + + if(age == 9 || age == 19) + ffgeuaInit(); + //Water if(slots[0] != null && slots[0].getItem() == Items.water_bucket && this.water + 2500 <= maxWater) { @@ -229,6 +247,10 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory this.slots[0] = this.slots[0].getItem().getContainerItem(this.slots[0]); } } + if(slots[0] != null && slots[0].getItem() == ModItems.inf_water) + { + this.water = this.maxWater; + } //Battery Item if(power - 100 >= 0 && slots[2] != null && slots[2].getItem() == ModItems.battery_generic && slots[2].getItemDamage() > 0) @@ -256,239 +278,6 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory power -= 100; slots[2].setItemDamage(slots[2].getItemDamage() - 1); } - - //Electric Furnace - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= TileEntityMachineElectricFurnace.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Wire - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && this.power - 100 >= 0) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } - } - - //Deuterium - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= TileEntityMachineDeuterium.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Batteries - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof LaunchPad) - { - TileEntityLaunchPad entity = (TileEntityLaunchPad) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } boolean flag = this.burnTime > 0; boolean flag1 = false; @@ -562,4 +351,84 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory return false; } + + @Override + public void ffgeua(int x, int y, int z, boolean newTact) { + TileEntity tileentity = this.worldObj.getTileEntity(x, y, z); + if(tileentity instanceof IConductor) + { + if(tileentity instanceof TileEntityCable) + { + if(Library.checkUnionList(((TileEntityCable)tileentity).uoteab, this)) + { + for(int i = 0; i < ((TileEntityCable)tileentity).uoteab.size(); i++) + { + if(((TileEntityCable)tileentity).uoteab.get(i).source == this) + { + if(((TileEntityCable)tileentity).uoteab.get(i).ticked != newTact) + { + ((TileEntityCable)tileentity).uoteab.get(i).ticked = newTact; + ffgeua(x, y + 1, z, getTact()); + ffgeua(x, y - 1, z, getTact()); + ffgeua(x - 1, y, z, getTact()); + ffgeua(x + 1, y, z, getTact()); + ffgeua(x, y, z - 1, getTact()); + ffgeua(x, y, z + 1, getTact()); + } + } + } + } else { + ((TileEntityCable)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact)); + } + } + if(tileentity instanceof TileEntityWireCoated) + { + if(Library.checkUnionList(((TileEntityWireCoated)tileentity).uoteab, this)) + { + for(int i = 0; i < ((TileEntityWireCoated)tileentity).uoteab.size(); i++) + { + if(((TileEntityWireCoated)tileentity).uoteab.get(i).source == this) + { + if(((TileEntityWireCoated)tileentity).uoteab.get(i).ticked != newTact) + { + ((TileEntityWireCoated)tileentity).uoteab.get(i).ticked = newTact; + ffgeua(x, y + 1, z, getTact()); + ffgeua(x, y - 1, z, getTact()); + ffgeua(x - 1, y, z, getTact()); + ffgeua(x + 1, y, z, getTact()); + ffgeua(x, y, z - 1, getTact()); + ffgeua(x, y, z + 1, getTact()); + } + } + } + } else { + ((TileEntityWireCoated)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact)); + } + } + } + + if(tileentity instanceof IConsumer && newTact) + { + list.add((IConsumer)tileentity); + } + } + + @Override + public void ffgeuaInit() { + ffgeua(this.xCoord, this.yCoord + 1, this.zCoord, getTact()); + ffgeua(this.xCoord, this.yCoord - 1, this.zCoord, getTact()); + ffgeua(this.xCoord - 1, this.yCoord, this.zCoord, getTact()); + ffgeua(this.xCoord + 1, this.yCoord, this.zCoord, getTact()); + ffgeua(this.xCoord, this.yCoord, this.zCoord - 1, getTact()); + ffgeua(this.xCoord, this.yCoord, this.zCoord + 1, getTact()); + } + + public boolean getTact() { + if(age >= 0 && age < 10) + { + return true; + } + + return false; + } } diff --git a/com/hbm/blocks/TileEntityMachineDeuterium.java b/com/hbm/blocks/TileEntityMachineDeuterium.java index 5c3db714c..adb41d664 100644 --- a/com/hbm/blocks/TileEntityMachineDeuterium.java +++ b/com/hbm/blocks/TileEntityMachineDeuterium.java @@ -1,6 +1,7 @@ package com.hbm.blocks; import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; @@ -11,7 +12,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; -public class TileEntityMachineDeuterium extends TileEntity implements ISidedInventory, IConductor { +public class TileEntityMachineDeuterium extends TileEntity implements ISidedInventory, IConsumer { private ItemStack slots[]; @@ -252,6 +253,10 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve slots[2] = null; } } + if(slots[2] != null && slots[2].getItem() == ModItems.inf_sulfur) + { + sulfur = maxFill; + } if(slots[1] != null && slots[1].getItem() == Items.water_bucket && water + 250 <= maxFill) { @@ -293,6 +298,11 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve } } + if(slots[1] != null && slots[1].getItem() == ModItems.inf_water) + { + water = maxFill; + } + if(/*power + 100 <= maxPower && */slots[0] != null && slots[0].getItem() == ModItems.battery_creative) { power = maxPower; @@ -322,6 +332,12 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve slots[0].setItemDamage(slots[0].getItemDamage() + 1); } + if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.energy_core && slots[0].getItemDamage() < 5000) + { + power += 100; + slots[0].setItemDamage(slots[0].getItemDamage() + 1); + } + if(canProcess()) { process(); @@ -329,4 +345,21 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve process = 0; } } + + @Override + public void setPower(int i) { + power = i; + + } + + @Override + public int getPower() { + return power; + + } + + @Override + public int getMaxPower() { + return maxPower; + } } diff --git a/com/hbm/blocks/TileEntityMachineElectricFurnace.java b/com/hbm/blocks/TileEntityMachineElectricFurnace.java index cc3ca3fbe..47f4960c3 100644 --- a/com/hbm/blocks/TileEntityMachineElectricFurnace.java +++ b/com/hbm/blocks/TileEntityMachineElectricFurnace.java @@ -1,6 +1,7 @@ package com.hbm.blocks; import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; @@ -12,7 +13,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; -public class TileEntityMachineElectricFurnace extends TileEntity implements ISidedInventory, IConductor { +public class TileEntityMachineElectricFurnace extends TileEntity implements ISidedInventory, IConsumer { private ItemStack slots[]; @@ -320,9 +321,32 @@ public class TileEntityMachineElectricFurnace extends TileEntity implements ISid slots[0].setItemDamage(slots[0].getItemDamage() + 1); } + if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.energy_core && slots[0].getItemDamage() < 5000) + { + power += 100; + slots[0].setItemDamage(slots[0].getItemDamage() + 1); + } + if(flag1) { this.markDirty(); } } + + @Override + public void setPower(int i) { + power = i; + + } + + @Override + public int getPower() { + return power; + + } + + @Override + public int getMaxPower() { + return maxPower; + } } diff --git a/com/hbm/blocks/TileEntityMachineGenerator.java b/com/hbm/blocks/TileEntityMachineGenerator.java index 10aeb5331..644aa4c59 100644 --- a/com/hbm/blocks/TileEntityMachineGenerator.java +++ b/com/hbm/blocks/TileEntityMachineGenerator.java @@ -4,6 +4,7 @@ import java.util.Random; import com.hbm.explosion.ExplosionNukeGeneric; import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.ISource; import com.hbm.items.ItemFuelRod; import com.hbm.items.ModItems; @@ -16,7 +17,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; -public class TileEntityMachineGenerator extends TileEntity implements ISidedInventory, IConductor { +public class TileEntityMachineGenerator extends TileEntity implements ISidedInventory, ISource { private ItemStack slots[]; @@ -267,6 +268,10 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve this.slots[9] = this.slots[9].getItem().getContainerItem(this.slots[9]); } } + if(slots[9] != null && slots[9].getItem() == ModItems.inf_water) + { + this.water = this.waterMax; + } if(slots[10] != null && slots[10].getItem() == ModItems.rod_coolant && this.cool + 250000 <= coolMax) { @@ -298,6 +303,11 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve } } + if(slots[10] != null && slots[10].getItem() == ModItems.inf_coolant) + { + this.cool = coolMax; + } + for(int i = 0; i < 9; i++) @@ -494,278 +504,6 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve this.isLoaded = true; } } - /*//Electric Furnace - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Wire - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Deuterium - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Batteries - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - }*/ - - - //Energy distributing algorithm V2.1 - TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - TileEntity entity; - - for(int i = 0; i < 6; i++) - { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery || - entity instanceof TileEntityLaunchPad) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= TileEntityMachineElectricFurnace.maxPower) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityWireCoated && TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower) - { - TileEntityWireCoated.power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= TileEntityMachineDeuterium.maxPower) - { - ((TileEntityMachineDeuterium)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower && !((TileEntityMachineBattery)entity).conducts) - { - ((TileEntityMachineBattery)entity).power += 100; - this.power -= 100; - } - } - } //Batteries if(power - 100 >= 0 && slots[11] != null && slots[11].getItem() == ModItems.battery_generic && slots[11].getItemDamage() > 0) @@ -826,4 +564,14 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve ExplosionNukeGeneric.waste(worldObj, this.xCoord, this.yCoord, this.zCoord, 35); worldObj.setBlock(this.xCoord, this.yCoord, this.zCoord, Blocks.flowing_lava); } + + @Override + public void ffgeua(int x, int y, int z, boolean newTact) { + + } + + @Override + public void ffgeuaInit() { + + } } \ No newline at end of file diff --git a/com/hbm/blocks/TileEntityReactorMultiblock.java b/com/hbm/blocks/TileEntityReactorMultiblock.java index 431667134..e80e95220 100644 --- a/com/hbm/blocks/TileEntityReactorMultiblock.java +++ b/com/hbm/blocks/TileEntityReactorMultiblock.java @@ -249,6 +249,10 @@ public class TileEntityReactorMultiblock extends TileEntity implements ISidedInv this.slots[30] = this.slots[30].getItem().getContainerItem(this.slots[30]); } } + if(slots[30] != null && slots[30].getItem() == ModItems.inf_water) + { + this.water = waterMax; + } if(slots[31] != null && slots[31].getItem() == ModItems.rod_coolant && this.cool + 250000 <= coolMax) { @@ -280,6 +284,11 @@ public class TileEntityReactorMultiblock extends TileEntity implements ISidedInv } } + if(slots[31] != null && slots[31].getItem() == ModItems.inf_coolant) + { + this.cool = coolMax; + } + if(slots[33] != null && slots[33].getItem() == ModItems.fuse) { diff --git a/com/hbm/blocks/TileEntityWireCoated.java b/com/hbm/blocks/TileEntityWireCoated.java index 34705749f..a2fd7f8bd 100644 --- a/com/hbm/blocks/TileEntityWireCoated.java +++ b/com/hbm/blocks/TileEntityWireCoated.java @@ -1,385 +1,16 @@ package com.hbm.blocks; +import java.util.ArrayList; +import java.util.List; + +import com.hbm.calc.UnionOfTileEntitiesAndBooleans; +import com.hbm.interfaces.IConductor; import com.hbm.lib.Library; import net.minecraft.tileentity.TileEntity; -public class TileEntityWireCoated extends TileEntity { +public class TileEntityWireCoated extends TileEntity implements IConductor { - public static int power; - public static final int maxPower = 600; - - @Override - public void updateEntity() { - - //Energy distribution algorithm - /*//Electric Furnace - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineElectricFurnace) - { - TileEntityMachineElectricFurnace entity = (TileEntityMachineElectricFurnace) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Wire - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof WireCoated) - { - TileEntityWireCoated entity = (TileEntityWireCoated) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Deuterium - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineDeuterium) - { - TileEntityMachineDeuterium entity = (TileEntityMachineDeuterium) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - - //Batteries - if(worldObj.getBlock(xCoord + 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord - 1, yCoord, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord + 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord + 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - } - if(worldObj.getBlock(xCoord, yCoord, zCoord - 1) instanceof MachineBattery) - { - TileEntityMachineBattery entity = (TileEntityMachineBattery) worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - if(entity.power + 100 <= entity.maxPower && this.power - 100 >= 0) - { - entity.power += 100; - this.power -= 100; - } - }*/ - - /*if(power == 600) { - TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - TileEntity entity; - - for(int i = 0; i < 6; i++) - { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= ((TileEntityMachineElectricFurnace)entity).maxPower) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - } else - if(entity instanceof TileEntityWireCoated && ((TileEntityWireCoated)entity).power + 100 <= ((TileEntityWireCoated)entity).maxPower) - { - ((TileEntityWireCoated)entity).power += 100; - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= ((TileEntityMachineDeuterium)entity).maxPower) - { - ((TileEntityMachineDeuterium)entity).power += 100; - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower) - { - ((TileEntityMachineBattery)entity).power += 100; - } - this.power -= 100; - } - } - }*/ - - //Energy distributing algorithm V2.0 - /*TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - if(power == 600 && power != 0) { - - TileEntity entity; - - for(int i = 0; i < 6; i++) - { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= ((TileEntityMachineElectricFurnace)entity).maxPower) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityWireCoated && ((TileEntityWireCoated)entity).power + 100 <= ((TileEntityWireCoated)entity).maxPower) - { - ((TileEntityWireCoated)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= ((TileEntityMachineDeuterium)entity).maxPower) - { - ((TileEntityMachineDeuterium)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower && !((TileEntityMachineBattery)entity).conducts) - { - ((TileEntityMachineBattery)entity).power += 100; - this.power -= 100; - } - } - } - }*/ - - /*//Energy distributing algorithm V2.1 - TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - TileEntity entity; - - for(int i = 0; i < 6; i++) - { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= ((TileEntityMachineElectricFurnace)entity).maxPower) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityWireCoated && ((TileEntityWireCoated)entity).power + 100 <= ((TileEntityWireCoated)entity).maxPower) - { - ((TileEntityWireCoated)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= ((TileEntityMachineDeuterium)entity).maxPower) - { - ((TileEntityMachineDeuterium)entity).power += 100; - this.power -= 100; - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower && !((TileEntityMachineBattery)entity).conducts) - { - ((TileEntityMachineBattery)entity).power += 100; - this.power -= 100; - } - } - }*/ - - //Library.distributePower(this.worldObj, this.xCoord, this.yCoord, this.zCoord); - } + public List uoteab = new ArrayList(); } diff --git a/com/hbm/blocks/TileEntityYellowBarrel.java b/com/hbm/blocks/TileEntityYellowBarrel.java index c94615862..db6e4bc8c 100644 --- a/com/hbm/blocks/TileEntityYellowBarrel.java +++ b/com/hbm/blocks/TileEntityYellowBarrel.java @@ -9,8 +9,10 @@ import com.hbm.lib.Library; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; +import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityMooshroom; +import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; @@ -74,7 +76,13 @@ public class TileEntityYellowBarrel extends TileEntity { if(!worldObj.isRemote) worldObj.spawnEntityInWorld(creep); entity.setDead(); - } else if(entity instanceof EntityLivingBase && !(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(this.worldObj); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!this.worldObj.isRemote) + this.worldObj.spawnEntityInWorld(creep); + } else if(entity instanceof EntityLivingBase && !(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.getId(), 2 * 60 * 20, 2)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.getId(), 20, 4)); diff --git a/com/hbm/blocks/WasteEarth.java b/com/hbm/blocks/WasteEarth.java index a6c23aa5e..1810635cf 100644 --- a/com/hbm/blocks/WasteEarth.java +++ b/com/hbm/blocks/WasteEarth.java @@ -16,8 +16,10 @@ import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; +import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityMooshroom; +import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -94,7 +96,13 @@ public class WasteEarth extends Block { if(!p_149724_1_.isRemote) p_149724_1_.spawnEntityInWorld(creep); entity.setDead(); - } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) { + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(p_149724_1_); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!p_149724_1_.isRemote) + p_149724_1_.spawnEntityInWorld(creep); + } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 2 * 60 * 20, 2)); } } @@ -128,7 +136,13 @@ public class WasteEarth extends Block { if(!p_149724_1_.isRemote) p_149724_1_.spawnEntityInWorld(creep); entity.setDead(); - } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom)) { + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(p_149724_1_); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!p_149724_1_.isRemote) + p_149724_1_.spawnEntityInWorld(creep); + } else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom && !(entity instanceof EntityZombie))) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 3 * 60 * 20, 4)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.id, 1 * 60 * 20, 2)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.digSlowdown.id, 2 * 60 * 20, 2)); diff --git a/com/hbm/calc/PowerNet.java b/com/hbm/calc/PowerNet.java deleted file mode 100644 index 3959ed2a1..000000000 --- a/com/hbm/calc/PowerNet.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.hbm.calc; - -public class PowerNet { - public int id; - public int requestedPower; - public int buffer; -} diff --git a/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java b/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java new file mode 100644 index 000000000..bcc49680b --- /dev/null +++ b/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java @@ -0,0 +1,15 @@ +package com.hbm.calc; + +import net.minecraft.tileentity.TileEntity; + +public class UnionOfTileEntitiesAndBooleans { + + public UnionOfTileEntitiesAndBooleans(TileEntity tileentity, boolean bool) + { + source = tileentity; + ticked = bool; + } + + public TileEntity source; + public boolean ticked = false; +} diff --git a/com/hbm/entity/EntityGrenadeNuclear.java b/com/hbm/entity/EntityGrenadeNuclear.java index 1267c73cd..a172aa54d 100644 --- a/com/hbm/entity/EntityGrenadeNuclear.java +++ b/com/hbm/entity/EntityGrenadeNuclear.java @@ -1,6 +1,7 @@ package com.hbm.entity; import com.hbm.explosion.ExplosionParticle; +import com.hbm.explosion.ExplosionParticleB; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; @@ -53,7 +54,12 @@ public class EntityGrenadeNuclear extends EntityThrowable entity0.coefficient = 10.0F; this.worldObj.spawnEntityInWorld(entity0); - ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 2, (int)this.posZ); + if(rand.nextInt(100) == 0) + { + ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 2, (int)this.posZ); + } else { + ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 2, (int)this.posZ); + } } } } diff --git a/com/hbm/entity/EntityMiniNuke.java b/com/hbm/entity/EntityMiniNuke.java index d2d8e67a2..abe2a838d 100644 --- a/com/hbm/entity/EntityMiniNuke.java +++ b/com/hbm/entity/EntityMiniNuke.java @@ -3,6 +3,7 @@ package com.hbm.entity; import java.util.List; import com.hbm.explosion.ExplosionParticle; +import com.hbm.explosion.ExplosionParticleB; import com.hbm.items.ModItems; import cpw.mods.fml.relauncher.Side; @@ -245,7 +246,12 @@ public class EntityMiniNuke extends Entity implements IProjectile entity0.coefficient = 10.0F; this.worldObj.spawnEntityInWorld(entity0); - ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + if(rand.nextInt(100) == 0) + { + ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } else { + ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } } this.setDead(); } @@ -384,7 +390,12 @@ public class EntityMiniNuke extends Entity implements IProjectile entity0.coefficient = 10.0F; this.worldObj.spawnEntityInWorld(entity0); - ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + if(rand.nextInt(100) == 0) + { + ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } else { + ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } } this.setDead(); } diff --git a/com/hbm/entity/EntityNuclearCreeper.java b/com/hbm/entity/EntityNuclearCreeper.java index 94bcb111e..0fbd3edc4 100644 --- a/com/hbm/entity/EntityNuclearCreeper.java +++ b/com/hbm/entity/EntityNuclearCreeper.java @@ -4,6 +4,7 @@ import java.util.HashSet; import java.util.List; import com.hbm.explosion.ExplosionParticle; +import com.hbm.explosion.ExplosionParticleB; import com.hbm.items.ModItems; import com.hbm.lib.Library; @@ -23,9 +24,11 @@ import net.minecraft.entity.effect.EntityLightningBolt; import net.minecraft.entity.monster.EntityCreeper; import net.minecraft.entity.monster.EntityMob; import net.minecraft.entity.monster.EntitySkeleton; +import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityMooshroom; import net.minecraft.entity.passive.EntityOcelot; +import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityArrow; import net.minecraft.init.Blocks; @@ -247,7 +250,13 @@ public class EntityNuclearCreeper extends EntityMob { if(!worldObj.isRemote) worldObj.spawnEntityInWorld(creep); entity.setDead(); - } else if(entity instanceof EntityLivingBase && !(entity instanceof EntityNuclearCreeper)) + } else if(entity instanceof EntityVillager) { + EntityZombie creep = new EntityZombie(this.worldObj); + creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch); + entity.setDead(); + if(!this.worldObj.isRemote) + this.worldObj.spawnEntityInWorld(creep); + } else if(entity instanceof EntityLivingBase && !(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.getId(), 5 * 20, 1)); ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.moveSlowdown.getId(), 15 * 20, 0)); @@ -439,7 +448,12 @@ public class EntityNuclearCreeper extends EntityMob { entity2.posZ = this.posZ; this.worldObj.spawnEntityInWorld(entity2); } else { - ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + if(rand.nextInt(100) == 0) + { + ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } else { + ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ); + } } this.setDead(); diff --git a/com/hbm/explosion/ExplosionParticleB.java b/com/hbm/explosion/ExplosionParticleB.java new file mode 100644 index 000000000..b07981a35 --- /dev/null +++ b/com/hbm/explosion/ExplosionParticleB.java @@ -0,0 +1,183 @@ +package com.hbm.explosion; + +import com.hbm.particles.EntityBSmokeFX; + +import net.minecraft.init.Blocks; +import net.minecraft.world.World; + +public class ExplosionParticleB { + + public static void spawnMush(World world, int x, int y, int z) + { + x -= 6; + z -= 6; + + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 0, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 0, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 0, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 0, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 0, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 0, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 0, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 0, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 0, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 0, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 0, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 0, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 0, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 0, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 0, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 0, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 0, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 0, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 0, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 0, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 0, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 0, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 0, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 0, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 1, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 1, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 1, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 1, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 1, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 1, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 1, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 1, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 1, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 1, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 1, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 1, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 1, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 2, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 2, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 2, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 2, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 2, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 2, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 2, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 2, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 4, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 4, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 4, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 4, z + 7,0.0, 0.0, 0.0)); + y += 2; + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 4, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 4, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 4, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 4, z + 7,0.0, 0.0, 0.0)); + y--; + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 7, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 7, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 7, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 7, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 8, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 9, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 9, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 9, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 9, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 9, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 9, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 9, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 9, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 9, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 10, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 10, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 10, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 10, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 10, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 10, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 10, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 10, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 10, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 11, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 11, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 11, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 11, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 11, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 11, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 11, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 11, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 10,0.0, 0.0, 0.0)); + // + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + // + y -= 2; + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 2 - 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2 - 3, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10 + 3, y + 12, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 12, z + 10 + 3,0.0, 0.0, 0.0)); + y += 2; + // + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 13, z + 0,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 0, y + 13, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 12, y + 13, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 13, z + 12,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 14, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 14, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 14, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 14, z + 3,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 14, z + 5,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 5, y + 14, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 7, y + 14, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 14, z + 7,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 14, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 14, z + 9,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 3, y + 14, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 9, y + 14, z + 10,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 15, z + 2,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 15, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 15, z + 4,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 2, y + 15, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 10, y + 15, z + 6,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 4, y + 15, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 8, y + 15, z + 8,0.0, 0.0, 0.0)); + world.spawnEntityInWorld(new EntityBSmokeFX(world, x + 6, y + 15, z + 10,0.0, 0.0, 0.0)); + + + + } + +} diff --git a/com/hbm/interfaces/IConductor.java b/com/hbm/interfaces/IConductor.java index 5fd452844..5890ff824 100644 --- a/com/hbm/interfaces/IConductor.java +++ b/com/hbm/interfaces/IConductor.java @@ -1,5 +1,5 @@ package com.hbm.interfaces; public interface IConductor { - //This interface just exists for cables to connect onto machines + } diff --git a/com/hbm/interfaces/IConsumer.java b/com/hbm/interfaces/IConsumer.java new file mode 100644 index 000000000..1f82067c5 --- /dev/null +++ b/com/hbm/interfaces/IConsumer.java @@ -0,0 +1,10 @@ +package com.hbm.interfaces; + +public interface IConsumer { + + void setPower(int i); + + int getPower(); + + int getMaxPower(); +} diff --git a/com/hbm/interfaces/ISource.java b/com/hbm/interfaces/ISource.java new file mode 100644 index 000000000..998bc6280 --- /dev/null +++ b/com/hbm/interfaces/ISource.java @@ -0,0 +1,8 @@ +package com.hbm.interfaces; + +public interface ISource { + + void ffgeuaInit(); + + void ffgeua(int x, int y, int z, boolean newTact); +} diff --git a/com/hbm/items/ItemCell.java b/com/hbm/items/ItemCell.java index 91a9e6f69..61561b429 100644 --- a/com/hbm/items/ItemCell.java +++ b/com/hbm/items/ItemCell.java @@ -6,6 +6,7 @@ import com.hbm.blocks.BlockCrashedBomb; import com.hbm.blocks.LaunchPad; import com.hbm.entity.EntityNukeExplosionAdvanced; import com.hbm.explosion.ExplosionParticle; +import com.hbm.explosion.ExplosionParticleB; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; @@ -34,7 +35,7 @@ public class ItemCell extends Item { entity0.coefficient = 10.0F; world.spawnEntityInWorld(entity0); - ExplosionParticle.spawnMush(world, p_77648_4_, p_77648_5_ - 3, p_77648_6_); + ExplosionParticleB.spawnMush(world, p_77648_4_, p_77648_5_ - 3, p_77648_6_); } } else if(i < 90) { diff --git a/com/hbm/items/ItemCustomLore.java b/com/hbm/items/ItemCustomLore.java index 66a23d1e8..ac5e07914 100644 --- a/com/hbm/items/ItemCustomLore.java +++ b/com/hbm/items/ItemCustomLore.java @@ -22,7 +22,7 @@ public class ItemCustomLore extends Item { } if(this == ModItems.flame_politics) { - list.add("Dolan Tremp 4 president!"); + list.add("Donald Drumpf 4 president!"); } if(this == ModItems.flame_opinion) { diff --git a/com/hbm/items/ModArmor.java b/com/hbm/items/ModArmor.java new file mode 100644 index 000000000..c5ab2f508 --- /dev/null +++ b/com/hbm/items/ModArmor.java @@ -0,0 +1,39 @@ +package com.hbm.items; + +import com.hbm.lib.RefStrings; + +import net.minecraft.entity.Entity; +import net.minecraft.item.ItemArmor; +import net.minecraft.item.ItemStack; + +public class ModArmor extends ItemArmor { + + public ModArmor(ArmorMaterial p_i45325_1_, int p_i45325_2_, int p_i45325_3_) { + super(p_i45325_1_, p_i45325_2_, p_i45325_3_); + } + + @Override + public String getArmorTexture(ItemStack stack, Entity entity, int slot, String layer) { + if(stack.getItem().equals(ModItems.steel_helmet) || stack.getItem().equals(ModItems.steel_plate) || stack.getItem().equals(ModItems.steel_boots)) { + return (RefStrings.MODID + ":textures/armor/steel_1.png"); + } + if(stack.getItem().equals(ModItems.steel_legs)) { + return (RefStrings.MODID + ":textures/armor/steel_2.png"); + } + if(stack.getItem().equals(ModItems.titanium_helmet) || stack.getItem().equals(ModItems.titanium_plate) || stack.getItem().equals(ModItems.titanium_boots)) { + return (RefStrings.MODID + ":textures/armor/titanium_1.png"); + } + if(stack.getItem().equals(ModItems.titanium_legs)) { + return (RefStrings.MODID + ":textures/armor/titanium_2.png"); + } + if(stack.getItem().equals(ModItems.alloy_helmet) || stack.getItem().equals(ModItems.alloy_plate) || stack.getItem().equals(ModItems.alloy_boots)) { + return (RefStrings.MODID + ":textures/armor/alloy_1.png"); + } + if(stack.getItem().equals(ModItems.alloy_legs)) { + return (RefStrings.MODID + ":textures/armor/alloy_2.png"); + } + + else return null; + } + +} diff --git a/com/hbm/items/ModAxe.java b/com/hbm/items/ModAxe.java new file mode 100644 index 000000000..b759f8abe --- /dev/null +++ b/com/hbm/items/ModAxe.java @@ -0,0 +1,12 @@ +package com.hbm.items; + +import net.minecraft.item.ItemAxe; + +public class ModAxe extends ItemAxe { + + protected ModAxe(ToolMaterial p_i45327_1_) { + super(p_i45327_1_); + // TODO Auto-generated constructor stub + } + +} diff --git a/com/hbm/items/ModHoe.java b/com/hbm/items/ModHoe.java new file mode 100644 index 000000000..3c2d06eb8 --- /dev/null +++ b/com/hbm/items/ModHoe.java @@ -0,0 +1,12 @@ +package com.hbm.items; + +import net.minecraft.item.ItemHoe; + +public class ModHoe extends ItemHoe { + + public ModHoe(ToolMaterial p_i45343_1_) { + super(p_i45343_1_); + // TODO Auto-generated constructor stub + } + +} diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 2890369d7..9e2d41df9 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -165,8 +165,10 @@ public class ModItems { public static Item cell_antimatter; public static Item cell_anti_schrabidium; public static Item inf_water; + public static Item inf_coolant; public static Item inf_deuterium; public static Item inf_tritium; + public static Item inf_sulfur; public static Item canister_empty; public static Item canister_fuel; @@ -396,17 +398,44 @@ public class ModItems { public static Item t45_boots; public static Item chainsaw; - + public static Item schrabidium_helmet; public static Item schrabidium_plate; public static Item schrabidium_legs; public static Item schrabidium_boots; - + public static Item titanium_helmet; + public static Item titanium_plate; + public static Item titanium_legs; + public static Item titanium_boots; + public static Item steel_helmet; + public static Item steel_plate; + public static Item steel_legs; + public static Item steel_boots; + public static Item alloy_helmet; + public static Item alloy_plate; + public static Item alloy_legs; + public static Item alloy_boots; + public static Item schrabidium_sword; public static Item schrabidium_pickaxe; public static Item schrabidium_axe; public static Item schrabidium_shovel; public static Item schrabidium_hoe; + public static Item titanium_sword; + public static Item titanium_pickaxe; + public static Item titanium_axe; + public static Item titanium_shovel; + public static Item titanium_hoe; + public static Item steel_sword; + public static Item steel_pickaxe; + public static Item steel_axe; + public static Item steel_shovel; + public static Item steel_hoe; + public static Item alloy_sword; + public static Item alloy_pickaxe; + public static Item alloy_axe; + public static Item alloy_shovel; + public static Item alloy_hoe; public static Item mask_of_infamy; @@ -435,7 +464,7 @@ public class ModItems { public static Item euphemium_kit; public static Item igniter; - + public static Item smoke1; public static Item smoke2; public static Item smoke3; @@ -444,6 +473,14 @@ public class ModItems { public static Item smoke6; public static Item smoke7; public static Item smoke8; + public static Item b_smoke1; + public static Item b_smoke2; + public static Item b_smoke3; + public static Item b_smoke4; + public static Item b_smoke5; + public static Item b_smoke6; + public static Item b_smoke7; + public static Item b_smoke8; public static void initializeItem() { @@ -604,8 +641,10 @@ public class ModItems { cell_sas3 = new ItemCustomLore().setUnlocalizedName("cell_sas3").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_sas3"); cell_anti_schrabidium = new Item().setUnlocalizedName("cell_anti_schrabidium").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_anti_schrabidium"); inf_water = new Item().setUnlocalizedName("inf_water").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_water"); + inf_coolant = new Item().setUnlocalizedName("inf_coolant").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_coolant"); inf_deuterium = new Item().setUnlocalizedName("inf_deuterium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_deuterium"); inf_tritium = new Item().setUnlocalizedName("inf_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_tritium"); + inf_sulfur = new Item().setUnlocalizedName("inf_sulfur").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_sulfur"); canister_empty = new ItemCustomLore().setUnlocalizedName("canister_empty").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":canister_empty"); canister_fuel = new ItemCustomLore().setUnlocalizedName("canister_fuel").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_fuel"); @@ -846,17 +885,44 @@ public class ModItems { t45_boots = new ArmorT45(MainRegistry.enumArmorMaterialT45, 2, 3).setUnlocalizedName("t45_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":t45_boots"); chainsaw = new ItemModAxe(MainRegistry.enumToolMaterialChainsaw).setUnlocalizedName("chainsaw").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":chainsaw"); - + schrabidium_helmet = new ArmorSchrabidium(MainRegistry.enumArmorMaterialSchrabidium, 7, 0).setUnlocalizedName("schrabidium_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_helmet"); schrabidium_plate = new ArmorSchrabidium(MainRegistry.enumArmorMaterialSchrabidium, 7, 1).setUnlocalizedName("schrabidium_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_plate"); schrabidium_legs = new ArmorSchrabidium(MainRegistry.enumArmorMaterialSchrabidium, 7, 2).setUnlocalizedName("schrabidium_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_legs"); schrabidium_boots = new ArmorSchrabidium(MainRegistry.enumArmorMaterialSchrabidium, 7, 3).setUnlocalizedName("schrabidium_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_boots"); + titanium_helmet = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 0).setUnlocalizedName("titanium_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_helmet"); + titanium_plate = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 1).setUnlocalizedName("titanium_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_plate"); + titanium_legs = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 2).setUnlocalizedName("titanium_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_legs"); + titanium_boots = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 3).setUnlocalizedName("titanium_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_boots"); + steel_helmet = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 0).setUnlocalizedName("steel_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_helmet"); + steel_plate = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 1).setUnlocalizedName("steel_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_plate"); + steel_legs = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 2).setUnlocalizedName("steel_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_legs"); + steel_boots = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 3).setUnlocalizedName("steel_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_boots"); + alloy_helmet = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 0).setUnlocalizedName("alloy_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_helmet"); + alloy_plate = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 1).setUnlocalizedName("alloy_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_plate"); + alloy_legs = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 2).setUnlocalizedName("alloy_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_legs"); + alloy_boots = new ModArmor(MainRegistry.enumArmorMaterialSchrabidium, 7, 3).setUnlocalizedName("alloy_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_boots"); schrabidium_sword = new SwordSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_sword"); schrabidium_pickaxe = new PickaxeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_pickaxe"); schrabidium_axe = new AxeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_axe"); schrabidium_shovel = new SpadeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_shovel"); schrabidium_hoe = new HoeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_hoe"); + titanium_sword = new ModSword(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_sword"); + titanium_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_pickaxe"); + titanium_axe = new ModAxe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_axe"); + titanium_shovel = new ModSpade(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_shovel"); + titanium_hoe = new ModHoe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_hoe"); + steel_sword = new ModSword(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_sword"); + steel_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_pickaxe"); + steel_axe = new ModAxe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_axe"); + steel_shovel = new ModSpade(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_shovel"); + steel_hoe = new ModHoe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_hoe"); + alloy_sword = new ModSword(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_sword"); + alloy_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_pickaxe"); + alloy_axe = new ModAxe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_axe"); + alloy_shovel = new ModSpade(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_shovel"); + alloy_hoe = new ModHoe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_hoe"); mask_of_infamy = new MaskOfInfamy(ArmorMaterial.IRON, 8, 0).setUnlocalizedName("mask_of_infamy").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mask_of_infamy"); @@ -873,6 +939,14 @@ public class ModItems { smoke6 = new Item().setUnlocalizedName("smoke6").setTextureName(RefStrings.MODID + ":smoke6"); smoke7 = new Item().setUnlocalizedName("smoke7").setTextureName(RefStrings.MODID + ":smoke7"); smoke8 = new Item().setUnlocalizedName("smoke8").setTextureName(RefStrings.MODID + ":smoke8"); + b_smoke1 = new Item().setUnlocalizedName("b_smoke1").setTextureName(RefStrings.MODID + ":b_smoke1"); + b_smoke2 = new Item().setUnlocalizedName("b_smoke2").setTextureName(RefStrings.MODID + ":b_smoke2"); + b_smoke3 = new Item().setUnlocalizedName("b_smoke3").setTextureName(RefStrings.MODID + ":b_smoke3"); + b_smoke4 = new Item().setUnlocalizedName("b_smoke4").setTextureName(RefStrings.MODID + ":b_smoke4"); + b_smoke5 = new Item().setUnlocalizedName("b_smoke5").setTextureName(RefStrings.MODID + ":b_smoke5"); + b_smoke6 = new Item().setUnlocalizedName("b_smoke6").setTextureName(RefStrings.MODID + ":b_smoke6"); + b_smoke7 = new Item().setUnlocalizedName("b_smoke7").setTextureName(RefStrings.MODID + ":b_smoke7"); + b_smoke8 = new Item().setUnlocalizedName("b_smoke8").setTextureName(RefStrings.MODID + ":b_smoke8"); } private static void registerItem() { @@ -1057,8 +1131,10 @@ public class ModItems { //Infinite Tanks GameRegistry.registerItem(inf_water, inf_water.getUnlocalizedName()); + GameRegistry.registerItem(inf_coolant, inf_coolant.getUnlocalizedName()); GameRegistry.registerItem(inf_deuterium, inf_deuterium.getUnlocalizedName()); GameRegistry.registerItem(inf_tritium, inf_tritium.getUnlocalizedName()); + GameRegistry.registerItem(inf_sulfur, inf_sulfur.getUnlocalizedName()); //Canisters GameRegistry.registerItem(canister_empty, canister_empty.getUnlocalizedName()); @@ -1233,6 +1309,21 @@ public class ModItems { GameRegistry.registerItem(schrabidium_axe, schrabidium_axe.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_shovel, schrabidium_shovel.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_hoe, schrabidium_hoe.getUnlocalizedName()); + GameRegistry.registerItem(steel_sword, steel_sword.getUnlocalizedName()); + GameRegistry.registerItem(steel_pickaxe, steel_pickaxe.getUnlocalizedName()); + GameRegistry.registerItem(steel_axe, steel_axe.getUnlocalizedName()); + GameRegistry.registerItem(steel_shovel, steel_shovel.getUnlocalizedName()); + GameRegistry.registerItem(steel_hoe, steel_hoe.getUnlocalizedName()); + GameRegistry.registerItem(titanium_sword, titanium_sword.getUnlocalizedName()); + GameRegistry.registerItem(titanium_pickaxe, titanium_pickaxe.getUnlocalizedName()); + GameRegistry.registerItem(titanium_axe, titanium_axe.getUnlocalizedName()); + GameRegistry.registerItem(titanium_shovel, titanium_shovel.getUnlocalizedName()); + GameRegistry.registerItem(titanium_hoe, titanium_hoe.getUnlocalizedName()); + GameRegistry.registerItem(alloy_sword, alloy_sword.getUnlocalizedName()); + GameRegistry.registerItem(alloy_pickaxe, alloy_pickaxe.getUnlocalizedName()); + GameRegistry.registerItem(alloy_axe, alloy_axe.getUnlocalizedName()); + GameRegistry.registerItem(alloy_shovel, alloy_shovel.getUnlocalizedName()); + GameRegistry.registerItem(alloy_hoe, alloy_hoe.getUnlocalizedName()); //Syringes GameRegistry.registerItem(syringe_empty, syringe_empty.getUnlocalizedName()); @@ -1289,6 +1380,19 @@ public class ModItems { GameRegistry.registerItem(goggles, goggles.getUnlocalizedName()); GameRegistry.registerItem(gas_mask, gas_mask.getUnlocalizedName()); + GameRegistry.registerItem(steel_helmet, steel_helmet.getUnlocalizedName()); + GameRegistry.registerItem(steel_plate, steel_plate.getUnlocalizedName()); + GameRegistry.registerItem(steel_legs, steel_legs.getUnlocalizedName()); + GameRegistry.registerItem(steel_boots, steel_boots.getUnlocalizedName()); + GameRegistry.registerItem(titanium_helmet, titanium_helmet.getUnlocalizedName()); + GameRegistry.registerItem(titanium_plate, titanium_plate.getUnlocalizedName()); + GameRegistry.registerItem(titanium_legs, titanium_legs.getUnlocalizedName()); + GameRegistry.registerItem(titanium_boots, titanium_boots.getUnlocalizedName()); + GameRegistry.registerItem(alloy_helmet, alloy_helmet.getUnlocalizedName()); + GameRegistry.registerItem(alloy_plate, alloy_plate.getUnlocalizedName()); + GameRegistry.registerItem(alloy_legs, alloy_legs.getUnlocalizedName()); + GameRegistry.registerItem(alloy_boots, alloy_boots.getUnlocalizedName()); + //Power Armor GameRegistry.registerItem(t45_helmet, t45_helmet.getUnlocalizedName()); GameRegistry.registerItem(t45_plate, t45_plate.getUnlocalizedName()); @@ -1347,5 +1451,13 @@ public class ModItems { GameRegistry.registerItem(smoke6, smoke6.getUnlocalizedName()); GameRegistry.registerItem(smoke7, smoke7.getUnlocalizedName()); GameRegistry.registerItem(smoke8, smoke8.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke1, b_smoke1.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke2, b_smoke2.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke3, b_smoke3.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke4, b_smoke4.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke5, b_smoke5.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke6, b_smoke6.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke7, b_smoke7.getUnlocalizedName()); + GameRegistry.registerItem(b_smoke8, b_smoke8.getUnlocalizedName()); } } diff --git a/com/hbm/items/ModPickaxe.java b/com/hbm/items/ModPickaxe.java new file mode 100644 index 000000000..7e4876f27 --- /dev/null +++ b/com/hbm/items/ModPickaxe.java @@ -0,0 +1,12 @@ +package com.hbm.items; + +import net.minecraft.item.ItemPickaxe; + +public class ModPickaxe extends ItemPickaxe { + + protected ModPickaxe(ToolMaterial p_i45347_1_) { + super(p_i45347_1_); + // TODO Auto-generated constructor stub + } + +} diff --git a/com/hbm/items/ModSpade.java b/com/hbm/items/ModSpade.java new file mode 100644 index 000000000..275750e40 --- /dev/null +++ b/com/hbm/items/ModSpade.java @@ -0,0 +1,12 @@ +package com.hbm.items; + +import net.minecraft.item.ItemSpade; + +public class ModSpade extends ItemSpade { + + public ModSpade(ToolMaterial p_i45353_1_) { + super(p_i45353_1_); + // TODO Auto-generated constructor stub + } + +} diff --git a/com/hbm/items/ModSword.java b/com/hbm/items/ModSword.java new file mode 100644 index 000000000..4e5a4e7c1 --- /dev/null +++ b/com/hbm/items/ModSword.java @@ -0,0 +1,12 @@ +package com.hbm.items; + +import net.minecraft.item.ItemSword; + +public class ModSword extends ItemSword { + + public ModSword(ToolMaterial p_i45356_1_) { + super(p_i45356_1_); + // TODO Auto-generated constructor stub + } + +} diff --git a/com/hbm/lib/Library.java b/com/hbm/lib/Library.java index 1db0f7f14..bdc198a44 100644 --- a/com/hbm/lib/Library.java +++ b/com/hbm/lib/Library.java @@ -1,10 +1,17 @@ package com.hbm.lib; +import java.util.List; + +import com.hbm.blocks.ModBlocks; import com.hbm.blocks.TileEntityLaunchPad; import com.hbm.blocks.TileEntityMachineBattery; import com.hbm.blocks.TileEntityMachineDeuterium; import com.hbm.blocks.TileEntityMachineElectricFurnace; import com.hbm.blocks.TileEntityWireCoated; +import com.hbm.calc.UnionOfTileEntitiesAndBooleans; +import com.hbm.interfaces.IConductor; +import com.hbm.interfaces.IConsumer; +import com.hbm.interfaces.ISource; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; @@ -170,70 +177,30 @@ public class Library { return false; } - public static void distributePower(World worldObj, int xCoord, int yCoord, int zCoord) { - TileEntity entity0 = worldObj.getTileEntity(xCoord + 1, yCoord, zCoord); - TileEntity entity1 = worldObj.getTileEntity(xCoord - 1, yCoord, zCoord); - TileEntity entity2 = worldObj.getTileEntity(xCoord, yCoord + 1, zCoord); - TileEntity entity3 = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord); - TileEntity entity4 = worldObj.getTileEntity(xCoord, yCoord, zCoord + 1); - TileEntity entity5 = worldObj.getTileEntity(xCoord, yCoord, zCoord - 1); - - TileEntity that = worldObj.getTileEntity(xCoord, yCoord, zCoord); - - TileEntity entity; - - for(int i = 0; i < 6; i++) + public static boolean checkConnectables(World world, int x, int y, int z) + { + TileEntity tileentity = world.getTileEntity(x, y, z); + if((tileentity != null && (tileentity instanceof IConductor || + tileentity instanceof IConsumer || + tileentity instanceof ISource)) || + world.getBlock(x, y, z) == ModBlocks.fusion_center || + world.getBlock(x, y, z) == ModBlocks.reactor_conductor) { - entity = entity0; - if(i == 1) entity = entity1; - if(i == 2) entity = entity2; - if(i == 3) entity = entity3; - if(i == 4) entity = entity4; - if(i == 5) entity = entity5; - - if(entity instanceof TileEntityMachineElectricFurnace || - entity instanceof TileEntityWireCoated || - entity instanceof TileEntityMachineDeuterium || - entity instanceof TileEntityMachineBattery || - entity instanceof TileEntityLaunchPad) - { - if(entity instanceof TileEntityMachineElectricFurnace && ((TileEntityMachineElectricFurnace)entity).power + 100 <= TileEntityMachineElectricFurnace.maxPower && TileEntityWireCoated.power >= 100) - { - ((TileEntityMachineElectricFurnace)entity).power += 100; - if(that instanceof TileEntityWireCoated) { - TileEntityWireCoated.power -= 100; - } - } else - if(entity instanceof TileEntityWireCoated && TileEntityWireCoated.power + 100 <= TileEntityWireCoated.maxPower && TileEntityWireCoated.power >= 100) - { - TileEntityWireCoated.power += 100; - if(that instanceof TileEntityWireCoated) { - TileEntityWireCoated.power -= 100; - } - } else - if(entity instanceof TileEntityMachineDeuterium && ((TileEntityMachineDeuterium)entity).power + 100 <= TileEntityMachineDeuterium.maxPower && TileEntityWireCoated.power >= 100) - { - ((TileEntityMachineDeuterium)entity).power += 100; - if(that instanceof TileEntityWireCoated) { - TileEntityWireCoated.power -= 100; - } - } else - if(entity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)entity).power + 100 <= ((TileEntityMachineBattery)entity).maxPower && !((TileEntityMachineBattery)entity).conducts && TileEntityWireCoated.power >= 100) - { - ((TileEntityMachineBattery)entity).power += 100; - if(that instanceof TileEntityWireCoated) { - TileEntityWireCoated.power -= 100; - } - } else - if(entity instanceof TileEntityLaunchPad && ((TileEntityLaunchPad)entity).power + 100 <= ((TileEntityLaunchPad)entity).maxPower && TileEntityWireCoated.power >= 100) - { - ((TileEntityLaunchPad)entity).power += 100; - if(that instanceof TileEntityWireCoated) { - TileEntityWireCoated.power -= 100; - } - } - } + return true; } + return false; } + public static boolean checkUnionList(List list, TileEntity that) { + + for(UnionOfTileEntitiesAndBooleans union : list) + { + if(union.source == that) + { + return true; + } + } + + return false; + } } diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index c7023ab9e..63612a6fe 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -74,9 +74,11 @@ import com.hbm.entity.EntityRocket; import com.hbm.entity.EntitySchrab; import com.hbm.entity.EntityTestMissile; import com.hbm.items.ModItems; +import com.hbm.particles.EntityBSmokeFX; import com.hbm.particles.EntitySmokeFX; import com.hbm.render.ItemRenderRevolverCursed; import com.hbm.render.ItemRenderRevolverIron; +import com.hbm.render.BSmokeRenderer; import com.hbm.render.ItemRenderBigSword; import com.hbm.render.ItemRenderDecoBlock; import com.hbm.render.ItemRenderFatMan; @@ -269,6 +271,7 @@ public class ClientProxy extends ServerProxy RenderingRegistry.registerEntityRenderingHandler(EntityNuclearCreeper.class, new RenderNuclearCreeper()); RenderingRegistry.registerEntityRenderingHandler(EntitySmokeFX.class, new ModEffectRenderer(ModItems.nuclear_waste)); + RenderingRegistry.registerEntityRenderingHandler(EntityBSmokeFX.class, new BSmokeRenderer(ModItems.nuclear_waste)); RenderingRegistry.addNewArmourRendererPrefix("5"); RenderingRegistry.addNewArmourRendererPrefix("6"); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index 6ea7e6e95..c553a6cc7 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -106,6 +106,7 @@ import com.hbm.entity.EntityTestMissile; import com.hbm.items.ModItems; import com.hbm.lib.HbmWorld; import com.hbm.lib.RefStrings; +import com.hbm.particles.EntityBSmokeFX; import com.hbm.particles.EntitySmokeFX; import cpw.mods.fml.common.SidedProxy; @@ -131,6 +132,9 @@ public class MainRegistry //Tool Materials public static ToolMaterial enumToolMaterialSchrabidium = EnumHelper.addToolMaterial("SCHRABIDIUM", 3, 10000, 50.0F, 100.0F, 200); public static ToolMaterial enumToolMaterialChainsaw = EnumHelper.addToolMaterial("CHAINSAW", 3, 5000, 50.0F, 47.0F, 0); + public static ToolMaterial enumToolMaterialSteel = EnumHelper.addToolMaterial("STEEL", 2, 500, 7.5F, 2.0F, 10); + public static ToolMaterial enumToolMaterialTitanium = EnumHelper.addToolMaterial("TITANIUM", 3, 750, 9.0F, 2.5F, 15); + public static ToolMaterial enumToolMaterialAlloy= EnumHelper.addToolMaterial("ALLOY", 3, 2000, 15.0F, 5.0F, 5); //Armor Materials public static ArmorMaterial enumArmorMaterialEmerald = EnumHelper.addArmorMaterial("TEST", 2500, new int[] {3, 8, 6, 3}, 30); @@ -138,6 +142,9 @@ public class MainRegistry public static ArmorMaterial enumArmorMaterialEuphemium = EnumHelper.addArmorMaterial("EUPHEMIUM", 2147483647, new int[] {3, 8, 6, 3}, 100); public static ArmorMaterial enumArmorMaterialHazmat = EnumHelper.addArmorMaterial("HAZMAT", 60, new int[] {2, 5, 4, 1}, 5); public static ArmorMaterial enumArmorMaterialT45 = EnumHelper.addArmorMaterial("T45", 1000, new int[] {2, 5, 4, 1}, 0); + public static ArmorMaterial enumArmorMaterialSteel = EnumHelper.addArmorMaterial("STEEL", 20, new int[] {2, 6, 5, 2}, 5); + public static ArmorMaterial enumArmorMaterialTitanium = EnumHelper.addArmorMaterial("TITANIUM", 25, new int[] {3, 8, 6, 3}, 9); + public static ArmorMaterial enumArmorMaterialAlloy = EnumHelper.addArmorMaterial("ALLOY", 50, new int[] {3, 8, 6, 3}, 12); //Creative Tabs public static CreativeTabs tabTest = new TestTab(CreativeTabs.getNextID(), "tabTest"); @@ -152,8 +159,8 @@ public class MainRegistry public static int manRadius = 175; public static int mikeRadius = 250; public static int tsarRadius = 500; - public static int prototypeRadius = 50; - public static int fleijaRadius = 150; + public static int prototypeRadius = 150; + public static int fleijaRadius = 50; @EventHandler public void PreLoad(FMLPreInitializationEvent PreEvent) @@ -167,8 +174,14 @@ public class MainRegistry enumArmorMaterialSchrabidium.customCraftingMaterial = ModItems.ingot_schrabidium; enumArmorMaterialHazmat.customCraftingMaterial = ModItems.hazmat_cloth; enumArmorMaterialT45.customCraftingMaterial = ModItems.plate_titanium; + enumArmorMaterialTitanium.customCraftingMaterial = ModItems.ingot_titanium; + enumArmorMaterialSteel.customCraftingMaterial = ModItems.ingot_steel; + enumArmorMaterialAlloy.customCraftingMaterial = ModItems.ingot_advanced_alloy; enumToolMaterialSchrabidium.setRepairItem(new ItemStack(ModItems.ingot_schrabidium)); enumToolMaterialChainsaw.setRepairItem(new ItemStack(ModItems.ingot_steel)); + enumToolMaterialTitanium.setRepairItem(new ItemStack(ModItems.ingot_titanium)); + enumToolMaterialSteel.setRepairItem(new ItemStack(ModItems.ingot_steel)); + enumToolMaterialAlloy.setRepairItem(new ItemStack(ModItems.ingot_advanced_alloy)); NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GUIHandler()); GameRegistry.registerTileEntity(TileEntityTestBombAdvanced.class, "tilentity_testbombadvanced"); @@ -253,6 +266,7 @@ public class MainRegistry EntityRegistry.registerModEntity(EntitySmokeFX.class, "entity_smoke_fx", 37, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityNukeCloudBig.class, "entity_nuke_cloud_big", 38, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityGrenadeNuclear.class, "entity_grenade_nuclear", 39, this, 1000, 1, true); + EntityRegistry.registerModEntity(EntityBSmokeFX.class, "entity_b_smoke_fx", 40, this, 1000, 1, true); EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00); } diff --git a/com/hbm/particles/EntityBSmokeFX.java b/com/hbm/particles/EntityBSmokeFX.java new file mode 100644 index 000000000..3d878d3dc --- /dev/null +++ b/com/hbm/particles/EntityBSmokeFX.java @@ -0,0 +1,81 @@ +package com.hbm.particles; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.world.World; + +public class EntityBSmokeFX extends EntityModFX +{ + float smokeParticleScale; + public int particleAge; + public int maxAge; + private static final String __OBFID = "CL_00000924"; + + public EntityBSmokeFX(World world) { + super(world, 0, 0, 0); + } + + public EntityBSmokeFX(World p_i1225_1_, double p_i1225_2_, double p_i1225_4_, double p_i1225_6_, double p_i1225_8_, double p_i1225_10_, double p_i1225_12_) + { + this(p_i1225_1_, p_i1225_2_, p_i1225_4_, p_i1225_6_, p_i1225_8_, p_i1225_10_, p_i1225_12_, 1.0F); + } + + public EntityBSmokeFX(World p_i1226_1_, double p_i1226_2_, double p_i1226_4_, double p_i1226_6_, double p_i1226_8_, double p_i1226_10_, double p_i1226_12_, float p_i1226_14_) + { + super(p_i1226_1_, p_i1226_2_, p_i1226_4_, p_i1226_6_, 0.0D, 0.0D, 0.0D); + this.motionX *= 0.10000000149011612D; + this.motionY *= 0.10000000149011612D; + this.motionZ *= 0.10000000149011612D; + this.motionX += p_i1226_8_; + this.motionY += p_i1226_10_; + this.motionZ += p_i1226_12_; + this.particleRed = this.particleGreen = this.particleBlue = (float)(Math.random() * 0.30000001192092896D); + this.particleScale *= 0.75F; + this.particleScale *= p_i1226_14_; + this.smokeParticleScale = this.particleScale; + //this.particleMaxAge = (int)(8.0D / (Math.random() * 0.8D + 0.2D)); + //this.particleMaxAge = (int)((float)this.particleMaxAge * p_i1226_14_); + this.noClip = false; + } + + /** + * Called to update the entity's position/logic. + */ + + @Override + public void onUpdate() + { + this.prevPosX = this.posX; + this.prevPosY = this.posY; + this.prevPosZ = this.posZ; + + if(maxAge < 100) + { + maxAge = rand.nextInt(21) + 65; + } + + this.particleAge++; + + if (this.particleAge >= maxAge) + { + this.setDead(); + } + + this.motionX *= 0.9599999785423279D; + this.motionY *= 0.9599999785423279D; + this.motionZ *= 0.9599999785423279D; + + if (this.onGround) + { + this.motionX *= 0.699999988079071D; + this.motionZ *= 0.699999988079071D; + } + } + + @Override + @SideOnly(Side.CLIENT) + public int getBrightnessForRender(float p_70070_1_) + { + return 15728880; + } +} diff --git a/com/hbm/render/BSmokeRenderer.java b/com/hbm/render/BSmokeRenderer.java new file mode 100644 index 000000000..7dcd75cd0 --- /dev/null +++ b/com/hbm/render/BSmokeRenderer.java @@ -0,0 +1,155 @@ +package com.hbm.render; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import java.util.concurrent.Callable; + +import org.lwjgl.opengl.GL11; +import org.lwjgl.opengl.GL12; + +import com.hbm.items.ModItems; +import com.hbm.lib.RefStrings; +import com.hbm.particles.EntityBSmokeFX; +import com.hbm.particles.EntitySmokeFX; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.particle.EntityDiggingFX; +import net.minecraft.client.particle.EntityFX; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.client.renderer.texture.TextureMap; +import net.minecraft.crash.CrashReport; +import net.minecraft.crash.CrashReportCategory; +import net.minecraft.entity.Entity; +import net.minecraft.entity.projectile.EntityPotion; +import net.minecraft.item.Item; +import net.minecraft.item.ItemPotion; +import net.minecraft.potion.PotionHelper; +import net.minecraft.util.IIcon; +import net.minecraft.util.MathHelper; +import net.minecraft.util.MovingObjectPosition; +import net.minecraft.util.ReportedException; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; + +public class BSmokeRenderer extends Render +{ + private Item field_94151_a; + private int field_94150_f; + private static final String __OBFID = "CL_00001008"; + + public BSmokeRenderer(Item p_i1259_1_, int p_i1259_2_) + { + this.field_94151_a = p_i1259_1_; + this.field_94150_f = p_i1259_2_; + } + + public BSmokeRenderer(Item p_i1260_1_) + { + this(p_i1260_1_, 0); + } + + /** + * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then + * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic + * (Render= fx.maxAge / 8 * 7) + { + field_94151_a = ModItems.b_smoke8; + } + + if(fx.particleAge < fx.maxAge / 8 * 7 && fx.particleAge >= fx.maxAge / 8 * 6) + { + field_94151_a = ModItems.b_smoke7; + } + + if(fx.particleAge < fx.maxAge / 8 * 6 && fx.particleAge >= fx.maxAge / 8 * 5) + { + field_94151_a = ModItems.b_smoke6; + } + + if(fx.particleAge < fx.maxAge / 8 * 5 && fx.particleAge >= fx.maxAge / 8 * 4) + { + field_94151_a = ModItems.b_smoke5; + } + + if(fx.particleAge < fx.maxAge / 8 * 4 && fx.particleAge >= fx.maxAge / 8 * 3) + { + field_94151_a = ModItems.b_smoke4; + } + + if(fx.particleAge < fx.maxAge / 8 * 3 && fx.particleAge >= fx.maxAge / 8 * 2) + { + field_94151_a = ModItems.b_smoke3; + } + + if(fx.particleAge < fx.maxAge / 8 * 2 && fx.particleAge >= fx.maxAge / 8 * 1) + { + field_94151_a = ModItems.b_smoke2; + } + + if(fx.particleAge < fx.maxAge / 8 && fx.particleAge >= 0) + { + field_94151_a = ModItems.b_smoke1; + } + + IIcon iicon = field_94151_a.getIconFromDamage(0); + + if (iicon != null) + { + GL11.glPushMatrix(); + GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_); + GL11.glEnable(GL12.GL_RESCALE_NORMAL); + GL11.glScalef(0.5F, 0.5F, 0.5F); + GL11.glScalef(7.5F, 7.5F, 7.5F); + this.bindEntityTexture(p_76986_1_); + Tessellator tessellator = Tessellator.instance; + + this.func_77026_a(tessellator, iicon); + GL11.glDisable(GL12.GL_RESCALE_NORMAL); + GL11.glPopMatrix(); + } + } + } + + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(Entity p_110775_1_) + { + return TextureMap.locationItemsTexture; + } + + private void func_77026_a(Tessellator p_77026_1_, IIcon p_77026_2_) + { + float f = p_77026_2_.getMinU(); + float f1 = p_77026_2_.getMaxU(); + float f2 = p_77026_2_.getMinV(); + float f3 = p_77026_2_.getMaxV(); + float f4 = 1.0F; + float f5 = 0.5F; + float f6 = 0.25F; + GL11.glRotatef(180.0F - this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(-this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); + p_77026_1_.startDrawingQuads(); + p_77026_1_.setNormal(0.0F, 1.0F, 0.0F); + p_77026_1_.addVertexWithUV((double)(0.0F - f5), (double)(0.0F - f6), 0.0D, (double)f, (double)f3); + p_77026_1_.addVertexWithUV((double)(f4 - f5), (double)(0.0F - f6), 0.0D, (double)f1, (double)f3); + p_77026_1_.addVertexWithUV((double)(f4 - f5), (double)(f4 - f6), 0.0D, (double)f1, (double)f2); + p_77026_1_.addVertexWithUV((double)(0.0F - f5), (double)(f4 - f6), 0.0D, (double)f, (double)f2); + p_77026_1_.draw(); + } +}