diff options
author | Daniel Schadt <kingdread@gmx.de> | 2020-06-12 17:08:12 +0200 |
---|---|---|
committer | Daniel Schadt <kingdread@gmx.de> | 2020-06-12 17:08:12 +0200 |
commit | 3951dcbce2f229235b77945b3493524ef970af4f (patch) | |
tree | 3c32718f507718fb24d183c339d5bd2105dc3dad | |
parent | 955b1a3a5121aa4b382da23317ea2000e024a20b (diff) | |
download | evtclib-3951dcbce2f229235b77945b3493524ef970af4f.tar.gz evtclib-3951dcbce2f229235b77945b3493524ef970af4f.tar.bz2 evtclib-3951dcbce2f229235b77945b3493524ef970af4f.zip |
implement CBTS_TAG
-rw-r--r-- | src/event.rs | 10 | ||||
-rw-r--r-- | src/raw/types.rs | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/event.rs b/src/event.rs index 971a1a3..d0d3181 100644 --- a/src/event.rs +++ b/src/event.rs @@ -182,6 +182,12 @@ pub enum EventKind { /// An error was reported by arcdps. Error { text: String }, + + /// The given agent has the tag. + /// + /// Note that the tag id is volatile and depends on the game build. Do not rely on the actual + /// value of this! + Tag { agent_addr: u64, tag_id: i32 }, } /// A higher-level representation of a combat event. @@ -368,6 +374,10 @@ impl TryFrom<&raw::CbtEvent> for Event { .into_owned(), } } + CbtStateChange::Tag => EventKind::Tag { + agent_addr: raw_event.src_agent, + tag_id: raw_event.value, + }, // XXX: implement proper handling of those events! CbtStateChange::BuffInitial | CbtStateChange::ReplInfo diff --git a/src/raw/types.rs b/src/raw/types.rs index 820d7a5..fe4a907 100644 --- a/src/raw/types.rs +++ b/src/raw/types.rs @@ -201,6 +201,8 @@ pub enum CbtStateChange { BreakbarPercent, /// `time` is the start of the error string. Error, + /// `src_agent` is the agent, `value` is the tag id + Tag, } impl Default for CbtStateChange { |