mnalis / ironseed_fpc

Iron Seed is a science-fiction DOS game from 1994, which was both developed and published by Channel 7. Gameplay is real-time, featuring trading, diplomacy, and strategy. This version has been changed to make it possible to compile it with the freepascal compiler under Linux.
GNU General Public License v3.0
17 stars 0 forks source link

combat: enemy still fires even if their weapons subsystem is destroyed #61

Closed mnalis closed 4 years ago

mnalis commented 4 years ago

they seem to impact 0 damage, but I seem to see that some slight damage still happens? doublecheck. Also, it make a firing sound when nothing was really fired, which should be fixed

impact: attacker1 weapon72 for dmgtype1=10% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=1, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype2=20% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=2, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype3=40% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=3, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype4=30% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=4, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype1=10% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=1, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype2=20% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=2, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype3=40% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=3, damage=0) reflective hull damage sets shieldlevel to 0 impact: attacker1 weapon72 for dmgtype4=30% and its damage dealing=5GJ; THEIR CURRENT weapon subsystem damage=100% ; their attack total i=0GJ takedamage(type=4, damage=0) reflective hull damage sets shieldlevel to 0

mnalis commented 4 years ago

combat.pas:takedamage() does if d<1 then d:=1; so that explains some small damage taken...

mnalis commented 4 years ago

also, if battery power=0, it should not be able to fire?