|
|
|
|
@ -5269,7 +5269,11 @@ void MAI_Lazurus(int i)
|
|
|
|
|
MonsterStruct *Monst; |
|
|
|
|
|
|
|
|
|
if ((DWORD)i >= MAXMONSTERS) |
|
|
|
|
#ifdef HELLFIRE |
|
|
|
|
return; |
|
|
|
|
#else |
|
|
|
|
app_fatal("MAI_Lazurus: Invalid monster %d", i); |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
Monst = &monster[i]; |
|
|
|
|
if (monster[i]._mmode != MM_STAND) { |
|
|
|
|
@ -5281,7 +5285,7 @@ void MAI_Lazurus(int i)
|
|
|
|
|
md = M_GetDir(i); |
|
|
|
|
if (dFlags[mx][my] & BFLAG_VISIBLE) { |
|
|
|
|
if (gbMaxPlayers == 1) { |
|
|
|
|
if (Monst->mtalkmsg == TEXT_VILE13 && Monst->_mgoal == MGOAL_INQUIRING && plr[myplr]._px == TEXT_VILE13 && plr[myplr]._py == 46) { |
|
|
|
|
if (Monst->mtalkmsg == TEXT_VILE13 && Monst->_mgoal == MGOAL_INQUIRING && plr[myplr]._px == 35 && plr[myplr]._py == 46) { |
|
|
|
|
PlayInGameMovie("gendata\\fprst3.smk"); |
|
|
|
|
Monst->_mmode = MM_TALK; |
|
|
|
|
quests[Q_BETRAYER]._qvar1 = 5; |
|
|
|
|
@ -5291,10 +5295,10 @@ void MAI_Lazurus(int i)
|
|
|
|
|
if (Monst->mtalkmsg == TEXT_VILE13 && !effect_is_playing(USFX_LAZ1) && Monst->_mgoal == MGOAL_TALKING) { |
|
|
|
|
ObjChangeMapResync(1, 18, 20, 24); |
|
|
|
|
RedoPlayerVision(); |
|
|
|
|
Monst->_msquelch = UCHAR_MAX; |
|
|
|
|
Monst->mtalkmsg = 0; |
|
|
|
|
quests[Q_BETRAYER]._qvar1 = 6; |
|
|
|
|
Monst->_mgoal = MGOAL_NORMAL; |
|
|
|
|
Monst->_msquelch = UCHAR_MAX; |
|
|
|
|
Monst->mtalkmsg = 0; |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
@ -5305,7 +5309,9 @@ void MAI_Lazurus(int i)
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (Monst->_mgoal == MGOAL_NORMAL || Monst->_mgoal == MGOAL_RETREAT || Monst->_mgoal == MGOAL_MOVE) { |
|
|
|
|
#ifndef HELLFIRE |
|
|
|
|
Monst->mtalkmsg = 0; |
|
|
|
|
#endif |
|
|
|
|
MAI_Counselor(i); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|