DB/Emotes: Difference between revisions

From wowdev
Jump to navigation Jump to search
No edit summary
No edit summary
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Information about /Emotes
Information about /Emotes


==Structure==
struct EmoteFlags {
  '''Column Field Type Notes'''
  Only while standing  = 0x000001,
1 ID Integer The id.
  Emote applies to mount= 0x000002,
2 EmoteSlashCommand String
  Not while channeling  = 0x000004,
3 iRefID_[[AnimationData.dbc|AnimationData]] Integer Animation played on Emote.
  Talk anim talk        = 0x000008,
4 EmoteFlags BitMask* 0x8: Talk, 0x10: Question, 0x20: Exclamation, 0x40: Shout, 0x100: Laugh. These are used for the chatting emotes.
  Talk anim question    = 0x000010,
5 EmoteSpecProc Integer Theory: 0 = perform emote then revert; 1 = loop (emotes); 2 = loop states (ie stun). Actually, at some point in the code, a sound is only played if this is set to 2.
  Talk anim exclamation = 0x000020,
  6 EmoteSpecProcParam    Integer Hold the last frame of the animation. Only set for kneel, dead, sleep, at_ease and sit.
  Talk anim shout      = 0x000040,
Here the Animation is "Stand" all the time. It is most likely used to differ them.
  Not while swimming    = 0x000080,
  7 iRefID_[[SoundEntries.dbc|SoundEntries]] Integer A sound that is played on this emote.
  Talk anim laugh      = 0x000100,
  Ok while sleeping or dead = 0x000200,
  Disallow from client = 0x000400,
  Not while casting    = 0x000800,
  Movement ends        = 0x001000,
  Interrupt on interact = 0x002000,
  Only while still      = 0x004000,               // if moving, <tt>GERR_NOEMOTEWHILERUNNING</tt>
  Not while flying      = 0x008000,
  Not while mounted    = 0x010000,
  Animation suppressed by movement = 0x020000,
  Combat ends (initiating an attack) = 0x040000,
  Don't allow animation to fallback = 0x080000,
  Don't log chat on server = 0x100000,
  Not while in vehicle = 0x200000,
  Not while in combat (has threat) = 0x400000,
  Do not throttle player emote frequency = 0x800000,
  Suppress all animation sounds = 0x1000000,
  };
enum EMOTESPECPROCS
{
  EMOTESPECPROC_NONE = 0x0,
  EMOTESPECPROC_STANDSTATEHANDLER = 0x1,
  EMOTESPECPROC_EMOTESTATEHANDLER = 0x2,
  EMOTESPECPROC_NUMSPECPROCS = 0x3,
  };


==6.0.1.18179==
==0.5.3.3368==
struct EmotesRec
{
  uint32_t m_ID;
  {{Template:Type/foreign_key|table=AnimationData}} m_EmoteAnimID;
  uint32_t m_EmoteFlags;
  uint32_t m_EmoteSpecProc;                    // Used in <code>CGUnit_C::EmoteProcType</code>. Returns values from the below enum
  uint32_t m_EmoteSpecProcParam;
};
 
==1.12.1.5875==
  struct EmotesRec {
  struct EmotesRec {
   uint32_t m_ID;
   uint32_t m_ID;
   {{Template:Type|stringref}} m_EmoteSlashCommand;
   {{Template:Type|stringref}} m_EmoteSlashCommand;
   {{Template:Type/foreign_key|table=AnimationData}} m_AnimID;
   {{Template:Type/foreign_key|table=AnimationData}} m_AnimID;
  uint32_t m_EmoteFlags;
  uint32_t m_EmoteSpecProc;                    // {{Unverified|1=0 = perform emote then revert; 1 = loop (emotes); 2 = loop states (ie stun).}}
                                                // {{Unverified|Actually, at some point in the code, a sound is only played if this is set to 2.}}
  uint32_t m_EmoteSpecProcParam;
  {{Template:Type/foreign_key|table=SoundEntries}} m_EventSoundID;
};
==6.0.1.18179==
struct EmotesRec {
  uint32_t m_ID;
  {{Type|stringref}} m_EmoteSlashCommand;
  {{Type/foreign_key|table=AnimationData}} m_AnimID;
   uint32_t m_EmoteFlags;
   uint32_t m_EmoteFlags;
   uint32_t m_EmoteSpecProc;
   uint32_t m_EmoteSpecProc;
   uint32_t m_EmoteSpecProcParam;
   uint32_t m_EmoteSpecProcParam;
   {{Template:Type/foreign_key|table=SoundEntries}} m_EventSoundID;
   {{Type/foreign_key|table=SoundEntries}} m_EventSoundID;
   {{Template:Type/foreign_key|table=SpellVisualKit}} m_SpellVisualKitID;
   {{Type/foreign_key|table=SpellVisualKit}} m_SpellVisualKitID;
  };
  };
[[Category:DBC]][[Category:DBC_WotLK]]
 
[[Category:DBC]]
[[Category:DBC_Alpha]]
[[Category:DBC_Vanilla]]
[[Category:DBC_WotLK]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]

Latest revision as of 22:12, 25 August 2021

Information about /Emotes

struct EmoteFlags {
  Only while standing   = 0x000001,
  Emote applies to mount= 0x000002,
  Not while channeling  = 0x000004,
  Talk anim talk        = 0x000008,
  Talk anim question    = 0x000010,
  Talk anim exclamation = 0x000020,
  Talk anim shout       = 0x000040,
  Not while swimming    = 0x000080,
  Talk anim laugh       = 0x000100,
  Ok while sleeping or dead = 0x000200,
  Disallow from client  = 0x000400,
  Not while casting     = 0x000800,
  Movement ends         = 0x001000,
  Interrupt on interact = 0x002000,
  Only while still      = 0x004000,               // if moving, GERR_NOEMOTEWHILERUNNING
  Not while flying      = 0x008000,
  Not while mounted     = 0x010000,
  Animation suppressed by movement = 0x020000,
  Combat ends (initiating an attack) = 0x040000,
  Don't allow animation to fallback = 0x080000,
  Don't log chat on server = 0x100000,
  Not while in vehicle = 0x200000,
  Not while in combat (has threat) = 0x400000,
  Do not throttle player emote frequency = 0x800000,
  Suppress all animation sounds = 0x1000000,
};

enum EMOTESPECPROCS
{
  EMOTESPECPROC_NONE = 0x0,
  EMOTESPECPROC_STANDSTATEHANDLER = 0x1,
  EMOTESPECPROC_EMOTESTATEHANDLER = 0x2,
  EMOTESPECPROC_NUMSPECPROCS = 0x3,
};

0.5.3.3368

struct EmotesRec
{
  uint32_t m_ID;
  foreign_key<uint32_t, &AnimationDataRec::m_ID> m_EmoteAnimID;
  uint32_t m_EmoteFlags;
  uint32_t m_EmoteSpecProc;                     // Used in CGUnit_C::EmoteProcType. Returns values from the below enum
  uint32_t m_EmoteSpecProcParam;
};

1.12.1.5875

struct EmotesRec {
  uint32_t m_ID;
  stringref m_EmoteSlashCommand;
  foreign_key<uint32_t, &AnimationDataRec::m_ID> m_AnimID;
  uint32_t m_EmoteFlags;
  uint32_t m_EmoteSpecProc;                     // 0 = perform emote then revert; 1 = loop (emotes); 2 = loop states (ie stun).
                                                // Actually, at some point in the code, a sound is only played if this is set to 2.
  uint32_t m_EmoteSpecProcParam;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_EventSoundID;
};

6.0.1.18179

struct EmotesRec {
  uint32_t m_ID;
  stringref m_EmoteSlashCommand;
  foreign_key<uint32_t, &AnimationDataRec::m_ID> m_AnimID;
  uint32_t m_EmoteFlags;
  uint32_t m_EmoteSpecProc;
  uint32_t m_EmoteSpecProcParam;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_EventSoundID;
  foreign_key<uint32_t, &SpellVisualKitRec::m_ID> m_SpellVisualKitID;
};