1
0
Fork 0
mirror of https://codeberg.org/demostf/parser.git synced 2026-06-03 18:24:05 +02:00

GameEvent::event_type

This commit is contained in:
Robin Appelman 2022-09-03 16:17:59 +02:00
commit 50db542080
4 changed files with 583 additions and 45 deletions

112
codegen/Cargo.lock generated
View file

@ -76,14 +76,14 @@ dependencies = [
[[package]]
name = "bitbuffer"
version = "0.10.5"
version = "0.10.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a1011b65695f83be55d63eadf310a4c28da66550b196bca815eb94ec8885da8"
checksum = "d75a9c93bd4423a7740feae26d6daf52b7d53451cba0b2d6bed59b836c32e15c"
dependencies = [
"bitbuffer_derive",
"err-derive",
"memchr",
"num-traits 0.2.14",
"num-traits 0.2.15",
"serde",
]
@ -144,6 +144,12 @@ dependencies = [
"winapi",
]
[[package]]
name = "either"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
[[package]]
name = "encode_unicode"
version = "0.3.6"
@ -161,9 +167,9 @@ dependencies = [
[[package]]
name = "enumflags2"
version = "0.7.3"
version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a25c90b056b3f84111cf183cbeddef0d3a0bbe9a674f057e1a1533c315f24def"
checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb"
dependencies = [
"enumflags2_derive",
"serde",
@ -171,9 +177,9 @@ dependencies = [
[[package]]
name = "enumflags2_derive"
version = "0.7.3"
version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "144ec79496cbab6f84fa125dc67be9264aef22eb8a28da8454d9c33f15108da4"
checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae"
dependencies = [
"proc-macro2",
"quote",
@ -182,9 +188,9 @@ dependencies = [
[[package]]
name = "err-derive"
version = "0.3.0"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcc7f65832b62ed38939f98966824eb6294911c3629b0e9a262bfb80836d9686"
checksum = "c34a887c8df3ed90498c1c437ce21f211c8e27672921a8ffa293cb8d6d4caa9e"
dependencies = [
"proc-macro-error",
"proc-macro2",
@ -233,6 +239,15 @@ dependencies = [
"cfg-if",
]
[[package]]
name = "itertools"
version = "0.10.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"
dependencies = [
"either",
]
[[package]]
name = "itoa"
version = "1.0.1"
@ -284,7 +299,7 @@ dependencies = [
"num-integer",
"num-iter",
"num-rational",
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -295,7 +310,7 @@ checksum = "5f6f7833f2cbf2360a6cfd58cd41a53aa7a90bd4c202f5b1c7dd2ed73c57b2c3"
dependencies = [
"autocfg",
"num-integer",
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -304,7 +319,7 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "747d632c0c558b87dbabbe6a82f3b4ae03720d0646ac5b7b4dae89394be5f2c5"
dependencies = [
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -314,7 +329,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
dependencies = [
"autocfg",
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -325,7 +340,7 @@ checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
dependencies = [
"autocfg",
"num-integer",
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -337,7 +352,7 @@ dependencies = [
"autocfg",
"num-bigint",
"num-integer",
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
@ -346,32 +361,32 @@ version = "0.1.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
dependencies = [
"num-traits 0.2.14",
"num-traits 0.2.15",
]
[[package]]
name = "num-traits"
version = "0.2.14"
version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
dependencies = [
"autocfg",
]
[[package]]
name = "num_enum"
version = "0.5.6"
version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "720d3ea1055e4e4574c0c0b0f8c3fd4f24c4cdaf465948206dea090b57b526ad"
checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9"
dependencies = [
"num_enum_derive",
]
[[package]]
name = "num_enum_derive"
version = "0.5.6"
version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d992b768490d7fe0d8586d9b5745f6c49f557da6d81dc982b1d167ad4edbb21"
checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@ -396,9 +411,9 @@ checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5"
[[package]]
name = "parse-display"
version = "0.5.3"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "898bf4c2a569dedbfd4e6c3f0bbd0ae825e5b6b0b69bae3e3c1000158689334a"
checksum = "813e91c6232dbeb2e9deba0eb0dc5c967bd6f380676fd34419f9ddd71411faa7"
dependencies = [
"once_cell",
"parse-display-derive",
@ -407,9 +422,9 @@ dependencies = [
[[package]]
name = "parse-display-derive"
version = "0.5.3"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1779d1e28ab04568223744c2af4aa4e642e67b92c76bdce0929a6d2c36267199"
checksum = "007ed61a69cf7d9b95cc5dc18489dbb4f70d4adb0a0c100e2dd46f0be241711a"
dependencies = [
"once_cell",
"proc-macro2",
@ -466,11 +481,11 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.36"
version = "1.0.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
dependencies = [
"unicode-xid",
"unicode-ident",
]
[[package]]
@ -493,9 +508,9 @@ dependencies = [
[[package]]
name = "regex"
version = "1.5.4"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
dependencies = [
"aho-corasick",
"memchr",
@ -504,9 +519,9 @@ dependencies = [
[[package]]
name = "regex-syntax"
version = "0.6.25"
version = "0.6.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
[[package]]
name = "remove_dir_all"
@ -537,18 +552,18 @@ checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
[[package]]
name = "serde"
version = "1.0.133"
version = "1.0.144"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
checksum = "0f747710de3dcd43b88c9168773254e809d8ddbdf9653b84e2554ab219f17860"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.133"
version = "1.0.144"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537"
checksum = "94ed3a816fb1d101812f83e789f888322c34e291f894f19590dc310963e87a00"
dependencies = [
"proc-macro2",
"quote",
@ -557,9 +572,9 @@ dependencies = [
[[package]]
name = "serde_json"
version = "1.0.74"
version = "1.0.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142"
checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44"
dependencies = [
"itoa",
"ryu",
@ -568,9 +583,9 @@ dependencies = [
[[package]]
name = "serde_repr"
version = "0.1.7"
version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98d0516900518c29efa217c298fa1f4e6c6ffc85ae29fd7f4ee48f176e1a9ed5"
checksum = "1fe39d9fbb0ebf5eb2c7cb7e2a47e4f462fad1379f1166b8ae49ad9eae89a7ca"
dependencies = [
"proc-macro2",
"quote",
@ -623,13 +638,13 @@ dependencies = [
[[package]]
name = "syn"
version = "1.0.85"
version = "1.0.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7"
checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
dependencies = [
"proc-macro2",
"quote",
"unicode-xid",
"unicode-ident",
]
[[package]]
@ -686,8 +701,9 @@ dependencies = [
"enumflags2",
"err-derive",
"fnv",
"itertools",
"main_error",
"num-traits 0.2.14",
"num-traits 0.2.15",
"num_enum",
"parse-display",
"serde",
@ -743,6 +759,12 @@ dependencies = [
"serde",
]
[[package]]
name = "unicode-ident"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
[[package]]
name = "unicode-xid"
version = "0.2.2"

View file

@ -317,6 +317,13 @@ pub fn generate_game_events(demo: Demo) -> TokenStream {
quote!(GameEventType::#variant_name => #name_str,)
});
let to_types = events.iter().map(|event| {
let name = get_event_name(event.event_type.as_str());
let variant_name = Ident::new(&name, span);
quote!(GameEvent::#variant_name(_) => GameEventType::#variant_name,)
});
let read_events = events.iter().map(|event| {
let name = get_event_name(event.event_type.as_str());
let variant_name = Ident::new(&name, span);
@ -425,6 +432,12 @@ pub fn generate_game_events(demo: Demo) -> TokenStream {
GameEvent::Unknown(raw) => raw.write(stream),
}
}
pub fn event_type(&self) -> GameEventType {
match &self {
#(#to_types)*
GameEvent::Unknown(raw) => raw.event_type.clone(),
}
}
}
pub fn get_sizes() -> fnv::FnvHashMap<&'static str, usize> {

View file

@ -29,6 +29,7 @@ impl MessageHandler for PropAnalyzer {
&mut self,
parse_tables: &[ParseSendTable],
_server_classes: &[ServerClass],
_state: &ParserState,
) {
let mut numeric_tables: FnvHashMap<String, usize> = HashMap::default();
for table in parse_tables {

View file

@ -10298,6 +10298,508 @@ impl GameEvent {
GameEvent::Unknown(raw) => raw.write(stream),
}
}
pub fn event_type(&self) -> GameEventType {
match &self {
GameEvent::ServerSpawn(_) => GameEventType::ServerSpawn,
GameEvent::ServerChangeLevelFailed(_) => {
GameEventType::ServerChangeLevelFailed
}
GameEvent::ServerShutdown(_) => GameEventType::ServerShutdown,
GameEvent::ServerCvar(_) => GameEventType::ServerCvar,
GameEvent::ServerMessage(_) => GameEventType::ServerMessage,
GameEvent::ServerAddBan(_) => GameEventType::ServerAddBan,
GameEvent::ServerRemoveBan(_) => GameEventType::ServerRemoveBan,
GameEvent::PlayerConnect(_) => GameEventType::PlayerConnect,
GameEvent::PlayerConnectClient(_) => GameEventType::PlayerConnectClient,
GameEvent::PlayerInfo(_) => GameEventType::PlayerInfo,
GameEvent::PlayerDisconnect(_) => GameEventType::PlayerDisconnect,
GameEvent::PlayerActivate(_) => GameEventType::PlayerActivate,
GameEvent::PlayerSay(_) => GameEventType::PlayerSay,
GameEvent::ClientDisconnect(_) => GameEventType::ClientDisconnect,
GameEvent::ClientBeginConnect(_) => GameEventType::ClientBeginConnect,
GameEvent::ClientConnected(_) => GameEventType::ClientConnected,
GameEvent::ClientFullConnect(_) => GameEventType::ClientFullConnect,
GameEvent::HostQuit(_) => GameEventType::HostQuit,
GameEvent::TeamInfo(_) => GameEventType::TeamInfo,
GameEvent::TeamScore(_) => GameEventType::TeamScore,
GameEvent::TeamPlayBroadcastAudio(_) => GameEventType::TeamPlayBroadcastAudio,
GameEvent::PlayerTeam(_) => GameEventType::PlayerTeam,
GameEvent::PlayerClass(_) => GameEventType::PlayerClass,
GameEvent::PlayerDeath(_) => GameEventType::PlayerDeath,
GameEvent::PlayerHurt(_) => GameEventType::PlayerHurt,
GameEvent::PlayerChat(_) => GameEventType::PlayerChat,
GameEvent::PlayerScore(_) => GameEventType::PlayerScore,
GameEvent::PlayerSpawn(_) => GameEventType::PlayerSpawn,
GameEvent::PlayerShoot(_) => GameEventType::PlayerShoot,
GameEvent::PlayerUse(_) => GameEventType::PlayerUse,
GameEvent::PlayerChangeName(_) => GameEventType::PlayerChangeName,
GameEvent::PlayerHintMessage(_) => GameEventType::PlayerHintMessage,
GameEvent::BasePlayerTeleported(_) => GameEventType::BasePlayerTeleported,
GameEvent::GameInit(_) => GameEventType::GameInit,
GameEvent::GameNewMap(_) => GameEventType::GameNewMap,
GameEvent::GameStart(_) => GameEventType::GameStart,
GameEvent::GameEnd(_) => GameEventType::GameEnd,
GameEvent::RoundStart(_) => GameEventType::RoundStart,
GameEvent::RoundEnd(_) => GameEventType::RoundEnd,
GameEvent::GameMessage(_) => GameEventType::GameMessage,
GameEvent::BreakBreakable(_) => GameEventType::BreakBreakable,
GameEvent::BreakProp(_) => GameEventType::BreakProp,
GameEvent::EntityKilled(_) => GameEventType::EntityKilled,
GameEvent::BonusUpdated(_) => GameEventType::BonusUpdated,
GameEvent::AchievementEvent(_) => GameEventType::AchievementEvent,
GameEvent::AchievementIncrement(_) => GameEventType::AchievementIncrement,
GameEvent::PhysgunPickup(_) => GameEventType::PhysgunPickup,
GameEvent::FlareIgniteNpc(_) => GameEventType::FlareIgniteNpc,
GameEvent::HelicopterGrenadePuntMiss(_) => {
GameEventType::HelicopterGrenadePuntMiss
}
GameEvent::UserDataDownloaded(_) => GameEventType::UserDataDownloaded,
GameEvent::RagdollDissolved(_) => GameEventType::RagdollDissolved,
GameEvent::HLTVChangedMode(_) => GameEventType::HLTVChangedMode,
GameEvent::HLTVChangedTarget(_) => GameEventType::HLTVChangedTarget,
GameEvent::VoteEnded(_) => GameEventType::VoteEnded,
GameEvent::VoteStarted(_) => GameEventType::VoteStarted,
GameEvent::VoteChanged(_) => GameEventType::VoteChanged,
GameEvent::VotePassed(_) => GameEventType::VotePassed,
GameEvent::VoteFailed(_) => GameEventType::VoteFailed,
GameEvent::VoteCast(_) => GameEventType::VoteCast,
GameEvent::VoteOptions(_) => GameEventType::VoteOptions,
GameEvent::ReplaySaved(_) => GameEventType::ReplaySaved,
GameEvent::EnteredPerformanceMode(_) => GameEventType::EnteredPerformanceMode,
GameEvent::BrowseReplays(_) => GameEventType::BrowseReplays,
GameEvent::ReplayYoutubeStats(_) => GameEventType::ReplayYoutubeStats,
GameEvent::InventoryUpdated(_) => GameEventType::InventoryUpdated,
GameEvent::CartUpdated(_) => GameEventType::CartUpdated,
GameEvent::StorePriceSheetUpdated(_) => GameEventType::StorePriceSheetUpdated,
GameEvent::EconInventoryConnected(_) => GameEventType::EconInventoryConnected,
GameEvent::ItemSchemaInitialized(_) => GameEventType::ItemSchemaInitialized,
GameEvent::GcNewSession(_) => GameEventType::GcNewSession,
GameEvent::GcLostSession(_) => GameEventType::GcLostSession,
GameEvent::IntroFinish(_) => GameEventType::IntroFinish,
GameEvent::IntroNextCamera(_) => GameEventType::IntroNextCamera,
GameEvent::PlayerChangeClass(_) => GameEventType::PlayerChangeClass,
GameEvent::TfMapTimeRemaining(_) => GameEventType::TfMapTimeRemaining,
GameEvent::TfGameOver(_) => GameEventType::TfGameOver,
GameEvent::CtfFlagCaptured(_) => GameEventType::CtfFlagCaptured,
GameEvent::ControlPointInitialized(_) => {
GameEventType::ControlPointInitialized
}
GameEvent::ControlPointUpdateImages(_) => {
GameEventType::ControlPointUpdateImages
}
GameEvent::ControlPointUpdateLayout(_) => {
GameEventType::ControlPointUpdateLayout
}
GameEvent::ControlPointUpdateCapping(_) => {
GameEventType::ControlPointUpdateCapping
}
GameEvent::ControlPointUpdateOwner(_) => {
GameEventType::ControlPointUpdateOwner
}
GameEvent::ControlPointStartTouch(_) => GameEventType::ControlPointStartTouch,
GameEvent::ControlPointEndTouch(_) => GameEventType::ControlPointEndTouch,
GameEvent::ControlPointPulseElement(_) => {
GameEventType::ControlPointPulseElement
}
GameEvent::ControlPointFakeCapture(_) => {
GameEventType::ControlPointFakeCapture
}
GameEvent::ControlPointFakeCaptureMultiplier(_) => {
GameEventType::ControlPointFakeCaptureMultiplier
}
GameEvent::TeamPlayRoundSelected(_) => GameEventType::TeamPlayRoundSelected,
GameEvent::TeamPlayRoundStart(_) => GameEventType::TeamPlayRoundStart,
GameEvent::TeamPlayRoundActive(_) => GameEventType::TeamPlayRoundActive,
GameEvent::TeamPlayWaitingBegins(_) => GameEventType::TeamPlayWaitingBegins,
GameEvent::TeamPlayWaitingEnds(_) => GameEventType::TeamPlayWaitingEnds,
GameEvent::TeamPlayWaitingAboutToEnd(_) => {
GameEventType::TeamPlayWaitingAboutToEnd
}
GameEvent::TeamPlayRestartRound(_) => GameEventType::TeamPlayRestartRound,
GameEvent::TeamPlayReadyRestart(_) => GameEventType::TeamPlayReadyRestart,
GameEvent::TeamPlayRoundRestartSeconds(_) => {
GameEventType::TeamPlayRoundRestartSeconds
}
GameEvent::TeamPlayTeamReady(_) => GameEventType::TeamPlayTeamReady,
GameEvent::TeamPlayRoundWin(_) => GameEventType::TeamPlayRoundWin,
GameEvent::TeamPlayUpdateTimer(_) => GameEventType::TeamPlayUpdateTimer,
GameEvent::TeamPlayRoundStalemate(_) => GameEventType::TeamPlayRoundStalemate,
GameEvent::TeamPlayOvertimeBegin(_) => GameEventType::TeamPlayOvertimeBegin,
GameEvent::TeamPlayOvertimeEnd(_) => GameEventType::TeamPlayOvertimeEnd,
GameEvent::TeamPlaySuddenDeathBegin(_) => {
GameEventType::TeamPlaySuddenDeathBegin
}
GameEvent::TeamPlaySuddenDeathEnd(_) => GameEventType::TeamPlaySuddenDeathEnd,
GameEvent::TeamPlayGameOver(_) => GameEventType::TeamPlayGameOver,
GameEvent::TeamPlayMapTimeRemaining(_) => {
GameEventType::TeamPlayMapTimeRemaining
}
GameEvent::TeamPlayTimerFlash(_) => GameEventType::TeamPlayTimerFlash,
GameEvent::TeamPlayTimerTimeAdded(_) => GameEventType::TeamPlayTimerTimeAdded,
GameEvent::TeamPlayPointStartCapture(_) => {
GameEventType::TeamPlayPointStartCapture
}
GameEvent::TeamPlayPointCaptured(_) => GameEventType::TeamPlayPointCaptured,
GameEvent::TeamPlayPointLocked(_) => GameEventType::TeamPlayPointLocked,
GameEvent::TeamPlayPointUnlocked(_) => GameEventType::TeamPlayPointUnlocked,
GameEvent::TeamPlayCaptureBroken(_) => GameEventType::TeamPlayCaptureBroken,
GameEvent::TeamPlayCaptureBlocked(_) => GameEventType::TeamPlayCaptureBlocked,
GameEvent::TeamPlayFlagEvent(_) => GameEventType::TeamPlayFlagEvent,
GameEvent::TeamPlayWinPanel(_) => GameEventType::TeamPlayWinPanel,
GameEvent::TeamPlayTeamBalancedPlayer(_) => {
GameEventType::TeamPlayTeamBalancedPlayer
}
GameEvent::TeamPlaySetupFinished(_) => GameEventType::TeamPlaySetupFinished,
GameEvent::TeamPlayAlert(_) => GameEventType::TeamPlayAlert,
GameEvent::TrainingComplete(_) => GameEventType::TrainingComplete,
GameEvent::ShowFreezePanel(_) => GameEventType::ShowFreezePanel,
GameEvent::HideFreezePanel(_) => GameEventType::HideFreezePanel,
GameEvent::FreezeCamStarted(_) => GameEventType::FreezeCamStarted,
GameEvent::LocalPlayerChangeTeam(_) => GameEventType::LocalPlayerChangeTeam,
GameEvent::LocalPlayerScoreChanged(_) => {
GameEventType::LocalPlayerScoreChanged
}
GameEvent::LocalPlayerChangeClass(_) => GameEventType::LocalPlayerChangeClass,
GameEvent::LocalPlayerRespawn(_) => GameEventType::LocalPlayerRespawn,
GameEvent::BuildingInfoChanged(_) => GameEventType::BuildingInfoChanged,
GameEvent::LocalPlayerChangeDisguise(_) => {
GameEventType::LocalPlayerChangeDisguise
}
GameEvent::PlayerAccountChanged(_) => GameEventType::PlayerAccountChanged,
GameEvent::SpyPdaReset(_) => GameEventType::SpyPdaReset,
GameEvent::FlagStatusUpdate(_) => GameEventType::FlagStatusUpdate,
GameEvent::PlayerStatsUpdated(_) => GameEventType::PlayerStatsUpdated,
GameEvent::PlayingCommentary(_) => GameEventType::PlayingCommentary,
GameEvent::PlayerChargeDeployed(_) => GameEventType::PlayerChargeDeployed,
GameEvent::PlayerBuiltObject(_) => GameEventType::PlayerBuiltObject,
GameEvent::PlayerUpgradedObject(_) => GameEventType::PlayerUpgradedObject,
GameEvent::PlayerCarryObject(_) => GameEventType::PlayerCarryObject,
GameEvent::PlayerDropObject(_) => GameEventType::PlayerDropObject,
GameEvent::ObjectRemoved(_) => GameEventType::ObjectRemoved,
GameEvent::ObjectDestroyed(_) => GameEventType::ObjectDestroyed,
GameEvent::ObjectDetonated(_) => GameEventType::ObjectDetonated,
GameEvent::AchievementEarned(_) => GameEventType::AchievementEarned,
GameEvent::SpecTargetUpdated(_) => GameEventType::SpecTargetUpdated,
GameEvent::TournamentStateUpdate(_) => GameEventType::TournamentStateUpdate,
GameEvent::TournamentEnableCountdown(_) => {
GameEventType::TournamentEnableCountdown
}
GameEvent::PlayerCalledForMedic(_) => GameEventType::PlayerCalledForMedic,
GameEvent::PlayerAskedForBall(_) => GameEventType::PlayerAskedForBall,
GameEvent::LocalPlayerBecameObserver(_) => {
GameEventType::LocalPlayerBecameObserver
}
GameEvent::PlayerIgnitedInv(_) => GameEventType::PlayerIgnitedInv,
GameEvent::PlayerIgnited(_) => GameEventType::PlayerIgnited,
GameEvent::PlayerExtinguished(_) => GameEventType::PlayerExtinguished,
GameEvent::PlayerTeleported(_) => GameEventType::PlayerTeleported,
GameEvent::PlayerHealedMedicCall(_) => GameEventType::PlayerHealedMedicCall,
GameEvent::LocalPlayerChargeReady(_) => GameEventType::LocalPlayerChargeReady,
GameEvent::LocalPlayerWindDown(_) => GameEventType::LocalPlayerWindDown,
GameEvent::PlayerInvulned(_) => GameEventType::PlayerInvulned,
GameEvent::EscortSpeed(_) => GameEventType::EscortSpeed,
GameEvent::EscortProgress(_) => GameEventType::EscortProgress,
GameEvent::EscortRecede(_) => GameEventType::EscortRecede,
GameEvent::GameUIActivated(_) => GameEventType::GameUIActivated,
GameEvent::GameUIHidden(_) => GameEventType::GameUIHidden,
GameEvent::PlayerEscortScore(_) => GameEventType::PlayerEscortScore,
GameEvent::PlayerHealOnHit(_) => GameEventType::PlayerHealOnHit,
GameEvent::PlayerStealSandvich(_) => GameEventType::PlayerStealSandvich,
GameEvent::ShowClassLayout(_) => GameEventType::ShowClassLayout,
GameEvent::ShowVsPanel(_) => GameEventType::ShowVsPanel,
GameEvent::PlayerDamaged(_) => GameEventType::PlayerDamaged,
GameEvent::ArenaPlayerNotification(_) => {
GameEventType::ArenaPlayerNotification
}
GameEvent::ArenaMatchMaxStreak(_) => GameEventType::ArenaMatchMaxStreak,
GameEvent::ArenaRoundStart(_) => GameEventType::ArenaRoundStart,
GameEvent::ArenaWinPanel(_) => GameEventType::ArenaWinPanel,
GameEvent::PveWinPanel(_) => GameEventType::PveWinPanel,
GameEvent::AirDash(_) => GameEventType::AirDash,
GameEvent::Landed(_) => GameEventType::Landed,
GameEvent::PlayerDamageDodged(_) => GameEventType::PlayerDamageDodged,
GameEvent::PlayerStunned(_) => GameEventType::PlayerStunned,
GameEvent::ScoutGrandSlam(_) => GameEventType::ScoutGrandSlam,
GameEvent::ScoutSlamdollLanded(_) => GameEventType::ScoutSlamdollLanded,
GameEvent::ArrowImpact(_) => GameEventType::ArrowImpact,
GameEvent::PlayerJarated(_) => GameEventType::PlayerJarated,
GameEvent::PlayerJaratedFade(_) => GameEventType::PlayerJaratedFade,
GameEvent::PlayerShieldBlocked(_) => GameEventType::PlayerShieldBlocked,
GameEvent::PlayerPinned(_) => GameEventType::PlayerPinned,
GameEvent::PlayerHealedByMedic(_) => GameEventType::PlayerHealedByMedic,
GameEvent::PlayerSappedObject(_) => GameEventType::PlayerSappedObject,
GameEvent::ItemFound(_) => GameEventType::ItemFound,
GameEvent::ShowAnnotation(_) => GameEventType::ShowAnnotation,
GameEvent::HideAnnotation(_) => GameEventType::HideAnnotation,
GameEvent::PostInventoryApplication(_) => {
GameEventType::PostInventoryApplication
}
GameEvent::ControlPointUnlockUpdated(_) => {
GameEventType::ControlPointUnlockUpdated
}
GameEvent::DeployBuffBanner(_) => GameEventType::DeployBuffBanner,
GameEvent::PlayerBuff(_) => GameEventType::PlayerBuff,
GameEvent::MedicDeath(_) => GameEventType::MedicDeath,
GameEvent::OvertimeNag(_) => GameEventType::OvertimeNag,
GameEvent::TeamsChanged(_) => GameEventType::TeamsChanged,
GameEvent::HalloweenPumpkinGrab(_) => GameEventType::HalloweenPumpkinGrab,
GameEvent::RocketJump(_) => GameEventType::RocketJump,
GameEvent::RocketJumpLanded(_) => GameEventType::RocketJumpLanded,
GameEvent::StickyJump(_) => GameEventType::StickyJump,
GameEvent::StickyJumpLanded(_) => GameEventType::StickyJumpLanded,
GameEvent::RocketPackLaunch(_) => GameEventType::RocketPackLaunch,
GameEvent::RocketPackLanded(_) => GameEventType::RocketPackLanded,
GameEvent::MedicDefended(_) => GameEventType::MedicDefended,
GameEvent::LocalPlayerHealed(_) => GameEventType::LocalPlayerHealed,
GameEvent::PlayerDestroyedPipeBomb(_) => {
GameEventType::PlayerDestroyedPipeBomb
}
GameEvent::ObjectDeflected(_) => GameEventType::ObjectDeflected,
GameEvent::PlayerMvp(_) => GameEventType::PlayerMvp,
GameEvent::RaidSpawnMob(_) => GameEventType::RaidSpawnMob,
GameEvent::RaidSpawnSquad(_) => GameEventType::RaidSpawnSquad,
GameEvent::NavBlocked(_) => GameEventType::NavBlocked,
GameEvent::PathTrackPassed(_) => GameEventType::PathTrackPassed,
GameEvent::NumCappersChanged(_) => GameEventType::NumCappersChanged,
GameEvent::PlayerRegenerate(_) => GameEventType::PlayerRegenerate,
GameEvent::UpdateStatusItem(_) => GameEventType::UpdateStatusItem,
GameEvent::StatsResetRound(_) => GameEventType::StatsResetRound,
GameEvent::ScoreStatsAccumulatedUpdate(_) => {
GameEventType::ScoreStatsAccumulatedUpdate
}
GameEvent::ScoreStatsAccumulatedReset(_) => {
GameEventType::ScoreStatsAccumulatedReset
}
GameEvent::AchievementEarnedLocal(_) => GameEventType::AchievementEarnedLocal,
GameEvent::PlayerHealed(_) => GameEventType::PlayerHealed,
GameEvent::BuildingHealed(_) => GameEventType::BuildingHealed,
GameEvent::ItemPickup(_) => GameEventType::ItemPickup,
GameEvent::DuelStatus(_) => GameEventType::DuelStatus,
GameEvent::FishNotice(_) => GameEventType::FishNotice,
GameEvent::FishNoticeArm(_) => GameEventType::FishNoticeArm,
GameEvent::SlapNotice(_) => GameEventType::SlapNotice,
GameEvent::ThrowableHit(_) => GameEventType::ThrowableHit,
GameEvent::PumpkinLordSummoned(_) => GameEventType::PumpkinLordSummoned,
GameEvent::PumpkinLordKilled(_) => GameEventType::PumpkinLordKilled,
GameEvent::MerasmusSummoned(_) => GameEventType::MerasmusSummoned,
GameEvent::MerasmusKilled(_) => GameEventType::MerasmusKilled,
GameEvent::MerasmusEscapeWarning(_) => GameEventType::MerasmusEscapeWarning,
GameEvent::MerasmusEscaped(_) => GameEventType::MerasmusEscaped,
GameEvent::EyeballBossSummoned(_) => GameEventType::EyeballBossSummoned,
GameEvent::EyeballBossStunned(_) => GameEventType::EyeballBossStunned,
GameEvent::EyeballBossKilled(_) => GameEventType::EyeballBossKilled,
GameEvent::EyeballBossKiller(_) => GameEventType::EyeballBossKiller,
GameEvent::EyeballBossEscapeImminent(_) => {
GameEventType::EyeballBossEscapeImminent
}
GameEvent::EyeballBossEscaped(_) => GameEventType::EyeballBossEscaped,
GameEvent::NpcHurt(_) => GameEventType::NpcHurt,
GameEvent::ControlPointTimerUpdated(_) => {
GameEventType::ControlPointTimerUpdated
}
GameEvent::PlayerHighFiveStart(_) => GameEventType::PlayerHighFiveStart,
GameEvent::PlayerHighFiveCancel(_) => GameEventType::PlayerHighFiveCancel,
GameEvent::PlayerHighFiveSuccess(_) => GameEventType::PlayerHighFiveSuccess,
GameEvent::PlayerBonusPoints(_) => GameEventType::PlayerBonusPoints,
GameEvent::PlayerUpgraded(_) => GameEventType::PlayerUpgraded,
GameEvent::PlayerBuyback(_) => GameEventType::PlayerBuyback,
GameEvent::PlayerUsedPowerUpBottle(_) => {
GameEventType::PlayerUsedPowerUpBottle
}
GameEvent::ChristmasGiftGrab(_) => GameEventType::ChristmasGiftGrab,
GameEvent::PlayerKilledAchievementZone(_) => {
GameEventType::PlayerKilledAchievementZone
}
GameEvent::PartyUpdated(_) => GameEventType::PartyUpdated,
GameEvent::PartyPrefChanged(_) => GameEventType::PartyPrefChanged,
GameEvent::PartyCriteriaChanged(_) => GameEventType::PartyCriteriaChanged,
GameEvent::PartyInvitesChanged(_) => GameEventType::PartyInvitesChanged,
GameEvent::PartyQueueStateChanged(_) => GameEventType::PartyQueueStateChanged,
GameEvent::PartyChat(_) => GameEventType::PartyChat,
GameEvent::PartyMemberJoin(_) => GameEventType::PartyMemberJoin,
GameEvent::PartyMemberLeave(_) => GameEventType::PartyMemberLeave,
GameEvent::MatchInvitesUpdated(_) => GameEventType::MatchInvitesUpdated,
GameEvent::LobbyUpdated(_) => GameEventType::LobbyUpdated,
GameEvent::MvmMissionUpdate(_) => GameEventType::MvmMissionUpdate,
GameEvent::RecalculateHolidays(_) => GameEventType::RecalculateHolidays,
GameEvent::PlayerCurrencyChanged(_) => GameEventType::PlayerCurrencyChanged,
GameEvent::DoomsdayRocketOpen(_) => GameEventType::DoomsdayRocketOpen,
GameEvent::RemoveNemesisRelationships(_) => {
GameEventType::RemoveNemesisRelationships
}
GameEvent::MvmCreditBonusWave(_) => GameEventType::MvmCreditBonusWave,
GameEvent::MvmCreditBonusAll(_) => GameEventType::MvmCreditBonusAll,
GameEvent::MvmCreditBonusAllAdvanced(_) => {
GameEventType::MvmCreditBonusAllAdvanced
}
GameEvent::MvmQuickSentryUpgrade(_) => GameEventType::MvmQuickSentryUpgrade,
GameEvent::MvmTankDestroyedByPlayers(_) => {
GameEventType::MvmTankDestroyedByPlayers
}
GameEvent::MvmKillRobotDeliveringBomb(_) => {
GameEventType::MvmKillRobotDeliveringBomb
}
GameEvent::MvmPickupCurrency(_) => GameEventType::MvmPickupCurrency,
GameEvent::MvmBombCarrierKilled(_) => GameEventType::MvmBombCarrierKilled,
GameEvent::MvmSentryBusterDetonate(_) => {
GameEventType::MvmSentryBusterDetonate
}
GameEvent::MvmScoutMarkedForDeath(_) => GameEventType::MvmScoutMarkedForDeath,
GameEvent::MvmMedicPowerUpShared(_) => GameEventType::MvmMedicPowerUpShared,
GameEvent::MvmBeginWave(_) => GameEventType::MvmBeginWave,
GameEvent::MvmWaveComplete(_) => GameEventType::MvmWaveComplete,
GameEvent::MvmMissionComplete(_) => GameEventType::MvmMissionComplete,
GameEvent::MvmBombResetByPlayer(_) => GameEventType::MvmBombResetByPlayer,
GameEvent::MvmBombAlarmTriggered(_) => GameEventType::MvmBombAlarmTriggered,
GameEvent::MvmBombDeployResetByPlayer(_) => {
GameEventType::MvmBombDeployResetByPlayer
}
GameEvent::MvmWaveFailed(_) => GameEventType::MvmWaveFailed,
GameEvent::MvmResetStats(_) => GameEventType::MvmResetStats,
GameEvent::DamageResisted(_) => GameEventType::DamageResisted,
GameEvent::RevivePlayerNotify(_) => GameEventType::RevivePlayerNotify,
GameEvent::RevivePlayerStopped(_) => GameEventType::RevivePlayerStopped,
GameEvent::RevivePlayerComplete(_) => GameEventType::RevivePlayerComplete,
GameEvent::PlayerTurnedToGhost(_) => GameEventType::PlayerTurnedToGhost,
GameEvent::MedigunShieldBlockedDamage(_) => {
GameEventType::MedigunShieldBlockedDamage
}
GameEvent::MvmAdvWaveCompleteNoGates(_) => {
GameEventType::MvmAdvWaveCompleteNoGates
}
GameEvent::MvmSniperHeadshotCurrency(_) => {
GameEventType::MvmSniperHeadshotCurrency
}
GameEvent::MvmMannhattanPit(_) => GameEventType::MvmMannhattanPit,
GameEvent::FlagCarriedInDetectionZone(_) => {
GameEventType::FlagCarriedInDetectionZone
}
GameEvent::MvmAdvWaveKilledStunRadio(_) => {
GameEventType::MvmAdvWaveKilledStunRadio
}
GameEvent::PlayerDirectHitStun(_) => GameEventType::PlayerDirectHitStun,
GameEvent::MvmSentryBusterKilled(_) => GameEventType::MvmSentryBusterKilled,
GameEvent::UpgradesFileChanged(_) => GameEventType::UpgradesFileChanged,
GameEvent::RdTeamPointsChanged(_) => GameEventType::RdTeamPointsChanged,
GameEvent::RdRulesStateChanged(_) => GameEventType::RdRulesStateChanged,
GameEvent::RdRobotKilled(_) => GameEventType::RdRobotKilled,
GameEvent::RdRobotImpact(_) => GameEventType::RdRobotImpact,
GameEvent::TeamPlayPreRoundTimeLeft(_) => {
GameEventType::TeamPlayPreRoundTimeLeft
}
GameEvent::ParachuteDeploy(_) => GameEventType::ParachuteDeploy,
GameEvent::ParachuteHolster(_) => GameEventType::ParachuteHolster,
GameEvent::KillRefillsMeter(_) => GameEventType::KillRefillsMeter,
GameEvent::RpsTauntEvent(_) => GameEventType::RpsTauntEvent,
GameEvent::CongaKill(_) => GameEventType::CongaKill,
GameEvent::PlayerInitialSpawn(_) => GameEventType::PlayerInitialSpawn,
GameEvent::CompetitiveVictory(_) => GameEventType::CompetitiveVictory,
GameEvent::CompetitiveStatsUpdate(_) => GameEventType::CompetitiveStatsUpdate,
GameEvent::MiniGameWin(_) => GameEventType::MiniGameWin,
GameEvent::SentryOnGoActive(_) => GameEventType::SentryOnGoActive,
GameEvent::DuckXpLevelUp(_) => GameEventType::DuckXpLevelUp,
GameEvent::QuestLogOpened(_) => GameEventType::QuestLogOpened,
GameEvent::SchemaUpdated(_) => GameEventType::SchemaUpdated,
GameEvent::LocalPlayerPickupWeapon(_) => {
GameEventType::LocalPlayerPickupWeapon
}
GameEvent::RdPlayerScorePoints(_) => GameEventType::RdPlayerScorePoints,
GameEvent::DemomanDetStickies(_) => GameEventType::DemomanDetStickies,
GameEvent::QuestObjectiveCompleted(_) => {
GameEventType::QuestObjectiveCompleted
}
GameEvent::PlayerScoreChanged(_) => GameEventType::PlayerScoreChanged,
GameEvent::KilledCappingPlayer(_) => GameEventType::KilledCappingPlayer,
GameEvent::EnvironmentalDeath(_) => GameEventType::EnvironmentalDeath,
GameEvent::ProjectileDirectHit(_) => GameEventType::ProjectileDirectHit,
GameEvent::PassGet(_) => GameEventType::PassGet,
GameEvent::PassScore(_) => GameEventType::PassScore,
GameEvent::PassFree(_) => GameEventType::PassFree,
GameEvent::PassPassCaught(_) => GameEventType::PassPassCaught,
GameEvent::PassBallStolen(_) => GameEventType::PassBallStolen,
GameEvent::PassBallBlocked(_) => GameEventType::PassBallBlocked,
GameEvent::DamagePrevented(_) => GameEventType::DamagePrevented,
GameEvent::HalloweenBossKilled(_) => GameEventType::HalloweenBossKilled,
GameEvent::EscapedLootIsland(_) => GameEventType::EscapedLootIsland,
GameEvent::TaggedPlayerAsIt(_) => GameEventType::TaggedPlayerAsIt,
GameEvent::MerasmusStunned(_) => GameEventType::MerasmusStunned,
GameEvent::MerasmusPropFound(_) => GameEventType::MerasmusPropFound,
GameEvent::HalloweenSkeletonKilled(_) => {
GameEventType::HalloweenSkeletonKilled
}
GameEvent::EscapeHell(_) => GameEventType::EscapeHell,
GameEvent::CrossSpectralBridge(_) => GameEventType::CrossSpectralBridge,
GameEvent::MiniGameWon(_) => GameEventType::MiniGameWon,
GameEvent::RespawnGhost(_) => GameEventType::RespawnGhost,
GameEvent::KillInHell(_) => GameEventType::KillInHell,
GameEvent::HalloweenDuckCollected(_) => GameEventType::HalloweenDuckCollected,
GameEvent::SpecialScore(_) => GameEventType::SpecialScore,
GameEvent::TeamLeaderKilled(_) => GameEventType::TeamLeaderKilled,
GameEvent::HalloweenSoulCollected(_) => GameEventType::HalloweenSoulCollected,
GameEvent::RecalculateTruce(_) => GameEventType::RecalculateTruce,
GameEvent::DeadRingerCheatDeath(_) => GameEventType::DeadRingerCheatDeath,
GameEvent::CrossbowHeal(_) => GameEventType::CrossbowHeal,
GameEvent::DamageMitigated(_) => GameEventType::DamageMitigated,
GameEvent::PayloadPushed(_) => GameEventType::PayloadPushed,
GameEvent::PlayerAbandonedMatch(_) => GameEventType::PlayerAbandonedMatch,
GameEvent::ClDrawline(_) => GameEventType::ClDrawline,
GameEvent::RestartTimerTime(_) => GameEventType::RestartTimerTime,
GameEvent::WinLimitChanged(_) => GameEventType::WinLimitChanged,
GameEvent::WinPanelShowScores(_) => GameEventType::WinPanelShowScores,
GameEvent::TopStreamsRequestFinished(_) => {
GameEventType::TopStreamsRequestFinished
}
GameEvent::CompetitiveStateChanged(_) => {
GameEventType::CompetitiveStateChanged
}
GameEvent::GlobalWarDataUpdated(_) => GameEventType::GlobalWarDataUpdated,
GameEvent::StopWatchChanged(_) => GameEventType::StopWatchChanged,
GameEvent::DsStop(_) => GameEventType::DsStop,
GameEvent::DsScreenshot(_) => GameEventType::DsScreenshot,
GameEvent::ShowMatchSummary(_) => GameEventType::ShowMatchSummary,
GameEvent::ExperienceChanged(_) => GameEventType::ExperienceChanged,
GameEvent::BeginXpLerp(_) => GameEventType::BeginXpLerp,
GameEvent::MatchmakerStatsUpdated(_) => GameEventType::MatchmakerStatsUpdated,
GameEvent::RematchVotePeriodOver(_) => GameEventType::RematchVotePeriodOver,
GameEvent::RematchFailedToCreate(_) => GameEventType::RematchFailedToCreate,
GameEvent::PlayerRematchChange(_) => GameEventType::PlayerRematchChange,
GameEvent::PingUpdated(_) => GameEventType::PingUpdated,
GameEvent::MMStatsUpdated(_) => GameEventType::MMStatsUpdated,
GameEvent::PlayerNextMapVoteChange(_) => {
GameEventType::PlayerNextMapVoteChange
}
GameEvent::VoteMapsChanged(_) => GameEventType::VoteMapsChanged,
GameEvent::ProtoDefChanged(_) => GameEventType::ProtoDefChanged,
GameEvent::PlayerDomination(_) => GameEventType::PlayerDomination,
GameEvent::PlayerRocketPackPushed(_) => GameEventType::PlayerRocketPackPushed,
GameEvent::QuestRequest(_) => GameEventType::QuestRequest,
GameEvent::QuestResponse(_) => GameEventType::QuestResponse,
GameEvent::QuestProgress(_) => GameEventType::QuestProgress,
GameEvent::ProjectileRemoved(_) => GameEventType::ProjectileRemoved,
GameEvent::QuestMapDataChanged(_) => GameEventType::QuestMapDataChanged,
GameEvent::GasDousedPlayerIgnited(_) => GameEventType::GasDousedPlayerIgnited,
GameEvent::QuestTurnInState(_) => GameEventType::QuestTurnInState,
GameEvent::ItemsAcknowledged(_) => GameEventType::ItemsAcknowledged,
GameEvent::CapperKilled(_) => GameEventType::CapperKilled,
GameEvent::MainMenuStabilized(_) => GameEventType::MainMenuStabilized,
GameEvent::WorldStatusChanged(_) => GameEventType::WorldStatusChanged,
GameEvent::HLTVStatus(_) => GameEventType::HLTVStatus,
GameEvent::HLTVCameraman(_) => GameEventType::HLTVCameraman,
GameEvent::HLTVRankCamera(_) => GameEventType::HLTVRankCamera,
GameEvent::HLTVRankEntity(_) => GameEventType::HLTVRankEntity,
GameEvent::HLTVFixed(_) => GameEventType::HLTVFixed,
GameEvent::HLTVChase(_) => GameEventType::HLTVChase,
GameEvent::HLTVMessage(_) => GameEventType::HLTVMessage,
GameEvent::HLTVTitle(_) => GameEventType::HLTVTitle,
GameEvent::HLTVChat(_) => GameEventType::HLTVChat,
GameEvent::ReplayStartRecord(_) => GameEventType::ReplayStartRecord,
GameEvent::ReplaySessionInfo(_) => GameEventType::ReplaySessionInfo,
GameEvent::ReplayEndRecord(_) => GameEventType::ReplayEndRecord,
GameEvent::ReplayReplaysAvailable(_) => GameEventType::ReplayReplaysAvailable,
GameEvent::ReplayServerError(_) => GameEventType::ReplayServerError,
GameEvent::Unknown(raw) => raw.event_type.clone(),
}
}
}
pub fn get_sizes() -> fnv::FnvHashMap<&'static str, usize> {
[