At the request of @DH27 and the approval of @Joruba (from BlackMark Studios),
@Myth is currently working on implementing the Peter Blood Storyline from CoAS into New Horizons.
Of course this'll take some doing; and all sorts of questions arise in the process...
And so the first question, which I'm not sure on how to answer...:
How do you handle an NPC standing still, but auto-initiating dialog when the player approaches?
@Bartolomeu o Portugues, @Jack Rackham, @Grey Roger, @Sebrian, has this come up anywhere in your stories?
Apparently this from LAi_Stay.c is what CoAS uses:
@Myth is currently working on implementing the Peter Blood Storyline from CoAS into New Horizons.
Of course this'll take some doing; and all sorts of questions arise in the process...
And so the first question, which I'm not sure on how to answer...:
How do you handle an NPC standing still, but auto-initiating dialog when the player approaches?
@Bartolomeu o Portugues, @Jack Rackham, @Grey Roger, @Sebrian, has this come up anywhere in your stories?
Apparently this from LAi_Stay.c is what CoAS uses:
Code:
for(int i = 0; i < num; i++)
{
idx = sti(chrFindNearCharacters[i].index);
if(LAi_group_IsEnemy(chr, &Characters[idx])) break;
if (CheckAttribute(chr, "talker") && idx == GetMainCharacterIndex() && LAi_Character_CanDialog(chr, pchar))
{
LAi_tmpl_SetDialog(chr, pchar, -1.0);
DeleteAttribute(chr, "talker");
return;
}
if (CheckAttribute(chr, "talker") && idx == GetMainCharacterIndex() && !LAi_Character_CanDialog(chr, pchar))
{
trace ("диалог невозможен");
return;
}
}