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.
204 lines
10 KiB
204 lines
10 KiB
![]()
4 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
//=============================================================================
|
||
|
|
||
|
#include "cbase.h"
|
||
|
#include "mp_shareddefs.h"
|
||
|
|
||
|
const char *g_pszMPConcepts[] =
|
||
|
{
|
||
|
"TLK_FIREWEAPON", // MP_CONCEPT_FIREWEAPON
|
||
|
"TLK_HURT", // MP_CONCEPT_HURT
|
||
|
"TLK_PLAYER_EXPRESSION", // MP_CONCEPT_PLAYER_EXPRESSION
|
||
|
"TLK_WINDMINIGUN", // MP_CONCEPT_WINDMINIGUN
|
||
|
"TLK_FIREMINIGUN", // MP_CONCEPT_FIREMINIGUN
|
||
|
"TLK_PLAYER_MEDIC", // MP_CONCEPT_PLAYER_MEDIC
|
||
|
"TLK_DETONATED_OBJECT", // MP_CONCEPT_DETONATED_OBJECT
|
||
|
"TLK_KILLED_PLAYER", // MP_CONCEPT_KILLED_PLAYER
|
||
|
"TLK_KILLED_OBJECT", // MP_CONCEPT_KILLED_OBJECT
|
||
|
"TLK_PLAYER_PAIN", // MP_CONCEPT_PLAYER_PAIN
|
||
|
"TLK_PLAYER_ATTACKER_PAIN", // MP_CONCEPT_PLAYER_ATTACKER_PAIN
|
||
|
"TLK_PLAYER_TAUNT", // MP_CONCEPT_PLAYER_TAUNT
|
||
|
"TLK_PLAYER_HELP", // MP_CONCEPT_PLAYER_HELP
|
||
|
"TLK_PLAYER_GO", // MP_CONCEPT_PLAYER_GO
|
||
|
"TLK_PLAYER_MOVEUP", // MP_CONCEPT_PLAYER_MOVEUP
|
||
|
"TLK_PLAYER_LEFT", // MP_CONCEPT_PLAYER_LEFT
|
||
|
"TLK_PLAYER_RIGHT", // MP_CONCEPT_PLAYER_RIGHT
|
||
|
"TLK_PLAYER_YES", // MP_CONCEPT_PLAYER_YES
|
||
|
"TLK_PLAYER_NO", // MP_CONCEPT_PLAYER_NO
|
||
|
"TLK_PLAYER_INCOMING", // MP_CONCEPT_PLAYER_INCOMING
|
||
|
"TLK_PLAYER_CLOAKEDSPY", // MP_CONCEPT_PLAYER_CLOAKEDSPY
|
||
|
"TLK_PLAYER_SENTRYAHEAD", // MP_CONCEPT_PLAYER_SENTRYAHEAD
|
||
|
"TLK_PLAYER_TELEPORTERHERE", // MP_CONCEPT_PLAYER_TELEPORTERHERE
|
||
|
"TLK_PLAYER_DISPENSERHERE", // MP_CONCEPT_PLAYER_DISPENSERHERE
|
||
|
"TLK_PLAYER_SENTRYHERE", // MP_CONCEPT_PLAYER_SENTRYHERE
|
||
|
"TLK_PLAYER_ACTIVATECHARGE", // MP_CONCEPT_PLAYER_ACTIVATECHARGE
|
||
|
"TLK_PLAYER_CHARGEREADY", // MP_CONCEPT_PLAYER_CHARGEREADY
|
||
|
"TLK_PLAYER_TAUNTS" , // MP_CONCEPT_PLAYER_TAUNTS
|
||
|
"TLK_PLAYER_BATTLECRY", // MP_CONCEPT_PLAYER_BATTLECRY
|
||
|
"TLK_PLAYER_CHEERS", // MP_CONCEPT_PLAYER_CHEERS
|
||
|
"TLK_PLAYER_JEERS", // MP_CONCEPT_PLAYER_JEERS
|
||
|
"TLK_PLAYER_POSITIVE", // MP_CONCEPT_PLAYER_POSITIVE
|
||
|
"TLK_PLAYER_NEGATIVE", // MP_CONCEPT_PLAYER_NEGATIVE
|
||
|
"TLK_PLAYER_NICESHOT", // MP_CONCEPT_PLAYER_NICESHOT
|
||
|
"TLK_PLAYER_GOODJOB", // MP_CONCEPT_PLAYER_GOODJOB
|
||
|
"TLK_MEDIC_STARTEDHEALING", // MP_CONCEPT_MEDIC_STARTEDHEALING
|
||
|
"TLK_MEDIC_CHARGEREADY", // MP_CONCEPT_MEDIC_CHARGEREADY
|
||
|
"TLK_MEDIC_STOPPEDHEALING", // MP_CONCEPT_MEDIC_STOPPEDHEALING
|
||
|
"TLK_MEDIC_CHARGEDEPLOYED", // MP_CONCEPT_MEDIC_CHARGEDEPLOYED
|
||
|
"TLK_FLAGPICKUP", // MP_CONCEPT_FLAGPICKUP
|
||
|
"TLK_FLAGCAPTURED", // MP_CONCEPT_FLAGCAPTURED
|
||
|
"TLK_ROUND_START", // MP_CONCEPT_ROUND_START
|
||
|
"TLK_SUDDENDEATH_START", // MP_CONCEPT_SUDDENDEATH_START
|
||
|
"TLK_ONFIRE", // MP_CONCEPT_ONFIRE
|
||
|
"TLK_STALEMATE", // MP_CONCEPT_STALEMATE
|
||
|
"TLK_BUILDING_OBJECT", // MP_CONCEPT_BUILDING_OBJECT
|
||
|
"TLK_LOST_OBJECT", // MP_CONCEPT_LOST_OBJECT
|
||
|
"TLK_SPY_SAPPER", // MP_CONCEPT_SPY_SAPPER
|
||
|
"TLK_TELEPORTED", // MP_CONCEPT_TELEPORTED
|
||
|
"TLK_LOST_CONTROL_POINT", // MP_CONCEPT_LOST_CONTROL_POINT
|
||
|
"TLK_CAPTURED_POINT", // MP_CONCEPT_CAPTURED_POINT
|
||
|
"TLK_CAPTURE_BLOCKED", // MP_CONCEPT_CAPTURE_BLOCKED
|
||
|
"TLK_HEALTARGET_STARTEDHEALING",// MP_CONCEPT_HEALTARGET_STARTEDHEALING
|
||
|
"TLK_HEALTARGET_CHARGEREADY", // MP_CONCEPT_HEALTARGET_CHARGEREADY
|
||
|
"TLK_HEALTARGET_STOPPEDHEALING",// MP_CONCEPT_HEALTARGET_STOPPEDHEALING
|
||
|
"TLK_HEALTARGET_CHARGEDEPLOYED",// MP_CONCEPT_HEALTARGET_CHARGEDEPLOYED
|
||
|
"TLK_MINIGUN_FIREWEAPON", // MP_CONCEPT_MINIGUN_FIREWEAPON
|
||
|
"TLK_DIED", // MP_CONCEPT_DIED
|
||
|
"TLK_PLAYER_THANKS", // MP_CONCEPT_PLAYER_THANKS
|
||
|
"TLK_CART_MOVING_FORWARD", // MP_CONCEPT_CART_MOVING_FORWARD
|
||
|
"TLK_CART_MOVING_BACKWARD", // MP_CONCEPT_CART_MOVING_BACKWARD
|
||
|
"TLK_CART_STOP", // MP_CONCEPT_CART_STOP
|
||
|
"TLK_ATE_FOOD", // MP_CONCEPT_ATE_FOOD
|
||
|
"TLK_DOUBLE_JUMP", // MP_CONCEPT_DOUBLE_JUMP
|
||
|
"TLK_DODGING", // MP_CONCEPT_DODGING
|
||
|
"TLK_DODGE_SHOT", // MP_CONCEPT_DODGE_SHOT
|
||
|
"TLK_GRAB_BALL", // MP_CONCEPT_GRAB_BALL
|
||
|
"TLK_REGEN_BALL", // MP_CONCEPT_REGEN_BALL
|
||
|
"TLK_DEFLECTED", // MP_CONCEPT_DEFLECTED
|
||
|
"TLK_BALL_MISSED", // MP_CONCEPT_BALL_MISSED
|
||
|
"TLK_STUNNED", // MP_CONCEPT_STUNNED
|
||
|
"TLK_STUNNED_TARGET", // MP_CONCEPT_STUNNED_TARGET
|
||
|
"TLK_TIRED", // MP_CONCEPT_TIRED
|
||
|
"TLK_BAT_BALL", // MP_CONCEPT_BAT_BALL
|
||
|
"TLK_ACHIEVEMENT_AWARD", // MP_CONCEPT_ACHIEVEMENT_AWARD
|
||
|
"TLK_JARATE_HIT", // MP_CONCEPT_JARATE_HIT
|
||
|
"TLK_JARATE_LAUNCH", // MP_CONCEPT_JARATE_LAUNCH
|
||
|
"TLK_HIGHFIVE_SUCCESS", // MP_CONCEPT_HIGHFIVE_SUCCESS
|
||
|
"TLK_HIGHFIVE_SUCCESS_FULL", // MP_CONCEPT_HIGHFIVE_SUCCESS_FULL
|
||
|
"TLK_HIGHFIVE_FAILURE", // MP_CONCEPT_HIGHFIVE_FAILURE
|
||
|
"TLK_HIGHFIVE_FAILURE_FULL", // MP_CONCEPT_HIGHFIVE_FAILURE_FULL
|
||
|
"TLK_PLAYER_TAUNT2", // MP_CONCEPT_PLAYER_TAUNT2
|
||
|
"TLK_PICKUP_BUILDING", // MP_CONCEPT_PICKUP_BUILDING,
|
||
|
"TLK_REDEPLOY_BUILDING", // MP_CONCEPT_REDEPLOY_BUILDING
|
||
|
"TLK_CARRYING_BUILDING", // MP_CONCEPT_CARRYING_BUILDING
|
||
|
"TLK_REQUEST_DUEL", // MP_CONCEPT_DUEL_REQUEST
|
||
|
"TLK_REJECT_DUEL", // MP_CONCEPT_DUEL_TARGET_REJECT,
|
||
|
"TLK_DUEL_WAS_REJECTED", // MP_CONCEPT_DUEL_REJECTED
|
||
|
"TLK_ACCEPT_DUEL", // MP_CONCEPT_DUEL_TARGET_ACCEPT
|
||
|
"TLK_DUEL_WAS_ACCEPTED", // MP_CONCEPT_DUEL_ACCEPTED
|
||
|
"TLK_PLAYER_SHOW_ITEM_TAUNT", // MP_CONCEPT_PLAYER_SHOW_ITEM_TAUNT
|
||
|
"TLK_TAUNT_REPLAY", // MP_CONCEPT_TAUNT_REPLAY
|
||
|
"TLK_TAUNT_LAUGH", // MP_CONCEPT_TAUNT_LAUGH
|
||
|
"TLK_TAUNT_HEROIC_POSE", // MP_CONCEPT_TAUNT_HEROIC_POSE
|
||
|
"TLK_PARTNER_TAUNT_READY", // MP_CONCEPT_PARTNER_TAUNT_READY
|
||
|
"TLK_PLAYER_HOLDTAUNT", // MP_CONCEPT_HOLDTAUNT
|
||
|
"TLK_TAUNT_PYRO_ARMAGEDDON", // MP_CONCEPT_TAUNT_PYRO_ARMAGEDDON
|
||
|
"TLK_ROCKET_DESTOYED", // MP_CONCEPT_ROCKET_DESTOYED
|
||
|
"TLK_MVM_BOMB_DROPPED", // MP_CONCEPT_MVM_BOMB_DROPPED
|
||
|
"TLK_MVM_BOMB_CARRIER_UPGRADE1",// MP_CONCEPT_MVM_BOMB_CARRIER_UPGRADE1
|
||
|
"TLK_MVM_BOMB_CARRIER_UPGRADE2",// MP_CONCEPT_MVM_BOMB_CARRIER_UPGRADE2
|
||
|
"TLK_MVM_BOMB_CARRIER_UPGRADE3",// MP_CONCEPT_MVM_BOMB_CARRIER_UPGRADE3
|
||
|
"TLK_MVM_DEFENDER_DIED", // MP_CONCEPT_MVM_DEFENDER_DIED
|
||
|
"TLK_MVM_FIRST_BOMB_PICKUP", // MP_CONCEPT_MVM_FIRST_BOMB_PICKUP
|
||
|
"TLK_MVM_BOMB_PICKUP", // MP_CONCEPT_MVM_BOMB_PICKUP
|
||
|
"TLK_MVM_SENTRY_BUSTER", // MP_CONCEPT_MVM_SENTRY_BUSTER
|
||
|
"TLK_MVM_SENTRY_BUSTER_DOWN", // MP_CONCEPT_MVM_SENTRY_BUSTER_DOWN
|
||
|
"TLK_MVM_SNIPER_CALLOUT", // MP_CONCEPT_MVM_SNIPER_CALLOUT
|
||
|
"TLK_MVM_LAST_MAN_STANDING", // MP_CONCEPT_MVM_LAST_MAN_STANDING
|
||
|
"TLK_MVM_ENCOURAGE_MONEY", // MP_CONCEPT_MVM_ENCOURAGE_MONEY
|
||
|
"TLK_MVM_MONEY_PICKUP", // MP_CONCEPT_MVM_MONEY_PICKUP
|
||
|
"TLK_MVM_ENCOURAGE_UPGRADE", // MP_CONCEPT_MVM_ENCOURAGE_UPGRADE
|
||
|
"TLK_MVM_UPGRADE_COMPLETE", // MP_CONCEPT_MVM_UPGRADE_COMPLETE
|
||
|
"TLK_MVM_GIANT_CALLOUT", // MP_CONCEPT_MVM_GIANT_CALLOUT
|
||
|
"TLK_MVM_GIANT_HAS_BOMB", // MP_CONCEPT_MVM_GIANT_HAS_BOMB
|
||
|
"TLK_MVM_GIANT_KILLED", // MP_CONCEPT_MVM_GIANT_KILLED
|
||
|
"TLK_MVM_GIANT_KILLED_TEAMMATE",//MP_CONCEPT_MVM_GIANT_KILLED_TEAMMATE
|
||
|
"TLK_MVM_SAPPED_ROBOT", // MP_CONCEPT_MVM_SAPPED_ROBOT
|
||
|
"TLK_MVM_CLOSE_CALL", // MP_CONCEPT_MVM_CLOSE_CALL
|
||
|
"TLK_MVM_TANK_CALLOUT", // MP_CONCEPT_MVM_TANK_CALLOUT
|
||
|
"TLK_MVM_TANK_DEAD", // MP_CONCEPT_MVM_TANK_DEAD
|
||
|
"TLK_MVM_TANK_DEPLOYING", // MP_CONCEPT_MVM_TANK_DEPLOYING
|
||
|
"TLK_MVM_ATTACK_THE_TANK", // MP_CONCEPT_MVM_ATTACK_THE_TANK
|
||
|
"TLK_MVM_TAUNT", // MP_CONCEPT_MVM_TAUNT
|
||
|
"TLK_MVM_WAVE_START", // MP_CONCEPT_MVM_WAVE_START
|
||
|
"TLK_MVM_WAVE_WIN", // MP_CONCEPT_MVM_WAVE_WIN
|
||
|
"TLK_MVM_WAVE_LOSE", // MP_CONCEPT_MVM_WAVE_LOSE
|
||
|
"TLK_MVM_DEPLOY_RAGE", // MP_CONCEPT_MVM_DEPLOY_RAGE
|
||
|
"TLK_MAGIC_BIGHEAD", // MP_CONCEPT_MAGIC_BIGHEAD
|
||
|
"TLK_MAGIC_SMALLHEAD", // MP_CONCEPT_MAGIC_SMALLHEAD
|
||
|
"TLK_MAGIC_GRAVITY", // MP_CONCEPT_MAGIC_GRAVITY
|
||
|
"TLK_MAGIC_GOOD", // MP_CONCEPT_MAGIC_GOOD
|
||
|
"TLK_MAGIC_DANCE", // MP_CONCEPT_MAGIC_DANCE
|
||
|
"HalloweenLongFall", // MP_CONCEPT_HALLOWEEN_LONGFALL
|
||
|
"TLK_TAUNT_GUITAR_RIFF", // MP_CONCEPT_TAUNT_GUITAR_RIFF
|
||
|
|
||
|
// TF Halloween 2013 shenanigans.
|
||
|
"TLK_PLAYER_CAST_FIREBALL", // MP_CONCEPT_PLAYER_CAST_FIREBALL
|
||
|
"TLK_PLAYER_CAST_MERASMUS_ZAP", // MP_CONCEPT_PLAYER_CAST_MERASMUS_ZAP
|
||
|
"TLK_PLAYER_CAST_SELF_HEAL", // MP_CONCEPT_PLAYER_CAST_SELF_HEAL
|
||
|
"TLK_PLAYER_CAST_MIRV", // MP_CONCEPT_PLAYER_CAST_MIRV
|
||
|
"TLK_PLAYER_CAST_BLAST_JUMP", // MP_CONCEPT_PLAYER_CAST_BLAST_JUMP
|
||
|
"TLK_PLAYER_CAST_STEALTH", // MP_CONCEPT_PLAYER_CAST_STEALTH
|
||
|
"TLK_PLAYER_CAST_TELEPORT", // MP_CONCEPT_PLAYER_CAST_TELEPORT
|
||
|
"TLK_PLAYER_CAST_LIGHTNING_BALL", // MP_CONCEPT_PLAYER_CAST_LIGHTNING_BALL
|
||
|
"TLK_PLAYER_CAST_MOVEMENT_BUFF", // MP_CONCEPT_PLAYER_CAST_MOVEMENT_BUFF
|
||
|
"TLK_PLAYER_CAST_MONOCULOUS", // MP_CONCEPT_PLAYER_CAST_MONOCULOUS
|
||
|
"TLK_PLAYER_CAST_METEOR_SWARM", // MP_CONCEPT_PLAYER_CAST_METEOR_SWARM
|
||
|
"TLK_PLAYER_CAST_SKELETON_HORDE", // MP_CONCEPT_PLAYER_CAST_SKELETON_HORDE
|
||
|
|
||
|
"TLK_PLAYER_SPELL_FIREBALL", // MP_CONCEPT_PLAYER_SPELL_FIREBALL
|
||
|
"TLK_PLAYER_SPELL_MERASMUS_ZAP", // MP_CONCEPT_PLAYER_SPELL_MERASMUS_ZAP
|
||
|
"TLK_PLAYER_SPELL_SELF_HEAL", // MP_CONCEPT_PLAYER_SPELL_SELF_HEAL
|
||
|
"TLK_PLAYER_SPELL_MIRV", // MP_CONCEPT_PLAYER_SPELL_MIRV
|
||
|
"TLK_PLAYER_SPELL_BLAST_JUMP", // MP_CONCEPT_PLAYER_SPELL_BLAST_JUMP
|
||
|
"TLK_PLAYER_SPELL_STEALTH", // MP_CONCEPT_PLAYER_SPELL_STEALTH
|
||
|
"TLK_PLAYER_SPELL_TELEPORT", // MP_CONCEPT_PLAYER_SPELL_TELEPORT
|
||
|
"TLK_PLAYER_SPELL_LIGHTNING_BALL", // MP_CONCEPT_PLAYER_SPELL_LIGHTNING_BALL
|
||
|
"TLK_PLAYER_SPELL_MOVEMENT_BUFF", // MP_CONCEPT_PLAYER_SPELL_MOVEMENT_BUFF
|
||
|
"TLK_PLAYER_SPELL_MONOCULOUS", // MP_CONCEPT_PLAYER_SPELL_MONOCULOUS
|
||
|
"TLK_PLAYER_SPELL_METEOR_SWARM", // MP_CONCEPT_PLAYER_SPELL_METEOR_SWARM
|
||
|
"TLK_PLAYER_SPELL_SKELETON_HORDE", // MP_CONCEPT_PLAYER_SPELL_SKELETON_HORDE
|
||
|
|
||
|
// Events.
|
||
|
"TLK_PLAYER_SPELL_PICKUP_COMMON", // MP_CONCEPT_PLAYER_SPELL_PICKUP_COMMON
|
||
|
"TLK_PLAYER_SPELL_PICKUP_RARE", // MP_CONCEPT_PLAYER_SPELL_PICKUP_RARE
|
||
|
"TLK_PLAYER_HELLTOWER_MIDNIGHT", // MP_CONCEPT_PLAYER_HELLTOWER_MIDNIGHT
|
||
|
"TLK_PLAYER_SKELETON_KING_APPEAR", // MP_CONCEPT_PLAYER_SKELETON_KING_APPEAR
|
||
|
|
||
|
"TLK_MANNHATTAN_GATE_ATK", // MP_CONCEPT_MANNHATTAN_GATE_ATK
|
||
|
"TLK_MANNHATTAN_GATE_TAKE", // MP_CONCEPT_MANNHATTAN_GATE_TAKE
|
||
|
"TLK_RESURRECTED", // MP_CONCEPT_RESURRECTED
|
||
|
"TLK_MVM_LOOT_COMMON", // MP_CONCEPT_MVM_LOOT_COMMON
|
||
|
"TLK_MVM_LOOT_RARE", // MP_CONCEPT_MVM_LOOT_RARE
|
||
|
"TLK_MVM_LOOT_ULTRARARE", // MP_CONCEPT_MVM_LOOT_ULTRARARE
|
||
|
"TLK_MEDIC_HEAL_SHIELD", // MP_CONCEPT_MEDIC_HEAL_SHIELD
|
||
|
};
|
||
|
COMPILE_TIME_ASSERT( ARRAYSIZE( g_pszMPConcepts ) == MP_TF_CONCEPT_COUNT );
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// Purpose:
|
||
|
//-----------------------------------------------------------------------------
|
||
|
int GetMPConceptIndexFromString( const char *pszConcept )
|
||
|
{
|
||
|
for ( int iConcept = 0; iConcept < ARRAYSIZE( g_pszMPConcepts ); ++iConcept )
|
||
|
{
|
||
|
if ( !Q_stricmp( pszConcept, g_pszMPConcepts[iConcept] ) )
|
||
|
return iConcept;
|
||
|
}
|
||
|
|
||
|
return MP_CONCEPT_NONE;
|
||
|
}
|