mirror of
https://github.com/1dot13/source.git
synced 2026-08-19 14:20:30 +02:00
Removed option AI_DECISION_INFO.
Added quest debug logging to Logs\QuestInfo.txt git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9177 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+49
-3
@@ -216,6 +216,7 @@ STR szAction[] = {
|
||||
// sevenfm
|
||||
UINT32 guiAIStartCounter = 0, guiAILastCounter = 0;
|
||||
//UINT8 gubAISelectedSoldier = NOBODY;
|
||||
BOOLEAN gfLogsEnabled = TRUE;
|
||||
|
||||
void DebugAI( INT8 bMsgType, SOLDIERTYPE *pSoldier, STR szOutput, INT8 bAction )
|
||||
{
|
||||
@@ -223,10 +224,8 @@ void DebugAI( INT8 bMsgType, SOLDIERTYPE *pSoldier, STR szOutput, INT8 bAction )
|
||||
CHAR8 msg[1024];
|
||||
CHAR8 buf[1024];
|
||||
|
||||
if (!gGameExternalOptions.fAIDecisionInfo)
|
||||
{
|
||||
if (!gfLogsEnabled)
|
||||
return;
|
||||
}
|
||||
|
||||
memset(buf, 0, 1024 * sizeof(char));
|
||||
|
||||
@@ -307,6 +306,12 @@ void DebugAI( INT8 bMsgType, SOLDIERTYPE *pSoldier, STR szOutput, INT8 bAction )
|
||||
fputs("\n", DebugFile);
|
||||
fclose(DebugFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
// cannot open file in Logs folder, stop logging
|
||||
gfLogsEnabled = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
// also log to individual file for selected soldier
|
||||
sprintf(buf, "Logs\\AI_Decisions [%d].txt", pSoldier->ubID);
|
||||
@@ -322,6 +327,46 @@ void DebugAI( INT8 bMsgType, SOLDIERTYPE *pSoldier, STR szOutput, INT8 bAction )
|
||||
}
|
||||
}
|
||||
|
||||
extern UINT32 guiDay;
|
||||
extern UINT32 guiHour;
|
||||
extern UINT32 guiMin;
|
||||
|
||||
void DebugQuestInfo(STR szOutput)
|
||||
{
|
||||
/*CHAR16 buf16[1024];
|
||||
memset(buf16, 0, 1024 * sizeof(wchar_t));
|
||||
|
||||
if (strlen(szOutput) > 0)
|
||||
{
|
||||
mbstowcs(buf16, szOutput, 1024 - 1);
|
||||
AddTacticalDebugMessage(buf16);
|
||||
}*/
|
||||
CHAR8 buf[1024];
|
||||
|
||||
if (!gfLogsEnabled)
|
||||
return;
|
||||
|
||||
FILE* DebugFile;
|
||||
|
||||
DebugFile = fopen("Logs\\QuestInfo.txt", "a+t");
|
||||
if (DebugFile != NULL)
|
||||
{
|
||||
// first write game clock and date/time
|
||||
sprintf(buf, "%d Day %d %d:%d ", GetJA2Clock(), guiDay, guiHour, guiMin);
|
||||
fputs(buf, DebugFile);
|
||||
|
||||
fputs(szOutput, DebugFile);
|
||||
fputs("\n", DebugFile);
|
||||
fclose(DebugFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
// cannot open file in Logs folder, stop logging
|
||||
gfLogsEnabled = FALSE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BOOLEAN InitAI( void )
|
||||
{
|
||||
@@ -354,6 +399,7 @@ BOOLEAN InitAI( void )
|
||||
|
||||
// sevenfm: Clear the AI debug txt file to prevent it from getting huge
|
||||
remove("Logs\\AI_Decisions.txt");
|
||||
//remove("Logs\\QuestInfo.txt");
|
||||
|
||||
// remove all individual files
|
||||
CHAR8 buf[1024];
|
||||
|
||||
@@ -1871,6 +1871,7 @@ void ResetOncePerConvoRecordsForNPC( UINT8 ubNPC )
|
||||
return;
|
||||
}
|
||||
ResetOncePerConvoRecords( gpNPCQuoteInfoArray[ ubNPC ] );
|
||||
DebugQuestInfo(String("reset QUOTE_FLAG_SAID for profile %d", ubNPC));
|
||||
}
|
||||
|
||||
void ResetOncePerConvoRecordsForAllNPCsInLoadedSector( void )
|
||||
@@ -1933,6 +1934,8 @@ void Converse( UINT8 ubNPC, UINT8 ubMerc, INT8 bApproach, UINT32 uiApproachData
|
||||
SOLDIERTYPE * pNPC;
|
||||
BOOLEAN fAttemptingToGiveItem;
|
||||
|
||||
DebugQuestInfo(String("Converse: merc<%d> to NPC <%d> %d data %d", ubMerc, ubNPC, bApproach, uiApproachData));
|
||||
|
||||
// we have to record whether an item is being given in order to determine whether,
|
||||
// in the case where the approach is overridden, we need to return the item to the
|
||||
// player
|
||||
@@ -1986,6 +1989,7 @@ void Converse( UINT8 ubNPC, UINT8 ubMerc, INT8 bApproach, UINT32 uiApproachData
|
||||
{
|
||||
case NPC_INITIAL_QUOTE:
|
||||
// reset stuff
|
||||
DebugQuestInfo(String("ResetOncePerConvoRecords for <%d>", ubNPC));
|
||||
ResetOncePerConvoRecords( pNPCQuoteInfoArray );
|
||||
|
||||
// CHEAP HACK
|
||||
@@ -1994,6 +1998,7 @@ void Converse( UINT8 ubNPC, UINT8 ubMerc, INT8 bApproach, UINT32 uiApproachData
|
||||
if ( ubNPC == DARREN && CheckFact( 281, DARREN ) == FALSE )
|
||||
{
|
||||
TURN_FLAG_OFF( pNPCQuoteInfoArray[11].fFlags, QUOTE_FLAG_SAID );
|
||||
DebugQuestInfo(String("reset QUOTE_FLAG_SAID for <%d> 'DARREN'", ubNPC));
|
||||
}
|
||||
|
||||
// turn the NPC to face us
|
||||
@@ -2769,6 +2774,8 @@ void TriggerNPCRecord( UINT8 ubTriggerNPC, UINT8 ubTriggerNPCRec )
|
||||
NPCQuoteInfo *pQuotePtr;
|
||||
BOOLEAN fDisplayDialogue = TRUE;
|
||||
|
||||
DebugQuestInfo(String("TriggerNPCRecord: <%d> record %d", ubTriggerNPC, ubTriggerNPCRec));
|
||||
|
||||
if (EnsureQuoteFileLoaded( ubTriggerNPC ) == FALSE)
|
||||
{
|
||||
// error!!!
|
||||
@@ -2797,6 +2804,8 @@ void TriggerNPCRecordImmediately( UINT8 ubTriggerNPC, UINT8 ubTriggerNPCRec )
|
||||
NPCQuoteInfo *pQuotePtr;
|
||||
BOOLEAN fDisplayDialogue = TRUE;
|
||||
|
||||
DebugQuestInfo(String("TriggerNPCRecordImmediately: <%d> record %d", ubTriggerNPC, ubTriggerNPCRec));
|
||||
|
||||
if (EnsureQuoteFileLoaded( ubTriggerNPC ) == FALSE)
|
||||
{
|
||||
// error!!!
|
||||
|
||||
@@ -183,6 +183,7 @@ BOOLEAN CanAutoBandage( BOOLEAN fDoFullCheck );
|
||||
void DebugAI( STR szOutput );
|
||||
enum { AI_MSG_START, AI_MSG_DECIDE, AI_MSG_INFO, AI_MSG_TOPIC };
|
||||
void DebugAI(INT8 bMsgType, SOLDIERTYPE *pSoldier, STR szOutput, INT8 bAction = -1);
|
||||
void DebugQuestInfo(STR szOutput);
|
||||
INT8 DecideAction(SOLDIERTYPE *pSoldier);
|
||||
INT8 DecideActionBlack(SOLDIERTYPE *pSoldier);
|
||||
INT8 DecideActionEscort(SOLDIERTYPE *pSoldier);
|
||||
|
||||
Reference in New Issue
Block a user