You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.1 KiB
64 lines
2.1 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#include "cbase.h" |
|
#include "tf_gamerules.h" |
|
|
|
// memdbgon must be the last include file in a .cpp file!!! |
|
#include "tier0/memdbgon.h" |
|
|
|
class CLogicOnHoliday : public CLogicalEntity |
|
{ |
|
DECLARE_CLASS( CLogicOnHoliday, CLogicalEntity ); |
|
DECLARE_DATADESC(); |
|
|
|
COutputEvent m_IsAprilFools; |
|
COutputEvent m_IsFullMoon; |
|
COutputEvent m_IsHalloween; |
|
COutputEvent m_IsNothing; |
|
COutputEvent m_IsSmissmas; |
|
COutputEvent m_IsTFBirthday; |
|
COutputEvent m_IsValentines; |
|
|
|
void InputFire( inputdata_t & ) |
|
{ |
|
bool isAprilFools = TF_IsHolidayActive( kHoliday_AprilFools ); |
|
bool isFullMoon = TF_IsHolidayActive( kHoliday_FullMoon ); |
|
bool isHalloween = TF_IsHolidayActive( kHoliday_Halloween ); |
|
bool isSmissmas = TF_IsHolidayActive( kHoliday_Christmas ); |
|
bool isTFBirthday = TF_IsHolidayActive( kHoliday_TFBirthday ); |
|
bool isValentines = TF_IsHolidayActive( kHoliday_Valentines ); |
|
bool isNothing = !(isTFBirthday || isHalloween || isSmissmas || isValentines || isFullMoon || isAprilFools); |
|
|
|
if ( isNothing ) |
|
{ |
|
m_IsNothing.FireOutput( this, this ); |
|
return; |
|
} |
|
|
|
if ( isAprilFools ) m_IsAprilFools.FireOutput( this, this ); |
|
if ( isFullMoon ) m_IsFullMoon.FireOutput( this, this ); |
|
if ( isHalloween ) m_IsHalloween.FireOutput( this, this ); |
|
if ( isSmissmas ) m_IsSmissmas.FireOutput( this, this ); |
|
if ( isTFBirthday ) m_IsTFBirthday.FireOutput( this, this ); |
|
if ( isValentines ) m_IsValentines.FireOutput( this, this ); |
|
|
|
} |
|
}; |
|
|
|
LINK_ENTITY_TO_CLASS( tf_logic_on_holiday, CLogicOnHoliday ); |
|
|
|
BEGIN_DATADESC( CLogicOnHoliday ) |
|
DEFINE_INPUTFUNC( FIELD_VOID, "Fire", InputFire ), |
|
DEFINE_OUTPUT( m_IsAprilFools, "IsAprilFools" ), |
|
DEFINE_OUTPUT( m_IsFullMoon, "IsFullMoon" ), |
|
DEFINE_OUTPUT( m_IsHalloween, "IsHalloween" ), |
|
DEFINE_OUTPUT( m_IsSmissmas, "IsSmissmas" ), |
|
DEFINE_OUTPUT( m_IsTFBirthday, "IsTFBirthday" ), |
|
DEFINE_OUTPUT( m_IsValentines, "IsValentines" ), |
|
DEFINE_OUTPUT( m_IsNothing, "IsNothing" ), |
|
END_DATADESC()
|
|
|