Doom Wiki
Advertisement
Doom Wiki


Un Alma perdida que tiene como objetivo otro monstruo lo mantendrá solo hasta que haga un ataque contra él. Después de eso, el objetivo se olvida inmediatamente. Dado que el Alma perdida siempre entra en su estado de dolor cuando resulta dañado, apuntará contra su oponente una vez que dicho oponente tome represalias con éxito, aunque puede ser fácilmente distraído por otros atacantes.

Cuando ataca a un jugador, las Almas perdidas lo retienen como su objetivo siempre que el jugador haga al menos un ataque que las alerte en su área. Si el jugador no produce tal ataque, las Almas perdidas pierden de vista a su objetivo y quedarán inactivas.

Esto es fácil de probar en el nivel E2M8: Tower of Babel de Doom al salir al área exterior sin atacar en absoluto, y dejar que las Almas perdidas carguen contra el jugador, pero esquivándolas. Estas golpearán las paredes y se quedarán inactivas hasta que vean o escuchen al jugador. Usar un arma las despertará y, a partir de ese momento, continuarán activas, persiguiendo y atacando al jugador normalmente.

Aspectos técnicos[]

El siguiente código en P_XYMovement establece al Alma perdida en su estado spawnstate después de golpear contra una pared. Una solución simple es volver a establecerla en seestate, para que continúe buscando su objetivo.

El estado spawnstate es cuando un monstruo espera en su lugar hasta que consigue un objetivo (por ver o escuchar al jugador). El estado seestate, en cambio, se produce cuando el monstruo ha visto un objetivo por lo que procede a tratar de cazarlo.

   if (!mo->momx && !mo->momy)
   {
       if (mo->flags & MF_SKULLFLY)
       {
           // the skull slammed into something
           mo->flags &= ~MF_SKULLFLY;
           mo->momx = mo->momy = mo->momz = 0;
           
           P_SetMobjState (mo, mo->info->spawnstate);
       }
       return;
   }


Véase también[]

Advertisement