New Feature: Externalized Enemy taunts (by anv)

- Taunts will be shown in the tactica log, once enabled (TAUNT_SHOW_IN_LOG = TRUE)
- Enemies will randomly choose their taunt from an pool of applicable ones
- All taunts can be stored in TableData/EnemyTaunts.xml
- see: http://www.bears-pit.com/board/ubbthreads.php/topics/327830/Externalised_taunts.html#Post327830


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6575 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2013-11-10 08:26:05 +00:00
parent 896c1e3e24
commit 899d0f15a0
22 changed files with 1485 additions and 78 deletions
+70
View File
@@ -205,6 +205,76 @@ extern BACKGROUND_VALUES zBackground[NUM_BACKGROUND];
extern UINT16 num_found_background; // the correct number is set on reading the xml
// anv: enums for externalised taunts
enum {
// progress
TAUNT_PROGRESS_LT,
TAUNT_PROGRESS_GT,
// taunting person's stats
TAUNT_EXP_LEVEL_LT,
TAUNT_EXP_LEVEL_GT,
TAUNT_HEALTH_LT,
TAUNT_HEALTH_GT,
TAUNT_HEALTH_MAX_LT,
TAUNT_HEALTH_MAX_GT,
TAUNT_ENERGY_LT,
TAUNT_ENERGY_GT,
TAUNT_ENERGY_MAX_LT,
TAUNT_ENERGY_MAX_GT,
TAUNT_MORALE_LT,
TAUNT_MORALE_GT,
// enemy/milita profiles
TAUNT_PROFILE_ADMIN,
TAUNT_PROFILE_ARMY,
TAUNT_PROFILE_ELITE,
TAUNT_PROFILE_GREEN,
TAUNT_PROFILE_REGULAR,
TAUNT_PROFILE_VETERAN,
// facts
TAUNT_FACT_TRUE,
TAUNT_FACT_FALSE,
// taunt target's stats
TAUNT_TARGET_TYPE,
TAUNT_TARGET_EXP_LEVEL_LT,
TAUNT_TARGET_EXP_LEVEL_GT,
TAUNT_TARGET_HEALTH_LT,
TAUNT_TARGET_HEALTH_GT,
TAUNT_TARGET_HEALTH_MAX_LT,
TAUNT_TARGET_HEALTH_MAX_GT,
TAUNT_TARGET_ENERGY_LT,
TAUNT_TARGET_ENERGY_GT,
TAUNT_TARGET_ENERGY_MAX_LT,
TAUNT_TARGET_ENERGY_MAX_GT,
TAUNT_TARGET_MORALE_LT,
TAUNT_TARGET_MORALE_GT,
TAUNT_TARGET_APPEARANCE,
// taunt target's profile
TAUNT_TARGET_MERC_PROFILE,
TAUNT_MAX,
};
typedef struct
{
UINT16 uiIndex;
CHAR16 szText[320];
UINT64 uiFlags;
INT16 value[TAUNT_MAX];
} TAUNT_VALUES;
#define NUM_TAUNT 2048
extern TAUNT_VALUES zTaunt[NUM_TAUNT];
extern UINT16 num_found_taunt; // the correct number is set on reading the xml
extern int INTERFACE_WIDTH; // 640
extern int INTERFACE_HEIGHT; // 120
extern int INV_INTERFACE_HEIGHT; // 140