B18009 animate figurine over water
>More worrying is the fact that applying a figurine over water lets >the monster wait until its next move before it drowns (giving >you time to teleport it to safety, or whatever) [...] >Should there be a minliquid() check as part of make_familiar()? Applying at the water location next to you was easy. But applying it at your own location (triggering BY_YOU) could end up placing the figurine at the far side of the level if there was lots of water. Correcting that required the ability to pass a flag from make_familiar to makemon() telling it to not rule out water locations as good positions. The flag had to be passed on down to goodpos() and enexto(). The bulk of this patch is just adding an additional argument to goodpos() in all of the callers.
This commit is contained in:
@@ -139,6 +139,7 @@ NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
|
||||
#define MM_ANGRY 0x10 /* monster is created angry */
|
||||
#define MM_NONAME 0x20 /* monster is not christened */
|
||||
#define MM_NOCOUNTBIRTH 0x40 /* don't increment born counter (for revival) */
|
||||
#define MM_IGNOREWATER 0x80 /* ignore water when positioning */
|
||||
|
||||
/* flags for special ggetobj status returns */
|
||||
#define ALL_FINISHED 0x01 /* called routine already finished the job */
|
||||
|
||||
Reference in New Issue
Block a user