1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2024-11-08 16:57:16 +01:00
SqMod/source/Misc/VehicleImmunity.hpp

53 lines
2.8 KiB
C++
Raw Normal View History

2015-09-30 02:56:11 +02:00
#ifndef _MISC_VEHICLE_IMMUNITY_HPP_
#define _MISC_VEHICLE_IMMUNITY_HPP_
// ------------------------------------------------------------------------------------------------
#include "Common.hpp"
// ------------------------------------------------------------------------------------------------
namespace SqMod {
// ------------------------------------------------------------------------------------------------
struct CVehicleImmunity
{
// --------------------------------------------------------------------------------------------
CVehicleImmunity() noexcept;
CVehicleImmunity(SQInt32 flags) noexcept;
// --------------------------------------------------------------------------------------------
CVehicleImmunity(const CVehicleImmunity & x) noexcept;
CVehicleImmunity(CVehicleImmunity && x) noexcept;
// --------------------------------------------------------------------------------------------
~CVehicleImmunity();
// --------------------------------------------------------------------------------------------
CVehicleImmunity & operator= (const CVehicleImmunity & x) noexcept;
CVehicleImmunity & operator= (CVehicleImmunity && x) noexcept;
// --------------------------------------------------------------------------------------------
bool operator == (const CVehicleImmunity & x) const noexcept;
bool operator != (const CVehicleImmunity & x) const noexcept;
bool operator < (const CVehicleImmunity & x) const noexcept;
bool operator > (const CVehicleImmunity & x) const noexcept;
bool operator <= (const CVehicleImmunity & x) const noexcept;
bool operator >= (const CVehicleImmunity & x) const noexcept;
// --------------------------------------------------------------------------------------------
SQInteger Cmp(const CVehicleImmunity & x) const noexcept;
// --------------------------------------------------------------------------------------------
operator SQInt32 () const noexcept;
operator bool () const noexcept;
// --------------------------------------------------------------------------------------------
SQInt32 GetFlags() const noexcept;
void SetFlags(SQInt32 flags) noexcept;
// --------------------------------------------------------------------------------------------
CVehicleImmunity & SetnGet(SQInt32 flags) noexcept;
// --------------------------------------------------------------------------------------------
void Apply(const CVehicle & vehicle) const noexcept;
// --------------------------------------------------------------------------------------------
void EnableAll() noexcept;
void DisableAll() noexcept;
protected:
// --------------------------------------------------------------------------------------------
SQInt32 m_Flags;
};
} // Namespace:: SqMod
#endif // _MISC_VEHICLE_IMMUNITY_HPP_