wands zapped by monsters
Reverse part of commit 4021a63bcf
"wand/spell/breath killer reason" so that wand of magic missile
zapped by a monster isn't ambiguous about who is responsible.
This commit is contained in:
+7
-7
@@ -673,17 +673,17 @@ enum getobj_callback_returns {
|
|||||||
#define BZ_OFS_WAN(otyp) (abs((otyp) - WAN_MAGIC_MISSILE) % 10)
|
#define BZ_OFS_WAN(otyp) (abs((otyp) - WAN_MAGIC_MISSILE) % 10)
|
||||||
#define BZ_OFS_SPE(otyp) (abs((otyp) - SPE_MAGIC_MISSILE) % 10)
|
#define BZ_OFS_SPE(otyp) (abs((otyp) - SPE_MAGIC_MISSILE) % 10)
|
||||||
/* hero shooting a wand */
|
/* hero shooting a wand */
|
||||||
#define BZ_U_WAND(bztyp) (0 + (bztyp))
|
#define BZ_U_WAND(bztyp) (0 + (bztyp)) /* 0..9 */
|
||||||
/* hero casting a spell */
|
/* hero casting a spell */
|
||||||
#define BZ_U_SPELL(bztyp) (10 + (bztyp))
|
#define BZ_U_SPELL(bztyp) (10 + (bztyp)) /* 10..19 */
|
||||||
/* hero breathing as a monster */
|
/* hero breathing as a monster */
|
||||||
#define BZ_U_BREATH(bztyp) (20 + (bztyp))
|
#define BZ_U_BREATH(bztyp) (20 + (bztyp)) /* 20..29 */
|
||||||
/* monster shooting a wand */
|
|
||||||
#define BZ_M_WAND(bztyp) (-0 - (bztyp))
|
|
||||||
/* monster casting a spell */
|
/* monster casting a spell */
|
||||||
#define BZ_M_SPELL(bztyp) (-10 - (bztyp))
|
#define BZ_M_SPELL(bztyp) (-10 - (bztyp)) /* -19..-10 */
|
||||||
/* monster breathing */
|
/* monster breathing */
|
||||||
#define BZ_M_BREATH(bztyp) (-20 - (bztyp))
|
#define BZ_M_BREATH(bztyp) (-20 - (bztyp)) /* -29..-20 */
|
||||||
|
/* monster shooting a wand; note: not -9 to -0 because -0 is ambiguous */
|
||||||
|
#define BZ_M_WAND(bztyp) (-30 - (bztyp)) /* -39..-30 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* option setting restrictions
|
* option setting restrictions
|
||||||
|
|||||||
@@ -55,12 +55,10 @@ static void wishcmdassist(int);
|
|||||||
static const char are_blinded_by_the_flash[] = "are blinded by the flash!";
|
static const char are_blinded_by_the_flash[] = "are blinded by the flash!";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* FIXME:
|
* A positive index means zapped/cast/breathed by hero.
|
||||||
* flash_types[0] for wand of magic missile is ambiguous.
|
* A negative index means zapped/cast/breathed by a monster, with value
|
||||||
* A positive index means zapped/cast/breathed by hero.
|
* index fixup beyond abs() needed for wand zaps. Wand zaps for monster
|
||||||
* A negative index means zapped/cast/breathed by a monster.
|
* use -39..-30 rather than -9..-0 because -0 is ambiguous (same as 0).
|
||||||
* Since abs(-0)==abs(0), there's no way to tell who zapped a wand of
|
|
||||||
* magic missile by just checking the index.
|
|
||||||
*/
|
*/
|
||||||
static const char *const flash_types[] = {
|
static const char *const flash_types[] = {
|
||||||
"magic missile", /* Wands must be 0-9 */
|
"magic missile", /* Wands must be 0-9 */
|
||||||
|
|||||||
Reference in New Issue
Block a user