mirror of
https://codeberg.org/demostf/parser.git
synced 2026-06-03 18:24:05 +02:00
gameevent parsing
This commit is contained in:
parent
cc7f9a48cd
commit
bac1159e39
5 changed files with 694 additions and 713 deletions
|
|
@ -1,6 +1,7 @@
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use crate::{Result, ParseError};
|
use crate::{Result, ParseError};
|
||||||
use super::gamevent::{FromGameEventValue, GameEventValue, FromRawGameEvent, RawGameEvent};
|
use super::gamevent::{FromGameEventValue, GameEventValue, FromRawGameEvent, RawGameEvent};
|
||||||
|
use bitstream_reader::BitRead;
|
||||||
|
|
||||||
/// auto generated
|
/// auto generated
|
||||||
pub struct ServerSpawnEvent {
|
pub struct ServerSpawnEvent {
|
||||||
|
|
@ -7643,326 +7644,646 @@ pub enum GameEvent {
|
||||||
ReplayServerError(ReplayServerErrorEvent)
|
ReplayServerError(ReplayServerErrorEvent)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(BitRead, Clone, Copy, Debug, PartialEq, Eq, Hash)]
|
||||||
|
#[discriminant_bits = 9]
|
||||||
|
pub enum GameEventType {
|
||||||
|
ServerSpawn = 0,
|
||||||
|
ServerShutdown = 1,
|
||||||
|
ServerCvar = 2,
|
||||||
|
ServerMessage = 3,
|
||||||
|
ServerAddBan = 4,
|
||||||
|
ServerRemoveBan = 5,
|
||||||
|
PlayerConnect = 6,
|
||||||
|
PlayerConnectClient = 7,
|
||||||
|
PlayerInfo = 8,
|
||||||
|
PlayerDisconnect = 9,
|
||||||
|
PlayerActivate = 10,
|
||||||
|
PlayerSay = 11,
|
||||||
|
ClientDisconnect = 12,
|
||||||
|
ClientBeginConnect = 13,
|
||||||
|
ClientConnected = 14,
|
||||||
|
ClientFullConnect = 15,
|
||||||
|
HostQuit = 16,
|
||||||
|
TeamInfo = 17,
|
||||||
|
TeamScore = 18,
|
||||||
|
TeamPlayBroadcastAudio = 19,
|
||||||
|
PlayerTeam = 20,
|
||||||
|
PlayerClass = 21,
|
||||||
|
PlayerDeath = 22,
|
||||||
|
PlayerHurt = 23,
|
||||||
|
PlayerChat = 24,
|
||||||
|
PlayerScore = 25,
|
||||||
|
PlayerSpawn = 26,
|
||||||
|
PlayerShoot = 27,
|
||||||
|
PlayerUse = 28,
|
||||||
|
PlayerChangeName = 29,
|
||||||
|
PlayerHintMessage = 30,
|
||||||
|
BasePlayerTeleported = 31,
|
||||||
|
GameInit = 32,
|
||||||
|
GameNewMap = 33,
|
||||||
|
GameStart = 34,
|
||||||
|
GameEnd = 35,
|
||||||
|
RoundStart = 36,
|
||||||
|
RoundEnd = 37,
|
||||||
|
GameMessage = 38,
|
||||||
|
BreakBreakable = 39,
|
||||||
|
BreakProp = 40,
|
||||||
|
EntityKilled = 41,
|
||||||
|
BonusUpdated = 42,
|
||||||
|
AchievementEvent = 43,
|
||||||
|
AchievementIncrement = 44,
|
||||||
|
PhysgunPickup = 45,
|
||||||
|
FlareIgniteNpc = 46,
|
||||||
|
HelicopterGrenadePuntMiss = 47,
|
||||||
|
UserDataDownloaded = 48,
|
||||||
|
RagdollDissolved = 49,
|
||||||
|
HLTVChangedMode = 50,
|
||||||
|
HLTVChangedTarget = 51,
|
||||||
|
VoteEnded = 52,
|
||||||
|
VoteStarted = 53,
|
||||||
|
VoteChanged = 54,
|
||||||
|
VotePassed = 55,
|
||||||
|
VoteFailed = 56,
|
||||||
|
VoteCast = 57,
|
||||||
|
VoteOptions = 58,
|
||||||
|
ReplaySaved = 59,
|
||||||
|
EnteredPerformanceMode = 60,
|
||||||
|
BrowseReplays = 61,
|
||||||
|
ReplayYoutubeStats = 62,
|
||||||
|
InventoryUpdated = 63,
|
||||||
|
CartUpdated = 64,
|
||||||
|
StorePricesheetUpdated = 65,
|
||||||
|
GcConnected = 66,
|
||||||
|
ItemSchemaInitialized = 67,
|
||||||
|
IntroFinish = 68,
|
||||||
|
IntroNextCamera = 69,
|
||||||
|
MmLobbyChat = 70,
|
||||||
|
MmLobbyMemberJoin = 71,
|
||||||
|
MmLobbyMemberLeave = 72,
|
||||||
|
PlayerChangeClass = 73,
|
||||||
|
TfMapTimeRemaining = 74,
|
||||||
|
TfGameOver = 75,
|
||||||
|
CtfFlagCaptured = 76,
|
||||||
|
ControlPointInitialized = 77,
|
||||||
|
ControlPointUpdateImages = 78,
|
||||||
|
ControlPointUpdateLayout = 79,
|
||||||
|
ControlPointUpdateCapping = 80,
|
||||||
|
ControlPointUpdateOwner = 81,
|
||||||
|
ControlPointStartTouch = 82,
|
||||||
|
ControlPointEndTouch = 83,
|
||||||
|
ControlPointPulseElement = 84,
|
||||||
|
ControlPointFakeCapture = 85,
|
||||||
|
ControlPointFakeCaptureMult = 86,
|
||||||
|
TeamPlayRoundSelected = 87,
|
||||||
|
TeamPlayRoundStart = 88,
|
||||||
|
TeamPlayRoundActive = 89,
|
||||||
|
TeamPlayWaitingBegins = 90,
|
||||||
|
TeamPlayWaitingEnds = 91,
|
||||||
|
TeamPlayWaitingAboutToEnd = 92,
|
||||||
|
TeamPlayRestartRound = 93,
|
||||||
|
TeamPlayReadyRestart = 94,
|
||||||
|
TeamPlayRoundRestartSeconds = 95,
|
||||||
|
TeamPlayTeamReady = 96,
|
||||||
|
TeamPlayRoundWin = 97,
|
||||||
|
TeamPlayUpdateTimer = 98,
|
||||||
|
TeamPlayRoundStalemate = 99,
|
||||||
|
TeamPlayOvertimeBegin = 100,
|
||||||
|
TeamPlayOvertimeEnd = 101,
|
||||||
|
TeamPlaySuddenDeathBegin = 102,
|
||||||
|
TeamPlaySuddenDeathEnd = 103,
|
||||||
|
TeamPlayGameOver = 104,
|
||||||
|
TeamPlayMapTimeRemaining = 105,
|
||||||
|
TeamPlayTimerFlash = 106,
|
||||||
|
TeamPlayTimerTimeAdded = 107,
|
||||||
|
TeamPlayPointStartCapture = 108,
|
||||||
|
TeamPlayPointCaptured = 109,
|
||||||
|
TeamPlayPointLocked = 110,
|
||||||
|
TeamPlayPointUnlocked = 111,
|
||||||
|
TeamPlayCaptureBroken = 112,
|
||||||
|
TeamPlayCaptureBlocked = 113,
|
||||||
|
TeamPlayFlagEvent = 114,
|
||||||
|
TeamPlayWinPanel = 115,
|
||||||
|
TeamPlayTeambalancedPlayer = 116,
|
||||||
|
TeamPlaySetupFinished = 117,
|
||||||
|
TeamPlayAlert = 118,
|
||||||
|
TrainingComplete = 119,
|
||||||
|
ShowFreezePanel = 120,
|
||||||
|
HideFreezePanel = 121,
|
||||||
|
FreezeCamStarted = 122,
|
||||||
|
LocalPlayerChangeTeam = 123,
|
||||||
|
LocalPlayerScoreChanged = 124,
|
||||||
|
LocalPlayerChangeClass = 125,
|
||||||
|
LocalPlayerRespawn = 126,
|
||||||
|
BuildingInfoChanged = 127,
|
||||||
|
LocalPlayerChangeDisguise = 128,
|
||||||
|
PlayerAccountChanged = 129,
|
||||||
|
SpyPdaReset = 130,
|
||||||
|
FlagStatusUpdate = 131,
|
||||||
|
PlayerStatsUpdated = 132,
|
||||||
|
PlayingCommentary = 133,
|
||||||
|
PlayerChargedeployed = 134,
|
||||||
|
PlayerBuiltObject = 135,
|
||||||
|
PlayerUpgradedObject = 136,
|
||||||
|
PlayerCarryObject = 137,
|
||||||
|
PlayerDropObject = 138,
|
||||||
|
ObjectRemoved = 139,
|
||||||
|
ObjectDestroyed = 140,
|
||||||
|
ObjectDetonated = 141,
|
||||||
|
AchievementEarned = 142,
|
||||||
|
SpecTargetUpdated = 143,
|
||||||
|
TournamentStateUpdate = 144,
|
||||||
|
TournamentEnableCountdown = 145,
|
||||||
|
PlayerCalledForMedic = 146,
|
||||||
|
LocalPlayerBecameObserver = 147,
|
||||||
|
PlayerIgnitedInv = 148,
|
||||||
|
PlayerIgnited = 149,
|
||||||
|
PlayerExtinguished = 150,
|
||||||
|
PlayerTeleported = 151,
|
||||||
|
PlayerHealedMedicCall = 152,
|
||||||
|
LocalPlayerChargeReady = 153,
|
||||||
|
LocalPlayerWinddown = 154,
|
||||||
|
PlayerInvulned = 155,
|
||||||
|
EscortSpeed = 156,
|
||||||
|
EscortProgress = 157,
|
||||||
|
EscortRecede = 158,
|
||||||
|
GameUIActivated = 159,
|
||||||
|
GameUIHidden = 160,
|
||||||
|
PlayerEscortScore = 161,
|
||||||
|
PlayerHealOnHit = 162,
|
||||||
|
PlayerStealsandvich = 163,
|
||||||
|
ShowClassLayout = 164,
|
||||||
|
ShowVsPanel = 165,
|
||||||
|
PlayerDamaged = 166,
|
||||||
|
ArenaPlayerNotification = 167,
|
||||||
|
ArenaMatchMaxStreak = 168,
|
||||||
|
ArenaRoundStart = 169,
|
||||||
|
ArenaWinPanel = 170,
|
||||||
|
PveWinPanel = 171,
|
||||||
|
AirDash = 172,
|
||||||
|
Landed = 173,
|
||||||
|
PlayerDamageDodged = 174,
|
||||||
|
PlayerStunned = 175,
|
||||||
|
ScoutGrandSlam = 176,
|
||||||
|
ScoutSlamdollLanded = 177,
|
||||||
|
ArrowImpact = 178,
|
||||||
|
PlayerJarated = 179,
|
||||||
|
PlayerJaratedFade = 180,
|
||||||
|
PlayerShieldBlocked = 181,
|
||||||
|
PlayerPinned = 182,
|
||||||
|
PlayerHealedByMedic = 183,
|
||||||
|
PlayerSappedObject = 184,
|
||||||
|
ItemFound = 185,
|
||||||
|
ShowAnnotation = 186,
|
||||||
|
HideAnnotation = 187,
|
||||||
|
PostInventoryApplication = 188,
|
||||||
|
ControlPointUnlockUpdated = 189,
|
||||||
|
DeployBuffBanner = 190,
|
||||||
|
PlayerBuff = 191,
|
||||||
|
MedicDeath = 192,
|
||||||
|
OvertimeNag = 193,
|
||||||
|
TeamsChanged = 194,
|
||||||
|
HalloweenPumpkinGrab = 195,
|
||||||
|
RocketJump = 196,
|
||||||
|
RocketJumpLanded = 197,
|
||||||
|
StickyJump = 198,
|
||||||
|
StickyJumpLanded = 199,
|
||||||
|
MedicDefended = 200,
|
||||||
|
LocalPlayerHealed = 201,
|
||||||
|
PlayerDestroyedPipeBomb = 202,
|
||||||
|
ObjectDeflected = 203,
|
||||||
|
PlayerMvp = 204,
|
||||||
|
RaidSpawnMob = 205,
|
||||||
|
RaidSpawnSquad = 206,
|
||||||
|
NavBlocked = 207,
|
||||||
|
PathTrackPassed = 208,
|
||||||
|
NumCappersChanged = 209,
|
||||||
|
PlayerRegenerate = 210,
|
||||||
|
UpdateStatusItem = 211,
|
||||||
|
StatsResetRound = 212,
|
||||||
|
ScoreStatsAccumulatedUpdate = 213,
|
||||||
|
ScoreStatsAccumulatedReset = 214,
|
||||||
|
AchievementEarnedLocal = 215,
|
||||||
|
PlayerHealed = 216,
|
||||||
|
BuildingHealed = 217,
|
||||||
|
ItemPickup = 218,
|
||||||
|
DuelStatus = 219,
|
||||||
|
FishNotice = 220,
|
||||||
|
FishNoticeArm = 221,
|
||||||
|
ThrowableHit = 222,
|
||||||
|
PumpkinLordSummoned = 223,
|
||||||
|
PumpkinLordKilled = 224,
|
||||||
|
MerasmusSummoned = 225,
|
||||||
|
MerasmusKilled = 226,
|
||||||
|
MerasmusEscapeWarning = 227,
|
||||||
|
MerasmusEscaped = 228,
|
||||||
|
EyeballBossSummoned = 229,
|
||||||
|
EyeballBossStunned = 230,
|
||||||
|
EyeballBossKilled = 231,
|
||||||
|
EyeballBossKiller = 232,
|
||||||
|
EyeballBossEscapeImminent = 233,
|
||||||
|
EyeballBossEscaped = 234,
|
||||||
|
NpcHurt = 235,
|
||||||
|
ControlPointTimerUpdated = 236,
|
||||||
|
PlayerHighfiveStart = 237,
|
||||||
|
PlayerHighfiveCancel = 238,
|
||||||
|
PlayerHighfiveSuccess = 239,
|
||||||
|
PlayerBonusPoints = 240,
|
||||||
|
PlayerUpgraded = 241,
|
||||||
|
PlayerBuyback = 242,
|
||||||
|
PlayerUsedPowerUpBottle = 243,
|
||||||
|
ChristmasGiftGrab = 244,
|
||||||
|
PlayerKilledAchievementZone = 245,
|
||||||
|
PartyUpdated = 246,
|
||||||
|
LobbyUpdated = 247,
|
||||||
|
MvmMissionUpdate = 248,
|
||||||
|
RecalculateHolidays = 249,
|
||||||
|
PlayerCurrencyChanged = 250,
|
||||||
|
DoomsdayRocketOpen = 251,
|
||||||
|
RemoveNemesisRelationships = 252,
|
||||||
|
MvmCreditBonusWave = 253,
|
||||||
|
MvmCreditBonusAll = 254,
|
||||||
|
MvmCreditBonusAllAdvanced = 255,
|
||||||
|
MvmQuickSentryUpgrade = 256,
|
||||||
|
MvmTankDestroyedByPlayers = 257,
|
||||||
|
MvmKillRobotDeliveringBomb = 258,
|
||||||
|
MvmPickupCurrency = 259,
|
||||||
|
MvmBombCarrierKilled = 260,
|
||||||
|
MvmSentryBusterDetonate = 261,
|
||||||
|
MvmScoutMarkedForDeath = 262,
|
||||||
|
MvmMedicPowerupShared = 263,
|
||||||
|
MvmBeginWave = 264,
|
||||||
|
MvmWaveComplete = 265,
|
||||||
|
MvmMissionComplete = 266,
|
||||||
|
MvmBombResetByPlayer = 267,
|
||||||
|
MvmBombAlarmTriggered = 268,
|
||||||
|
MvmBombDeployResetByPlayer = 269,
|
||||||
|
MvmWaveFailed = 270,
|
||||||
|
MvmResetStats = 271,
|
||||||
|
DamageResisted = 272,
|
||||||
|
RevivePlayerNotify = 273,
|
||||||
|
RevivePlayerStopped = 274,
|
||||||
|
RevivePlayerComplete = 275,
|
||||||
|
PlayerTurnedToGhost = 276,
|
||||||
|
MedigunShieldBlockedDamage = 277,
|
||||||
|
MvmAdvWaveCompleteNoGates = 278,
|
||||||
|
MvmSniperHeadshotCurrency = 279,
|
||||||
|
MvmMannhattanPit = 280,
|
||||||
|
FlagCarriedInDetectionZone = 281,
|
||||||
|
MvmAdvWaveKilledStunRadio = 282,
|
||||||
|
PlayerDirecthitStun = 283,
|
||||||
|
MvmSentryBusterKilled = 284,
|
||||||
|
UpgradesFileChanged = 285,
|
||||||
|
RdTeamPointsChanged = 286,
|
||||||
|
RdRulesStateChanged = 287,
|
||||||
|
RdRobotKilled = 288,
|
||||||
|
RdRobotImpact = 289,
|
||||||
|
TeamPlayPreRoundTimeLeft = 290,
|
||||||
|
ParachuteDeploy = 291,
|
||||||
|
ParachuteHolster = 292,
|
||||||
|
KillRefillsMeter = 293,
|
||||||
|
RpsTauntEvent = 294,
|
||||||
|
CongaKill = 295,
|
||||||
|
PlayerInitialSpawn = 296,
|
||||||
|
CompetitiveVictory = 297,
|
||||||
|
CompetitiveSkillratingUpdate = 298,
|
||||||
|
MiniGameWin = 299,
|
||||||
|
SentryOnGoActive = 300,
|
||||||
|
DuckXpLevelUp = 301,
|
||||||
|
HLTVStatus = 302,
|
||||||
|
HLTVCameraman = 303,
|
||||||
|
HLTVRankCamera = 304,
|
||||||
|
HLTVRankEntity = 305,
|
||||||
|
HLTVFixed = 306,
|
||||||
|
HLTVChase = 307,
|
||||||
|
HLTVMessage = 308,
|
||||||
|
HLTVTitle = 309,
|
||||||
|
HLTVChat = 310,
|
||||||
|
ReplayStartRecord = 311,
|
||||||
|
ReplaySessionInfo = 312,
|
||||||
|
ReplayEndRecord = 313,
|
||||||
|
ReplayReplaysAvailable = 314,
|
||||||
|
ReplayServerError = 315
|
||||||
|
}
|
||||||
|
|
||||||
impl GameEvent {
|
impl GameEvent {
|
||||||
fn from_raw_event(event: RawGameEvent) -> Result<Self> {
|
pub fn from_raw_event(event: RawGameEvent) -> Result<Self> {
|
||||||
Ok(match event.name.as_str() {
|
Ok(match event.event_type {
|
||||||
"server_spawn" => GameEvent::ServerSpawn(ServerSpawnEvent::from_raw_event(event.values)?),
|
GameEventType::ServerSpawn => GameEvent::ServerSpawn(ServerSpawnEvent::from_raw_event(event.values)?),
|
||||||
"server_shutdown" => GameEvent::ServerShutdown(ServerShutdownEvent::from_raw_event(event.values)?),
|
GameEventType::ServerShutdown => GameEvent::ServerShutdown(ServerShutdownEvent::from_raw_event(event.values)?),
|
||||||
"server_cvar" => GameEvent::ServerCvar(ServerCvarEvent::from_raw_event(event.values)?),
|
GameEventType::ServerCvar => GameEvent::ServerCvar(ServerCvarEvent::from_raw_event(event.values)?),
|
||||||
"server_message" => GameEvent::ServerMessage(ServerMessageEvent::from_raw_event(event.values)?),
|
GameEventType::ServerMessage => GameEvent::ServerMessage(ServerMessageEvent::from_raw_event(event.values)?),
|
||||||
"server_addban" => GameEvent::ServerAddBan(ServerAddBanEvent::from_raw_event(event.values)?),
|
GameEventType::ServerAddBan => GameEvent::ServerAddBan(ServerAddBanEvent::from_raw_event(event.values)?),
|
||||||
"server_removeban" => GameEvent::ServerRemoveBan(ServerRemoveBanEvent::from_raw_event(event.values)?),
|
GameEventType::ServerRemoveBan => GameEvent::ServerRemoveBan(ServerRemoveBanEvent::from_raw_event(event.values)?),
|
||||||
"player_connect" => GameEvent::PlayerConnect(PlayerConnectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerConnect => GameEvent::PlayerConnect(PlayerConnectEvent::from_raw_event(event.values)?),
|
||||||
"player_connect_client" => GameEvent::PlayerConnectClient(PlayerConnectClientEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerConnectClient => GameEvent::PlayerConnectClient(PlayerConnectClientEvent::from_raw_event(event.values)?),
|
||||||
"player_info" => GameEvent::PlayerInfo(PlayerInfoEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerInfo => GameEvent::PlayerInfo(PlayerInfoEvent::from_raw_event(event.values)?),
|
||||||
"player_disconnect" => GameEvent::PlayerDisconnect(PlayerDisconnectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDisconnect => GameEvent::PlayerDisconnect(PlayerDisconnectEvent::from_raw_event(event.values)?),
|
||||||
"player_activate" => GameEvent::PlayerActivate(PlayerActivateEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerActivate => GameEvent::PlayerActivate(PlayerActivateEvent::from_raw_event(event.values)?),
|
||||||
"player_say" => GameEvent::PlayerSay(PlayerSayEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerSay => GameEvent::PlayerSay(PlayerSayEvent::from_raw_event(event.values)?),
|
||||||
"client_disconnect" => GameEvent::ClientDisconnect(ClientDisconnectEvent::from_raw_event(event.values)?),
|
GameEventType::ClientDisconnect => GameEvent::ClientDisconnect(ClientDisconnectEvent::from_raw_event(event.values)?),
|
||||||
"client_beginconnect" => GameEvent::ClientBeginConnect(ClientBeginConnectEvent::from_raw_event(event.values)?),
|
GameEventType::ClientBeginConnect => GameEvent::ClientBeginConnect(ClientBeginConnectEvent::from_raw_event(event.values)?),
|
||||||
"client_connected" => GameEvent::ClientConnected(ClientConnectedEvent::from_raw_event(event.values)?),
|
GameEventType::ClientConnected => GameEvent::ClientConnected(ClientConnectedEvent::from_raw_event(event.values)?),
|
||||||
"client_fullconnect" => GameEvent::ClientFullConnect(ClientFullConnectEvent::from_raw_event(event.values)?),
|
GameEventType::ClientFullConnect => GameEvent::ClientFullConnect(ClientFullConnectEvent::from_raw_event(event.values)?),
|
||||||
"host_quit" => GameEvent::HostQuit(HostQuitEvent::from_raw_event(event.values)?),
|
GameEventType::HostQuit => GameEvent::HostQuit(HostQuitEvent::from_raw_event(event.values)?),
|
||||||
"team_info" => GameEvent::TeamInfo(TeamInfoEvent::from_raw_event(event.values)?),
|
GameEventType::TeamInfo => GameEvent::TeamInfo(TeamInfoEvent::from_raw_event(event.values)?),
|
||||||
"team_score" => GameEvent::TeamScore(TeamScoreEvent::from_raw_event(event.values)?),
|
GameEventType::TeamScore => GameEvent::TeamScore(TeamScoreEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_broadcast_audio" => GameEvent::TeamPlayBroadcastAudio(TeamPlayBroadcastAudioEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayBroadcastAudio => GameEvent::TeamPlayBroadcastAudio(TeamPlayBroadcastAudioEvent::from_raw_event(event.values)?),
|
||||||
"player_team" => GameEvent::PlayerTeam(PlayerTeamEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerTeam => GameEvent::PlayerTeam(PlayerTeamEvent::from_raw_event(event.values)?),
|
||||||
"player_class" => GameEvent::PlayerClass(PlayerClassEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerClass => GameEvent::PlayerClass(PlayerClassEvent::from_raw_event(event.values)?),
|
||||||
"player_death" => GameEvent::PlayerDeath(PlayerDeathEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDeath => GameEvent::PlayerDeath(PlayerDeathEvent::from_raw_event(event.values)?),
|
||||||
"player_hurt" => GameEvent::PlayerHurt(PlayerHurtEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHurt => GameEvent::PlayerHurt(PlayerHurtEvent::from_raw_event(event.values)?),
|
||||||
"player_chat" => GameEvent::PlayerChat(PlayerChatEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerChat => GameEvent::PlayerChat(PlayerChatEvent::from_raw_event(event.values)?),
|
||||||
"player_score" => GameEvent::PlayerScore(PlayerScoreEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerScore => GameEvent::PlayerScore(PlayerScoreEvent::from_raw_event(event.values)?),
|
||||||
"player_spawn" => GameEvent::PlayerSpawn(PlayerSpawnEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerSpawn => GameEvent::PlayerSpawn(PlayerSpawnEvent::from_raw_event(event.values)?),
|
||||||
"player_shoot" => GameEvent::PlayerShoot(PlayerShootEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerShoot => GameEvent::PlayerShoot(PlayerShootEvent::from_raw_event(event.values)?),
|
||||||
"player_use" => GameEvent::PlayerUse(PlayerUseEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerUse => GameEvent::PlayerUse(PlayerUseEvent::from_raw_event(event.values)?),
|
||||||
"player_changename" => GameEvent::PlayerChangeName(PlayerChangeNameEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerChangeName => GameEvent::PlayerChangeName(PlayerChangeNameEvent::from_raw_event(event.values)?),
|
||||||
"player_hintmessage" => GameEvent::PlayerHintMessage(PlayerHintMessageEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHintMessage => GameEvent::PlayerHintMessage(PlayerHintMessageEvent::from_raw_event(event.values)?),
|
||||||
"base_player_teleported" => GameEvent::BasePlayerTeleported(BasePlayerTeleportedEvent::from_raw_event(event.values)?),
|
GameEventType::BasePlayerTeleported => GameEvent::BasePlayerTeleported(BasePlayerTeleportedEvent::from_raw_event(event.values)?),
|
||||||
"game_init" => GameEvent::GameInit(GameInitEvent::from_raw_event(event.values)?),
|
GameEventType::GameInit => GameEvent::GameInit(GameInitEvent::from_raw_event(event.values)?),
|
||||||
"game_newmap" => GameEvent::GameNewMap(GameNewMapEvent::from_raw_event(event.values)?),
|
GameEventType::GameNewMap => GameEvent::GameNewMap(GameNewMapEvent::from_raw_event(event.values)?),
|
||||||
"game_start" => GameEvent::GameStart(GameStartEvent::from_raw_event(event.values)?),
|
GameEventType::GameStart => GameEvent::GameStart(GameStartEvent::from_raw_event(event.values)?),
|
||||||
"game_end" => GameEvent::GameEnd(GameEndEvent::from_raw_event(event.values)?),
|
GameEventType::GameEnd => GameEvent::GameEnd(GameEndEvent::from_raw_event(event.values)?),
|
||||||
"round_start" => GameEvent::RoundStart(RoundStartEvent::from_raw_event(event.values)?),
|
GameEventType::RoundStart => GameEvent::RoundStart(RoundStartEvent::from_raw_event(event.values)?),
|
||||||
"round_end" => GameEvent::RoundEnd(RoundEndEvent::from_raw_event(event.values)?),
|
GameEventType::RoundEnd => GameEvent::RoundEnd(RoundEndEvent::from_raw_event(event.values)?),
|
||||||
"game_message" => GameEvent::GameMessage(GameMessageEvent::from_raw_event(event.values)?),
|
GameEventType::GameMessage => GameEvent::GameMessage(GameMessageEvent::from_raw_event(event.values)?),
|
||||||
"break_breakable" => GameEvent::BreakBreakable(BreakBreakableEvent::from_raw_event(event.values)?),
|
GameEventType::BreakBreakable => GameEvent::BreakBreakable(BreakBreakableEvent::from_raw_event(event.values)?),
|
||||||
"break_prop" => GameEvent::BreakProp(BreakPropEvent::from_raw_event(event.values)?),
|
GameEventType::BreakProp => GameEvent::BreakProp(BreakPropEvent::from_raw_event(event.values)?),
|
||||||
"entity_killed" => GameEvent::EntityKilled(EntityKilledEvent::from_raw_event(event.values)?),
|
GameEventType::EntityKilled => GameEvent::EntityKilled(EntityKilledEvent::from_raw_event(event.values)?),
|
||||||
"bonus_updated" => GameEvent::BonusUpdated(BonusUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::BonusUpdated => GameEvent::BonusUpdated(BonusUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"achievement_event" => GameEvent::AchievementEvent(AchievementEventEvent::from_raw_event(event.values)?),
|
GameEventType::AchievementEvent => GameEvent::AchievementEvent(AchievementEventEvent::from_raw_event(event.values)?),
|
||||||
"achievement_increment" => GameEvent::AchievementIncrement(AchievementIncrementEvent::from_raw_event(event.values)?),
|
GameEventType::AchievementIncrement => GameEvent::AchievementIncrement(AchievementIncrementEvent::from_raw_event(event.values)?),
|
||||||
"physgun_pickup" => GameEvent::PhysgunPickup(PhysgunPickupEvent::from_raw_event(event.values)?),
|
GameEventType::PhysgunPickup => GameEvent::PhysgunPickup(PhysgunPickupEvent::from_raw_event(event.values)?),
|
||||||
"flare_ignite_npc" => GameEvent::FlareIgniteNpc(FlareIgniteNpcEvent::from_raw_event(event.values)?),
|
GameEventType::FlareIgniteNpc => GameEvent::FlareIgniteNpc(FlareIgniteNpcEvent::from_raw_event(event.values)?),
|
||||||
"helicopter_grenade_punt_miss" => GameEvent::HelicopterGrenadePuntMiss(HelicopterGrenadePuntMissEvent::from_raw_event(event.values)?),
|
GameEventType::HelicopterGrenadePuntMiss => GameEvent::HelicopterGrenadePuntMiss(HelicopterGrenadePuntMissEvent::from_raw_event(event.values)?),
|
||||||
"user_data_downloaded" => GameEvent::UserDataDownloaded(UserDataDownloadedEvent::from_raw_event(event.values)?),
|
GameEventType::UserDataDownloaded => GameEvent::UserDataDownloaded(UserDataDownloadedEvent::from_raw_event(event.values)?),
|
||||||
"ragdoll_dissolved" => GameEvent::RagdollDissolved(RagdollDissolvedEvent::from_raw_event(event.values)?),
|
GameEventType::RagdollDissolved => GameEvent::RagdollDissolved(RagdollDissolvedEvent::from_raw_event(event.values)?),
|
||||||
"hltv_changed_mode" => GameEvent::HLTVChangedMode(HLTVChangedModeEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVChangedMode => GameEvent::HLTVChangedMode(HLTVChangedModeEvent::from_raw_event(event.values)?),
|
||||||
"hltv_changed_target" => GameEvent::HLTVChangedTarget(HLTVChangedTargetEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVChangedTarget => GameEvent::HLTVChangedTarget(HLTVChangedTargetEvent::from_raw_event(event.values)?),
|
||||||
"vote_ended" => GameEvent::VoteEnded(VoteEndedEvent::from_raw_event(event.values)?),
|
GameEventType::VoteEnded => GameEvent::VoteEnded(VoteEndedEvent::from_raw_event(event.values)?),
|
||||||
"vote_started" => GameEvent::VoteStarted(VoteStartedEvent::from_raw_event(event.values)?),
|
GameEventType::VoteStarted => GameEvent::VoteStarted(VoteStartedEvent::from_raw_event(event.values)?),
|
||||||
"vote_changed" => GameEvent::VoteChanged(VoteChangedEvent::from_raw_event(event.values)?),
|
GameEventType::VoteChanged => GameEvent::VoteChanged(VoteChangedEvent::from_raw_event(event.values)?),
|
||||||
"vote_passed" => GameEvent::VotePassed(VotePassedEvent::from_raw_event(event.values)?),
|
GameEventType::VotePassed => GameEvent::VotePassed(VotePassedEvent::from_raw_event(event.values)?),
|
||||||
"vote_failed" => GameEvent::VoteFailed(VoteFailedEvent::from_raw_event(event.values)?),
|
GameEventType::VoteFailed => GameEvent::VoteFailed(VoteFailedEvent::from_raw_event(event.values)?),
|
||||||
"vote_cast" => GameEvent::VoteCast(VoteCastEvent::from_raw_event(event.values)?),
|
GameEventType::VoteCast => GameEvent::VoteCast(VoteCastEvent::from_raw_event(event.values)?),
|
||||||
"vote_options" => GameEvent::VoteOptions(VoteOptionsEvent::from_raw_event(event.values)?),
|
GameEventType::VoteOptions => GameEvent::VoteOptions(VoteOptionsEvent::from_raw_event(event.values)?),
|
||||||
"replay_saved" => GameEvent::ReplaySaved(ReplaySavedEvent::from_raw_event(event.values)?),
|
GameEventType::ReplaySaved => GameEvent::ReplaySaved(ReplaySavedEvent::from_raw_event(event.values)?),
|
||||||
"entered_performance_mode" => GameEvent::EnteredPerformanceMode(EnteredPerformanceModeEvent::from_raw_event(event.values)?),
|
GameEventType::EnteredPerformanceMode => GameEvent::EnteredPerformanceMode(EnteredPerformanceModeEvent::from_raw_event(event.values)?),
|
||||||
"browse_replays" => GameEvent::BrowseReplays(BrowseReplaysEvent::from_raw_event(event.values)?),
|
GameEventType::BrowseReplays => GameEvent::BrowseReplays(BrowseReplaysEvent::from_raw_event(event.values)?),
|
||||||
"replay_youtube_stats" => GameEvent::ReplayYoutubeStats(ReplayYoutubeStatsEvent::from_raw_event(event.values)?),
|
GameEventType::ReplayYoutubeStats => GameEvent::ReplayYoutubeStats(ReplayYoutubeStatsEvent::from_raw_event(event.values)?),
|
||||||
"inventory_updated" => GameEvent::InventoryUpdated(InventoryUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::InventoryUpdated => GameEvent::InventoryUpdated(InventoryUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"cart_updated" => GameEvent::CartUpdated(CartUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::CartUpdated => GameEvent::CartUpdated(CartUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"store_pricesheet_updated" => GameEvent::StorePricesheetUpdated(StorePricesheetUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::StorePricesheetUpdated => GameEvent::StorePricesheetUpdated(StorePricesheetUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"gc_connected" => GameEvent::GcConnected(GcConnectedEvent::from_raw_event(event.values)?),
|
GameEventType::GcConnected => GameEvent::GcConnected(GcConnectedEvent::from_raw_event(event.values)?),
|
||||||
"item_schema_initialized" => GameEvent::ItemSchemaInitialized(ItemSchemaInitializedEvent::from_raw_event(event.values)?),
|
GameEventType::ItemSchemaInitialized => GameEvent::ItemSchemaInitialized(ItemSchemaInitializedEvent::from_raw_event(event.values)?),
|
||||||
"intro_finish" => GameEvent::IntroFinish(IntroFinishEvent::from_raw_event(event.values)?),
|
GameEventType::IntroFinish => GameEvent::IntroFinish(IntroFinishEvent::from_raw_event(event.values)?),
|
||||||
"intro_nextcamera" => GameEvent::IntroNextCamera(IntroNextCameraEvent::from_raw_event(event.values)?),
|
GameEventType::IntroNextCamera => GameEvent::IntroNextCamera(IntroNextCameraEvent::from_raw_event(event.values)?),
|
||||||
"mm_lobby_chat" => GameEvent::MmLobbyChat(MmLobbyChatEvent::from_raw_event(event.values)?),
|
GameEventType::MmLobbyChat => GameEvent::MmLobbyChat(MmLobbyChatEvent::from_raw_event(event.values)?),
|
||||||
"mm_lobby_member_join" => GameEvent::MmLobbyMemberJoin(MmLobbyMemberJoinEvent::from_raw_event(event.values)?),
|
GameEventType::MmLobbyMemberJoin => GameEvent::MmLobbyMemberJoin(MmLobbyMemberJoinEvent::from_raw_event(event.values)?),
|
||||||
"mm_lobby_member_leave" => GameEvent::MmLobbyMemberLeave(MmLobbyMemberLeaveEvent::from_raw_event(event.values)?),
|
GameEventType::MmLobbyMemberLeave => GameEvent::MmLobbyMemberLeave(MmLobbyMemberLeaveEvent::from_raw_event(event.values)?),
|
||||||
"player_changeclass" => GameEvent::PlayerChangeClass(PlayerChangeClassEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerChangeClass => GameEvent::PlayerChangeClass(PlayerChangeClassEvent::from_raw_event(event.values)?),
|
||||||
"tf_map_time_remaining" => GameEvent::TfMapTimeRemaining(TfMapTimeRemainingEvent::from_raw_event(event.values)?),
|
GameEventType::TfMapTimeRemaining => GameEvent::TfMapTimeRemaining(TfMapTimeRemainingEvent::from_raw_event(event.values)?),
|
||||||
"tf_game_over" => GameEvent::TfGameOver(TfGameOverEvent::from_raw_event(event.values)?),
|
GameEventType::TfGameOver => GameEvent::TfGameOver(TfGameOverEvent::from_raw_event(event.values)?),
|
||||||
"ctf_flag_captured" => GameEvent::CtfFlagCaptured(CtfFlagCapturedEvent::from_raw_event(event.values)?),
|
GameEventType::CtfFlagCaptured => GameEvent::CtfFlagCaptured(CtfFlagCapturedEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_initialized" => GameEvent::ControlPointInitialized(ControlPointInitializedEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointInitialized => GameEvent::ControlPointInitialized(ControlPointInitializedEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_updateimages" => GameEvent::ControlPointUpdateImages(ControlPointUpdateImagesEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointUpdateImages => GameEvent::ControlPointUpdateImages(ControlPointUpdateImagesEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_updatelayout" => GameEvent::ControlPointUpdateLayout(ControlPointUpdateLayoutEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointUpdateLayout => GameEvent::ControlPointUpdateLayout(ControlPointUpdateLayoutEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_updatecapping" => GameEvent::ControlPointUpdateCapping(ControlPointUpdateCappingEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointUpdateCapping => GameEvent::ControlPointUpdateCapping(ControlPointUpdateCappingEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_updateowner" => GameEvent::ControlPointUpdateOwner(ControlPointUpdateOwnerEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointUpdateOwner => GameEvent::ControlPointUpdateOwner(ControlPointUpdateOwnerEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_starttouch" => GameEvent::ControlPointStartTouch(ControlPointStartTouchEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointStartTouch => GameEvent::ControlPointStartTouch(ControlPointStartTouchEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_endtouch" => GameEvent::ControlPointEndTouch(ControlPointEndTouchEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointEndTouch => GameEvent::ControlPointEndTouch(ControlPointEndTouchEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_pulse_element" => GameEvent::ControlPointPulseElement(ControlPointPulseElementEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointPulseElement => GameEvent::ControlPointPulseElement(ControlPointPulseElementEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_fake_capture" => GameEvent::ControlPointFakeCapture(ControlPointFakeCaptureEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointFakeCapture => GameEvent::ControlPointFakeCapture(ControlPointFakeCaptureEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_fake_capture_mult" => GameEvent::ControlPointFakeCaptureMult(ControlPointFakeCaptureMultEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointFakeCaptureMult => GameEvent::ControlPointFakeCaptureMult(ControlPointFakeCaptureMultEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_selected" => GameEvent::TeamPlayRoundSelected(TeamPlayRoundSelectedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundSelected => GameEvent::TeamPlayRoundSelected(TeamPlayRoundSelectedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_start" => GameEvent::TeamPlayRoundStart(TeamPlayRoundStartEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundStart => GameEvent::TeamPlayRoundStart(TeamPlayRoundStartEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_active" => GameEvent::TeamPlayRoundActive(TeamPlayRoundActiveEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundActive => GameEvent::TeamPlayRoundActive(TeamPlayRoundActiveEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_waiting_begins" => GameEvent::TeamPlayWaitingBegins(TeamPlayWaitingBeginsEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayWaitingBegins => GameEvent::TeamPlayWaitingBegins(TeamPlayWaitingBeginsEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_waiting_ends" => GameEvent::TeamPlayWaitingEnds(TeamPlayWaitingEndsEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayWaitingEnds => GameEvent::TeamPlayWaitingEnds(TeamPlayWaitingEndsEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_waiting_abouttoend" => GameEvent::TeamPlayWaitingAboutToEnd(TeamPlayWaitingAboutToEndEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayWaitingAboutToEnd => GameEvent::TeamPlayWaitingAboutToEnd(TeamPlayWaitingAboutToEndEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_restart_round" => GameEvent::TeamPlayRestartRound(TeamPlayRestartRoundEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRestartRound => GameEvent::TeamPlayRestartRound(TeamPlayRestartRoundEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_ready_restart" => GameEvent::TeamPlayReadyRestart(TeamPlayReadyRestartEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayReadyRestart => GameEvent::TeamPlayReadyRestart(TeamPlayReadyRestartEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_restart_seconds" => GameEvent::TeamPlayRoundRestartSeconds(TeamPlayRoundRestartSecondsEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundRestartSeconds => GameEvent::TeamPlayRoundRestartSeconds(TeamPlayRoundRestartSecondsEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_team_ready" => GameEvent::TeamPlayTeamReady(TeamPlayTeamReadyEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayTeamReady => GameEvent::TeamPlayTeamReady(TeamPlayTeamReadyEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_win" => GameEvent::TeamPlayRoundWin(TeamPlayRoundWinEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundWin => GameEvent::TeamPlayRoundWin(TeamPlayRoundWinEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_update_timer" => GameEvent::TeamPlayUpdateTimer(TeamPlayUpdateTimerEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayUpdateTimer => GameEvent::TeamPlayUpdateTimer(TeamPlayUpdateTimerEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_round_stalemate" => GameEvent::TeamPlayRoundStalemate(TeamPlayRoundStalemateEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayRoundStalemate => GameEvent::TeamPlayRoundStalemate(TeamPlayRoundStalemateEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_overtime_begin" => GameEvent::TeamPlayOvertimeBegin(TeamPlayOvertimeBeginEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayOvertimeBegin => GameEvent::TeamPlayOvertimeBegin(TeamPlayOvertimeBeginEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_overtime_end" => GameEvent::TeamPlayOvertimeEnd(TeamPlayOvertimeEndEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayOvertimeEnd => GameEvent::TeamPlayOvertimeEnd(TeamPlayOvertimeEndEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_suddendeath_begin" => GameEvent::TeamPlaySuddenDeathBegin(TeamPlaySuddenDeathBeginEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlaySuddenDeathBegin => GameEvent::TeamPlaySuddenDeathBegin(TeamPlaySuddenDeathBeginEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_suddendeath_end" => GameEvent::TeamPlaySuddenDeathEnd(TeamPlaySuddenDeathEndEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlaySuddenDeathEnd => GameEvent::TeamPlaySuddenDeathEnd(TeamPlaySuddenDeathEndEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_game_over" => GameEvent::TeamPlayGameOver(TeamPlayGameOverEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayGameOver => GameEvent::TeamPlayGameOver(TeamPlayGameOverEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_map_time_remaining" => GameEvent::TeamPlayMapTimeRemaining(TeamPlayMapTimeRemainingEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayMapTimeRemaining => GameEvent::TeamPlayMapTimeRemaining(TeamPlayMapTimeRemainingEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_timer_flash" => GameEvent::TeamPlayTimerFlash(TeamPlayTimerFlashEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayTimerFlash => GameEvent::TeamPlayTimerFlash(TeamPlayTimerFlashEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_timer_time_added" => GameEvent::TeamPlayTimerTimeAdded(TeamPlayTimerTimeAddedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayTimerTimeAdded => GameEvent::TeamPlayTimerTimeAdded(TeamPlayTimerTimeAddedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_point_startcapture" => GameEvent::TeamPlayPointStartCapture(TeamPlayPointStartCaptureEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayPointStartCapture => GameEvent::TeamPlayPointStartCapture(TeamPlayPointStartCaptureEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_point_captured" => GameEvent::TeamPlayPointCaptured(TeamPlayPointCapturedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayPointCaptured => GameEvent::TeamPlayPointCaptured(TeamPlayPointCapturedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_point_locked" => GameEvent::TeamPlayPointLocked(TeamPlayPointLockedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayPointLocked => GameEvent::TeamPlayPointLocked(TeamPlayPointLockedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_point_unlocked" => GameEvent::TeamPlayPointUnlocked(TeamPlayPointUnlockedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayPointUnlocked => GameEvent::TeamPlayPointUnlocked(TeamPlayPointUnlockedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_capture_broken" => GameEvent::TeamPlayCaptureBroken(TeamPlayCaptureBrokenEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayCaptureBroken => GameEvent::TeamPlayCaptureBroken(TeamPlayCaptureBrokenEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_capture_blocked" => GameEvent::TeamPlayCaptureBlocked(TeamPlayCaptureBlockedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayCaptureBlocked => GameEvent::TeamPlayCaptureBlocked(TeamPlayCaptureBlockedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_flag_event" => GameEvent::TeamPlayFlagEvent(TeamPlayFlagEventEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayFlagEvent => GameEvent::TeamPlayFlagEvent(TeamPlayFlagEventEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_win_panel" => GameEvent::TeamPlayWinPanel(TeamPlayWinPanelEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayWinPanel => GameEvent::TeamPlayWinPanel(TeamPlayWinPanelEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_teambalanced_player" => GameEvent::TeamPlayTeambalancedPlayer(TeamPlayTeambalancedPlayerEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayTeambalancedPlayer => GameEvent::TeamPlayTeambalancedPlayer(TeamPlayTeambalancedPlayerEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_setup_finished" => GameEvent::TeamPlaySetupFinished(TeamPlaySetupFinishedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlaySetupFinished => GameEvent::TeamPlaySetupFinished(TeamPlaySetupFinishedEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_alert" => GameEvent::TeamPlayAlert(TeamPlayAlertEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayAlert => GameEvent::TeamPlayAlert(TeamPlayAlertEvent::from_raw_event(event.values)?),
|
||||||
"training_complete" => GameEvent::TrainingComplete(TrainingCompleteEvent::from_raw_event(event.values)?),
|
GameEventType::TrainingComplete => GameEvent::TrainingComplete(TrainingCompleteEvent::from_raw_event(event.values)?),
|
||||||
"show_freezepanel" => GameEvent::ShowFreezePanel(ShowFreezePanelEvent::from_raw_event(event.values)?),
|
GameEventType::ShowFreezePanel => GameEvent::ShowFreezePanel(ShowFreezePanelEvent::from_raw_event(event.values)?),
|
||||||
"hide_freezepanel" => GameEvent::HideFreezePanel(HideFreezePanelEvent::from_raw_event(event.values)?),
|
GameEventType::HideFreezePanel => GameEvent::HideFreezePanel(HideFreezePanelEvent::from_raw_event(event.values)?),
|
||||||
"freezecam_started" => GameEvent::FreezeCamStarted(FreezeCamStartedEvent::from_raw_event(event.values)?),
|
GameEventType::FreezeCamStarted => GameEvent::FreezeCamStarted(FreezeCamStartedEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_changeteam" => GameEvent::LocalPlayerChangeTeam(LocalPlayerChangeTeamEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerChangeTeam => GameEvent::LocalPlayerChangeTeam(LocalPlayerChangeTeamEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_score_changed" => GameEvent::LocalPlayerScoreChanged(LocalPlayerScoreChangedEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerScoreChanged => GameEvent::LocalPlayerScoreChanged(LocalPlayerScoreChangedEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_changeclass" => GameEvent::LocalPlayerChangeClass(LocalPlayerChangeClassEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerChangeClass => GameEvent::LocalPlayerChangeClass(LocalPlayerChangeClassEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_respawn" => GameEvent::LocalPlayerRespawn(LocalPlayerRespawnEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerRespawn => GameEvent::LocalPlayerRespawn(LocalPlayerRespawnEvent::from_raw_event(event.values)?),
|
||||||
"building_info_changed" => GameEvent::BuildingInfoChanged(BuildingInfoChangedEvent::from_raw_event(event.values)?),
|
GameEventType::BuildingInfoChanged => GameEvent::BuildingInfoChanged(BuildingInfoChangedEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_changedisguise" => GameEvent::LocalPlayerChangeDisguise(LocalPlayerChangeDisguiseEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerChangeDisguise => GameEvent::LocalPlayerChangeDisguise(LocalPlayerChangeDisguiseEvent::from_raw_event(event.values)?),
|
||||||
"player_account_changed" => GameEvent::PlayerAccountChanged(PlayerAccountChangedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerAccountChanged => GameEvent::PlayerAccountChanged(PlayerAccountChangedEvent::from_raw_event(event.values)?),
|
||||||
"spy_pda_reset" => GameEvent::SpyPdaReset(SpyPdaResetEvent::from_raw_event(event.values)?),
|
GameEventType::SpyPdaReset => GameEvent::SpyPdaReset(SpyPdaResetEvent::from_raw_event(event.values)?),
|
||||||
"flagstatus_update" => GameEvent::FlagStatusUpdate(FlagStatusUpdateEvent::from_raw_event(event.values)?),
|
GameEventType::FlagStatusUpdate => GameEvent::FlagStatusUpdate(FlagStatusUpdateEvent::from_raw_event(event.values)?),
|
||||||
"player_stats_updated" => GameEvent::PlayerStatsUpdated(PlayerStatsUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerStatsUpdated => GameEvent::PlayerStatsUpdated(PlayerStatsUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"playing_commentary" => GameEvent::PlayingCommentary(PlayingCommentaryEvent::from_raw_event(event.values)?),
|
GameEventType::PlayingCommentary => GameEvent::PlayingCommentary(PlayingCommentaryEvent::from_raw_event(event.values)?),
|
||||||
"player_chargedeployed" => GameEvent::PlayerChargedeployed(PlayerChargedeployedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerChargedeployed => GameEvent::PlayerChargedeployed(PlayerChargedeployedEvent::from_raw_event(event.values)?),
|
||||||
"player_builtobject" => GameEvent::PlayerBuiltObject(PlayerBuiltObjectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerBuiltObject => GameEvent::PlayerBuiltObject(PlayerBuiltObjectEvent::from_raw_event(event.values)?),
|
||||||
"player_upgradedobject" => GameEvent::PlayerUpgradedObject(PlayerUpgradedObjectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerUpgradedObject => GameEvent::PlayerUpgradedObject(PlayerUpgradedObjectEvent::from_raw_event(event.values)?),
|
||||||
"player_carryobject" => GameEvent::PlayerCarryObject(PlayerCarryObjectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerCarryObject => GameEvent::PlayerCarryObject(PlayerCarryObjectEvent::from_raw_event(event.values)?),
|
||||||
"player_dropobject" => GameEvent::PlayerDropObject(PlayerDropObjectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDropObject => GameEvent::PlayerDropObject(PlayerDropObjectEvent::from_raw_event(event.values)?),
|
||||||
"object_removed" => GameEvent::ObjectRemoved(ObjectRemovedEvent::from_raw_event(event.values)?),
|
GameEventType::ObjectRemoved => GameEvent::ObjectRemoved(ObjectRemovedEvent::from_raw_event(event.values)?),
|
||||||
"object_destroyed" => GameEvent::ObjectDestroyed(ObjectDestroyedEvent::from_raw_event(event.values)?),
|
GameEventType::ObjectDestroyed => GameEvent::ObjectDestroyed(ObjectDestroyedEvent::from_raw_event(event.values)?),
|
||||||
"object_detonated" => GameEvent::ObjectDetonated(ObjectDetonatedEvent::from_raw_event(event.values)?),
|
GameEventType::ObjectDetonated => GameEvent::ObjectDetonated(ObjectDetonatedEvent::from_raw_event(event.values)?),
|
||||||
"achievement_earned" => GameEvent::AchievementEarned(AchievementEarnedEvent::from_raw_event(event.values)?),
|
GameEventType::AchievementEarned => GameEvent::AchievementEarned(AchievementEarnedEvent::from_raw_event(event.values)?),
|
||||||
"spec_target_updated" => GameEvent::SpecTargetUpdated(SpecTargetUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::SpecTargetUpdated => GameEvent::SpecTargetUpdated(SpecTargetUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"tournament_stateupdate" => GameEvent::TournamentStateUpdate(TournamentStateUpdateEvent::from_raw_event(event.values)?),
|
GameEventType::TournamentStateUpdate => GameEvent::TournamentStateUpdate(TournamentStateUpdateEvent::from_raw_event(event.values)?),
|
||||||
"tournament_enablecountdown" => GameEvent::TournamentEnableCountdown(TournamentEnableCountdownEvent::from_raw_event(event.values)?),
|
GameEventType::TournamentEnableCountdown => GameEvent::TournamentEnableCountdown(TournamentEnableCountdownEvent::from_raw_event(event.values)?),
|
||||||
"player_calledformedic" => GameEvent::PlayerCalledForMedic(PlayerCalledForMedicEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerCalledForMedic => GameEvent::PlayerCalledForMedic(PlayerCalledForMedicEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_becameobserver" => GameEvent::LocalPlayerBecameObserver(LocalPlayerBecameObserverEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerBecameObserver => GameEvent::LocalPlayerBecameObserver(LocalPlayerBecameObserverEvent::from_raw_event(event.values)?),
|
||||||
"player_ignited_inv" => GameEvent::PlayerIgnitedInv(PlayerIgnitedInvEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerIgnitedInv => GameEvent::PlayerIgnitedInv(PlayerIgnitedInvEvent::from_raw_event(event.values)?),
|
||||||
"player_ignited" => GameEvent::PlayerIgnited(PlayerIgnitedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerIgnited => GameEvent::PlayerIgnited(PlayerIgnitedEvent::from_raw_event(event.values)?),
|
||||||
"player_extinguished" => GameEvent::PlayerExtinguished(PlayerExtinguishedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerExtinguished => GameEvent::PlayerExtinguished(PlayerExtinguishedEvent::from_raw_event(event.values)?),
|
||||||
"player_teleported" => GameEvent::PlayerTeleported(PlayerTeleportedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerTeleported => GameEvent::PlayerTeleported(PlayerTeleportedEvent::from_raw_event(event.values)?),
|
||||||
"player_healedmediccall" => GameEvent::PlayerHealedMedicCall(PlayerHealedMedicCallEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHealedMedicCall => GameEvent::PlayerHealedMedicCall(PlayerHealedMedicCallEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_chargeready" => GameEvent::LocalPlayerChargeReady(LocalPlayerChargeReadyEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerChargeReady => GameEvent::LocalPlayerChargeReady(LocalPlayerChargeReadyEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_winddown" => GameEvent::LocalPlayerWinddown(LocalPlayerWinddownEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerWinddown => GameEvent::LocalPlayerWinddown(LocalPlayerWinddownEvent::from_raw_event(event.values)?),
|
||||||
"player_invulned" => GameEvent::PlayerInvulned(PlayerInvulnedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerInvulned => GameEvent::PlayerInvulned(PlayerInvulnedEvent::from_raw_event(event.values)?),
|
||||||
"escort_speed" => GameEvent::EscortSpeed(EscortSpeedEvent::from_raw_event(event.values)?),
|
GameEventType::EscortSpeed => GameEvent::EscortSpeed(EscortSpeedEvent::from_raw_event(event.values)?),
|
||||||
"escort_progress" => GameEvent::EscortProgress(EscortProgressEvent::from_raw_event(event.values)?),
|
GameEventType::EscortProgress => GameEvent::EscortProgress(EscortProgressEvent::from_raw_event(event.values)?),
|
||||||
"escort_recede" => GameEvent::EscortRecede(EscortRecedeEvent::from_raw_event(event.values)?),
|
GameEventType::EscortRecede => GameEvent::EscortRecede(EscortRecedeEvent::from_raw_event(event.values)?),
|
||||||
"gameui_activated" => GameEvent::GameUIActivated(GameUIActivatedEvent::from_raw_event(event.values)?),
|
GameEventType::GameUIActivated => GameEvent::GameUIActivated(GameUIActivatedEvent::from_raw_event(event.values)?),
|
||||||
"gameui_hidden" => GameEvent::GameUIHidden(GameUIHiddenEvent::from_raw_event(event.values)?),
|
GameEventType::GameUIHidden => GameEvent::GameUIHidden(GameUIHiddenEvent::from_raw_event(event.values)?),
|
||||||
"player_escort_score" => GameEvent::PlayerEscortScore(PlayerEscortScoreEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerEscortScore => GameEvent::PlayerEscortScore(PlayerEscortScoreEvent::from_raw_event(event.values)?),
|
||||||
"player_healonhit" => GameEvent::PlayerHealOnHit(PlayerHealOnHitEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHealOnHit => GameEvent::PlayerHealOnHit(PlayerHealOnHitEvent::from_raw_event(event.values)?),
|
||||||
"player_stealsandvich" => GameEvent::PlayerStealsandvich(PlayerStealsandvichEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerStealsandvich => GameEvent::PlayerStealsandvich(PlayerStealsandvichEvent::from_raw_event(event.values)?),
|
||||||
"show_class_layout" => GameEvent::ShowClassLayout(ShowClassLayoutEvent::from_raw_event(event.values)?),
|
GameEventType::ShowClassLayout => GameEvent::ShowClassLayout(ShowClassLayoutEvent::from_raw_event(event.values)?),
|
||||||
"show_vs_panel" => GameEvent::ShowVsPanel(ShowVsPanelEvent::from_raw_event(event.values)?),
|
GameEventType::ShowVsPanel => GameEvent::ShowVsPanel(ShowVsPanelEvent::from_raw_event(event.values)?),
|
||||||
"player_damaged" => GameEvent::PlayerDamaged(PlayerDamagedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDamaged => GameEvent::PlayerDamaged(PlayerDamagedEvent::from_raw_event(event.values)?),
|
||||||
"arena_player_notification" => GameEvent::ArenaPlayerNotification(ArenaPlayerNotificationEvent::from_raw_event(event.values)?),
|
GameEventType::ArenaPlayerNotification => GameEvent::ArenaPlayerNotification(ArenaPlayerNotificationEvent::from_raw_event(event.values)?),
|
||||||
"arena_match_maxstreak" => GameEvent::ArenaMatchMaxStreak(ArenaMatchMaxStreakEvent::from_raw_event(event.values)?),
|
GameEventType::ArenaMatchMaxStreak => GameEvent::ArenaMatchMaxStreak(ArenaMatchMaxStreakEvent::from_raw_event(event.values)?),
|
||||||
"arena_round_start" => GameEvent::ArenaRoundStart(ArenaRoundStartEvent::from_raw_event(event.values)?),
|
GameEventType::ArenaRoundStart => GameEvent::ArenaRoundStart(ArenaRoundStartEvent::from_raw_event(event.values)?),
|
||||||
"arena_win_panel" => GameEvent::ArenaWinPanel(ArenaWinPanelEvent::from_raw_event(event.values)?),
|
GameEventType::ArenaWinPanel => GameEvent::ArenaWinPanel(ArenaWinPanelEvent::from_raw_event(event.values)?),
|
||||||
"pve_win_panel" => GameEvent::PveWinPanel(PveWinPanelEvent::from_raw_event(event.values)?),
|
GameEventType::PveWinPanel => GameEvent::PveWinPanel(PveWinPanelEvent::from_raw_event(event.values)?),
|
||||||
"air_dash" => GameEvent::AirDash(AirDashEvent::from_raw_event(event.values)?),
|
GameEventType::AirDash => GameEvent::AirDash(AirDashEvent::from_raw_event(event.values)?),
|
||||||
"landed" => GameEvent::Landed(LandedEvent::from_raw_event(event.values)?),
|
GameEventType::Landed => GameEvent::Landed(LandedEvent::from_raw_event(event.values)?),
|
||||||
"player_damage_dodged" => GameEvent::PlayerDamageDodged(PlayerDamageDodgedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDamageDodged => GameEvent::PlayerDamageDodged(PlayerDamageDodgedEvent::from_raw_event(event.values)?),
|
||||||
"player_stunned" => GameEvent::PlayerStunned(PlayerStunnedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerStunned => GameEvent::PlayerStunned(PlayerStunnedEvent::from_raw_event(event.values)?),
|
||||||
"scout_grand_slam" => GameEvent::ScoutGrandSlam(ScoutGrandSlamEvent::from_raw_event(event.values)?),
|
GameEventType::ScoutGrandSlam => GameEvent::ScoutGrandSlam(ScoutGrandSlamEvent::from_raw_event(event.values)?),
|
||||||
"scout_slamdoll_landed" => GameEvent::ScoutSlamdollLanded(ScoutSlamdollLandedEvent::from_raw_event(event.values)?),
|
GameEventType::ScoutSlamdollLanded => GameEvent::ScoutSlamdollLanded(ScoutSlamdollLandedEvent::from_raw_event(event.values)?),
|
||||||
"arrow_impact" => GameEvent::ArrowImpact(ArrowImpactEvent::from_raw_event(event.values)?),
|
GameEventType::ArrowImpact => GameEvent::ArrowImpact(ArrowImpactEvent::from_raw_event(event.values)?),
|
||||||
"player_jarated" => GameEvent::PlayerJarated(PlayerJaratedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerJarated => GameEvent::PlayerJarated(PlayerJaratedEvent::from_raw_event(event.values)?),
|
||||||
"player_jarated_fade" => GameEvent::PlayerJaratedFade(PlayerJaratedFadeEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerJaratedFade => GameEvent::PlayerJaratedFade(PlayerJaratedFadeEvent::from_raw_event(event.values)?),
|
||||||
"player_shield_blocked" => GameEvent::PlayerShieldBlocked(PlayerShieldBlockedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerShieldBlocked => GameEvent::PlayerShieldBlocked(PlayerShieldBlockedEvent::from_raw_event(event.values)?),
|
||||||
"player_pinned" => GameEvent::PlayerPinned(PlayerPinnedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerPinned => GameEvent::PlayerPinned(PlayerPinnedEvent::from_raw_event(event.values)?),
|
||||||
"player_healedbymedic" => GameEvent::PlayerHealedByMedic(PlayerHealedByMedicEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHealedByMedic => GameEvent::PlayerHealedByMedic(PlayerHealedByMedicEvent::from_raw_event(event.values)?),
|
||||||
"player_sapped_object" => GameEvent::PlayerSappedObject(PlayerSappedObjectEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerSappedObject => GameEvent::PlayerSappedObject(PlayerSappedObjectEvent::from_raw_event(event.values)?),
|
||||||
"item_found" => GameEvent::ItemFound(ItemFoundEvent::from_raw_event(event.values)?),
|
GameEventType::ItemFound => GameEvent::ItemFound(ItemFoundEvent::from_raw_event(event.values)?),
|
||||||
"show_annotation" => GameEvent::ShowAnnotation(ShowAnnotationEvent::from_raw_event(event.values)?),
|
GameEventType::ShowAnnotation => GameEvent::ShowAnnotation(ShowAnnotationEvent::from_raw_event(event.values)?),
|
||||||
"hide_annotation" => GameEvent::HideAnnotation(HideAnnotationEvent::from_raw_event(event.values)?),
|
GameEventType::HideAnnotation => GameEvent::HideAnnotation(HideAnnotationEvent::from_raw_event(event.values)?),
|
||||||
"post_inventory_application" => GameEvent::PostInventoryApplication(PostInventoryApplicationEvent::from_raw_event(event.values)?),
|
GameEventType::PostInventoryApplication => GameEvent::PostInventoryApplication(PostInventoryApplicationEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_unlock_updated" => GameEvent::ControlPointUnlockUpdated(ControlPointUnlockUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointUnlockUpdated => GameEvent::ControlPointUnlockUpdated(ControlPointUnlockUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"deploy_buff_banner" => GameEvent::DeployBuffBanner(DeployBuffBannerEvent::from_raw_event(event.values)?),
|
GameEventType::DeployBuffBanner => GameEvent::DeployBuffBanner(DeployBuffBannerEvent::from_raw_event(event.values)?),
|
||||||
"player_buff" => GameEvent::PlayerBuff(PlayerBuffEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerBuff => GameEvent::PlayerBuff(PlayerBuffEvent::from_raw_event(event.values)?),
|
||||||
"medic_death" => GameEvent::MedicDeath(MedicDeathEvent::from_raw_event(event.values)?),
|
GameEventType::MedicDeath => GameEvent::MedicDeath(MedicDeathEvent::from_raw_event(event.values)?),
|
||||||
"overtime_nag" => GameEvent::OvertimeNag(OvertimeNagEvent::from_raw_event(event.values)?),
|
GameEventType::OvertimeNag => GameEvent::OvertimeNag(OvertimeNagEvent::from_raw_event(event.values)?),
|
||||||
"teams_changed" => GameEvent::TeamsChanged(TeamsChangedEvent::from_raw_event(event.values)?),
|
GameEventType::TeamsChanged => GameEvent::TeamsChanged(TeamsChangedEvent::from_raw_event(event.values)?),
|
||||||
"halloween_pumpkin_grab" => GameEvent::HalloweenPumpkinGrab(HalloweenPumpkinGrabEvent::from_raw_event(event.values)?),
|
GameEventType::HalloweenPumpkinGrab => GameEvent::HalloweenPumpkinGrab(HalloweenPumpkinGrabEvent::from_raw_event(event.values)?),
|
||||||
"rocket_jump" => GameEvent::RocketJump(RocketJumpEvent::from_raw_event(event.values)?),
|
GameEventType::RocketJump => GameEvent::RocketJump(RocketJumpEvent::from_raw_event(event.values)?),
|
||||||
"rocket_jump_landed" => GameEvent::RocketJumpLanded(RocketJumpLandedEvent::from_raw_event(event.values)?),
|
GameEventType::RocketJumpLanded => GameEvent::RocketJumpLanded(RocketJumpLandedEvent::from_raw_event(event.values)?),
|
||||||
"sticky_jump" => GameEvent::StickyJump(StickyJumpEvent::from_raw_event(event.values)?),
|
GameEventType::StickyJump => GameEvent::StickyJump(StickyJumpEvent::from_raw_event(event.values)?),
|
||||||
"sticky_jump_landed" => GameEvent::StickyJumpLanded(StickyJumpLandedEvent::from_raw_event(event.values)?),
|
GameEventType::StickyJumpLanded => GameEvent::StickyJumpLanded(StickyJumpLandedEvent::from_raw_event(event.values)?),
|
||||||
"medic_defended" => GameEvent::MedicDefended(MedicDefendedEvent::from_raw_event(event.values)?),
|
GameEventType::MedicDefended => GameEvent::MedicDefended(MedicDefendedEvent::from_raw_event(event.values)?),
|
||||||
"localplayer_healed" => GameEvent::LocalPlayerHealed(LocalPlayerHealedEvent::from_raw_event(event.values)?),
|
GameEventType::LocalPlayerHealed => GameEvent::LocalPlayerHealed(LocalPlayerHealedEvent::from_raw_event(event.values)?),
|
||||||
"player_destroyed_pipebomb" => GameEvent::PlayerDestroyedPipeBomb(PlayerDestroyedPipeBombEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDestroyedPipeBomb => GameEvent::PlayerDestroyedPipeBomb(PlayerDestroyedPipeBombEvent::from_raw_event(event.values)?),
|
||||||
"object_deflected" => GameEvent::ObjectDeflected(ObjectDeflectedEvent::from_raw_event(event.values)?),
|
GameEventType::ObjectDeflected => GameEvent::ObjectDeflected(ObjectDeflectedEvent::from_raw_event(event.values)?),
|
||||||
"player_mvp" => GameEvent::PlayerMvp(PlayerMvpEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerMvp => GameEvent::PlayerMvp(PlayerMvpEvent::from_raw_event(event.values)?),
|
||||||
"raid_spawn_mob" => GameEvent::RaidSpawnMob(RaidSpawnMobEvent::from_raw_event(event.values)?),
|
GameEventType::RaidSpawnMob => GameEvent::RaidSpawnMob(RaidSpawnMobEvent::from_raw_event(event.values)?),
|
||||||
"raid_spawn_squad" => GameEvent::RaidSpawnSquad(RaidSpawnSquadEvent::from_raw_event(event.values)?),
|
GameEventType::RaidSpawnSquad => GameEvent::RaidSpawnSquad(RaidSpawnSquadEvent::from_raw_event(event.values)?),
|
||||||
"nav_blocked" => GameEvent::NavBlocked(NavBlockedEvent::from_raw_event(event.values)?),
|
GameEventType::NavBlocked => GameEvent::NavBlocked(NavBlockedEvent::from_raw_event(event.values)?),
|
||||||
"path_track_passed" => GameEvent::PathTrackPassed(PathTrackPassedEvent::from_raw_event(event.values)?),
|
GameEventType::PathTrackPassed => GameEvent::PathTrackPassed(PathTrackPassedEvent::from_raw_event(event.values)?),
|
||||||
"num_cappers_changed" => GameEvent::NumCappersChanged(NumCappersChangedEvent::from_raw_event(event.values)?),
|
GameEventType::NumCappersChanged => GameEvent::NumCappersChanged(NumCappersChangedEvent::from_raw_event(event.values)?),
|
||||||
"player_regenerate" => GameEvent::PlayerRegenerate(PlayerRegenerateEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerRegenerate => GameEvent::PlayerRegenerate(PlayerRegenerateEvent::from_raw_event(event.values)?),
|
||||||
"update_status_item" => GameEvent::UpdateStatusItem(UpdateStatusItemEvent::from_raw_event(event.values)?),
|
GameEventType::UpdateStatusItem => GameEvent::UpdateStatusItem(UpdateStatusItemEvent::from_raw_event(event.values)?),
|
||||||
"stats_resetround" => GameEvent::StatsResetRound(StatsResetRoundEvent::from_raw_event(event.values)?),
|
GameEventType::StatsResetRound => GameEvent::StatsResetRound(StatsResetRoundEvent::from_raw_event(event.values)?),
|
||||||
"scorestats_accumulated_update" => GameEvent::ScoreStatsAccumulatedUpdate(ScoreStatsAccumulatedUpdateEvent::from_raw_event(event.values)?),
|
GameEventType::ScoreStatsAccumulatedUpdate => GameEvent::ScoreStatsAccumulatedUpdate(ScoreStatsAccumulatedUpdateEvent::from_raw_event(event.values)?),
|
||||||
"scorestats_accumulated_reset" => GameEvent::ScoreStatsAccumulatedReset(ScoreStatsAccumulatedResetEvent::from_raw_event(event.values)?),
|
GameEventType::ScoreStatsAccumulatedReset => GameEvent::ScoreStatsAccumulatedReset(ScoreStatsAccumulatedResetEvent::from_raw_event(event.values)?),
|
||||||
"achievement_earned_local" => GameEvent::AchievementEarnedLocal(AchievementEarnedLocalEvent::from_raw_event(event.values)?),
|
GameEventType::AchievementEarnedLocal => GameEvent::AchievementEarnedLocal(AchievementEarnedLocalEvent::from_raw_event(event.values)?),
|
||||||
"player_healed" => GameEvent::PlayerHealed(PlayerHealedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHealed => GameEvent::PlayerHealed(PlayerHealedEvent::from_raw_event(event.values)?),
|
||||||
"building_healed" => GameEvent::BuildingHealed(BuildingHealedEvent::from_raw_event(event.values)?),
|
GameEventType::BuildingHealed => GameEvent::BuildingHealed(BuildingHealedEvent::from_raw_event(event.values)?),
|
||||||
"item_pickup" => GameEvent::ItemPickup(ItemPickupEvent::from_raw_event(event.values)?),
|
GameEventType::ItemPickup => GameEvent::ItemPickup(ItemPickupEvent::from_raw_event(event.values)?),
|
||||||
"duel_status" => GameEvent::DuelStatus(DuelStatusEvent::from_raw_event(event.values)?),
|
GameEventType::DuelStatus => GameEvent::DuelStatus(DuelStatusEvent::from_raw_event(event.values)?),
|
||||||
"fish_notice" => GameEvent::FishNotice(FishNoticeEvent::from_raw_event(event.values)?),
|
GameEventType::FishNotice => GameEvent::FishNotice(FishNoticeEvent::from_raw_event(event.values)?),
|
||||||
"fish_notice__arm" => GameEvent::FishNoticeArm(FishNoticeArmEvent::from_raw_event(event.values)?),
|
GameEventType::FishNoticeArm => GameEvent::FishNoticeArm(FishNoticeArmEvent::from_raw_event(event.values)?),
|
||||||
"throwable_hit" => GameEvent::ThrowableHit(ThrowableHitEvent::from_raw_event(event.values)?),
|
GameEventType::ThrowableHit => GameEvent::ThrowableHit(ThrowableHitEvent::from_raw_event(event.values)?),
|
||||||
"pumpkin_lord_summoned" => GameEvent::PumpkinLordSummoned(PumpkinLordSummonedEvent::from_raw_event(event.values)?),
|
GameEventType::PumpkinLordSummoned => GameEvent::PumpkinLordSummoned(PumpkinLordSummonedEvent::from_raw_event(event.values)?),
|
||||||
"pumpkin_lord_killed" => GameEvent::PumpkinLordKilled(PumpkinLordKilledEvent::from_raw_event(event.values)?),
|
GameEventType::PumpkinLordKilled => GameEvent::PumpkinLordKilled(PumpkinLordKilledEvent::from_raw_event(event.values)?),
|
||||||
"merasmus_summoned" => GameEvent::MerasmusSummoned(MerasmusSummonedEvent::from_raw_event(event.values)?),
|
GameEventType::MerasmusSummoned => GameEvent::MerasmusSummoned(MerasmusSummonedEvent::from_raw_event(event.values)?),
|
||||||
"merasmus_killed" => GameEvent::MerasmusKilled(MerasmusKilledEvent::from_raw_event(event.values)?),
|
GameEventType::MerasmusKilled => GameEvent::MerasmusKilled(MerasmusKilledEvent::from_raw_event(event.values)?),
|
||||||
"merasmus_escape_warning" => GameEvent::MerasmusEscapeWarning(MerasmusEscapeWarningEvent::from_raw_event(event.values)?),
|
GameEventType::MerasmusEscapeWarning => GameEvent::MerasmusEscapeWarning(MerasmusEscapeWarningEvent::from_raw_event(event.values)?),
|
||||||
"merasmus_escaped" => GameEvent::MerasmusEscaped(MerasmusEscapedEvent::from_raw_event(event.values)?),
|
GameEventType::MerasmusEscaped => GameEvent::MerasmusEscaped(MerasmusEscapedEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_summoned" => GameEvent::EyeballBossSummoned(EyeballBossSummonedEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossSummoned => GameEvent::EyeballBossSummoned(EyeballBossSummonedEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_stunned" => GameEvent::EyeballBossStunned(EyeballBossStunnedEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossStunned => GameEvent::EyeballBossStunned(EyeballBossStunnedEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_killed" => GameEvent::EyeballBossKilled(EyeballBossKilledEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossKilled => GameEvent::EyeballBossKilled(EyeballBossKilledEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_killer" => GameEvent::EyeballBossKiller(EyeballBossKillerEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossKiller => GameEvent::EyeballBossKiller(EyeballBossKillerEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_escape_imminent" => GameEvent::EyeballBossEscapeImminent(EyeballBossEscapeImminentEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossEscapeImminent => GameEvent::EyeballBossEscapeImminent(EyeballBossEscapeImminentEvent::from_raw_event(event.values)?),
|
||||||
"eyeball_boss_escaped" => GameEvent::EyeballBossEscaped(EyeballBossEscapedEvent::from_raw_event(event.values)?),
|
GameEventType::EyeballBossEscaped => GameEvent::EyeballBossEscaped(EyeballBossEscapedEvent::from_raw_event(event.values)?),
|
||||||
"npc_hurt" => GameEvent::NpcHurt(NpcHurtEvent::from_raw_event(event.values)?),
|
GameEventType::NpcHurt => GameEvent::NpcHurt(NpcHurtEvent::from_raw_event(event.values)?),
|
||||||
"controlpoint_timer_updated" => GameEvent::ControlPointTimerUpdated(ControlPointTimerUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::ControlPointTimerUpdated => GameEvent::ControlPointTimerUpdated(ControlPointTimerUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"player_highfive_start" => GameEvent::PlayerHighfiveStart(PlayerHighfiveStartEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHighfiveStart => GameEvent::PlayerHighfiveStart(PlayerHighfiveStartEvent::from_raw_event(event.values)?),
|
||||||
"player_highfive_cancel" => GameEvent::PlayerHighfiveCancel(PlayerHighfiveCancelEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHighfiveCancel => GameEvent::PlayerHighfiveCancel(PlayerHighfiveCancelEvent::from_raw_event(event.values)?),
|
||||||
"player_highfive_success" => GameEvent::PlayerHighfiveSuccess(PlayerHighfiveSuccessEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerHighfiveSuccess => GameEvent::PlayerHighfiveSuccess(PlayerHighfiveSuccessEvent::from_raw_event(event.values)?),
|
||||||
"player_bonuspoints" => GameEvent::PlayerBonusPoints(PlayerBonusPointsEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerBonusPoints => GameEvent::PlayerBonusPoints(PlayerBonusPointsEvent::from_raw_event(event.values)?),
|
||||||
"player_upgraded" => GameEvent::PlayerUpgraded(PlayerUpgradedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerUpgraded => GameEvent::PlayerUpgraded(PlayerUpgradedEvent::from_raw_event(event.values)?),
|
||||||
"player_buyback" => GameEvent::PlayerBuyback(PlayerBuybackEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerBuyback => GameEvent::PlayerBuyback(PlayerBuybackEvent::from_raw_event(event.values)?),
|
||||||
"player_used_powerup_bottle" => GameEvent::PlayerUsedPowerUpBottle(PlayerUsedPowerUpBottleEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerUsedPowerUpBottle => GameEvent::PlayerUsedPowerUpBottle(PlayerUsedPowerUpBottleEvent::from_raw_event(event.values)?),
|
||||||
"christmas_gift_grab" => GameEvent::ChristmasGiftGrab(ChristmasGiftGrabEvent::from_raw_event(event.values)?),
|
GameEventType::ChristmasGiftGrab => GameEvent::ChristmasGiftGrab(ChristmasGiftGrabEvent::from_raw_event(event.values)?),
|
||||||
"player_killed_achievement_zone" => GameEvent::PlayerKilledAchievementZone(PlayerKilledAchievementZoneEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerKilledAchievementZone => GameEvent::PlayerKilledAchievementZone(PlayerKilledAchievementZoneEvent::from_raw_event(event.values)?),
|
||||||
"party_updated" => GameEvent::PartyUpdated(PartyUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::PartyUpdated => GameEvent::PartyUpdated(PartyUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"lobby_updated" => GameEvent::LobbyUpdated(LobbyUpdatedEvent::from_raw_event(event.values)?),
|
GameEventType::LobbyUpdated => GameEvent::LobbyUpdated(LobbyUpdatedEvent::from_raw_event(event.values)?),
|
||||||
"mvm_mission_update" => GameEvent::MvmMissionUpdate(MvmMissionUpdateEvent::from_raw_event(event.values)?),
|
GameEventType::MvmMissionUpdate => GameEvent::MvmMissionUpdate(MvmMissionUpdateEvent::from_raw_event(event.values)?),
|
||||||
"recalculate_holidays" => GameEvent::RecalculateHolidays(RecalculateHolidaysEvent::from_raw_event(event.values)?),
|
GameEventType::RecalculateHolidays => GameEvent::RecalculateHolidays(RecalculateHolidaysEvent::from_raw_event(event.values)?),
|
||||||
"player_currency_changed" => GameEvent::PlayerCurrencyChanged(PlayerCurrencyChangedEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerCurrencyChanged => GameEvent::PlayerCurrencyChanged(PlayerCurrencyChangedEvent::from_raw_event(event.values)?),
|
||||||
"doomsday_rocket_open" => GameEvent::DoomsdayRocketOpen(DoomsdayRocketOpenEvent::from_raw_event(event.values)?),
|
GameEventType::DoomsdayRocketOpen => GameEvent::DoomsdayRocketOpen(DoomsdayRocketOpenEvent::from_raw_event(event.values)?),
|
||||||
"remove_nemesis_relationships" => GameEvent::RemoveNemesisRelationships(RemoveNemesisRelationshipsEvent::from_raw_event(event.values)?),
|
GameEventType::RemoveNemesisRelationships => GameEvent::RemoveNemesisRelationships(RemoveNemesisRelationshipsEvent::from_raw_event(event.values)?),
|
||||||
"mvm_creditbonus_wave" => GameEvent::MvmCreditBonusWave(MvmCreditBonusWaveEvent::from_raw_event(event.values)?),
|
GameEventType::MvmCreditBonusWave => GameEvent::MvmCreditBonusWave(MvmCreditBonusWaveEvent::from_raw_event(event.values)?),
|
||||||
"mvm_creditbonus_all" => GameEvent::MvmCreditBonusAll(MvmCreditBonusAllEvent::from_raw_event(event.values)?),
|
GameEventType::MvmCreditBonusAll => GameEvent::MvmCreditBonusAll(MvmCreditBonusAllEvent::from_raw_event(event.values)?),
|
||||||
"mvm_creditbonus_all_advanced" => GameEvent::MvmCreditBonusAllAdvanced(MvmCreditBonusAllAdvancedEvent::from_raw_event(event.values)?),
|
GameEventType::MvmCreditBonusAllAdvanced => GameEvent::MvmCreditBonusAllAdvanced(MvmCreditBonusAllAdvancedEvent::from_raw_event(event.values)?),
|
||||||
"mvm_quick_sentry_upgrade" => GameEvent::MvmQuickSentryUpgrade(MvmQuickSentryUpgradeEvent::from_raw_event(event.values)?),
|
GameEventType::MvmQuickSentryUpgrade => GameEvent::MvmQuickSentryUpgrade(MvmQuickSentryUpgradeEvent::from_raw_event(event.values)?),
|
||||||
"mvm_tank_destroyed_by_players" => GameEvent::MvmTankDestroyedByPlayers(MvmTankDestroyedByPlayersEvent::from_raw_event(event.values)?),
|
GameEventType::MvmTankDestroyedByPlayers => GameEvent::MvmTankDestroyedByPlayers(MvmTankDestroyedByPlayersEvent::from_raw_event(event.values)?),
|
||||||
"mvm_kill_robot_delivering_bomb" => GameEvent::MvmKillRobotDeliveringBomb(MvmKillRobotDeliveringBombEvent::from_raw_event(event.values)?),
|
GameEventType::MvmKillRobotDeliveringBomb => GameEvent::MvmKillRobotDeliveringBomb(MvmKillRobotDeliveringBombEvent::from_raw_event(event.values)?),
|
||||||
"mvm_pickup_currency" => GameEvent::MvmPickupCurrency(MvmPickupCurrencyEvent::from_raw_event(event.values)?),
|
GameEventType::MvmPickupCurrency => GameEvent::MvmPickupCurrency(MvmPickupCurrencyEvent::from_raw_event(event.values)?),
|
||||||
"mvm_bomb_carrier_killed" => GameEvent::MvmBombCarrierKilled(MvmBombCarrierKilledEvent::from_raw_event(event.values)?),
|
GameEventType::MvmBombCarrierKilled => GameEvent::MvmBombCarrierKilled(MvmBombCarrierKilledEvent::from_raw_event(event.values)?),
|
||||||
"mvm_sentrybuster_detonate" => GameEvent::MvmSentryBusterDetonate(MvmSentryBusterDetonateEvent::from_raw_event(event.values)?),
|
GameEventType::MvmSentryBusterDetonate => GameEvent::MvmSentryBusterDetonate(MvmSentryBusterDetonateEvent::from_raw_event(event.values)?),
|
||||||
"mvm_scout_marked_for_death" => GameEvent::MvmScoutMarkedForDeath(MvmScoutMarkedForDeathEvent::from_raw_event(event.values)?),
|
GameEventType::MvmScoutMarkedForDeath => GameEvent::MvmScoutMarkedForDeath(MvmScoutMarkedForDeathEvent::from_raw_event(event.values)?),
|
||||||
"mvm_medic_powerup_shared" => GameEvent::MvmMedicPowerupShared(MvmMedicPowerupSharedEvent::from_raw_event(event.values)?),
|
GameEventType::MvmMedicPowerupShared => GameEvent::MvmMedicPowerupShared(MvmMedicPowerupSharedEvent::from_raw_event(event.values)?),
|
||||||
"mvm_begin_wave" => GameEvent::MvmBeginWave(MvmBeginWaveEvent::from_raw_event(event.values)?),
|
GameEventType::MvmBeginWave => GameEvent::MvmBeginWave(MvmBeginWaveEvent::from_raw_event(event.values)?),
|
||||||
"mvm_wave_complete" => GameEvent::MvmWaveComplete(MvmWaveCompleteEvent::from_raw_event(event.values)?),
|
GameEventType::MvmWaveComplete => GameEvent::MvmWaveComplete(MvmWaveCompleteEvent::from_raw_event(event.values)?),
|
||||||
"mvm_mission_complete" => GameEvent::MvmMissionComplete(MvmMissionCompleteEvent::from_raw_event(event.values)?),
|
GameEventType::MvmMissionComplete => GameEvent::MvmMissionComplete(MvmMissionCompleteEvent::from_raw_event(event.values)?),
|
||||||
"mvm_bomb_reset_by_player" => GameEvent::MvmBombResetByPlayer(MvmBombResetByPlayerEvent::from_raw_event(event.values)?),
|
GameEventType::MvmBombResetByPlayer => GameEvent::MvmBombResetByPlayer(MvmBombResetByPlayerEvent::from_raw_event(event.values)?),
|
||||||
"mvm_bomb_alarm_triggered" => GameEvent::MvmBombAlarmTriggered(MvmBombAlarmTriggeredEvent::from_raw_event(event.values)?),
|
GameEventType::MvmBombAlarmTriggered => GameEvent::MvmBombAlarmTriggered(MvmBombAlarmTriggeredEvent::from_raw_event(event.values)?),
|
||||||
"mvm_bomb_deploy_reset_by_player" => GameEvent::MvmBombDeployResetByPlayer(MvmBombDeployResetByPlayerEvent::from_raw_event(event.values)?),
|
GameEventType::MvmBombDeployResetByPlayer => GameEvent::MvmBombDeployResetByPlayer(MvmBombDeployResetByPlayerEvent::from_raw_event(event.values)?),
|
||||||
"mvm_wave_failed" => GameEvent::MvmWaveFailed(MvmWaveFailedEvent::from_raw_event(event.values)?),
|
GameEventType::MvmWaveFailed => GameEvent::MvmWaveFailed(MvmWaveFailedEvent::from_raw_event(event.values)?),
|
||||||
"mvm_reset_stats" => GameEvent::MvmResetStats(MvmResetStatsEvent::from_raw_event(event.values)?),
|
GameEventType::MvmResetStats => GameEvent::MvmResetStats(MvmResetStatsEvent::from_raw_event(event.values)?),
|
||||||
"damage_resisted" => GameEvent::DamageResisted(DamageResistedEvent::from_raw_event(event.values)?),
|
GameEventType::DamageResisted => GameEvent::DamageResisted(DamageResistedEvent::from_raw_event(event.values)?),
|
||||||
"revive_player_notify" => GameEvent::RevivePlayerNotify(RevivePlayerNotifyEvent::from_raw_event(event.values)?),
|
GameEventType::RevivePlayerNotify => GameEvent::RevivePlayerNotify(RevivePlayerNotifyEvent::from_raw_event(event.values)?),
|
||||||
"revive_player_stopped" => GameEvent::RevivePlayerStopped(RevivePlayerStoppedEvent::from_raw_event(event.values)?),
|
GameEventType::RevivePlayerStopped => GameEvent::RevivePlayerStopped(RevivePlayerStoppedEvent::from_raw_event(event.values)?),
|
||||||
"revive_player_complete" => GameEvent::RevivePlayerComplete(RevivePlayerCompleteEvent::from_raw_event(event.values)?),
|
GameEventType::RevivePlayerComplete => GameEvent::RevivePlayerComplete(RevivePlayerCompleteEvent::from_raw_event(event.values)?),
|
||||||
"player_turned_to_ghost" => GameEvent::PlayerTurnedToGhost(PlayerTurnedToGhostEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerTurnedToGhost => GameEvent::PlayerTurnedToGhost(PlayerTurnedToGhostEvent::from_raw_event(event.values)?),
|
||||||
"medigun_shield_blocked_damage" => GameEvent::MedigunShieldBlockedDamage(MedigunShieldBlockedDamageEvent::from_raw_event(event.values)?),
|
GameEventType::MedigunShieldBlockedDamage => GameEvent::MedigunShieldBlockedDamage(MedigunShieldBlockedDamageEvent::from_raw_event(event.values)?),
|
||||||
"mvm_adv_wave_complete_no_gates" => GameEvent::MvmAdvWaveCompleteNoGates(MvmAdvWaveCompleteNoGatesEvent::from_raw_event(event.values)?),
|
GameEventType::MvmAdvWaveCompleteNoGates => GameEvent::MvmAdvWaveCompleteNoGates(MvmAdvWaveCompleteNoGatesEvent::from_raw_event(event.values)?),
|
||||||
"mvm_sniper_headshot_currency" => GameEvent::MvmSniperHeadshotCurrency(MvmSniperHeadshotCurrencyEvent::from_raw_event(event.values)?),
|
GameEventType::MvmSniperHeadshotCurrency => GameEvent::MvmSniperHeadshotCurrency(MvmSniperHeadshotCurrencyEvent::from_raw_event(event.values)?),
|
||||||
"mvm_mannhattan_pit" => GameEvent::MvmMannhattanPit(MvmMannhattanPitEvent::from_raw_event(event.values)?),
|
GameEventType::MvmMannhattanPit => GameEvent::MvmMannhattanPit(MvmMannhattanPitEvent::from_raw_event(event.values)?),
|
||||||
"flag_carried_in_detection_zone" => GameEvent::FlagCarriedInDetectionZone(FlagCarriedInDetectionZoneEvent::from_raw_event(event.values)?),
|
GameEventType::FlagCarriedInDetectionZone => GameEvent::FlagCarriedInDetectionZone(FlagCarriedInDetectionZoneEvent::from_raw_event(event.values)?),
|
||||||
"mvm_adv_wave_killed_stun_radio" => GameEvent::MvmAdvWaveKilledStunRadio(MvmAdvWaveKilledStunRadioEvent::from_raw_event(event.values)?),
|
GameEventType::MvmAdvWaveKilledStunRadio => GameEvent::MvmAdvWaveKilledStunRadio(MvmAdvWaveKilledStunRadioEvent::from_raw_event(event.values)?),
|
||||||
"player_directhit_stun" => GameEvent::PlayerDirecthitStun(PlayerDirecthitStunEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerDirecthitStun => GameEvent::PlayerDirecthitStun(PlayerDirecthitStunEvent::from_raw_event(event.values)?),
|
||||||
"mvm_sentrybuster_killed" => GameEvent::MvmSentryBusterKilled(MvmSentryBusterKilledEvent::from_raw_event(event.values)?),
|
GameEventType::MvmSentryBusterKilled => GameEvent::MvmSentryBusterKilled(MvmSentryBusterKilledEvent::from_raw_event(event.values)?),
|
||||||
"upgrades_file_changed" => GameEvent::UpgradesFileChanged(UpgradesFileChangedEvent::from_raw_event(event.values)?),
|
GameEventType::UpgradesFileChanged => GameEvent::UpgradesFileChanged(UpgradesFileChangedEvent::from_raw_event(event.values)?),
|
||||||
"rd_team_points_changed" => GameEvent::RdTeamPointsChanged(RdTeamPointsChangedEvent::from_raw_event(event.values)?),
|
GameEventType::RdTeamPointsChanged => GameEvent::RdTeamPointsChanged(RdTeamPointsChangedEvent::from_raw_event(event.values)?),
|
||||||
"rd_rules_state_changed" => GameEvent::RdRulesStateChanged(RdRulesStateChangedEvent::from_raw_event(event.values)?),
|
GameEventType::RdRulesStateChanged => GameEvent::RdRulesStateChanged(RdRulesStateChangedEvent::from_raw_event(event.values)?),
|
||||||
"rd_robot_killed" => GameEvent::RdRobotKilled(RdRobotKilledEvent::from_raw_event(event.values)?),
|
GameEventType::RdRobotKilled => GameEvent::RdRobotKilled(RdRobotKilledEvent::from_raw_event(event.values)?),
|
||||||
"rd_robot_impact" => GameEvent::RdRobotImpact(RdRobotImpactEvent::from_raw_event(event.values)?),
|
GameEventType::RdRobotImpact => GameEvent::RdRobotImpact(RdRobotImpactEvent::from_raw_event(event.values)?),
|
||||||
"teamplay_pre_round_time_left" => GameEvent::TeamPlayPreRoundTimeLeft(TeamPlayPreRoundTimeLeftEvent::from_raw_event(event.values)?),
|
GameEventType::TeamPlayPreRoundTimeLeft => GameEvent::TeamPlayPreRoundTimeLeft(TeamPlayPreRoundTimeLeftEvent::from_raw_event(event.values)?),
|
||||||
"parachute_deploy" => GameEvent::ParachuteDeploy(ParachuteDeployEvent::from_raw_event(event.values)?),
|
GameEventType::ParachuteDeploy => GameEvent::ParachuteDeploy(ParachuteDeployEvent::from_raw_event(event.values)?),
|
||||||
"parachute_holster" => GameEvent::ParachuteHolster(ParachuteHolsterEvent::from_raw_event(event.values)?),
|
GameEventType::ParachuteHolster => GameEvent::ParachuteHolster(ParachuteHolsterEvent::from_raw_event(event.values)?),
|
||||||
"kill_refills_meter" => GameEvent::KillRefillsMeter(KillRefillsMeterEvent::from_raw_event(event.values)?),
|
GameEventType::KillRefillsMeter => GameEvent::KillRefillsMeter(KillRefillsMeterEvent::from_raw_event(event.values)?),
|
||||||
"rps_taunt_event" => GameEvent::RpsTauntEvent(RpsTauntEventEvent::from_raw_event(event.values)?),
|
GameEventType::RpsTauntEvent => GameEvent::RpsTauntEvent(RpsTauntEventEvent::from_raw_event(event.values)?),
|
||||||
"conga_kill" => GameEvent::CongaKill(CongaKillEvent::from_raw_event(event.values)?),
|
GameEventType::CongaKill => GameEvent::CongaKill(CongaKillEvent::from_raw_event(event.values)?),
|
||||||
"player_initial_spawn" => GameEvent::PlayerInitialSpawn(PlayerInitialSpawnEvent::from_raw_event(event.values)?),
|
GameEventType::PlayerInitialSpawn => GameEvent::PlayerInitialSpawn(PlayerInitialSpawnEvent::from_raw_event(event.values)?),
|
||||||
"competitive_victory" => GameEvent::CompetitiveVictory(CompetitiveVictoryEvent::from_raw_event(event.values)?),
|
GameEventType::CompetitiveVictory => GameEvent::CompetitiveVictory(CompetitiveVictoryEvent::from_raw_event(event.values)?),
|
||||||
"competitive_skillrating_update" => GameEvent::CompetitiveSkillratingUpdate(CompetitiveSkillratingUpdateEvent::from_raw_event(event.values)?),
|
GameEventType::CompetitiveSkillratingUpdate => GameEvent::CompetitiveSkillratingUpdate(CompetitiveSkillratingUpdateEvent::from_raw_event(event.values)?),
|
||||||
"minigame_win" => GameEvent::MiniGameWin(MiniGameWinEvent::from_raw_event(event.values)?),
|
GameEventType::MiniGameWin => GameEvent::MiniGameWin(MiniGameWinEvent::from_raw_event(event.values)?),
|
||||||
"sentry_on_go_active" => GameEvent::SentryOnGoActive(SentryOnGoActiveEvent::from_raw_event(event.values)?),
|
GameEventType::SentryOnGoActive => GameEvent::SentryOnGoActive(SentryOnGoActiveEvent::from_raw_event(event.values)?),
|
||||||
"duck_xp_level_up" => GameEvent::DuckXpLevelUp(DuckXpLevelUpEvent::from_raw_event(event.values)?),
|
GameEventType::DuckXpLevelUp => GameEvent::DuckXpLevelUp(DuckXpLevelUpEvent::from_raw_event(event.values)?),
|
||||||
"hltv_status" => GameEvent::HLTVStatus(HLTVStatusEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVStatus => GameEvent::HLTVStatus(HLTVStatusEvent::from_raw_event(event.values)?),
|
||||||
"hltv_cameraman" => GameEvent::HLTVCameraman(HLTVCameramanEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVCameraman => GameEvent::HLTVCameraman(HLTVCameramanEvent::from_raw_event(event.values)?),
|
||||||
"hltv_rank_camera" => GameEvent::HLTVRankCamera(HLTVRankCameraEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVRankCamera => GameEvent::HLTVRankCamera(HLTVRankCameraEvent::from_raw_event(event.values)?),
|
||||||
"hltv_rank_entity" => GameEvent::HLTVRankEntity(HLTVRankEntityEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVRankEntity => GameEvent::HLTVRankEntity(HLTVRankEntityEvent::from_raw_event(event.values)?),
|
||||||
"hltv_fixed" => GameEvent::HLTVFixed(HLTVFixedEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVFixed => GameEvent::HLTVFixed(HLTVFixedEvent::from_raw_event(event.values)?),
|
||||||
"hltv_chase" => GameEvent::HLTVChase(HLTVChaseEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVChase => GameEvent::HLTVChase(HLTVChaseEvent::from_raw_event(event.values)?),
|
||||||
"hltv_message" => GameEvent::HLTVMessage(HLTVMessageEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVMessage => GameEvent::HLTVMessage(HLTVMessageEvent::from_raw_event(event.values)?),
|
||||||
"hltv_title" => GameEvent::HLTVTitle(HLTVTitleEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVTitle => GameEvent::HLTVTitle(HLTVTitleEvent::from_raw_event(event.values)?),
|
||||||
"hltv_chat" => GameEvent::HLTVChat(HLTVChatEvent::from_raw_event(event.values)?),
|
GameEventType::HLTVChat => GameEvent::HLTVChat(HLTVChatEvent::from_raw_event(event.values)?),
|
||||||
"replay_startrecord" => GameEvent::ReplayStartRecord(ReplayStartRecordEvent::from_raw_event(event.values)?),
|
GameEventType::ReplayStartRecord => GameEvent::ReplayStartRecord(ReplayStartRecordEvent::from_raw_event(event.values)?),
|
||||||
"replay_sessioninfo" => GameEvent::ReplaySessionInfo(ReplaySessionInfoEvent::from_raw_event(event.values)?),
|
GameEventType::ReplaySessionInfo => GameEvent::ReplaySessionInfo(ReplaySessionInfoEvent::from_raw_event(event.values)?),
|
||||||
"replay_endrecord" => GameEvent::ReplayEndRecord(ReplayEndRecordEvent::from_raw_event(event.values)?),
|
GameEventType::ReplayEndRecord => GameEvent::ReplayEndRecord(ReplayEndRecordEvent::from_raw_event(event.values)?),
|
||||||
"replay_replaysavailable" => GameEvent::ReplayReplaysAvailable(ReplayReplaysAvailableEvent::from_raw_event(event.values)?),
|
GameEventType::ReplayReplaysAvailable => GameEvent::ReplayReplaysAvailable(ReplayReplaysAvailableEvent::from_raw_event(event.values)?),
|
||||||
"replay_servererror" => GameEvent::ReplayServerError(ReplayServerErrorEvent::from_raw_event(event.values)?),
|
GameEventType::ReplayServerError => GameEvent::ReplayServerError(ReplayServerErrorEvent::from_raw_event(event.values)?),
|
||||||
_ => return Err(ParseError::UnknownGameEvent(event.name))
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,17 +2,19 @@ use std::collections::HashMap;
|
||||||
|
|
||||||
use crate::{ParseError, Result};
|
use crate::{ParseError, Result};
|
||||||
|
|
||||||
|
pub use super::gameevent_gen::{GameEvent, GameEventType};
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct GameEventDefinition {
|
pub struct GameEventDefinition {
|
||||||
id: u32,
|
pub id: GameEventType,
|
||||||
name: String,
|
pub name: String,
|
||||||
entries: Vec<GameEventEntry>,
|
pub entries: Vec<GameEventEntry>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct GameEventEntry {
|
pub struct GameEventEntry {
|
||||||
name: String,
|
pub name: String,
|
||||||
kind: GameEventValueType,
|
pub kind: GameEventValueType,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy)]
|
#[derive(Debug, Clone, Copy)]
|
||||||
|
|
@ -26,12 +28,6 @@ pub enum GameEventValueType {
|
||||||
Local,
|
Local,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
|
||||||
pub struct GameEvent {
|
|
||||||
kind: GameEventType,
|
|
||||||
values: HashMap<String, GameEventValue>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
pub enum GameEventValue {
|
pub enum GameEventValue {
|
||||||
String(String),
|
String(String),
|
||||||
|
|
@ -131,388 +127,8 @@ impl FromGameEventValue for () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy)]
|
|
||||||
pub enum GameEventType {
|
|
||||||
ServerSpawnEvent,
|
|
||||||
ServerChangelevelFailedEvent,
|
|
||||||
ServerShutdownEvent,
|
|
||||||
ServerCvarEvent,
|
|
||||||
ServerMessageEvent,
|
|
||||||
ServerAddBanEvent,
|
|
||||||
ServerRemoveBanEvent,
|
|
||||||
PlayerConnectEvent,
|
|
||||||
PlayerConnectClientEvent,
|
|
||||||
PlayerInfoEvent,
|
|
||||||
PlayerDisconnectEvent,
|
|
||||||
PlayerActivateEvent,
|
|
||||||
PlayerSayEvent,
|
|
||||||
ClientDisconnectEvent,
|
|
||||||
ClientBeginConnectEvent,
|
|
||||||
ClientConnectedEvent,
|
|
||||||
ClientFullConnectEvent,
|
|
||||||
HostQuitEvent,
|
|
||||||
TeamInfoEvent,
|
|
||||||
TeamScoreEvent,
|
|
||||||
TeamPlayBroadcastAudioEvent,
|
|
||||||
PlayerTeamEvent,
|
|
||||||
PlayerClassEvent,
|
|
||||||
PlayerDeathEvent,
|
|
||||||
PlayerHurtEvent,
|
|
||||||
PlayerChatEvent,
|
|
||||||
PlayerScoreEvent,
|
|
||||||
PlayerSpawnEvent,
|
|
||||||
PlayerShootEvent,
|
|
||||||
PlayerUseEvent,
|
|
||||||
PlayerChangeNameEvent,
|
|
||||||
PlayerHintMessageEvent,
|
|
||||||
BasePlayerTeleportedEvent,
|
|
||||||
GameInitEvent,
|
|
||||||
GameNewMapEvent,
|
|
||||||
GameStartEvent,
|
|
||||||
GameEndEvent,
|
|
||||||
RoundStartEvent,
|
|
||||||
RoundEndEvent,
|
|
||||||
GameMessageEvent,
|
|
||||||
BreakBreakableEvent,
|
|
||||||
BreakPropEvent,
|
|
||||||
EntityKilledEvent,
|
|
||||||
BonusUpdatedEvent,
|
|
||||||
AchievementEventEvent,
|
|
||||||
AchievementIncrementEvent,
|
|
||||||
PhysgunPickupEvent,
|
|
||||||
FlareIgniteNpcEvent,
|
|
||||||
HelicopterGrenadePuntMissEvent,
|
|
||||||
UserDataDownloadedEvent,
|
|
||||||
RagdollDissolvedEvent,
|
|
||||||
HLTVChangedModeEvent,
|
|
||||||
HLTVChangedTargetEvent,
|
|
||||||
VoteEndedEvent,
|
|
||||||
VoteStartedEvent,
|
|
||||||
VoteChangedEvent,
|
|
||||||
VotePassedEvent,
|
|
||||||
VoteFailedEvent,
|
|
||||||
VoteCastEvent,
|
|
||||||
VoteOptionsEvent,
|
|
||||||
ReplaySavedEvent,
|
|
||||||
EnteredPerformanceModeEvent,
|
|
||||||
BrowseReplaysEvent,
|
|
||||||
ReplayYoutubeStatsEvent,
|
|
||||||
InventoryUpdatedEvent,
|
|
||||||
CartUpdatedEvent,
|
|
||||||
StorePricesheetUpdatedEvent,
|
|
||||||
GcConnectedEvent,
|
|
||||||
ItemSchemaInitializedEvent,
|
|
||||||
IntroFinishEvent,
|
|
||||||
IntroNextCameraEvent,
|
|
||||||
MmLobbyChatEvent,
|
|
||||||
MmLobbyMemberJoinEvent,
|
|
||||||
MmLobbyMemberLeaveEvent,
|
|
||||||
PlayerChangeClassEvent,
|
|
||||||
TfMapTimeRemainingEvent,
|
|
||||||
TfGameOverEvent,
|
|
||||||
CtfFlagCapturedEvent,
|
|
||||||
ControlPointInitializedEvent,
|
|
||||||
ControlPointUpdateImagesEvent,
|
|
||||||
ControlPointUpdateLayoutEvent,
|
|
||||||
ControlPointUpdateCappingEvent,
|
|
||||||
ControlPointUpdateOwnerEvent,
|
|
||||||
ControlPointStartTouchEvent,
|
|
||||||
ControlPointEndTouchEvent,
|
|
||||||
ControlPointPulseElementEvent,
|
|
||||||
ControlPointFakeCaptureEvent,
|
|
||||||
ControlPointFakeCaptureMultEvent,
|
|
||||||
TeamPlayRoundSelectedEvent,
|
|
||||||
TeamPlayRoundStartEvent,
|
|
||||||
TeamPlayRoundActiveEvent,
|
|
||||||
TeamPlayWaitingBeginsEvent,
|
|
||||||
TeamPlayWaitingEndsEvent,
|
|
||||||
TeamPlayWaitingAboutToEndEvent,
|
|
||||||
TeamPlayRestartRoundEvent,
|
|
||||||
TeamPlayReadyRestartEvent,
|
|
||||||
TeamPlayRoundRestartSecondsEvent,
|
|
||||||
TeamPlayTeamReadyEvent,
|
|
||||||
TeamPlayRoundWinEvent,
|
|
||||||
TeamPlayUpdateTimerEvent,
|
|
||||||
TeamPlayRoundStalemateEvent,
|
|
||||||
TeamPlayOvertimeBeginEvent,
|
|
||||||
TeamPlayOvertimeEndEvent,
|
|
||||||
TeamPlaySuddenDeathBeginEvent,
|
|
||||||
TeamPlaySuddenDeathEndEvent,
|
|
||||||
TeamPlayGameOverEvent,
|
|
||||||
TeamPlayMapTimeRemainingEvent,
|
|
||||||
TeamPlayTimerFlashEvent,
|
|
||||||
TeamPlayTimerTimeAddedEvent,
|
|
||||||
TeamPlayPointStartCaptureEvent,
|
|
||||||
TeamPlayPointCapturedEvent,
|
|
||||||
TeamPlayPointLockedEvent,
|
|
||||||
TeamPlayPointUnlockedEvent,
|
|
||||||
TeamPlayCaptureBrokenEvent,
|
|
||||||
TeamPlayCaptureBlockedEvent,
|
|
||||||
TeamPlayFlagEventEvent,
|
|
||||||
TeamPlayWinPanelEvent,
|
|
||||||
TeamPlayTeambalancedPlayerEvent,
|
|
||||||
TeamPlaySetupFinishedEvent,
|
|
||||||
TeamPlayAlertEvent,
|
|
||||||
TrainingCompleteEvent,
|
|
||||||
ShowFreezePanelEvent,
|
|
||||||
HideFreezePanelEvent,
|
|
||||||
FreezeCamStartedEvent,
|
|
||||||
LocalPlayerChangeTeamEvent,
|
|
||||||
LocalPlayerScoreChangedEvent,
|
|
||||||
LocalPlayerChangeClassEvent,
|
|
||||||
LocalPlayerRespawnEvent,
|
|
||||||
BuildingInfoChangedEvent,
|
|
||||||
LocalPlayerChangeDisguiseEvent,
|
|
||||||
PlayerAccountChangedEvent,
|
|
||||||
SpyPdaResetEvent,
|
|
||||||
FlagStatusUpdateEvent,
|
|
||||||
PlayerStatsUpdatedEvent,
|
|
||||||
PlayingCommentaryEvent,
|
|
||||||
PlayerChargedeployedEvent,
|
|
||||||
PlayerBuiltObjectEvent,
|
|
||||||
PlayerUpgradedObjectEvent,
|
|
||||||
PlayerCarryObjectEvent,
|
|
||||||
PlayerDropObjectEvent,
|
|
||||||
ObjectRemovedEvent,
|
|
||||||
ObjectDestroyedEvent,
|
|
||||||
ObjectDetonatedEvent,
|
|
||||||
AchievementEarnedEvent,
|
|
||||||
SpecTargetUpdatedEvent,
|
|
||||||
TournamentStateUpdateEvent,
|
|
||||||
TournamentEnableCountdownEvent,
|
|
||||||
PlayerCalledForMedicEvent,
|
|
||||||
PlayerAskedForBallEvent,
|
|
||||||
LocalPlayerBecameObserverEvent,
|
|
||||||
PlayerIgnitedInvEvent,
|
|
||||||
PlayerIgnitedEvent,
|
|
||||||
PlayerExtinguishedEvent,
|
|
||||||
PlayerTeleportedEvent,
|
|
||||||
PlayerHealedMedicCallEvent,
|
|
||||||
LocalPlayerChargeReadyEvent,
|
|
||||||
LocalPlayerWinddownEvent,
|
|
||||||
PlayerInvulnedEvent,
|
|
||||||
EscortSpeedEvent,
|
|
||||||
EscortProgressEvent,
|
|
||||||
EscortRecedeEvent,
|
|
||||||
GameUIActivatedEvent,
|
|
||||||
GameUIHiddenEvent,
|
|
||||||
PlayerEscortScoreEvent,
|
|
||||||
PlayerHealOnHitEvent,
|
|
||||||
PlayerStealsandvichEvent,
|
|
||||||
ShowClassLayoutEvent,
|
|
||||||
ShowVsPanelEvent,
|
|
||||||
PlayerDamagedEvent,
|
|
||||||
ArenaPlayerNotificationEvent,
|
|
||||||
ArenaMatchMaxStreakEvent,
|
|
||||||
ArenaRoundStartEvent,
|
|
||||||
ArenaWinPanelEvent,
|
|
||||||
PveWinPanelEvent,
|
|
||||||
AirDashEvent,
|
|
||||||
LandedEvent,
|
|
||||||
PlayerDamageDodgedEvent,
|
|
||||||
PlayerStunnedEvent,
|
|
||||||
ScoutGrandSlamEvent,
|
|
||||||
ScoutSlamdollLandedEvent,
|
|
||||||
ArrowImpactEvent,
|
|
||||||
PlayerJaratedEvent,
|
|
||||||
PlayerJaratedFadeEvent,
|
|
||||||
PlayerShieldBlockedEvent,
|
|
||||||
PlayerPinnedEvent,
|
|
||||||
PlayerHealedByMedicEvent,
|
|
||||||
PlayerSappedObjectEvent,
|
|
||||||
ItemFoundEvent,
|
|
||||||
ShowAnnotationEvent,
|
|
||||||
HideAnnotationEvent,
|
|
||||||
PostInventoryApplicationEvent,
|
|
||||||
ControlPointUnlockUpdatedEvent,
|
|
||||||
DeployBuffBannerEvent,
|
|
||||||
PlayerBuffEvent,
|
|
||||||
MedicDeathEvent,
|
|
||||||
OvertimeNagEvent,
|
|
||||||
TeamsChangedEvent,
|
|
||||||
HalloweenPumpkinGrabEvent,
|
|
||||||
RocketJumpEvent,
|
|
||||||
RocketJumpLandedEvent,
|
|
||||||
StickyJumpEvent,
|
|
||||||
StickyJumpLandedEvent,
|
|
||||||
MedicDefendedEvent,
|
|
||||||
LocalPlayerHealedEvent,
|
|
||||||
PlayerDestroyedPipeBombEvent,
|
|
||||||
ObjectDeflectedEvent,
|
|
||||||
PlayerMvpEvent,
|
|
||||||
RaidSpawnMobEvent,
|
|
||||||
RaidSpawnSquadEvent,
|
|
||||||
NavBlockedEvent,
|
|
||||||
PathTrackPassedEvent,
|
|
||||||
NumCappersChangedEvent,
|
|
||||||
PlayerRegenerateEvent,
|
|
||||||
UpdateStatusItemEvent,
|
|
||||||
StatsResetRoundEvent,
|
|
||||||
ScoreStatsAccumulatedUpdateEvent,
|
|
||||||
ScoreStatsAccumulatedResetEvent,
|
|
||||||
AchievementEarnedLocalEvent,
|
|
||||||
PlayerHealedEvent,
|
|
||||||
BuildingHealedEvent,
|
|
||||||
ItemPickupEvent,
|
|
||||||
DuelStatusEvent,
|
|
||||||
FishNoticeEvent,
|
|
||||||
FishNoticeArmEvent,
|
|
||||||
ThrowableHitEvent,
|
|
||||||
PumpkinLordSummonedEvent,
|
|
||||||
PumpkinLordKilledEvent,
|
|
||||||
MerasmusSummonedEvent,
|
|
||||||
MerasmusKilledEvent,
|
|
||||||
MerasmusEscapeWarningEvent,
|
|
||||||
MerasmusEscapedEvent,
|
|
||||||
EyeballBossSummonedEvent,
|
|
||||||
EyeballBossStunnedEvent,
|
|
||||||
EyeballBossKilledEvent,
|
|
||||||
EyeballBossKillerEvent,
|
|
||||||
EyeballBossEscapeImminentEvent,
|
|
||||||
EyeballBossEscapedEvent,
|
|
||||||
NpcHurtEvent,
|
|
||||||
ControlPointTimerUpdatedEvent,
|
|
||||||
PlayerHighfiveStartEvent,
|
|
||||||
PlayerHighfiveCancelEvent,
|
|
||||||
PlayerHighfiveSuccessEvent,
|
|
||||||
PlayerBonusPointsEvent,
|
|
||||||
PlayerUpgradedEvent,
|
|
||||||
PlayerBuybackEvent,
|
|
||||||
PlayerUsedPowerUpBottleEvent,
|
|
||||||
ChristmasGiftGrabEvent,
|
|
||||||
PlayerKilledAchievementZoneEvent,
|
|
||||||
PartyUpdatedEvent,
|
|
||||||
LobbyUpdatedEvent,
|
|
||||||
MvmMissionUpdateEvent,
|
|
||||||
RecalculateHolidaysEvent,
|
|
||||||
PlayerCurrencyChangedEvent,
|
|
||||||
DoomsdayRocketOpenEvent,
|
|
||||||
RemoveNemesisRelationshipsEvent,
|
|
||||||
MvmCreditBonusWaveEvent,
|
|
||||||
MvmCreditBonusAllEvent,
|
|
||||||
MvmCreditBonusAllAdvancedEvent,
|
|
||||||
MvmQuickSentryUpgradeEvent,
|
|
||||||
MvmTankDestroyedByPlayersEvent,
|
|
||||||
MvmKillRobotDeliveringBombEvent,
|
|
||||||
MvmPickupCurrencyEvent,
|
|
||||||
MvmBombCarrierKilledEvent,
|
|
||||||
MvmSentryBusterDetonateEvent,
|
|
||||||
MvmScoutMarkedForDeathEvent,
|
|
||||||
MvmMedicPowerupSharedEvent,
|
|
||||||
MvmBeginWaveEvent,
|
|
||||||
MvmWaveCompleteEvent,
|
|
||||||
MvmMissionCompleteEvent,
|
|
||||||
MvmBombResetByPlayerEvent,
|
|
||||||
MvmBombAlarmTriggeredEvent,
|
|
||||||
MvmBombDeployResetByPlayerEvent,
|
|
||||||
MvmWaveFailedEvent,
|
|
||||||
MvmResetStatsEvent,
|
|
||||||
DamageResistedEvent,
|
|
||||||
RevivePlayerNotifyEvent,
|
|
||||||
RevivePlayerStoppedEvent,
|
|
||||||
RevivePlayerCompleteEvent,
|
|
||||||
PlayerTurnedToGhostEvent,
|
|
||||||
MedigunShieldBlockedDamageEvent,
|
|
||||||
MvmAdvWaveCompleteNoGatesEvent,
|
|
||||||
MvmSniperHeadshotCurrencyEvent,
|
|
||||||
MvmMannhattanPitEvent,
|
|
||||||
FlagCarriedInDetectionZoneEvent,
|
|
||||||
MvmAdvWaveKilledStunRadioEvent,
|
|
||||||
PlayerDirecthitStunEvent,
|
|
||||||
MvmSentryBusterKilledEvent,
|
|
||||||
UpgradesFileChangedEvent,
|
|
||||||
RdTeamPointsChangedEvent,
|
|
||||||
RdRulesStateChangedEvent,
|
|
||||||
RdRobotKilledEvent,
|
|
||||||
RdRobotImpactEvent,
|
|
||||||
TeamPlayPreRoundTimeLeftEvent,
|
|
||||||
ParachuteDeployEvent,
|
|
||||||
ParachuteHolsterEvent,
|
|
||||||
KillRefillsMeterEvent,
|
|
||||||
RpsTauntEventEvent,
|
|
||||||
CongaKillEvent,
|
|
||||||
PlayerInitialSpawnEvent,
|
|
||||||
CompetitiveVictoryEvent,
|
|
||||||
CompetitiveStatsUpdateEvent,
|
|
||||||
MiniGameWinEvent,
|
|
||||||
SentryOnGoActiveEvent,
|
|
||||||
DuckXpLevelUpEvent,
|
|
||||||
QuestLogOpenedEvent,
|
|
||||||
SchemaUpdatedEvent,
|
|
||||||
LocalPlayerPickupWeaponEvent,
|
|
||||||
RdPlayerScorePointsEvent,
|
|
||||||
DemomanDetStickiesEvent,
|
|
||||||
QuestObjectiveCompletedEvent,
|
|
||||||
PlayerScoreChangedEvent,
|
|
||||||
KilledCappingPlayerEvent,
|
|
||||||
EnvironmentalDeathEvent,
|
|
||||||
ProjectileDirectHitEvent,
|
|
||||||
PassGetEvent,
|
|
||||||
PassScoreEvent,
|
|
||||||
PassFreeEvent,
|
|
||||||
PassPassCaughtEvent,
|
|
||||||
PassBallStolenEvent,
|
|
||||||
PassBallBlockedEvent,
|
|
||||||
DamagePreventedEvent,
|
|
||||||
HalloweenBossKilledEvent,
|
|
||||||
EscapedLootIslandEvent,
|
|
||||||
TaggedPlayerAsItEvent,
|
|
||||||
MerasmusStunnedEvent,
|
|
||||||
MerasmusPropFoundEvent,
|
|
||||||
HalloweenSkeletonKilledEvent,
|
|
||||||
EscapeHellEvent,
|
|
||||||
CrossSpectralBridgeEvent,
|
|
||||||
MiniGameWonEvent,
|
|
||||||
RespawnGhostEvent,
|
|
||||||
KillInHellEvent,
|
|
||||||
HalloweenDuckCollectedEvent,
|
|
||||||
SpecialScoreEvent,
|
|
||||||
TeamLeaderKilledEvent,
|
|
||||||
HalloweenSoulCollectedEvent,
|
|
||||||
RecalculateTruceEvent,
|
|
||||||
DeadringerCheatDeathEvent,
|
|
||||||
CrossbowHealEvent,
|
|
||||||
DamageMitigatedEvent,
|
|
||||||
PayloadPushedEvent,
|
|
||||||
PlayerAbandonedMatchEvent,
|
|
||||||
ClDrawlineEvent,
|
|
||||||
RestartTimerTimeEvent,
|
|
||||||
WinLimitChangedEvent,
|
|
||||||
WinPanelShowScoresEvent,
|
|
||||||
TopStreamsRequestFinishedEvent,
|
|
||||||
CompetitiveStateChangedEvent,
|
|
||||||
GlobalWarDataUpdatedEvent,
|
|
||||||
StopWatchChangedEvent,
|
|
||||||
DsStopEvent,
|
|
||||||
DsScreenshotEvent,
|
|
||||||
ShowMatchSummaryEvent,
|
|
||||||
ExperienceChangedEvent,
|
|
||||||
BeginXpLerpEvent,
|
|
||||||
MatchmakerStatsUpdatedEvent,
|
|
||||||
RematchVotePeriodOverEvent,
|
|
||||||
RematchFailedToCreateEvent,
|
|
||||||
PlayerRematchChangeEvent,
|
|
||||||
PingUpdatedEvent,
|
|
||||||
PlayerNextMapVoteChangeEvent,
|
|
||||||
VoteMapsChangedEvent,
|
|
||||||
HLTVStatusEvent,
|
|
||||||
HLTVCameramanEvent,
|
|
||||||
HLTVRankCameraEvent,
|
|
||||||
HLTVRankEntityEvent,
|
|
||||||
HLTVFixedEvent,
|
|
||||||
HLTVChaseEvent,
|
|
||||||
HLTVMessageEvent,
|
|
||||||
HLTVTitleEvent,
|
|
||||||
HLTVChatEvent,
|
|
||||||
ReplayStartRecordEvent,
|
|
||||||
ReplaySessionInfoEvent,
|
|
||||||
ReplayEndRecordEvent,
|
|
||||||
ReplayReplaysAvailableEvent,
|
|
||||||
ReplayServerErrorEvent,
|
|
||||||
}
|
|
||||||
|
|
||||||
pub struct RawGameEvent {
|
pub struct RawGameEvent {
|
||||||
pub name: String,
|
pub event_type: GameEventType,
|
||||||
pub values: HashMap<String, GameEventValue>,
|
pub values: HashMap<String, GameEventValue>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,49 @@
|
||||||
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use bitstream_reader::{BitRead, BitReadSized, LittleEndian};
|
use bitstream_reader::{BitRead, BitReadSized, LittleEndian};
|
||||||
|
|
||||||
use crate::{ReadResult, Stream};
|
use crate::{Parse, ParseError, ParserState, ReadResult, Result, Stream};
|
||||||
|
use crate::demo::gameevent_gen::GameEventType;
|
||||||
|
use crate::demo::gamevent::{GameEvent, GameEventDefinition, GameEventEntry, GameEventValue, GameEventValueType, RawGameEvent};
|
||||||
|
|
||||||
|
fn read_event_value(stream: &mut Stream, definition: &GameEventEntry) -> Result<GameEventValue> {
|
||||||
|
Ok(match definition.kind {
|
||||||
|
GameEventValueType::String => GameEventValue::String(stream.read()?),
|
||||||
|
GameEventValueType::Float => GameEventValue::Float(stream.read()?),
|
||||||
|
GameEventValueType::Long => GameEventValue::Long(stream.read()?),
|
||||||
|
GameEventValueType::Short => GameEventValue::Short(stream.read()?),
|
||||||
|
GameEventValueType::Byte => GameEventValue::Byte(stream.read()?),
|
||||||
|
GameEventValueType::Boolean => GameEventValue::Boolean(stream.read()?),
|
||||||
|
GameEventValueType::Local => GameEventValue::Local,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
pub struct GameEventMessage {
|
pub struct GameEventMessage {
|
||||||
|
pub event: GameEvent
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Parse for GameEventMessage {
|
||||||
|
fn parse(stream: &mut Stream, state: &ParserState) -> Result<Self> {
|
||||||
|
let length: u16 = stream.read_sized(11)?;
|
||||||
|
let mut data = stream.read_bits(length as usize)?;
|
||||||
|
let event_type = data.read()?;
|
||||||
|
let raw_event = match state.event_definitions.get(&event_type) {
|
||||||
|
Some(definition) => {
|
||||||
|
let mut values: HashMap<String, GameEventValue> = HashMap::with_capacity(definition.entries.len());
|
||||||
|
for entry in &definition.entries {
|
||||||
|
values.insert(entry.name.clone(), read_event_value(stream, &entry)?);
|
||||||
|
}
|
||||||
|
|
||||||
|
RawGameEvent {
|
||||||
|
event_type,
|
||||||
|
values,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
None => unreachable!()
|
||||||
|
};
|
||||||
|
let event = GameEvent::from_raw_event(raw_event)?;
|
||||||
|
Ok(GameEventMessage {
|
||||||
|
event
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -11,6 +11,7 @@ pub mod stringtable;
|
||||||
pub mod voice;
|
pub mod voice;
|
||||||
pub mod bspdecal;
|
pub mod bspdecal;
|
||||||
pub mod usermessage;
|
pub mod usermessage;
|
||||||
|
pub mod gameevent;
|
||||||
|
|
||||||
#[derive(Primitive, Debug)]
|
#[derive(Primitive, Debug)]
|
||||||
pub enum MessageType {
|
pub enum MessageType {
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ use crate::demo::sendprop::SendProp;
|
||||||
use crate::Stream;
|
use crate::Stream;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use crate::demo::packet::stringtable::StringTable;
|
use crate::demo::packet::stringtable::StringTable;
|
||||||
|
use crate::demo::gameevent_gen::GameEventType;
|
||||||
|
|
||||||
#[derive(Default, Debug)]
|
#[derive(Default, Debug)]
|
||||||
pub struct ParserState {
|
pub struct ParserState {
|
||||||
pub version: u32,
|
pub version: u32,
|
||||||
pub static_baselines: HashMap<u32, StaticBaseline>,
|
pub static_baselines: HashMap<u32, StaticBaseline>,
|
||||||
pub event_definitions: HashMap<u32, GameEventDefinition>,
|
pub event_definitions: HashMap<GameEventType, GameEventDefinition>,
|
||||||
pub string_tables: Vec<StringTable>
|
pub string_tables: Vec<StringTable>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue