Updated Enemy Taunts (by anv)

- fixed crash due to same enemy taunting several times in a row (e.g. after being hit by a burst)
- prevent enemy from taunting again, before his previous taunt is finished
- taunt .xmls should be kept in subdirectory TableData\EnemyTaunts\ to avoid mess in TableData\
- added <szCensoredText>, if TAUNT_CENSORED_MODE set to TRUE and <szCensoredText> defined, it will be displayed instead of <szText>

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6659 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2013-11-28 08:23:03 +00:00
parent e6e8cd75fd
commit 4b7258f8b3
6 changed files with 85 additions and 38 deletions
+10
View File
@@ -55,6 +55,7 @@ tauntStartElementHandle(void *userData, const XML_Char *name, const XML_Char **a
else if(pData->curElement == ELEMENT &&
(strcmp(name, "uiIndex") == 0 ||
strcmp(name, "szText") == 0 ||
strcmp(name, "szCensoredText") == 0 ||
strcmp(name, "aggressive") == 0 ||
strcmp(name, "defensive") == 0 ||
@@ -233,6 +234,8 @@ tauntEndElementHandle(void *userData, const XML_Char *name)
{
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, pData->curArray[pData->curTaunt.uiIndex].szText, sizeof(pData->curTaunt.szText)/sizeof(pData->curTaunt.szText[0]) );
pData->curArray[pData->curTaunt.uiIndex].szText[sizeof(pData->curTaunt.szText)/sizeof(pData->curTaunt.szText[0]) - 1] = '\0';
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, pData->curArray[pData->curTaunt.uiIndex].szCensoredText, sizeof(pData->curTaunt.szCensoredText)/sizeof(pData->curTaunt.szCensoredText[0]) );
pData->curArray[pData->curTaunt.uiIndex].szCensoredText[sizeof(pData->curTaunt.szCensoredText)/sizeof(pData->curTaunt.szCensoredText[0]) - 1] = '\0';
}
else
{
@@ -297,6 +300,13 @@ tauntEndElementHandle(void *userData, const XML_Char *name)
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, pData->curTaunt.szText, sizeof(pData->curTaunt.szText)/sizeof(pData->curTaunt.szText[0]) );
pData->curTaunt.szText[sizeof(pData->curTaunt.szText)/sizeof(pData->curTaunt.szText[0]) - 1] = '\0';
}
else if(strcmp(name, "szCensoredText") == 0 )
{
pData->curElement = ELEMENT;
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, pData->curTaunt.szCensoredText, sizeof(pData->curTaunt.szCensoredText)/sizeof(pData->curTaunt.szCensoredText[0]) );
pData->curTaunt.szCensoredText[sizeof(pData->curTaunt.szCensoredText)/sizeof(pData->curTaunt.szCensoredText[0]) - 1] = '\0';
}
else if(strcmp(name, "aggressive") == 0)
{
pData->curElement = ELEMENT;