#ifndef __CIV_QUOTES_H #define __CIV_QUOTES_H #include "Soldier Control.h" #define CIV_TYPE_NA 0 #define CIV_TYPE_ADULT 1 #define CIV_TYPE_KID 2 #define CIV_TYPE_MARRIED_PC 3 #define CIV_TYPE_ENEMY 4 enum { CIV_QUOTE_ADULTS_BEGGING, //CIV00.EDT CIV_QUOTE_KIDS_BEGGING, CIV_QUOTE_ADULTS_RECENT_BUG_ATTACK, CIV_QUOTE_KIDS_RECENT_BUG_ATTACK, CIV_QUOTE_ADULTS_BUG_EXTERMINATED_X_TIME, CIV_QUOTE_KIDS_BUG_EXTERMINATED_X_TIME, CIV_QUOTE_ADULTS_EXTREMLY_LOW_LOYALTY, CIV_QUOTE_KIDS_EXTREMLY_LOW_LOYALTY, CIV_QUOTE_ADULTS_HIGH_LOYALTY, CIV_QUOTE_KIDS_HIGH_LOYALTY, CIV_QUOTE_ADULTS_ALL_PURPOSE, //CIV10.EDT CIV_QUOTE_KIDS_ALL_PURPOSE, CIV_QUOTE_ADULTS_LIBREATED_FIRST_TIME, CIV_QUOTE_KIDS_LIBREATED_FIRST_TIME, CIV_QUOTE_ADULTS_TOWN_TAKEN_BACK, CIV_QUOTE_KIDS_TOWN_TAKEN_BACK, CIV_QUOTE_HICKS_FRIENDLY, CIV_QUOTE_HICKS_ENEMIES, CIV_QUOTE_GOONS_FRIENDLY, CIV_QUOTE_GOONS_ENEMIES, CIV_QUOTE_ADULTS_REBELS, //CIV20.EDT CIV_QUOTE_KIDS_REBELS, CIV_QUOTE_GREEN_MILITIA, CIV_QUOTE_MEDIUM_MILITIA, CIV_QUOTE_ELITE_MILITIA, CIV_QUOTE_SAN_MONA_BEGGERS, CIV_QUOTE_ENEMY_HURT, CIV_QUOTE_ENEMY_ADMIN, CIV_QUOTE_ENEMY_THREAT, CIV_QUOTE_ENEMY_ELITE, CIV_QUOTE_ADULTS_COWER, //CIV30.EDT CIV_QUOTE_KIDS_COWER, CIV_QUOTE_PC_MARRIED, CIV_QUOTE_KID_SLAVES, CIV_QUOTE_KID_SLAVES_FREE, CIV_QUOTE_MINERS_NOT_FOR_PLAYER, CIV_QUOTE_MINERS_FOR_PLAYER, CIV_QUOTE_ENEMY_OFFER_SURRENDER, CIV_QUOTE_HICKS_SEE_US_AT_NIGHT, CIV_QUOTE_DEIDRANNA_DEAD, #ifdef JA2UB //40 CIV_QUOTE__CIV_ENEMY_CAN_FIGHT, CIV_QUOTE__CIV_ENEMY_GENERIC, CIV_QUOTE__CIV_HURT, CIV_QUOTE__CIV_NOT_ENEMY, CIV_QUOTE_44, CIV_QUOTE_45, CIV_QUOTE_46, CIV_QUOTE_47, CIV_QUOTE_48, CIV_QUOTE_49, CIV_QUOTE_NEW = CIV_QUOTE_DEIDRANNA_DEAD + 990, // 500 reserved #else CIV_QUOTE_NEW = CIV_QUOTE_DEIDRANNA_DEAD + 1000, // 500 reserved #endif NUM_CIV_QUOTES }; enum TAUNTTYPE//enemy taunts - SANDRO { // actions TAUNT_FIRE_GUN, TAUNT_FIRE_LAUNCHER, TAUNT_ATTACK_BLADE, TAUNT_ATTACK_HTH, TAUNT_THROW_KNIFE, TAUNT_THROW_GRENADE, TAUNT_OUT_OF_AMMO, TAUNT_RELOAD, TAUNT_STEAL, // AI routines TAUNT_CHARGE_BLADE, TAUNT_CHARGE_HTH, TAUNT_RUN_AWAY, TAUNT_SEEK_NOISE, TAUNT_ALERT, TAUNT_SUSPICIOUS, TAUNT_NOTICED_UNSEEN, TAUNT_SAY_HI, TAUNT_INFORM_ABOUT, // got_hit_xxx TAUNT_GOT_HIT, TAUNT_GOT_HIT_GUNFIRE, TAUNT_GOT_HIT_BLADE, TAUNT_GOT_HIT_HTH, TAUNT_GOT_HIT_FALLROOF, TAUNT_GOT_HIT_BLOODLOSS, TAUNT_GOT_HIT_EXPLOSION, TAUNT_GOT_HIT_GAS, TAUNT_GOT_HIT_TENTACLES, TAUNT_GOT_HIT_STRUCTURE_EXPLOSION, TAUNT_GOT_HIT_OBJECT, TAUNT_GOT_HIT_THROWING_KNIFE, TAUNT_GOT_DEAFENED, TAUNT_GOT_BLINDED, TAUNT_GOT_ROBBED, // got_missed_xxx TAUNT_GOT_MISSED, TAUNT_GOT_MISSED_GUNFIRE, TAUNT_GOT_MISSED_BLADE, TAUNT_GOT_MISSED_HTH, TAUNT_GOT_MISSED_THROWING_KNIFE, // hit_xxx TAUNT_HIT, TAUNT_HIT_GUNFIRE, TAUNT_HIT_BLADE, TAUNT_HIT_HTH, TAUNT_HIT_EXPLOSION, TAUNT_HIT_THROWING_KNIFE, // kill_xxx TAUNT_KILL, TAUNT_KILL_GUNFIRE, TAUNT_KILL_BLADE, TAUNT_KILL_HTH, TAUNT_KILL_THROWING_KNIFE, TAUNT_HEAD_POP, // miss_xxx TAUNT_MISS, TAUNT_MISS_GUNFIRE, TAUNT_MISS_BLADE, TAUNT_MISS_HTH, TAUNT_MISS_THROWING_KNIFE, // ripostes to merc quotes TAUNT_RIPOSTE }; void PossiblyStartEnemyTaunt( SOLDIERTYPE *pCiv, TAUNTTYPE iTauntType, SoldierID uiTargetID = NOBODY ); void StartEnemyTaunt( SOLDIERTYPE *pCiv, TAUNTTYPE iTauntType, SOLDIERTYPE *pTarget = NULL ); //enemy taunts - SANDRO // anv: added pTarget argument void ShowTauntPopupBox( SOLDIERTYPE *pCiv, STR16 gzTauntQuote ); // sevenfm: voice taunts BOOLEAN PlayVoiceTaunt(SOLDIERTYPE *pCiv, TAUNTTYPE iTauntType, SOLDIERTYPE *pTarget); void InitCivQuoteSystem( ); void StartCivQuote( SOLDIERTYPE *pCiv ); INT8 GetCivType( SOLDIERTYPE *pCiv ); void HandleCivQuote( ); BOOLEAN SaveCivQuotesToSaveGameFile( HWFILE hFile ); BOOLEAN LoadCivQuotesFromLoadGameFile( HWFILE hFile ); BOOLEAN ShutDownQuoteBoxIfActive( ); void BeginCivQuote( SOLDIERTYPE *pCiv, UINT16 ubCivQuoteID, UINT16 ubEntryID, INT16 sX, INT16 sY ); void BeginChatQuote( SOLDIERTYPE *pCiv, INT16 sX, INT16 sY ); BOOLEAN CivQuoteActive(); #endif