mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-12-09 03:28:24 +00:00
171 lines
5.8 KiB
C++
171 lines
5.8 KiB
C++
|
|
#include "dota_usermessage_helpers.h"
|
|
|
|
CDotaUsermessageHelpers g_DotaUsermessageHelpers;
|
|
|
|
#define SETUP_MESSAGE( msgname ) \
|
|
m_NameIndexMap.Insert( #msgname, UM_##msgname ); \
|
|
m_IndexNameMap[UM_##msgname] = #msgname; \
|
|
m_Prototypes[UM_##msgname] = &CUserMsg_##msgname::default_instance();
|
|
|
|
#define SETUP_DOTA_MESSAGE( msgname ) \
|
|
m_NameIndexMap.Insert( #msgname, DOTA_UM_##msgname ); \
|
|
m_IndexNameMap[DOTA_UM_##msgname] = #msgname; \
|
|
m_Prototypes[DOTA_UM_##msgname] = &CDOTAUserMsg_##msgname::default_instance();
|
|
|
|
#define SETUP_MESSAGE_MANUAL( enum_name, cls_name, msgname ) \
|
|
m_NameIndexMap.Insert( #msgname, enum_name ); \
|
|
m_IndexNameMap[enum_name] = #msgname; \
|
|
m_Prototypes[enum_name] = &cls_name::default_instance();
|
|
|
|
CDotaUsermessageHelpers::CDotaUsermessageHelpers()
|
|
{
|
|
// Clear all so that any unused are inited.
|
|
memset( m_Prototypes, 0, sizeof(m_Prototypes) );
|
|
memset( m_IndexNameMap, 0, sizeof(m_IndexNameMap) );
|
|
|
|
SETUP_MESSAGE( AchievementEvent );
|
|
SETUP_MESSAGE( CloseCaption );
|
|
//SETUP_MESSAGE( CloseCaptionDirect );
|
|
SETUP_MESSAGE( CurrentTimescale );
|
|
SETUP_MESSAGE( DesiredTimescale );
|
|
SETUP_MESSAGE( Fade );
|
|
SETUP_MESSAGE( GameTitle );
|
|
SETUP_MESSAGE( Geiger );
|
|
SETUP_MESSAGE( HintText );
|
|
SETUP_MESSAGE( HudMsg );
|
|
SETUP_MESSAGE( HudText );
|
|
SETUP_MESSAGE( KeyHintText );
|
|
SETUP_MESSAGE( MessageText );
|
|
SETUP_MESSAGE( RequestState );
|
|
SETUP_MESSAGE( ResetHUD );
|
|
SETUP_MESSAGE( Rumble );
|
|
SETUP_MESSAGE( SayText );
|
|
SETUP_MESSAGE( SayText2 );
|
|
SETUP_MESSAGE( SayTextChannel );
|
|
SETUP_MESSAGE( Shake );
|
|
SETUP_MESSAGE( ShakeDir );
|
|
SETUP_MESSAGE( StatsCrawlMsg );
|
|
SETUP_MESSAGE( StatsSkipState );
|
|
SETUP_MESSAGE( TextMsg );
|
|
SETUP_MESSAGE( Tilt );
|
|
SETUP_MESSAGE( Train );
|
|
SETUP_MESSAGE( VGUIMenu );
|
|
SETUP_MESSAGE( VoiceMask );
|
|
SETUP_MESSAGE( VoiceSubtitle );
|
|
SETUP_MESSAGE( SendAudio );
|
|
SETUP_MESSAGE( CameraTransition );
|
|
|
|
//SETUP_DOTA_MESSAGE( AddUnitToSelection );
|
|
SETUP_DOTA_MESSAGE( AIDebugLine );
|
|
SETUP_DOTA_MESSAGE( ChatEvent );
|
|
SETUP_DOTA_MESSAGE( CombatHeroPositions );
|
|
//SETUP_DOTA_MESSAGE( CombatLogData );
|
|
SETUP_DOTA_MESSAGE( CombatLogShowDeath );
|
|
SETUP_DOTA_MESSAGE( CreateLinearProjectile );
|
|
SETUP_DOTA_MESSAGE( DestroyLinearProjectile );
|
|
SETUP_DOTA_MESSAGE( DodgeTrackingProjectiles );
|
|
SETUP_DOTA_MESSAGE( GlobalLightColor );
|
|
SETUP_DOTA_MESSAGE( GlobalLightDirection );
|
|
SETUP_DOTA_MESSAGE( InvalidCommand );
|
|
SETUP_DOTA_MESSAGE( LocationPing );
|
|
SETUP_DOTA_MESSAGE( MapLine );
|
|
SETUP_DOTA_MESSAGE( MiniKillCamInfo );
|
|
SETUP_DOTA_MESSAGE( MinimapDebugPoint );
|
|
SETUP_DOTA_MESSAGE( MinimapEvent );
|
|
SETUP_DOTA_MESSAGE( NevermoreRequiem );
|
|
SETUP_DOTA_MESSAGE( OverheadEvent );
|
|
SETUP_DOTA_MESSAGE( SetNextAutobuyItem );
|
|
SETUP_DOTA_MESSAGE( SharedCooldown );
|
|
SETUP_DOTA_MESSAGE( SpectatorPlayerClick );
|
|
SETUP_DOTA_MESSAGE( TutorialTipInfo );
|
|
SETUP_DOTA_MESSAGE( UnitEvent );
|
|
SETUP_DOTA_MESSAGE( ParticleManager );
|
|
SETUP_DOTA_MESSAGE( BotChat );
|
|
SETUP_DOTA_MESSAGE( HudError );
|
|
SETUP_DOTA_MESSAGE( ItemPurchased );
|
|
SETUP_DOTA_MESSAGE( Ping );
|
|
SETUP_DOTA_MESSAGE( ItemFound );
|
|
//SETUP_MESSAGE( CharacterSpeakConcept );
|
|
SETUP_DOTA_MESSAGE( SwapVerify );
|
|
SETUP_DOTA_MESSAGE( WorldLine );
|
|
//SETUP_DOTA_MESSAGE( TournamentDrop );
|
|
SETUP_DOTA_MESSAGE( ItemAlert );
|
|
SETUP_DOTA_MESSAGE( HalloweenDrops );
|
|
SETUP_DOTA_MESSAGE( ChatWheel );
|
|
SETUP_DOTA_MESSAGE( ReceivedXmasGift );
|
|
SETUP_DOTA_MESSAGE( UpdateSharedContent );
|
|
SETUP_DOTA_MESSAGE( TutorialRequestExp );
|
|
SETUP_DOTA_MESSAGE( TutorialPingMinimap );
|
|
SETUP_MESSAGE_MANUAL( DOTA_UM_GamerulesStateChanged, CDOTA_UM_GamerulesStateChanged, GamerulesStateChanged );
|
|
SETUP_DOTA_MESSAGE( ShowSurvey );
|
|
SETUP_DOTA_MESSAGE( TutorialFade );
|
|
SETUP_DOTA_MESSAGE( AddQuestLogEntry );
|
|
SETUP_DOTA_MESSAGE( SendStatPopup );
|
|
SETUP_DOTA_MESSAGE( TutorialFinish );
|
|
SETUP_DOTA_MESSAGE( SendRoshanPopup );
|
|
SETUP_DOTA_MESSAGE( SendGenericToolTip );
|
|
SETUP_DOTA_MESSAGE( SendFinalGold );
|
|
SETUP_DOTA_MESSAGE( CustomMsg );
|
|
SETUP_DOTA_MESSAGE( CoachHUDPing );
|
|
SETUP_DOTA_MESSAGE( ClientLoadGridNav );
|
|
SETUP_DOTA_MESSAGE( AbilityPing );
|
|
SETUP_DOTA_MESSAGE( ShowGenericPopup );
|
|
SETUP_DOTA_MESSAGE( VoteStart );
|
|
SETUP_DOTA_MESSAGE( VoteUpdate );
|
|
SETUP_DOTA_MESSAGE( VoteEnd );
|
|
SETUP_DOTA_MESSAGE( BoosterState );
|
|
SETUP_DOTA_MESSAGE( WillPurchaseAlert );
|
|
SETUP_DOTA_MESSAGE( TutorialMinimapPosition );
|
|
SETUP_DOTA_MESSAGE( PlayerMMR );
|
|
SETUP_DOTA_MESSAGE( AbilitySteal );
|
|
SETUP_DOTA_MESSAGE( CourierKilledAlert );
|
|
SETUP_DOTA_MESSAGE( EnemyItemAlert );
|
|
SETUP_DOTA_MESSAGE( StatsMatchDetails );
|
|
SETUP_DOTA_MESSAGE( MiniTaunt );
|
|
SETUP_DOTA_MESSAGE( BuyBackStateAlert );
|
|
SETUP_DOTA_MESSAGE( QuickBuyAlert );
|
|
//SETUP_DOTA_MESSAGE( StatsHeroDetails );
|
|
SETUP_DOTA_MESSAGE( PredictionResult );
|
|
SETUP_DOTA_MESSAGE( ModifierAlert );
|
|
SETUP_DOTA_MESSAGE( HPManaAlert );
|
|
SETUP_DOTA_MESSAGE( GlyphAlert );
|
|
SETUP_DOTA_MESSAGE( BeastChat );
|
|
SETUP_DOTA_MESSAGE( SpectatorPlayerUnitOrders );
|
|
}
|
|
|
|
const google::protobuf::Message *CDotaUsermessageHelpers::GetPrototype( int index ) const
|
|
{
|
|
if( index >= 0 && index < EDotaUserMessages_ARRAYSIZE )
|
|
return m_Prototypes[index];
|
|
|
|
return NULL;
|
|
}
|
|
|
|
const google::protobuf::Message *CDotaUsermessageHelpers::GetPrototype( const char *name ) const
|
|
{
|
|
int index = GetIndex( name );
|
|
if( index > -1 )
|
|
return m_Prototypes[ index ];
|
|
|
|
return NULL;
|
|
}
|
|
|
|
int CDotaUsermessageHelpers::GetIndex( const char *name ) const
|
|
{
|
|
unsigned int idx = m_NameIndexMap.Find( name );
|
|
if( idx != m_NameIndexMap.InvalidHandle() )
|
|
return m_NameIndexMap[idx];
|
|
|
|
return -1;
|
|
}
|
|
|
|
const char *CDotaUsermessageHelpers::GetName( int index ) const
|
|
{
|
|
if( index >= 0 && index < EDotaUserMessages_ARRAYSIZE )
|
|
return m_IndexNameMap[index];
|
|
|
|
return NULL;
|
|
}
|
|
|