Files
source/Tactical/Civ Quotes.h
T
Sevenfm 74443ca8a9 New option TAUNT_VOICE (FALSE by default): if true, will play sound file instead of showing text.
New option TAUNT_VOICE_SHOW_INFO (FALSE by default): if true, will show debug info when playing voice taunt.
Restored JA2TESTVERSION for SpreadPatternLog.txt
Allow taunts from militia when using voice taunts.
Don't show noise text messages from militia (if on our side).
Fixed incorrect OKLIFE check in CheckStatusNearbyFriendlies().

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8743 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-02-07 10:13:16 +00:00

182 lines
4.2 KiB
C

#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, UINT32 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