Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
48 lines
1.0 KiB
C++
48 lines
1.0 KiB
C++
|
|
#ifndef DAMAGEDISPATCH_HPP
|
|
#define DAMAGEDISPATCH_HPP
|
|
|
|
#pragma once
|
|
|
|
|
|
#define INTERFACE_DamageDispatch(post) \
|
|
public: \
|
|
virtual void InflictCriticalHit(MWInternalDamageObject& internal_damage_object) ##post \
|
|
virtual Scalar TakeDamage(MWInternalDamageObject& internal_damage_object, Scalar damage_taken, Entity__TakeDamageMessage *message) ##post \
|
|
virtual void KillAllContainedSubsystems(MWInternalDamageObject& internal_damage_object) ##post
|
|
|
|
#define PURE_DamageDispatch INTERFACE_DamageDispatch(=0;)
|
|
#define DERIVED_DamageDispatch INTERFACE_DamageDispatch(;)
|
|
|
|
|
|
|
|
namespace MechWarrior4
|
|
{
|
|
class MWInternalDamageObject;
|
|
|
|
class DamageDispatch
|
|
{
|
|
PURE_DamageDispatch;
|
|
|
|
public:
|
|
static DamageDispatch* GetInstance()
|
|
{
|
|
return (m_Instance);
|
|
}
|
|
|
|
static DamageDispatch* m_Instance;
|
|
|
|
static void
|
|
SetGlobalInvulnerability(bool fInvulnerable);
|
|
|
|
static bool
|
|
GetGlobalInvulnerability();
|
|
|
|
private:
|
|
static bool
|
|
m_GlobalInvulnerability;
|
|
};
|
|
};
|
|
|
|
|
|
#endif // DAMAGEDISPATCH_HPP
|