diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 665fa2ea4..735cd63a6 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -703,6 +703,7 @@ tile.reinforced_light.name=Verstärkter Glowstone tile.reinforced_lamp_off.name=Verstärkte Lampe tile.reinforced_lamp_on.name=Verstärkte Lampe +tile.concrete.name=Beton tile.brick_concrete.name=Betonziegel tile.brick_obsidian.name=Obsidianziegel tile.brick_light.name=Helle Ziegel @@ -1746,6 +1747,10 @@ item.stamp_schrabidium_flat.name=Flacher Stempel (Schrabidium) item.stamp_schrabidium_plate.name=Plattenstempel (Schrabidium) item.stamp_schrabidium_wire.name=Kabelstempel (Schrabidium) item.stamp_schrabidium_circuit.name=Schaltkreisstempel (Schrabidium) +item.stamp_357.name=.357 Magnum-Stempel +item.stamp_44.name=.44 Magnum-Stempel +item.stamp_9.name=Kleinkaliberstempel +item.stamp_50.name=Großkaliberstempel item.part_lithium.name=Lithiumstaubkiste item.part_beryllium.name=Berylliumstaubkiste diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 85ab6084a..320bebdd4 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -233,6 +233,7 @@ container.nukePrototype=The Prototype container.nukeCustom=Custom Nuke container.nukeSolinium=The Blue Rinse container.nukeN2=N² Mine +container.nukeN45=N45 Naval Mine container.bombMulti=Multi Purpose Bomb @@ -246,6 +247,7 @@ tile.nuke_prototype.name=The Prototype tile.nuke_custom.name=Custom Nuke tile.nuke_solinium.name=The Blue Rinse tile.nuke_n2.name=N² Mine +tile.nuke_n45.name=N45 Naval Mine tile.bomb_multi.name=Multi Purpose Bomb tile.rejuvinator.name=Rejuvination Device @@ -625,6 +627,27 @@ item.mechanism_launcher_1.name=Launcher Mechanism item.mechanism_launcher_2.name=Advanced Launcher Mechanism item.mechanism_special.name=High-Tech Weapon Mechanism +item.primer_357.name=.357 Magnum Primer (x16) +item.primer_44.name=.44 Magnum Primer (x16) +item.primer_9.name=Small Caliber Primer (x24) +item.primer_50.name=Large Caliber Primer (x8) +item.primer_buckshot.name=Buckshot Primer (x8) +item.casing_357.name=.357 Magnum Casing (x16) +item.casing_44.name=.44 Magnum Casing (x16) +item.casing_9.name=Small Caliber Casing (x24) +item.casing_50.name=Large Caliber Casing (x8) +item.casing_buckshot.name=Buckshot Casing (x8) +item.assembly_iron.name=Iron Bullet Assembly +item.assembly_steel.name=Lead Bullet Assembly +item.assembly_lead.name=Glass Bullet Assembly +item.assembly_gold.name=Gold Bullet Assembly +item.assembly_schrabidium.name=Schrabidium Bullet Assembly +item.assembly_pip.name=Tainted Bullet Assembly +item.assembly_nopip.name=.44 Magnum Assembly +item.assembly_smg.name=9mm Assembly +item.assembly_uzi.name=.22LR Assembly +item.assembly_calamity.name=.50 BMG Assembly + item.piston_selenium.name=Radial Engine Piston tile.block_aluminium.name=Block of Aluminium @@ -703,6 +726,7 @@ tile.reinforced_light.name=Reinforced Glowstone tile.reinforced_lamp_off.name=Reinforced Lamp tile.reinforced_lamp_on.name=Reinforced Lamp +tile.concrete.name=Concrete tile.brick_concrete.name=Concrete Bricks tile.brick_obsidian.name=Obsidian Bricks tile.brick_light.name=Light Bricks @@ -1746,6 +1770,10 @@ item.stamp_schrabidium_flat.name=Flat Stamp (Schrabidium) item.stamp_schrabidium_plate.name=Plate Stamp (Schrabidium) item.stamp_schrabidium_wire.name=Wire Stamp (Schrabidium) item.stamp_schrabidium_circuit.name=Circuit Stamp (Schrabidium) +item.stamp_357.name=.357 Magnum Stamp +item.stamp_44.name=.44 Magnum Stamp +item.stamp_9.name=Small Caliber Stamp +item.stamp_50.name=Large Caliber Stamp item.part_lithium.name=Box of Lithium Dust item.part_beryllium.name=Box of Beryllium Dust diff --git a/assets/hbm/models/TheGadget3_smooth.obj b/assets/hbm/models/TheGadget3_smooth.obj new file mode 100644 index 000000000..745a9d304 --- /dev/null +++ b/assets/hbm/models/TheGadget3_smooth.obj @@ -0,0 +1,1293 @@ +# Blender v2.76 (sub 0) OBJ File: 'TheGadget3_smooth.blend' +# www.blender.org +o Cylinder.003 +v 0.550000 1.500000 -0.850000 +v 0.650000 1.500000 -0.850000 +v 0.550000 1.174719 -0.785298 +v 0.650000 1.174719 -0.785298 +v 0.550001 0.898959 -0.601041 +v 0.650001 0.898959 -0.601041 +v 0.550001 0.714702 -0.325281 +v 0.650001 0.714702 -0.325281 +v 0.550001 0.650000 0.000000 +v 0.650001 0.650000 0.000000 +v 0.550001 0.714702 0.325281 +v 0.650001 0.714702 0.325281 +v 0.550001 0.898959 0.601041 +v 0.650001 0.898959 0.601041 +v 0.550000 1.174719 0.785298 +v 0.650000 1.174719 0.785298 +v 0.550000 1.500000 0.850000 +v 0.650000 1.500000 0.850000 +v 0.550000 1.825281 0.785298 +v 0.650000 1.825281 0.785298 +v 0.549999 2.101041 0.601041 +v 0.649999 2.101041 0.601041 +v 0.549999 2.285297 0.325281 +v 0.649999 2.285298 0.325281 +v 0.549999 2.350000 -0.000000 +v 0.649999 2.350000 -0.000000 +v 0.549999 2.285297 -0.325281 +v 0.649999 2.285298 -0.325281 +v 0.549999 2.101040 -0.601041 +v 0.649999 2.101041 -0.601041 +v 0.550000 1.825280 -0.785298 +v 0.650000 1.825281 -0.785298 +v -0.650000 1.500000 -0.850000 +v -0.550000 1.500000 -0.850000 +v -0.650000 1.174719 -0.785298 +v -0.550000 1.174719 -0.785298 +v -0.649999 0.898959 -0.601041 +v -0.549999 0.898959 -0.601041 +v -0.649999 0.714702 -0.325281 +v -0.549999 0.714702 -0.325281 +v -0.649999 0.650000 0.000000 +v -0.549999 0.650000 0.000000 +v -0.649999 0.714702 0.325281 +v -0.549999 0.714702 0.325281 +v -0.649999 0.898959 0.601041 +v -0.549999 0.898959 0.601041 +v -0.650000 1.174719 0.785298 +v -0.550000 1.174719 0.785298 +v -0.650000 1.500000 0.850000 +v -0.550000 1.500000 0.850000 +v -0.650000 1.825281 0.785298 +v -0.550000 1.825281 0.785298 +v -0.650001 2.101041 0.601041 +v -0.550001 2.101041 0.601041 +v -0.650001 2.285297 0.325281 +v -0.550001 2.285298 0.325281 +v -0.650001 2.350000 -0.000000 +v -0.550001 2.350000 -0.000000 +v -0.650001 2.285297 -0.325281 +v -0.550001 2.285298 -0.325281 +v -0.650001 2.101040 -0.601041 +v -0.550001 2.101041 -0.601041 +v -0.650000 1.825280 -0.785298 +v -0.550000 1.825281 -0.785298 +v -1.500000 1.499999 -0.700000 +v 1.000000 1.500001 -0.700000 +v -1.500000 1.232120 -0.646716 +v 1.000000 1.232123 -0.646716 +v -1.500000 1.005024 -0.494975 +v 1.000000 1.005026 -0.494975 +v -1.499999 0.853283 -0.267878 +v 1.000000 0.853285 -0.267878 +v -1.499999 0.799999 0.000000 +v 1.000000 0.800001 0.000000 +v -1.499999 0.853283 0.267878 +v 1.000000 0.853285 0.267878 +v -1.500000 1.005024 0.494975 +v 1.000000 1.005026 0.494975 +v -1.500000 1.232120 0.646716 +v 1.000000 1.232123 0.646716 +v -1.500000 1.499999 0.700000 +v 1.000000 1.500001 0.700000 +v -1.500000 1.767877 0.646716 +v 1.000000 1.767879 0.646716 +v -1.500000 1.994973 0.494975 +v 0.999999 1.994976 0.494975 +v -1.500001 2.146714 0.267879 +v 0.999999 2.146717 0.267879 +v -1.500001 2.199999 -0.000000 +v 0.999999 2.200001 -0.000000 +v -1.500001 2.146714 -0.267879 +v 0.999999 2.146717 -0.267879 +v -1.500000 1.994973 -0.494975 +v 0.999999 1.994976 -0.494975 +v -1.500000 1.767877 -0.646716 +v 1.000000 1.767879 -0.646716 +v 0.450000 1.500000 -1.000000 +v 0.550000 1.500000 -1.000000 +v 0.450000 1.117316 -0.923880 +v 0.550000 1.117316 -0.923880 +v 0.450001 0.792893 -0.707107 +v 0.550001 0.792893 -0.707107 +v 0.450001 0.576120 -0.382683 +v 0.550001 0.576120 -0.382683 +v 0.450001 0.500000 0.000000 +v 0.550001 0.500000 0.000000 +v 0.450001 0.576120 0.382684 +v 0.550001 0.576120 0.382684 +v 0.450001 0.792893 0.707107 +v 0.550001 0.792893 0.707107 +v 0.450000 1.117316 0.923880 +v 0.550000 1.117316 0.923880 +v 0.450000 1.500000 1.000000 +v 0.550000 1.500000 1.000000 +v 0.450000 1.882683 0.923880 +v 0.550000 1.882683 0.923880 +v 0.449999 2.207107 0.707107 +v 0.549999 2.207107 0.707107 +v 0.449999 2.423879 0.382684 +v 0.549999 2.423880 0.382684 +v 0.449999 2.500000 -0.000000 +v 0.549999 2.500000 -0.000000 +v 0.449999 2.423879 -0.382684 +v 0.549999 2.423879 -0.382684 +v 0.449999 2.207106 -0.707107 +v 0.549999 2.207107 -0.707107 +v 0.450000 1.882683 -0.923880 +v 0.550000 1.882683 -0.923880 +v -0.550000 1.500000 -1.000000 +v -0.450000 1.500000 -1.000000 +v -0.550000 1.117316 -0.923880 +v -0.450000 1.117317 -0.923880 +v -0.549999 0.792893 -0.707107 +v -0.449999 0.792893 -0.707107 +v -0.549999 0.576120 -0.382683 +v -0.449999 0.576120 -0.382683 +v -0.549999 0.500000 0.000000 +v -0.449999 0.500000 0.000000 +v -0.549999 0.576120 0.382684 +v -0.449999 0.576120 0.382684 +v -0.549999 0.792893 0.707107 +v -0.449999 0.792893 0.707107 +v -0.550000 1.117316 0.923880 +v -0.450000 1.117316 0.923880 +v -0.550000 1.500000 1.000000 +v -0.450000 1.500000 1.000000 +v -0.550000 1.882683 0.923880 +v -0.450000 1.882683 0.923880 +v -0.550001 2.207107 0.707107 +v -0.450001 2.207107 0.707107 +v -0.550001 2.423879 0.382684 +v -0.450001 2.423880 0.382684 +v -0.550001 2.500000 -0.000000 +v -0.450001 2.500000 -0.000000 +v -0.550001 2.423879 -0.382684 +v -0.450001 2.423879 -0.382684 +v -0.550001 2.207107 -0.707107 +v -0.450001 2.207107 -0.707107 +v -0.550000 1.882683 -0.923880 +v -0.450000 1.882683 -0.923880 +v -0.550000 -0.000000 -0.750000 +v -0.550000 -0.000000 -1.000000 +v -0.450000 -0.000000 -1.000000 +v -0.450000 -0.000000 -0.750000 +v -0.550000 -0.000000 1.000000 +v -0.550000 -0.000000 0.750000 +v -0.450000 -0.000000 0.750000 +v -0.450000 -0.000000 1.000000 +v 0.450000 0.000000 -0.750000 +v 0.450000 0.000000 -1.000000 +v 0.550000 0.000000 -1.000000 +v 0.550000 0.000000 -0.750000 +v 0.450000 -0.000000 1.000000 +v 0.450000 -0.000000 0.750000 +v 0.550000 -0.000000 0.750000 +v 0.550000 -0.000000 1.000000 +v -1.125000 1.499999 -0.700000 +v -1.125000 1.232121 -0.646716 +v -1.125000 1.005024 -0.494975 +v -1.124999 0.853284 -0.267878 +v -1.124999 0.799999 0.000000 +v -1.124999 0.853284 0.267878 +v -1.125000 1.005024 0.494975 +v -1.125000 1.232121 0.646716 +v -1.125000 1.499999 0.700000 +v -1.125000 1.767877 0.646716 +v -1.125000 1.994974 0.494975 +v -1.125001 2.146715 0.267879 +v -1.125001 2.199999 -0.000000 +v -1.125001 2.146715 -0.267879 +v -1.125000 1.994974 -0.494975 +v -1.125000 1.767877 -0.646716 +v 0.707106 2.207107 0.000000 +v 0.382683 2.423880 0.000000 +v -0.000001 2.500000 0.000000 +v -0.382684 2.423880 0.000000 +v -0.707107 2.207107 0.000000 +v 0.707106 2.000000 -0.500000 +v 0.382683 2.153281 -0.653281 +v -0.000001 2.207107 -0.707107 +v -0.382684 2.153281 -0.653281 +v -0.707107 2.000000 -0.500000 +v 0.707106 1.500000 -0.707107 +v 0.382683 1.500000 -0.923879 +v -0.000000 1.500000 -1.000000 +v -0.382684 1.500000 -0.923879 +v -0.707107 1.500000 -0.707107 +v 0.707106 1.000000 -0.500000 +v 0.382683 0.846719 -0.653281 +v -0.000000 0.792893 -0.707107 +v -0.382684 0.846719 -0.653281 +v -0.707107 1.000000 -0.500000 +v 0.707106 0.792894 -0.000000 +v 0.382683 0.576121 -0.000000 +v -0.000000 0.500001 -0.000000 +v -0.382684 0.576121 -0.000000 +v -0.707107 0.792894 -0.000000 +v 0.707106 1.000000 0.500000 +v 0.382683 0.846719 0.653281 +v -0.000000 0.792893 0.707107 +v -0.382684 0.846719 0.653281 +v -0.707107 1.000000 0.500000 +v 0.707106 1.500000 0.707107 +v 0.382683 1.500000 0.923879 +v -0.000000 1.500000 1.000000 +v -0.382684 1.500000 0.923879 +v -0.707107 1.500000 0.707107 +v 0.707106 2.000000 0.500000 +v 0.382683 2.153281 0.653281 +v -0.000001 2.207107 0.707107 +v -0.382684 2.153281 0.653281 +v -0.707107 2.000000 0.500000 +vt 0.589205 0.570129 +vt 0.537513 0.535589 +vt 0.559924 0.422922 +vt 0.897932 0.155115 +vt 0.943209 0.155115 +vt 0.943209 0.166719 +vt 0.943209 0.206379 +vt 0.897932 0.206379 +vt 0.897932 0.194775 +vt 0.105201 0.410793 +vt 0.241650 0.501966 +vt 0.014028 0.547243 +vt 0.574727 0.365411 +vt 0.525385 0.291565 +vt 0.616557 0.155115 +vt 0.601856 0.880859 +vt 0.601856 0.869255 +vt 0.647133 0.869255 +vt 0.916064 0.864137 +vt 0.916064 0.875741 +vt 0.870787 0.875741 +vt 0.105201 0.155115 +vt 0.241650 0.246288 +vt 0.014028 0.291565 +vt 0.360879 0.382738 +vt 0.269706 0.246288 +vt 0.406156 0.155115 +vt 0.350122 0.445333 +vt 0.462789 0.422922 +vt 0.485200 0.535589 +vt 0.787808 0.042971 +vt 0.657853 0.042971 +vt 0.693703 0.015316 +vt 0.787808 0.071027 +vt 0.785836 0.099970 +vt 0.693703 0.098682 +vt 0.975417 0.946312 +vt 0.845462 0.946312 +vt 0.881311 0.918657 +vt 0.364637 0.841199 +vt 0.364637 0.829595 +vt 0.494592 0.829595 +vt 0.624808 0.985972 +vt 0.494853 0.985972 +vt 0.530702 0.958317 +vt 0.399665 0.626770 +vt 0.399661 0.638374 +vt 0.269706 0.638329 +vt 0.842731 0.824477 +vt 0.840759 0.853420 +vt 0.748626 0.852132 +vt 0.520818 0.626812 +vt 0.520814 0.638416 +vt 0.428672 0.638384 +vt 0.523602 0.829595 +vt 0.615745 0.829595 +vt 0.615745 0.841199 +vt 0.678829 0.638416 +vt 0.548874 0.638416 +vt 0.584723 0.610761 +vt 0.945819 0.014028 +vt 0.943847 0.042971 +vt 0.851714 0.041683 +vt 0.945819 0.071027 +vt 0.943847 0.099970 +vt 0.851714 0.098682 +vt 0.523602 0.841199 +vt 0.494592 0.841199 +vt 0.523603 0.789935 +vt 0.615745 0.789935 +vt 0.615745 0.801539 +vt 0.364637 0.801539 +vt 0.364637 0.789935 +vt 0.494592 0.789935 +vt 0.494596 0.750233 +vt 0.494592 0.761837 +vt 0.364637 0.761792 +vt 0.615749 0.750275 +vt 0.615745 0.761879 +vt 0.523602 0.761847 +vt 0.428676 0.626780 +vt 0.523606 0.750243 +vt 0.523603 0.801539 +vt 0.494592 0.801539 +vt 0.589206 0.410793 +vt 0.620899 0.410793 +vt 0.650181 0.422922 +vt 0.672592 0.445333 +vt 0.684720 0.474614 +vt 0.684720 0.506308 +vt 0.672591 0.535590 +vt 0.650180 0.558000 +vt 0.620899 0.570129 +vt 0.559924 0.558000 +vt 0.525385 0.506308 +vt 0.525385 0.474614 +vt 0.537513 0.445333 +vt 0.897932 0.166719 +vt 0.943209 0.194775 +vt 0.150478 0.638416 +vt 0.105201 0.638416 +vt 0.063370 0.621089 +vt 0.031355 0.589073 +vt 0.014028 0.501966 +vt 0.031355 0.460136 +vt 0.063370 0.428120 +vt 0.150478 0.410793 +vt 0.192308 0.428120 +vt 0.224324 0.460136 +vt 0.241650 0.547243 +vt 0.224324 0.589074 +vt 0.192308 0.621089 +vt 0.661834 0.155115 +vt 0.703665 0.172442 +vt 0.735680 0.204457 +vt 0.753007 0.246288 +vt 0.753007 0.291565 +vt 0.735680 0.333395 +vt 0.703665 0.365411 +vt 0.661834 0.382738 +vt 0.616557 0.382738 +vt 0.542711 0.333395 +vt 0.525385 0.246288 +vt 0.542711 0.204457 +vt 0.574727 0.172442 +vt 0.647133 0.880859 +vt 0.870787 0.864137 +vt 0.150478 0.382738 +vt 0.105201 0.382738 +vt 0.063370 0.365411 +vt 0.031355 0.333395 +vt 0.014028 0.246288 +vt 0.031355 0.204458 +vt 0.063370 0.172442 +vt 0.150478 0.155115 +vt 0.192308 0.172442 +vt 0.224324 0.204457 +vt 0.241650 0.291565 +vt 0.224324 0.333395 +vt 0.192308 0.365411 +vt 0.447986 0.172442 +vt 0.480002 0.204457 +vt 0.497329 0.246288 +vt 0.497329 0.291565 +vt 0.480002 0.333395 +vt 0.447986 0.365411 +vt 0.406156 0.382738 +vt 0.319049 0.365411 +vt 0.287033 0.333395 +vt 0.269706 0.291565 +vt 0.287033 0.204458 +vt 0.319049 0.172442 +vt 0.360879 0.155115 +vt 0.462789 0.558000 +vt 0.433508 0.570129 +vt 0.401814 0.570129 +vt 0.372533 0.558000 +vt 0.350122 0.535589 +vt 0.337993 0.506308 +vt 0.337993 0.474614 +vt 0.372533 0.422922 +vt 0.401814 0.410793 +vt 0.433508 0.410793 +vt 0.485200 0.445333 +vt 0.497329 0.474614 +vt 0.497329 0.506308 +vt 0.785836 0.014028 +vt 0.657853 0.071027 +vt 0.973445 0.917369 +vt 0.622836 0.957029 +vt 0.269710 0.626725 +vt 0.712776 0.824477 +vt 0.676857 0.609473 +vt 0.815864 0.014028 +vt 0.815864 0.071027 +vt 0.364641 0.750188 +vt 0.167969 0.666472 +vt 0.167969 0.678076 +vt 0.129484 0.678076 +vt 0.090999 0.678076 +vt 0.090999 0.666472 +vt 0.052513 0.678076 +vt 0.052513 0.666472 +vt 0.014028 0.678076 +vt 0.014028 0.666472 +vt 0.629794 0.666472 +vt 0.629794 0.678076 +vt 0.591308 0.678076 +vt 0.552823 0.678076 +vt 0.552823 0.666472 +vt 0.514338 0.678076 +vt 0.475852 0.678076 +vt 0.475852 0.666472 +vt 0.437367 0.678076 +vt 0.437367 0.666472 +vt 0.398881 0.678076 +vt 0.360396 0.678076 +vt 0.360396 0.666472 +vt 0.321910 0.678076 +vt 0.321910 0.666472 +vt 0.283425 0.678076 +vt 0.283425 0.666472 +vt 0.244940 0.678076 +vt 0.206454 0.666472 +vt 0.206454 0.678076 +vt 0.244940 0.666472 +vt 0.167969 0.126901 +vt 0.129483 0.126888 +vt 0.129487 0.115284 +vt 0.090998 0.126875 +vt 0.091002 0.115271 +vt 0.052513 0.126861 +vt 0.052517 0.115257 +vt 0.014028 0.126848 +vt 0.629793 0.127059 +vt 0.591308 0.127046 +vt 0.591312 0.115442 +vt 0.552822 0.127033 +vt 0.552826 0.115429 +vt 0.514337 0.127020 +vt 0.514341 0.115416 +vt 0.475851 0.127007 +vt 0.475855 0.115403 +vt 0.437366 0.126994 +vt 0.437370 0.115389 +vt 0.398881 0.126980 +vt 0.398885 0.115376 +vt 0.360395 0.126967 +vt 0.321910 0.126954 +vt 0.321914 0.115350 +vt 0.283425 0.126941 +vt 0.283429 0.115337 +vt 0.244939 0.126927 +vt 0.206458 0.115310 +vt 0.206454 0.126914 +vt 0.244943 0.115323 +vt 0.421520 0.957030 +vt 0.466797 0.957030 +vt 0.466797 0.968634 +vt 0.871616 0.373560 +vt 0.826340 0.373560 +vt 0.826340 0.361956 +vt 0.781063 0.373560 +vt 0.781063 0.361956 +vt 0.455191 0.880859 +vt 0.409914 0.880859 +vt 0.409914 0.869255 +vt 0.364637 0.880859 +vt 0.364637 0.869255 +vt 0.014028 0.957029 +vt 0.059305 0.957029 +vt 0.059305 0.968633 +vt 0.104582 0.957029 +vt 0.104582 0.968633 +vt 0.149858 0.957029 +vt 0.195135 0.957029 +vt 0.195135 0.968633 +vt 0.240412 0.957029 +vt 0.240412 0.968633 +vt 0.285689 0.957029 +vt 0.285689 0.968633 +vt 0.330966 0.957029 +vt 0.376243 0.957029 +vt 0.421520 0.968634 +vt 0.330966 0.968634 +vt 0.772129 0.917369 +vt 0.817406 0.917369 +vt 0.817406 0.928973 +vt 0.573800 0.880859 +vt 0.528523 0.880859 +vt 0.528523 0.869255 +vt 0.483246 0.880859 +vt 0.483246 0.869255 +vt 0.961341 0.836081 +vt 0.916064 0.836081 +vt 0.916064 0.824477 +vt 0.870787 0.836081 +vt 0.870787 0.824477 +vt 0.364637 0.928973 +vt 0.364637 0.917369 +vt 0.409914 0.917369 +vt 0.455191 0.917369 +vt 0.455191 0.928973 +vt 0.500467 0.917369 +vt 0.500467 0.928973 +vt 0.545744 0.917369 +vt 0.545744 0.928973 +vt 0.591021 0.917369 +vt 0.591021 0.928973 +vt 0.636298 0.917369 +vt 0.636298 0.928973 +vt 0.681575 0.917369 +vt 0.681575 0.928973 +vt 0.726852 0.917369 +vt 0.772129 0.928973 +vt 0.164597 0.057593 +vt 0.132903 0.057583 +vt 0.132918 0.014067 +vt 0.126111 0.057580 +vt 0.094418 0.057569 +vt 0.094433 0.014054 +vt 0.087626 0.057567 +vt 0.055933 0.057556 +vt 0.055947 0.014041 +vt 0.049141 0.057554 +vt 0.017447 0.057543 +vt 0.017462 0.014028 +vt 0.626436 0.014236 +vt 0.626421 0.057751 +vt 0.594727 0.057740 +vt 0.587936 0.057738 +vt 0.556242 0.057727 +vt 0.556257 0.014212 +vt 0.549450 0.057725 +vt 0.517756 0.057714 +vt 0.517771 0.014199 +vt 0.510965 0.057712 +vt 0.479271 0.057701 +vt 0.479286 0.014186 +vt 0.472494 0.014183 +vt 0.472479 0.057699 +vt 0.440786 0.057688 +vt 0.434009 0.014170 +vt 0.433994 0.057686 +vt 0.402300 0.057675 +vt 0.395524 0.014157 +vt 0.395509 0.057672 +vt 0.363815 0.057662 +vt 0.357023 0.057659 +vt 0.325329 0.057648 +vt 0.325344 0.014133 +vt 0.318538 0.057646 +vt 0.286844 0.057635 +vt 0.286859 0.014120 +vt 0.280053 0.057633 +vt 0.248359 0.057622 +vt 0.248374 0.014107 +vt 0.203082 0.057607 +vt 0.171388 0.057596 +vt 0.171403 0.014081 +vt 0.241567 0.057620 +vt 0.209873 0.057609 +vt 0.209888 0.014094 +vt 0.360399 0.115363 +vt 0.014032 0.115244 +vt 0.167973 0.115297 +vt 0.357000 0.722132 +vt 0.286821 0.722132 +vt 0.248335 0.722132 +vt 0.209850 0.722132 +vt 0.171365 0.722132 +vt 0.132880 0.722132 +vt 0.094394 0.722132 +vt 0.055909 0.722132 +vt 0.017424 0.722132 +vt 0.626398 0.722133 +vt 0.587913 0.722133 +vt 0.549427 0.722132 +vt 0.510942 0.722132 +vt 0.472456 0.722132 +vt 0.433971 0.722132 +vt 0.395485 0.722132 +vt 0.336581 0.839581 +vt 0.247767 0.839581 +vt 0.251147 0.794430 +vt 0.323575 0.928973 +vt 0.260774 0.928973 +vt 0.251147 0.884731 +vt 0.333201 0.794430 +vt 0.260774 0.750188 +vt 0.333201 0.884731 +vt 0.918460 0.707029 +vt 0.829646 0.707029 +vt 0.833026 0.661878 +vt 0.905453 0.796421 +vt 0.842652 0.796421 +vt 0.833026 0.752179 +vt 0.915079 0.661878 +vt 0.842652 0.617636 +vt 0.915079 0.752179 +vt 0.089835 0.750188 +vt 0.099461 0.794430 +vt 0.017408 0.794430 +vt 0.099461 0.884731 +vt 0.017408 0.884731 +vt 0.014028 0.839581 +vt 0.102842 0.839581 +vt 0.089835 0.928973 +vt 0.027034 0.928973 +vt 0.798208 0.545339 +vt 0.716155 0.545336 +vt 0.712776 0.500185 +vt 0.801590 0.500188 +vt 0.716158 0.455035 +vt 0.788580 0.589580 +vt 0.725779 0.589578 +vt 0.788587 0.410796 +vt 0.798211 0.455038 +vt 0.801590 0.707029 +vt 0.712776 0.707029 +vt 0.716156 0.661878 +vt 0.788583 0.796421 +vt 0.725782 0.796421 +vt 0.716156 0.752179 +vt 0.788584 0.617636 +vt 0.798210 0.661878 +vt 0.798209 0.752179 +vt 0.905453 0.589578 +vt 0.842652 0.589578 +vt 0.833026 0.545336 +vt 0.915079 0.455035 +vt 0.833026 0.455035 +vt 0.842652 0.410793 +vt 0.918460 0.500186 +vt 0.915079 0.545336 +vt 0.829646 0.500186 +vt 0.866496 0.199357 +vt 0.784443 0.199357 +vt 0.794069 0.155115 +vt 0.869877 0.244508 +vt 0.866496 0.289658 +vt 0.784443 0.289658 +vt 0.781063 0.244507 +vt 0.856870 0.333900 +vt 0.794069 0.333900 +vt 0.216331 0.794430 +vt 0.219711 0.839581 +vt 0.130898 0.839581 +vt 0.206705 0.928973 +vt 0.143904 0.928973 +vt 0.134278 0.884731 +vt 0.134278 0.794430 +vt 0.143904 0.750188 +vt 0.216331 0.884731 +vt 0.129484 0.666472 +vt 0.591308 0.666472 +vt 0.514338 0.666472 +vt 0.398881 0.666472 +vt 0.629797 0.115455 +vt 0.871616 0.361956 +vt 0.455191 0.869255 +vt 0.014028 0.968633 +vt 0.149858 0.968633 +vt 0.376243 0.968634 +vt 0.573800 0.869255 +vt 0.961341 0.824477 +vt 0.409914 0.928973 +vt 0.726852 0.928973 +vt 0.164612 0.014078 +vt 0.126126 0.014065 +vt 0.087641 0.014052 +vt 0.049156 0.014039 +vt 0.594742 0.014225 +vt 0.587951 0.014223 +vt 0.549465 0.014210 +vt 0.510980 0.014196 +vt 0.440801 0.014172 +vt 0.402315 0.014159 +vt 0.363830 0.014146 +vt 0.357038 0.014144 +vt 0.318553 0.014131 +vt 0.280067 0.014118 +vt 0.203097 0.014091 +vt 0.241582 0.014104 +vt 0.325306 0.722132 +vt 0.318515 0.722132 +vt 0.280029 0.722132 +vt 0.241544 0.722132 +vt 0.203059 0.722132 +vt 0.164573 0.722132 +vt 0.126088 0.722132 +vt 0.087603 0.722132 +vt 0.049117 0.722132 +vt 0.594704 0.722133 +vt 0.556219 0.722133 +vt 0.517733 0.722132 +vt 0.479248 0.722132 +vt 0.440762 0.722132 +vt 0.402277 0.722132 +vt 0.363792 0.722132 +vt 0.323575 0.750188 +vt 0.905453 0.617636 +vt 0.027034 0.750188 +vt 0.725786 0.410793 +vt 0.725783 0.617636 +vt 0.905453 0.410793 +vt 0.856870 0.155115 +vt 0.206705 0.750188 +vn -1.000000 -0.000000 0.000000 +vn 0.000000 -0.555600 -0.831500 +vn 0.000000 -0.555600 0.831500 +vn 1.000000 0.000000 0.000000 +vn 0.000000 0.068000 -0.997700 +vn 0.000000 0.068000 0.997700 +vn 0.000000 -0.054000 -0.998500 +vn 0.000000 -0.054000 0.998500 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 0.196300 0.000000 -0.980500 +vn 0.196300 -0.375200 -0.905900 +vn 0.196300 -0.693300 -0.693300 +vn 0.000000 -0.707100 -0.707100 +vn 0.196300 -0.905900 -0.375200 +vn 0.000000 -0.923900 -0.382700 +vn 0.196300 -0.980500 0.000000 +vn 0.196300 -0.905900 0.375200 +vn 0.196300 -0.693300 0.693300 +vn 0.000000 -0.707100 0.707100 +vn 0.196300 -0.375200 0.905900 +vn 0.196300 0.000000 0.980500 +vn 0.000000 0.000000 1.000000 +vn 0.196300 0.375200 0.905900 +vn 0.000000 0.382700 0.923900 +vn 0.196300 0.693300 0.693300 +vn 0.196300 0.905900 0.375200 +vn 0.000000 0.923900 0.382700 +vn 0.196300 0.980500 0.000000 +vn 0.000000 1.000000 0.000000 +vn 0.196300 0.905900 -0.375200 +vn 0.000000 0.923900 -0.382700 +vn 0.196300 0.693300 -0.693300 +vn 0.000000 0.382700 -0.923900 +vn 0.196300 0.375200 -0.905900 +vn 0.000000 0.707100 -0.707100 +vn 0.000000 -0.382700 -0.923900 +vn -0.149500 -0.378400 -0.913500 +vn -0.149500 -0.699100 -0.699100 +vn -0.149500 -0.913500 -0.378400 +vn 0.000000 -0.923900 0.382700 +vn -0.149500 -0.913500 0.378400 +vn -0.149500 -0.699100 0.699100 +vn 0.000000 -0.382700 0.923900 +vn -0.149500 -0.378400 0.913500 +vn -0.149500 0.000000 0.988700 +vn -0.149500 0.378400 0.913500 +vn 0.000000 0.707100 0.707100 +vn -0.149500 0.699100 0.699100 +vn -0.149600 0.988700 0.000000 +vn -0.149600 0.913500 -0.378400 +vn -0.149500 0.378400 -0.913500 +vn -0.149600 0.699100 -0.699100 +vn 0.665700 0.000000 -0.746200 +vn 0.599900 -0.188900 -0.777400 +vn -0.599900 -0.188900 -0.777400 +vn 0.913000 -0.393800 -0.106200 +vn 0.665700 -0.689400 -0.285500 +vn -0.665700 -0.689400 -0.285500 +vn 0.665700 -0.746200 0.000000 +vn -0.665700 -0.746200 0.000000 +vn 0.665700 -0.689400 0.285500 +vn -0.665700 -0.689400 0.285500 +vn 0.913000 -0.393800 0.106200 +vn -0.913000 -0.393800 0.106200 +vn 0.599900 -0.188900 0.777400 +vn 0.665700 0.000000 0.746200 +vn -0.665700 0.000000 0.746200 +vn 0.665700 0.285500 0.689400 +vn -0.665700 0.285500 0.689400 +vn 0.665700 0.527600 0.527600 +vn 0.665700 0.689400 0.285500 +vn -0.665700 0.689400 0.285500 +vn 0.665700 0.746200 0.000000 +vn -0.665700 0.746200 0.000000 +vn 0.665700 0.689400 -0.285500 +vn -0.665700 0.689400 -0.285500 +vn 0.665700 0.527600 -0.527600 +vn 0.665700 0.285500 -0.689400 +vn -0.665700 0.000000 -0.746200 +vn -0.665700 0.527600 -0.527600 +vn -0.599900 -0.188900 0.777400 +vn -0.665700 0.527600 0.527600 +vn -0.155200 0.000000 -0.987900 +vn -0.155200 -0.378000 -0.912700 +vn -0.665700 -0.285500 -0.689400 +vn -0.155200 -0.698500 -0.698500 +vn -0.665700 -0.527600 -0.527600 +vn -0.155200 -0.912700 -0.378000 +vn -0.155200 -0.987900 0.000000 +vn -0.155200 -0.912700 0.378000 +vn -0.155200 -0.698500 0.698500 +vn -0.665700 -0.527600 0.527600 +vn -0.155200 -0.378000 0.912700 +vn -0.665700 -0.285500 0.689400 +vn -0.155200 0.000000 0.987900 +vn -0.155200 0.378000 0.912700 +vn -0.155200 0.698500 0.698500 +vn -0.155200 0.912700 0.378000 +vn -0.155200 0.987900 0.000000 +vn -0.155200 0.912700 -0.378000 +vn -0.155200 0.698500 -0.698500 +vn -0.155200 0.378000 -0.912700 +vn -0.665700 0.285500 -0.689400 +vn -0.149600 0.913500 0.378400 +vn -0.149500 -0.988700 0.000000 +vn -0.149500 0.000000 -0.988700 +vn 0.803800 0.549600 0.227600 +vn 0.803800 0.549600 -0.227600 +vn 0.803800 0.420600 -0.420600 +vn 0.803800 0.227600 -0.549600 +vn 0.803800 0.000000 -0.594900 +vn 0.803800 -0.227600 -0.549600 +vn 0.803800 -0.420600 -0.420600 +vn 0.803800 -0.549600 -0.227600 +vn 0.803800 -0.594900 0.000000 +vn 0.803800 -0.549600 0.227600 +vn 0.803800 -0.420600 0.420600 +vn 0.803800 -0.227600 0.549600 +vn 0.803800 0.000000 0.594900 +vn 0.803800 0.227600 0.549600 +vn 0.803800 0.420600 0.420600 +vn -0.366800 0.657800 -0.657800 +vn 0.555600 0.831400 0.000000 +vn 0.555600 0.587900 -0.587900 +vn 0.366800 0.657800 -0.657800 +vn -0.366800 0.930300 0.000000 +vn -0.555600 0.587900 -0.587900 +vn 0.366800 0.930300 0.000000 +vn -0.366800 0.000000 -0.930300 +vn 0.555600 0.000000 -0.831400 +vn 0.366800 0.000000 -0.930300 +vn -0.555600 0.000000 -0.831400 +vn -0.366800 -0.657800 -0.657800 +vn 0.366800 -0.657800 -0.657800 +vn 0.555600 -0.587900 -0.587900 +vn 0.366800 -0.930300 0.000000 +vn -0.366800 -0.930300 0.000000 +vn 0.555600 -0.831400 0.000000 +vn -0.555600 -0.587900 -0.587900 +vn -0.366800 -0.657800 0.657800 +vn 0.555600 -0.587900 0.587900 +vn 0.366800 -0.657800 0.657800 +vn -0.555600 -0.831400 0.000000 +vn 0.555600 0.000000 0.831400 +vn 0.366800 0.000000 0.930300 +vn -0.366800 0.000000 0.930300 +vn -0.555600 0.000000 0.831400 +vn -0.366800 0.657800 0.657800 +vn -0.555600 0.587900 0.587900 +vn 0.366800 0.657800 0.657800 +vn 0.555600 0.587900 0.587900 +vn -0.555600 0.831400 0.000000 +vn -0.913000 -0.393800 -0.106200 +vn 0.803800 0.594900 0.000000 +vn -0.555600 -0.587900 0.587900 +s off +f 83/1/1 87/2/1 95/3/1 +f 100/4/2 102/5/2 101/6/2 +f 110/7/3 112/8/3 111/9/3 +f 118/10/4 110/11/4 126/12/4 +f 115/13/1 119/14/1 127/15/1 +f 131/16/2 132/17/2 134/18/2 +f 141/19/3 142/20/3 144/21/3 +f 150/22/4 142/23/4 158/24/4 +f 143/25/1 151/26/1 159/27/1 +f 86/28/4 78/29/4 70/30/4 +f 163/31/4 132/32/4 134/33/4 +f 168/34/4 167/35/4 142/36/4 +f 173/37/1 111/38/1 109/39/1 +f 131/40/5 132/41/5 163/42/5 +f 165/43/1 143/44/1 141/45/1 +f 165/46/6 168/47/6 144/48/6 +f 162/49/1 161/50/1 133/51/1 +f 141/52/7 142/53/7 167/54/7 +f 164/55/8 134/56/8 133/57/8 +f 171/58/4 100/59/4 102/60/4 +f 176/61/4 175/62/4 110/63/4 +f 170/64/1 169/65/1 101/66/1 +f 164/55/9 161/67/9 162/68/9 +f 172/69/8 102/70/8 101/71/8 +f 99/72/5 100/73/5 171/74/5 +f 173/75/6 176/76/6 112/77/6 +f 109/78/7 110/79/7 175/80/7 +f 168/47/9 165/46/9 166/81/9 +f 176/76/9 173/75/9 174/82/9 +f 172/69/9 169/83/9 170/84/9 +f 95/3/1 65/85/1 67/86/1 +f 67/86/1 69/87/1 71/88/1 +f 71/88/1 73/89/1 75/90/1 +f 75/90/1 77/91/1 71/88/1 +f 79/92/1 81/93/1 83/1/1 +f 83/1/1 85/94/1 87/2/1 +f 87/2/1 89/95/1 91/96/1 +f 91/96/1 93/97/1 87/2/1 +f 95/3/1 67/86/1 79/92/1 +f 71/88/1 77/91/1 79/92/1 +f 79/92/1 83/1/1 95/3/1 +f 87/2/1 93/97/1 95/3/1 +f 67/86/1 71/88/1 79/92/1 +f 99/98/2 100/4/2 101/6/2 +f 109/99/3 110/7/3 111/9/3 +f 102/100/4 100/101/4 98/102/4 +f 98/102/4 128/103/4 126/12/4 +f 126/12/4 124/104/4 118/10/4 +f 122/105/4 120/106/4 118/10/4 +f 118/10/4 116/107/4 110/11/4 +f 114/108/4 112/109/4 110/11/4 +f 110/11/4 108/110/4 106/111/4 +f 106/111/4 104/112/4 110/11/4 +f 102/100/4 98/102/4 126/12/4 +f 124/104/4 122/105/4 118/10/4 +f 116/107/4 114/108/4 110/11/4 +f 110/11/4 104/112/4 102/100/4 +f 102/100/4 126/12/4 110/11/4 +f 127/15/1 97/113/1 99/114/1 +f 99/114/1 101/115/1 103/116/1 +f 103/116/1 105/117/1 107/118/1 +f 107/118/1 109/119/1 111/120/1 +f 111/120/1 113/121/1 115/13/1 +f 115/13/1 117/122/1 119/14/1 +f 119/14/1 121/123/1 123/124/1 +f 123/124/1 125/125/1 127/15/1 +f 127/15/1 99/114/1 103/116/1 +f 103/116/1 107/118/1 111/120/1 +f 111/120/1 115/13/1 127/15/1 +f 119/14/1 123/124/1 127/15/1 +f 127/15/1 103/116/1 111/120/1 +f 133/126/2 131/16/2 134/18/2 +f 143/127/3 141/19/3 144/21/3 +f 134/128/4 132/129/4 130/130/4 +f 130/130/4 160/131/4 158/24/4 +f 158/24/4 156/132/4 150/22/4 +f 154/133/4 152/134/4 150/22/4 +f 150/22/4 148/135/4 142/23/4 +f 146/136/4 144/137/4 142/23/4 +f 142/23/4 140/138/4 138/139/4 +f 138/139/4 136/140/4 142/23/4 +f 134/128/4 130/130/4 158/24/4 +f 156/132/4 154/133/4 150/22/4 +f 148/135/4 146/136/4 142/23/4 +f 142/23/4 136/140/4 134/128/4 +f 134/128/4 158/24/4 142/23/4 +f 159/27/1 129/141/1 131/142/1 +f 131/142/1 133/143/1 159/27/1 +f 135/144/1 137/145/1 139/146/1 +f 139/146/1 141/147/1 135/144/1 +f 143/25/1 145/148/1 147/149/1 +f 147/149/1 149/150/1 151/26/1 +f 151/26/1 153/151/1 155/152/1 +f 155/152/1 157/153/1 159/27/1 +f 159/27/1 133/143/1 135/144/1 +f 135/144/1 141/147/1 143/25/1 +f 143/25/1 147/149/1 151/26/1 +f 151/26/1 155/152/1 159/27/1 +f 159/27/1 135/144/1 143/25/1 +f 70/30/4 68/154/4 66/155/4 +f 66/155/4 96/156/4 94/157/4 +f 94/157/4 92/158/4 90/159/4 +f 90/159/4 88/160/4 86/28/4 +f 86/28/4 84/161/4 78/29/4 +f 82/162/4 80/163/4 78/29/4 +f 78/29/4 76/164/4 70/30/4 +f 74/165/4 72/166/4 70/30/4 +f 70/30/4 66/155/4 94/157/4 +f 94/157/4 90/159/4 70/30/4 +f 84/161/4 82/162/4 78/29/4 +f 76/164/4 74/165/4 70/30/4 +f 70/30/4 90/159/4 86/28/4 +f 164/167/4 163/31/4 134/33/4 +f 144/168/4 168/34/4 142/36/4 +f 174/169/1 173/37/1 109/39/1 +f 162/68/5 131/40/5 163/42/5 +f 166/170/1 165/43/1 141/45/1 +f 143/171/6 165/46/6 144/48/6 +f 131/172/1 162/49/1 133/51/1 +f 166/81/7 141/52/7 167/54/7 +f 161/67/8 164/55/8 133/57/8 +f 172/173/4 171/58/4 102/60/4 +f 112/174/4 176/61/4 110/63/4 +f 99/175/1 170/64/1 101/66/1 +f 163/42/9 164/55/9 162/68/9 +f 169/83/8 172/69/8 101/71/8 +f 170/84/5 99/72/5 171/74/5 +f 111/176/6 173/75/6 112/77/6 +f 174/82/7 109/78/7 175/80/7 +f 167/54/9 168/47/9 166/81/9 +f 175/80/9 176/76/9 174/82/9 +f 171/74/9 172/69/9 170/84/9 +s 1 +f 1/177/10 2/178/11 4/179/12 +f 4/179/12 6/180/13 5/181/14 +f 6/180/13 8/182/15 7/183/16 +f 8/182/15 10/184/17 9/185/9 +f 9/186/9 10/187/17 12/188/18 +f 12/188/18 14/189/19 13/190/20 +f 13/190/20 14/189/19 16/191/21 +f 16/191/21 18/192/22 17/193/23 +f 18/192/22 20/194/24 19/195/25 +f 19/195/25 20/194/24 22/196/26 +f 22/196/26 24/197/27 23/198/28 +f 24/197/27 26/199/29 25/200/30 +f 25/200/30 26/199/29 28/201/31 +f 27/202/32 28/201/31 30/203/33 +f 31/204/34 32/205/35 2/178/11 +f 29/206/36 30/203/33 32/205/35 +f 34/207/10 36/208/37 35/209/38 +f 36/208/37 38/210/14 37/211/39 +f 37/211/39 38/210/14 40/212/16 +f 39/213/40 40/212/16 42/214/9 +f 42/215/9 44/216/41 43/217/42 +f 44/216/41 46/218/20 45/219/43 +f 46/218/20 48/220/44 47/221/45 +f 48/220/44 50/222/23 49/223/46 +f 50/222/23 52/224/25 51/225/47 +f 51/225/47 52/224/25 54/226/48 +f 53/227/49 54/226/48 56/228/28 +f 56/228/28 58/229/30 57/230/50 +f 57/230/50 58/229/30 60/231/32 +f 59/232/51 60/231/32 62/233/36 +f 63/234/52 64/235/34 34/207/10 +f 61/236/53 62/233/36 64/235/34 +f 98/237/54 100/238/55 99/239/56 +f 102/240/57 104/241/58 103/242/59 +f 104/241/58 106/243/60 105/244/61 +f 106/245/60 108/246/62 107/247/63 +f 108/246/62 110/248/64 109/249/65 +f 112/250/66 114/251/67 113/252/68 +f 114/251/67 116/253/69 115/254/70 +f 115/254/70 116/253/69 118/255/71 +f 118/255/71 120/256/72 119/257/73 +f 120/256/72 122/258/74 121/259/75 +f 122/258/74 124/260/76 123/261/77 +f 123/261/77 124/260/76 126/262/78 +f 128/263/79 98/237/54 97/264/80 +f 125/265/81 126/262/78 128/263/79 +f 130/266/54 132/267/55 131/268/56 +f 134/269/57 136/270/58 135/271/59 +f 136/270/58 138/272/60 137/273/61 +f 138/274/60 140/275/62 139/276/63 +f 140/275/62 142/277/64 141/278/65 +f 143/279/82 144/280/66 146/281/67 +f 146/281/67 148/282/69 147/283/70 +f 148/282/69 150/284/71 149/285/83 +f 150/284/71 152/286/72 151/287/73 +f 152/286/72 154/288/74 153/289/75 +f 154/288/74 156/290/76 155/291/77 +f 156/290/76 158/292/78 157/293/81 +f 160/294/79 130/266/54 129/295/80 +f 157/293/81 158/292/78 160/294/79 +f 177/296/84 178/297/85 67/298/86 +f 178/299/85 179/300/87 69/301/88 +f 179/302/87 180/303/89 71/304/59 +f 180/305/89 181/306/90 73/307/61 +f 73/308/61 181/309/90 182/310/91 +f 182/311/91 183/312/92 77/313/93 +f 183/314/92 184/315/94 79/316/95 +f 184/317/94 185/318/96 81/319/68 +f 81/320/68 185/321/96 186/322/97 +f 83/323/70 186/324/97 187/325/98 +f 85/326/83 187/327/98 188/328/99 +f 188/329/99 189/330/100 89/331/75 +f 189/332/100 190/333/101 91/334/77 +f 190/335/101 191/336/102 93/337/81 +f 192/338/103 177/339/84 65/340/80 +f 191/341/102 192/342/103 95/343/104 +f 190/335/101 59/232/51 61/236/53 +f 59/232/51 190/333/101 189/332/100 +f 57/230/50 189/330/100 188/329/99 +f 53/227/49 55/344/105 188/328/99 +f 51/225/47 53/227/49 187/325/98 +f 49/223/46 51/225/47 186/322/97 +f 47/221/45 49/223/46 185/318/96 +f 45/219/43 47/221/45 184/315/94 +f 43/217/42 45/219/43 183/312/92 +f 43/217/42 182/310/91 181/309/90 +f 39/213/40 41/345/106 181/306/90 +f 39/213/40 180/303/89 179/302/87 +f 37/211/39 179/300/87 178/299/85 +f 35/209/38 178/297/85 177/296/84 +f 33/346/107 177/339/84 192/338/103 +f 63/234/52 192/342/103 191/341/102 +f 26/199/29 24/197/27 88/347/108 +f 92/348/109 28/201/31 26/199/29 +f 94/349/110 30/203/33 28/201/31 +f 96/350/111 32/205/35 30/203/33 +f 66/351/112 2/178/11 32/205/35 +f 68/352/113 4/179/12 2/178/11 +f 70/353/114 6/180/13 4/179/12 +f 72/354/115 8/182/15 6/180/13 +f 74/355/116 10/184/17 8/182/15 +f 12/188/18 10/187/17 74/356/116 +f 14/189/19 12/188/18 76/357/117 +f 16/191/21 14/189/19 78/358/118 +f 18/192/22 16/191/21 80/359/119 +f 20/194/24 18/192/22 82/360/120 +f 22/196/26 20/194/24 84/361/121 +f 24/197/27 22/196/26 86/362/122 +f 195/363/30 200/364/36 201/365/123 +f 193/366/124 198/367/125 199/368/126 +f 196/369/127 201/365/123 202/370/128 +f 194/371/129 199/368/126 200/364/36 +f 200/372/36 205/373/10 206/374/130 +f 198/375/125 203/376/131 204/377/132 +f 201/378/123 206/374/130 207/379/133 +f 199/380/126 204/377/132 205/373/10 +f 207/381/133 206/382/130 211/383/134 +f 204/384/132 209/385/135 210/386/14 +f 205/387/10 210/386/14 211/383/134 +f 204/384/132 203/388/131 208/389/136 +f 209/390/135 214/391/137 215/392/9 +f 210/393/14 215/392/9 216/394/138 +f 209/390/135 208/395/136 213/396/139 +f 212/397/140 211/398/134 216/394/138 +f 215/399/9 220/400/20 221/401/141 +f 213/402/139 218/403/142 219/404/143 +f 217/405/144 216/406/138 221/401/141 +f 215/399/9 214/407/137 219/404/143 +f 218/408/142 223/409/145 224/410/146 +f 221/411/141 226/412/147 227/413/148 +f 220/414/20 219/415/143 224/410/146 +f 220/414/20 225/416/23 226/412/147 +f 226/417/147 231/418/149 232/419/150 +f 225/420/23 224/421/146 229/422/151 +f 226/417/147 225/420/23 230/423/48 +f 223/424/145 228/425/152 229/422/151 +f 231/426/149 230/427/48 195/428/30 +f 228/429/152 193/430/124 194/431/129 +f 231/426/149 196/432/127 197/433/153 +f 229/434/151 194/431/129 195/428/30 +f 3/435/37 1/177/10 4/179/12 +f 3/435/37 4/179/12 5/181/14 +f 5/181/14 6/180/13 7/183/16 +f 7/183/16 8/182/15 9/185/9 +f 11/436/41 9/186/9 12/188/18 +f 11/436/41 12/188/18 13/190/20 +f 15/437/44 13/190/20 16/191/21 +f 15/437/44 16/191/21 17/193/23 +f 17/193/23 18/192/22 19/195/25 +f 21/438/48 19/195/25 22/196/26 +f 21/438/48 22/196/26 23/198/28 +f 23/198/28 24/197/27 25/200/30 +f 27/202/32 25/200/30 28/201/31 +f 29/206/36 27/202/32 30/203/33 +f 1/177/10 31/204/34 2/178/11 +f 31/204/34 29/206/36 32/205/35 +f 33/346/107 34/207/10 35/209/38 +f 35/209/38 36/208/37 37/211/39 +f 39/213/40 37/211/39 40/212/16 +f 41/345/106 39/213/40 42/214/9 +f 41/439/106 42/215/9 43/217/42 +f 43/217/42 44/216/41 45/219/43 +f 45/219/43 46/218/20 47/221/45 +f 47/221/45 48/220/44 49/223/46 +f 49/223/46 50/222/23 51/225/47 +f 53/227/49 51/225/47 54/226/48 +f 55/344/105 53/227/49 56/228/28 +f 55/344/105 56/228/28 57/230/50 +f 59/232/51 57/230/50 60/231/32 +f 61/236/53 59/232/51 62/233/36 +f 33/346/107 63/234/52 34/207/10 +f 63/234/52 61/236/53 64/235/34 +f 97/264/80 98/237/54 99/239/56 +f 101/440/154 102/240/57 103/242/59 +f 103/242/59 104/241/58 105/244/61 +f 105/441/61 106/245/60 107/247/63 +f 107/247/63 108/246/62 109/249/65 +f 111/442/82 112/250/66 113/252/68 +f 113/252/68 114/251/67 115/254/70 +f 117/443/83 115/254/70 118/255/71 +f 117/443/83 118/255/71 119/257/73 +f 119/257/73 120/256/72 121/259/75 +f 121/259/75 122/258/74 123/261/77 +f 125/265/81 123/261/77 126/262/78 +f 127/444/104 128/263/79 97/264/80 +f 127/444/104 125/265/81 128/263/79 +f 129/295/80 130/266/54 131/268/56 +f 133/445/154 134/269/57 135/271/59 +f 135/271/59 136/270/58 137/273/61 +f 137/446/61 138/274/60 139/276/63 +f 139/276/63 140/275/62 141/278/65 +f 145/447/68 143/279/82 146/281/67 +f 145/447/68 146/281/67 147/283/70 +f 147/283/70 148/282/69 149/285/83 +f 149/285/83 150/284/71 151/287/73 +f 151/287/73 152/286/72 153/289/75 +f 153/289/75 154/288/74 155/291/77 +f 155/291/77 156/290/76 157/293/81 +f 159/448/104 160/294/79 129/295/80 +f 159/448/104 157/293/81 160/294/79 +f 65/449/80 177/296/84 67/298/86 +f 67/450/86 178/299/85 69/301/88 +f 69/451/88 179/302/87 71/304/59 +f 71/452/59 180/305/89 73/307/61 +f 75/453/63 73/308/61 182/310/91 +f 75/454/63 182/311/91 77/313/93 +f 77/455/93 183/314/92 79/316/95 +f 79/456/95 184/317/94 81/319/68 +f 83/457/70 81/320/68 186/322/97 +f 85/458/83 83/323/70 187/325/98 +f 87/459/73 85/326/83 188/328/99 +f 87/460/73 188/329/99 89/331/75 +f 89/461/75 189/332/100 91/334/77 +f 91/462/77 190/335/101 93/337/81 +f 95/463/104 192/338/103 65/340/80 +f 93/464/81 191/341/102 95/343/104 +f 191/336/102 190/335/101 61/236/53 +f 57/230/50 59/232/51 189/332/100 +f 55/344/105 57/230/50 188/329/99 +f 187/327/98 53/227/49 188/328/99 +f 186/324/97 51/225/47 187/325/98 +f 185/321/96 49/223/46 186/322/97 +f 184/317/94 47/221/45 185/318/96 +f 183/314/92 45/219/43 184/315/94 +f 182/311/91 43/217/42 183/312/92 +f 41/439/106 43/217/42 181/309/90 +f 180/305/89 39/213/40 181/306/90 +f 37/211/39 39/213/40 179/302/87 +f 35/209/38 37/211/39 178/299/85 +f 33/346/107 35/209/38 177/296/84 +f 63/234/52 33/346/107 192/338/103 +f 61/236/53 63/234/52 191/341/102 +f 90/465/155 26/199/29 88/347/108 +f 90/466/155 92/348/109 26/199/29 +f 92/467/109 94/349/110 28/201/31 +f 94/468/110 96/350/111 30/203/33 +f 96/469/111 66/351/112 32/205/35 +f 66/470/112 68/352/113 2/178/11 +f 68/471/113 70/353/114 4/179/12 +f 70/472/114 72/354/115 6/180/13 +f 72/473/115 74/355/116 8/182/15 +f 76/474/117 12/188/18 74/356/116 +f 78/475/118 14/189/19 76/357/117 +f 80/476/119 16/191/21 78/358/118 +f 82/477/120 18/192/22 80/359/119 +f 84/478/121 20/194/24 82/360/120 +f 86/479/122 22/196/26 84/361/121 +f 88/480/108 24/197/27 86/362/122 +f 196/369/127 195/363/30 201/365/123 +f 194/371/129 193/366/124 199/368/126 +f 197/481/153 196/369/127 202/370/128 +f 195/363/30 194/371/129 200/364/36 +f 201/378/123 200/372/36 206/374/130 +f 199/380/126 198/375/125 204/377/132 +f 202/482/128 201/378/123 207/379/133 +f 200/372/36 199/380/126 205/373/10 +f 212/483/140 207/381/133 211/383/134 +f 205/387/10 204/384/132 210/386/14 +f 206/382/130 205/387/10 211/383/134 +f 209/385/135 204/384/132 208/389/136 +f 210/393/14 209/390/135 215/392/9 +f 211/398/134 210/393/14 216/394/138 +f 214/391/137 209/390/135 213/396/139 +f 217/484/144 212/397/140 216/394/138 +f 216/406/138 215/399/9 221/401/141 +f 214/407/137 213/402/139 219/404/143 +f 222/485/156 217/405/144 221/401/141 +f 220/400/20 215/399/9 219/404/143 +f 219/415/143 218/408/142 224/410/146 +f 222/486/156 221/411/141 227/413/148 +f 225/416/23 220/414/20 224/410/146 +f 221/411/141 220/414/20 226/412/147 +f 227/487/148 226/417/147 232/419/150 +f 230/423/48 225/420/23 229/422/151 +f 231/418/149 226/417/147 230/423/48 +f 224/421/146 223/424/145 229/422/151 +f 196/432/127 231/426/149 195/428/30 +f 229/434/151 228/429/152 194/431/129 +f 232/488/150 231/426/149 197/433/153 +f 230/427/48 229/434/151 195/428/30 diff --git a/assets/hbm/models/epress_body.obj b/assets/hbm/models/epress_body.obj new file mode 100644 index 000000000..a8c49fcd0 --- /dev/null +++ b/assets/hbm/models/epress_body.obj @@ -0,0 +1,587 @@ +# Blender v2.76 (sub 0) OBJ File: 'epress_body.blend' +# www.blender.org +o Cube_Cube.001 +v -0.500000 0.000000 0.500000 +v -0.500000 1.000000 0.500000 +v -0.500000 0.000000 -0.500000 +v -0.500000 1.000000 -0.500000 +v 0.500000 0.000000 0.500000 +v 0.500000 1.000000 0.500000 +v 0.500000 0.000000 -0.500000 +v 0.500000 1.000000 -0.500000 +v -0.166667 1.000000 -0.500000 +v -0.500000 2.000000 -0.500000 +v -0.500000 2.000000 0.500000 +v -0.166667 1.000000 0.500000 +v -0.166667 2.000000 0.500000 +v -0.166667 2.000000 -0.500000 +v 0.500000 2.000000 0.500000 +v 0.500000 2.000000 -0.500000 +v 0.500000 3.000000 0.500000 +v 0.500000 3.000000 -0.500000 +v -0.166667 3.000000 0.500000 +v -0.166667 3.000000 -0.500000 +v -0.166667 2.500000 -0.500000 +v -0.166667 2.500000 0.500000 +v -0.156250 0.343750 0.500000 +v -0.156250 0.656250 0.500000 +v -0.156250 0.343750 -0.500000 +v -0.156250 0.656250 -0.500000 +v 0.156250 0.343750 0.500000 +v 0.156250 0.656250 0.500000 +v 0.500000 0.343750 -0.156250 +v 0.500000 0.656250 -0.156250 +v -0.500000 0.343750 0.156250 +v -0.500000 0.656250 0.156250 +v 0.156250 0.656250 -0.500000 +v 0.156250 0.343750 -0.500000 +v -0.500000 0.656250 -0.156250 +v -0.500000 0.343750 -0.156250 +v 0.500000 0.656250 0.156250 +v 0.500000 0.343750 0.156250 +v -0.250000 0.250000 0.500000 +v -0.250000 0.750000 0.500000 +v -0.250000 0.250000 -0.500000 +v -0.250000 0.750000 -0.500000 +v 0.250000 0.250000 0.500000 +v 0.250000 0.750000 0.500000 +v 0.250000 0.250000 -0.500000 +v 0.250000 0.750000 -0.500000 +v -0.500000 0.750000 0.250000 +v -0.500000 0.750000 -0.250000 +v -0.500000 0.250000 -0.250000 +v -0.500000 0.250000 0.250000 +v 0.500000 0.250000 0.250000 +v 0.500000 0.250000 -0.250000 +v 0.500000 0.750000 -0.250000 +v 0.500000 0.750000 0.250000 +v 0.450000 0.750000 -0.250000 +v 0.450000 0.250000 -0.250000 +v 0.450000 0.750000 0.250000 +v 0.450000 0.250000 0.250000 +v 0.450000 0.656250 -0.156250 +v 0.450000 0.656250 0.156250 +v 0.450000 0.343750 0.156250 +v 0.450000 0.343750 -0.156250 +v -0.156250 0.656250 -0.450000 +v 0.156250 0.656250 -0.450000 +v 0.156250 0.343750 -0.450000 +v -0.156250 0.343750 -0.450000 +v -0.250000 0.750000 -0.450000 +v -0.250000 0.250000 -0.450000 +v 0.250000 0.750000 -0.450000 +v 0.250000 0.250000 -0.450000 +v -0.450000 0.250000 0.250000 +v -0.450000 0.750000 0.250000 +v -0.450000 0.750000 -0.250000 +v -0.450000 0.250000 -0.250000 +v -0.450000 0.343750 0.156250 +v -0.450000 0.656250 0.156250 +v -0.450000 0.656250 -0.156250 +v -0.450000 0.343750 -0.156250 +v 0.156250 0.656250 0.450000 +v -0.156250 0.656250 0.450000 +v -0.156250 0.343750 0.450000 +v 0.156250 0.343750 0.450000 +v -0.250000 0.250000 0.450000 +v -0.250000 0.750000 0.450000 +v 0.250000 0.750000 0.450000 +v 0.250000 0.250000 0.450000 +v 0.500000 2.175000 -0.325000 +v 0.500000 2.175000 0.325000 +v 0.500000 2.825000 -0.325000 +v 0.500000 2.825000 0.325000 +v 0.350000 2.175000 -0.325000 +v 0.350000 2.175000 0.325000 +v 0.350000 2.825000 -0.325000 +v 0.350000 2.825000 0.325000 +v 0.350000 2.175000 -0.151667 +v 0.350000 2.825000 -0.151667 +v 0.350000 2.175000 0.281667 +v 0.350000 2.175000 0.151667 +v 0.350000 2.825000 0.151667 +v 0.350000 2.825000 0.281667 +v 0.350000 2.175000 0.065000 +v 0.350000 2.175000 -0.065000 +v 0.350000 2.825000 -0.065000 +v 0.350000 2.825000 0.065000 +v 0.400000 2.175000 -0.151667 +v 0.400000 2.175000 -0.281667 +v 0.400000 2.825000 -0.281667 +v 0.400000 2.825000 -0.151667 +v 0.400000 2.175000 0.281667 +v 0.400000 2.175000 0.151667 +v 0.400000 2.825000 0.151667 +v 0.400000 2.825000 0.281667 +v 0.400000 2.175000 0.065000 +v 0.400000 2.175000 -0.065000 +v 0.400000 2.825000 -0.065000 +v 0.400000 2.825000 0.065000 +v 0.450000 2.175000 -0.184167 +v 0.450000 2.175000 -0.249167 +v 0.450000 2.825000 -0.249167 +v 0.450000 2.825000 -0.184167 +v 0.450000 2.175000 0.249167 +v 0.450000 2.175000 0.184167 +v 0.450000 2.825000 0.184167 +v 0.450000 2.825000 0.249167 +v 0.450000 2.175000 0.032500 +v 0.450000 2.175000 -0.032500 +v 0.450000 2.825000 -0.032500 +v 0.450000 2.825000 0.032500 +v 0.350000 2.825000 -0.281667 +v 0.350000 2.175000 -0.281667 +vt 0.657280 0.519248 +vt 0.657280 0.629673 +vt 0.491641 0.629673 +vt 0.436429 0.016646 +vt 0.602067 0.016646 +vt 0.602067 0.182285 +vt 0.403136 0.519248 +vt 0.403136 0.684886 +vt 0.237498 0.684886 +vt 0.292710 0.016646 +vt 0.292710 0.127072 +vt 0.127072 0.127072 +vt 0.237497 0.519248 +vt 0.182285 0.684886 +vt 0.458349 0.519248 +vt 0.458349 0.684886 +vt 0.182285 0.519248 +vt 0.016646 0.684886 +vt 0.263724 0.156059 +vt 0.156059 0.156059 +vt 0.292710 0.292710 +vt 0.292710 0.403136 +vt 0.127072 0.403136 +vt 0.182285 0.767705 +vt 0.403136 0.209891 +vt 0.292710 0.485955 +vt 0.127072 0.485955 +vt 0.237498 0.784422 +vt 0.458349 0.767705 +vt 0.127072 0.292710 +vt 0.016646 0.292710 +vt 0.016646 0.209891 +vt 0.830994 0.527529 +vt 0.830994 0.579291 +vt 0.779232 0.579292 +vt 0.819797 0.364817 +vt 0.819797 0.416579 +vt 0.768035 0.416579 +vt 0.444710 0.466270 +vt 0.444710 0.414508 +vt 0.496472 0.414508 +vt 0.776317 0.076690 +vt 0.776317 0.024928 +vt 0.828079 0.024928 +vt 0.223694 0.941944 +vt 0.306514 0.941944 +vt 0.347923 0.983353 +vt 0.223694 0.859125 +vt 0.182285 0.817715 +vt 0.347923 0.817715 +vt 0.182285 0.983354 +vt 0.140875 0.941944 +vt 0.071859 0.983354 +vt 0.140875 0.859125 +vt 0.058056 0.859125 +vt 0.016646 0.817715 +vt 0.058056 0.941944 +vt 0.016646 0.983354 +vt 0.637790 0.941944 +vt 0.679200 0.983353 +vt 0.513562 0.983353 +vt 0.554971 0.859125 +vt 0.513561 0.817715 +vt 0.679200 0.817715 +vt 0.554971 0.941944 +vt 0.458349 0.983353 +vt 0.389333 0.941944 +vt 0.472152 0.941944 +vt 0.472152 0.859125 +vt 0.389333 0.859125 +vt 0.734743 0.107747 +vt 0.726461 0.107747 +vt 0.726461 0.024928 +vt 0.768035 0.076690 +vt 0.768035 0.024928 +vt 0.726461 0.016646 +vt 0.643641 0.024928 +vt 0.635359 0.024928 +vt 0.643641 0.107747 +vt 0.718179 0.215577 +vt 0.718179 0.223859 +vt 0.635360 0.223859 +vt 0.635360 0.314960 +vt 0.635360 0.306678 +vt 0.718179 0.306678 +vt 0.496472 0.466270 +vt 0.496472 0.474552 +vt 0.444710 0.474552 +vt 0.444710 0.406226 +vt 0.496472 0.406226 +vt 0.759753 0.416579 +vt 0.759753 0.364817 +vt 0.828079 0.364817 +vt 0.828079 0.416579 +vt 0.491641 0.671248 +vt 0.499923 0.671248 +vt 0.499923 0.754067 +vt 0.591024 0.754067 +vt 0.582742 0.754067 +vt 0.582742 0.671248 +vt 0.779232 0.527530 +vt 0.779232 0.519248 +vt 0.830994 0.519248 +vt 0.830994 0.587573 +vt 0.779232 0.587573 +vt 0.627078 0.356535 +vt 0.635360 0.356535 +vt 0.635360 0.439354 +vt 0.726461 0.439354 +vt 0.718179 0.439354 +vt 0.718179 0.356535 +vt 0.702650 0.291150 +vt 0.650888 0.239388 +vt 0.650888 0.291150 +vt 0.702650 0.239388 +vt 0.726461 0.306678 +vt 0.436429 0.466270 +vt 0.436429 0.414508 +vt 0.504754 0.414508 +vt 0.504754 0.466270 +vt 0.627078 0.223859 +vt 0.515452 0.738538 +vt 0.515452 0.686776 +vt 0.567214 0.686776 +vt 0.582742 0.662966 +vt 0.499923 0.762349 +vt 0.819797 0.424861 +vt 0.768035 0.424861 +vt 0.768035 0.364817 +vt 0.768035 0.356535 +vt 0.819797 0.356535 +vt 0.702650 0.372063 +vt 0.650888 0.372063 +vt 0.702650 0.423825 +vt 0.650888 0.423825 +vt 0.635360 0.447636 +vt 0.718179 0.348253 +vt 0.839276 0.527529 +vt 0.839276 0.579291 +vt 0.770950 0.579292 +vt 0.770950 0.527530 +vt 0.710932 0.092219 +vt 0.659170 0.040457 +vt 0.828079 0.076690 +vt 0.828079 0.084972 +vt 0.776317 0.084972 +vt 0.836361 0.024928 +vt 0.836361 0.076690 +vt 0.643641 0.116029 +vt 0.776317 0.016646 +vt 0.828079 0.016646 +vt 0.436429 0.240423 +vt 0.461274 0.240423 +vt 0.461274 0.348088 +vt 0.156059 0.263724 +vt 0.263724 0.263724 +vt 0.729376 0.626913 +vt 0.729376 0.519248 +vt 0.737658 0.519248 +vt 0.593785 0.348088 +vt 0.568939 0.348088 +vt 0.568939 0.240423 +vt 0.719498 0.626913 +vt 0.719498 0.519248 +vt 0.461274 0.215577 +vt 0.708732 0.626913 +vt 0.698854 0.519248 +vt 0.698854 0.626913 +vt 0.690572 0.626913 +vt 0.798557 0.323242 +vt 0.798557 0.215577 +vt 0.806839 0.215577 +vt 0.768035 0.215577 +vt 0.768035 0.323242 +vt 0.759753 0.323242 +vt 0.729376 0.767870 +vt 0.729376 0.660205 +vt 0.737658 0.660205 +vt 0.698854 0.660205 +vt 0.698854 0.767870 +vt 0.690572 0.767870 +vt 0.708732 0.519248 +vt 0.788679 0.215577 +vt 0.788679 0.323242 +vt 0.777913 0.323242 +vt 0.777913 0.215577 +vt 0.719498 0.660205 +vt 0.719498 0.767870 +vt 0.708732 0.767870 +vt 0.708732 0.660205 +vt 0.461274 0.372934 +vt 0.491641 0.519248 +vt 0.436429 0.182285 +vt 0.127072 0.016646 +vt 0.016646 0.519248 +vt 0.403136 0.127072 +vt 0.403136 0.292710 +vt 0.403136 0.784422 +vt 0.016646 0.127072 +vt 0.306514 0.859125 +vt 0.637790 0.859124 +vt 0.734743 0.024928 +vt 0.643641 0.016646 +vt 0.635359 0.107747 +vt 0.635360 0.215577 +vt 0.718179 0.314960 +vt 0.491641 0.754067 +vt 0.591024 0.671248 +vt 0.627078 0.439354 +vt 0.726461 0.356535 +vt 0.726461 0.223859 +vt 0.627078 0.306678 +vt 0.567214 0.738538 +vt 0.499923 0.662966 +vt 0.582742 0.762349 +vt 0.718179 0.447636 +vt 0.635360 0.348253 +vt 0.659170 0.092219 +vt 0.710932 0.040457 +vt 0.726461 0.116029 +vt 0.436429 0.348088 +vt 0.737658 0.626913 +vt 0.593785 0.240423 +vt 0.568939 0.215577 +vt 0.690572 0.519248 +vt 0.806839 0.323242 +vt 0.759753 0.215577 +vt 0.737658 0.767870 +vt 0.690572 0.660205 +vt 0.568939 0.372934 +vn 0.000000 1.000000 0.000000 +vn 0.000000 -1.000000 0.000000 +vn -1.000000 0.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 0.000000 0.000000 1.000000 +vn 1.000000 0.000000 0.000000 +vn -0.832100 0.554700 0.000000 +vn 0.545000 0.000000 -0.838400 +vn 0.545000 0.000000 0.838400 +s off +f 8/1/1 9/2/1 12/3/1 +f 3/4/2 7/5/2 5/6/2 +f 2/7/3 11/8/3 10/9/3 +f 14/10/2 16/11/2 15/12/2 +f 4/13/4 10/9/4 14/14/4 +f 12/15/5 13/16/5 11/8/5 +f 9/17/6 14/14/6 13/18/6 +f 16/11/6 87/19/6 88/20/6 +f 18/21/1 20/22/1 19/23/1 +f 14/14/4 10/9/4 21/24/4 +f 21/25/4 18/21/4 16/11/4 +f 20/22/3 21/26/3 22/27/3 +f 21/28/7 10/9/7 11/8/7 +f 11/8/5 13/16/5 22/29/5 +f 17/30/5 19/31/5 22/32/5 +f 35/33/3 36/34/3 31/35/3 +f 33/36/4 34/37/4 25/38/4 +f 37/39/6 38/40/6 29/41/6 +f 24/42/5 23/43/5 27/44/5 +f 54/45/6 53/46/6 8/47/6 +f 51/48/6 5/49/6 7/50/6 +f 54/45/6 6/51/6 5/49/6 +f 44/52/5 6/51/5 12/53/5 +f 5/49/5 6/51/5 44/52/5 +f 43/54/5 39/55/5 1/56/5 +f 40/57/5 2/58/5 1/56/5 +f 47/59/3 2/60/3 4/61/3 +f 49/62/3 3/63/3 1/64/3 +f 1/64/3 2/60/3 47/59/3 +f 48/65/3 4/61/3 3/63/3 +f 9/66/4 46/67/4 42/68/4 +f 3/63/4 4/61/4 42/68/4 +f 41/69/4 45/70/4 7/50/4 +f 46/67/4 8/47/4 7/50/4 +f 7/50/6 8/47/6 53/46/6 +f 44/71/3 85/72/3 86/73/3 +f 24/42/3 80/74/3 81/75/3 +f 43/76/1 86/73/1 83/77/1 +f 39/78/6 83/77/6 84/79/6 +f 52/80/1 56/81/1 58/82/1 +f 54/83/2 57/84/2 55/85/2 +f 30/86/1 59/87/1 60/88/1 +f 38/40/2 61/89/2 62/90/2 +f 25/38/3 66/91/3 63/92/3 +f 33/36/6 64/93/6 65/94/6 +f 46/95/2 69/96/2 67/97/2 +f 41/98/1 68/99/1 70/100/1 +f 32/101/1 76/102/1 77/103/1 +f 36/34/2 78/104/2 75/105/2 +f 47/106/4 72/107/4 71/108/4 +f 49/109/5 74/110/5 73/111/5 +f 59/112/6 55/85/6 57/84/6 +f 61/113/6 60/114/6 57/84/6 +f 62/115/6 61/113/6 58/82/6 +f 55/85/6 59/112/6 62/115/6 +f 53/116/5 55/85/5 56/81/5 +f 37/39/5 60/117/5 61/118/5 +f 29/41/4 62/119/4 59/120/4 +f 51/121/4 58/82/4 57/84/4 +f 63/122/4 67/97/4 69/96/4 +f 64/123/4 69/96/4 70/100/4 +f 65/124/4 70/100/4 68/99/4 +f 68/99/4 67/97/4 63/122/4 +f 45/125/3 70/100/3 69/96/3 +f 42/126/6 67/97/6 68/99/6 +f 34/37/2 65/127/2 66/128/2 +f 26/129/1 63/130/1 64/131/1 +f 77/132/3 76/133/3 72/107/3 +f 78/134/3 77/132/3 73/111/3 +f 75/135/3 78/134/3 74/110/3 +f 76/133/3 75/135/3 71/108/3 +f 50/136/1 71/108/1 74/110/1 +f 48/137/2 73/111/2 72/107/2 +f 35/33/4 77/138/4 78/139/4 +f 31/35/5 75/140/5 76/141/5 +f 79/142/5 85/72/5 84/79/5 +f 86/73/5 85/72/5 79/142/5 +f 81/143/5 83/77/5 86/73/5 +f 84/79/5 83/77/5 81/143/5 +f 28/144/1 79/145/1 80/146/1 +f 27/44/6 82/147/6 79/148/6 +f 40/149/2 84/79/2 85/72/2 +f 23/43/2 81/150/2 82/151/2 +f 88/152/4 92/153/4 94/154/4 +f 15/12/6 88/20/6 90/155/6 +f 17/30/6 90/155/6 89/156/6 +f 18/21/6 89/156/6 87/19/6 +f 107/157/4 106/158/4 130/159/4 +f 89/160/5 93/161/5 91/162/5 +f 119/163/8 118/164/8 106/158/8 +f 91/162/1 92/153/1 88/165/1 +f 118/164/6 119/163/6 120/166/6 +f 105/167/5 108/168/5 96/169/5 +f 111/170/4 110/171/4 98/172/4 +f 109/173/5 112/174/5 100/175/5 +f 115/176/4 114/177/4 102/178/4 +f 113/179/5 116/180/5 104/181/5 +f 117/182/9 120/166/9 108/168/9 +f 122/183/6 123/184/6 124/185/6 +f 123/184/8 122/183/8 110/171/8 +f 121/186/9 124/185/9 112/174/9 +f 126/187/6 127/188/6 128/189/6 +f 127/188/8 126/187/8 114/177/8 +f 125/190/9 128/189/9 116/180/9 +f 90/191/2 94/154/2 93/161/2 +f 94/154/6 92/153/6 91/162/6 +f 6/192/1 8/1/1 12/3/1 +f 1/193/2 3/4/2 5/6/2 +f 4/13/3 2/7/3 10/9/3 +f 13/194/2 14/10/2 15/12/2 +f 9/17/4 4/13/4 14/14/4 +f 2/7/5 12/15/5 11/8/5 +f 12/195/6 9/17/6 13/18/6 +f 15/12/6 16/11/6 88/20/6 +f 17/30/1 18/21/1 19/23/1 +f 16/11/4 14/196/4 21/25/4 +f 21/25/4 20/197/4 18/21/4 +f 19/23/3 20/22/3 22/27/3 +f 22/198/7 21/28/7 11/8/7 +f 22/32/5 13/199/5 15/12/5 +f 15/12/5 17/30/5 22/32/5 +f 32/101/3 35/33/3 31/35/3 +f 26/129/4 33/36/4 25/38/4 +f 30/86/6 37/39/6 29/41/6 +f 28/144/5 24/42/5 27/44/5 +f 6/51/6 54/45/6 8/47/6 +f 52/200/6 51/48/6 7/50/6 +f 51/48/6 54/45/6 5/49/6 +f 12/53/5 2/58/5 40/57/5 +f 40/57/5 44/52/5 12/53/5 +f 43/54/5 5/49/5 44/52/5 +f 5/49/5 43/54/5 1/56/5 +f 39/55/5 40/57/5 1/56/5 +f 48/65/3 47/59/3 4/61/3 +f 50/201/3 49/62/3 1/64/3 +f 50/201/3 1/64/3 47/59/3 +f 49/62/3 48/65/3 3/63/3 +f 42/68/4 4/61/4 9/66/4 +f 9/66/4 8/47/4 46/67/4 +f 41/69/4 3/63/4 42/68/4 +f 3/63/4 41/69/4 7/50/4 +f 45/70/4 46/67/4 7/50/4 +f 52/200/6 7/50/6 53/46/6 +f 43/202/3 44/71/3 86/73/3 +f 23/43/3 24/42/3 81/75/3 +f 39/203/1 43/76/1 83/77/1 +f 40/204/6 39/78/6 84/79/6 +f 51/205/1 52/80/1 58/82/1 +f 53/206/2 54/83/2 55/85/2 +f 37/39/1 30/86/1 60/88/1 +f 29/41/2 38/40/2 62/90/2 +f 26/129/3 25/38/3 63/92/3 +f 34/37/6 33/36/6 65/94/6 +f 42/207/2 46/95/2 67/97/2 +f 45/208/1 41/98/1 70/100/1 +f 35/33/1 32/101/1 77/103/1 +f 31/35/2 36/34/2 75/105/2 +f 50/209/4 47/106/4 71/108/4 +f 48/210/5 49/109/5 73/111/5 +f 60/114/6 59/112/6 57/84/6 +f 58/82/6 61/113/6 57/84/6 +f 56/81/6 62/115/6 58/82/6 +f 56/81/6 55/85/6 62/115/6 +f 52/211/5 53/116/5 56/81/5 +f 38/40/5 37/39/5 61/118/5 +f 30/86/4 29/41/4 59/120/4 +f 54/212/4 51/121/4 57/84/4 +f 64/123/4 63/122/4 69/96/4 +f 65/124/4 64/123/4 70/100/4 +f 66/213/4 65/124/4 68/99/4 +f 66/213/4 68/99/4 63/122/4 +f 46/214/3 45/125/3 69/96/3 +f 41/215/6 42/126/6 68/99/6 +f 25/38/2 34/37/2 66/128/2 +f 33/36/1 26/129/1 64/131/1 +f 73/111/3 77/132/3 72/107/3 +f 74/110/3 78/134/3 73/111/3 +f 71/108/3 75/135/3 74/110/3 +f 72/107/3 76/133/3 71/108/3 +f 49/216/1 50/136/1 74/110/1 +f 47/217/2 48/137/2 72/107/2 +f 36/34/4 35/33/4 78/139/4 +f 32/101/5 31/35/5 76/141/5 +f 80/218/5 79/142/5 84/79/5 +f 82/219/5 86/73/5 79/142/5 +f 82/219/5 81/143/5 86/73/5 +f 80/218/5 84/79/5 81/143/5 +f 24/42/1 28/144/1 80/146/1 +f 28/144/6 27/44/6 79/148/6 +f 44/220/2 40/149/2 85/72/2 +f 27/44/2 23/43/2 82/151/2 +f 90/221/4 88/152/4 94/154/4 +f 17/30/6 15/12/6 90/155/6 +f 18/21/6 17/30/6 89/156/6 +f 16/11/6 18/21/6 87/19/6 +f 129/222/4 107/157/4 130/159/4 +f 87/223/5 89/160/5 91/162/5 +f 107/157/8 119/163/8 106/158/8 +f 87/224/1 91/162/1 88/165/1 +f 117/182/6 118/164/6 120/166/6 +f 95/225/5 105/167/5 96/169/5 +f 99/226/4 111/170/4 98/172/4 +f 97/227/5 109/173/5 100/175/5 +f 103/228/4 115/176/4 102/178/4 +f 101/229/5 113/179/5 104/181/5 +f 105/167/9 117/182/9 108/168/9 +f 121/186/6 122/183/6 124/185/6 +f 111/170/8 123/184/8 110/171/8 +f 109/173/9 121/186/9 112/174/9 +f 125/190/6 126/187/6 128/189/6 +f 115/176/8 127/188/8 114/177/8 +f 113/179/9 125/190/9 116/180/9 +f 89/230/2 90/191/2 93/161/2 +f 93/161/6 94/154/6 91/162/6 diff --git a/assets/hbm/models/epress_head.obj b/assets/hbm/models/epress_head.obj new file mode 100644 index 000000000..4dda331ea --- /dev/null +++ b/assets/hbm/models/epress_head.obj @@ -0,0 +1,125 @@ +# Blender v2.76 (sub 0) OBJ File: 'epress_head.blend' +# www.blender.org +o Cube.001_Cube.002 +v -0.100000 0.000000 0.375000 +v -0.100000 0.125000 0.375000 +v -0.100000 0.000000 -0.375000 +v -0.100000 0.125000 -0.375000 +v 0.400000 0.000000 0.375000 +v 0.400000 0.125000 0.375000 +v 0.400000 0.000000 -0.375000 +v 0.400000 0.125000 -0.375000 +v -0.100000 0.125000 0.000000 +v 0.400000 0.125000 0.000000 +v 0.300000 0.125000 -0.075000 +v 0.300000 0.125000 -0.300000 +v 0.000000 0.125000 -0.300000 +v 0.000000 0.125000 -0.075000 +v 0.300000 0.125000 0.300000 +v 0.300000 0.125000 0.075000 +v 0.000000 0.125000 0.075000 +v 0.000000 0.125000 0.300000 +v 0.300000 1.000000 -0.300000 +v 0.300000 1.000000 -0.075000 +v 0.000000 1.000000 -0.300000 +v 0.000000 1.000000 -0.075000 +v 0.300000 1.000000 0.075000 +v 0.300000 1.000000 0.300000 +v 0.000000 1.000000 0.075000 +v 0.000000 1.000000 0.300000 +vt 0.026199 0.239343 +vt 0.079485 0.079485 +vt 0.079485 0.399201 +vt 0.292629 0.026199 +vt 0.292629 0.079485 +vt 0.345915 0.239343 +vt 0.292629 0.399201 +vt 0.079485 0.452487 +vt 0.377886 0.504884 +vt 0.377887 0.877887 +vt 0.250000 0.877887 +vt 0.388544 0.111456 +vt 0.388544 0.207371 +vt 0.516430 0.111457 +vt 0.345915 0.079485 +vt 0.516430 0.207371 +vt 0.559059 0.079485 +vt 0.559059 0.239343 +vt 0.154085 0.504884 +vt 0.154085 0.877887 +vt 0.026199 0.877887 +vt 0.388544 0.271315 +vt 0.388544 0.367229 +vt 0.345915 0.399201 +vt 0.516430 0.271315 +vt 0.516430 0.367229 +vt 0.559059 0.399201 +vt 0.973801 0.504884 +vt 0.973801 0.877887 +vt 0.877887 0.877887 +vt 0.750000 0.504884 +vt 0.750000 0.877887 +vt 0.654085 0.877887 +vt 0.473801 0.504884 +vt 0.473801 0.877886 +vt 0.654085 0.504884 +vt 0.526199 0.877887 +vt 0.250000 0.504884 +vt 0.877887 0.504884 +vt 0.026199 0.399201 +vt 0.026199 0.079485 +vt 0.079485 0.026199 +vt 0.292629 0.452487 +vt 0.026199 0.504884 +vt 0.526199 0.504884 +vn -1.000000 0.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 1.000000 0.000000 0.000000 +vn 0.000000 0.000000 1.000000 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 1.000000 0.000000 +s off +f 9/1/1 3/2/1 1/3/1 +f 8/4/2 7/5/2 3/2/2 +f 10/6/3 5/7/3 7/5/3 +f 2/8/4 1/3/4 5/7/4 +f 3/2/5 7/5/5 5/7/5 +f 13/9/2 21/10/2 19/11/2 +f 12/12/6 11/13/6 10/6/6 +f 13/14/6 12/12/6 8/15/6 +f 14/16/6 13/14/6 4/17/6 +f 11/13/6 14/16/6 9/18/6 +f 11/19/4 20/20/4 22/21/4 +f 16/22/6 15/23/6 6/24/6 +f 17/25/6 16/22/6 10/6/6 +f 18/26/6 17/25/6 9/18/6 +f 15/23/6 18/26/6 2/27/6 +f 18/28/1 26/29/1 25/30/1 +f 16/31/3 23/32/3 24/33/3 +f 14/34/1 22/35/1 21/10/1 +f 15/36/4 24/33/4 26/37/4 +f 12/38/3 19/11/3 20/20/3 +f 17/39/2 25/30/2 23/32/2 +f 1/3/1 2/40/1 9/1/1 +f 9/1/1 4/41/1 3/2/1 +f 4/42/2 8/4/2 3/2/2 +f 7/5/3 8/15/3 10/6/3 +f 10/6/3 6/24/3 5/7/3 +f 6/43/4 2/8/4 5/7/4 +f 1/3/5 3/2/5 5/7/5 +f 12/38/2 13/9/2 19/11/2 +f 8/15/6 12/12/6 10/6/6 +f 4/17/6 13/14/6 8/15/6 +f 9/18/6 14/16/6 4/17/6 +f 10/6/6 11/13/6 9/18/6 +f 14/44/4 11/19/4 22/21/4 +f 10/6/6 16/22/6 6/24/6 +f 9/18/6 17/25/6 10/6/6 +f 2/27/6 18/26/6 9/18/6 +f 6/24/6 15/23/6 2/27/6 +f 17/39/1 18/28/1 25/30/1 +f 15/36/3 16/31/3 24/33/3 +f 13/9/1 14/34/1 21/10/1 +f 18/45/4 15/36/4 26/37/4 +f 11/19/3 12/38/3 20/20/3 +f 16/31/2 17/39/2 23/32/2 diff --git a/assets/hbm/sounds/jeff.ogg b/assets/hbm/sounds/jeff.ogg new file mode 100644 index 000000000..1c251fc42 Binary files /dev/null and b/assets/hbm/sounds/jeff.ogg differ diff --git a/assets/hbm/textures/blocks/machine_coal_front_off.png b/assets/hbm/textures/blocks/machine_coal_front_off.png index 3f819a1b3..88988d8af 100644 Binary files a/assets/hbm/textures/blocks/machine_coal_front_off.png and b/assets/hbm/textures/blocks/machine_coal_front_off.png differ diff --git a/assets/hbm/textures/blocks/machine_coal_front_off_alt.png b/assets/hbm/textures/blocks/machine_coal_front_off_alt.png new file mode 100644 index 000000000..696252554 Binary files /dev/null and b/assets/hbm/textures/blocks/machine_coal_front_off_alt.png differ diff --git a/assets/hbm/textures/blocks/machine_coal_front_on.png b/assets/hbm/textures/blocks/machine_coal_front_on.png index e818e4984..b7be137c4 100644 Binary files a/assets/hbm/textures/blocks/machine_coal_front_on.png and b/assets/hbm/textures/blocks/machine_coal_front_on.png differ diff --git a/assets/hbm/textures/blocks/machine_coal_front_on_alt.png b/assets/hbm/textures/blocks/machine_coal_front_on_alt.png new file mode 100644 index 000000000..fd3db8a9a Binary files /dev/null and b/assets/hbm/textures/blocks/machine_coal_front_on_alt.png differ diff --git a/assets/hbm/textures/blocks/machine_coal_side.png b/assets/hbm/textures/blocks/machine_coal_side.png index 68b17556c..ae621d7a0 100644 Binary files a/assets/hbm/textures/blocks/machine_coal_side.png and b/assets/hbm/textures/blocks/machine_coal_side.png differ diff --git a/assets/hbm/textures/blocks/machine_coal_side_alt.png b/assets/hbm/textures/blocks/machine_coal_side_alt.png new file mode 100644 index 000000000..326238314 Binary files /dev/null and b/assets/hbm/textures/blocks/machine_coal_side_alt.png differ diff --git a/assets/hbm/textures/blocks/machine_rtg_top.png b/assets/hbm/textures/blocks/machine_rtg_top.png new file mode 100644 index 000000000..8e3391409 Binary files /dev/null and b/assets/hbm/textures/blocks/machine_rtg_top.png differ diff --git a/assets/hbm/textures/blocks/rf_cable.png b/assets/hbm/textures/blocks/rf_cable.png new file mode 100644 index 000000000..a51c96b96 Binary files /dev/null and b/assets/hbm/textures/blocks/rf_cable.png differ diff --git a/assets/hbm/textures/blocks/rf_cable_icon.png b/assets/hbm/textures/blocks/rf_cable_icon.png new file mode 100644 index 000000000..4490d71e8 Binary files /dev/null and b/assets/hbm/textures/blocks/rf_cable_icon.png differ diff --git a/assets/hbm/textures/items/assembly_calamity.png b/assets/hbm/textures/items/assembly_calamity.png new file mode 100644 index 000000000..c2b6709b6 Binary files /dev/null and b/assets/hbm/textures/items/assembly_calamity.png differ diff --git a/assets/hbm/textures/items/assembly_gold.png b/assets/hbm/textures/items/assembly_gold.png new file mode 100644 index 000000000..3ccdaccd0 Binary files /dev/null and b/assets/hbm/textures/items/assembly_gold.png differ diff --git a/assets/hbm/textures/items/assembly_iron.png b/assets/hbm/textures/items/assembly_iron.png new file mode 100644 index 000000000..15ad98f66 Binary files /dev/null and b/assets/hbm/textures/items/assembly_iron.png differ diff --git a/assets/hbm/textures/items/assembly_lead.png b/assets/hbm/textures/items/assembly_lead.png new file mode 100644 index 000000000..d9077e55b Binary files /dev/null and b/assets/hbm/textures/items/assembly_lead.png differ diff --git a/assets/hbm/textures/items/assembly_nightmare.png b/assets/hbm/textures/items/assembly_nightmare.png new file mode 100644 index 000000000..195d8644f Binary files /dev/null and b/assets/hbm/textures/items/assembly_nightmare.png differ diff --git a/assets/hbm/textures/items/assembly_nopip.png b/assets/hbm/textures/items/assembly_nopip.png new file mode 100644 index 000000000..63eeb3320 Binary files /dev/null and b/assets/hbm/textures/items/assembly_nopip.png differ diff --git a/assets/hbm/textures/items/assembly_pip.png b/assets/hbm/textures/items/assembly_pip.png new file mode 100644 index 000000000..ddebb268a Binary files /dev/null and b/assets/hbm/textures/items/assembly_pip.png differ diff --git a/assets/hbm/textures/items/assembly_schrabidium.png b/assets/hbm/textures/items/assembly_schrabidium.png new file mode 100644 index 000000000..a0be71f9a Binary files /dev/null and b/assets/hbm/textures/items/assembly_schrabidium.png differ diff --git a/assets/hbm/textures/items/assembly_smg.png b/assets/hbm/textures/items/assembly_smg.png new file mode 100644 index 000000000..40a59dd8c Binary files /dev/null and b/assets/hbm/textures/items/assembly_smg.png differ diff --git a/assets/hbm/textures/items/assembly_steel.png b/assets/hbm/textures/items/assembly_steel.png new file mode 100644 index 000000000..79a4aef67 Binary files /dev/null and b/assets/hbm/textures/items/assembly_steel.png differ diff --git a/assets/hbm/textures/items/assembly_uzi.png b/assets/hbm/textures/items/assembly_uzi.png new file mode 100644 index 000000000..a1ba4dfb4 Binary files /dev/null and b/assets/hbm/textures/items/assembly_uzi.png differ diff --git a/assets/hbm/textures/items/casing_357.png b/assets/hbm/textures/items/casing_357.png new file mode 100644 index 000000000..3a11a867a Binary files /dev/null and b/assets/hbm/textures/items/casing_357.png differ diff --git a/assets/hbm/textures/items/casing_44.png b/assets/hbm/textures/items/casing_44.png new file mode 100644 index 000000000..439189a43 Binary files /dev/null and b/assets/hbm/textures/items/casing_44.png differ diff --git a/assets/hbm/textures/items/casing_50.png b/assets/hbm/textures/items/casing_50.png new file mode 100644 index 000000000..9a53d933b Binary files /dev/null and b/assets/hbm/textures/items/casing_50.png differ diff --git a/assets/hbm/textures/items/casing_9.png b/assets/hbm/textures/items/casing_9.png new file mode 100644 index 000000000..fe5b343e8 Binary files /dev/null and b/assets/hbm/textures/items/casing_9.png differ diff --git a/assets/hbm/textures/items/casing_buckshot.png b/assets/hbm/textures/items/casing_buckshot.png new file mode 100644 index 000000000..abcff8db1 Binary files /dev/null and b/assets/hbm/textures/items/casing_buckshot.png differ diff --git a/assets/hbm/textures/items/gun_revolver_ammo.png b/assets/hbm/textures/items/gun_revolver_ammo.png index 37d74f02c..f3547c6df 100644 Binary files a/assets/hbm/textures/items/gun_revolver_ammo.png and b/assets/hbm/textures/items/gun_revolver_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_ammo_alt.png new file mode 100644 index 000000000..37d74f02c Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_cursed_ammo.png b/assets/hbm/textures/items/gun_revolver_cursed_ammo.png index 318a70da4..0b2aa0496 100644 Binary files a/assets/hbm/textures/items/gun_revolver_cursed_ammo.png and b/assets/hbm/textures/items/gun_revolver_cursed_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_cursed_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_cursed_ammo_alt.png new file mode 100644 index 000000000..318a70da4 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_cursed_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_gold_ammo.png b/assets/hbm/textures/items/gun_revolver_gold_ammo.png index 0f28b6663..57576c192 100644 Binary files a/assets/hbm/textures/items/gun_revolver_gold_ammo.png and b/assets/hbm/textures/items/gun_revolver_gold_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_gold_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_gold_ammo_alt.png new file mode 100644 index 000000000..0f28b6663 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_gold_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_iron_ammo.png b/assets/hbm/textures/items/gun_revolver_iron_ammo.png index e7d4c2137..31c7e7244 100644 Binary files a/assets/hbm/textures/items/gun_revolver_iron_ammo.png and b/assets/hbm/textures/items/gun_revolver_iron_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_iron_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_iron_ammo_alt.png new file mode 100644 index 000000000..e7d4c2137 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_iron_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_lead_ammo.png b/assets/hbm/textures/items/gun_revolver_lead_ammo.png index 3834c6de9..8c74373b0 100644 Binary files a/assets/hbm/textures/items/gun_revolver_lead_ammo.png and b/assets/hbm/textures/items/gun_revolver_lead_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_lead_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_lead_ammo_alt.png new file mode 100644 index 000000000..3834c6de9 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_lead_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_nightmare_ammo.png b/assets/hbm/textures/items/gun_revolver_nightmare_ammo.png index c2c3a5e44..d532c72b9 100644 Binary files a/assets/hbm/textures/items/gun_revolver_nightmare_ammo.png and b/assets/hbm/textures/items/gun_revolver_nightmare_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_nightmare_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_nightmare_ammo_alt.png new file mode 100644 index 000000000..c2c3a5e44 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_nightmare_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_nopip_ammo.png b/assets/hbm/textures/items/gun_revolver_nopip_ammo.png index 7e061d457..1d741d30a 100644 Binary files a/assets/hbm/textures/items/gun_revolver_nopip_ammo.png and b/assets/hbm/textures/items/gun_revolver_nopip_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_nopip_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_nopip_ammo_alt.png new file mode 100644 index 000000000..7e061d457 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_nopip_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_pip_ammo.png b/assets/hbm/textures/items/gun_revolver_pip_ammo.png index e204667a4..b0b384f74 100644 Binary files a/assets/hbm/textures/items/gun_revolver_pip_ammo.png and b/assets/hbm/textures/items/gun_revolver_pip_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_pip_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_pip_ammo_alt.png new file mode 100644 index 000000000..e204667a4 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_pip_ammo_alt.png differ diff --git a/assets/hbm/textures/items/gun_revolver_schrabidium_ammo.png b/assets/hbm/textures/items/gun_revolver_schrabidium_ammo.png index cb5cc71f3..818621466 100644 Binary files a/assets/hbm/textures/items/gun_revolver_schrabidium_ammo.png and b/assets/hbm/textures/items/gun_revolver_schrabidium_ammo.png differ diff --git a/assets/hbm/textures/items/gun_revolver_schrabidium_ammo_alt.png b/assets/hbm/textures/items/gun_revolver_schrabidium_ammo_alt.png new file mode 100644 index 000000000..cb5cc71f3 Binary files /dev/null and b/assets/hbm/textures/items/gun_revolver_schrabidium_ammo_alt.png differ diff --git a/assets/hbm/textures/items/primer_357.png b/assets/hbm/textures/items/primer_357.png new file mode 100644 index 000000000..c20411ce7 Binary files /dev/null and b/assets/hbm/textures/items/primer_357.png differ diff --git a/assets/hbm/textures/items/primer_44.png b/assets/hbm/textures/items/primer_44.png new file mode 100644 index 000000000..1b7fd5435 Binary files /dev/null and b/assets/hbm/textures/items/primer_44.png differ diff --git a/assets/hbm/textures/items/primer_50.png b/assets/hbm/textures/items/primer_50.png new file mode 100644 index 000000000..17bee59b9 Binary files /dev/null and b/assets/hbm/textures/items/primer_50.png differ diff --git a/assets/hbm/textures/items/primer_9.png b/assets/hbm/textures/items/primer_9.png new file mode 100644 index 000000000..e88ab382f Binary files /dev/null and b/assets/hbm/textures/items/primer_9.png differ diff --git a/assets/hbm/textures/items/primer_buckshot.png b/assets/hbm/textures/items/primer_buckshot.png new file mode 100644 index 000000000..701799005 Binary files /dev/null and b/assets/hbm/textures/items/primer_buckshot.png differ diff --git a/assets/hbm/textures/items/stamp_357.png b/assets/hbm/textures/items/stamp_357.png new file mode 100644 index 000000000..f87985878 Binary files /dev/null and b/assets/hbm/textures/items/stamp_357.png differ diff --git a/assets/hbm/textures/items/stamp_44.png b/assets/hbm/textures/items/stamp_44.png new file mode 100644 index 000000000..17de2d751 Binary files /dev/null and b/assets/hbm/textures/items/stamp_44.png differ diff --git a/assets/hbm/textures/items/stamp_50.png b/assets/hbm/textures/items/stamp_50.png new file mode 100644 index 000000000..5192c5a46 Binary files /dev/null and b/assets/hbm/textures/items/stamp_50.png differ diff --git a/assets/hbm/textures/items/stamp_9.png b/assets/hbm/textures/items/stamp_9.png new file mode 100644 index 000000000..11af6984b Binary files /dev/null and b/assets/hbm/textures/items/stamp_9.png differ diff --git a/assets/hbm/textures/models/centrifuge_gas.png b/assets/hbm/textures/models/centrifuge_gas.png index 5367218d3..9b56d8796 100644 Binary files a/assets/hbm/textures/models/centrifuge_gas.png and b/assets/hbm/textures/models/centrifuge_gas.png differ diff --git a/assets/hbm/textures/models/centrifuge_new.png b/assets/hbm/textures/models/centrifuge_new.png index fb7f75de8..629b4803c 100644 Binary files a/assets/hbm/textures/models/centrifuge_new.png and b/assets/hbm/textures/models/centrifuge_new.png differ diff --git a/assets/hbm/textures/models/press_body.png b/assets/hbm/textures/models/press_body.png index 62c11e6d3..48139e4fc 100644 Binary files a/assets/hbm/textures/models/press_body.png and b/assets/hbm/textures/models/press_body.png differ diff --git a/assets/hbm/textures/models/press_body_alt.png b/assets/hbm/textures/models/press_body_alt.png new file mode 100644 index 000000000..62c11e6d3 Binary files /dev/null and b/assets/hbm/textures/models/press_body_alt.png differ diff --git a/com/hbm/blocks/ModBlocks.java b/com/hbm/blocks/ModBlocks.java index 7f94e595b..7385067d0 100644 --- a/com/hbm/blocks/ModBlocks.java +++ b/com/hbm/blocks/ModBlocks.java @@ -333,6 +333,7 @@ public class ModBlocks { public static Block red_wire_coated; public static Block red_cable; public static Block red_pylon; + public static Block rf_cable; public static Block oil_duct_solid; public static Block oil_duct; public static Block gas_duct_solid; @@ -850,6 +851,7 @@ public class ModBlocks { red_wire_coated = new WireCoated(Material.iron).setBlockName("red_wire_coated").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_wire_coated"); red_cable = new BlockCable(Material.iron).setBlockName("red_cable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_cable_icon"); + rf_cable = new BlockRFCable(Material.iron).setBlockName("rf_cable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rf_cable_icon"); red_pylon = new PylonRedWire(Material.iron).setBlockName("red_pylon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); oil_duct_solid = new OilDuctSolid(Material.iron).setBlockName("oil_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":oil_duct_solid_alt"); oil_duct = new BlockOilDuct(Material.iron).setBlockName("oil_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":oil_duct_icon_alt"); @@ -1342,6 +1344,7 @@ public class ModBlocks { GameRegistry.registerBlock(red_cable, red_cable.getUnlocalizedName()); GameRegistry.registerBlock(red_wire_coated, red_wire_coated.getUnlocalizedName()); GameRegistry.registerBlock(red_pylon, red_pylon.getUnlocalizedName()); + GameRegistry.registerBlock(rf_cable, rf_cable.getUnlocalizedName()); GameRegistry.registerBlock(oil_duct, oil_duct.getUnlocalizedName()); GameRegistry.registerBlock(oil_duct_solid, oil_duct_solid.getUnlocalizedName()); GameRegistry.registerBlock(gas_duct, gas_duct.getUnlocalizedName()); diff --git a/com/hbm/blocks/bomb/NukeN45.java b/com/hbm/blocks/bomb/NukeN45.java index 363774e76..90855e18d 100644 --- a/com/hbm/blocks/bomb/NukeN45.java +++ b/com/hbm/blocks/bomb/NukeN45.java @@ -19,6 +19,7 @@ import net.minecraft.block.material.Material; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -45,7 +46,7 @@ public class NukeN45 extends BlockContainer implements IBomb { { if (!keepInventory) { - TileEntityNukeN2 tileentityfurnace = (TileEntityNukeN2)p_149749_1_.getTileEntity(p_149749_2_, p_149749_3_, p_149749_4_); + ISidedInventory tileentityfurnace = (ISidedInventory)p_149749_1_.getTileEntity(p_149749_2_, p_149749_3_, p_149749_4_); if (tileentityfurnace != null) { @@ -133,6 +134,15 @@ public class NukeN45 extends BlockContainer implements IBomb { @Override public void explode(World world, int x, int y, int z) { + + TileEntityNukeN45 entity = (TileEntityNukeN45) world.getTileEntity(x, y, z); + if(entity.getType() == 100) { + entity.primed = true; + } else if(!entity.primed && entity.getType() > 0) { + int t = entity.getType(); + entity.clearSlots(); + entity.explode(world, x, y, z, t); + } } } diff --git a/com/hbm/blocks/machine/BlockRFCable.java b/com/hbm/blocks/machine/BlockRFCable.java new file mode 100644 index 000000000..ef77281d2 --- /dev/null +++ b/com/hbm/blocks/machine/BlockRFCable.java @@ -0,0 +1,81 @@ +package com.hbm.blocks.machine; + +import com.hbm.tileentity.conductor.TileEntityRFDuct; + +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.AxisAlignedBB; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class BlockRFCable extends BlockContainer { + + public BlockRFCable(Material p_i45386_1_) { + super(p_i45386_1_); + float p = 1F/16F; + this.setBlockBounds(11 * p / 2, 11 * p / 2, 11 * p / 2, 1 - 11 * p / 2, 1 - 11 * p / 2, 1 - 11 * p / 2); + this.useNeighborBrightness = true; + } + + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + if(world.getTileEntity(x, y, z) instanceof TileEntityRFDuct) { + TileEntityRFDuct cable = (TileEntityRFDuct)world.getTileEntity(x, y, z); + + if(cable != null) + { + float p = 1F/16F; + float minX = 11 * p / 2 - (cable.connections[5] != null ? (11 * p / 2) : 0); + float minY = 11 * p / 2 - (cable.connections[1] != null ? (11 * p / 2) : 0); + float minZ = 11 * p / 2 - (cable.connections[2] != null ? (11 * p / 2) : 0); + float maxX = 1 - 11 * p / 2 + (cable.connections[3] != null ? (11 * p / 2) : 0); + float maxY = 1 - 11 * p / 2 + (cable.connections[0] != null ? (11 * p / 2) : 0); + float maxZ = 1 - 11 * p / 2 + (cable.connections[4] != null ? (11 * p / 2) : 0); + + this.setBlockBounds(minX, minY, minZ, maxX, maxY, maxZ); + } + } + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + + @Override + public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z) { + if(world.getTileEntity(x, y, z) instanceof TileEntityRFDuct) { + TileEntityRFDuct cable = (TileEntityRFDuct)world.getTileEntity(x, y, z); + + if(cable != null) + { + float p = 1F/16F; + float minX = 11 * p / 2 - (cable.connections[5] != null ? (11 * p / 2) : 0); + float minY = 11 * p / 2 - (cable.connections[1] != null ? (11 * p / 2) : 0); + float minZ = 11 * p / 2 - (cable.connections[2] != null ? (11 * p / 2) : 0); + float maxX = 1 - 11 * p / 2 + (cable.connections[3] != null ? (11 * p / 2) : 0); + float maxY = 1 - 11 * p / 2 + (cable.connections[0] != null ? (11 * p / 2) : 0); + float maxZ = 1 - 11 * p / 2 + (cable.connections[4] != null ? (11 * p / 2) : 0); + + this.setBlockBounds(minX, minY, minZ, maxX, maxY, maxZ); + } + } + } + + @Override + public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) { + return new TileEntityRFDuct(10000); + } + + @Override + public int getRenderType(){ + return -1; + } + + @Override + public boolean isOpaqueCube() { + return false; + } + + @Override + public boolean renderAsNormalBlock() { + return false; + } +} diff --git a/com/hbm/blocks/machine/MachineRTG.java b/com/hbm/blocks/machine/MachineRTG.java index b5b8492ce..8dfce9bc1 100644 --- a/com/hbm/blocks/machine/MachineRTG.java +++ b/com/hbm/blocks/machine/MachineRTG.java @@ -61,10 +61,10 @@ public class MachineRTG extends BlockContainer { else s = "null"; - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + (":machine_rtg_top_" + s)); + this.iconTop = iconRegister.registerIcon(RefStrings.MODID + (":machine_rtg_top")); //this.iconFront = iconRegister.registerIcon(RefStrings.MODID + (":reactor_front")); this.iconBottom = iconRegister.registerIcon(RefStrings.MODID + (":red_wire_coated")); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":machine_rtg_side_" + s); + this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":machine_rtg_furnace_base_alt"); } @Override diff --git a/com/hbm/handler/GUIHandler.java b/com/hbm/handler/GUIHandler.java index 4cf5f8589..5466061bf 100644 --- a/com/hbm/handler/GUIHandler.java +++ b/com/hbm/handler/GUIHandler.java @@ -4,82 +4,8 @@ import com.hbm.blocks.ModBlocks; import com.hbm.inventory.container.*; import com.hbm.inventory.gui.*; import com.hbm.items.ModItems; -import com.hbm.tileentity.*; -import com.hbm.tileentity.bomb.TileEntityBombMulti; -import com.hbm.tileentity.bomb.TileEntityCelPrime; -import com.hbm.tileentity.bomb.TileEntityLaunchPad; -import com.hbm.tileentity.bomb.TileEntityNukeBoy; -import com.hbm.tileentity.bomb.TileEntityNukeCustom; -import com.hbm.tileentity.bomb.TileEntityNukeFleija; -import com.hbm.tileentity.bomb.TileEntityNukeGadget; -import com.hbm.tileentity.bomb.TileEntityNukeMan; -import com.hbm.tileentity.bomb.TileEntityNukeMike; -import com.hbm.tileentity.bomb.TileEntityNukeN2; -import com.hbm.tileentity.bomb.TileEntityNukePrototype; -import com.hbm.tileentity.bomb.TileEntityNukeSolinium; -import com.hbm.tileentity.bomb.TileEntityNukeTsar; -import com.hbm.tileentity.bomb.TileEntityTestNuke; -import com.hbm.tileentity.machine.TileEntityAMSBase; -import com.hbm.tileentity.machine.TileEntityAMSEmitter; -import com.hbm.tileentity.machine.TileEntityAMSLimiter; -import com.hbm.tileentity.machine.TileEntityConverterHeRf; -import com.hbm.tileentity.machine.TileEntityConverterRfHe; -import com.hbm.tileentity.machine.TileEntityCoreAdvanced; -import com.hbm.tileentity.machine.TileEntityCoreTitanium; -import com.hbm.tileentity.machine.TileEntityCrateIron; -import com.hbm.tileentity.machine.TileEntityCrateSteel; -import com.hbm.tileentity.machine.TileEntityDiFurnace; -import com.hbm.tileentity.machine.TileEntityFWatzCore; -import com.hbm.tileentity.machine.TileEntityForceField; -import com.hbm.tileentity.machine.TileEntityFusionMultiblock; -import com.hbm.tileentity.machine.TileEntityMachineAssembler; -import com.hbm.tileentity.machine.TileEntityMachineBattery; -import com.hbm.tileentity.machine.TileEntityMachineBoiler; -import com.hbm.tileentity.machine.TileEntityMachineBoilerElectric; -import com.hbm.tileentity.machine.TileEntityMachineCMBFactory; -import com.hbm.tileentity.machine.TileEntityMachineCentrifuge; -import com.hbm.tileentity.machine.TileEntityMachineChemplant; -import com.hbm.tileentity.machine.TileEntityMachineCoal; -import com.hbm.tileentity.machine.TileEntityMachineCyclotron; -import com.hbm.tileentity.machine.TileEntityMachineDeuterium; -import com.hbm.tileentity.machine.TileEntityMachineDiesel; -import com.hbm.tileentity.machine.TileEntityMachineElectricFurnace; -import com.hbm.tileentity.machine.TileEntityMachineFluidTank; -import com.hbm.tileentity.machine.TileEntityMachineGasCent; -import com.hbm.tileentity.machine.TileEntityMachineGasFlare; -import com.hbm.tileentity.machine.TileEntityMachineGenerator; -import com.hbm.tileentity.machine.TileEntityMachineIGenerator; -import com.hbm.tileentity.machine.TileEntityMachineInserter; -import com.hbm.tileentity.machine.TileEntityMachineKeyForge; -import com.hbm.tileentity.machine.TileEntityMachineMiningDrill; -import com.hbm.tileentity.machine.TileEntityMachineOilWell; -import com.hbm.tileentity.machine.TileEntityMachinePress; -import com.hbm.tileentity.machine.TileEntityMachinePuF6Tank; -import com.hbm.tileentity.machine.TileEntityMachinePumpjack; -import com.hbm.tileentity.machine.TileEntityMachineRTG; -import com.hbm.tileentity.machine.TileEntityMachineRadGen; -import com.hbm.tileentity.machine.TileEntityMachineRadar; -import com.hbm.tileentity.machine.TileEntityMachineReactor; -import com.hbm.tileentity.machine.TileEntityMachineReactorSmall; -import com.hbm.tileentity.machine.TileEntityMachineRefinery; -import com.hbm.tileentity.machine.TileEntityMachineSchrabidiumTransmutator; -import com.hbm.tileentity.machine.TileEntityMachineSeleniumEngine; -import com.hbm.tileentity.machine.TileEntityMachineShredder; -import com.hbm.tileentity.machine.TileEntityMachineSiren; -import com.hbm.tileentity.machine.TileEntityMachineTeleLinker; -import com.hbm.tileentity.machine.TileEntityMachineTeleporter; -import com.hbm.tileentity.machine.TileEntityMachineTurbine; -import com.hbm.tileentity.machine.TileEntityMachineTurbofan; -import com.hbm.tileentity.machine.TileEntityMachineUF6Tank; -import com.hbm.tileentity.machine.TileEntityNukeFurnace; -import com.hbm.tileentity.machine.TileEntityRadioRec; -import com.hbm.tileentity.machine.TileEntityRadiobox; -import com.hbm.tileentity.machine.TileEntityReactorMultiblock; -import com.hbm.tileentity.machine.TileEntityReiXMainframe; -import com.hbm.tileentity.machine.TileEntityRtgFurnace; -import com.hbm.tileentity.machine.TileEntitySafe; -import com.hbm.tileentity.machine.TileEntityMachineSatLinker; -import com.hbm.tileentity.machine.TileEntityWatzCore; +import com.hbm.tileentity.bomb.*; +import com.hbm.tileentity.machine.*; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; @@ -758,6 +684,15 @@ public class GUIHandler implements IGuiHandler { } return null; } + + case ModBlocks.guiID_nuke_n45: + { + if(entity instanceof TileEntityNukeN45) + { + return new ContainerNukeN45(player.inventory, (TileEntityNukeN45) entity); + } + return null; + } } return null; } @@ -1434,6 +1369,15 @@ public class GUIHandler implements IGuiHandler { } return null; } + + case ModBlocks.guiID_nuke_n45: + { + if(entity instanceof TileEntityNukeN45) + { + return new GUINukeN45(player.inventory, (TileEntityNukeN45) entity); + } + return null; + } } } else { //CLIENTONLY GUIS diff --git a/com/hbm/inventory/MachineRecipes.java b/com/hbm/inventory/MachineRecipes.java index 7edecfb0e..f9f12c6fc 100644 --- a/com/hbm/inventory/MachineRecipes.java +++ b/com/hbm/inventory/MachineRecipes.java @@ -627,6 +627,45 @@ public class MachineRecipes { return new ItemStack(ModItems.circuit_aluminium); } + if(stamp.getItem() == ModItems.stamp_357) { + + if(input.getItem() == ModItems.assembly_iron) + return new ItemStack(ModItems.gun_revolver_iron_ammo); + if(input.getItem() == ModItems.assembly_steel) + return new ItemStack(ModItems.gun_revolver_ammo); + if(input.getItem() == ModItems.assembly_lead) + return new ItemStack(ModItems.gun_revolver_lead_ammo); + if(input.getItem() == ModItems.assembly_gold) + return new ItemStack(ModItems.gun_revolver_gold_ammo); + if(input.getItem() == ModItems.assembly_schrabidium) + return new ItemStack(ModItems.gun_revolver_schrabidium_ammo); + + if(mODE(input, "ingotSteel")) + return new ItemStack(ModItems.gun_revolver_cursed_ammo); + } + + if(stamp.getItem() == ModItems.stamp_44) { + + if(input.getItem() == ModItems.assembly_pip) + return new ItemStack(ModItems.gun_revolver_pip_ammo); + if(input.getItem() == ModItems.assembly_nopip) + return new ItemStack(ModItems.gun_revolver_nopip_ammo); + } + + if(stamp.getItem() == ModItems.stamp_9) { + + if(input.getItem() == ModItems.assembly_smg) + return new ItemStack(ModItems.gun_mp40_ammo); + if(input.getItem() == ModItems.assembly_uzi) + return new ItemStack(ModItems.gun_uzi_ammo); + } + + if(stamp.getItem() == ModItems.stamp_50) { + + if(input.getItem() == ModItems.assembly_calamity) + return new ItemStack(ModItems.gun_calamity_ammo); + } + return null; } @@ -646,6 +685,15 @@ public class MachineRecipes { for(Item i : stamps_circuit) i_stamps_circuit.add(new ItemStack(i)); + List i_stamps_357 = new ArrayList(); + i_stamps_357.add(new ItemStack(ModItems.stamp_357)); + List i_stamps_44 = new ArrayList(); + i_stamps_44.add(new ItemStack(ModItems.stamp_44)); + List i_stamps_9 = new ArrayList(); + i_stamps_9.add(new ItemStack(ModItems.stamp_9)); + List i_stamps_50 = new ArrayList(); + i_stamps_50.add(new ItemStack(ModItems.stamp_50)); + recipes.put(new Object[] { i_stamps_flat, new ItemStack(ModItems.powder_coal) }, getPressResultNN(stamps_flat.get(0), ModItems.powder_coal)); recipes.put(new Object[] { i_stamps_flat, new ItemStack(ModItems.powder_quartz) }, getPressResultNN(stamps_flat.get(0), ModItems.powder_quartz)); recipes.put(new Object[] { i_stamps_flat, new ItemStack(ModItems.powder_lapis) }, getPressResultNN(stamps_flat.get(0), ModItems.powder_lapis)); @@ -676,6 +724,21 @@ public class MachineRecipes { recipes.put(new Object[] { i_stamps_wire, new ItemStack(ModItems.ingot_magnetized_tungsten) }, getPressResultNN(stamps_wire.get(0), ModItems.ingot_magnetized_tungsten)); recipes.put(new Object[] { i_stamps_circuit, new ItemStack(ModItems.circuit_raw) }, getPressResultNN(stamps_circuit.get(0), ModItems.circuit_raw)); + + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.assembly_iron) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.assembly_iron)); + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.assembly_steel) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.assembly_steel)); + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.assembly_lead) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.assembly_lead)); + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.assembly_gold) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.assembly_gold)); + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.assembly_schrabidium) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.assembly_schrabidium)); + recipes.put(new Object[] { i_stamps_357, new ItemStack(ModItems.ingot_steel) }, getPressResultNN(i_stamps_357.get(0).getItem(), ModItems.ingot_steel)); + + recipes.put(new Object[] { i_stamps_44, new ItemStack(ModItems.assembly_nopip) }, getPressResultNN(i_stamps_44.get(0).getItem(), ModItems.assembly_nopip)); + recipes.put(new Object[] { i_stamps_44, new ItemStack(ModItems.assembly_pip) }, getPressResultNN(i_stamps_44.get(0).getItem(), ModItems.assembly_pip)); + + recipes.put(new Object[] { i_stamps_9, new ItemStack(ModItems.assembly_smg) }, getPressResultNN(i_stamps_9.get(0).getItem(), ModItems.assembly_smg)); + recipes.put(new Object[] { i_stamps_9, new ItemStack(ModItems.assembly_uzi) }, getPressResultNN(i_stamps_9.get(0).getItem(), ModItems.assembly_uzi)); + + recipes.put(new Object[] { i_stamps_50, new ItemStack(ModItems.assembly_calamity) }, getPressResultNN(i_stamps_50.get(0).getItem(), ModItems.assembly_calamity)); return recipes; } diff --git a/com/hbm/inventory/container/ContainerNukeN45.java b/com/hbm/inventory/container/ContainerNukeN45.java new file mode 100644 index 000000000..878333ae4 --- /dev/null +++ b/com/hbm/inventory/container/ContainerNukeN45.java @@ -0,0 +1,84 @@ +package com.hbm.inventory.container; + +import com.hbm.tileentity.bomb.TileEntityNukeN45; +import com.hbm.tileentity.machine.TileEntityForceField; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.ICrafting; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; + +public class ContainerNukeN45 extends Container { + + private TileEntityNukeN45 diFurnace; + + public ContainerNukeN45(InventoryPlayer invPlayer, TileEntityNukeN45 tedf) { + + diFurnace = tedf; + + //Payload + this.addSlotToContainer(new Slot(tedf, 0, 44, 35)); + //Range up + this.addSlotToContainer(new Slot(tedf, 1, 116, 35)); + + for(int i = 0; i < 3; i++) + { + for(int j = 0; j < 9; j++) + { + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18)); + } + } + + for(int i = 0; i < 9; i++) + { + this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142)); + } + } + + @Override + public void addCraftingToCrafters(ICrafting crafting) { + super.addCraftingToCrafters(crafting); + } + + @Override + public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2) + { + ItemStack var3 = null; + Slot var4 = (Slot) this.inventorySlots.get(par2); + + if (var4 != null && var4.getHasStack()) + { + ItemStack var5 = var4.getStack(); + var3 = var5.copy(); + + if (par2 <= 1) { + if (!this.mergeItemStack(var5, 2, this.inventorySlots.size(), true)) + { + return null; + } + } + else if (!this.mergeItemStack(var5, 0, 2, false)) + { + return null; + } + + if (var5.stackSize == 0) + { + var4.putStack((ItemStack) null); + } + else + { + var4.onSlotChanged(); + } + } + + return var3; + } + + @Override + public boolean canInteractWith(EntityPlayer player) { + return diFurnace.isUseableByPlayer(player); + } +} diff --git a/com/hbm/inventory/gui/GUINukeN45.java b/com/hbm/inventory/gui/GUINukeN45.java new file mode 100644 index 000000000..ea9503083 --- /dev/null +++ b/com/hbm/inventory/gui/GUINukeN45.java @@ -0,0 +1,79 @@ +package com.hbm.inventory.gui; + +import org.lwjgl.opengl.GL11; + +import com.hbm.inventory.container.ContainerForceField; +import com.hbm.inventory.container.ContainerNukeN45; +import com.hbm.lib.RefStrings; +import com.hbm.packet.AuxButtonPacket; +import com.hbm.packet.PacketDispatcher; +import com.hbm.tileentity.bomb.TileEntityNukeN45; +import com.hbm.tileentity.machine.TileEntityForceField; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.PositionedSoundRecord; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.util.ResourceLocation; + +public class GUINukeN45 extends GuiInfoContainer { + + public static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_n45.png"); + private TileEntityNukeN45 diFurnace; + + public GUINukeN45(InventoryPlayer invPlayer, TileEntityNukeN45 tedf) { + super(new ContainerNukeN45(invPlayer, tedf)); + diFurnace = tedf; + + this.xSize = 176; + this.ySize = 168; + } + + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] text = new String[] { "The first slot holds the payload.", + "Acceptable payloads:", + " -Det Cord", + " -TNT", + " -Explosive Charge", + " -Nuclear Charge", + "Using detonator while in mine mode will", + "arm the mine, set to explode when", + "it detects a large entity nearby."}; + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36, 16, 16, guiLeft - 8, guiTop + 36 + 16, text); + + String[] text1 = new String[] { "The second slot is for green machine", + "upgrades. Entity detection range increases", + "by 5 blocks for every level.", + "When left empty, the mine can not be armed", + "an will behave like a regular bomb." }; + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 16, 16, 16, guiLeft - 8, guiTop + 36 + 16, text1); + + if(diFurnace.primed) + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 121, guiTop + 22, 6, 8, mouseX, mouseY, new String[]{ "Mine armed!" } ); + } + + @Override + protected void drawGuiContainerForegroundLayer(int i, int j) { + String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName()); + + this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); + } + + @Override + protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + Minecraft.getMinecraft().getTextureManager().bindTexture(texture); + drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); + + if(diFurnace.primed) { + drawTexturedModalRect(guiLeft + 121, guiTop + 22, 176, 0, 6, 8); + } + + this.drawInfoPanel(guiLeft - 16, guiTop + 36, 16, 16, 2); + this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 16, 16, 16, 3); + } +} diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 09095bced..472bd607c 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -288,6 +288,27 @@ public class ModItems { public static Item mechanism_launcher_2; public static Item mechanism_special; + public static Item primer_357; + public static Item primer_44; + public static Item primer_9; + public static Item primer_50; + public static Item primer_buckshot; + public static Item casing_357; + public static Item casing_44; + public static Item casing_9; + public static Item casing_50; + public static Item casing_buckshot; + public static Item assembly_iron; + public static Item assembly_steel; + public static Item assembly_lead; + public static Item assembly_gold; + public static Item assembly_schrabidium; + public static Item assembly_pip; + public static Item assembly_nopip; + public static Item assembly_smg; + public static Item assembly_uzi; + public static Item assembly_calamity; + public static Item circuit_targeting_tier1; public static Item circuit_targeting_tier2; public static Item circuit_targeting_tier3; @@ -396,6 +417,11 @@ public class ModItems { public static Item stamp_schrabidium_wire; public static Item stamp_schrabidium_circuit; + public static Item stamp_357; + public static Item stamp_44; + public static Item stamp_9; + public static Item stamp_50; + public static Item blades_gold; public static Item blades_aluminium; public static Item blades_iron; @@ -1726,6 +1752,26 @@ public class ModItems { mechanism_launcher_1 = new Item().setUnlocalizedName("mechanism_launcher_1").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":mechanism_5"); mechanism_launcher_2 = new Item().setUnlocalizedName("mechanism_launcher_2").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":mechanism_6"); mechanism_special = new Item().setUnlocalizedName("mechanism_special").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":mechanism_7"); + primer_357 = new Item().setUnlocalizedName("primer_357").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":primer_357"); + primer_44 = new Item().setUnlocalizedName("primer_44").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":primer_44"); + primer_9 = new Item().setUnlocalizedName("primer_9").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":primer_9"); + primer_50 = new Item().setUnlocalizedName("primer_50").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":primer_50"); + primer_buckshot = new Item().setUnlocalizedName("primer_buckshot").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":primer_buckshot"); + casing_357 = new Item().setUnlocalizedName("casing_357").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing_357"); + casing_44 = new Item().setUnlocalizedName("casing_44").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing_44"); + casing_9 = new Item().setUnlocalizedName("casing_9").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing_9"); + casing_50 = new Item().setUnlocalizedName("casing_50").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing_50"); + casing_buckshot = new Item().setUnlocalizedName("casing_buckshot").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing_buckshot"); + assembly_iron = new Item().setUnlocalizedName("assembly_iron").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_iron"); + assembly_steel = new Item().setUnlocalizedName("assembly_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_steel"); + assembly_lead = new Item().setUnlocalizedName("assembly_lead").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_lead"); + assembly_gold = new Item().setUnlocalizedName("assembly_gold").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_gold"); + assembly_schrabidium = new Item().setUnlocalizedName("assembly_schrabidium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_schrabidium"); + assembly_pip = new Item().setUnlocalizedName("assembly_pip").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_pip"); + assembly_nopip = new Item().setUnlocalizedName("assembly_nopip").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_nopip"); + assembly_smg = new Item().setUnlocalizedName("assembly_smg").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_smg"); + assembly_uzi = new Item().setUnlocalizedName("assembly_uzi").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_uzi"); + assembly_calamity = new Item().setUnlocalizedName("assembly_calamity").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":assembly_calamity"); wiring_red_copper = new ItemWiring().setUnlocalizedName("wiring_red_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":wiring_red_copper"); @@ -1803,6 +1849,10 @@ public class ModItems { stamp_schrabidium_plate = new ItemBlades(1024).setUnlocalizedName("stamp_schrabidium_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_plate"); stamp_schrabidium_wire = new ItemBlades(1024).setUnlocalizedName("stamp_schrabidium_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_wire"); stamp_schrabidium_circuit = new ItemBlades(1024).setUnlocalizedName("stamp_schrabidium_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_circuit"); + stamp_357 = new ItemBlades(512).setUnlocalizedName("stamp_357").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_357"); + stamp_44 = new ItemBlades(512).setUnlocalizedName("stamp_44").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_44"); + stamp_9 = new ItemBlades(512).setUnlocalizedName("stamp_9").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_9"); + stamp_50 = new ItemBlades(512).setUnlocalizedName("stamp_50").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_50"); blades_aluminium = new ItemBlades(1 * 1200).setUnlocalizedName("blades_aluminium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_aluminium"); blades_gold = new ItemBlades(5 * 1200).setUnlocalizedName("blades_gold").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_gold"); @@ -3097,6 +3147,32 @@ public class ModItems { GameRegistry.registerItem(mechanism_launcher_2, mechanism_launcher_2.getUnlocalizedName()); GameRegistry.registerItem(mechanism_special, mechanism_special.getUnlocalizedName()); + //Primers + GameRegistry.registerItem(primer_357, primer_357.getUnlocalizedName()); + GameRegistry.registerItem(primer_44, primer_44.getUnlocalizedName()); + GameRegistry.registerItem(primer_9, primer_9.getUnlocalizedName()); + GameRegistry.registerItem(primer_50, primer_50.getUnlocalizedName()); + GameRegistry.registerItem(primer_buckshot, primer_buckshot.getUnlocalizedName()); + + //Casings + GameRegistry.registerItem(casing_357, casing_357.getUnlocalizedName()); + GameRegistry.registerItem(casing_44, casing_44.getUnlocalizedName()); + GameRegistry.registerItem(casing_9, casing_9.getUnlocalizedName()); + GameRegistry.registerItem(casing_50, casing_50.getUnlocalizedName()); + GameRegistry.registerItem(casing_buckshot, casing_buckshot.getUnlocalizedName()); + + //Bullet Assemblies + GameRegistry.registerItem(assembly_iron, assembly_iron.getUnlocalizedName()); + GameRegistry.registerItem(assembly_steel, assembly_steel.getUnlocalizedName()); + GameRegistry.registerItem(assembly_lead, assembly_lead.getUnlocalizedName()); + GameRegistry.registerItem(assembly_gold, assembly_gold.getUnlocalizedName()); + GameRegistry.registerItem(assembly_schrabidium, assembly_schrabidium.getUnlocalizedName()); + GameRegistry.registerItem(assembly_pip, assembly_pip.getUnlocalizedName()); + GameRegistry.registerItem(assembly_nopip, assembly_nopip.getUnlocalizedName()); + GameRegistry.registerItem(assembly_smg, assembly_smg.getUnlocalizedName()); + GameRegistry.registerItem(assembly_uzi, assembly_uzi.getUnlocalizedName()); + GameRegistry.registerItem(assembly_calamity, assembly_calamity.getUnlocalizedName()); + //Wiring GameRegistry.registerItem(wiring_red_copper, wiring_red_copper.getUnlocalizedName()); @@ -3264,6 +3340,10 @@ public class ModItems { GameRegistry.registerItem(stamp_schrabidium_plate, stamp_schrabidium_plate.getUnlocalizedName()); GameRegistry.registerItem(stamp_schrabidium_wire, stamp_schrabidium_wire.getUnlocalizedName()); GameRegistry.registerItem(stamp_schrabidium_circuit, stamp_schrabidium_circuit.getUnlocalizedName()); + GameRegistry.registerItem(stamp_357, stamp_357.getUnlocalizedName()); + GameRegistry.registerItem(stamp_44, stamp_44.getUnlocalizedName()); + GameRegistry.registerItem(stamp_9, stamp_9.getUnlocalizedName()); + GameRegistry.registerItem(stamp_50, stamp_50.getUnlocalizedName()); //Machine Upgrades GameRegistry.registerItem(upgrade_template, upgrade_template.getUnlocalizedName()); diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index a63f5b2da..1dff35b56 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -301,6 +301,7 @@ public class ClientProxy extends ServerProxy ClientRegistry.bindTileEntitySpecialRenderer(TileEntityOilDuct.class, new RenderOilDuct()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityGasDuct.class, new RenderGasDuct()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFluidDuct.class, new RenderFluidDuct()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityRFDuct.class, new RenderRFCable()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityPylonRedWire.class, new RenderPylon()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityStructureMarker.class, new RenderStructureMaker()); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index 4cb8409e4..1462c986b 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -245,6 +245,7 @@ import com.hbm.tileentity.conductor.TileEntityGasDuctSolid; import com.hbm.tileentity.conductor.TileEntityOilDuct; import com.hbm.tileentity.conductor.TileEntityOilDuctSolid; import com.hbm.tileentity.conductor.TileEntityPylonRedWire; +import com.hbm.tileentity.conductor.TileEntityRFDuct; import com.hbm.tileentity.conductor.TileEntityWireCoated; import com.hbm.tileentity.deco.TileEntityBomber; import com.hbm.tileentity.deco.TileEntityDecoBlock; @@ -743,6 +744,7 @@ public class MainRegistry GameRegistry.registerTileEntity(TileEntityFF.class, "tileentity_forcefield"); GameRegistry.registerTileEntity(TileEntityForceField.class, "tileentity_machine_field"); GameRegistry.registerTileEntity(TileEntityMachineShredderLarge.class, "tileentity_machine_big_shredder"); + GameRegistry.registerTileEntity(TileEntityRFDuct.class, "tileentity_hbm_rfduct"); EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true); EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true); diff --git a/com/hbm/main/ResourceManager.java b/com/hbm/main/ResourceManager.java index 5470e1cfc..fb1007f8b 100644 --- a/com/hbm/main/ResourceManager.java +++ b/com/hbm/main/ResourceManager.java @@ -56,6 +56,8 @@ public class ResourceManager { //Press public static final IModelCustom press_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/press_body.obj")); public static final IModelCustom press_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/press_head.obj")); + public static final IModelCustom epress_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/epress_body.obj")); + public static final IModelCustom epress_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/epress_head.obj")); //Chemplant public static final IModelCustom chemplant_new = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/chemplant_main_new.obj")); diff --git a/com/hbm/render/tileentity/RenderRFCable.java b/com/hbm/render/tileentity/RenderRFCable.java new file mode 100644 index 000000000..918d88d6a --- /dev/null +++ b/com/hbm/render/tileentity/RenderRFCable.java @@ -0,0 +1,159 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; +import com.hbm.tileentity.conductor.TileEntityRFDuct; + +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.common.util.ForgeDirection; + +public class RenderRFCable extends TileEntitySpecialRenderer { + + public ResourceLocation texture = new ResourceLocation(RefStrings.MODID, "textures/blocks/rf_cable.png"); + float pixel = 1F/16F; + float textureP = 1F / 32F; + + @Override + public void renderTileEntityAt(TileEntity tileentity, double offsetX, double offsetY, double offsetZ, float f) { + GL11.glTranslated(offsetX, offsetY, offsetZ); + GL11.glDisable(GL11.GL_LIGHTING); + this.bindTexture(texture); + drawCore(tileentity); + TileEntityRFDuct cable = (TileEntityRFDuct) tileentity; + for(int i = 0; i < cable.connections.length; i++) + { + if(cable.connections[i] != null) + { + drawConnection(cable.connections[i]); + } + } + GL11.glTranslated(-offsetX, -offsetY, -offsetZ); + GL11.glEnable(GL11.GL_LIGHTING); + + } + + public void drawCore(TileEntity tileentity) { + Tessellator tesseract = Tessellator.instance; + tesseract.startDrawingQuads(); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 5 * textureP); + + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 5 * textureP); + + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 5 * textureP); + + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 5 * textureP); + + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 5 * textureP); + + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 11 * pixel / 2, 0 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 11 * pixel / 2, 1 - 11 * pixel / 2, 0 * textureP, 5 * textureP); + tesseract.draw(); + + // Muehsam muss ich hier im BSH meine genialen Mods schreiben, obwohl ich die Zeit eigentlich doch besser nutzen koennte. + // Da mir das aber Spass macht, wird auch in Zukunft gutes Zeug von mir geben (und damit meine ich NICHT Drogen, etc.) + // Danke. + + //I didn't write this, but I'm gonna leave it there. + } + + public void drawConnection(ForgeDirection direction) + { + Tessellator tesseract = Tessellator.instance; + tesseract.startDrawingQuads(); + GL11.glTranslatef(0.5F, 0.5F, 0.5F); + if(direction.equals(ForgeDirection.UP)) + { + + } + if(direction.equals(ForgeDirection.DOWN)) + { + GL11.glRotatef(180, 1, 0, 0); + } + if(direction.equals(ForgeDirection.NORTH)) + { + GL11.glRotatef(270, 1, 0, 0); + } + if(direction.equals(ForgeDirection.SOUTH)) + { + GL11.glRotatef(90, 1, 0, 0); + } + if(direction.equals(ForgeDirection.EAST)) + { + GL11.glRotatef(270, 0, 0, 1); + } + if(direction.equals(ForgeDirection.WEST)) + { + GL11.glRotatef(90, 0, 0, 1); + } + GL11.glTranslatef(-0.5F, -0.5F, -0.5F); + + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1, 1 - 11 * pixel / 2, 10 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1, 1 - 11 * pixel / 2, 10 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 0 * textureP); + + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1, 11 * pixel / 2, 10 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1, 11 * pixel / 2, 10 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1, 11 * pixel / 2, 10 * textureP, 5 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1, 1 - 11 * pixel / 2, 10 * textureP, 0 * textureP); + tesseract.addVertexWithUV(1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 0 * textureP); + + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 1 - 11 * pixel / 2, 5 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1, 1 - 11 * pixel / 2, 10 * textureP, 5 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1, 11 * pixel / 2, 10 * textureP, 0 * textureP); + tesseract.addVertexWithUV(11 * pixel / 2, 1 - 11 * pixel / 2, 11 * pixel / 2, 5 * textureP, 0 * textureP); + tesseract.draw(); + + GL11.glTranslatef(0.5F, 0.5F, 0.5F); + if(direction.equals(ForgeDirection.UP)) + { + + } + if(direction.equals(ForgeDirection.DOWN)) + { + GL11.glRotatef(-180, 1, 0, 0); + } + if(direction.equals(ForgeDirection.NORTH)) + { + GL11.glRotatef(-270, 1, 0, 0); + } + if(direction.equals(ForgeDirection.SOUTH)) + { + GL11.glRotatef(-90, 1, 0, 0); + } + if(direction.equals(ForgeDirection.EAST)) + { + GL11.glRotatef(-270, 0, 0, 1); + } + if(direction.equals(ForgeDirection.WEST)) + { + GL11.glRotatef(-90, 0, 0, 1); + } + GL11.glTranslatef(-0.5F, -0.5F, -0.5F); + } +} diff --git a/com/hbm/tileentity/bomb/TileEntityNukeN45.java b/com/hbm/tileentity/bomb/TileEntityNukeN45.java index 861dc9d02..cf90c8dea 100644 --- a/com/hbm/tileentity/bomb/TileEntityNukeN45.java +++ b/com/hbm/tileentity/bomb/TileEntityNukeN45.java @@ -3,13 +3,18 @@ package com.hbm.tileentity.bomb; import java.util.List; import com.hbm.blocks.ModBlocks; +import com.hbm.entity.effect.EntityNukeCloudSmall; +import com.hbm.entity.logic.EntityNukeExplosionMK4; +import com.hbm.explosion.ExplosionLarge; import com.hbm.items.ModItems; +import com.hbm.main.MainRegistry; import com.hbm.packet.AuxGaugePacket; import com.hbm.packet.PacketDispatcher; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -18,6 +23,7 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; +import net.minecraft.potion.Potion; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; @@ -189,8 +195,6 @@ public class TileEntityNukeN45 extends TileEntity implements ISidedInventory { if(!worldObj.isRemote) { - primed = true; - PacketDispatcher.wrapper.sendToAll(new AuxGaugePacket(xCoord, yCoord, zCoord, primed ? 1 : 0, 0)); if(primed) { @@ -211,14 +215,21 @@ public class TileEntityNukeN45 extends TileEntity implements ISidedInventory { rad = 15; } + if(rad == 0) { + primed = false; + return; + } + List list = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord + 0.5 - rad, yCoord + 0.5 - rad, zCoord + 0.5 - rad, xCoord + 0.5 + rad, yCoord + 0.5 + rad, zCoord + 0.5 + rad)); for(Object o : list) { Entity e = (Entity)o; - if(e.width * e.width * e.height >= 1.5) { - explode(worldObj, xCoord, yCoord, zCoord, getType()); + if(e instanceof EntityLivingBase && e.width * e.width * e.height >= 0.5 && !((EntityLivingBase)e).isPotionActive(Potion.invisibility.id)) { + int t = getType(); + this.clearSlots(); + explode(worldObj, xCoord, yCoord, zCoord, t); break; } } @@ -229,10 +240,44 @@ public class TileEntityNukeN45 extends TileEntity implements ISidedInventory { public static void explode(World world, int x, int y, int z, int type) { + if(!world.isRemote) { + world.setBlockToAir(x, y, z); + + System.out.println(type); + + switch(type) { + case 1: + world.createExplosion(null, x + 0.5, y + 0.5, z + 0.5, 1.5F, true); + break; + case 2: + world.createExplosion(null, x + 0.5, y + 0.5, z + 0.5, 4.0F, true); + break; + case 3: + ExplosionLarge.explode(world, x, y, z, 15, true, false, false); + break; + case 4: + world.spawnEntityInWorld(EntityNukeExplosionMK4.statFac(world, (int)(MainRegistry.missileRadius * 0.75F), x + 0.5, y + 0.5, z + 0.5)); + + EntityNukeCloudSmall entity2 = new EntityNukeCloudSmall(world, 1000, MainRegistry.missileRadius * 0.005F * 0.75F); + entity2.posX = x; + entity2.posY = y; + entity2.posZ = z; + world.spawnEntityInWorld(entity2); + break; + } + } } public int getType() { + if(!primed && slots[1] != null) { + + if(slots[1].getItem() == ModItems.upgrade_effect_1 || + slots[1].getItem() == ModItems.upgrade_effect_2 || + slots[1].getItem() == ModItems.upgrade_effect_3) + return 100; + } + if(slots[0] != null) { if(slots[0].getItem() == Item.getItemFromBlock(ModBlocks.det_cord)) @@ -245,14 +290,6 @@ public class TileEntityNukeN45 extends TileEntity implements ISidedInventory { return 4; } - if(!primed && slots[1] != null) { - - if(slots[1].getItem() == ModItems.upgrade_effect_1 || - slots[1].getItem() == ModItems.upgrade_effect_2 || - slots[1].getItem() == ModItems.upgrade_effect_3) - return 100; - } - return 0; } diff --git a/com/hbm/tileentity/conductor/TileEntityRFDuct.java b/com/hbm/tileentity/conductor/TileEntityRFDuct.java new file mode 100644 index 000000000..1054a5b41 --- /dev/null +++ b/com/hbm/tileentity/conductor/TileEntityRFDuct.java @@ -0,0 +1,144 @@ +package com.hbm.tileentity.conductor; + +import cofh.api.energy.EnergyStorage; +import cofh.api.energy.IEnergyConnection; +import cofh.api.energy.IEnergyHandler; +import cofh.api.energy.IEnergyReceiver; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; + +public class TileEntityRFDuct extends TileEntity implements IEnergyHandler { + + public ForgeDirection[] connections = new ForgeDirection[6]; + protected EnergyStorage storage; + public int output; + + public TileEntityRFDuct(int output) { + this.output = output; + this.storage = new EnergyStorage(200); + + storage.setMaxReceive(output); + storage.setMaxExtract(output); + storage.setMaxTransfer(output); + } + + public void updateEntity() { + this.updateConnections(); + + if (storage.getEnergyStored() > 0) { + for (int i = 0; i < 6; i++) { + + int targetX = xCoord + ForgeDirection.getOrientation(i).offsetX; + int targetY = yCoord + ForgeDirection.getOrientation(i).offsetY; + int targetZ = zCoord + ForgeDirection.getOrientation(i).offsetZ; + + TileEntity tile = worldObj.getTileEntity(targetX, targetY, targetZ); + if (tile instanceof IEnergyReceiver) { + int maxExtract = storage.getMaxExtract(); + int maxAvailable = storage.extractEnergy(maxExtract, true); + int energyTransferred = ((IEnergyReceiver) tile) + .receiveEnergy(ForgeDirection.getOrientation(i).getOpposite(), maxAvailable, false); + + storage.extractEnergy(energyTransferred, false); + } + } + } + + } + + public void updateConnections() { + if (this.worldObj.getTileEntity(xCoord, yCoord + 1, zCoord) instanceof IEnergyConnection) + connections[0] = ForgeDirection.UP; + else + connections[0] = null; + + if (this.worldObj.getTileEntity(xCoord, yCoord - 1, zCoord) instanceof IEnergyConnection) + connections[1] = ForgeDirection.DOWN; + else + connections[1] = null; + + if (this.worldObj.getTileEntity(xCoord, yCoord, zCoord - 1) instanceof IEnergyConnection) + connections[2] = ForgeDirection.NORTH; + else + connections[2] = null; + + if (this.worldObj.getTileEntity(xCoord, yCoord, zCoord + 1) instanceof IEnergyConnection) + connections[3] = ForgeDirection.SOUTH; + else + connections[3] = null; + + if (this.worldObj.getTileEntity(xCoord + 1, yCoord, zCoord) instanceof IEnergyConnection) + connections[4] = ForgeDirection.EAST; + else + connections[4] = null; + + if (this.worldObj.getTileEntity(xCoord - 1, yCoord, zCoord) instanceof IEnergyConnection) + connections[5] = ForgeDirection.WEST; + else + connections[5] = null; + } + + public boolean onlyOneOpposite(ForgeDirection[] directions) { + ForgeDirection mainDirection = null; + boolean isOpposite = false; + + for (int i = 0; i < directions.length; i++) { + + if (mainDirection == null && directions[i] != null) + mainDirection = directions[i]; + + if (directions[i] != null && mainDirection != directions[i]) { + if (!isOpposite(mainDirection, directions[i])) + return false; + else + isOpposite = true; + } + } + + return isOpposite; + } + + public boolean isOpposite(ForgeDirection firstDirection, ForgeDirection secondDirection) { + + if ((firstDirection.equals(ForgeDirection.NORTH) && secondDirection.equals(ForgeDirection.SOUTH)) + || firstDirection.equals(ForgeDirection.SOUTH) && secondDirection.equals(ForgeDirection.NORTH)) + return true; + + if ((firstDirection.equals(ForgeDirection.EAST) && secondDirection.equals(ForgeDirection.WEST)) + || firstDirection.equals(ForgeDirection.WEST) && secondDirection.equals(ForgeDirection.EAST)) + return true; + + if ((firstDirection.equals(ForgeDirection.UP) && secondDirection.equals(ForgeDirection.DOWN)) + || firstDirection.equals(ForgeDirection.DOWN) && secondDirection.equals(ForgeDirection.UP)) + return true; + + return false; + } + + @Override + public boolean canConnectEnergy(ForgeDirection from) { + return true; + } + + @Override + public int receiveEnergy(ForgeDirection from, int maxReceive, boolean simulate) { + return this.storage.receiveEnergy(Math.min(output, maxReceive), simulate); + } + + @Override + public int extractEnergy(ForgeDirection from, int maxExtract, boolean simulate) { + + return storage.extractEnergy(storage.getMaxExtract(), simulate); + } + + @Override + public int getEnergyStored(ForgeDirection from) { + return storage.getEnergyStored(); + } + + @Override + public int getMaxEnergyStored(ForgeDirection from) { + return storage.getMaxEnergyStored(); + } + +} diff --git a/com/hbm/tileentity/machine/TileEntityConverterRfHe.java b/com/hbm/tileentity/machine/TileEntityConverterRfHe.java index ff203393a..3ac24fcae 100644 --- a/com/hbm/tileentity/machine/TileEntityConverterRfHe.java +++ b/com/hbm/tileentity/machine/TileEntityConverterRfHe.java @@ -8,6 +8,7 @@ import com.hbm.interfaces.ISource; import com.hbm.lib.Library; import cofh.api.energy.EnergyStorage; +import cofh.api.energy.IEnergyHandler; import cofh.api.energy.IEnergyReceiver; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection;