mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-10 04:27:42 +00:00
More CFlaahgra imps, initial CTryclops imps
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
namespace urde {
|
||||
|
||||
enum class EVulnerability { Weak, Normal, Deflect, Immune, PassThrough, DirectWeak, DirectNormal, DirectImmune };
|
||||
enum class EDeflectType { None, One, Two, Three, Four };
|
||||
|
||||
class CDamageVulnerability {
|
||||
EVulnerability x0_power;
|
||||
@@ -34,9 +35,12 @@ class CDamageVulnerability {
|
||||
EVulnerability x54_wavebuster;
|
||||
EVulnerability x58_flamethrower;
|
||||
|
||||
EVulnerability x5c_deflected;
|
||||
EVulnerability x60_chargedDeflected;
|
||||
EVulnerability x64_comboDeflected;
|
||||
EDeflectType x5c_deflected;
|
||||
/* The following two values are hard coded to bizarre values on purpose to more closely reflect the behavior seen
|
||||
* in-game.
|
||||
*/
|
||||
EDeflectType x60_chargedDeflected = EDeflectType(6);
|
||||
EDeflectType x64_comboDeflected = EDeflectType(0x3e666666);
|
||||
|
||||
void ConstructNew(CInputStream& in, int propCount);
|
||||
|
||||
@@ -47,15 +51,19 @@ class CDamageVulnerability {
|
||||
|
||||
public:
|
||||
CDamageVulnerability(CInputStream& in);
|
||||
CDamageVulnerability(EVulnerability power, EVulnerability ice, EVulnerability wave, EVulnerability plasma,
|
||||
EVulnerability bomb, EVulnerability powerBomb, EVulnerability missile, EVulnerability boostBall,
|
||||
EVulnerability phazon, EVulnerability enemyWp1, EVulnerability wnemyWp2, EVulnerability enemyWp3,
|
||||
EVulnerability enemyWp4, EVulnerability v1, EVulnerability v2, EDeflectType deflectType);
|
||||
CDamageVulnerability(EVulnerability power, EVulnerability ice, EVulnerability wave, EVulnerability plasma,
|
||||
EVulnerability bomb, EVulnerability powerBomb, EVulnerability missile, EVulnerability boostBall,
|
||||
EVulnerability phazon, EVulnerability enemyWp1, EVulnerability enemyWp2, EVulnerability enemyWp3,
|
||||
EVulnerability enemyWp4, EVulnerability v1, EVulnerability v2, EVulnerability chargedPower,
|
||||
EVulnerability chargedIce, EVulnerability chargedWave, EVulnerability chargedPlasma,
|
||||
EVulnerability superMissile, EVulnerability iceSpreader, EVulnerability waveBuster,
|
||||
EVulnerability flameThrower, EVulnerability deflected);
|
||||
EVulnerability flameThrower, EDeflectType deflected);
|
||||
|
||||
EVulnerability GetDeflectionType(const CWeaponMode& mode) const;
|
||||
EDeflectType GetDeflectionType(const CWeaponMode& mode) const;
|
||||
|
||||
bool WeaponHurts(const CWeaponMode&, bool ignoreDirect) const;
|
||||
bool WeaponHits(const CWeaponMode& mode, bool checkDirect) const;
|
||||
|
||||
Reference in New Issue
Block a user