DB/EmotesText: Difference between revisions
Jump to navigation
Jump to search
Barncastle (talk | contribs) |
mNo edit summary |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
==3.3.5.12340== | ==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== | |||
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. | 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" | {| style="background:#FCFCFC; color:black" | ||
Line 50: | Line 58: | ||
{{Template:SectionBox|This section only applies to version {{Template:Sandbox/PrettyVersion|expansionlevel=0|build=0.5.3.3368}}}} | {{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 off a basic set of rules that combines flags. Because of | In the Alpha, the <code>CGChat::AddTextEmoteMessage</code> function is used to calculate which emoteText to use, this is based off a basic set of rules that combines flags to produce an index. Because of these rules and flags certain combinations are not used i.e. 4 would have no 'displayed to x', these are subsequently 0 filled in the DBC. Below is a simplistic list of the flags: | ||
0x0 = default, male | 0x0 = default, male | ||
Line 57: | Line 65: | ||
0x4 = no target | 0x4 = no target | ||
0x8 = female | 0x8 = female | ||
* ' | * 'displayed to sender' (index 3 and 7) is a special case {{Template:Unverified| presumably calculated and used if (((flags & 1 or flags & 2) ? 3 : 0) + (flags & 4)) > 0}} | ||
[[Category:DBC]] | [[Category:DBC]] | ||
[[Category:DBC_Alpha]] | [[Category:DBC_Alpha]] |
Revision as of 12:41, 9 January 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
In the Alpha, the CGChat::AddTextEmoteMessage
function is used to calculate which emoteText to use, this is based off a basic set of rules that combines flags to produce an index. Because of these rules and flags certain combinations are not used i.e. 4 would have no 'displayed to x', these are subsequently 0 filled in the DBC. Below is a simplistic list of the flags:
0x0 = default, male 0x1 = display to others 0x2 = display to target 0x4 = no target 0x8 = female * 'displayed to sender' (index 3 and 7) is a special case presumably calculated and used if (((flags & 1 or flags & 2) ? 3 : 0) + (flags & 4)) > 0ᵘ