prime/include/MetroidPrime/CDamageVulnerability.hpp

47 lines
954 B
C++
Raw Normal View History

#ifndef _CDAMAGEVULNERABILITY_HPP
#define _CDAMAGEVULNERABILITY_HPP
#include "types.h"
enum EVulnerability {
kVN_Weak,
kVN_Normal,
kVN_Deflect,
kVN_Immune,
kVN_PassThrough,
kVN_DirectWeak,
kVN_DirectNormal,
kVN_DirectImmune,
};
enum EDeflectionType {
kDT_None,
kDT_One,
kDT_Two,
kDT_Three,
kDT_Four,
};
class CInputStream;
class CDamageVulnerability {
public:
CDamageVulnerability(CInputStream& in);
CDamageVulnerability(EVulnerability, EVulnerability, EVulnerability, EVulnerability,
EVulnerability, EVulnerability, EVulnerability, EVulnerability,
EVulnerability, EVulnerability, EDeflectionType);
// TODO
private:
EVulnerability x0_normal[15];
EVulnerability x3c_charged[4];
EVulnerability x4c_combo[4];
EDeflectionType x5c_deflect;
EDeflectionType x60_chargedDeflect;
EDeflectionType x64_comboDeflect;
};
CHECK_SIZEOF(CDamageVulnerability, 0x68)
#endif