Picked up some errors from a navy captain who had surrendered, though he seemed to become my officer ok and the dialogue seemed to work alright.
I do think it was missing an initial greeting though. He opened with something like "Britain will hunt you down" and it seemed to have skipped over something.
RUNTIME ERROR - file: dialog.c; line: 414
incorrect argument index
COMPILE ERROR - file: dialog.c; line: 414
file not found: dialogs\English\2.869378h
COMPILE ERROR - file: dialog.c; line: 414
file not found: dialogs\2.8693781
Here is the line 414 from dialog.c
DialogFile = GetAttributeN(ParentDialog,i);
Here is the broader function:
I do think it was missing an initial greeting though. He opened with something like "Britain will hunt you down" and it seemed to have skipped over something.
RUNTIME ERROR - file: dialog.c; line: 414
incorrect argument index
COMPILE ERROR - file: dialog.c; line: 414
file not found: dialogs\English\2.869378h
COMPILE ERROR - file: dialog.c; line: 414
file not found: dialogs\2.8693781
Here is the line 414 from dialog.c
DialogFile = GetAttributeN(ParentDialog,i);
Here is the broader function:
Code:
void ProcessAllDialogEvent(ref Character)
{
if(DIALOG_DEBUG) Trace("Dialog: Process all files for Character: " + Character.ID + " Current Node: " + Dialog.CurrentNode);
//Here we open all dialog files so dialog options are stored
int i, dn;
string DFile, DPath;
aref DialogFile, ParentDialog;
makearef(ParentDialog,Character.LoadedDialog);
dn = GetAttributesNum(ParentDialog);
if(DIALOG_DEBUG) Trace("Dialog: Number of dialog files = " + dn);
//Little bit of cleaning up
if(CheckAttribute(&Dialog,"PreLinks")) DeleteAttribute(&Dialog,"PreLinks");
//Check the files
for(i=0; i<dn; i++)
{
DialogFile = GetAttributeN(ParentDialog,i);
DFile = GetAttributeValue(DialogFile);
DPath = LoadDialogFile(DFile);
//Only process if there is a file, just to be sure.
if(DPath != "")
{
DialogFilesLoaded = i;
if(DIALOG_DEBUG) Trace("Dialog: Start Process");
ProcessDialogEvent();
//Make sure links aren't overwritten unless specified.
ProcessLinks(dn, i);
if(DIALOG_DEBUG) Trace("Dialog: Process Done");
//Check if the dialog is already closed because of dialog exit, else close it.
if(DialogFilesLoaded > -1)
{
UnloadDialogFile(DPath, DFile);
DialogFilesLoaded = -1;
}
}
}
//Levis add attribute for easy checking where we are in the dialog
Character.Dialog.Lines = sti(Character.Dialog.Lines) + 1;
}