DB/EmotesText: Difference between revisions

From wowdev
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==0.5.3.3368, 1.12.1.5875, 3.3.5.12340, 6.0.1.18179==
struct EmotesTextRec {
  uint32_t m_ID;
  {{Template:Type|stringref}} m_name;
  {{Template:Type/foreign_key|table=Emotes}} m_emoteID;
  {{Template:Type/foreign_key|table=EmotesTextData}} m_emoteText[16];
};
==Structure==
==Structure==
If a female emote text in #12, #13 or #16 is 0, appropriate male one is used instead. Unknown columns should be tested if they actually work and do something.
{| style="background:#FCFCFC; color:black"
|-
! width="50" | Field
! width="170" | Name
! width="60" | Type
! width="500" | Description
! width="250" | Example
|- style="background:#E0E0E0;"
| 1 || ID || Integer || Unique row ID. ||
|-
| 2  || sRefCon || String || /String which executes this emote. ||
|- style="background:#E0E0E0;"
| 3 || iRefID_[[Emotes.dbc|Emotes]] || Integer || Animation to be played. ||
|-
| 4 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Male, target, displayed to others. || %s raises his fist in anger at %s.
|- style="background:#E0E0E0;"
| 5 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Male, target, displayed to target. || %s raises his fist in anger at you.
|-
| 6 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unisex, target, displayed to sender. || You raise your fist in anger at %s.
|- style="background:#E0E0E0;"
| 7 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|-
| 8 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Male, no target, displayed to others. || %s raises his fist in anger.
|- style="background:#E0E0E0;"
| 9 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|-
| 10 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unisex, no target, displayed to sender.  || You raise your fist in anger.
|- style="background:#E0E0E0;"
| 11 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|-
| 12 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Female, target, displayed to others. || %s raises her fist in anger at %s.
|- style="background:#E0E0E0;"
| 13 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Female, target, displayed to target. || %s raises her fist in anger at you.
|-
| 14 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|- style="background:#E0E0E0;"
| 15 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|-
| 16 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Female, no target, displayed to others. || %s raises her fist in anger.
|- style="background:#E0E0E0;"
| 17 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|-
| 18 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|- style="background:#E0E0E0;"
| 19 || iRefID_[[EmotesTextData.dbc|EmotesTextData]] || Integer || Unknown ||
|}
[[User:Amaroth|Amaroth]] 30th November 2016
{{Template:SectionBox|This section only applies to version {{Template:Sandbox/PrettyVersion|expansionlevel=0|build=0.5.3.3368}}}}
In the Alpha, the <code>CGChat::AddTextEmoteMessage</code> function is used to calculate which emoteText to use. This is based on a basic set of conditions that combine flags to produce an index. Because of these conditions, certain indices are not used e.g. 4, as it would have no 'displayed to x'. These invalid indices are subsequently 0 filled in the DBC. Below is a simplistic list of the conditions:


  '''Column Field Type Notes'''
  0x0 = default, male
  1 ID Integer
  0x1 = display to others
2 sRefCon String
  0x2 = display to target
  3 iRefID_[[Emotes.dbc|Emotes]] Integer animation to perform when doing emote
  0x4 = no target
4 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (3rd person, X moos at Y)
  0x8 = female
5 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (2nd person, X moos at you)
  * 'displayed to sender' emotes (index 3 and 7) are displayed as and when needed by the client
6 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (1st person, You moo at X)
7 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
8 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (2nd person, no target, X moos)
9 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
  10 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (1st person, no target, You mooo. Mooooo.)
  11 UiRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
12 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (3rd person, X Moo's at Y -- female)
13 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (2nd person, X Moo's at you -- female)
14 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
15 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
16 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer (2nd person, no target, X Moo's -- female)
17 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
18 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer
19 iRefID_[[EmotesTextData.dbc|EmotesTextData]] Integer


==6.0.1.18179==
[[Category:DBC]]
struct EmotesTextRec {
[[Category:DBC_Alpha]]
  uint32_t m_ID;
[[Category:DBC_Vanilla]]
  stringref m_name;
[[Category:DBC_WotLK]]
  uint32_t m_emoteID;
  uint32_t m_emoteText[16];
};
[[Category:DBC]][[Category:DBC_WotLK]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]

Latest revision as of 17:23, 18 June 2018

0.5.3.3368, 1.12.1.5875, 3.3.5.12340, 6.0.1.18179

struct EmotesTextRec {
  uint32_t m_ID;
  stringref m_name;
  foreign_key<uint32_t, &EmotesRec::m_ID> m_emoteID;
  foreign_key<uint32_t, &EmotesTextDataRec::m_ID> m_emoteText[16];
};

Structure

If a female emote text in #12, #13 or #16 is 0, appropriate male one is used instead. Unknown columns should be tested if they actually work and do something.

Field Name Type Description Example
1 ID Integer Unique row ID.
2 sRefCon String /String which executes this emote.
3 iRefID_Emotes Integer Animation to be played.
4 iRefID_EmotesTextData Integer Male, target, displayed to others. %s raises his fist in anger at %s.
5 iRefID_EmotesTextData Integer Male, target, displayed to target. %s raises his fist in anger at you.
6 iRefID_EmotesTextData Integer Unisex, target, displayed to sender. You raise your fist in anger at %s.
7 iRefID_EmotesTextData Integer Unknown
8 iRefID_EmotesTextData Integer Male, no target, displayed to others. %s raises his fist in anger.
9 iRefID_EmotesTextData Integer Unknown
10 iRefID_EmotesTextData Integer Unisex, no target, displayed to sender. You raise your fist in anger.
11 iRefID_EmotesTextData Integer Unknown
12 iRefID_EmotesTextData Integer Female, target, displayed to others. %s raises her fist in anger at %s.
13 iRefID_EmotesTextData Integer Female, target, displayed to target. %s raises her fist in anger at you.
14 iRefID_EmotesTextData Integer Unknown
15 iRefID_EmotesTextData Integer Unknown
16 iRefID_EmotesTextData Integer Female, no target, displayed to others. %s raises her fist in anger.
17 iRefID_EmotesTextData Integer Unknown
18 iRefID_EmotesTextData Integer Unknown
19 iRefID_EmotesTextData Integer Unknown

Amaroth 30th November 2016

This section only applies to version PreVanilla (0.5.3.3368)

In the Alpha, the CGChat::AddTextEmoteMessage function is used to calculate which emoteText to use. This is based on a basic set of conditions that combine flags to produce an index. Because of these conditions, certain indices are not used e.g. 4, as it would have no 'displayed to x'. These invalid indices are subsequently 0 filled in the DBC. Below is a simplistic list of the conditions:

0x0 = default, male
0x1 = display to others
0x2 = display to target
0x4 = no target
0x8 = female
 * 'displayed to sender' emotes (index 3 and 7) are displayed as and when needed by the client