- added MF8_DONTFACETALKER flag which prevents NPCs from facing the player in conversations.
This commit is contained in:
parent
051521a898
commit
6d0b172762
3 changed files with 12 additions and 5 deletions
|
|
@ -813,7 +813,8 @@ void P_StartConversation (AActor *npc, AActor *pc, bool facetalker, bool saveang
|
|||
npc->target = pc;
|
||||
if (facetalker)
|
||||
{
|
||||
A_FaceTarget (npc);
|
||||
if (!(npc->flags8 & MF8_DONTFACETALKER))
|
||||
A_FaceTarget (npc);
|
||||
pc->Angles.Yaw = pc->AngleTo(npc);
|
||||
}
|
||||
if ((npc->flags & MF_FRIENDLY) || (npc->flags4 & MF4_NOHATEPLAYERS))
|
||||
|
|
@ -936,7 +937,8 @@ static void HandleReply(player_t *player, bool isconsole, int nodenum, int reply
|
|||
if (reply == NULL)
|
||||
{
|
||||
// The default reply was selected
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
if (!(npc->flags8 & MF8_DONTFACETALKER))
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
npc->flags5 &= ~MF5_INCONVERSATION;
|
||||
return;
|
||||
}
|
||||
|
|
@ -952,7 +954,8 @@ static void HandleReply(player_t *player, bool isconsole, int nodenum, int reply
|
|||
TerminalResponse(reply->QuickNo);
|
||||
}
|
||||
npc->ConversationAnimation(2);
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
if (!(npc->flags8 & MF8_DONTFACETALKER))
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
npc->flags5 &= ~MF5_INCONVERSATION;
|
||||
return;
|
||||
}
|
||||
|
|
@ -1080,7 +1083,8 @@ static void HandleReply(player_t *player, bool isconsole, int nodenum, int reply
|
|||
}
|
||||
}
|
||||
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
if (!(npc->flags8 & MF8_DONTFACETALKER))
|
||||
npc->Angles.Yaw = player->ConversationNPCAngle;
|
||||
|
||||
// [CW] Set these to NULL because we're not using to them
|
||||
// anymore. However, this can interfere with slideshows
|
||||
|
|
@ -1129,7 +1133,8 @@ void P_ConversationCommand (int netcode, int pnum, uint8_t **stream)
|
|||
assert(netcode == DEM_CONVNULL || netcode == DEM_CONVCLOSE);
|
||||
if (player->ConversationNPC != NULL)
|
||||
{
|
||||
player->ConversationNPC->Angles.Yaw = player->ConversationNPCAngle;
|
||||
if (!(player->ConversationNPC->flags8 & MF8_DONTFACETALKER))
|
||||
player->ConversationNPC->Angles.Yaw = player->ConversationNPCAngle;
|
||||
player->ConversationNPC->flags5 &= ~MF5_INCONVERSATION;
|
||||
}
|
||||
if (netcode == DEM_CONVNULL)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue