gzdoom/src/g_strife/a_oracle.cpp
Christoph Oelckers 371712c53a - turned everything I could into non-action functions.
- fixed emission of the self pointer in FxVMFunctionCall. I did not realize that the self expression only sets up a register for the value, not pushing it onto the stack.
2016-10-22 17:49:08 +02:00

26 lines
538 B
C++

/*
#include "actor.h"
#include "a_action.h"
#include "a_strifeglobal.h"
#include "p_enemy.h"
#include "r_defs.h"
#include "vm.h"
*/
DEFINE_ACTION_FUNCTION(AActor, A_WakeOracleSpectre)
{
PARAM_SELF_PROLOGUE(AActor);
TThinkerIterator<AActor> it(NAME_AlienSpectre3);
AActor *spectre = it.Next();
if (spectre != NULL && spectre->health > 0 && self->target != spectre)
{
spectre->Sector->SoundTarget = spectre->LastHeard = self->LastHeard;
spectre->target = self->target;
spectre->SetState (spectre->SeeState);
}
return 0;
}