Radgen, spitfire, nuke cloud improvements, damagable missiles

This commit is contained in:
HbmMods 2018-01-22 19:09:27 +01:00
parent ef89864865
commit 732b95c5dd
113 changed files with 6280 additions and 1640 deletions

View File

@ -4,6 +4,11 @@ itemGroup.tabBlocks=NTM Blöcke und Maschinen
itemGroup.tabNuke=NTM Bomben und Ausrüstung itemGroup.tabNuke=NTM Bomben und Ausrüstung
itemGroup.tabMachine=NTM Vorlagen itemGroup.tabMachine=NTM Vorlagen
achievement.sacrifice=Sororizid
achievement.sacrifice.desc=Überlebe den Flammentod.
achievement.impossible=Vollkommen unmöglich
achievement.impossible.desc=Du kannst diese Errungenschaft nicht bekommen.
hbmfluid.none=Nichts hbmfluid.none=Nichts
hbmfluid.water=Wasser hbmfluid.water=Wasser
hbmfluid.steam=Dampf hbmfluid.steam=Dampf
@ -183,6 +188,8 @@ tile.turret_heavy.name=Schweres MG-Geschütz
tile.turret_rocket.name=Raketengeschütz tile.turret_rocket.name=Raketengeschütz
tile.turret_flamer.name=Flammenwerfergeschütz tile.turret_flamer.name=Flammenwerfergeschütz
tile.turret_tau.name=Tauonengeschütz tile.turret_tau.name=Tauonengeschütz
tile.turret_spitfire.name=Geschütz für das ich noch keinen Namen habe [WIP]
item.turret_control.name=Geschützsteuerung item.turret_control.name=Geschützsteuerung
item.turret_chip.name=Geschütz-KI-Chip item.turret_chip.name=Geschütz-KI-Chip
@ -282,6 +289,8 @@ tile.machine_press.name=Dampfpresse
container.press=Dampfpresse container.press=Dampfpresse
tile.machine_siren.name=Sirene tile.machine_siren.name=Sirene
container.siren=Sirene container.siren=Sirene
tile.machine_radgen.name=Strahlenbetriebener Generator [WIP]
container.radGen=Strahlenbetriebener Generator [WIP]
tile.red_pylon.name=Strommasten tile.red_pylon.name=Strommasten
item.wiring_red_copper.name=Kabeltrommel item.wiring_red_copper.name=Kabeltrommel
@ -347,6 +356,16 @@ tile.machine_rtg_cyan.name=Schrabidium-Zerfallsenergie-Generator (WIP)
tile.machine_rtg_blue.name=Konvektionsgenerator tile.machine_rtg_blue.name=Konvektionsgenerator
tile.machine_rtg_purple.name=Paarvernichtungsgenerator tile.machine_rtg_purple.name=Paarvernichtungsgenerator
tile.machine_spp_bottom.name=NPE-Potentialgenerator (Unterteil)
tile.machine_spp_top.name=NPE-Potentialgenerator (Oberteil)
tile.ams_limiter.name=AMS-Stabilisator [WIP]
container.amsLimiter=AMS-Stabilisator [WIP]
tile.ams_emitter.name=AMS-Emitter [WIP]
container.amsEmitter=AMS-Emitter [WIP]
tile.ams_base.name=AMS-Basis [WIP]
container.amsBase=AMS-Basis [WIP]
item.template_folder.name=Produktionsvorlagen-Zeichenmappe item.template_folder.name=Produktionsvorlagen-Zeichenmappe
item.fluid_identifier.name=Flüssigkeits-Kennzeichnung item.fluid_identifier.name=Flüssigkeits-Kennzeichnung
item.assembly_template.name=Fertigungsvorlage: item.assembly_template.name=Fertigungsvorlage:
@ -497,6 +516,8 @@ tile.ore_nether_sulfur.name=Nether-Schwefelerz
tile.ore_nether_fire.name=Feuererz tile.ore_nether_fire.name=Feuererz
tile.ore_nether_schrabidium.name=Nether-Schrabidiumerz tile.ore_nether_schrabidium.name=Nether-Schrabidiumerz
tile.ore_tikite.name=Trixit
tile.ore_australium.name=Australisches Erz tile.ore_australium.name=Australisches Erz
tile.ore_weidanium.name=Weidit tile.ore_weidanium.name=Weidit
tile.ore_reiium.name=Reiit tile.ore_reiium.name=Reiit
@ -857,6 +878,7 @@ item.grenade_plasma.name=Plasmagranate
item.grenade_tau.name=Taugranate item.grenade_tau.name=Taugranate
item.grenade_schrabidium.name=Schrabidiumgranate item.grenade_schrabidium.name=Schrabidiumgranate
item.grenade_lemon.name=Zitronengranate item.grenade_lemon.name=Zitronengranate
item.grenade_gascan.name=Werfbarer Spritkanister
item.grenade_mk2.name=Mk 2 Granate "Botschafter Ananas" item.grenade_mk2.name=Mk 2 Granate "Botschafter Ananas"
item.grenade_aschrab.name=Werfbare Antischrabidiumzelle item.grenade_aschrab.name=Werfbare Antischrabidiumzelle
item.grenade_nuke.name=Mark VI Bohrgranate item.grenade_nuke.name=Mark VI Bohrgranate
@ -937,6 +959,10 @@ item.gun_mirv.name=M42 Nukleares Katapult "Experimentelles MIRV"
item.gun_bf.name=M42_2 Nukleares Katapult "Antimaterienwerfer" item.gun_bf.name=M42_2 Nukleares Katapult "Antimaterienwerfer"
item.gun_mp40.name=Maschinenpistole item.gun_mp40.name=Maschinenpistole
item.gun_uboinik.name=Ubojnik item.gun_uboinik.name=Ubojnik
item.gun_lever_action.name=Mare's Leg (Original)
item.gun_bolt_action.name=Dream-Repetiergewehr (Original)
item.gun_lever_action_dark.name=Mare's Leg (Dunkel)
item.gun_bolt_action_green.name=Dream-Repetiergewehr (Grün)
item.gun_xvl1456.name=XVL1456 Tau-Kanone Prototyp item.gun_xvl1456.name=XVL1456 Tau-Kanone Prototyp
item.gun_osipr.name=Standartausrüstung für Sicherheitskräfte item.gun_osipr.name=Standartausrüstung für Sicherheitskräfte
item.gun_immolator.name=Der Immolator item.gun_immolator.name=Der Immolator
@ -968,6 +994,8 @@ item.gun_mirv_ammo.name=Achtfaches MIRV
item.gun_bf_ammo.name=Mk.V kompaktes AMAT-Artilleriegeschoss - Typ B.F. item.gun_bf_ammo.name=Mk.V kompaktes AMAT-Artilleriegeschoss - Typ B.F.
item.gun_mp40_ammo.name=SMG-Patrone item.gun_mp40_ammo.name=SMG-Patrone
item.gun_uboinik_ammo.name=12x70 Schrotmunition item.gun_uboinik_ammo.name=12x70 Schrotmunition
item.gun_lever_action_ammo.name=12x74 Schrotmunition
item.gun_bolt_action_ammo.name=12x74 Brenneke
item.gun_xvl1456_ammo.name=Kiste mit erschöpftem Uran-235 item.gun_xvl1456_ammo.name=Kiste mit erschöpftem Uran-235
item.gun_osipr_ammo.name=Dunkler Energiepuls-Plug item.gun_osipr_ammo.name=Dunkler Energiepuls-Plug
item.gun_osipr_ammo2.name=Combine Ball item.gun_osipr_ammo2.name=Combine Ball
@ -986,6 +1014,7 @@ item.turret_heavy_ammo.name=Schwere MG Munition
item.turret_rocket_ammo.name=Raketengeschütz 2x4 Munition item.turret_rocket_ammo.name=Raketengeschütz 2x4 Munition
item.turret_flamer_ammo.name=Flammenwerfergeschütz-Tanks item.turret_flamer_ammo.name=Flammenwerfergeschütz-Tanks
item.turret_tau_ammo.name=Tauonengeschütz-Uranmunition item.turret_tau_ammo.name=Tauonengeschütz-Uranmunition
item.turret_spitfire_ammo.name=AA-Geschoss
item.clip_revolver_iron.name=Box voll Eisenkugeln item.clip_revolver_iron.name=Box voll Eisenkugeln
item.clip_revolver.name=.357 Magnum Patronen item.clip_revolver.name=.357 Magnum Patronen
@ -1003,11 +1032,15 @@ item.clip_mirv.name=Kauf-drei-zahl-eins Packung Mini MIRVs
item.clip_bf.name=BF-Geschosse im Doppelpack item.clip_bf.name=BF-Geschosse im Doppelpack
item.clip_mp.name=Magazin des Standardsturmgewehrs des Britannischen Militärs item.clip_mp.name=Magazin des Standardsturmgewehrs des Britannischen Militärs
item.clip_mp40.name=9mm SMG-Magazin item.clip_mp40.name=9mm SMG-Magazin
item.clip_uboinik.name=Schrotpatronenbox item.clip_uboinik.name=12x70 Schrotpatronenbox
item.clip_lever_action.name=12x74 Schrotpatronenbox
item.clip_bolt_action.name=12x74 Brenneke-Patronenbox
item.clip_emp.name=Magnetsteifen mit Energiezellen item.clip_emp.name=Magnetsteifen mit Energiezellen
item.clip_revolver_nightmare.name=Sack voll Kugeln item.clip_revolver_nightmare.name=Sack voll Kugeln
item.clip_revolver_nightmare2.name=Munitionsgürtel mit Laserschrot item.clip_revolver_nightmare2.name=Munitionsgürtel mit Laserschrot
item.ammo_container.name=Munitionsbehälter
tile.block_schrabidium.name=Schrabidiumblock tile.block_schrabidium.name=Schrabidiumblock
item.plate_gold.name=Goldplatte item.plate_gold.name=Goldplatte
@ -1116,6 +1149,7 @@ item.missile_nuclear_cluster.name=Atomare MIRV-Rakete
item.missile_endo.name=Endothermische Rakete item.missile_endo.name=Endothermische Rakete
item.missile_exo.name=Exothermische Rakete item.missile_exo.name=Exothermische Rakete
item.missile_doomsday.name=Doomsday Rakete item.missile_doomsday.name=Doomsday Rakete
item.missile_taint.name=Verseuchte Rakete
item.hazmat_helmet.name=Strahlenschutzhelm item.hazmat_helmet.name=Strahlenschutzhelm
item.hazmat_plate.name=Strahlenschutzbrustplatte item.hazmat_plate.name=Strahlenschutzbrustplatte
@ -1420,6 +1454,7 @@ item.reer_graar.name=The Reer Graar
item.letter.name=Eilbrief item.letter.name=Eilbrief
item.polaroid.name=Das Polaroid item.polaroid.name=Das Polaroid
item.glitch.name=Glitch [WIP]
item.book_secret.name=3-596-50802-9 item.book_secret.name=3-596-50802-9
item.burnt_bark.name=Verbrannte Rinde item.burnt_bark.name=Verbrannte Rinde
@ -1439,5 +1474,7 @@ tile.crystal_virus.name=Dunkler Kristall
tile.crystal_hardened.name=Gehärteter Dunkler Kristall tile.crystal_hardened.name=Gehärteter Dunkler Kristall
tile.crystal_pulsar.name=Pulsating Crystal tile.crystal_pulsar.name=Pulsating Crystal
tile.taint.name=Korrupter Schmutz
tile.cheater_virus.name=Geliertes Euphemium tile.cheater_virus.name=Geliertes Euphemium
tile.cheater_virus_seed.name=Instabiler Euphemiumschrabid-Block tile.cheater_virus_seed.name=Instabiler Euphemiumschrabid-Block

View File

@ -4,6 +4,11 @@ itemGroup.tabBlocks=NTM Blocks and Machines
itemGroup.tabNuke=NTM Bombs and Gear itemGroup.tabNuke=NTM Bombs and Gear
itemGroup.tabMachine=NTM Templates itemGroup.tabMachine=NTM Templates
achievement.sacrifice=Sororicide
achievement.sacrifice.desc=Face the fire and live.
achievement.impossible=Literally impossible
achievement.impossible.desc=You can't get this achievement.
hbmfluid.none=None hbmfluid.none=None
hbmfluid.water=Water hbmfluid.water=Water
hbmfluid.steam=Steam hbmfluid.steam=Steam
@ -194,6 +199,8 @@ tile.turret_heavy.name=Heavy Machine Gun Turret
tile.turret_rocket.name=Rocket Turret tile.turret_rocket.name=Rocket Turret
tile.turret_flamer.name=Flamethrower Turret tile.turret_flamer.name=Flamethrower Turret
tile.turret_tau.name=Tauon Turret tile.turret_tau.name=Tauon Turret
tile.turret_spitfire.name=Turret I have no name for right now [WIP]
item.turret_control.name=Turret Controller item.turret_control.name=Turret Controller
item.turret_chip.name=Turret AI-Chip item.turret_chip.name=Turret AI-Chip
@ -282,6 +289,8 @@ tile.machine_press.name=Steam Press
container.press=Steam Press container.press=Steam Press
tile.machine_siren.name=Siren tile.machine_siren.name=Siren
container.siren=Siren container.siren=Siren
tile.machine_radgen.name=Radiation-Powered Engine [WIP]
container.radGen=Radiation-Powered Engine [WIP]
tile.red_pylon.name=Electricity Pole tile.red_pylon.name=Electricity Pole
item.wiring_red_copper.name=Cable Drum item.wiring_red_copper.name=Cable Drum
@ -347,6 +356,16 @@ tile.machine_rtg_cyan.name=Schrabidium Decay Generator (WIP)
tile.machine_rtg_blue.name=Convection Generator tile.machine_rtg_blue.name=Convection Generator
tile.machine_rtg_purple.name=Antimatter Annihilation Generator tile.machine_rtg_purple.name=Antimatter Annihilation Generator
tile.machine_spp_bottom.name=SPE Potential Generator (Bottom)
tile.machine_spp_top.name=SPE Potential Generator (Top)
tile.ams_limiter.name=AMS Stabilizer [WIP]
container.amsLimiter=AMS Stabilizer [WIP]
tile.ams_emitter.name=AMS Emitter [WIP]
container.amsEmitter=AMS Emitter [WIP]
tile.ams_base.name=AMS Base [WIP]
container.amsBase=AMS Base [WIP]
item.template_folder.name=Machine Template Folder item.template_folder.name=Machine Template Folder
item.fluid_identifier.name=Fluid Identifier item.fluid_identifier.name=Fluid Identifier
item.assembly_template.name=Assembly Template: item.assembly_template.name=Assembly Template:
@ -497,6 +516,8 @@ tile.ore_nether_sulfur.name=Nether Sulfur Ore
tile.ore_nether_fire.name=Fire Ore tile.ore_nether_fire.name=Fire Ore
tile.ore_nether_schrabidium.name=Nether Schrabidium Ore tile.ore_nether_schrabidium.name=Nether Schrabidium Ore
tile.ore_tikite.name=Trixite
tile.ore_australium.name=Australian Ore tile.ore_australium.name=Australian Ore
tile.ore_weidanium.name=Weidite tile.ore_weidanium.name=Weidite
tile.ore_reiium.name=Reiite tile.ore_reiium.name=Reiite
@ -860,6 +881,7 @@ item.grenade_plasma.name=Plasma Grenade
item.grenade_tau.name=Tau Grenade item.grenade_tau.name=Tau Grenade
item.grenade_schrabidium.name=Schrabidium Grenade item.grenade_schrabidium.name=Schrabidium Grenade
item.grenade_lemon.name=Combustible Lemon item.grenade_lemon.name=Combustible Lemon
item.grenade_gascan.name=Tossable Gas Can
item.grenade_mk2.name=Mk 2 Grenade "Ambassador Pineapple" item.grenade_mk2.name=Mk 2 Grenade "Ambassador Pineapple"
item.grenade_aschrab.name=Tossable Antischrabidium Cell item.grenade_aschrab.name=Tossable Antischrabidium Cell
item.grenade_nuke.name=Mark VI Drill Grenade item.grenade_nuke.name=Mark VI Drill Grenade
@ -940,6 +962,10 @@ item.gun_mirv.name=M42 Nuclear Catapult "Experimental MIRV"
item.gun_bf.name=M42_2 Nuclear Catapult "Antimatter Launcher" item.gun_bf.name=M42_2 Nuclear Catapult "Antimatter Launcher"
item.gun_mp40.name=Submachine Gun item.gun_mp40.name=Submachine Gun
item.gun_uboinik.name=Uboinik item.gun_uboinik.name=Uboinik
item.gun_lever_action.name=Mare's Leg (Original)
item.gun_bolt_action.name=Dream Bolt-Action Rifle (Original)
item.gun_lever_action_dark.name=Mare's Leg (Dark)
item.gun_bolt_action_green.name=Dream Bolt-Action Rifle (Green)
item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype
item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle
item.gun_immolator.name=The Immolator item.gun_immolator.name=The Immolator
@ -971,6 +997,8 @@ item.gun_mirv_ammo.name=Eightfold MIRV
item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F. item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F.
item.gun_mp40_ammo.name=Submachine Gun Round item.gun_mp40_ammo.name=Submachine Gun Round
item.gun_uboinik_ammo.name=12x70 Buckshot item.gun_uboinik_ammo.name=12x70 Buckshot
item.gun_lever_action_ammo.name=12x74 Buckshot
item.gun_bolt_action_ammo.name=12x74 Slug
item.gun_xvl1456_ammo.name=Depleted Uranium-235 Box item.gun_xvl1456_ammo.name=Depleted Uranium-235 Box
item.gun_osipr_ammo.name=Dark Energy Pulse Plug item.gun_osipr_ammo.name=Dark Energy Pulse Plug
item.gun_osipr_ammo2.name=Combine Ball item.gun_osipr_ammo2.name=Combine Ball
@ -989,6 +1017,7 @@ item.turret_heavy_ammo.name=Heavy MG Turret Ammunition
item.turret_rocket_ammo.name=Rocket Turret 2x4 Ammunition item.turret_rocket_ammo.name=Rocket Turret 2x4 Ammunition
item.turret_flamer_ammo.name=Flamer Turret Fuel Tanks item.turret_flamer_ammo.name=Flamer Turret Fuel Tanks
item.turret_tau_ammo.name=Tau Turret Uranium Ammo item.turret_tau_ammo.name=Tau Turret Uranium Ammo
item.turret_spitfire_ammo.name=AA-Shell
item.clip_revolver_iron.name=Box of Iron Rounds item.clip_revolver_iron.name=Box of Iron Rounds
item.clip_revolver.name=Box of .357 Rounds item.clip_revolver.name=Box of .357 Rounds
@ -1006,11 +1035,15 @@ item.clip_mirv.name=Three-In-One Pack of Mini MIRVs
item.clip_bf.name=BF-Shell Double Pack item.clip_bf.name=BF-Shell Double Pack
item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine
item.clip_mp40.name=9mm SMG Magazine item.clip_mp40.name=9mm SMG Magazine
item.clip_uboinik.name=Box of Buckshot Rounds item.clip_uboinik.name=Box of 12x70 Buckshot Rounds
item.clip_lever_action.name=Box of 12x74 Buckshot Rounds
item.clip_bolt_action.name=Box of 12x74 Slugs
item.clip_emp.name=Small Pack of Energy Cells item.clip_emp.name=Small Pack of Energy Cells
item.clip_revolver_nightmare.name=Bag of Bullets item.clip_revolver_nightmare.name=Bag of Bullets
item.clip_revolver_nightmare2.name=Belt with Laser Buckshot item.clip_revolver_nightmare2.name=Belt with Laser Buckshot
item.ammo_container.name=Ammo Container
tile.block_schrabidium.name=Block of Schrabidium tile.block_schrabidium.name=Block of Schrabidium
item.plate_gold.name=Gold Plate item.plate_gold.name=Gold Plate
@ -1119,6 +1152,7 @@ item.missile_nuclear_cluster.name=Nuclear MIRV Missile
item.missile_endo.name=Endothermic Missile item.missile_endo.name=Endothermic Missile
item.missile_exo.name=Exothermic Missile item.missile_exo.name=Exothermic Missile
item.missile_doomsday.name=Doomsday Missile item.missile_doomsday.name=Doomsday Missile
item.missile_taint.name=Taint-Tipped Missile
item.hazmat_helmet.name=Hazmat Helmet item.hazmat_helmet.name=Hazmat Helmet
item.hazmat_plate.name=Hazmat Chestplate item.hazmat_plate.name=Hazmat Chestplate
@ -1423,6 +1457,7 @@ item.reer_graar.name=The Reer Graar
item.letter.name=Express Mail item.letter.name=Express Mail
item.polaroid.name=The Polaroid item.polaroid.name=The Polaroid
item.glitch.name=Glitch [WIP]
item.book_secret.name=3-596-50802-9 item.book_secret.name=3-596-50802-9
item.burnt_bark.name=Burnt Bark item.burnt_bark.name=Burnt Bark
@ -1442,5 +1477,7 @@ tile.crystal_virus.name=Dark Crystal
tile.crystal_hardened.name=Hardened Dark Crystal tile.crystal_hardened.name=Hardened Dark Crystal
tile.crystal_pulsar.name=Pulsating Crystal tile.crystal_pulsar.name=Pulsating Crystal
tile.taint.name=Taint
tile.cheater_virus.name=Gelid Euphemium tile.cheater_virus.name=Gelid Euphemium
tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,697 @@
# Blender v2.76 (sub 0) OBJ File: 'rad_gen_body.blend'
# www.blender.org
o Cube
v 1.500000 0.000000 1.500000
v -1.500000 0.000000 1.500000
v -1.500000 0.000000 -2.500000
v 1.500000 3.000000 -2.500000
v 1.499999 3.000000 1.500000
v -1.500000 3.000000 1.500000
v -1.500000 3.000000 -2.500000
v 1.500000 0.000000 -2.500000
v -1.500000 0.000000 -2.500000
v 1.500000 1.500000 -2.500000
v -1.500000 1.500000 -2.500000
v 1.500000 0.000000 -4.500000
v -1.500000 0.000000 -4.500000
v 1.500000 1.500000 -4.500000
v -1.500000 1.500000 -4.500000
v -1.500000 2.500000 -2.500000
v -1.500000 2.500000 -4.500000
v -1.000000 3.000000 -2.500000
v -1.000000 3.000000 -4.500000
v 0.000000 2.500000 -2.500000
v 0.000000 2.500000 -4.500000
v -0.500000 3.000000 -2.500000
v -0.500000 3.000000 -4.500000
v 0.000000 1.500000 -2.500000
v 0.000000 1.500000 -4.500000
v 0.156250 0.343750 -4.500000
v -0.156250 0.343750 -4.500000
v 0.156250 0.656250 -4.500000
v -0.156250 0.656250 -4.500000
v -0.375000 0.875000 -4.500000
v 0.375000 0.875000 -4.500000
v -0.375000 0.125000 -4.500000
v 0.375000 0.125000 -4.500000
v -0.375000 0.875000 -4.375000
v 0.375000 0.875000 -4.375000
v -0.375000 0.125000 -4.375000
v 0.375000 0.125000 -4.375000
v 0.156250 0.343750 -4.375000
v -0.156250 0.343750 -4.375000
v 0.156250 0.656250 -4.375000
v -0.156250 0.656250 -4.375000
v 0.750000 2.661612 -3.088388
v 0.750000 2.750000 -3.125000
v 1.000000 1.500000 -3.125000
v 1.000000 2.500000 -3.125000
v 1.088388 1.500000 -3.088388
v 1.088388 2.500000 -3.088388
v 1.125000 1.500000 -3.000000
v 1.125000 2.500000 -3.000000
v 1.088388 1.500000 -2.911612
v 1.088388 2.500000 -2.911612
v 1.000000 1.500000 -2.875000
v 1.000000 2.500000 -2.875000
v 0.911612 1.500000 -2.911612
v 0.911612 2.500000 -2.911612
v 0.875000 1.500000 -3.000000
v 0.875000 2.500000 -3.000000
v 0.911612 1.500000 -3.088388
v 0.911612 2.500000 -3.088388
v 0.750000 2.625000 -3.000000
v 0.750000 2.661612 -2.911612
v 0.750000 2.750000 -2.875000
v 0.750000 2.838388 -2.911612
v 0.750000 2.875000 -3.000000
v 0.750000 2.838388 -3.088388
v -0.400000 2.750000 -3.125000
v -0.400000 2.838388 -3.088388
v -0.400000 2.875000 -3.000000
v -0.400000 2.838388 -2.911612
v -0.400000 2.750000 -2.875000
v -0.400000 2.661612 -2.911612
v -0.400000 2.625000 -3.000000
v -0.400000 2.661612 -3.088388
v 0.750000 2.661612 -3.588388
v 0.750000 2.750000 -3.625000
v 1.000000 1.500000 -3.625000
v 1.000000 2.500000 -3.625000
v 1.088388 1.500000 -3.588388
v 1.088388 2.500000 -3.588388
v 1.125000 1.500000 -3.500000
v 1.125000 2.500000 -3.500000
v 1.088388 1.500000 -3.411612
v 1.088388 2.500000 -3.411612
v 1.000000 1.500000 -3.375000
v 1.000000 2.500000 -3.375000
v 0.911612 1.500000 -3.411612
v 0.911612 2.500000 -3.411612
v 0.875000 1.500000 -3.500000
v 0.875000 2.500000 -3.500000
v 0.911612 1.500000 -3.588388
v 0.911612 2.500000 -3.588388
v 0.750000 2.625000 -3.500000
v 0.750000 2.661612 -3.411612
v 0.750000 2.750000 -3.375000
v 0.750000 2.838388 -3.411612
v 0.750000 2.875000 -3.500000
v 0.750000 2.838388 -3.588388
v -0.400000 2.750000 -3.625000
v -0.400000 2.838388 -3.588388
v -0.400000 2.875000 -3.500000
v -0.400000 2.838388 -3.411612
v -0.400000 2.750000 -3.375000
v -0.400000 2.661612 -3.411612
v -0.400000 2.625000 -3.500000
v -0.400000 2.661612 -3.588388
v 0.750000 2.661612 -4.088388
v 0.750000 2.750000 -4.125000
v 1.000000 1.500000 -4.125000
v 1.000000 2.500000 -4.125000
v 1.088388 1.500000 -4.088388
v 1.088388 2.500000 -4.088388
v 1.125000 1.500000 -4.000000
v 1.125000 2.500000 -4.000000
v 1.088388 1.500000 -3.911612
v 1.088388 2.500000 -3.911612
v 1.000000 1.500000 -3.875000
v 1.000000 2.500000 -3.875000
v 0.911612 1.500000 -3.911612
v 0.911612 2.500000 -3.911612
v 0.875000 1.500000 -4.000000
v 0.875000 2.500000 -4.000000
v 0.911612 1.500000 -4.088388
v 0.911612 2.500000 -4.088388
v 0.750000 2.625000 -4.000000
v 0.750000 2.661612 -3.911612
v 0.750000 2.750000 -3.875000
v 0.750000 2.838388 -3.911612
v 0.750000 2.875000 -4.000000
v 0.750000 2.838388 -4.088388
v -0.400000 2.750000 -4.125000
v -0.400000 2.838388 -4.088388
v -0.400000 2.875000 -4.000000
v -0.400000 2.838388 -3.911612
v -0.400000 2.750000 -3.875000
v -0.400000 2.661612 -3.911612
v -0.400000 2.625000 -4.000000
v -0.400000 2.661612 -4.088388
v 1.500000 2.500000 -0.250000
v 1.500000 0.500000 -0.250000
v 1.500000 2.500000 -0.750000
v 1.500000 0.500000 -0.750000
v 1.500000 2.500000 0.750000
v 1.500000 0.500000 0.750000
v 1.500000 2.500000 0.250000
v 1.500000 0.500000 0.250000
v 1.500000 2.500000 -1.250000
v 1.500000 0.500000 -1.250000
v 1.500000 2.500000 -1.750000
v 1.500000 0.500000 -1.750000
v -1.500000 0.500000 -0.250000
v -1.500000 2.500000 -0.250000
v -1.500000 0.500000 -0.750000
v -1.500000 2.500000 -0.750000
v -1.500000 0.500000 0.750000
v -1.500000 2.500000 0.750000
v -1.500000 0.500000 0.250000
v -1.500000 2.500000 0.250000
v -1.500000 0.500000 -1.250000
v -1.500000 2.500000 -1.250000
v -1.500000 0.500000 -1.750000
v -1.500000 2.500000 -1.750000
v -1.250000 0.500000 -0.250000
v -1.250000 2.500000 -0.250000
v -1.250000 2.500000 -0.750000
v -1.250000 0.500000 -0.750000
v 1.250000 2.500000 -0.250000
v 1.250000 0.500000 -0.250000
v 1.250000 0.500000 -0.750000
v 1.250000 2.500000 -0.750000
v 1.250000 2.500000 0.750000
v 1.250000 0.500000 0.750000
v 1.250000 0.500000 0.250000
v 1.250000 2.500000 0.250000
v 1.250000 2.500000 -1.250000
v 1.250000 0.500000 -1.250000
v 1.250000 0.500000 -1.750000
v 1.250000 2.500000 -1.750000
v -1.250000 0.500000 0.750000
v -1.250000 2.500000 0.750000
v -1.250000 2.500000 0.250000
v -1.250000 0.500000 0.250000
v -1.250000 0.500000 -1.250000
v -1.250000 2.500000 -1.250000
v -1.250000 2.500000 -1.750000
v -1.250000 0.500000 -1.750000
v 0.000000 2.500000 1.500000
v -0.382683 2.423880 1.500000
v -0.707107 2.207107 1.500000
v -0.923880 1.882683 1.500000
v -1.000000 1.500000 1.500000
v -0.923880 1.117316 1.500000
v -0.707107 0.792893 1.500000
v -0.382683 0.576120 1.500000
v -0.000000 0.500000 1.500000
v 0.382683 0.576120 1.500000
v 0.707107 0.792893 1.500000
v 0.923880 1.117316 1.500000
v 1.000000 1.500000 1.500000
v 0.923879 1.882684 1.500000
v 0.707107 2.207107 1.500000
v 0.382683 2.423880 1.500000
v -0.382683 2.423880 1.000000
v 0.000000 2.500000 1.000000
v -0.707107 2.207107 1.000000
v -0.923880 1.882683 1.000000
v -1.000000 1.500000 1.000000
v -0.923880 1.117316 1.000000
v -0.707107 0.792893 1.000000
v -0.382683 0.576120 1.000000
v -0.000000 0.500000 1.000000
v 0.382683 0.576120 1.000000
v 0.707107 0.792893 1.000000
v 0.923880 1.117316 1.000000
v 1.000000 1.500000 1.000000
v 0.923879 1.882684 1.000000
v 0.707107 2.207107 1.000000
v 0.382683 2.423880 1.000000
v 0.000000 1.650000 1.000000
v -0.106066 1.606066 1.000000
v -0.150000 1.500000 1.000000
v -0.106066 1.393934 1.000000
v 0.000000 1.350000 1.000000
v 0.106066 1.393934 1.000000
v 0.150000 1.500000 1.000000
v 0.106066 1.606066 1.000000
v -0.106066 1.606066 1.500000
v 0.000000 1.650000 1.500000
v -0.150000 1.500000 1.500000
v -0.106066 1.393934 1.500000
v 0.000000 1.350000 1.500000
v 0.106066 1.393934 1.500000
v 0.150000 1.500000 1.500000
v 0.106066 1.606066 1.500000
vn 0.000000 1.000000 0.000000
vn 0.195100 -0.980800 0.000000
vn 1.000000 0.000000 0.000000
vn -1.000000 0.000000 -0.000000
vn -0.000000 0.000000 -1.000000
vn -0.707100 0.707100 0.000000
vn 0.707100 0.707100 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.382700 0.000000 -0.923900
vn 0.923900 0.000000 -0.382700
vn 0.923900 0.000000 0.382700
vn 0.382700 0.000000 0.923900
vn -0.382700 0.000000 0.923900
vn -0.923900 0.000000 0.382700
vn -0.382700 0.000000 -0.923900
vn -0.923900 0.000000 -0.382700
vn -0.678600 -0.678600 -0.281100
vn -0.357400 -0.357400 -0.862900
vn 0.357400 0.357400 -0.862900
vn 0.678600 0.678600 -0.281100
vn -0.678600 -0.678600 0.281100
vn -0.357400 -0.357400 0.862900
vn 0.357400 0.357400 0.862900
vn 0.678600 0.678600 0.281100
vn 0.000000 -0.382700 0.923900
vn 0.000000 0.923900 -0.382700
vn 0.000000 0.382700 0.923900
vn 0.000000 0.923900 0.382700
vn 0.000000 -0.382700 -0.923900
vn 0.000000 -0.923900 -0.382700
vn 0.000000 0.382700 -0.923900
vn 0.000000 -0.923900 0.382700
vn 0.000000 0.000000 1.000000
vn -0.195100 -0.980800 0.000000
vn -0.195100 0.980800 0.000000
vn 0.555600 -0.831500 0.000000
vn -0.555600 0.831500 0.000000
vn 0.831500 -0.555600 0.000000
vn -0.831500 0.555600 0.000000
vn 0.980800 -0.195100 0.000000
vn -0.980800 0.195100 0.000000
vn 0.980800 0.195100 0.000000
vn -0.980800 -0.195100 0.000000
vn 0.831500 0.555600 0.000000
vn -0.831500 -0.555600 0.000000
vn 0.555600 0.831500 0.000000
vn -0.555600 -0.831500 0.000000
vn 0.195100 0.980800 0.000000
vn -0.382700 0.923900 0.000000
vn 0.382700 0.923900 0.000000
vn 0.923900 -0.382700 0.000000
vn -0.382700 -0.923900 0.000000
vn -0.923900 0.382700 0.000000
vn 0.923900 0.382700 0.000000
vn 0.382700 -0.923900 0.000000
vn -0.923900 -0.382700 0.000000
s off
f 22//1 6//1 5//1
f 187//2 202//2 203//2
f 24//3 25//3 21//3
f 11//4 15//4 13//4
f 16//5 7//5 18//5
f 8//3 12//3 14//3
f 16//6 18//6 19//6
f 15//4 11//4 16//4
f 18//1 22//1 23//1
f 23//7 22//7 20//7
f 12//8 8//8 9//8
f 24//1 10//1 14//1
f 144//3 145//3 139//3
f 2//8 9//8 8//8
f 21//5 25//5 17//5
f 22//5 4//5 20//5
f 20//5 4//5 10//5
f 27//5 29//5 28//5
f 35//8 34//8 30//8
f 34//3 36//3 32//3
f 36//1 37//1 33//1
f 37//4 35//4 31//4
f 28//3 40//3 38//3
f 26//8 38//8 39//8
f 27//4 39//4 41//4
f 29//1 41//1 40//1
f 40//5 41//5 34//5
f 41//5 39//5 36//5
f 39//5 38//5 37//5
f 38//5 40//5 35//5
f 30//5 15//5 25//5
f 13//5 32//5 33//5
f 12//5 33//5 31//5
f 30//5 32//5 13//5
f 45//9 47//9 46//9
f 47//10 49//10 48//10
f 49//11 51//11 50//11
f 51//12 53//12 52//12
f 53//13 55//13 54//13
f 55//14 57//14 56//14
f 59//15 45//15 44//15
f 57//16 59//16 58//16
f 42//17 59//17 57//17
f 42//18 43//18 45//18
f 43//19 65//19 47//19
f 64//20 49//20 47//20
f 61//21 60//21 57//21
f 61//22 55//22 53//22
f 62//23 53//23 51//23
f 63//24 51//24 49//24
f 62//25 70//25 71//25
f 77//9 79//9 78//9
f 65//26 67//26 68//26
f 63//27 69//27 70//27
f 64//28 68//28 69//28
f 42//29 73//29 66//29
f 60//30 72//30 73//30
f 43//31 66//31 67//31
f 61//32 71//32 72//32
f 79//10 81//10 80//10
f 81//11 83//11 82//11
f 83//12 85//12 84//12
f 85//13 87//13 86//13
f 87//14 89//14 88//14
f 91//15 77//15 76//15
f 89//16 91//16 90//16
f 74//17 91//17 89//17
f 74//18 75//18 77//18
f 75//19 97//19 79//19
f 96//20 81//20 79//20
f 93//21 92//21 89//21
f 93//22 87//22 85//22
f 94//23 85//23 83//23
f 95//24 83//24 81//24
f 94//25 102//25 103//25
f 97//26 99//26 100//26
f 95//27 101//27 102//27
f 96//28 100//28 101//28
f 74//29 105//29 98//29
f 92//30 104//30 105//30
f 75//31 98//31 99//31
f 93//32 103//32 104//32
f 109//9 111//9 110//9
f 111//10 113//10 112//10
f 113//11 115//11 114//11
f 115//12 117//12 116//12
f 117//13 119//13 118//13
f 119//14 121//14 120//14
f 123//15 109//15 108//15
f 121//16 123//16 122//16
f 106//17 123//17 121//17
f 106//18 107//18 109//18
f 107//19 129//19 111//19
f 128//20 113//20 111//20
f 125//21 124//21 121//21
f 125//22 119//22 117//22
f 126//23 117//23 115//23
f 127//24 115//24 113//24
f 126//25 134//25 135//25
f 129//26 131//26 132//26
f 127//27 133//27 134//27
f 128//28 132//28 133//28
f 106//29 137//29 130//29
f 124//30 136//30 137//30
f 107//31 130//31 131//31
f 125//32 135//32 136//32
f 147//3 146//3 140//3
f 10//3 148//3 149//3
f 140//3 146//3 4//3
f 139//3 145//3 1//3
f 143//3 142//3 5//3
f 159//4 158//4 152//4
f 156//4 157//4 151//4
f 155//4 154//4 2//4
f 151//4 157//4 6//4
f 161//4 16//4 11//4
f 152//4 158//4 3//4
f 163//4 164//4 165//4
f 163//5 162//5 150//5
f 164//8 163//8 151//8
f 165//33 164//33 153//33
f 162//1 165//1 152//1
f 167//3 168//3 169//3
f 167//5 166//5 138//5
f 168//1 167//1 139//1
f 169//33 168//33 141//33
f 166//8 169//8 140//8
f 171//3 172//3 173//3
f 171//5 170//5 142//5
f 172//1 171//1 143//1
f 173//33 172//33 145//33
f 170//8 173//8 144//8
f 175//3 176//3 177//3
f 175//5 174//5 146//5
f 176//1 175//1 147//1
f 177//33 176//33 149//33
f 174//8 177//8 148//8
f 179//4 180//4 181//4
f 179//5 178//5 154//5
f 180//8 179//8 155//8
f 181//33 180//33 157//33
f 178//1 181//1 156//1
f 183//4 184//4 185//4
f 183//5 182//5 158//5
f 184//8 183//8 159//8
f 185//33 184//33 161//33
f 182//1 185//1 160//1
f 6//33 186//33 5//33
f 5//33 198//33 1//33
f 1//33 194//33 2//33
f 2//33 190//33 6//33
f 212//33 214//33 203//33
f 186//34 203//34 217//34
f 195//35 211//35 210//35
f 187//36 188//36 204//36
f 196//37 212//37 211//37
f 189//38 205//38 204//38
f 197//39 213//39 212//39
f 190//40 206//40 205//40
f 198//41 214//41 213//41
f 191//42 207//42 206//42
f 199//43 215//43 214//43
f 192//44 208//44 207//44
f 200//45 216//45 215//45
f 193//46 209//46 208//46
f 201//47 217//47 216//47
f 194//48 210//48 209//48
f 230//33 232//33 227//33
f 219//49 226//49 227//49
f 218//50 227//50 233//50
f 224//51 232//51 231//51
f 222//52 230//52 229//52
f 220//53 228//53 226//53
f 225//54 233//54 232//54
f 223//55 231//55 230//55
f 221//56 229//56 228//56
f 5//1 4//1 22//1
f 22//1 18//1 6//1
f 7//1 6//1 18//1
f 186//2 187//2 203//2
f 20//3 24//3 21//3
f 9//4 11//4 13//4
f 10//3 8//3 14//3
f 17//6 16//6 19//6
f 17//4 15//4 16//4
f 19//1 18//1 23//1
f 21//7 23//7 20//7
f 13//8 12//8 9//8
f 25//1 24//1 14//1
f 138//3 144//3 139//3
f 8//8 1//8 2//8
f 2//33 3//33 9//33
f 17//5 19//5 23//5
f 23//5 21//5 17//5
f 25//5 15//5 17//5
f 24//5 20//5 10//5
f 26//5 27//5 28//5
f 31//8 35//8 30//8
f 30//3 34//3 32//3
f 32//1 36//1 33//1
f 33//4 37//4 31//4
f 26//3 28//3 38//3
f 27//8 26//8 39//8
f 29//4 27//4 41//4
f 28//1 29//1 40//1
f 35//5 40//5 34//5
f 34//5 41//5 36//5
f 36//5 39//5 37//5
f 37//5 38//5 35//5
f 25//5 14//5 31//5
f 31//5 30//5 25//5
f 12//5 13//5 33//5
f 14//5 12//5 31//5
f 15//5 30//5 13//5
f 44//9 45//9 46//9
f 46//10 47//10 48//10
f 48//11 49//11 50//11
f 50//12 51//12 52//12
f 52//13 53//13 54//13
f 54//14 55//14 56//14
f 58//15 59//15 44//15
f 56//16 57//16 58//16
f 60//17 42//17 57//17
f 59//18 42//18 45//18
f 45//19 43//19 47//19
f 65//20 64//20 47//20
f 55//21 61//21 57//21
f 62//22 61//22 53//22
f 63//23 62//23 51//23
f 64//24 63//24 49//24
f 61//25 62//25 71//25
f 76//9 77//9 78//9
f 64//26 65//26 68//26
f 62//27 63//27 70//27
f 63//28 64//28 69//28
f 43//29 42//29 66//29
f 42//30 60//30 73//30
f 65//31 43//31 67//31
f 60//32 61//32 72//32
f 78//10 79//10 80//10
f 80//11 81//11 82//11
f 82//12 83//12 84//12
f 84//13 85//13 86//13
f 86//14 87//14 88//14
f 90//15 91//15 76//15
f 88//16 89//16 90//16
f 92//17 74//17 89//17
f 91//18 74//18 77//18
f 77//19 75//19 79//19
f 97//20 96//20 79//20
f 87//21 93//21 89//21
f 94//22 93//22 85//22
f 95//23 94//23 83//23
f 96//24 95//24 81//24
f 93//25 94//25 103//25
f 96//26 97//26 100//26
f 94//27 95//27 102//27
f 95//28 96//28 101//28
f 75//29 74//29 98//29
f 74//30 92//30 105//30
f 97//31 75//31 99//31
f 92//32 93//32 104//32
f 108//9 109//9 110//9
f 110//10 111//10 112//10
f 112//11 113//11 114//11
f 114//12 115//12 116//12
f 116//13 117//13 118//13
f 118//14 119//14 120//14
f 122//15 123//15 108//15
f 120//16 121//16 122//16
f 124//17 106//17 121//17
f 123//18 106//18 109//18
f 109//19 107//19 111//19
f 129//20 128//20 111//20
f 119//21 125//21 121//21
f 126//22 125//22 117//22
f 127//23 126//23 115//23
f 128//24 127//24 113//24
f 125//25 126//25 135//25
f 128//26 129//26 132//26
f 126//27 127//27 134//27
f 127//28 128//28 133//28
f 107//29 106//29 130//29
f 106//30 124//30 137//30
f 129//31 107//31 131//31
f 124//32 125//32 136//32
f 141//3 147//3 140//3
f 149//3 8//3 10//3
f 10//3 4//3 148//3
f 4//3 5//3 140//3
f 144//3 138//3 5//3
f 5//3 142//3 144//3
f 146//3 148//3 4//3
f 138//3 140//3 5//3
f 1//3 8//3 141//3
f 149//3 147//3 8//3
f 141//3 139//3 1//3
f 145//3 143//3 1//3
f 8//3 147//3 141//3
f 1//3 143//3 5//3
f 153//4 159//4 152//4
f 150//4 156//4 151//4
f 6//4 155//4 2//4
f 6//4 7//4 153//4
f 161//4 159//4 7//4
f 153//4 151//4 6//4
f 157//4 155//4 6//4
f 7//4 159//4 153//4
f 11//4 9//4 160//4
f 160//4 161//4 11//4
f 7//4 16//4 161//4
f 3//4 2//4 150//4
f 154//4 156//4 2//4
f 150//4 152//4 3//4
f 160//33 9//33 3//33
f 156//4 150//4 2//4
f 158//4 160//4 3//4
f 162//4 163//4 165//4
f 151//5 163//5 150//5
f 153//8 164//8 151//8
f 152//33 165//33 153//33
f 150//1 162//1 152//1
f 166//3 167//3 169//3
f 139//5 167//5 138//5
f 141//1 168//1 139//1
f 140//33 169//33 141//33
f 138//8 166//8 140//8
f 170//3 171//3 173//3
f 143//5 171//5 142//5
f 145//1 172//1 143//1
f 144//33 173//33 145//33
f 142//8 170//8 144//8
f 174//3 175//3 177//3
f 147//5 175//5 146//5
f 149//1 176//1 147//1
f 148//33 177//33 149//33
f 146//8 174//8 148//8
f 178//4 179//4 181//4
f 155//5 179//5 154//5
f 157//8 180//8 155//8
f 156//33 181//33 157//33
f 154//1 178//1 156//1
f 182//4 183//4 185//4
f 159//5 183//5 158//5
f 161//8 184//8 159//8
f 160//33 185//33 161//33
f 158//1 182//1 160//1
f 201//33 200//33 5//33
f 6//33 188//33 187//33
f 201//33 5//33 186//33
f 6//33 187//33 186//33
f 197//33 196//33 1//33
f 5//33 200//33 199//33
f 197//33 1//33 198//33
f 5//33 199//33 198//33
f 193//33 192//33 2//33
f 1//33 196//33 195//33
f 193//33 2//33 194//33
f 1//33 195//33 194//33
f 189//33 188//33 6//33
f 2//33 192//33 191//33
f 189//33 6//33 190//33
f 2//33 191//33 190//33
f 203//33 202//33 204//33
f 204//33 205//33 203//33
f 206//33 207//33 210//33
f 208//33 209//33 210//33
f 210//33 211//33 212//33
f 212//33 213//33 214//33
f 214//33 215//33 216//33
f 216//33 217//33 214//33
f 203//33 205//33 206//33
f 207//33 208//33 210//33
f 210//33 212//33 203//33
f 214//33 217//33 203//33
f 203//33 206//33 210//33
f 201//34 186//34 217//34
f 194//35 195//35 210//35
f 202//36 187//36 204//36
f 195//37 196//37 211//37
f 188//38 189//38 204//38
f 196//39 197//39 212//39
f 189//40 190//40 205//40
f 197//41 198//41 213//41
f 190//42 191//42 206//42
f 198//43 199//43 214//43
f 191//44 192//44 207//44
f 199//45 200//45 215//45
f 192//46 193//46 208//46
f 200//47 201//47 216//47
f 193//48 194//48 209//48
f 227//33 226//33 228//33
f 228//33 229//33 230//33
f 230//33 231//33 232//33
f 232//33 233//33 227//33
f 227//33 228//33 230//33
f 218//49 219//49 227//49
f 225//50 218//50 233//50
f 223//51 224//51 231//51
f 221//52 222//52 229//52
f 219//53 220//53 226//53
f 224//54 225//54 232//54
f 222//55 223//55 230//55
f 220//56 221//56 228//56

View File

@ -0,0 +1,172 @@
# Blender v2.76 (sub 0) OBJ File: 'rad_gen_rotor.blend'
# www.blender.org
o Plane.021
v -0.046985 -0.081380 1.434202
v 0.046985 0.081380 1.365798
v -0.913010 0.418620 1.434202
v -0.819041 0.581380 1.365798
v -0.066446 -0.066446 1.434202
v 0.066446 0.066446 1.365798
v -0.773553 0.640660 1.434202
v -0.640661 0.773553 1.365798
v -0.090767 -0.024321 1.434202
v 0.090767 0.024321 1.365798
v -0.349586 0.941605 1.434202
v -0.168052 0.990247 1.365798
v -0.081380 -0.046985 1.434202
v 0.081380 0.046985 1.365798
v -0.581380 0.819041 1.434202
v -0.418620 0.913010 1.365798
v -0.000000 -0.093969 1.434202
v 0.000000 0.093969 1.365798
v -1.000000 -0.093969 1.434202
v -1.000000 0.093970 1.365798
v -0.024321 -0.090767 1.434202
v 0.024321 0.090767 1.365798
v -0.990247 0.168052 1.434202
v -0.941605 0.349586 1.365798
v 0.024321 -0.090767 1.434202
v -0.024321 0.090767 1.365798
v -0.941605 -0.349587 1.434202
v -0.990247 -0.168052 1.365798
v 0.046985 -0.081380 1.434202
v -0.046985 0.081380 1.365798
v -0.819041 -0.581380 1.434202
v -0.913010 -0.418620 1.365798
v 0.046985 0.081380 1.434202
v -0.046985 -0.081380 1.365798
v 0.913010 -0.418620 1.434202
v 0.819041 -0.581380 1.365798
v 0.066446 0.066446 1.434202
v -0.066446 -0.066446 1.365798
v 0.773553 -0.640660 1.434202
v 0.640661 -0.773553 1.365798
v 0.090767 0.024321 1.434202
v -0.090767 -0.024321 1.365798
v 0.349586 -0.941605 1.434202
v 0.168052 -0.990247 1.365798
v 0.081380 0.046985 1.434202
v -0.081380 -0.046985 1.365798
v 0.581380 -0.819041 1.434202
v 0.418620 -0.913010 1.365798
v 0.081380 -0.046985 1.434202
v -0.081380 0.046985 1.365798
v -0.418620 -0.913010 1.434202
v -0.581380 -0.819041 1.365798
v 0.066446 -0.066446 1.434202
v -0.066446 0.066446 1.365798
v -0.640661 -0.773553 1.434202
v -0.773553 -0.640660 1.365798
v 0.090767 -0.024321 1.434202
v -0.090767 0.024321 1.365798
v -0.168052 -0.990247 1.434202
v -0.349586 -0.941605 1.365798
v 0.093969 0.000000 1.434202
v -0.093969 -0.000000 1.365798
v 0.093969 -1.000000 1.434202
v -0.093969 -1.000000 1.365798
v -0.046985 0.081380 1.434202
v 0.046985 -0.081380 1.365798
v 0.819041 0.581380 1.434202
v 0.913010 0.418620 1.365798
v -0.024321 0.090767 1.434202
v 0.024321 -0.090767 1.365798
v 0.941605 0.349586 1.434202
v 0.990247 0.168052 1.365798
v 0.024321 0.090767 1.434202
v -0.024321 -0.090767 1.365798
v 0.990247 -0.168052 1.434202
v 0.941605 -0.349587 1.365798
v -0.000000 0.093969 1.434202
v -0.000000 -0.093969 1.365798
v 1.000000 0.093969 1.434202
v 1.000000 -0.093969 1.365798
v -0.081380 0.046985 1.434202
v 0.081380 -0.046985 1.365798
v 0.418620 0.913010 1.434202
v 0.581380 0.819041 1.365798
v -0.066446 0.066446 1.434202
v 0.066446 -0.066446 1.365798
v 0.640661 0.773553 1.434202
v 0.773553 0.640660 1.365798
v -0.090767 0.024321 1.434202
v 0.090767 -0.024321 1.365798
v 0.168052 0.990247 1.434202
v 0.349586 0.941605 1.365798
v -0.093969 -0.000000 1.434202
v 0.093969 -0.000000 1.365798
v -0.093969 1.000000 1.434202
v 0.093969 1.000000 1.365798
vn 0.171000 0.296200 0.939700
vn 0.241800 0.241800 0.939700
vn 0.330400 0.088500 0.939700
vn 0.296200 0.171000 0.939700
vn 0.000000 0.342000 0.939700
vn 0.088500 0.330400 0.939700
vn -0.088500 0.330400 0.939700
vn -0.171000 0.296200 0.939700
vn -0.171000 -0.296200 0.939700
vn -0.241800 -0.241800 0.939700
vn -0.330400 -0.088500 0.939700
vn -0.296200 -0.171000 0.939700
vn -0.296200 0.171000 0.939700
vn -0.241800 0.241800 0.939700
vn -0.330400 0.088500 0.939700
vn -0.342000 -0.000000 0.939700
vn 0.171000 -0.296200 0.939700
vn 0.088500 -0.330400 0.939700
vn -0.088500 -0.330400 0.939700
vn 0.000000 -0.342000 0.939700
vn 0.296200 -0.171000 0.939700
vn 0.241800 -0.241800 0.939700
vn 0.330400 -0.088500 0.939700
vn 0.342000 0.000000 0.939700
s off
f 2//1 4//1 3//1
f 6//2 8//2 7//2
f 10//3 12//3 11//3
f 13//4 14//4 16//4
f 17//5 18//5 20//5
f 21//6 22//6 24//6
f 25//7 26//7 28//7
f 30//8 32//8 31//8
f 34//9 36//9 35//9
f 38//10 40//10 39//10
f 42//11 44//11 43//11
f 46//12 48//12 47//12
f 50//13 52//13 51//13
f 54//14 56//14 55//14
f 58//15 60//15 59//15
f 62//16 64//16 63//16
f 66//17 68//17 67//17
f 70//18 72//18 71//18
f 74//19 76//19 75//19
f 78//20 80//20 79//20
f 82//21 84//21 83//21
f 86//22 88//22 87//22
f 90//23 92//23 91//23
f 94//24 96//24 95//24
f 1//1 2//1 3//1
f 5//2 6//2 7//2
f 9//3 10//3 11//3
f 15//4 13//4 16//4
f 19//5 17//5 20//5
f 23//6 21//6 24//6
f 27//7 25//7 28//7
f 29//8 30//8 31//8
f 33//9 34//9 35//9
f 37//10 38//10 39//10
f 41//11 42//11 43//11
f 45//12 46//12 47//12
f 49//13 50//13 51//13
f 53//14 54//14 55//14
f 57//15 58//15 59//15
f 61//16 62//16 63//16
f 65//17 66//17 67//17
f 69//18 70//18 71//18
f 73//19 74//19 75//19
f 77//20 78//20 79//20
f 81//21 82//21 83//21
f 85//22 86//22 87//22
f 89//23 90//23 91//23
f 93//24 94//24 95//24

View File

@ -0,0 +1,58 @@
# Blender v2.76 (sub 0) OBJ File: 'turret_spitfire_base.blend'
# www.blender.org
o Cylinder
v 0.000000 0.000000 -1.000000
v 0.000000 0.125000 -1.000000
v 0.707107 0.000000 -0.707107
v 0.707107 0.125000 -0.707107
v 1.000000 0.000000 0.000000
v 1.000000 0.125000 0.000000
v 0.707107 0.000000 0.707107
v 0.707107 0.125000 0.707107
v -0.000000 0.000000 1.000000
v -0.000000 0.125000 1.000000
v -0.707107 0.000000 0.707107
v -0.707107 0.125000 0.707107
v -1.000000 0.000000 -0.000000
v -1.000000 0.125000 -0.000000
v -0.707107 0.000000 -0.707107
v -0.707107 0.125000 -0.707107
vn 0.382700 0.000000 -0.923900
vn 0.923900 0.000000 -0.382700
vn 0.923900 0.000000 0.382700
vn 0.382700 0.000000 0.923900
vn -0.382700 0.000000 0.923900
vn -0.923900 0.000000 0.382700
vn 0.000000 1.000000 -0.000000
vn -0.382700 0.000000 -0.923900
vn -0.923900 0.000000 -0.382700
vn 0.000000 -1.000000 0.000000
s off
f 2//1 4//1 3//1
f 4//2 6//2 5//2
f 6//3 8//3 7//3
f 8//4 10//4 9//4
f 10//5 12//5 11//5
f 12//6 14//6 13//6
f 14//7 8//7 6//7
f 16//8 2//8 1//8
f 14//9 16//9 15//9
f 7//10 11//10 15//10
f 1//1 2//1 3//1
f 3//2 4//2 5//2
f 5//3 6//3 7//3
f 7//4 8//4 9//4
f 9//5 10//5 11//5
f 11//6 12//6 13//6
f 6//7 4//7 2//7
f 2//7 16//7 6//7
f 14//7 12//7 10//7
f 10//7 8//7 14//7
f 6//7 16//7 14//7
f 15//8 16//8 1//8
f 13//9 14//9 15//9
f 15//10 1//10 3//10
f 3//10 5//10 15//10
f 7//10 9//10 11//10
f 11//10 13//10 15//10
f 15//10 5//10 7//10

View File

@ -0,0 +1,672 @@
# Blender v2.76 (sub 0) OBJ File: 'turret_spitfire_gun.blend'
# www.blender.org
o Cube.001_Cube.002
v -0.250000 -0.250000 0.500000
v -0.250000 0.250000 0.500000
v -0.250000 -0.250000 -0.500000
v -0.250000 0.250000 -0.500000
v 0.250000 -0.250000 0.500000
v 0.250000 0.250000 0.500000
v 0.250000 -0.250000 -0.500000
v 0.250000 0.250000 -0.500000
v -0.125000 -0.250000 0.375000
v -0.125000 -0.250000 -0.375000
v -0.750000 -0.000000 -0.150000
v 0.750000 0.000000 -0.150000
v -0.750000 -0.075000 -0.129904
v 0.750000 -0.075000 -0.129904
v -0.750000 -0.129904 -0.075000
v 0.750000 -0.129904 -0.075000
v -0.750000 -0.150000 0.000000
v 0.750000 -0.150000 0.000000
v -0.750000 -0.129904 0.075000
v 0.750000 -0.129904 0.075000
v -0.750000 -0.075000 0.129904
v 0.750000 -0.075000 0.129904
v -0.750000 -0.000000 0.150000
v 0.750000 0.000000 0.150000
v -0.750000 0.075000 0.129904
v 0.750000 0.075000 0.129904
v -0.750000 0.129904 0.075000
v 0.750000 0.129904 0.075000
v -0.750000 0.150000 0.000000
v 0.750000 0.150000 0.000000
v -0.750000 0.129904 -0.075000
v 0.750000 0.129904 -0.075000
v -0.750000 0.075000 -0.129904
v 0.750000 0.075000 -0.129904
v 0.125000 -0.250000 -0.375000
v 0.125000 -0.250000 0.375000
v -0.125000 -0.400000 0.375000
v 0.125000 -0.400000 0.375000
v 0.125000 -0.400000 -0.375000
v -0.125000 -0.400000 -0.375000
v 0.000000 0.150000 0.500000
v 0.000000 0.150000 2.000000
v 0.106066 0.106066 0.500000
v 0.106066 0.106066 2.000000
v 0.150000 -0.000000 0.500000
v 0.150000 0.000000 2.000000
v 0.106066 -0.106066 0.500000
v 0.106066 -0.106066 2.000000
v -0.000000 -0.150000 0.500000
v -0.000000 -0.150000 2.000000
v -0.106066 -0.106066 0.500000
v -0.106066 -0.106066 2.000000
v -0.150000 -0.000000 0.500000
v -0.150000 0.000000 2.000000
v -0.106066 0.106066 0.500000
v -0.106066 0.106066 2.000000
v 0.079550 0.079550 2.100000
v -0.000000 0.112500 2.100000
v 0.112500 0.000000 2.100000
v 0.079550 -0.079550 2.100000
v -0.000000 -0.112500 2.100000
v -0.079550 -0.079549 2.100000
v -0.112500 0.000000 2.100000
v -0.079550 0.079550 2.100000
v 0.079550 0.079549 3.350000
v -0.000000 0.112500 3.350000
v 0.112500 -0.000000 3.350000
v 0.079550 -0.079550 3.350000
v -0.000000 -0.112500 3.350000
v -0.079550 -0.079550 3.350000
v -0.112500 -0.000000 3.350000
v -0.079550 0.079549 3.350000
v 0.059662 0.059662 3.350000
v -0.000000 0.084375 3.350000
v 0.084375 -0.000000 3.350000
v 0.059662 -0.059662 3.350000
v -0.000000 -0.084375 3.350000
v -0.059662 -0.059662 3.350000
v -0.084375 -0.000000 3.350000
v -0.059662 0.059662 3.350000
v 0.059662 0.059662 1.350000
v -0.000000 0.084375 1.350000
v 0.084375 -0.000000 1.350000
v 0.059662 -0.059662 1.350000
v -0.000000 -0.084375 1.350000
v -0.059662 -0.059662 1.350000
v -0.084375 -0.000000 1.350000
v -0.059662 0.059662 1.350000
v -0.187500 0.187500 -0.600000
v -0.187500 -0.187500 -0.600000
v 0.187500 0.187500 -0.600000
v 0.187500 -0.187500 -0.600000
v -0.159375 0.000625 -0.600000
v -0.159375 -0.130625 -0.600000
v 0.159375 0.000625 -0.600000
v 0.159375 -0.130625 -0.600000
v -0.000000 0.150000 -1.100000
v -0.000000 0.150000 -0.600000
v 0.079550 0.106066 -1.100000
v 0.079550 0.106066 -0.600000
v 0.112500 -0.000000 -1.100000
v 0.112500 0.000000 -0.600000
v -0.112500 -0.000000 -1.100000
v -0.112500 0.000000 -0.600000
v -0.079550 0.106066 -1.100000
v -0.079550 0.106066 -0.600000
v -0.159375 0.000625 -1.200000
v -0.159375 -0.130625 -1.200000
v 0.159375 0.000625 -1.200000
v 0.159375 -0.130625 -1.200000
v -0.325000 -0.100000 -1.200000
v -0.325000 -0.050000 -1.200000
v -0.325000 -0.100000 -1.600000
v -0.325000 -0.050000 -1.600000
v -0.075000 -0.100000 -1.200000
v -0.075000 -0.050000 -1.200000
v -0.075000 -0.100000 -1.600000
v -0.075000 -0.050000 -1.600000
v -0.075000 -0.100000 -1.400000
v -0.075000 -0.050000 -1.400000
v 0.075000 -0.100000 -1.200000
v 0.075000 -0.050000 -1.200000
v -0.300000 0.187500 0.450000
v -0.300000 0.187500 -0.450000
v -0.300000 -0.187500 -0.450000
v -0.300000 -0.187500 0.450000
v 0.300000 0.187500 -0.450000
v 0.300000 0.187500 0.450000
v 0.300000 -0.187500 0.450000
v 0.300000 -0.187500 -0.450000
v -0.375000 -0.250000 3.183013
v 0.375000 -0.250000 3.183013
v -0.375000 -0.129410 3.232963
v 0.375000 -0.129410 3.232963
v -0.375000 -0.000000 3.250000
v 0.375000 -0.000000 3.250000
v -0.375000 0.129409 3.232963
v 0.375000 0.129409 3.232963
v -0.375000 0.250000 3.183013
v 0.375000 0.250000 3.183013
v 0.072467 -0.072941 3.240397
v -0.000855 -0.102059 3.236564
v -0.072664 -0.069579 3.240839
v -0.073672 0.070604 3.240705
v -0.001470 0.101724 3.236608
v 0.067748 0.072911 3.240401
v -0.102959 -0.000000 3.250000
v 0.103956 -0.000000 3.250000
v 0.100000 -0.337500 0.600000
v 0.144194 -0.355806 0.600000
v 0.100000 -0.275000 -0.500000
v 0.100000 -0.275000 0.500000
v 0.188388 -0.311612 -0.500000
v 0.188388 -0.311612 0.500000
v 0.225000 -0.400000 -0.500000
v 0.225000 -0.400000 0.500000
v 0.188388 -0.488388 -0.500000
v 0.188388 -0.488388 0.500000
v 0.100000 -0.525000 -0.500000
v 0.100000 -0.525000 0.500000
v 0.011612 -0.488388 -0.500000
v 0.011612 -0.488388 0.500000
v -0.025000 -0.400000 -0.500000
v -0.025000 -0.400000 0.500000
v 0.011612 -0.311612 -0.500000
v 0.011612 -0.311612 0.500000
v 0.055806 -0.355806 0.600000
v 0.037500 -0.400000 0.600000
v 0.055806 -0.444194 0.600000
v 0.100000 -0.462500 0.600000
v 0.144194 -0.444194 0.600000
v 0.162500 -0.400000 0.600000
v 0.100000 -0.337500 -0.600000
v 0.144194 -0.355806 -0.600000
v 0.162500 -0.400000 -0.600000
v 0.144194 -0.444194 -0.600000
v 0.100000 -0.462500 -0.600000
v 0.055806 -0.444194 -0.600000
v 0.037500 -0.400000 -0.600000
v 0.055806 -0.355806 -0.600000
v 0.066291 0.566291 1.000000
v -0.000000 0.593750 1.000000
v 0.000000 0.625000 -0.500000
v 0.000000 0.625000 1.000000
v 0.088388 0.588388 -0.500000
v 0.088388 0.588388 1.000000
v 0.125000 0.500000 -0.500000
v 0.125000 0.500000 1.000000
v 0.088388 0.411612 -0.500000
v 0.088388 0.411612 1.000000
v -0.000000 0.375000 -0.500000
v -0.000000 0.375000 1.000000
v -0.088388 0.411612 -0.500000
v -0.088388 0.411612 1.000000
v -0.125000 0.500000 -0.500000
v -0.125000 0.500000 1.000000
v -0.088388 0.588388 -0.500000
v -0.088388 0.588388 1.000000
v 0.093750 0.500000 1.000000
v 0.066291 0.433709 1.000000
v -0.000000 0.406250 1.000000
v -0.066291 0.433709 1.000000
v -0.093750 0.500000 1.000000
v -0.066291 0.566291 1.000000
v -0.000000 0.593750 0.750000
v -0.066291 0.566291 0.750000
v -0.093750 0.500000 0.750000
v -0.066291 0.433709 0.750000
v -0.000000 0.406250 0.750000
v 0.066291 0.433709 0.750000
v 0.093750 0.500000 0.750000
v 0.066291 0.566291 0.750000
v -0.175000 0.250000 -0.125000
v -0.125000 0.500000 -0.125000
v -0.175000 0.250000 -0.375000
v -0.125000 0.500000 -0.375000
v -0.075000 0.250000 -0.125000
v -0.025000 0.500000 -0.125000
v -0.075000 0.250000 -0.375000
v -0.025000 0.500000 -0.375000
v -0.175000 0.250000 0.375000
v -0.125000 0.500000 0.375000
v -0.175000 0.250000 0.125000
v -0.125000 0.500000 0.125000
v -0.075000 0.250000 0.375000
v -0.025000 0.500000 0.375000
v -0.075000 0.250000 0.125000
v -0.025000 0.500000 0.125000
vn 0.848000 0.000000 -0.530000
vn 0.000000 0.000000 1.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 -0.258800 -0.965900
vn 0.000000 -0.707100 -0.707100
vn 0.000000 -0.965900 -0.258800
vn 0.000000 -0.965900 0.258800
vn 1.000000 0.000000 0.000000
vn 0.000000 -0.707100 0.707100
vn 0.000000 -0.258800 0.965900
vn -1.000000 0.000000 0.000000
vn -0.000000 0.258800 0.965900
vn 0.000000 0.707100 0.707100
vn -0.000000 0.965900 0.258800
vn -0.000000 0.965900 -0.258800
vn 0.000000 0.000000 -1.000000
vn -0.000000 0.258800 -0.965900
vn -0.000000 0.707100 -0.707100
vn 0.382700 0.923900 -0.000000
vn 0.923900 0.382700 -0.000000
vn 0.923900 -0.382700 0.000000
vn 0.382700 -0.923900 0.000000
vn -0.382700 -0.923900 0.000000
vn -0.923900 -0.382700 0.000000
vn 0.361600 -0.873000 0.327400
vn -0.382700 0.923900 -0.000000
vn -0.923900 0.382700 -0.000000
vn -0.873000 0.361600 0.327400
vn 0.873000 0.361600 0.327400
vn -0.361600 -0.873000 0.327400
vn -0.361600 0.873000 0.327400
vn 0.361600 0.873000 0.327400
vn 0.873000 -0.361600 0.327400
vn -0.873000 -0.361600 0.327400
vn 0.000000 -0.848000 -0.530000
vn 0.000000 0.848000 -0.530000
vn -0.848000 0.000000 -0.530000
vn 0.483500 0.875400 -0.000000
vn 0.955000 0.296700 -0.000000
vn -0.483500 0.875400 -0.000000
vn -0.955000 0.296700 -0.000000
vn 0.800000 0.000000 -0.600000
vn -0.780900 0.624700 0.000000
vn -0.707100 0.000000 -0.707100
vn -0.780900 -0.624700 0.000000
vn -0.707100 0.000000 0.707100
vn 0.780900 0.624700 0.000000
vn 0.707100 0.000000 0.707100
vn 0.780900 -0.624700 0.000000
vn 0.707100 0.000000 -0.707100
vn 0.000000 -0.382700 0.923900
vn 0.000000 -0.130500 0.991400
vn -0.000000 0.130500 0.991400
vn 0.000000 0.382700 0.923900
vn 0.800100 -0.331400 -0.500000
vn -0.331400 -0.800100 0.500000
vn 0.331400 -0.800100 -0.500000
vn -0.800100 -0.331400 0.500000
vn 0.331400 0.800100 -0.500000
vn -0.800100 0.331400 0.500000
vn -0.331400 0.800100 0.500000
vn 0.800100 0.331400 0.500000
vn 0.331400 0.800100 0.500000
vn 0.800100 -0.331400 0.500000
vn 0.800100 0.331400 -0.500000
vn 0.331400 -0.800100 0.500000
vn -0.331400 -0.800100 -0.500000
vn -0.800100 -0.331400 -0.500000
vn -0.800100 0.331400 -0.500000
vn -0.331400 0.800100 -0.500000
vn -0.980600 0.196100 0.000000
vn 0.980600 -0.196100 0.000000
s off
f 7//1 92//1 91//1
f 2//2 1//2 5//2
f 5//3 36//3 35//3
f 8//4 4//4 2//4
f 12//5 14//5 13//5
f 14//6 16//6 15//6
f 16//7 18//7 17//7
f 18//8 20//8 19//8
f 36//9 38//9 39//9
f 20//10 22//10 21//10
f 9//2 37//2 38//2
f 22//11 24//11 23//11
f 10//12 40//12 37//12
f 24//13 26//13 25//13
f 40//3 39//3 38//3
f 26//14 28//14 27//14
f 1//3 9//3 36//3
f 28//15 30//15 29//15
f 7//3 35//3 10//3
f 30//16 32//16 31//16
f 35//17 39//17 40//17
f 34//18 12//18 11//18
f 32//19 34//19 33//19
f 3//3 10//3 9//3
f 42//20 44//20 43//20
f 44//21 46//21 45//21
f 46//22 48//22 47//22
f 48//23 50//23 49//23
f 49//24 50//24 52//24
f 51//25 52//25 54//25
f 50//26 48//26 60//26
f 56//27 42//27 41//27
f 53//28 54//28 56//28
f 58//20 66//20 65//20
f 54//29 63//29 64//29
f 46//30 44//30 57//30
f 50//31 61//31 62//31
f 56//32 64//32 58//32
f 42//33 58//33 57//33
f 48//34 46//34 59//34
f 52//35 62//35 63//35
f 71//2 79//2 80//2
f 64//27 72//27 66//27
f 62//25 70//25 71//25
f 60//23 68//23 69//23
f 57//21 65//21 67//21
f 63//28 71//28 72//28
f 61//24 69//24 70//24
f 59//22 67//22 68//22
f 86//21 87//21 79//21
f 69//2 77//2 78//2
f 67//2 75//2 76//2
f 66//2 74//2 73//2
f 72//2 80//2 74//2
f 70//2 78//2 79//2
f 69//2 68//2 76//2
f 67//2 65//2 73//2
f 86//2 85//2 83//2
f 87//22 88//22 80//22
f 85//20 86//20 78//20
f 84//27 85//27 77//27
f 83//28 84//28 76//28
f 82//24 81//24 73//24
f 88//23 82//23 74//23
f 81//25 83//25 75//25
f 92//17 96//17 95//17
f 3//36 90//36 92//36
f 8//37 91//37 89//37
f 4//38 89//38 90//38
f 94//3 108//3 110//3
f 90//17 89//17 93//17
f 90//17 94//17 96//17
f 91//17 95//17 93//17
f 98//39 100//39 99//39
f 99//40 100//40 102//40
f 106//41 98//41 97//41
f 104//42 106//42 105//42
f 109//17 110//17 108//17
f 95//4 109//4 107//4
f 96//9 110//9 109//9
f 93//12 107//12 108//12
f 101//17 103//17 105//17
f 114//12 113//12 111//12
f 118//17 117//17 113//17
f 120//43 122//43 121//43
f 112//2 111//2 115//2
f 118//9 120//9 119//9
f 121//2 122//2 116//2
f 121//3 115//3 119//3
f 119//3 115//3 111//3
f 122//4 120//4 116//4
f 120//4 118//4 114//4
f 124//12 125//12 126//12
f 124//44 123//44 2//44
f 125//45 124//45 4//45
f 126//46 125//46 3//46
f 123//47 126//47 1//47
f 128//9 129//9 130//9
f 128//48 127//48 8//48
f 129//49 128//49 6//49
f 130//50 129//50 5//50
f 127//51 130//51 7//51
f 132//52 134//52 133//52
f 133//53 134//53 142//53
f 145//54 138//54 137//54
f 138//55 140//55 139//55
f 176//56 175//56 155//56
f 170//57 169//57 162//57
f 152//20 154//20 153//20
f 159//58 177//58 176//58
f 169//59 168//59 164//59
f 154//21 156//21 155//21
f 153//60 174//60 173//60
f 164//61 168//61 167//61
f 156//22 158//22 157//22
f 176//17 178//17 174//17
f 167//62 149//62 152//62
f 158//23 160//23 159//23
f 150//63 172//63 156//63
f 152//64 149//64 150//64
f 160//24 162//24 161//24
f 172//65 171//65 158//65
f 168//2 170//2 149//2
f 162//25 164//25 163//25
f 201//20 209//20 208//20
f 166//27 152//27 151//27
f 164//28 166//28 165//28
f 175//66 174//66 153//66
f 171//67 170//67 160//67
f 192//2 201//2 202//2
f 178//68 177//68 159//68
f 179//69 178//69 161//69
f 180//70 179//70 163//70
f 173//71 180//71 165//71
f 184//20 186//20 185//20
f 188//2 186//2 181//2
f 181//25 212//25 211//25
f 186//21 188//21 187//21
f 190//2 200//2 201//2
f 202//21 208//21 207//21
f 187//22 188//22 190//22
f 196//2 203//2 204//2
f 204//22 203//22 207//22
f 190//23 192//23 191//23
f 188//2 199//2 200//2
f 207//2 209//2 211//2
f 192//24 194//24 193//24
f 199//28 211//28 210//28
f 194//2 202//2 203//2
f 194//25 196//25 195//25
f 198//27 184//27 183//27
f 189//17 195//17 197//17
f 196//28 198//28 197//28
f 198//2 204//2 182//2
f 182//24 205//24 212//24
f 186//2 184//2 182//2
f 204//23 206//23 205//23
f 200//27 210//27 209//27
f 216//72 215//72 213//72
f 216//17 220//17 219//17
f 218//73 217//73 219//73
f 214//2 213//2 217//2
f 224//72 223//72 221//72
f 220//4 216//4 214//4
f 224//17 228//17 227//17
f 226//73 225//73 227//73
f 222//2 221//2 225//2
f 228//4 224//4 222//4
f 8//1 7//1 91//1
f 6//2 2//2 5//2
f 7//3 5//3 35//3
f 6//4 8//4 2//4
f 11//5 12//5 13//5
f 13//6 14//6 15//6
f 15//7 16//7 17//7
f 17//8 18//8 19//8
f 35//9 36//9 39//9
f 19//10 20//10 21//10
f 36//2 9//2 38//2
f 21//11 22//11 23//11
f 9//12 10//12 37//12
f 23//13 24//13 25//13
f 37//3 40//3 38//3
f 25//14 26//14 27//14
f 5//3 1//3 36//3
f 27//15 28//15 29//15
f 3//3 7//3 10//3
f 29//16 30//16 31//16
f 10//17 35//17 40//17
f 33//18 34//18 11//18
f 31//19 32//19 33//19
f 1//3 3//3 9//3
f 41//20 42//20 43//20
f 43//21 44//21 45//21
f 45//22 46//22 47//22
f 47//23 48//23 49//23
f 51//24 49//24 52//24
f 53//25 51//25 54//25
f 61//26 50//26 60//26
f 55//27 56//27 41//27
f 55//28 53//28 56//28
f 57//20 58//20 65//20
f 56//29 54//29 64//29
f 59//30 46//30 57//30
f 52//31 50//31 62//31
f 42//32 56//32 58//32
f 44//33 42//33 57//33
f 60//34 48//34 59//34
f 54//35 52//35 63//35
f 72//2 71//2 80//2
f 58//27 64//27 66//27
f 63//25 62//25 71//25
f 61//23 60//23 69//23
f 59//21 57//21 67//21
f 64//28 63//28 72//28
f 62//24 61//24 70//24
f 60//22 59//22 68//22
f 78//21 86//21 79//21
f 70//2 69//2 78//2
f 68//2 67//2 76//2
f 65//2 66//2 73//2
f 66//2 72//2 74//2
f 71//2 70//2 79//2
f 77//2 69//2 76//2
f 75//2 67//2 73//2
f 83//2 81//2 82//2
f 82//2 88//2 83//2
f 87//2 86//2 83//2
f 85//2 84//2 83//2
f 83//2 88//2 87//2
f 79//22 87//22 80//22
f 77//20 85//20 78//20
f 76//27 84//27 77//27
f 75//28 83//28 76//28
f 74//24 82//24 73//24
f 80//23 88//23 74//23
f 73//25 81//25 75//25
f 91//17 92//17 95//17
f 7//36 3//36 92//36
f 4//37 8//37 89//37
f 3//38 4//38 90//38
f 96//3 94//3 110//3
f 94//17 90//17 93//17
f 92//17 90//17 96//17
f 89//17 91//17 93//17
f 97//39 98//39 99//39
f 101//40 99//40 102//40
f 105//41 106//41 97//41
f 103//42 104//42 105//42
f 107//17 109//17 108//17
f 93//4 95//4 107//4
f 95//9 96//9 109//9
f 94//12 93//12 108//12
f 105//17 97//17 99//17
f 99//17 101//17 105//17
f 112//12 114//12 111//12
f 114//17 118//17 113//17
f 119//43 120//43 121//43
f 116//2 112//2 115//2
f 117//9 118//9 119//9
f 115//2 121//2 116//2
f 111//3 113//3 119//3
f 117//3 119//3 113//3
f 114//4 112//4 120//4
f 116//4 120//4 112//4
f 123//12 124//12 126//12
f 4//44 124//44 2//44
f 3//45 125//45 4//45
f 1//46 126//46 3//46
f 2//47 123//47 1//47
f 127//9 128//9 130//9
f 6//48 128//48 8//48
f 5//49 129//49 6//49
f 7//50 130//50 5//50
f 8//51 127//51 7//51
f 131//52 132//52 133//52
f 134//53 136//53 148//53
f 147//53 135//53 133//53
f 134//53 148//53 141//53
f 143//53 147//53 133//53
f 134//53 141//53 142//53
f 142//53 143//53 133//53
f 137//54 135//54 147//54
f 146//54 148//54 138//54
f 137//54 147//54 144//54
f 145//54 146//54 138//54
f 137//54 144//54 145//54
f 148//54 136//54 138//54
f 137//55 138//55 139//55
f 157//56 176//56 155//56
f 160//57 170//57 162//57
f 151//20 152//20 153//20
f 157//58 159//58 176//58
f 162//59 169//59 164//59
f 153//21 154//21 155//21
f 151//60 153//60 173//60
f 166//61 164//61 167//61
f 155//22 156//22 157//22
f 180//17 173//17 174//17
f 174//17 175//17 176//17
f 176//17 177//17 178//17
f 178//17 179//17 180//17
f 180//17 174//17 178//17
f 166//62 167//62 152//62
f 157//23 158//23 159//23
f 154//63 150//63 156//63
f 154//64 152//64 150//64
f 159//24 160//24 161//24
f 156//65 172//65 158//65
f 172//2 150//2 149//2
f 149//2 167//2 168//2
f 168//2 169//2 170//2
f 170//2 171//2 172//2
f 172//2 149//2 170//2
f 161//25 162//25 163//25
f 202//20 201//20 208//20
f 165//27 166//27 151//27
f 163//28 164//28 165//28
f 155//66 175//66 153//66
f 158//67 171//67 160//67
f 194//2 192//2 202//2
f 161//68 178//68 159//68
f 163//69 179//69 161//69
f 165//70 180//70 163//70
f 151//71 173//71 165//71
f 183//20 184//20 185//20
f 199//2 188//2 181//2
f 199//25 181//25 211//25
f 185//21 186//21 187//21
f 192//2 190//2 201//2
f 203//21 202//21 207//21
f 189//22 187//22 190//22
f 198//2 196//2 204//2
f 206//22 204//22 207//22
f 189//23 190//23 191//23
f 190//2 188//2 200//2
f 211//2 212//2 207//2
f 205//2 206//2 207//2
f 207//2 208//2 209//2
f 209//2 210//2 211//2
f 212//2 205//2 207//2
f 191//24 192//24 193//24
f 200//28 199//28 210//28
f 196//2 194//2 203//2
f 193//25 194//25 195//25
f 197//27 198//27 183//27
f 197//17 183//17 185//17
f 185//17 187//17 197//17
f 189//17 191//17 193//17
f 193//17 195//17 189//17
f 197//17 187//17 189//17
f 195//28 196//28 197//28
f 184//2 198//2 182//2
f 181//24 182//24 212//24
f 181//2 186//2 182//2
f 182//23 204//23 205//23
f 201//27 200//27 209//27
f 214//72 216//72 213//72
f 215//17 216//17 219//17
f 220//73 218//73 219//73
f 218//2 214//2 217//2
f 222//72 224//72 221//72
f 218//4 220//4 214//4
f 223//17 224//17 227//17
f 228//73 226//73 227//73
f 226//2 222//2 225//2
f 226//4 228//4 222//4

View File

@ -0,0 +1,282 @@
# Blender v2.76 (sub 0) OBJ File: 'turret_spitfire_rotor.blend'
# www.blender.org
o Cube_Cube.001
v -0.750000 0.125000 1.000000
v -0.750000 0.250000 1.000000
v -0.750000 0.125000 0.000000
v -0.750000 0.250000 0.000000
v 0.750000 0.125000 1.000000
v 0.500000 0.250000 1.000000
v 0.750000 0.125000 0.000000
v 0.750000 0.250000 0.000000
v -0.500000 0.125000 0.000000
v -0.500000 0.250000 0.000000
v -0.500000 0.125000 -1.000000
v -0.500000 0.250000 -1.000000
v 0.500000 0.125000 0.000000
v 0.500000 0.250000 0.000000
v 0.500000 0.125000 -1.000000
v 0.500000 0.250000 -1.000000
v 0.500000 1.750000 0.250000
v 0.500000 1.250000 -0.250000
v 0.500000 1.750000 -0.250000
v 0.750000 1.750000 0.250000
v 0.750000 1.250000 -0.250000
v 0.750000 1.750000 -0.250000
v 0.500000 0.750000 0.750000
v 0.500000 1.250000 0.750000
v 0.500000 0.750000 0.250000
v 0.750000 0.750000 0.750000
v 0.750000 1.250000 0.750000
v 0.750000 0.750000 0.250000
v 0.500000 0.250000 0.250000
v 0.750000 0.250000 1.000000
v 0.750000 0.250000 0.250000
v -0.750000 0.250000 1.000000
v -0.750000 1.750000 0.250000
v -0.750000 1.250000 -0.250000
v -0.750000 1.750000 -0.250000
v -0.500000 1.750000 0.250000
v -0.500000 1.250000 -0.250000
v -0.500000 1.750000 -0.250000
v -0.750000 0.750000 0.750000
v -0.750000 1.250000 0.750000
v -0.750000 0.750000 0.250000
v -0.500000 0.750000 0.750000
v -0.500000 1.250000 0.750000
v -0.500000 0.750000 0.250000
v -0.750000 0.250000 0.250000
v -0.500000 0.250000 1.000000
v -0.500000 0.250000 0.250000
v -0.150000 1.500000 -1.500000
v -0.150000 1.888229 -1.448889
v -0.150000 2.250000 -1.299038
v -0.150000 2.560660 -1.060660
v -0.250000 1.111770 -1.448888
v -0.250000 0.749999 -1.299038
v -0.250000 0.439339 -1.060659
v -0.250000 0.200961 -0.749999
v -0.250000 2.560660 -1.060660
v -0.250000 2.250000 -1.299038
v -0.250000 1.888229 -1.448889
v -0.250000 1.500000 -1.500000
v -0.150000 0.200961 -0.749999
v -0.150000 0.439339 -1.060659
v -0.150000 0.749999 -1.299038
v -0.150000 1.111770 -1.448888
v -0.150000 1.500000 -1.300000
v -0.150000 1.836465 -1.255704
v -0.150000 2.150000 -1.125833
v -0.150000 2.419239 -0.919239
v -0.150000 0.244296 -0.336464
v -0.150000 0.374166 -0.649999
v -0.150000 0.580761 -0.919238
v -0.150000 0.849999 -1.125833
v -0.150000 1.163534 -1.255703
v -0.250000 1.500000 -1.300000
v -0.250000 1.836465 -1.255704
v -0.250000 2.150000 -1.125833
v -0.250000 2.419239 -0.919239
v -0.250000 0.244296 -0.336464
v -0.250000 0.374166 -0.649999
v -0.250000 0.580761 -0.919238
v -0.250000 0.849999 -1.125833
v -0.250000 1.163534 -1.255703
v 0.500000 0.250000 0.812500
v 0.500000 0.250000 0.437500
v -0.500000 0.250000 0.812500
v -0.500000 0.250000 0.437500
v 0.500000 0.650000 0.625000
v -0.750000 0.650000 0.625000
vn -1.000000 0.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 -1.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 0.000000 0.707100 0.707100
vn 0.000000 -0.707100 -0.707100
vn 0.000000 0.242500 0.970100
vn 0.000000 0.000000 1.000000
vn 0.000000 0.608800 -0.793400
vn 0.000000 0.382700 -0.923900
vn 0.000000 0.130500 -0.991400
vn 0.000000 -0.130500 -0.991400
vn 0.000000 -0.382700 -0.923900
vn 0.000000 -0.608800 -0.793400
vn 0.000000 -0.793400 -0.608800
vn 0.000000 0.923900 0.382700
vn 0.000000 0.793400 0.608800
vn 0.000000 0.608800 0.793400
vn 0.000000 0.382700 0.923900
vn 0.000000 0.130500 0.991400
vn 0.000000 -0.130500 0.991400
vn 0.000000 -0.382700 0.923900
vn 0.000000 -0.608800 0.793400
vn 0.000000 0.424400 -0.905500
vn 0.000000 0.424400 0.905500
vn -0.442300 0.884700 0.147400
s off
f 45//1 3//1 1//1
f 23//1 6//1 24//1
f 85//2 83//2 29//2
f 25//3 28//3 31//3
f 13//4 5//4 1//4
f 10//3 9//3 3//3
f 12//1 11//1 9//1
f 16//3 15//3 11//3
f 14//5 13//5 15//5
f 14//3 8//3 7//3
f 11//4 15//4 13//4
f 16//2 12//2 10//2
f 20//6 17//6 24//6
f 22//3 21//3 18//3
f 18//1 25//1 24//1
f 21//5 27//5 28//5
f 25//7 18//7 21//7
f 22//2 19//2 17//2
f 26//5 27//5 30//5
f 31//5 28//5 26//5
f 24//8 6//8 30//8
f 31//5 30//5 5//5
f 39//1 32//1 40//1
f 39//1 41//1 45//1
f 41//3 44//3 47//3
f 36//6 33//6 40//6
f 38//3 37//3 34//3
f 34//1 41//1 40//1
f 37//5 43//5 44//5
f 41//7 34//7 37//7
f 38//2 35//2 33//2
f 42//5 43//5 46//5
f 46//2 6//2 82//2
f 40//8 32//8 46//8
f 5//9 6//9 46//9
f 10//2 4//2 47//2
f 57//10 56//10 51//10
f 58//11 57//11 50//11
f 59//12 58//12 49//12
f 59//13 48//13 63//13
f 53//14 52//14 63//14
f 54//15 53//15 62//15
f 54//16 61//16 60//16
f 69//17 78//17 77//17
f 70//18 79//18 78//18
f 71//19 80//19 79//19
f 72//20 81//20 80//20
f 64//21 73//21 81//21
f 65//22 74//22 73//22
f 66//23 75//23 74//23
f 67//24 76//24 75//24
f 76//6 67//6 51//6
f 57//1 75//1 76//1
f 74//1 75//1 57//1
f 73//1 74//1 58//1
f 52//1 81//1 73//1
f 53//1 80//1 81//1
f 79//1 80//1 53//1
f 78//1 79//1 54//1
f 78//1 55//1 77//1
f 50//5 51//5 67//5
f 50//5 66//5 65//5
f 49//5 65//5 64//5
f 63//5 48//5 64//5
f 62//5 63//5 72//5
f 62//5 71//5 70//5
f 61//5 70//5 69//5
f 69//5 68//5 60//5
f 85//25 87//25 86//25
f 85//5 44//5 42//5
f 83//1 82//1 23//1
f 84//26 82//26 86//26
f 1//1 2//1 45//1
f 45//9 32//9 4//9
f 4//1 3//1 45//1
f 47//2 85//2 29//2
f 29//3 25//3 31//3
f 1//4 3//4 9//4
f 9//4 13//4 1//4
f 7//4 5//4 13//4
f 4//3 10//3 3//3
f 10//1 12//1 9//1
f 12//3 16//3 11//3
f 16//5 14//5 15//5
f 13//3 14//3 7//3
f 9//4 11//4 13//4
f 14//2 16//2 10//2
f 27//6 20//6 24//6
f 19//3 22//3 18//3
f 24//1 17//1 18//1
f 19//1 18//1 17//1
f 25//1 23//1 24//1
f 26//5 28//5 27//5
f 21//5 22//5 20//5
f 20//5 27//5 21//5
f 28//7 25//7 21//7
f 20//2 22//2 17//2
f 30//5 31//5 26//5
f 27//8 24//8 30//8
f 5//5 7//5 31//5
f 8//5 31//5 7//5
f 32//1 39//1 45//1
f 45//3 41//3 47//3
f 43//6 36//6 40//6
f 35//3 38//3 34//3
f 40//1 33//1 34//1
f 35//1 34//1 33//1
f 41//1 39//1 40//1
f 42//5 44//5 43//5
f 37//5 38//5 36//5
f 36//5 43//5 37//5
f 44//7 41//7 37//7
f 36//2 38//2 33//2
f 84//2 46//2 82//2
f 43//8 40//8 46//8
f 1//9 5//9 46//9
f 45//5 2//5 1//5
f 46//4 32//4 45//4
f 30//9 6//9 5//9
f 46//27 45//27 1//27
f 29//2 31//2 8//2
f 8//2 14//2 29//2
f 4//9 32//9 45//9
f 14//2 10//2 47//2
f 47//2 29//2 14//2
f 4//2 45//2 47//2
f 50//10 57//10 51//10
f 49//11 58//11 50//11
f 48//12 59//12 49//12
f 52//13 59//13 63//13
f 62//14 53//14 63//14
f 61//15 54//15 62//15
f 55//16 54//16 60//16
f 68//17 69//17 77//17
f 69//18 70//18 78//18
f 70//19 71//19 79//19
f 71//20 72//20 80//20
f 72//21 64//21 81//21
f 64//22 65//22 73//22
f 65//23 66//23 74//23
f 66//24 67//24 75//24
f 56//6 76//6 51//6
f 56//1 57//1 76//1
f 58//1 74//1 57//1
f 59//1 73//1 58//1
f 59//1 52//1 73//1
f 52//1 53//1 81//1
f 54//1 79//1 53//1
f 55//1 78//1 54//1
f 66//5 50//5 67//5
f 49//5 50//5 65//5
f 48//5 49//5 64//5
f 72//5 63//5 64//5
f 71//5 62//5 72//5
f 61//5 62//5 70//5
f 60//5 61//5 69//5
f 83//25 85//25 86//25
f 42//5 46//5 84//5
f 84//5 85//5 42//5
f 47//5 44//5 85//5
f 23//1 25//1 83//1
f 29//1 83//1 25//1
f 82//1 6//1 23//1
f 87//26 84//26 86//26

View File

@ -52,6 +52,7 @@
"weapon.defabShoot": {"category": "player", "sounds": [{"name": "weapon/defabShoot", "stream": false}]}, "weapon.defabShoot": {"category": "player", "sounds": [{"name": "weapon/defabShoot", "stream": false}]},
"weapon.sparkShoot": {"category": "player", "sounds": ["weapon/sparkShoot1", "weapon/sparkShoot2", "weapon/sparkShoot3"]}, "weapon.sparkShoot": {"category": "player", "sounds": ["weapon/sparkShoot1", "weapon/sparkShoot2", "weapon/sparkShoot3"]},
"weapon.bang": {"category": "player", "sounds": [{"name": "weapon/bang", "stream": false}]}, "weapon.bang": {"category": "player", "sounds": [{"name": "weapon/bang", "stream": false}]},
"weapon.leverActionReload": {"category": "player", "sounds": [{"name": "weapon/leverActionReload", "stream": false}]},
"weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]}, "weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]},
"weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]},

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 808 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 362 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 B

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

After

Width:  |  Height:  |  Size: 367 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 B

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 B

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 326 B

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 331 B

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 325 B

After

Width:  |  Height:  |  Size: 359 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 297 B

After

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@ -393,6 +393,9 @@ public class ModBlocks {
public static Block machine_siren; public static Block machine_siren;
public static final int guiID_siren = 57; public static final int guiID_siren = 57;
public static Block machine_radgen;
public static final int guiID_radgen = 58;
public static Block machine_spp_bottom; public static Block machine_spp_bottom;
public static Block machine_spp_top; public static Block machine_spp_top;
@ -401,6 +404,7 @@ public class ModBlocks {
public static Block turret_rocket; public static Block turret_rocket;
public static Block turret_flamer; public static Block turret_flamer;
public static Block turret_tau; public static Block turret_tau;
public static Block turret_spitfire;
public static Block book_guide; public static Block book_guide;
@ -460,6 +464,8 @@ public class ModBlocks {
public static Block dummy_port_ams_emitter; public static Block dummy_port_ams_emitter;
public static Block dummy_block_ams_base; public static Block dummy_block_ams_base;
public static Block dummy_port_ams_base; public static Block dummy_port_ams_base;
public static Block dummy_block_radgen;
public static Block dummy_port_radgen;
private static void initializeBlock() { private static void initializeBlock() {
@ -509,7 +515,7 @@ public class ModBlocks {
ore_oil = new BlockOre(Material.rock).setBlockName("ore_oil").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil"); ore_oil = new BlockOre(Material.rock).setBlockName("ore_oil").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil");
ore_oil_empty = new BlockGeneric(Material.rock).setBlockName("ore_oil_empty").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_empty"); ore_oil_empty = new BlockGeneric(Material.rock).setBlockName("ore_oil_empty").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_empty");
ore_tikite = new BlockGeneric(Material.rock).setBlockName("ore_tikite").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tikite"); ore_tikite = new BlockGeneric(Material.rock).setBlockName("ore_tikite").setCreativeTab(MainRegistry.tabBlock).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tikite_alt");
block_uranium = new BlockGeneric(Material.iron).setBlockName("block_uranium").setCreativeTab(MainRegistry.tabBlock).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium"); block_uranium = new BlockGeneric(Material.iron).setBlockName("block_uranium").setCreativeTab(MainRegistry.tabBlock).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium");
block_titanium = new BlockGeneric(Material.iron).setBlockName("block_titanium").setCreativeTab(MainRegistry.tabBlock).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_titanium"); block_titanium = new BlockGeneric(Material.iron).setBlockName("block_titanium").setCreativeTab(MainRegistry.tabBlock).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_titanium");
@ -631,6 +637,7 @@ public class ModBlocks {
machine_generator = new MachineGenerator(Material.iron).setBlockName("machine_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock); machine_generator = new MachineGenerator(Material.iron).setBlockName("machine_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
machine_industrial_generator = new MachineIGenerator(Material.iron).setBlockName("machine_industrial_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":industrial_generator"); machine_industrial_generator = new MachineIGenerator(Material.iron).setBlockName("machine_industrial_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":industrial_generator");
machine_cyclotron = new MachineCyclotron(Material.iron).setBlockName("machine_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":cyclotron"); machine_cyclotron = new MachineCyclotron(Material.iron).setBlockName("machine_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":cyclotron");
machine_radgen = new MachineRadGen(Material.iron).setBlockName("machine_radgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":radgen");
machine_electric_furnace_off = new MachineElectricFurnace(false).setBlockName("machine_electric_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock); machine_electric_furnace_off = new MachineElectricFurnace(false).setBlockName("machine_electric_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
machine_electric_furnace_on = new MachineElectricFurnace(true).setBlockName("machine_electric_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); machine_electric_furnace_on = new MachineElectricFurnace(true).setBlockName("machine_electric_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F);
@ -728,6 +735,7 @@ public class ModBlocks {
turret_rocket = new TurretRocket(Material.iron).setBlockName("turret_rocket").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_rocket"); turret_rocket = new TurretRocket(Material.iron).setBlockName("turret_rocket").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_rocket");
turret_flamer = new TurretFlamer(Material.iron).setBlockName("turret_flamer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_flamer"); turret_flamer = new TurretFlamer(Material.iron).setBlockName("turret_flamer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_flamer");
turret_tau = new TurretTau(Material.iron).setBlockName("turret_tau").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_tau"); turret_tau = new TurretTau(Material.iron).setBlockName("turret_tau").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_tau");
turret_spitfire = new TurretSpitfire(Material.iron).setBlockName("turret_spitfire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_spitfire");
book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke); book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke);
@ -759,8 +767,8 @@ public class ModBlocks {
machine_siren = new MachineSiren(Material.iron).setBlockName("machine_siren").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":machine_siren"); machine_siren = new MachineSiren(Material.iron).setBlockName("machine_siren").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":machine_siren");
machine_spp_bottom = new SPPBottom(Material.iron).setBlockName("machine_spp_bottom").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke); machine_spp_bottom = new SPPBottom(Material.iron).setBlockName("machine_spp_bottom").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
machine_spp_top = new SPPTop(Material.iron).setBlockName("machine_spp_top").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke); machine_spp_top = new SPPTop(Material.iron).setBlockName("machine_spp_top").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
cheater_virus = new CheaterVirus(Material.iron).setBlockName("cheater_virus").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus"); cheater_virus = new CheaterVirus(Material.iron).setBlockName("cheater_virus").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus");
cheater_virus_seed = new CheaterVirusSeed(Material.iron).setBlockName("cheater_virus_seed").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus_seed"); cheater_virus_seed = new CheaterVirusSeed(Material.iron).setBlockName("cheater_virus_seed").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus_seed");
@ -815,6 +823,8 @@ public class ModBlocks {
dummy_port_ams_emitter = new DummyBlockAMSEmitter(Material.iron).setBlockName("dummy_port_ams_emitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); dummy_port_ams_emitter = new DummyBlockAMSEmitter(Material.iron).setBlockName("dummy_port_ams_emitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_block_ams_base = new DummyBlockAMSBase(Material.iron).setBlockName("dummy_block_ams_base").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); dummy_block_ams_base = new DummyBlockAMSBase(Material.iron).setBlockName("dummy_block_ams_base").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_port_ams_base = new DummyBlockAMSBase(Material.iron).setBlockName("dummy_port_ams_base").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); dummy_port_ams_base = new DummyBlockAMSBase(Material.iron).setBlockName("dummy_port_ams_base").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_block_radgen = new DummyBlockRadGen(Material.iron).setBlockName("dummy_block_radgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_port_radgen = new DummyBlockRadGen(Material.iron).setBlockName("dummy_port_radgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
} }
private static void registerBlock() { private static void registerBlock() {
@ -969,6 +979,7 @@ public class ModBlocks {
GameRegistry.registerBlock(turret_rocket, turret_rocket.getUnlocalizedName()); GameRegistry.registerBlock(turret_rocket, turret_rocket.getUnlocalizedName());
GameRegistry.registerBlock(turret_flamer, turret_flamer.getUnlocalizedName()); GameRegistry.registerBlock(turret_flamer, turret_flamer.getUnlocalizedName());
GameRegistry.registerBlock(turret_tau, turret_tau.getUnlocalizedName()); GameRegistry.registerBlock(turret_tau, turret_tau.getUnlocalizedName());
GameRegistry.registerBlock(turret_spitfire, turret_spitfire.getUnlocalizedName());
//Block Bombs //Block Bombs
GameRegistry.registerBlock(flame_war, flame_war.getUnlocalizedName()); GameRegistry.registerBlock(flame_war, flame_war.getUnlocalizedName());
@ -1013,6 +1024,7 @@ public class ModBlocks {
GameRegistry.registerBlock(machine_diesel, machine_diesel.getUnlocalizedName()); GameRegistry.registerBlock(machine_diesel, machine_diesel.getUnlocalizedName());
GameRegistry.registerBlock(machine_generator, machine_generator.getUnlocalizedName()); GameRegistry.registerBlock(machine_generator, machine_generator.getUnlocalizedName());
GameRegistry.registerBlock(machine_industrial_generator, machine_industrial_generator.getUnlocalizedName()); GameRegistry.registerBlock(machine_industrial_generator, machine_industrial_generator.getUnlocalizedName());
GameRegistry.registerBlock(machine_radgen, machine_radgen.getUnlocalizedName());
GameRegistry.registerBlock(machine_cyclotron, machine_cyclotron.getUnlocalizedName()); GameRegistry.registerBlock(machine_cyclotron, machine_cyclotron.getUnlocalizedName());
GameRegistry.registerBlock(machine_rtg_grey, machine_rtg_grey.getUnlocalizedName()); GameRegistry.registerBlock(machine_rtg_grey, machine_rtg_grey.getUnlocalizedName());
GameRegistry.registerBlock(machine_spp_bottom, machine_spp_bottom.getUnlocalizedName()); GameRegistry.registerBlock(machine_spp_bottom, machine_spp_bottom.getUnlocalizedName());
@ -1162,6 +1174,8 @@ public class ModBlocks {
GameRegistry.registerBlock(dummy_port_ams_emitter, dummy_port_ams_emitter.getUnlocalizedName()); GameRegistry.registerBlock(dummy_port_ams_emitter, dummy_port_ams_emitter.getUnlocalizedName());
GameRegistry.registerBlock(dummy_block_ams_base, dummy_block_ams_base.getUnlocalizedName()); GameRegistry.registerBlock(dummy_block_ams_base, dummy_block_ams_base.getUnlocalizedName());
GameRegistry.registerBlock(dummy_port_ams_base, dummy_port_ams_base.getUnlocalizedName()); GameRegistry.registerBlock(dummy_port_ams_base, dummy_port_ams_base.getUnlocalizedName());
GameRegistry.registerBlock(dummy_block_radgen, dummy_block_radgen.getUnlocalizedName());
GameRegistry.registerBlock(dummy_port_radgen, dummy_port_radgen.getUnlocalizedName());
//Other Technical Blocks //Other Technical Blocks
GameRegistry.registerBlock(oil_pipe, oil_pipe.getUnlocalizedName()); GameRegistry.registerBlock(oil_pipe, oil_pipe.getUnlocalizedName());

View File

@ -81,10 +81,11 @@ public class BlockCrashedBomb extends BlockContainer implements IBomb {
entity0.posX = x; entity0.posX = x;
entity0.posY = y; entity0.posY = y;
entity0.posZ = z; entity0.posZ = z;
entity0.destructionRange = MainRegistry.fatmanRadius; entity0.destructionRange = (int)(MainRegistry.fatmanRadius * 1.25);
entity0.speed = 25; entity0.speed = 25;
entity0.coefficient = 10.0F; entity0.coefficient = 10.0F;
world.setBlockToAir(x, y, z);
world.spawnEntityInWorld(entity0); world.spawnEntityInWorld(entity0);
ExplosionParticleB.spawnMush(world, x, y - 3, z); ExplosionParticleB.spawnMush(world, x, y - 3, z);
} }

View File

@ -3,6 +3,7 @@ package com.hbm.blocks.bomb;
import java.util.Random; import java.util.Random;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.entity.logic.EntityMissileTest;
import com.hbm.entity.missile.EntityMissileAntiBallistic; import com.hbm.entity.missile.EntityMissileAntiBallistic;
import com.hbm.entity.missile.EntityMissileBunkerBuster; import com.hbm.entity.missile.EntityMissileBunkerBuster;
import com.hbm.entity.missile.EntityMissileBurst; import com.hbm.entity.missile.EntityMissileBurst;
@ -34,6 +35,7 @@ import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer; import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityEnderCrystal;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item; import net.minecraft.item.Item;
@ -139,7 +141,7 @@ public class LaunchPad extends BlockContainer implements IBomb {
@Override @Override
public void onNeighborBlockChange(World p_149695_1_, int x, int y, int z, Block p_149695_5_) public void onNeighborBlockChange(World p_149695_1_, int x, int y, int z, Block p_149695_5_)
{ {
if (p_149695_1_.isBlockIndirectlyGettingPowered(x, y, z)) if (p_149695_1_.isBlockIndirectlyGettingPowered(x, y, z) && !p_149695_1_.isRemote)
{ {
this.explode(p_149695_1_, x, y, z); this.explode(p_149695_1_, x, y, z);
} }
@ -207,7 +209,7 @@ public class LaunchPad extends BlockContainer implements IBomb {
public void explode(World p_149695_1_, int x, int y, int z) public void explode(World p_149695_1_, int x, int y, int z)
{ {
TileEntityLaunchPad entity = (TileEntityLaunchPad) p_149695_1_.getTileEntity(x, y, z); TileEntityLaunchPad entity = (TileEntityLaunchPad) p_149695_1_.getTileEntity(x, y, z);
//if (p_149695_1_.isBlockIndirectlyGettingPowered(x, y, z)) //
{ {
if(entity.slots[1] != null && (entity.slots[1].getItem() == ModItems.designator || entity.slots[1].getItem() == ModItems.designator_range) && entity.slots[1].stackTagCompound != null) if(entity.slots[1] != null && (entity.slots[1].getItem() == ModItems.designator || entity.slots[1].getItem() == ModItems.designator_range) && entity.slots[1].stackTagCompound != null)
{ {
@ -223,7 +225,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
{ {
//EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); //EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F);
EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -232,7 +235,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_anti_ballistic && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_anti_ballistic && entity.power >= 75000)
{ {
EntityMissileAntiBallistic missile = new EntityMissileAntiBallistic(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); EntityMissileAntiBallistic missile = new EntityMissileAntiBallistic(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -241,7 +245,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_incendiary && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_incendiary && entity.power >= 75000)
{ {
EntityMissileIncendiary missile = new EntityMissileIncendiary(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileIncendiary missile = new EntityMissileIncendiary(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -250,7 +255,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_cluster && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_cluster && entity.power >= 75000)
{ {
EntityMissileCluster missile = new EntityMissileCluster(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileCluster missile = new EntityMissileCluster(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -259,7 +265,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_buster && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_buster && entity.power >= 75000)
{ {
EntityMissileBunkerBuster missile = new EntityMissileBunkerBuster(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileBunkerBuster missile = new EntityMissileBunkerBuster(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -268,7 +275,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_strong && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_strong && entity.power >= 75000)
{ {
EntityMissileStrong missile = new EntityMissileStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileStrong missile = new EntityMissileStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -277,7 +285,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_incendiary_strong && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_incendiary_strong && entity.power >= 75000)
{ {
EntityMissileIncendiaryStrong missile = new EntityMissileIncendiaryStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileIncendiaryStrong missile = new EntityMissileIncendiaryStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -286,7 +295,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_cluster_strong && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_cluster_strong && entity.power >= 75000)
{ {
EntityMissileClusterStrong missile = new EntityMissileClusterStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileClusterStrong missile = new EntityMissileClusterStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -295,7 +305,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_buster_strong && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_buster_strong && entity.power >= 75000)
{ {
EntityMissileBusterStrong missile = new EntityMissileBusterStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileBusterStrong missile = new EntityMissileBusterStrong(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -304,7 +315,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_burst && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_burst && entity.power >= 75000)
{ {
EntityMissileBurst missile = new EntityMissileBurst(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileBurst missile = new EntityMissileBurst(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -313,7 +325,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_inferno && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_inferno && entity.power >= 75000)
{ {
EntityMissileInferno missile = new EntityMissileInferno(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileInferno missile = new EntityMissileInferno(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -322,7 +335,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_rain && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_rain && entity.power >= 75000)
{ {
EntityMissileRain missile = new EntityMissileRain(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileRain missile = new EntityMissileRain(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -331,7 +345,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_drill && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_drill && entity.power >= 75000)
{ {
EntityMissileDrill missile = new EntityMissileDrill(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileDrill missile = new EntityMissileDrill(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -340,7 +355,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_nuclear && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_nuclear && entity.power >= 75000)
{ {
EntityMissileNuclear missile = new EntityMissileNuclear(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileNuclear missile = new EntityMissileNuclear(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -349,7 +365,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_endo && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_endo && entity.power >= 75000)
{ {
EntityMissileEndo missile = new EntityMissileEndo(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileEndo missile = new EntityMissileEndo(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -358,7 +375,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_exo && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_exo && entity.power >= 75000)
{ {
EntityMissileExo missile = new EntityMissileExo(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileExo missile = new EntityMissileExo(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -367,7 +385,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_nuclear_cluster && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_nuclear_cluster && entity.power >= 75000)
{ {
EntityMissileMirv missile = new EntityMissileMirv(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileMirv missile = new EntityMissileMirv(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -376,7 +395,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_anti_ballistic && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_anti_ballistic && entity.power >= 75000)
{ {
EntityMissileAntiBallistic missile = new EntityMissileAntiBallistic(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); EntityMissileAntiBallistic missile = new EntityMissileAntiBallistic(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -385,7 +405,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_doomsday && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_doomsday && entity.power >= 75000)
{ {
EntityMissileDoomsday missile = new EntityMissileDoomsday(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileDoomsday missile = new EntityMissileDoomsday(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
@ -394,7 +415,8 @@ public class LaunchPad extends BlockContainer implements IBomb {
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_taint && entity.power >= 75000) if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_taint && entity.power >= 75000)
{ {
EntityMissileTaint missile = new EntityMissileTaint(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); EntityMissileTaint missile = new EntityMissileTaint(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
p_149695_1_.spawnEntityInWorld(missile); if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;

View File

@ -0,0 +1,79 @@
package com.hbm.blocks.bomb;
import com.hbm.entity.particle.EntityDSmokeFX;
import com.hbm.entity.particle.EntityGasFlameFX;
import com.hbm.entity.projectile.EntityBullet;
import com.hbm.tileentity.bomb.TileEntityTurretSpitfire;
import com.hbm.tileentity.bomb.TileEntityTurretTau;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
public class TurretSpitfire extends TurretBase {
public TurretSpitfire(Material mat) {
super(mat);
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityTurretSpitfire();
}
@Override
public boolean executeHoldAction(World world, int i, double yaw, double pitch, int x, int y, int z) {
boolean flag = false;
if(pitch < -60)
pitch = -60;
if(pitch > 30)
pitch = 30;
if(i != 0 && i % 10 == 0) {
Vec3 vector = Vec3.createVectorHelper(
-Math.sin(yaw / 180.0F * (float) Math.PI) * Math.cos(pitch / 180.0F * (float) Math.PI),
-Math.sin(pitch / 180.0F * (float) Math.PI),
Math.cos(yaw / 180.0F * (float) Math.PI) * Math.cos(pitch / 180.0F * (float) Math.PI));
vector.normalize();
if(!world.isRemote) {
EntityBullet bullet = new EntityBullet(world);
bullet.posX = x + vector.xCoord * 2.75 + 0.5;
bullet.posY = y + vector.yCoord * 2.75 + 1.5;
bullet.posZ = z + vector.zCoord * 2.75 + 0.5;
bullet.motionX = vector.xCoord * 3;
bullet.motionY = vector.yCoord * 3;
bullet.motionZ = vector.zCoord * 3;
bullet.setDamage(65 + rand.nextInt(55));
world.spawnEntityInWorld(bullet);
EntityGasFlameFX smoke = new EntityGasFlameFX(world);
smoke.posX = x + vector.xCoord * 4 + 0.5;
smoke.posY = y + vector.yCoord * 4 + 1;
smoke.posZ = z + vector.zCoord * 4 + 0.5;
smoke.motionX = vector.xCoord * 0.25;
smoke.motionY = vector.yCoord * 0.25;
smoke.motionZ = vector.zCoord * 0.25;
world.spawnEntityInWorld(smoke);
}
world.playSoundEffect(x, y, z, "hbm:entity.oldExplosion", 1.0F, 0.5F);
flag = true;
}
return flag;
}
@Override
public void executeReleaseAction(World world, int i, double yaw, double pitch, int x, int y, int z) { }
}

View File

@ -66,6 +66,8 @@ public class BlockCrate extends BlockFalling {
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_bf, 0); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_bf, 0);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_mp40, 7); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_mp40, 7);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_uboinik, 7); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_uboinik, 7);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_lever_action, 5);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_bolt_action, 5);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_osipr, 7); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_osipr, 7);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_immolator, 4); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_immolator, 4);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_cryolator, 4); list1 = BlockCrate.addToListWithWeight(list1, ModItems.clip_cryolator, 4);
@ -76,6 +78,7 @@ public class BlockCrate extends BlockFalling {
list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_strong, 6); list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_strong, 6);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_mk2, 4); list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_mk2, 4);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_flare, 4); list1 = BlockCrate.addToListWithWeight(list1, ModItems.grenade_flare, 4);
list1 = BlockCrate.addToListWithWeight(list1, ModItems.ammo_container, 2);
List<Item> list = new ArrayList<Item>(); List<Item> list = new ArrayList<Item>();

View File

@ -0,0 +1,106 @@
package com.hbm.blocks.machine;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IDummy;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityAMSBase;
import com.hbm.tileentity.machine.TileEntityDummy;
import com.hbm.tileentity.machine.TileEntityMachineRadGen;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class DummyBlockRadGen extends BlockContainer implements IDummy {
public static boolean safeBreak = false;
public DummyBlockRadGen(Material p_i45386_1_) {
super(p_i45386_1_);
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityDummy();
}
@Override
public void breakBlock(World world, int x, int y, int z, Block block, int i)
{
if(!safeBreak) {
TileEntity te = world.getTileEntity(x, y, z);
if(te != null && te instanceof TileEntityDummy) {
int a = ((TileEntityDummy)te).targetX;
int b = ((TileEntityDummy)te).targetY;
int c = ((TileEntityDummy)te).targetZ;
//world.getBlock(a, b, c).breakBlock(world, a, b, c, block, i);
if(!world.isRemote)
world.func_147480_a(a, b, c, true);
}
}
world.removeTileEntity(x, y, z);
}
@Override
public int getRenderType() {
return -1;
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public boolean renderAsNormalBlock() {
return false;
}
@Override
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return null;
}
@Override
@SideOnly(Side.CLIENT)
public Item getItem(World world, int x, int y, int z)
{
return Item.getItemFromBlock(ModBlocks.machine_radgen);
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote)
{
return true;
} else if(!player.isSneaking())
{
TileEntity te = world.getTileEntity(x, y, z);
if(te != null && te instanceof TileEntityDummy) {
int a = ((TileEntityDummy)te).targetX;
int b = ((TileEntityDummy)te).targetY;
int c = ((TileEntityDummy)te).targetZ;
TileEntityMachineRadGen entity = (TileEntityMachineRadGen) world.getTileEntity(a, b, c);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_radgen, world, a, b, c);
}
}
return true;
} else {
return false;
}
}
}

View File

@ -5,13 +5,16 @@ import java.util.Random;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.handler.MultiblockHandler; import com.hbm.handler.MultiblockHandler;
import com.hbm.interfaces.IMultiblock; import com.hbm.interfaces.IMultiblock;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityDummy; import com.hbm.tileentity.machine.TileEntityDummy;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator; import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer; import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
@ -171,4 +174,22 @@ public class MachineIGenerator extends BlockContainer implements IMultiblock {
world.func_147480_a(x, y, z, true); world.func_147480_a(x, y, z, true);
} }
} }
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote)
{
return true;
} else if(!player.isSneaking())
{
TileEntityMachineIGenerator entity = (TileEntityMachineIGenerator) world.getTileEntity(x, y, z);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_machine_industrial_generator, world, x, y, z);
}
return true;
} else {
return false;
}
}
} }

View File

@ -0,0 +1,163 @@
package com.hbm.blocks.machine;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.handler.MultiblockHandler;
import com.hbm.interfaces.IMultiblock;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityDummy;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import com.hbm.tileentity.machine.TileEntityMachineRadGen;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
public class MachineRadGen extends BlockContainer implements IMultiblock {
public MachineRadGen(Material p_i45386_1_) {
super(p_i45386_1_);
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityMachineRadGen();
}
@Override
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_) {
return Item.getItemFromBlock(ModBlocks.machine_radgen);
}
@Override
public int getRenderType() {
return -1;
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public boolean renderAsNormalBlock() {
return false;
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack) {
int i = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3;
if (i == 0) {
world.setBlockMetadataWithNotify(x, y, z, 5, 2);
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.radGenDimensionEast)) {
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.radGenDimensionEast, ModBlocks.dummy_block_radgen);
//
DummyBlockRadGen.safeBreak = true;
world.setBlock(x, y, z + 4, ModBlocks.dummy_port_radgen);
TileEntity te = world.getTileEntity(x, y, z + 4);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
DummyBlockRadGen.safeBreak = false;
//
} else
world.func_147480_a(x, y, z, true);
}
if (i == 1) {
world.setBlockMetadataWithNotify(x, y, z, 3, 2);
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.radGenDimensionSouth)) {
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.radGenDimensionSouth, ModBlocks.dummy_block_radgen);
//
DummyBlockRadGen.safeBreak = true;
world.setBlock(x - 4, y, z, ModBlocks.dummy_port_radgen);
TileEntity te = world.getTileEntity(x - 4, y, z);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
DummyBlockRadGen.safeBreak = false;
//
} else
world.func_147480_a(x, y, z, true);
}
if (i == 2) {
world.setBlockMetadataWithNotify(x, y, z, 4, 2);
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.radGenDimensionWest)) {
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.radGenDimensionWest, ModBlocks.dummy_block_radgen);
//
DummyBlockRadGen.safeBreak = true;
world.setBlock(x, y, z - 4, ModBlocks.dummy_port_radgen);
TileEntity te = world.getTileEntity(x, y, z - 4);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
DummyBlockRadGen.safeBreak = false;
//
} else
world.func_147480_a(x, y, z, true);
}
if (i == 3) {
world.setBlockMetadataWithNotify(x, y, z, 2, 2);
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.radGenDimensionNorth)) {
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.radGenDimensionNorth, ModBlocks.dummy_block_radgen);
//
DummyBlockRadGen.safeBreak = true;
world.setBlock(x + 4, y, z, ModBlocks.dummy_port_radgen);
TileEntity te = world.getTileEntity(x + 4, y, z);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
DummyBlockRadGen.safeBreak = false;
//
} else
world.func_147480_a(x, y, z, true);
}
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote)
{
return true;
} else if(!player.isSneaking())
{
TileEntityMachineRadGen entity = (TileEntityMachineRadGen) world.getTileEntity(x, y, z);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_radgen, world, x, y, z);
}
return true;
} else {
return false;
}
}
}

View File

@ -25,7 +25,7 @@ public class EntityGrenadeGascan extends EntityGrenadeBase
if (!this.worldObj.isRemote) if (!this.worldObj.isRemote)
{ {
this.setDead(); this.setDead();
this.worldObj.newExplosion((Entity)null, (float)this.posX, (float)this.posY, (float)this.posZ, 10.0F, true, false); this.worldObj.newExplosion((Entity)null, (float)this.posX, (float)this.posY, (float)this.posZ, 5.0F, true, false);
} }
} }
} }

View File

@ -0,0 +1,124 @@
package com.hbm.entity.logic;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.Entity;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraft.world.WorldProviderEnd;
public class EntityMissileTest extends Entity
{
/** Used to create the rotation animation when rendering the crystal. */
public int innerRotation;
public int health;
private static final String __OBFID = "CL_00001658";
public EntityMissileTest(World p_i1698_1_)
{
super(p_i1698_1_);
this.preventEntitySpawning = true;
this.setSize(2.0F, 2.0F);
this.yOffset = this.height / 2.0F;
this.health = 5;
this.innerRotation = this.rand.nextInt(100000);
}
@SideOnly(Side.CLIENT)
public EntityMissileTest(World p_i1699_1_, double p_i1699_2_, double p_i1699_4_, double p_i1699_6_)
{
this(p_i1699_1_);
this.setPosition(p_i1699_2_, p_i1699_4_, p_i1699_6_);
}
/**
* returns if this entity triggers Block.onEntityWalking on the blocks they walk on. used for spiders and wolves to
* prevent them from trampling crops
*/
protected boolean canTriggerWalking()
{
return false;
}
protected void entityInit()
{
this.dataWatcher.addObject(8, Integer.valueOf(this.health));
}
/**
* Called to update the entity's position/logic.
*/
public void onUpdate()
{
this.prevPosX = this.posX;
this.prevPosY = this.posY;
this.prevPosZ = this.posZ;
++this.innerRotation;
this.dataWatcher.updateObject(8, Integer.valueOf(this.health));
int i = MathHelper.floor_double(this.posX);
int j = MathHelper.floor_double(this.posY);
int k = MathHelper.floor_double(this.posZ);
if (this.worldObj.provider instanceof WorldProviderEnd && this.worldObj.getBlock(i, j, k) != Blocks.fire)
{
this.worldObj.setBlock(i, j, k, Blocks.fire);
}
}
/**
* (abstract) Protected helper method to write subclass entity data to NBT.
*/
protected void writeEntityToNBT(NBTTagCompound p_70014_1_) {}
/**
* (abstract) Protected helper method to read subclass entity data from NBT.
*/
protected void readEntityFromNBT(NBTTagCompound p_70037_1_) {}
@SideOnly(Side.CLIENT)
public float getShadowSize()
{
return 0.0F;
}
/**
* Returns true if other Entities should be prevented from moving through this Entity.
*/
public boolean canBeCollidedWith()
{
return true;
}
/**
* Called when the entity is attacked.
*/
public boolean attackEntityFrom(DamageSource p_70097_1_, float p_70097_2_)
{
if (this.isEntityInvulnerable())
{
return false;
}
else
{
if (!this.isDead && !this.worldObj.isRemote)
{
this.health = 0;
if (this.health <= 0)
{
this.setDead();
if (!this.worldObj.isRemote)
{
this.worldObj.createExplosion((Entity)null, this.posX, this.posY, this.posZ, 6.0F, true);
}
}
}
return true;
}
}
}

View File

@ -5,6 +5,7 @@ import java.util.List;
import com.hbm.entity.logic.IChunkLoader; import com.hbm.entity.logic.IChunkLoader;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
@ -12,6 +13,7 @@ import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource; import net.minecraft.util.DamageSource;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
@ -28,11 +30,12 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
int startZ; int startZ;
int targetX; int targetX;
int targetZ; int targetZ;
int velocity;
double decelY; double decelY;
double accelXZ; double accelXZ;
boolean isCluster = false; boolean isCluster = false;
float health = 10;
private Ticket loaderTicket; private Ticket loaderTicket;
public int health = 10;
public EntityMissileBaseAdvanced(World p_i1582_1_) { public EntityMissileBaseAdvanced(World p_i1582_1_) {
super(p_i1582_1_); super(p_i1582_1_);
@ -43,51 +46,66 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
targetZ = (int) posZ; targetZ = (int) posZ;
} }
public boolean attackEntityFrom(DamageSource p_70097_1_, float f) public boolean canBeCollidedWith()
{ {
if (!this.worldObj.isRemote && !this.isDead) return true;
}
public boolean attackEntityFrom(DamageSource p_70097_1_, float p_70097_2_)
{
if (this.isEntityInvulnerable())
{ {
if (this.isEntityInvulnerable()) return false;
{
return false;
}
else
{
this.setBeenAttacked();
health -= f;
if(health <= 0) {
}
return true;
}
} }
else else
{ {
if (!this.isDead && !this.worldObj.isRemote)
{
health -= p_70097_2_;
if (this.health <= 0)
{
this.killMissile();
}
}
return true; return true;
} }
} }
private void killMissile() {
ExplosionLarge.explode(worldObj, posX, posY, posZ, 5, true, false, true);
ExplosionLarge.spawnShrapnelShower(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 15, 0.075);
ExplosionLarge.spawnMissileDebris(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 0.25, getDebris(), getDebrisRareDrop());
this.setDead();
}
public EntityMissileBaseAdvanced(World world, float x, float y, float z, int a, int b) { public EntityMissileBaseAdvanced(World world, float x, float y, float z, int a, int b) {
super(world); super(world);
this.ignoreFrustumCheck = true; this.ignoreFrustumCheck = true;
this.posX = x; /*this.posX = x;
this.posY = y; this.posY = y;
this.posZ = z; this.posZ = z;*/
this.setLocationAndAngles(x, y, z, 0, 0);
startX = (int) x; startX = (int) x;
startZ = (int) z; startZ = (int) z;
targetX = a; targetX = a;
targetZ = b; targetZ = b;
this.motionY = 1.5; this.motionY = 2;
Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ); Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ);
accelXZ = decelY = 1/vector.lengthVector(); accelXZ = decelY = 1/vector.lengthVector();
decelY *= 1.5; decelY *= 2;
velocity = 1;
this.setSize(1.5F, 1.5F);
} }
@Override @Override
protected void entityInit() { protected void entityInit() {
init(ForgeChunkManager.requestTicket(MainRegistry.instance, worldObj, Type.ENTITY)); init(ForgeChunkManager.requestTicket(MainRegistry.instance, worldObj, Type.ENTITY));
this.dataWatcher.addObject(8, Integer.valueOf(this.health));
} }
@Override @Override
@ -104,6 +122,7 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
targetZ = nbt.getInteger("tZ"); targetZ = nbt.getInteger("tZ");
startX = nbt.getInteger("sX"); startX = nbt.getInteger("sX");
startZ = nbt.getInteger("sZ"); startZ = nbt.getInteger("sZ");
velocity = nbt.getInteger("veloc");
} }
@Override @Override
@ -120,6 +139,7 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
nbt.setInteger("tZ", targetZ); nbt.setInteger("tZ", targetZ);
nbt.setInteger("sX", startX); nbt.setInteger("sX", startX);
nbt.setInteger("sZ", startZ); nbt.setInteger("sZ", startZ);
nbt.setInteger("veloc", velocity);
} }
protected void rotation() { protected void rotation() {
@ -150,48 +170,67 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
@Override @Override
public void onUpdate() public void onUpdate()
{ {
super.onUpdate(); //super.onUpdate();
this.posX += this.motionX;
this.posY += this.motionY;
this.posZ += this.motionZ;
this.rotation(); if(velocity < 1)
velocity = 1;
if(this.ticksExisted > 40)
velocity = 3;
else if(this.ticksExisted > 20)
velocity = 2;
this.motionY -= decelY; this.dataWatcher.updateObject(8, Integer.valueOf(this.health));
Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ); this.prevPosX = this.posX;
vector = vector.normalize(); this.prevPosY = this.posY;
vector.xCoord *= accelXZ; this.prevPosZ = this.posZ;
vector.zCoord *= accelXZ;
if(motionY > 0) { for(int i = 0; i < velocity; i++) {
motionX += vector.xCoord; //this.posX += this.motionX;
motionZ += vector.zCoord; //this.posY += this.motionY;
} //this.posZ += this.motionZ;
this.setLocationAndAngles(posX + this.motionX, posY + this.motionY, posZ + this.motionZ, 0, 0);
if(motionY < 0) { this.rotation();
motionX -= vector.xCoord;
motionZ -= vector.zCoord;
}
if(!this.worldObj.isRemote) this.motionY -= decelY;
this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0));
if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air && Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ);
this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.water && vector = vector.normalize();
this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.flowing_water) { vector.xCoord *= accelXZ;
vector.zCoord *= accelXZ;
if(!this.worldObj.isRemote) if(motionY > 0) {
{ motionX += vector.xCoord;
onImpact(); motionZ += vector.zCoord;
} }
this.setDead();
}
if(motionY < -1 && this.isCluster && !worldObj.isRemote) { if(motionY < 0) {
cluster(); motionX -= vector.xCoord;
this.setDead(); motionZ -= vector.zCoord;
} }
if(!this.worldObj.isRemote)
this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0));
if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air &&
this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.water &&
this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.flowing_water) {
if(!this.worldObj.isRemote)
{
onImpact();
}
this.setDead();
return;
}
if(motionY < -1 && this.isCluster && !worldObj.isRemote) {
cluster();
this.setDead();
return;
}
}
} }
@Override @Override
@ -203,6 +242,10 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
public abstract void onImpact(); public abstract void onImpact();
public abstract List<ItemStack> getDebris();
public abstract ItemStack getDebrisRareDrop();
public void cluster() { } public void cluster() { }
public void init(Ticket ticket) { public void init(Ticket ticket) {

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileBunkerBuster extends EntityMissileBaseAdvanced { public class EntityMissileBunkerBuster extends EntityMissileBaseAdvanced {
@ -28,4 +33,20 @@ public class EntityMissileBunkerBuster extends EntityMissileBaseAdvanced {
ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 5); ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 5);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 16));
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_buster_large);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileBurst extends EntityMissileBaseAdvanced { public class EntityMissileBurst extends EntityMissileBaseAdvanced {
@ -22,4 +27,20 @@ public class EntityMissileBurst extends EntityMissileBaseAdvanced {
this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 50.0F, true); this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 50.0F, true);
ExplosionLarge.explode(worldObj, posX, posY, posZ, 50.0F, true, true, true); ExplosionLarge.explode(worldObj, posX, posY, posZ, 50.0F, true, true, true);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 16));
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_generic_large);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileBusterStrong extends EntityMissileBaseAdvanced { public class EntityMissileBusterStrong extends EntityMissileBaseAdvanced {
@ -26,4 +31,20 @@ public class EntityMissileBusterStrong extends EntityMissileBaseAdvanced {
ExplosionLarge.spawnShrapnels(worldObj, this.posX, this.posY, this.posZ, 8); ExplosionLarge.spawnShrapnels(worldObj, this.posX, this.posY, this.posZ, 8);
ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 8); ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 8);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 10));
list.add(new ItemStack(ModItems.plate_titanium, 6));
list.add(new ItemStack(ModItems.thruster_medium, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_buster_medium);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileCluster extends EntityMissileBaseAdvanced { public class EntityMissileCluster extends EntityMissileBaseAdvanced {
@ -27,4 +32,19 @@ public class EntityMissileCluster extends EntityMissileBaseAdvanced {
public void cluster() { public void cluster() {
this.onImpact(); this.onImpact();
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 4));
list.add(new ItemStack(ModItems.thruster_small, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_cluster_small);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileClusterStrong extends EntityMissileBaseAdvanced { public class EntityMissileClusterStrong extends EntityMissileBaseAdvanced {
@ -27,4 +32,20 @@ public class EntityMissileClusterStrong extends EntityMissileBaseAdvanced {
public void cluster() { public void cluster() {
this.onImpact(); this.onImpact();
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 10));
list.add(new ItemStack(ModItems.plate_titanium, 6));
list.add(new ItemStack(ModItems.thruster_medium, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_cluster_medium);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileDoomsday extends EntityMissileBaseAdvanced { public class EntityMissileDoomsday extends EntityMissileBaseAdvanced {
@ -93,4 +98,14 @@ public class EntityMissileDoomsday extends EntityMissileBaseAdvanced {
} }
} }
@Override
public List<ItemStack> getDebris() {
return null;
}
@Override
public ItemStack getDebrisRareDrop() {
return null;
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileDrill extends EntityMissileBaseAdvanced { public class EntityMissileDrill extends EntityMissileBaseAdvanced {
@ -26,4 +31,20 @@ public class EntityMissileDrill extends EntityMissileBaseAdvanced {
ExplosionLarge.spawnShrapnels(worldObj, this.posX, this.posY, this.posZ, 12); ExplosionLarge.spawnShrapnels(worldObj, this.posX, this.posY, this.posZ, 12);
ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 12); ExplosionLarge.spawnRubble(worldObj, this.posX, this.posY, this.posZ, 12);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 16));
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_buster_large);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionThermo; import com.hbm.explosion.ExplosionThermo;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileEndo extends EntityMissileBaseAdvanced { public class EntityMissileEndo extends EntityMissileBaseAdvanced {
@ -22,4 +27,21 @@ public class EntityMissileEndo extends EntityMissileBaseAdvanced {
ExplosionThermo.freeze(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 30); ExplosionThermo.freeze(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 30);
ExplosionThermo.freezer(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 40); ExplosionThermo.freezer(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 40);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.plate_steel, 14));
list.add(new ItemStack(ModItems.plate_aluminium, 8));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_thermo_exo);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionThermo; import com.hbm.explosion.ExplosionThermo;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileExo extends EntityMissileBaseAdvanced { public class EntityMissileExo extends EntityMissileBaseAdvanced {
@ -22,4 +27,21 @@ public class EntityMissileExo extends EntityMissileBaseAdvanced {
ExplosionThermo.scorch(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 30); ExplosionThermo.scorch(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 30);
ExplosionThermo.setEntitiesOnFire(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 40); ExplosionThermo.setEntitiesOnFire(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 40);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.plate_steel, 14));
list.add(new ItemStack(ModItems.plate_aluminium, 8));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_thermo_exo);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileGeneric extends EntityMissileBaseAdvanced { public class EntityMissileGeneric extends EntityMissileBaseAdvanced {
@ -21,6 +26,21 @@ public class EntityMissileGeneric extends EntityMissileBaseAdvanced {
ExplosionLarge.explode(worldObj, posX, posY, posZ, 10.0F, true, true, true); ExplosionLarge.explode(worldObj, posX, posY, posZ, 10.0F, true, true, true);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 4));
list.add(new ItemStack(ModItems.thruster_small, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_generic_small);
}
/*public EntityMissileGeneric(World p_i1582_1_) { /*public EntityMissileGeneric(World p_i1582_1_) {
super(p_i1582_1_); super(p_i1582_1_);
} }

View File

@ -1,11 +1,16 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileIncendiary extends EntityMissileBaseAdvanced { public class EntityMissileIncendiary extends EntityMissileBaseAdvanced {
@ -23,4 +28,19 @@ public class EntityMissileIncendiary extends EntityMissileBaseAdvanced {
ExplosionLarge.explodeFire(worldObj, this.posX + 0.5F, this.posY + 0.5F, this.posZ + 0.5F, 10.0F, true, true, true); ExplosionLarge.explodeFire(worldObj, this.posX + 0.5F, this.posY + 0.5F, this.posZ + 0.5F, 10.0F, true, true, true);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 4));
list.add(new ItemStack(ModItems.thruster_small, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_incendiary_small);
}
} }

View File

@ -1,10 +1,15 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileIncendiaryStrong extends EntityMissileBaseAdvanced { public class EntityMissileIncendiaryStrong extends EntityMissileBaseAdvanced {
@ -22,4 +27,20 @@ public class EntityMissileIncendiaryStrong extends EntityMissileBaseAdvanced {
ExplosionLarge.explodeFire(worldObj, this.posX + 0.5F, this.posY + 0.5F, this.posZ + 0.5F, 25.0F, true, true, true); ExplosionLarge.explodeFire(worldObj, this.posX + 0.5F, this.posY + 0.5F, this.posZ + 0.5F, 25.0F, true, true, true);
ExplosionChaos.flameDeath(this.worldObj, (int)((float)this.posX + 0.5F), (int)((float)this.posY + 0.5F), (int)((float)this.posZ + 0.5F), 25); ExplosionChaos.flameDeath(this.worldObj, (int)((float)this.posX + 0.5F), (int)((float)this.posY + 0.5F), (int)((float)this.posZ + 0.5F), 25);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 10));
list.add(new ItemStack(ModItems.plate_titanium, 6));
list.add(new ItemStack(ModItems.thruster_medium, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_incendiary_medium);
}
} }

View File

@ -1,10 +1,15 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileInferno extends EntityMissileBaseAdvanced { public class EntityMissileInferno extends EntityMissileBaseAdvanced {
@ -23,4 +28,20 @@ public class EntityMissileInferno extends EntityMissileBaseAdvanced {
ExplosionChaos.burn(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 10); ExplosionChaos.burn(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 10);
ExplosionChaos.flameDeath(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 25); ExplosionChaos.flameDeath(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 25);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 16));
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_incendiary_large);
}
} }

View File

@ -1,13 +1,18 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.effect.EntityNukeCloudSmall;
import com.hbm.entity.logic.EntityNukeExplosionAdvanced; import com.hbm.entity.logic.EntityNukeExplosionAdvanced;
import com.hbm.entity.logic.EntityNukeExplosionMK3; import com.hbm.entity.logic.EntityNukeExplosionMK3;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileMirv extends EntityMissileBaseAdvanced { public class EntityMissileMirv extends EntityMissileBaseAdvanced {
@ -45,4 +50,22 @@ public class EntityMissileMirv extends EntityMissileBaseAdvanced {
this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 15.0F, true); this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 15.0F, true);
ExplosionChaos.mirv(this.worldObj,this.posX, this.posY, this.posZ); ExplosionChaos.mirv(this.worldObj,this.posX, this.posY, this.posZ);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 16));
list.add(new ItemStack(ModItems.plate_steel, 20));
list.add(new ItemStack(ModItems.plate_aluminium, 12));
list.add(new ItemStack(ModItems.thruster_large, 1));
list.add(new ItemStack(ModItems.warhead_mirvlet, 8));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_generic_large);
}
} }

View File

@ -1,12 +1,17 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.effect.EntityNukeCloudSmall;
import com.hbm.entity.logic.EntityNukeExplosionAdvanced; import com.hbm.entity.logic.EntityNukeExplosionAdvanced;
import com.hbm.entity.logic.EntityNukeExplosionMK3; import com.hbm.entity.logic.EntityNukeExplosionMK3;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileNuclear extends EntityMissileBaseAdvanced { public class EntityMissileNuclear extends EntityMissileBaseAdvanced {
@ -38,4 +43,21 @@ public class EntityMissileNuclear extends EntityMissileBaseAdvanced {
this.worldObj.spawnEntityInWorld(entity2); this.worldObj.spawnEntityInWorld(entity2);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 16));
list.add(new ItemStack(ModItems.plate_steel, 20));
list.add(new ItemStack(ModItems.plate_aluminium, 12));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_nuclear);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileRain extends EntityMissileBaseAdvanced { public class EntityMissileRain extends EntityMissileBaseAdvanced {
@ -27,4 +32,20 @@ public class EntityMissileRain extends EntityMissileBaseAdvanced {
public void cluster() { public void cluster() {
this.onImpact(); this.onImpact();
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 16));
list.add(new ItemStack(ModItems.plate_titanium, 10));
list.add(new ItemStack(ModItems.thruster_large, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_cluster_large);
}
} }

View File

@ -1,9 +1,14 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.particle.EntitySmokeFX; import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.items.ModItems;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileStrong extends EntityMissileBaseAdvanced { public class EntityMissileStrong extends EntityMissileBaseAdvanced {
@ -21,4 +26,20 @@ public class EntityMissileStrong extends EntityMissileBaseAdvanced {
ExplosionLarge.explode(worldObj, posX, posY, posZ, 25.0F, true, true, true); ExplosionLarge.explode(worldObj, posX, posY, posZ, 25.0F, true, true, true);
} }
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_steel, 10));
list.add(new ItemStack(ModItems.plate_titanium, 6));
list.add(new ItemStack(ModItems.thruster_medium, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_generic_medium);
}
} }

View File

@ -1,9 +1,12 @@
package com.hbm.entity.missile; package com.hbm.entity.missile;
import java.util.List;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.bomb.BlockTaint; import com.hbm.blocks.bomb.BlockTaint;
import com.hbm.explosion.ExplosionThermo; import com.hbm.explosion.ExplosionThermo;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World; import net.minecraft.world.World;
public class EntityMissileTaint extends EntityMissileBaseAdvanced { public class EntityMissileTaint extends EntityMissileBaseAdvanced {
@ -28,4 +31,14 @@ public class EntityMissileTaint extends EntityMissileBaseAdvanced {
worldObj.setBlock(a, b, c, ModBlocks.taint); worldObj.setBlock(a, b, c, ModBlocks.taint);
} }
} }
@Override
public List<ItemStack> getDebris() {
return null;
}
@Override
public ItemStack getDebrisRareDrop() {
return null;
}
} }

View File

@ -373,6 +373,7 @@ public class EntityBullet extends Entity implements IProjectile {
if (this.inGround && !this.getIsCritical()) { if (this.inGround && !this.getIsCritical()) {
this.setDead(); this.setDead();
} else { } else {
++this.ticksInAir; ++this.ticksInAir;
Vec3 vec31 = Vec3.createVectorHelper(this.posX, this.posY, this.posZ); Vec3 vec31 = Vec3.createVectorHelper(this.posX, this.posY, this.posZ);
@ -589,6 +590,8 @@ public class EntityBullet extends Entity implements IProjectile {
this.ticksInAir = 0;*/ this.ticksInAir = 0;*/
//this.setDead(); //this.setDead();
} }
} else {
this.setDead();
} }
} else if (!this.getIsCritical()) { } else if (!this.getIsCritical()) {
this.field_145791_d = movingobjectposition.blockX; this.field_145791_d = movingobjectposition.blockX;

View File

@ -5,7 +5,9 @@ import java.util.List;
import com.hbm.entity.grenade.EntityGrenadeZOMG; import com.hbm.entity.grenade.EntityGrenadeZOMG;
import com.hbm.explosion.ExplosionChaos; import com.hbm.explosion.ExplosionChaos;
import com.hbm.explosion.ExplosionThermo; import com.hbm.explosion.ExplosionThermo;
import com.hbm.items.ModItems;
import com.hbm.lib.ModDamageSource; import com.hbm.lib.ModDamageSource;
import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
@ -20,6 +22,8 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.play.server.S2BPacketChangeGameState; import net.minecraft.network.play.server.S2BPacketChangeGameState;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.DamageSource; import net.minecraft.util.DamageSource;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
@ -308,6 +312,9 @@ public class EntityPlasmaBeam extends Entity implements IProjectile
{ {
movingobjectposition = null; movingobjectposition = null;
} }
if(this.ticksExisted > 5 && surviveImmolation(entityplayer))
movingobjectposition = null;
} }
float f2; float f2;
@ -540,4 +547,14 @@ public class EntityPlasmaBeam extends Entity implements IProjectile
byte b0 = this.dataWatcher.getWatchableObjectByte(16); byte b0 = this.dataWatcher.getWatchableObjectByte(16);
return (b0 & 1) != 0; return (b0 & 1) != 0;
} }
private boolean surviveImmolation(EntityPlayer player) {
if(player.inventory.hasItem(ModItems.gun_revolver_pip) && player.inventory.hasItem(ModItems.bottle_sparkle) && player.inventory.hasItem(ModItems.geiger_counter)) {
player.triggerAchievement(MainRegistry.achSacrifice);
player.addPotionEffect(new PotionEffect(Potion.regeneration.id, 3 * 20, 6));
return true;
} else {
return false;
}
}
} }

View File

@ -1,5 +1,6 @@
package com.hbm.explosion; package com.hbm.explosion;
import java.util.List;
import java.util.Random; import java.util.Random;
import com.hbm.entity.particle.EntityDSmokeFX; import com.hbm.entity.particle.EntityDSmokeFX;
@ -9,6 +10,8 @@ import com.hbm.entity.projectile.EntityRubble;
import com.hbm.entity.projectile.EntityShrapnel; import com.hbm.entity.projectile.EntityShrapnel;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Vec3; import net.minecraft.util.Vec3;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -107,6 +110,53 @@ public class ExplosionLarge {
} }
} }
public static void spawnShrapnelShower(World world, double x, double y, double z, double motionX, double motionY, double motionZ, int count, double deviation) {
for(int i = 0; i < count; i++) {
EntityShrapnel shrapnel = new EntityShrapnel(world);
shrapnel.posX = x;
shrapnel.posY = y;
shrapnel.posZ = z;
shrapnel.motionX = motionX + rand.nextGaussian() * deviation;
shrapnel.motionY = motionY + rand.nextGaussian() * deviation;
shrapnel.motionZ = motionZ + rand.nextGaussian() * deviation;
shrapnel.setTrail(rand.nextInt(3) == 0);
world.spawnEntityInWorld(shrapnel);
}
}
public static void spawnMissileDebris(World world, double x, double y, double z, double motionX, double motionY, double motionZ, double deviation, List<ItemStack> debris, ItemStack rareDrop) {
if(debris != null) {
for(int i = 0; i < debris.size(); i++) {
if(debris.get(i) != null) {
int k = rand.nextInt(debris.get(i).stackSize + 1);
System.out.println(k);
for(int j = 0; j < k; j++) {
EntityItem item = new EntityItem(world, x, y, z, new ItemStack(debris.get(i).getItem()));
item.motionX = (motionX + rand.nextGaussian() * deviation) * 0.85;
item.motionY = (motionY + rand.nextGaussian() * deviation) * 0.85;
item.motionZ = (motionZ + rand.nextGaussian() * deviation) * 0.85;
item.posX = item.posX + item.motionX * 2;
item.posY = item.posY + item.motionY * 2;
item.posZ = item.posZ + item.motionZ * 2;
world.spawnEntityInWorld(item);
}
}
}
}
if(rareDrop != null && rand.nextInt(10) == 0) {
EntityItem item = new EntityItem(world, x, y, z, rareDrop.copy());
item.motionX = motionX + rand.nextGaussian() * deviation * 0.1;
item.motionY = motionY + rand.nextGaussian() * deviation * 0.1;
item.motionZ = motionZ + rand.nextGaussian() * deviation * 0.1;
world.spawnEntityInWorld(item);
}
}
public static void spawnOilSpills(World world, double x, double y, double z, int count) { public static void spawnOilSpills(World world, double x, double y, double z, int count) {
for(int i = 0; i < count; i++) { for(int i = 0; i < count; i++) {

View File

@ -49,6 +49,7 @@ import com.hbm.tileentity.machine.TileEntityMachinePress;
import com.hbm.tileentity.machine.TileEntityMachinePuF6Tank; import com.hbm.tileentity.machine.TileEntityMachinePuF6Tank;
import com.hbm.tileentity.machine.TileEntityMachinePumpjack; import com.hbm.tileentity.machine.TileEntityMachinePumpjack;
import com.hbm.tileentity.machine.TileEntityMachineRTG; import com.hbm.tileentity.machine.TileEntityMachineRTG;
import com.hbm.tileentity.machine.TileEntityMachineRadGen;
import com.hbm.tileentity.machine.TileEntityMachineReactor; import com.hbm.tileentity.machine.TileEntityMachineReactor;
import com.hbm.tileentity.machine.TileEntityMachineRefinery; import com.hbm.tileentity.machine.TileEntityMachineRefinery;
import com.hbm.tileentity.machine.TileEntityMachineSchrabidiumTransmutator; import com.hbm.tileentity.machine.TileEntityMachineSchrabidiumTransmutator;
@ -578,6 +579,15 @@ public class GUIHandler implements IGuiHandler {
} }
return null; return null;
} }
case ModBlocks.guiID_radgen:
{
if(entity instanceof TileEntityMachineRadGen)
{
return new ContainerMachineRadGen(player.inventory, (TileEntityMachineRadGen) entity);
}
return null;
}
} }
return null; return null;
} }
@ -1092,6 +1102,15 @@ public class GUIHandler implements IGuiHandler {
} }
return null; return null;
} }
case ModBlocks.guiID_radgen:
{
if(entity instanceof TileEntityMachineRadGen)
{
return new GUIMachineRadGen(player.inventory, (TileEntityMachineRadGen) entity);
}
return null;
}
} }
} else { } else {
//CLIENTONLY GUIS //CLIENTONLY GUIS

View File

@ -73,6 +73,10 @@ public class MultiblockHandler {
public static final int[] AMSLimiterDimensionWest = new int[] { 2, 2, 5, 0, 0, 0 }; public static final int[] AMSLimiterDimensionWest = new int[] { 2, 2, 5, 0, 0, 0 };
public static final int[] AMSEmitterDimension = new int[] { 2, 2, 5, 0, 2, 2, }; public static final int[] AMSEmitterDimension = new int[] { 2, 2, 5, 0, 2, 2, };
public static final int[] AMSBaseDimension = new int[] { 1, 1, 1, 0, 1, 1, }; public static final int[] AMSBaseDimension = new int[] { 1, 1, 1, 0, 1, 1, };
public static final int[] radGenDimensionNorth = new int[] { 4, 1, 2, 0, 1, 1 };
public static final int[] radGenDimensionEast = new int[] { 1, 1, 2, 0, 4, 1 };
public static final int[] radGenDimensionSouth = new int[] { 1, 4, 2, 0, 1, 1 };
public static final int[] radGenDimensionWest = new int[] { 1, 1, 2, 0, 1, 4 };
//Approved! //Approved!
public static boolean checkSpace(World world, int x, int y, int z, int[] i) { public static boolean checkSpace(World world, int x, int y, int z, int[] i) {

View File

@ -529,17 +529,17 @@ public class MachineRecipes {
return new ItemStack(ModItems.fluorite, 1); return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_coal) if(item.getItem() == ModItems.powder_coal)
return new ItemStack(ModItems.fluorite, 1); return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_iron) if(mODE(item, "dustIron"))
return new ItemStack(ModItems.powder_cobalt, 1); return new ItemStack(ModItems.powder_cobalt, 1);
if(item.getItem() == ModItems.powder_gold) if(mODE(item, "dustGold"))
return new ItemStack(ModItems.powder_lead, 1); return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_quartz) if(mODE(item, "dustNetherQuartz"))
return new ItemStack(ModItems.sulfur, 1); return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_uranium) if(mODE(item, "dustUranium"))
return new ItemStack(ModItems.powder_plutonium, 1); return new ItemStack(ModItems.powder_plutonium, 1);
if(item.getItem() == ModItems.powder_aluminium) if(mODE(item, "dustAluminum"))
return new ItemStack(ModItems.powder_quartz, 1); return new ItemStack(ModItems.powder_quartz, 1);
if(item.getItem() == ModItems.powder_beryllium) if(mODE(item, "dustBeryllium"))
return new ItemStack(ModItems.powder_coal, 1); return new ItemStack(ModItems.powder_coal, 1);
if(item.getItem() == ModItems.powder_schrabidium) if(item.getItem() == ModItems.powder_schrabidium)
return new ItemStack(ModItems.powder_reiium, 1); return new ItemStack(ModItems.powder_reiium, 1);
@ -553,7 +553,7 @@ public class MachineRecipes {
return new ItemStack(ModItems.powder_lanthanium, 1); return new ItemStack(ModItems.powder_lanthanium, 1);
if(item.getItem() == ModItems.powder_reiium) if(item.getItem() == ModItems.powder_reiium)
return new ItemStack(ModItems.powder_weidanium, 1); return new ItemStack(ModItems.powder_weidanium, 1);
if(item.getItem() == ModItems.powder_cobalt) if(mODE(item, "dustCobalt"))
return new ItemStack(ModItems.powder_copper, 1); return new ItemStack(ModItems.powder_copper, 1);
if(item.getItem() == ModItems.powder_cerium) if(item.getItem() == ModItems.powder_cerium)
return new ItemStack(ModItems.powder_neodymium, 1); return new ItemStack(ModItems.powder_neodymium, 1);
@ -565,27 +565,27 @@ public class MachineRecipes {
//BERYLLIUM //BERYLLIUM
if (part.getItem() == ModItems.part_beryllium) { if (part.getItem() == ModItems.part_beryllium) {
if(item.getItem() == ModItems.sulfur) if(mODE(item, "dustSulfur"))
return new ItemStack(ModItems.powder_titanium, 1); return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.fluorite) if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.powder_aluminium, 1); return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.powder_iron) if(mODE(item, "dustIron"))
return new ItemStack(ModItems.powder_copper, 1); return new ItemStack(ModItems.powder_copper, 1);
if(item.getItem() == ModItems.powder_quartz) if(mODE(item, "dustNetherQuartz"))
return new ItemStack(ModItems.powder_titanium, 1); return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.powder_titanium) if(mODE(item, "dustTitanium"))
return new ItemStack(ModItems.powder_iron, 1); return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_copper) if(mODE(item, "dustCopper"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_tungsten) if(mODE(item, "dustTungsten"))
return new ItemStack(ModItems.powder_gold, 1); return new ItemStack(ModItems.powder_gold, 1);
if(item.getItem() == ModItems.powder_aluminium) if(mODE(item, "dustAluminum"))
return new ItemStack(ModItems.sulfur, 1); return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_lead) if(mODE(item, "dustLead"))
return new ItemStack(ModItems.powder_astatine, 1); return new ItemStack(ModItems.powder_astatine, 1);
if(item.getItem() == ModItems.powder_beryllium) if(mODE(item, "dustBeryllium"))
return new ItemStack(ModItems.niter, 1); return new ItemStack(ModItems.niter, 1);
if(item.getItem() == ModItems.powder_lithium) if(mODE(item, "dustLithium"))
return new ItemStack(ModItems.niter, 1); return new ItemStack(ModItems.niter, 1);
if(item.getItem() == ModItems.powder_iodine) if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_cerium, 1); return new ItemStack(ModItems.powder_cerium, 1);
@ -609,37 +609,37 @@ public class MachineRecipes {
//CARBON //CARBON
if (part.getItem() == ModItems.part_carbon) { if (part.getItem() == ModItems.part_carbon) {
if(item.getItem() == ModItems.sulfur) if(mODE(item, "dustSulfur"))
return new ItemStack(ModItems.powder_iron, 1); return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.niter) if(item.getItem() == ModItems.niter)
return new ItemStack(ModItems.powder_aluminium, 1); return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.fluorite) if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.sulfur, 1); return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_coal) if(mODE(item, "dustCoal"))
return new ItemStack(ModItems.powder_aluminium, 1); return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.powder_iron) if(mODE(item, "dustIron"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_gold) if(mODE(item, "dustGold"))
return new ItemStack(ModItems.powder_astatine, 1); return new ItemStack(ModItems.powder_astatine, 1);
if(item.getItem() == ModItems.powder_quartz) if(mODE(item, "dustNetherQuartz"))
return new ItemStack(ModItems.powder_iron, 1); return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_plutonium) if(item.getItem() == ModItems.powder_plutonium)
return new ItemStack(ModItems.powder_tennessine, 1); return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_neptunium) if(item.getItem() == ModItems.powder_neptunium)
return new ItemStack(ModItems.powder_tennessine, 1); return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_titanium) if(mODE(item, "dustTitanium"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_copper) if(mODE(item, "dustCopper"))
return new ItemStack(ModItems.powder_strontium, 1); return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_tungsten) if(mODE(item, "dustTungsten"))
return new ItemStack(ModItems.powder_lead, 1); return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_aluminium) if(mODE(item, "dustAluminum"))
return new ItemStack(ModItems.powder_titanium, 1); return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.powder_lead) if(mODE(item, "dustLead"))
return new ItemStack(ModItems.powder_thorium, 1); return new ItemStack(ModItems.powder_thorium, 1);
if(item.getItem() == ModItems.powder_beryllium) if(mODE(item, "dustBeryllium"))
return new ItemStack(ModItems.fluorite, 1); return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_lithium) if(mODE(item, "dustLithium"))
return new ItemStack(ModItems.fluorite, 1); return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_iodine) if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_tungsten, 1); return new ItemStack(ModItems.powder_tungsten, 1);
@ -649,7 +649,7 @@ public class MachineRecipes {
return new ItemStack(ModItems.powder_verticium, 1); return new ItemStack(ModItems.powder_verticium, 1);
if(item.getItem() == ModItems.powder_strontium) if(item.getItem() == ModItems.powder_strontium)
return new ItemStack(ModItems.powder_iodine, 1); return new ItemStack(ModItems.powder_iodine, 1);
if(item.getItem() == ModItems.powder_cobalt) if(mODE(item, "dustCobalt"))
return new ItemStack(ModItems.powder_strontium, 1); return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_bromine) if(item.getItem() == ModItems.powder_bromine)
return new ItemStack(ModItems.powder_niobium, 1); return new ItemStack(ModItems.powder_niobium, 1);
@ -663,35 +663,35 @@ public class MachineRecipes {
//COPPER //COPPER
if (part.getItem() == ModItems.part_copper) { if (part.getItem() == ModItems.part_copper) {
if(item.getItem() == ModItems.sulfur) if(mODE(item, "dustSulfur"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.niter) if(item.getItem() == ModItems.niter)
return new ItemStack(ModItems.powder_cobalt, 1); return new ItemStack(ModItems.powder_cobalt, 1);
if(item.getItem() == ModItems.fluorite) if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.powder_iron, 1); return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_coal) if(mODE(item, "dustCoal"))
return new ItemStack(ModItems.powder_iron, 1); return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_iron) if(mODE(item, "dustIron"))
return new ItemStack(ModItems.powder_niobium, 1); return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_gold) if(mODE(item, "dustGold"))
return new ItemStack(ModItems.powder_lanthanium, 1); return new ItemStack(ModItems.powder_lanthanium, 1);
if(item.getItem() == ModItems.powder_quartz) if(mODE(item, "dustNetherQuartz"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_uranium) if(mODE(item, "dustUranium"))
return new ItemStack(ModItems.powder_tennessine, 1); return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_titanium) if(mODE(item, "dustTitanium"))
return new ItemStack(ModItems.powder_strontium, 1); return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_copper) if(mODE(item, "dustCopper"))
return new ItemStack(ModItems.powder_niobium, 1); return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_tungsten) if(mODE(item, "dustTungsten"))
return new ItemStack(ModItems.powder_actinium, 1); return new ItemStack(ModItems.powder_actinium, 1);
if(item.getItem() == ModItems.powder_aluminium) if(mODE(item, "dustAluminum"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_lead) if(mODE(item, "dustLead"))
return new ItemStack(ModItems.powder_tennessine, 1); return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_beryllium) if(mODE(item, "dustBeryllium"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_lithium) if(mODE(item, "dustLithium"))
return new ItemStack(ModItems.powder_bromine, 1); return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_iodine) if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_astatine, 1); return new ItemStack(ModItems.powder_astatine, 1);
@ -705,7 +705,7 @@ public class MachineRecipes {
return new ItemStack(ModItems.powder_tungsten, 1); return new ItemStack(ModItems.powder_tungsten, 1);
if(item.getItem() == ModItems.powder_verticium) if(item.getItem() == ModItems.powder_verticium)
return new ItemStack(ModItems.powder_unobtainium, 1); return new ItemStack(ModItems.powder_unobtainium, 1);
if(item.getItem() == ModItems.powder_cobalt) if(mODE(item, "dustCobalt"))
return new ItemStack(ModItems.powder_iodine, 1); return new ItemStack(ModItems.powder_iodine, 1);
if(item.getItem() == ModItems.powder_bromine) if(item.getItem() == ModItems.powder_bromine)
return new ItemStack(ModItems.powder_caesium, 1); return new ItemStack(ModItems.powder_caesium, 1);
@ -723,7 +723,7 @@ public class MachineRecipes {
//PLUTONIUM //PLUTONIUM
if (part.getItem() == ModItems.part_plutonium) { if (part.getItem() == ModItems.part_plutonium) {
if(item.getItem() == ModItems.powder_uranium) if(mODE(item, "dustUranium"))
return new ItemStack(ModItems.powder_schrabidium, 1); return new ItemStack(ModItems.powder_schrabidium, 1);
if(item.getItem() == ModItems.powder_plutonium) if(item.getItem() == ModItems.powder_plutonium)
return new ItemStack(ModItems.powder_schrabidium, 1); return new ItemStack(ModItems.powder_schrabidium, 1);
@ -1683,6 +1683,7 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.magnet_dee, 3)); list.add(new ItemStack(ModItems.magnet_dee, 3));
list.add(new ItemStack(ModItems.plate_steel, 12)); list.add(new ItemStack(ModItems.plate_steel, 12));
list.add(new ItemStack(ModItems.wire_advanced_alloy, 8)); list.add(new ItemStack(ModItems.wire_advanced_alloy, 8));
list.add(new ItemStack(ModItems.plate_polymer, 24));
break; break;
case REACTOR_CORE: case REACTOR_CORE:
list.add(new ItemStack(ModItems.ingot_lead, 4)); list.add(new ItemStack(ModItems.ingot_lead, 4));
@ -1700,6 +1701,7 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.coil_copper_torus, 3)); list.add(new ItemStack(ModItems.coil_copper_torus, 3));
list.add(new ItemStack(ModItems.ingot_steel, 3)); list.add(new ItemStack(ModItems.ingot_steel, 3));
list.add(new ItemStack(ModItems.plate_titanium, 6)); list.add(new ItemStack(ModItems.plate_titanium, 6));
list.add(new ItemStack(ModItems.plate_polymer, 12));
break; break;
case GRAVITY_UNIT: case GRAVITY_UNIT:
list.add(new ItemStack(ModItems.coil_copper, 4)); list.add(new ItemStack(ModItems.coil_copper, 4));
@ -1904,7 +1906,7 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.circuit_copper, 1)); list.add(new ItemStack(ModItems.circuit_copper, 1));
list.add(new ItemStack(ModItems.wire_red_copper, 6)); list.add(new ItemStack(ModItems.wire_red_copper, 6));
list.add(new ItemStack(ModItems.powder_gold, 4)); list.add(new ItemStack(ModItems.powder_gold, 4));
list.add(new ItemStack(ModItems.ingot_polymer, 1)); list.add(new ItemStack(ModItems.plate_polymer, 1));
break; break;
case RTG_PELLET: case RTG_PELLET:
list.add(new ItemStack(ModItems.nugget_pu238, 5)); list.add(new ItemStack(ModItems.nugget_pu238, 5));
@ -2300,6 +2302,7 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.coil_tungsten, 10)); list.add(new ItemStack(ModItems.coil_tungsten, 10));
list.add(new ItemStack(ModItems.wire_red_copper, 8)); list.add(new ItemStack(ModItems.wire_red_copper, 8));
list.add(new ItemStack(ModItems.circuit_red_copper, 4)); list.add(new ItemStack(ModItems.circuit_red_copper, 4));
list.add(new ItemStack(ModItems.plate_polymer, 8));
break; break;
case CHEMPLANT: case CHEMPLANT:
list.add(new ItemStack(ModItems.ingot_steel, 8)); list.add(new ItemStack(ModItems.ingot_steel, 8));
@ -2311,6 +2314,7 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.wire_tungsten, 3)); list.add(new ItemStack(ModItems.wire_tungsten, 3));
list.add(new ItemStack(ModItems.circuit_copper, 4)); list.add(new ItemStack(ModItems.circuit_copper, 4));
list.add(new ItemStack(ModItems.circuit_red_copper, 2)); list.add(new ItemStack(ModItems.circuit_red_copper, 2));
list.add(new ItemStack(ModItems.plate_polymer, 8));
break; break;
case TANK: case TANK:
list.add(new ItemStack(ModItems.ingot_steel, 2)); list.add(new ItemStack(ModItems.ingot_steel, 2));
@ -2335,7 +2339,8 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.turbine_tungsten, 1)); list.add(new ItemStack(ModItems.turbine_tungsten, 1));
list.add(new ItemStack(ModItems.turbine_titanium, 7)); list.add(new ItemStack(ModItems.turbine_titanium, 7));
list.add(new ItemStack(ModItems.bolt_compound, 8)); list.add(new ItemStack(ModItems.bolt_compound, 8));
list.add(new ItemStack(ModItems.ingot_red_copper, 24)); list.add(new ItemStack(ModItems.ingot_red_copper, 12));
list.add(new ItemStack(ModItems.wire_red_copper, 24));
break; break;
case TELEPORTER: case TELEPORTER:
list.add(new ItemStack(ModItems.ingot_titanium, 6)); list.add(new ItemStack(ModItems.ingot_titanium, 6));
@ -3766,13 +3771,13 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.circuit_red_copper, 1)); list.add(new ItemStack(ModItems.circuit_red_copper, 1));
list.add(new ItemStack(ModItems.wire_gold, 6)); list.add(new ItemStack(ModItems.wire_gold, 6));
list.add(new ItemStack(ModItems.powder_lapis, 4)); list.add(new ItemStack(ModItems.powder_lapis, 4));
list.add(new ItemStack(ModItems.ingot_desh, 1)); list.add(new ItemStack(ModItems.ingot_polymer, 1));
break; break;
case CIRCUIT_5: case CIRCUIT_5:
list.add(new ItemStack(ModItems.circuit_gold, 1)); list.add(new ItemStack(ModItems.circuit_gold, 1));
list.add(new ItemStack(ModItems.wire_schrabidium, 6)); list.add(new ItemStack(ModItems.wire_schrabidium, 6));
list.add(new ItemStack(ModItems.powder_diamond, 4)); list.add(new ItemStack(ModItems.powder_diamond, 4));
list.add(new ItemStack(ModItems.powder_power, 1)); list.add(new ItemStack(ModItems.ingot_desh, 1));
break; break;
case POLYMER: case POLYMER:
list.add(new ItemStack(Items.coal, 2)); list.add(new ItemStack(Items.coal, 2));

View File

@ -0,0 +1,134 @@
package com.hbm.inventory.container;
import com.hbm.tileentity.machine.TileEntityMachineRadGen;
import com.hbm.tileentity.machine.TileEntityMachineSiren;
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 ContainerMachineRadGen extends Container {
private TileEntityMachineRadGen diFurnace;
private int fuel;
private int strength;
private int mode;
public ContainerMachineRadGen(InventoryPlayer invPlayer, TileEntityMachineRadGen tedf) {
fuel = 0;
strength = 0;
mode = 0;
diFurnace = tedf;
this.addSlotToContainer(new Slot(tedf, 0, 17, 17));
this.addSlotToContainer(new Slot(tedf, 1, 17, 53));
this.addSlotToContainer(new Slot(tedf, 2, 125, 53));
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 <= 0) {
if (!this.mergeItemStack(var5, 1, this.inventorySlots.size(), true))
{
return null;
}
}
else if (!this.mergeItemStack(var5, 0, 1, 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);
}
@Override
public void detectAndSendChanges() {
super.detectAndSendChanges();
for(int i = 0; i < this.crafters.size(); i++)
{
ICrafting par1 = (ICrafting)this.crafters.get(i);
if(this.fuel != this.diFurnace.fuel)
{
par1.sendProgressBarUpdate(this, 0, this.diFurnace.fuel);
}
if(this.strength != this.diFurnace.strength)
{
par1.sendProgressBarUpdate(this, 1, this.diFurnace.strength);
}
if(this.mode != this.diFurnace.mode)
{
par1.sendProgressBarUpdate(this, 2, this.diFurnace.mode);
}
}
this.fuel = this.diFurnace.fuel;
this.strength = this.diFurnace.strength;
this.mode = this.diFurnace.mode;
}
@Override
public void updateProgressBar(int i, int j) {
if(i == 0)
{
diFurnace.fuel = j;
}
if(i == 1)
{
diFurnace.strength = j;
}
if(i == 2)
{
diFurnace.mode = j;
}
}
}

View File

@ -14,10 +14,8 @@ import net.minecraft.item.ItemStack;
public class ContainerMachineSiren extends Container { public class ContainerMachineSiren extends Container {
private TileEntityMachineSiren diFurnace; private TileEntityMachineSiren diFurnace;
private int afterburner;
public ContainerMachineSiren(InventoryPlayer invPlayer, TileEntityMachineSiren tedf) { public ContainerMachineSiren(InventoryPlayer invPlayer, TileEntityMachineSiren tedf) {
afterburner = 0;
diFurnace = tedf; diFurnace = tedf;

View File

@ -0,0 +1,77 @@
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.container.ContainerMachineRadGen;
import com.hbm.inventory.container.ContainerMachineSiren;
import com.hbm.items.tool.ItemCassette.TrackType;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.machine.TileEntityMachineRadGen;
import com.hbm.tileentity.machine.TileEntityMachineSiren;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
public class GUIMachineRadGen extends GuiInfoContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_radgen.png");
private TileEntityMachineRadGen radgen;
public GUIMachineRadGen(InventoryPlayer invPlayer, TileEntityMachineRadGen tedf) {
super(new ContainerMachineRadGen(invPlayer, tedf));
radgen = tedf;
this.xSize = 176;
this.ySize = 166;
}
@Override
public void drawScreen(int mouseX, int mouseY, float f) {
super.drawScreen(mouseX, mouseY, f);
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 35, guiTop + 69 - 52, 16, 52, new String[] { "Fuel: " + radgen.getFuelScaled(100) + "%" });
this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 143, guiTop + 69 - 52, 16, 52, radgen.power, radgen.maxPower);
}
@Override
protected void drawGuiContainerForegroundLayer(int i, int j) {
String name = this.radgen.hasCustomInventoryName() ? this.radgen.getInventoryName() : I18n.format(this.radgen.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);
int i = (int)radgen.getPowerScaled(52);
drawTexturedModalRect(guiLeft + 143, guiTop + 69 - i, 16, 218 - i, 16, i);
int j = radgen.getFuelScaled(52);
drawTexturedModalRect(guiLeft + 35, guiTop + 69 - j, 0, 218 - j, 16, j);
int k = radgen.mode;
if(k == 1)
drawTexturedModalRect(guiLeft + 106, guiTop + 16, 32, 166, 18, 18);
if(k == 2)
drawTexturedModalRect(guiLeft + 106, guiTop + 16, 32, 184, 18, 18);
int l = radgen.getStrengthScaled(12);
int sx = 140;
int sy = 166;
if(l > 0 && l < 7) {
sx = 176;
sy = (l - 1) * 36;
}
if(l > 6) {
sx = 212;
sy = (l - 7) * 36;
}
drawTexturedModalRect(guiLeft + 70, guiTop + 25, sx, sy, 36, 36);
}
}

View File

@ -660,6 +660,12 @@ public class ModItems {
public static Item gun_mp40_ammo; public static Item gun_mp40_ammo;
public static Item gun_uboinik; public static Item gun_uboinik;
public static Item gun_uboinik_ammo; public static Item gun_uboinik_ammo;
public static Item gun_lever_action;
public static Item gun_lever_action_dark;
public static Item gun_lever_action_ammo;
public static Item gun_bolt_action;
public static Item gun_bolt_action_green;
public static Item gun_bolt_action_ammo;
public static Item gun_xvl1456; public static Item gun_xvl1456;
public static Item gun_xvl1456_ammo; public static Item gun_xvl1456_ammo;
public static Item gun_osipr; public static Item gun_osipr;
@ -1002,6 +1008,8 @@ public class ModItems {
public static Item clip_bf; public static Item clip_bf;
public static Item clip_mp40; public static Item clip_mp40;
public static Item clip_uboinik; public static Item clip_uboinik;
public static Item clip_lever_action;
public static Item clip_bolt_action;
public static Item clip_osipr; public static Item clip_osipr;
public static Item clip_immolator; public static Item clip_immolator;
public static Item clip_cryolator; public static Item clip_cryolator;
@ -1009,6 +1017,8 @@ public class ModItems {
public static Item clip_xvl1456; public static Item clip_xvl1456;
public static Item clip_emp; public static Item clip_emp;
public static Item ammo_container;
public static Item igniter; public static Item igniter;
public static Item detonator; public static Item detonator;
public static Item crate_caller; public static Item crate_caller;
@ -1023,6 +1033,7 @@ public class ModItems {
public static Item turret_rocket_ammo; public static Item turret_rocket_ammo;
public static Item turret_flamer_ammo; public static Item turret_flamer_ammo;
public static Item turret_tau_ammo; public static Item turret_tau_ammo;
public static Item turret_spitfire_ammo;
public static Item bucket_mud; public static Item bucket_mud;
public static Item bucket_acid; public static Item bucket_acid;
@ -1719,6 +1730,12 @@ public class ModItems {
gun_mp40 = new GunSMG().setUnlocalizedName("gun_mp40").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_mp40"); gun_mp40 = new GunSMG().setUnlocalizedName("gun_mp40").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_mp40");
gun_uboinik_ammo = new Item().setUnlocalizedName("gun_uboinik_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_uboinik_ammo"); gun_uboinik_ammo = new Item().setUnlocalizedName("gun_uboinik_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_uboinik_ammo");
gun_uboinik = new GunShotgun().setUnlocalizedName("gun_uboinik").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_uboinik"); gun_uboinik = new GunShotgun().setUnlocalizedName("gun_uboinik").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_uboinik");
gun_lever_action_ammo = new Item().setUnlocalizedName("gun_lever_action_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_lever_action_ammo");
gun_lever_action = new GunLeverAction().setUnlocalizedName("gun_lever_action").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_lever_action");
gun_lever_action_dark = new GunLeverAction().setUnlocalizedName("gun_lever_action_dark").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_lever_action_dark");
gun_bolt_action_ammo = new Item().setUnlocalizedName("gun_bolt_action_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_bolt_action_ammo");
gun_bolt_action = new GunBoltAction().setUnlocalizedName("gun_bolt_action").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_bolt_action");
gun_bolt_action_green = new GunBoltAction().setUnlocalizedName("gun_bolt_action_green").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_bolt_action_green");
gun_xvl1456_ammo = new Item().setUnlocalizedName("gun_xvl1456_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_xvl1456_ammo"); gun_xvl1456_ammo = new Item().setUnlocalizedName("gun_xvl1456_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_xvl1456_ammo");
gun_xvl1456 = new GunXVL1456().setUnlocalizedName("gun_xvl1456").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_xvl1456"); gun_xvl1456 = new GunXVL1456().setUnlocalizedName("gun_xvl1456").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_xvl1456");
gun_osipr_ammo = new Item().setUnlocalizedName("gun_osipr_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_osipr_ammo"); gun_osipr_ammo = new Item().setUnlocalizedName("gun_osipr_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_osipr_ammo");
@ -1918,6 +1935,8 @@ public class ModItems {
clip_bf = new ItemClip().setUnlocalizedName("clip_bf").setCreativeTab(null).setTextureName(RefStrings.MODID + ":clip_bf"); clip_bf = new ItemClip().setUnlocalizedName("clip_bf").setCreativeTab(null).setTextureName(RefStrings.MODID + ":clip_bf");
clip_mp40 = new ItemClip().setUnlocalizedName("clip_mp40").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_mp40"); clip_mp40 = new ItemClip().setUnlocalizedName("clip_mp40").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_mp40");
clip_uboinik = new ItemClip().setUnlocalizedName("clip_uboinik").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_uboinik"); clip_uboinik = new ItemClip().setUnlocalizedName("clip_uboinik").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_uboinik");
clip_lever_action = new ItemClip().setUnlocalizedName("clip_lever_action").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_lever_action");
clip_bolt_action = new ItemClip().setUnlocalizedName("clip_bolt_action").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_bolt_action");
clip_osipr = new ItemClip().setUnlocalizedName("clip_osipr").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_osipr"); clip_osipr = new ItemClip().setUnlocalizedName("clip_osipr").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_osipr");
clip_immolator = new ItemClip().setUnlocalizedName("clip_immolator").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_immolator"); clip_immolator = new ItemClip().setUnlocalizedName("clip_immolator").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_immolator");
clip_cryolator = new ItemClip().setUnlocalizedName("clip_cryolator").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_cryolator"); clip_cryolator = new ItemClip().setUnlocalizedName("clip_cryolator").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_cryolator");
@ -1925,8 +1944,10 @@ public class ModItems {
clip_xvl1456 = new ItemClip().setUnlocalizedName("clip_xvl1456").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_xvl1456"); clip_xvl1456 = new ItemClip().setUnlocalizedName("clip_xvl1456").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_xvl1456");
clip_emp = new ItemClip().setUnlocalizedName("clip_emp").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_emp"); clip_emp = new ItemClip().setUnlocalizedName("clip_emp").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_emp");
ingot_euphemium = new ItemAntiCheat().setUnlocalizedName("ingot_euphemium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_euphemium"); ammo_container = new ItemClip().setUnlocalizedName("ammo_container").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":ammo_container");
nugget_euphemium = new ItemAntiCheat().setUnlocalizedName("nugget_euphemium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_euphemium");
ingot_euphemium = new ItemCustomLore().setUnlocalizedName("ingot_euphemium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_euphemium");
nugget_euphemium = new ItemCustomLore().setUnlocalizedName("nugget_euphemium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_euphemium");
rod_quad_euphemium = new ItemCustomLore().setUnlocalizedName("rod_quad_euphemium").setCreativeTab(MainRegistry.tabParts).setMaxStackSize(1).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_euphemium"); rod_quad_euphemium = new ItemCustomLore().setUnlocalizedName("rod_quad_euphemium").setCreativeTab(MainRegistry.tabParts).setMaxStackSize(1).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_euphemium");
watch = new ItemCustomLore().setUnlocalizedName("watch").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":watch"); watch = new ItemCustomLore().setUnlocalizedName("watch").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":watch");
apple_euphemium = new ItemAppleEuphemium(20, 100, false).setUnlocalizedName("apple_euphemium").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":apple_euphemium"); apple_euphemium = new ItemAppleEuphemium(20, 100, false).setUnlocalizedName("apple_euphemium").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":apple_euphemium");
@ -1949,6 +1970,7 @@ public class ModItems {
turret_rocket_ammo = new ItemTurretAmmo(ModBlocks.turret_rocket, 8).setUnlocalizedName("turret_rocket_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_rocket_ammo"); turret_rocket_ammo = new ItemTurretAmmo(ModBlocks.turret_rocket, 8).setUnlocalizedName("turret_rocket_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_rocket_ammo");
turret_flamer_ammo = new ItemTurretAmmo(ModBlocks.turret_flamer, 200).setUnlocalizedName("turret_flamer_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_flamer_ammo"); turret_flamer_ammo = new ItemTurretAmmo(ModBlocks.turret_flamer, 200).setUnlocalizedName("turret_flamer_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_flamer_ammo");
turret_tau_ammo = new ItemTurretAmmo(ModBlocks.turret_tau, 100).setUnlocalizedName("turret_tau_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_tau_ammo"); turret_tau_ammo = new ItemTurretAmmo(ModBlocks.turret_tau, 100).setUnlocalizedName("turret_tau_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_tau_ammo");
turret_spitfire_ammo = new ItemTurretAmmo(ModBlocks.turret_spitfire, 2).setUnlocalizedName("turret_spitfire_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_spitfire_ammo");
template_folder = new ItemTemplateFolder().setUnlocalizedName("template_folder").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":template_folder"); template_folder = new ItemTemplateFolder().setUnlocalizedName("template_folder").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":template_folder");
assembly_template = new ItemAssemblyTemplate().setUnlocalizedName("assembly_template").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":assembly_template"); assembly_template = new ItemAssemblyTemplate().setUnlocalizedName("assembly_template").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":assembly_template");
@ -1963,10 +1985,10 @@ public class ModItems {
fluid_barrel_infinite = new Item().setUnlocalizedName("fluid_barrel_infinite").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":fluid_barrel_infinite"); fluid_barrel_infinite = new Item().setUnlocalizedName("fluid_barrel_infinite").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":fluid_barrel_infinite");
siren_track = new ItemCassette().setUnlocalizedName("siren_track").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":cassette"); siren_track = new ItemCassette().setUnlocalizedName("siren_track").setMaxStackSize(1).setCreativeTab(MainRegistry.tabMachine).setTextureName(RefStrings.MODID + ":cassette");
euphemium_helmet = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 0).setUnlocalizedName("astatine_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_helmet"); euphemium_helmet = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 0).setUnlocalizedName("euphemium_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_helmet");
euphemium_plate = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 1).setUnlocalizedName("astatine_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_plate"); euphemium_plate = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 1).setUnlocalizedName("euphemium_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_plate");
euphemium_legs = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 2).setUnlocalizedName("astatine_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_legs"); euphemium_legs = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 2).setUnlocalizedName("euphemium_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_legs");
euphemium_boots = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 3).setUnlocalizedName("astatine_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_boots"); euphemium_boots = new ArmorEuphemium(MainRegistry.enumArmorMaterialEuphemium, 6, 3).setUnlocalizedName("euphemium_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":euphemium_boots");
goggles = new ArmorModel(ArmorMaterial.IRON, 7, 0).setUnlocalizedName("goggles").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":goggles"); goggles = new ArmorModel(ArmorMaterial.IRON, 7, 0).setUnlocalizedName("goggles").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":goggles");
gas_mask = new ArmorModel(ArmorMaterial.IRON, 7, 0).setUnlocalizedName("gas_mask").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":gas_mask"); gas_mask = new ArmorModel(ArmorMaterial.IRON, 7, 0).setUnlocalizedName("gas_mask").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":gas_mask");
@ -2853,6 +2875,8 @@ public class ModItems {
GameRegistry.registerItem(rod_dual_schrabidium_fuel_depleted, rod_dual_schrabidium_fuel_depleted.getUnlocalizedName()); GameRegistry.registerItem(rod_dual_schrabidium_fuel_depleted, rod_dual_schrabidium_fuel_depleted.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_schrabidium_fuel_depleted, rod_quad_schrabidium_fuel_depleted.getUnlocalizedName()); GameRegistry.registerItem(rod_quad_schrabidium_fuel_depleted, rod_quad_schrabidium_fuel_depleted.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_euphemium, rod_quad_euphemium.getUnlocalizedName());
GameRegistry.registerItem(rod_waste, rod_waste.getUnlocalizedName()); GameRegistry.registerItem(rod_waste, rod_waste.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_waste, rod_dual_waste.getUnlocalizedName()); GameRegistry.registerItem(rod_dual_waste, rod_dual_waste.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_waste, rod_quad_waste.getUnlocalizedName()); GameRegistry.registerItem(rod_quad_waste, rod_quad_waste.getUnlocalizedName());
@ -2911,6 +2935,10 @@ public class ModItems {
GameRegistry.registerItem(gun_bf, gun_bf.getUnlocalizedName()); GameRegistry.registerItem(gun_bf, gun_bf.getUnlocalizedName());
GameRegistry.registerItem(gun_mp40, gun_mp40.getUnlocalizedName()); GameRegistry.registerItem(gun_mp40, gun_mp40.getUnlocalizedName());
GameRegistry.registerItem(gun_uboinik, gun_uboinik.getUnlocalizedName()); GameRegistry.registerItem(gun_uboinik, gun_uboinik.getUnlocalizedName());
GameRegistry.registerItem(gun_lever_action, gun_lever_action.getUnlocalizedName());
GameRegistry.registerItem(gun_lever_action_dark, gun_lever_action_dark.getUnlocalizedName());
GameRegistry.registerItem(gun_bolt_action, gun_bolt_action.getUnlocalizedName());
GameRegistry.registerItem(gun_bolt_action_green, gun_bolt_action_green.getUnlocalizedName());
GameRegistry.registerItem(gun_xvl1456, gun_xvl1456.getUnlocalizedName()); GameRegistry.registerItem(gun_xvl1456, gun_xvl1456.getUnlocalizedName());
GameRegistry.registerItem(gun_osipr, gun_osipr.getUnlocalizedName()); GameRegistry.registerItem(gun_osipr, gun_osipr.getUnlocalizedName());
GameRegistry.registerItem(gun_immolator, gun_immolator.getUnlocalizedName()); GameRegistry.registerItem(gun_immolator, gun_immolator.getUnlocalizedName());
@ -2946,6 +2974,8 @@ public class ModItems {
GameRegistry.registerItem(gun_bf_ammo, gun_bf_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_bf_ammo, gun_bf_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_mp40_ammo, gun_mp40_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_mp40_ammo, gun_mp40_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_uboinik_ammo, gun_uboinik_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_uboinik_ammo, gun_uboinik_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_lever_action_ammo, gun_lever_action_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_bolt_action_ammo, gun_bolt_action_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_xvl1456_ammo, gun_xvl1456_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_xvl1456_ammo, gun_xvl1456_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_osipr_ammo, gun_osipr_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_osipr_ammo, gun_osipr_ammo.getUnlocalizedName());
GameRegistry.registerItem(gun_osipr_ammo2, gun_osipr_ammo2.getUnlocalizedName()); GameRegistry.registerItem(gun_osipr_ammo2, gun_osipr_ammo2.getUnlocalizedName());
@ -2965,6 +2995,7 @@ public class ModItems {
GameRegistry.registerItem(turret_rocket_ammo, turret_rocket_ammo.getUnlocalizedName()); GameRegistry.registerItem(turret_rocket_ammo, turret_rocket_ammo.getUnlocalizedName());
GameRegistry.registerItem(turret_flamer_ammo, turret_flamer_ammo.getUnlocalizedName()); GameRegistry.registerItem(turret_flamer_ammo, turret_flamer_ammo.getUnlocalizedName());
GameRegistry.registerItem(turret_tau_ammo, turret_tau_ammo.getUnlocalizedName()); GameRegistry.registerItem(turret_tau_ammo, turret_tau_ammo.getUnlocalizedName());
GameRegistry.registerItem(turret_spitfire_ammo, turret_spitfire_ammo.getUnlocalizedName());
//-C-l-i-p-s- Magazines //-C-l-i-p-s- Magazines
GameRegistry.registerItem(clip_revolver_iron, clip_revolver_iron.getUnlocalizedName()); GameRegistry.registerItem(clip_revolver_iron, clip_revolver_iron.getUnlocalizedName());
@ -2981,6 +3012,8 @@ public class ModItems {
GameRegistry.registerItem(clip_bf, clip_bf.getUnlocalizedName()); GameRegistry.registerItem(clip_bf, clip_bf.getUnlocalizedName());
GameRegistry.registerItem(clip_mp40, clip_mp40.getUnlocalizedName()); GameRegistry.registerItem(clip_mp40, clip_mp40.getUnlocalizedName());
GameRegistry.registerItem(clip_uboinik, clip_uboinik.getUnlocalizedName()); GameRegistry.registerItem(clip_uboinik, clip_uboinik.getUnlocalizedName());
GameRegistry.registerItem(clip_lever_action, clip_lever_action.getUnlocalizedName());
GameRegistry.registerItem(clip_bolt_action, clip_bolt_action.getUnlocalizedName());
GameRegistry.registerItem(clip_xvl1456, clip_xvl1456.getUnlocalizedName()); GameRegistry.registerItem(clip_xvl1456, clip_xvl1456.getUnlocalizedName());
GameRegistry.registerItem(clip_osipr, clip_osipr.getUnlocalizedName()); GameRegistry.registerItem(clip_osipr, clip_osipr.getUnlocalizedName());
GameRegistry.registerItem(clip_immolator, clip_immolator.getUnlocalizedName()); GameRegistry.registerItem(clip_immolator, clip_immolator.getUnlocalizedName());
@ -2988,6 +3021,8 @@ public class ModItems {
GameRegistry.registerItem(clip_mp, clip_mp.getUnlocalizedName()); GameRegistry.registerItem(clip_mp, clip_mp.getUnlocalizedName());
GameRegistry.registerItem(clip_emp, clip_emp.getUnlocalizedName()); GameRegistry.registerItem(clip_emp, clip_emp.getUnlocalizedName());
GameRegistry.registerItem(ammo_container, ammo_container.getUnlocalizedName());
//Grenades //Grenades
GameRegistry.registerItem(grenade_generic, grenade_generic.getUnlocalizedName()); GameRegistry.registerItem(grenade_generic, grenade_generic.getUnlocalizedName());
GameRegistry.registerItem(grenade_strong, grenade_strong.getUnlocalizedName()); GameRegistry.registerItem(grenade_strong, grenade_strong.getUnlocalizedName());
@ -3222,7 +3257,6 @@ public class ModItems {
GameRegistry.registerItem(schrabidium_plate, schrabidium_plate.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_plate, schrabidium_plate.getUnlocalizedName());
GameRegistry.registerItem(schrabidium_legs, schrabidium_legs.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_legs, schrabidium_legs.getUnlocalizedName());
GameRegistry.registerItem(schrabidium_boots, schrabidium_boots.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_boots, schrabidium_boots.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_euphemium, rod_quad_euphemium.getUnlocalizedName());
GameRegistry.registerItem(euphemium_helmet, euphemium_helmet.getUnlocalizedName()); GameRegistry.registerItem(euphemium_helmet, euphemium_helmet.getUnlocalizedName());
GameRegistry.registerItem(euphemium_plate, euphemium_plate.getUnlocalizedName()); GameRegistry.registerItem(euphemium_plate, euphemium_plate.getUnlocalizedName());
GameRegistry.registerItem(euphemium_legs, euphemium_legs.getUnlocalizedName()); GameRegistry.registerItem(euphemium_legs, euphemium_legs.getUnlocalizedName());

View File

@ -247,6 +247,7 @@ public class ItemStarterKit extends Item {
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_tau, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_tau, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_schrabidium, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_schrabidium, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_lemon, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_lemon, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_gascan, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_mk2, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_mk2, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_aschrab, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_aschrab, 16));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_nuke, 16)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.grenade_nuke, 16));
@ -311,6 +312,7 @@ public class ItemStarterKit extends Item {
player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_endo, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_endo, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_exo, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_exo, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_doomsday, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_doomsday, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.missile_taint, 1));
} }
if(this == ModItems.t45_kit) if(this == ModItems.t45_kit)
@ -319,11 +321,13 @@ public class ItemStarterKit extends Item {
player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_plate, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_plate, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_legs, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_legs, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_boots, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.t45_boots, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.fusion_core, 1)); player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.fusion_core, 1)); player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.fusion_core, 1)); player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.fusion_core, 1)); player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.fusion_core, 1)); player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
player.inventory.addItemStackToInventory(ItemBattery.getFullBattery(ModItems.fusion_core));
} }
if(this == ModItems.stealth_boy) if(this == ModItems.stealth_boy)

View File

@ -43,15 +43,12 @@ public class ItemDesingatorRange extends Item {
if(!(world.getBlock(x, y, z) instanceof LaunchPad)) if(!(world.getBlock(x, y, z) instanceof LaunchPad))
{ {
if(stack.stackTagCompound != null) if(stack.stackTagCompound == null)
{
stack.stackTagCompound.setInteger("xCoord", x);
stack.stackTagCompound.setInteger("zCoord", z);
} else {
stack.stackTagCompound = new NBTTagCompound(); stack.stackTagCompound = new NBTTagCompound();
stack.stackTagCompound.setInteger("xCoord", x);
stack.stackTagCompound.setInteger("zCoord", y); stack.stackTagCompound.setInteger("xCoord", x);
} stack.stackTagCompound.setInteger("zCoord", z);
if(world.isRemote) if(world.isRemote)
{ {
player.addChatMessage(new ChatComponentText("Position set to X:" + x + ", Z:" + z)); player.addChatMessage(new ChatComponentText("Position set to X:" + x + ", Z:" + z));

View File

@ -0,0 +1,263 @@
package com.hbm.items.weapon;
import java.util.List;
import java.util.Random;
import com.google.common.collect.Multimap;
import com.hbm.entity.projectile.EntityBullet;
import com.hbm.items.ModItems;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.Entity;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.player.ArrowLooseEvent;
import net.minecraftforge.event.entity.player.ArrowNockEvent;
public class GunBoltAction extends Item {
Random rand = new Random();
public int dmgMin = 16;
public int dmgMax = 28;
public GunBoltAction() {
this.maxStackSize = 1;
if(this == ModItems.gun_bolt_action)
this.setMaxDamage(750);
if(this == ModItems.gun_bolt_action_green)
this.setMaxDamage(500);
}
/**
* called when the player releases the use item button. Args: itemstack,
* world, entityplayer, itemInUseCount
*/
@Override
public void onPlayerStoppedUsing(ItemStack p_77615_1_, World p_77615_2_, EntityPlayer p_77615_3_, int p_77615_4_) {
int j = this.getMaxItemUseDuration(p_77615_1_) - p_77615_4_;
ArrowLooseEvent event = new ArrowLooseEvent(p_77615_3_, p_77615_1_, j);
MinecraftForge.EVENT_BUS.post(event);
j = event.charge;
boolean flag = p_77615_3_.capabilities.isCreativeMode
|| EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, p_77615_1_) > 0;
if (flag || p_77615_3_.inventory.hasItem(ModItems.gun_bolt_action_ammo)) {
float f = j / 20.0F;
f = (f * f + f * 2.0F) / 3.0F;
if (j < 10.0D) {
return;
}
if (j > 10.0F) {
f = 10.0F;
}
EntityBullet entityarrow1;
entityarrow1 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow1.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
p_77615_1_.damageItem(1, p_77615_3_);
p_77615_2_.playSoundAtEntity(p_77615_3_, "hbm:weapon.revolverShoot", 5.0F, 0.75F);
if (flag) { } else {
p_77615_3_.inventory.consumeInventoryItem(ModItems.gun_lever_action_ammo);
}
if (!p_77615_2_.isRemote) {
p_77615_2_.spawnEntityInWorld(entityarrow1);
}
setAnim(p_77615_1_, 1);
}
}
@Override
public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean b) {
int j = getAnim(stack);
if(j > 0) {
if(j < 30)
setAnim(stack, j + 1);
else
setAnim(stack, 0);
if(j == 15)
world.playSoundAtEntity(entity, "hbm:weapon.leverActionReload", 2F, 0.85F);
}
}
@Override
public ItemStack onEaten(ItemStack p_77654_1_, World p_77654_2_, EntityPlayer p_77654_3_) {
return p_77654_1_;
}
/**
* How long it takes to use or consume an item
*/
@Override
public int getMaxItemUseDuration(ItemStack p_77626_1_) {
return 72000;
}
/**
* returns the action that specifies what animation to play when the items
* is being used
*/
@Override
public EnumAction getItemUseAction(ItemStack p_77661_1_) {
return EnumAction.bow;
}
/**
* Called whenever this item is equipped and the right mouse button is
* pressed. Args: itemStack, world, entityPlayer
*/
@Override
public ItemStack onItemRightClick(ItemStack p_77659_1_, World p_77659_2_, EntityPlayer p_77659_3_) {
ArrowNockEvent event = new ArrowNockEvent(p_77659_3_, p_77659_1_);
MinecraftForge.EVENT_BUS.post(event);
if (p_77659_3_.capabilities.isCreativeMode || p_77659_3_.inventory.hasItem(ModItems.gun_lever_action_ammo)) {
if(this.getAnim(p_77659_1_) == 0)
p_77659_3_.setItemInUse(p_77659_1_, this.getMaxItemUseDuration(p_77659_1_));
}
return p_77659_1_;
}
/**
* Return the enchantability factor of the item, most of the time is based
* on material.
*/
@Override
public int getItemEnchantability() {
return 1;
}
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
if(this == ModItems.gun_bolt_action) {
list.add("-Star in a movie");
list.add("-Have a laugh with a horse");
list.add("-Ride a tipping train");
list.add("-Lose friend to native americans");
}
if(this == ModItems.gun_bolt_action_green) {
list.add("Floppy disks and pink, flashy orbs.");
}
list.add("");
list.add("Ammo: 12x74 Slug");
list.add("Damage: 16 - 28");
}
@Override
public Multimap getItemAttributeModifiers() {
Multimap multimap = super.getItemAttributeModifiers();
multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(),
new AttributeModifier(field_111210_e, "Weapon modifier", 3.5, 0));
return multimap;
}
private static int getAnim(ItemStack stack) {
if(stack.stackTagCompound == null) {
stack.stackTagCompound = new NBTTagCompound();
return 0;
}
return stack.stackTagCompound.getInteger("animation");
}
private static void setAnim(ItemStack stack, int i) {
if(stack.stackTagCompound == null) {
stack.stackTagCompound = new NBTTagCompound();
}
stack.stackTagCompound.setInteger("animation", i);
}
public static float getRotationFromAnim(ItemStack stack) {
float rad = 0.0174533F;
rad *= 7.5F;
int i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i < 10)
return rad * i;
else
return (rad * 10) - (rad * (i - 10));
}
public static float getLevRotationFromAnim(ItemStack stack) {
float rad = 0.0174533F;
rad *= 10F;
int i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i < 6)
return rad * i;
if(i > 14)
return rad * (5 - (i - 15));
return rad * 5;
}
public static float getOffsetFromAnim(ItemStack stack) {
float i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i < 10)
return i / 10;
else
return 2 - (i / 10);
}
public static float getTransFromAnim(ItemStack stack) {
float i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i > 4 && i < 10)
return (i - 5) * 0.1F;
if(i > 9 && i < 15)
return (10 * 0.1F) - ((i - 5) * 0.1F);
return 0;
}
@Override
public EnumRarity getRarity(ItemStack p_77613_1_) {
return EnumRarity.uncommon;
}
}

View File

@ -98,9 +98,9 @@ public class GunDampfmaschine extends Item {
@Override @Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
list.add("Sometimes, to do the right thing,"); list.add("Sometimes, to do whats right,");
list.add("you need to be the villain of"); list.add("you have to become the villain of");
list.add("the pl-I mean me too, thanks."); list.add("the pi-I mean me too, thanks.");
list.add(""); list.add("");
list.add("oh sorry how did this get here i'm not good with computer can somebody tell me how i can get out of here oh fiddlesticks this is not good oh no please can anybody hear me i am afraid please for the love of god somebody get me out of here"); list.add("oh sorry how did this get here i'm not good with computer can somebody tell me how i can get out of here oh fiddlesticks this is not good oh no please can anybody hear me i am afraid please for the love of god somebody get me out of here");
list.add(""); list.add("");

View File

@ -0,0 +1,294 @@
package com.hbm.items.weapon;
import java.util.List;
import java.util.Random;
import com.google.common.collect.Multimap;
import com.hbm.entity.projectile.EntityBullet;
import com.hbm.items.ModItems;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.Entity;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.player.ArrowLooseEvent;
import net.minecraftforge.event.entity.player.ArrowNockEvent;
public class GunLeverAction extends Item {
Random rand = new Random();
public int dmgMin = 8;
public int dmgMax = 16;
public GunLeverAction() {
this.maxStackSize = 1;
if(this == ModItems.gun_lever_action)
this.setMaxDamage(500);
if(this == ModItems.gun_lever_action_dark)
this.setMaxDamage(750);
}
/**
* called when the player releases the use item button. Args: itemstack,
* world, entityplayer, itemInUseCount
*/
@Override
public void onPlayerStoppedUsing(ItemStack p_77615_1_, World p_77615_2_, EntityPlayer p_77615_3_, int p_77615_4_) {
int j = this.getMaxItemUseDuration(p_77615_1_) - p_77615_4_;
ArrowLooseEvent event = new ArrowLooseEvent(p_77615_3_, p_77615_1_, j);
MinecraftForge.EVENT_BUS.post(event);
j = event.charge;
boolean flag = p_77615_3_.capabilities.isCreativeMode
|| EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, p_77615_1_) > 0;
if (flag || p_77615_3_.inventory.hasItem(ModItems.gun_lever_action_ammo)) {
float f = j / 20.0F;
f = (f * f + f * 2.0F) / 3.0F;
if (j < 10.0D) {
return;
}
if (j > 10.0F) {
f = 10.0F;
}
EntityBullet entityarrow1;
EntityBullet entityarrow2;
EntityBullet entityarrow3;
EntityBullet entityarrow4;
EntityBullet entityarrow5;
EntityBullet entityarrow6;
EntityBullet entityarrow7;
EntityBullet entityarrow8;
EntityBullet entityarrow9;
EntityBullet entityarrow10;
if (!p_77615_3_.isSneaking()) {
entityarrow1 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow1.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow2 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow2.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow3 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow3.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow4 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow4.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow5 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow5.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow6 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow6.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow7 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow7.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow8 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow8.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow9 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow9.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow10 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F);
entityarrow10.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
} else {
entityarrow1 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow1.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow2 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow2.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow3 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow3.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow4 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow4.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow5 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow5.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow6 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow6.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow7 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow7.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow8 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow8.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow9 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow9.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
entityarrow10 = new EntityBullet(p_77615_2_, p_77615_3_, 3.0F, dmgMin, dmgMax, false, false);
entityarrow10.setDamage(dmgMin + rand.nextInt(dmgMax - dmgMin));
}
p_77615_1_.damageItem(1, p_77615_3_);
p_77615_2_.playSoundAtEntity(p_77615_3_, "hbm:weapon.revolverShootAlt", 5.0F, 0.75F);
if (flag) { } else {
p_77615_3_.inventory.consumeInventoryItem(ModItems.gun_lever_action_ammo);
}
if (!p_77615_2_.isRemote) {
p_77615_2_.spawnEntityInWorld(entityarrow1);
p_77615_2_.spawnEntityInWorld(entityarrow2);
p_77615_2_.spawnEntityInWorld(entityarrow3);
p_77615_2_.spawnEntityInWorld(entityarrow4);
if (!p_77615_3_.isSneaking()) {
p_77615_2_.spawnEntityInWorld(entityarrow5);
p_77615_2_.spawnEntityInWorld(entityarrow6);
int i = rand.nextInt(5);
if(i >= 1)
p_77615_2_.spawnEntityInWorld(entityarrow7);
if(i >= 2)
p_77615_2_.spawnEntityInWorld(entityarrow8);
if(i >= 3)
p_77615_2_.spawnEntityInWorld(entityarrow9);
if(i >= 4)
p_77615_2_.spawnEntityInWorld(entityarrow10);
}
}
setAnim(p_77615_1_, 1);
}
}
@Override
public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean b) {
int j = getAnim(stack);
if(j > 0) {
if(j < 30)
setAnim(stack, j + 1);
else
setAnim(stack, 0);
if(j == 15)
world.playSoundAtEntity(entity, "hbm:weapon.leverActionReload", 2F, 0.85F);
}
}
@Override
public ItemStack onEaten(ItemStack p_77654_1_, World p_77654_2_, EntityPlayer p_77654_3_) {
return p_77654_1_;
}
/**
* How long it takes to use or consume an item
*/
@Override
public int getMaxItemUseDuration(ItemStack p_77626_1_) {
return 72000;
}
/**
* returns the action that specifies what animation to play when the items
* is being used
*/
@Override
public EnumAction getItemUseAction(ItemStack p_77661_1_) {
return EnumAction.bow;
}
/**
* Called whenever this item is equipped and the right mouse button is
* pressed. Args: itemStack, world, entityPlayer
*/
@Override
public ItemStack onItemRightClick(ItemStack p_77659_1_, World p_77659_2_, EntityPlayer p_77659_3_) {
ArrowNockEvent event = new ArrowNockEvent(p_77659_3_, p_77659_1_);
MinecraftForge.EVENT_BUS.post(event);
if (p_77659_3_.capabilities.isCreativeMode || p_77659_3_.inventory.hasItem(ModItems.gun_lever_action_ammo)) {
if(this.getAnim(p_77659_1_) == 0)
p_77659_3_.setItemInUse(p_77659_1_, this.getMaxItemUseDuration(p_77659_1_));
}
return p_77659_1_;
}
/**
* Return the enchantability factor of the item, most of the time is based
* on material.
*/
@Override
public int getItemEnchantability() {
return 1;
}
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
if(this == ModItems.gun_lever_action)
list.add("Universal head-to-spaghetti-sauce converter.");
if(this == ModItems.gun_lever_action_dark)
list.add("Blow your legs off!");
list.add("");
list.add("Ammo: 12x74 Buckshot");
list.add("Damage: 8 - 16");
list.add("Projectiles: 6 - 10");
}
@Override
public Multimap getItemAttributeModifiers() {
Multimap multimap = super.getItemAttributeModifiers();
multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(),
new AttributeModifier(field_111210_e, "Weapon modifier", 3.5, 0));
return multimap;
}
private static int getAnim(ItemStack stack) {
if(stack.stackTagCompound == null) {
stack.stackTagCompound = new NBTTagCompound();
return 0;
}
return stack.stackTagCompound.getInteger("animation");
}
private static void setAnim(ItemStack stack, int i) {
if(stack.stackTagCompound == null) {
stack.stackTagCompound = new NBTTagCompound();
}
stack.stackTagCompound.setInteger("animation", i);
}
public static float getRotationFromAnim(ItemStack stack) {
float rad = 0.0174533F;
rad *= 7.5F;
int i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i < 10)
return rad * i;
else
return (rad * 10) - (rad * (i - 10));
}
public static float getOffsetFromAnim(ItemStack stack) {
float i = getAnim(stack);
if(i < 10)
return 0;
i -= 10;
if(i < 10)
return i / 10;
else
return 2 - (i / 10);
}
}

View File

@ -213,6 +213,8 @@ public class GunRevolver extends Item {
} }
if (this == ModItems.gun_revolver_gold) { if (this == ModItems.gun_revolver_gold) {
list.add("GoldenEye would be proud!"); list.add("GoldenEye would be proud!");
list.add("(GoldenEye isn't a person but");
list.add("rather a satellite, taht's teh joek.");
list.add(""); list.add("");
list.add("Ammo: Golden Bullets"); list.add("Ammo: Golden Bullets");
list.add("Damage: 20 - 30"); list.add("Damage: 20 - 30");

View File

@ -30,7 +30,7 @@ public class GunShotgun extends Item {
this.maxStackSize = 1; this.maxStackSize = 1;
if (this == ModItems.gun_revolver) { if (this == ModItems.gun_uboinik) {
this.setMaxDamage(500); this.setMaxDamage(500);
} }
} }
@ -174,7 +174,7 @@ public class GunShotgun extends Item {
//list.add("POW! Haha!"); //list.add("POW! Haha!");
list.add("Abracadabra Tomanakara!"); list.add("Abracadabra Tomanakara!");
list.add(""); list.add("");
list.add("Ammo: Shotgun Shells"); list.add("Ammo: 12x70 Buckshot");
list.add("Damage: 3 - 7"); list.add("Damage: 3 - 7");
list.add("Projectiles: 6 - 12"); list.add("Projectiles: 6 - 12");
} }

View File

@ -128,6 +128,22 @@ public class ItemClip extends Item {
} }
} }
if(this == ModItems.clip_lever_action)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_lever_action_ammo, 24)))
{
//player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_lever_action_ammo, 24), false);
}
}
if(this == ModItems.clip_bolt_action)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_bolt_action_ammo, 24)))
{
//player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_bolt_action_ammo, 24), false);
}
}
if(this == ModItems.clip_mirv) if(this == ModItems.clip_mirv)
{ {
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mirv_ammo, 3))) if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mirv_ammo, 3)))
@ -184,6 +200,76 @@ public class ItemClip extends Item {
} }
} }
if(this == ModItems.ammo_container)
{
if(player.inventory.hasItem(ModItems.gun_revolver_iron))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_iron_ammo, 24));
if(player.inventory.hasItem(ModItems.gun_revolver))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_revolver_gold))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_gold_ammo, 4));
if(player.inventory.hasItem(ModItems.gun_revolver_lead))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_lead_ammo, 6));
if(player.inventory.hasItem(ModItems.gun_revolver_schrabidium))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_schrabidium_ammo, 2));
if(player.inventory.hasItem(ModItems.gun_revolver_cursed))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_cursed_ammo, 8));
if(player.inventory.hasItem(ModItems.gun_revolver_nightmare))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_nightmare_ammo, 6));
if(player.inventory.hasItem(ModItems.gun_revolver_nightmare2))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_nightmare2_ammo, 3));
if(player.inventory.hasItem(ModItems.gun_revolver_pip))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_pip_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_rpg))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_rpg_ammo, 3));
if(player.inventory.hasItem(ModItems.gun_fatman))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_fatman_ammo, 2));
if(player.inventory.hasItem(ModItems.gun_mirv))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mirv_ammo, 1));
if(player.inventory.hasItem(ModItems.gun_bf))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_bf_ammo, 1));
if(player.inventory.hasItem(ModItems.gun_mp40))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mp40_ammo, 32));
if(player.inventory.hasItem(ModItems.gun_uboinik))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_uboinik_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_lever_action))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_lever_action_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_lever_action_dark))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_lever_action_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_bolt_action))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_bolt_action_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_bolt_action_green))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_bolt_action_ammo, 12));
if(player.inventory.hasItem(ModItems.gun_xvl1456))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_xvl1456_ammo, 40));
if(player.inventory.hasItem(ModItems.gun_osipr)) {
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_osipr_ammo, 30));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_osipr_ammo2, 1));
}
if(player.inventory.hasItem(ModItems.gun_immolator))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_immolator_ammo, 40));
if(player.inventory.hasItem(ModItems.gun_cryolator))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_cryolator_ammo, 40));
if(player.inventory.hasItem(ModItems.gun_mp))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mp_ammo, 34));
if(player.inventory.hasItem(ModItems.gun_zomg))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.nugget_euphemium, 1));
if(player.inventory.hasItem(ModItems.gun_emp))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_emp_ammo, 8));
if(player.inventory.hasItem(ModItems.gun_revolver_inverted))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_ammo, 1));
if(player.inventory.hasItem(ModItems.gun_jack))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_jack_ammo, 3));
if(player.inventory.hasItem(ModItems.gun_spark))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_spark_ammo, 2));
if(player.inventory.hasItem(ModItems.gun_hp))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_hp_ammo, 6));
if(player.inventory.hasItem(ModItems.gun_euthanasia))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_euthanasia_ammo, 8));
if(player.inventory.hasItem(ModItems.gun_defabricator))
player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_defabricator_ammo, 6));
}
return stack; return stack;
} }

View File

@ -293,7 +293,8 @@ public class Library {
world.getBlock(x, y, z) == ModBlocks.dummy_port_turbofan || world.getBlock(x, y, z) == ModBlocks.dummy_port_turbofan ||
world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_limiter || world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_limiter ||
world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_emitter || world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_emitter ||
world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_base) world.getBlock(x, y, z) == ModBlocks.dummy_port_ams_base ||
world.getBlock(x, y, z) == ModBlocks.dummy_port_radgen)
{ {
return true; return true;
} }
@ -829,44 +830,44 @@ public class Library {
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 15; i++) for(int i = 0; i < 50; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 15; i++) for(int i = 0; i < 50; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 15; i++) for(int i = 0; i < 50; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell_2 && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell_2 && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 15; i++) for(int i = 0; i < 50; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell_4 && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_schrabidium_cell_4 && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 200; i++) for(int i = 0; i < 20000; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 200; i++) for(int i = 0; i < 20000; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark_cell_6 && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark_cell_6 && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;
((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1);
} else break; } else break;
for(int i = 0; i < 200; i++) for(int i = 0; i < 20000; i++)
if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark_cell_25 && ItemBattery.getCharge(slots[index]) > 0) if(power + 100 <= maxPower && slots[index] != null && slots[index].getItem() == ModItems.battery_spark_cell_25 && ItemBattery.getCharge(slots[index]) > 0)
{ {
power += 100; power += 100;

View File

@ -3,7 +3,7 @@ package com.hbm.lib;
public class RefStrings { public class RefStrings {
public static final String MODID = "hbm"; public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod"; public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (Selenium-Luna-X02)"; public static final String VERSION = "1.0.27 BETA (6_24-VT-X04)";
//HBM's Beta Naming Convention: //HBM's Beta Naming Convention:
//V T (X-Y-Z) //V T (X-Y-Z)
//V -> next release version //V -> next release version

Some files were not shown because too many files have changed in this diff Show More