View Single Post
Old January 13, 2015, 09:35   #1
PowerWyrm
Prophet
 
PowerWyrm's Avatar
 
Join Date: Apr 2008
Posts: 2,796
PowerWyrm is on a distinguished road
[3.5.1] Aggravation reveals mimics without giving awareness

Using an aggravating item (for example Zarcuthra) will reveal mimics ("The creeping copper coins wakes up"), but will not give awareness (creeping copper coins will stay a pile of $).

See process_monster():

Code:
		/* Aggravation */
		if (check_state(p_ptr, OF_AGGRAVATE, p_ptr->state.flags)) {
			/* Wake the monster and notify player */
			mon_clear_timed(m_ptr, MON_TMD_SLEEP, MON_TMD_FLG_NOTIFY, FALSE);

			/* Update the health bar */
			if (m_ptr->ml && !m_ptr->unaware) {
				
				/* Hack -- Update the health bar */
				if (p_ptr->health_who == m_ptr) p_ptr->redraw |= (PR_HEALTH);
			}

			/* Efficiency XXX XXX */
			return;
		}
IMO, the aggravated mimic should wake up silently and stay unaware like non-aggravated ones.

Code:
		/* Aggravation */
		if (check_state(p_ptr, OF_AGGRAVATE, p_ptr->state.flags)) {
			/* Wake the monster */
			mon_clear_timed(m_ptr, MON_TMD_SLEEP, MON_TMD_FLG_NOMESSAGE, FALSE);

			/* Notice the "waking up" */
			if (m_ptr->ml && !m_ptr->unaware) {
				/* Dump a message */
				msg("%s wakes up.", m_name);
				
				/* Hack -- Update the health bar (redundant code) */
				/*if (p_ptr->health_who == m_ptr) p_ptr->redraw |= (PR_HEALTH);*/
			}

			/* Efficiency XXX XXX */
			return;
		}
__________________
PWMAngband variant maintainer - check http://powerwyrm.monsite-orange.fr (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

Last edited by PowerWyrm; January 13, 2015 at 09:56.
PowerWyrm is offline   Reply With Quote