#include "hack.h"
Defines | |
#define | burn_dmg(obj, descr) rust_dmg(obj, descr, 0, FALSE, victim) |
Functions | |
STATIC_DCL void | FDECL (dofiretrap,(struct obj *)) |
STATIC_DCL void | NDECL (domagictrap) |
STATIC_DCL boolean | FDECL (emergency_disrobe,(boolean *)) |
STATIC_DCL int | FDECL (untrap_prob,(struct trap *ttmp)) |
STATIC_DCL void | FDECL (cnv_trap_obj,(int, int, struct trap *)) |
STATIC_DCL void | FDECL (move_into_trap,(struct trap *)) |
STATIC_DCL int | FDECL (try_disarm,(struct trap *, BOOLEAN_P)) |
STATIC_DCL void | FDECL (reward_untrap,(struct trap *, struct monst *)) |
STATIC_DCL int | FDECL (disarm_holdingtrap,(struct trap *)) |
STATIC_DCL int | FDECL (disarm_landmine,(struct trap *)) |
STATIC_DCL int | FDECL (disarm_squeaky_board,(struct trap *)) |
STATIC_DCL int | FDECL (disarm_shooting_trap,(struct trap *, int)) |
STATIC_DCL int | FDECL (try_lift,(struct monst *, struct trap *, int, BOOLEAN_P)) |
STATIC_DCL int | FDECL (help_monster_out,(struct monst *, struct trap *)) |
STATIC_DCL boolean | FDECL (thitm,(int, struct monst *, struct obj *, int, BOOLEAN_P)) |
STATIC_DCL int | FDECL (mkroll_launch,(struct trap *, XCHAR_P, XCHAR_P, SHORT_P, long)) |
STATIC_DCL boolean | FDECL (isclearpath,(coord *, int, SCHAR_P, SCHAR_P)) |
boolean | burnarmor (struct monst *victim) |
boolean | rust_dmg (struct obj *otmp, const char *ostr, int type, boolean print, struct monst *victim) |
void | grease_protect (struct obj *otmp, const char *ostr, struct monst *victim) |
struct trap * | maketrap (int x, int y, int typ) |
void | fall_through (boolean td) |
struct monst * | animate_statue (struct obj *statue, xchar x, xchar y, int cause, int *fail_reason) |
struct monst * | activate_statue_trap (struct trap *trap, xchar x, xchar y, boolean shatter) |
void | dotrap (struct trap *trap, unsigned trflags) |
void | blow_up_landmine (struct trap *trap) |
int | launch_obj (short otyp, int x1, int y1, int x2, int y2, int style) |
void | seetrap (struct trap *trap) |
STATIC_OVL int | mkroll_launch (struct trap *ttmp, xchar x, xchar y, short otyp, long ocount) |
STATIC_OVL boolean | isclearpath (coord *cc, int distance, schar dx, schar dy) |
int | mintrap (struct monst *mtmp) |
if (trapkilled) | |
void | minstapetrify (struct monst *mon, boolean byplayer) |
void | selftouch (char *arg) const |
void | mselftouch (struct monst *mon, const char *arg, boolean byplayer) |
void | float_up () |
void | fill_pit (int x, int y) |
int | float_down (long hmask, long emask) |
STATIC_OVL void | dofiretrap (struct obj *box) |
STATIC_OVL void | domagictrap () |
int | fire_damage (struct obj *chain, boolean force, boolean here, xchar x, xchar y) |
boolean | water_damage (struct obj *obj, boolean force, boolean here) |
STATIC_OVL boolean | emergency_disrobe (boolean *lostsome) |
boolean | drown () |
void | drain_en (int n) |
int | dountrap () |
STATIC_OVL int | untrap_prob (struct trap *ttmp) |
STATIC_OVL void | cnv_trap_obj (int otyp, int cnt, struct trap *ttmp) |
STATIC_OVL void | move_into_trap (struct trap *ttmp) |
STATIC_OVL int | try_disarm (struct trap *ttmp, boolean force_failure) |
STATIC_OVL void | reward_untrap (struct trap *ttmp, struct monst *mtmp) |
STATIC_OVL int | disarm_holdingtrap (struct trap *ttmp) |
STATIC_OVL int | disarm_landmine (struct trap *ttmp) |
STATIC_OVL int | disarm_squeaky_board (struct trap *ttmp) |
STATIC_OVL int | disarm_shooting_trap (struct trap *ttmp, int otyp) |
STATIC_OVL int | try_lift (struct monst *mtmp, struct trap *ttmp, int wt, boolean stuff) |
STATIC_OVL int | help_monster_out (struct monst *mtmp, struct trap *ttmp) |
int | untrap (boolean force) |
boolean | chest_trap (struct obj *obj, int bodypart, boolean disarm) |
struct trap * | t_at (int x, int y) |
void | deltrap (struct trap *trap) |
boolean | delfloortrap (struct trap *ttmp) |
void | b_trapped (const char *item, int bodypart) |
STATIC_OVL boolean | thitm (int tlev, struct monst *mon, struct obj *obj, int d_override, boolean nocorpse) |
boolean | unconscious () |
boolean | lava_effects () |
Variables | |
const char *const | destroy_strings [] |
STATIC_VAR const char *const | a_your [2] = { "a", "your" } |
STATIC_VAR const char *const | A_Your [2] = { "A", "Your" } |
STATIC_VAR const char | tower_of_flame [] = "tower of flame" |
STATIC_VAR const char *const | A_gush_of_water_hits = "A gush of water hits" |
STATIC_VAR const char *const | blindgas [6] |
static NEARDATA const char | oil [] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 } |
static const char | lava_killer [] = "molten lava" |
Referenced by burnarmor().
References ANIMATE_NORMAL, ANIMATE_SHATTER, animate_statue(), AS_MON_IS_UNIQUE, Blind, deltrap(), feel_location(), newsym(), otmp, obj::otyp, sobj_at(), and STATUE.
Referenced by bhitpile(), break_statue(), dosearch0(), and dotrap().
struct monst* animate_statue | ( | struct obj * | statue, |
xchar | x, | ||
xchar | y, | ||
int | cause, | ||
int * | fail_reason | ||
) | [read] |
References a_monnam(), add_to_minv(), adjalign(), ANIMATE_SHATTER, ANIMATE_SPELL, AS_MON_IS_UNIQUE, AS_NO_MON, AS_OK, BUFSZ, canspotmon, CHAM_DOPPELGANGER, christen_monst(), obj::cobj, monst::data, delobj(), FALSE, flags, G_UNIQ, permonst::geno, hides_under, is_golem, monst::m_ap_type, m_dowear(), makemon(), MM_ADJACENTOK, MM_NOCOUNTBIRTH, mon, flag::mon_moving, mons, montraits(), MS_GUARDIAN, permonst::msound, monst::mtame, newcham(), NO_MINVENT, nonliving, OATTACHED_MONST, OBJ_AT, obj_extract_self(), ONAME, pline(), PM_ARCHEOLOGIST, PM_DOPPELGANGER, PM_FLESH_GOLEM, remove_worn_item(), Role_if, seemimic(), something, STATUE_FEMALE, STATUE_HISTORIC, STATUE_MALE, stop_occupation(), Strcpy, the(), TRUE, u, Upolyd, upstart(), you::ux, you::uy, wary_dog(), nhcoord::x, xname(), nhcoord::y, and youmonst.
Referenced by activate_statue_trap(), and bhito().
void b_trapped | ( | const char * | item, |
int | bodypart | ||
) |
References A_CON, A_STR, exercise(), FALSE, HStun, KILLED_BY_AN, level_difficulty(), losehp(), make_stunned(), pline(), rnd(), The(), TRUE, and wake_nearby().
Referenced by dig(), dokick(), openone(), opentin(), picklock(), still_chewing(), and untrap().
void blow_up_landmine | ( | struct trap * | trap ) |
References D_BROKEN, del_engr_at(), FALSE, IS_DOOR, levl, MAY_DESTROY, MAY_FRACTURE, MAY_HIT, PIT, scatter(), seetrap(), VIS_EFFECTS, and wake_nearto().
Referenced by dotrap(), mintrap(), and moverock().
References BUFSZ, burn_dmg, cloak_simple_name(), FALSE, materialnm, objects, obj::otyp, rn2(), Sprintf, TRUE, uarm, uarmc, uarmf, uarmg, uarmh, uarms, W_ARM, W_ARMC, W_ARMF, W_ARMG, W_ARMH, W_ARMS, which_armor(), xname(), and youmonst.
Referenced by cast_cleric_spell(), dofiretrap(), explode(), mintrap(), zapyourself(), zhitm(), and zhitu().
References A_CON, A_DEX, A_STR, AD_ELEC, Blind, body_part(), bot(), carried, costly_spot(), currency(), d(), monst::data, delete_contents(), delobj(), destroy_item(), display_nhwindow, dofiretrap(), exercise(), FALSE, Free_action, get_obj_location(), Hallucination, HHallucination, HStun, in_rooms(), inside_shop(), KILLED_BY_AN, level, losehp(), Luck, make_angry_shk(), make_hallucinated(), make_stunned(), nomovemsg, nomul(), dlevel_t::objects, obj::ox, obj::oy, pline(), poisoned(), Punished, RING_CLASS, rn1, rn2(), rndcolor(), shieldeff(), Shock_resistance, shop_keeper(), SHOPBASE, SIZE, Sprintf, stagger(), stolen_value(), Stunned, the(), Tobjnam(), TRUE, u, uball, uchain, unpunish(), you::ushops, you::ux, you::uy, wake_nearby(), WAND_CLASS, WIN_MESSAGE, nhcoord::x, xname(), nhcoord::y, You_can_move_again, and youmonst.
Referenced by kick_object(), picklock(), untrap(), and use_container().
STATIC_OVL void cnv_trap_obj | ( | int | otyp, |
int | cnt, | ||
struct trap * | ttmp | ||
) |
References DART, deltrap(), FALSE, mksobj(), newsym(), obj::owt, place_object(), obj::quan, sellobj(), stackobj(), TRUE, trap::tx, trap::ty, and weight().
Referenced by disarm_holdingtrap(), disarm_landmine(), and disarm_shooting_trap().
References ANTI_MAGIC, BEAR_TRAP, deltrap(), FALSE, FIRE_TRAP, HOLE, LANDMINE, LEVEL_TELEP, m_at, MAGIC_TRAP, PIT, SPIKED_PIT, SQKY_BOARD, TELEP_TRAP, TRAPDOOR, TRUE, u, you::utrap, you::utraptype, you::ux, you::uy, and WEB.
Referenced by boulder_hits_pool(), dighole(), do_flood(), gush(), and zap_over_floor().
void deltrap | ( | struct trap * | trap ) |
References dealloc_trap, ftrap, and trap::ntrap.
Referenced by activate_statue_trap(), close_drawbridge(), cnv_trap_obj(), deferred_goto(), delfloortrap(), destroy_drawbridge(), disarm_holdingtrap(), disarm_squeaky_board(), dospinweb(), dotele(), dotrap(), drop_ball(), expulsion(), flooreffects(), floorfood(), getlev(), jump(), launch_obj(), level_tele_trap(), mintrap(), mkinvpos(), moverock(), open_drawbridge(), put_lregion_here(), repair_damage(), scatter(), spo_stair(), tele_trap(), wallify_vault(), and zap_updown().
STATIC_OVL int disarm_holdingtrap | ( | struct trap * | ttmp ) |
STATIC_OVL int disarm_landmine | ( | struct trap * | ttmp ) |
References cnv_trap_obj(), FALSE, LAND_MINE, the_your, and try_disarm().
Referenced by untrap().
STATIC_OVL int disarm_shooting_trap | ( | struct trap * | ttmp, |
int | otyp | ||
) |
References cnv_trap_obj(), FALSE, rnl(), the_your, and try_disarm().
Referenced by untrap().
STATIC_OVL int disarm_squeaky_board | ( | struct trap * | ttmp ) |
References CAN_OF_GREASE, consume_obj_charge(), deltrap(), you::dx, you::dy, getobj(), makeknown, more_experienced(), newexplevel(), newsym(), obj::otyp, POT_OIL, obj::spe, TRUE, try_disarm(), u, useup(), you::ux, and you::uy.
Referenced by untrap().
STATIC_OVL void dofiretrap | ( | struct obj * | box ) |
References AD_FIRE, Blind, flag::botl, burn_away_slime(), burn_floor_paper(), burnarmor(), carried, d(), destroy_item(), Fire_resistance, flags, is_ice(), is_pool(), KILLED_BY, KILLED_BY_AN, losehp(), melt_ice(), you::mhmax, min, permonst::mlevel, mons, pline(), PM_LEATHER_GOLEM, PM_PAPER_GOLEM, PM_STRAW_GOLEM, PM_WOOD_GOLEM, POTION_CLASS, rn2(), rnd(), SCROLL_CLASS, shieldeff(), SPBOOK_CLASS, surface(), the(), TRUE, u, you::uhpmax, you::ulevel, you::umonnum, Underwater, Upolyd, you::ux, you::uy, xname(), and youmonst.
Referenced by chest_trap(), domagictrap(), and dotrap().
STATIC_OVL void domagictrap | ( | ) |
References A_CHA, adjattrib(), at_dgn_entrance(), Blind, body_part(), monst::data, dofiretrap(), FALSE, flag::female, flags, Hallucination, HConfusion, In_quest(), is_neuter, isok(), m_at, make_blinded(), makemon(), NO_MM_FLAGS, on_level(), obj::otyp, pline(), qstart_level, resists_blnd(), rn1, rnd(), SCR_REMOVE_CURSE, seffects(), SPINE, tamedog(), u, Upolyd, you::ux, you::uy, you::uz, vision_clears, youmonst, and zeroobj.
Referenced by dotrap().
void dotrap | ( | struct trap * | trap, |
unsigned | trflags | ||
) |
References A_CON, A_DEX, A_STR, acidic, activate_statue_trap(), ACURR, amorphous, an(), ANTI_MAGIC, Antimagic, ARM, ARROW, ARROW_TRAP, ARTICLE_NONE, ARTICLE_THE, ballfall(), BEAR_TRAP, bimanual, Blind, blow_up_landmine(), body_part(), BOULDER, breathless, BUFSZ, Can_fall_thru(), carried, ceiling(), cloak_simple_name(), d(), DART, DART_TRAP, monst::data, defsyms, deltrap(), dmgval(), dofiretrap(), domagicportal(), domagictrap(), drain_en(), erode_obj(), exercise(), fall_asleep(), fall_through(), FALSE, fill_pit(), FIRE_TRAP, flags, Flying, fobj, FOOT, FORCEBUNGLE, Fumbling, Half_physical_damage, Hallucination, HEAD, HOLE, In_quest(), In_sokoban, invent, is_clinger, is_metallic, Is_qlocate, is_whirly, KILLED_BY, KILLED_BY_AN, LANDMINE, LAUNCH_KNOWN, launch_obj(), LEFT_SIDE, level_tele_trap(), LEVEL_TELEP, Levitation, locomotion(), losehp(), MAGIC_PORTAL, MAGIC_TRAP, mbodypart(), you::mhmax, mintrap(), mksobj(), mksobj_at(), mon_nam(), Monnam(), permonst::msize, MZ_SMALL, newsym(), NO_KILLER_PREFIX, obj::nobj, nomul(), NOWEBMSG, obfree(), otmp, obj::owt, Passes_walls, PIT, place_object(), placebc(), pline(), PM_BUGBEAR, PM_FIRE_ELEMENTAL, PM_GELATINOUS_CUBE, PM_GREMLIN, PM_IRON_GOLEM, PM_OWLBEAR, PM_PIT_FIEND, PM_PIT_VIPER, PM_RANGER, poisoned(), POLY_TRAP, polyself(), Punished, obj::quan, RECURSIVETRAP, RIGHT_SIDE, rn1, rn2(), rnd(), ROCK, ROCKTRAP, Role_if, ROLL, ROLLING_BOULDER_TRAP, rust_dmg(), RUST_TRAP, s_suffix(), SADDLE, seetrap(), selftouch(), set_wounded_legs(), shieldeff(), Sleep_resistance, SLP_GAS_TRAP, snuff_lit(), sobj_at(), SPIKED_PIT, split_mon(), Sprintf, SQKY_BOARD, stackobj(), STATUE_TRAP, STEED, Strcpy, strongmonst, SUPPRESS_SADDLE, t_at(), tele_trap(), TELEP_TRAP, the(), thitu(), trap_to_defsym, TRAPDOOR, TRUE, TT_BEARTRAP, TT_PIT, TT_WEB, you::twoweap, u, uarm, uarmc, uarmg, uarmh, uarms, uball, you::uen, you::uenmax, you::ulevel, you::umonnum, Unchanging, unplacebc(), unsolid, update_inventory, upstart(), uswapwep, you::utrap, you::utraptype, uwep, you::ux, you::uy, you::uz, flag::verbose, vision_full_recalc, wake_nearby(), WEB, webmaker, weight(), x_monnam(), xname(), and youmonst.
Referenced by dosit(), dospinweb(), float_down(), hurtle_step(), set_trap(), spoteffects(), and try_disarm().
int dountrap | ( | ) |
References bimanual, body_part(), monst::data, FALSE, HAND, HVY_ENCUMBER, makeplural(), permonst::mmove, mon_nam(), near_capacity(), nohands, pline(), sticks(), u, untrap(), you::ustuck, uwep, webmaker, welded(), and youmonst.
void drain_en | ( | int | n ) |
References flag::botl, flags, u, you::uen, and you::uenmax.
Referenced by dotrap(), and hitmu().
boolean drown | ( | ) |
References Amphibious, can_teleport, crawl, d(), monst::data, done(), dotele(), DROWNING, you::dx, you::dy, emergency_disrobe(), FALSE, dlevel_t::flags, flags, goodpos(), Hallucination, invent, Is_medusa_level, is_pool(), Is_waterlevel, KILLED_BY, KILLED_BY_AN, killer, killer_format, level, levl, losehp(), Luck, you::mhmax, permonst::mmove, multi, number_leashed(), placebc(), pline(), PM_GREMLIN, PM_IRON_GOLEM, PM_VAMPIRE, POOL, Punished, Race_if, rehumanize(), rn1, rn2(), safe_teleds(), split_mon(), Swimming, teleds(), Teleport_control, Teleportation, TRUE, u, you::umonnum, Unchanging, under_water(), unleash_all(), unmul(), unplacebc(), Upolyd, you::usleep, you::ux, you::uy, you::uz, flag::verbose, vision_full_recalc, vision_recalc(), water_damage(), and youmonst.
Referenced by Amulet_off(), dighole(), e_died(), float_down(), polyself(), seffects(), and spoteffects().
References assigninvlet(), dropx(), FALSE, inv_cnt(), invent, LOADSTONE, mkgoldobj(), near_capacity(), obj::nobj, obj::otyp, obj::owornmask, pline(), Punished, obj::quan, remove_worn_item(), rn2(), SLT_ENCUMBER, TOURIST, TRUE, u, uamul, uarm, uarmc, uarmf, uarmg, uarmh, uarms, ublindf, you::ugold, uleft, UNENCUMBERED, uright, and welded().
Referenced by drown().
void fall_through | ( | boolean | td ) |
References Blind, BUFSZ, Can_fall_thru(), ceiling(), monst::data, display_nhwindow, d_level::dlevel, d_level::dnum, dunlev(), dunlevs_in_dungeon(), FALSE, find_hell(), Flying, impact_drop(), In_sokoban, Inhell, is_clinger, Is_stronghold, Levitation, msgbuf, permonst::msize, MZ_HUGE, next_to_u(), pline(), rn2(), schedule_goto(), seetrap(), shopdig(), Sprintf, surface(), t_at(), TRAPDOOR, TRUE, u, you::uevent, you::ushops, you::ustuck, you::ux, you::uy, you::uz, WIN_MESSAGE, and youmonst.
Referenced by dokick(), and dotrap().
STATIC_DCL int FDECL | ( | mkroll_launch | , |
(struct trap *, XCHAR_P, XCHAR_P, SHORT_P, long) | |||
) |
STATIC_DCL int FDECL | ( | untrap_prob | , |
(struct trap *ttmp) | |||
) |
STATIC_DCL int FDECL | ( | disarm_holdingtrap | , |
(struct trap *) | |||
) |
STATIC_DCL int FDECL | ( | disarm_landmine | , |
(struct trap *) | |||
) |
STATIC_DCL int FDECL | ( | disarm_squeaky_board | , |
(struct trap *) | |||
) |
STATIC_DCL void FDECL | ( | dofiretrap | , |
(struct obj *) | |||
) |
STATIC_DCL void FDECL | ( | cnv_trap_obj | , |
(int, int, struct trap *) | |||
) |
STATIC_DCL int FDECL | ( | disarm_shooting_trap | , |
(struct trap *, int) | |||
) |
STATIC_DCL void FDECL | ( | move_into_trap | , |
(struct trap *) | |||
) |
STATIC_DCL int FDECL | ( | try_disarm | , |
(struct trap *, BOOLEAN_P) | |||
) |
void fill_pit | ( | int | x, |
int | y | ||
) |
References BOULDER, flooreffects(), obj_extract_self(), otmp, PIT, sobj_at(), SPIKED_PIT, and t_at().
Referenced by domove(), dotrap(), drop_ball(), float_up(), goto_level(), help_monster_out(), m_detach(), mintrap(), moverock(), teleds(), and use_magic_whistle().
References Blind, catch_lit(), CHEST, obj::cobj, couldsee, delobj(), destroy_strings, flooreffects(), Has_contents, ICE_BOX, IRON_SAFE, Is_container, is_flammable(), LARGE_BOX, Luck, MAX_ERODE, obj::nobj, obj_extract_self(), obj::oclass, otense(), otmp, obj::otyp, place_object(), pline(), POTION_CLASS, obj::quan, rn2(), rnl(), SCR_FIRE, SCROLL_CLASS, SPBOOK_CLASS, SPE_BOOK_OF_THE_DEAD, SPE_FIREBALL, the(), xname(), and Yname2().
Referenced by flooreffects(), and minliquid().
int float_down | ( | long | hmask, |
long | emask | ||
) |
References assign_level(), Can_fall_thru(), carried, monst::data, dotrap(), drown(), ELevitation, FALSE, Flying, Hallucination, HLevitation, HOLE, In_sokoban, Is_airlevel, is_animal, is_lava(), is_pool(), Is_waterlevel, KILLED_BY, lava_effects(), Levitation, losehp(), mon_nam(), movobj(), newsym(), on_level(), obj::ox, obj::oy, pickup(), PIT, pline(), Punished, rnd(), selftouch(), SPIKED_PIT, STATUE_TRAP, sticks(), surface(), Swimming, t_at(), TRAPDOOR, TRUE, u, uball, uchain, you::ustuck, you::utrap, you::ux, you::ux0, you::uy, you::uy0, you::uz, vision_full_recalc, Wwalking, and youmonst.
Referenced by arti_invoke(), Boots_off(), dodown(), nh_timeout(), and Ring_off_or_gone().
void float_up | ( | ) |
References body_part(), monst::data, fill_pit(), Hallucination, Is_airlevel, is_animal, is_floater, is_flyer, Is_waterlevel, LEG, Lev_at_will, makeplural(), mon_nam(), Monnam(), pline(), spoteffects(), surface(), TRUE, TT_INFLOOR, TT_PIT, u, you::ustuck, you::utrap, you::utraptype, you::ux, you::uy, you::uz, and vision_full_recalc.
Referenced by arti_invoke(), Boots_on(), eataccessory(), peffects(), and Ring_on().
References aobjnam(), canseemon, carried, Monnam(), pline(), rn2(), txt, update_inventory, vtense(), and youmonst.
Referenced by cursed_book(), erode_obj(), get_wet(), and rust_dmg().
References an(), ARM, body_part(), BUFSZ, check_capacity(), monst::data, destroy_arm(), display_nhwindow, FALSE, fill_pit(), HAND, inv_weight(), makeplural(), mon_nam(), Monnam(), obj::nobj, oresist_disintegration, otmp, obj::owt, pline(), PM_STONE_GOLEM, poly_when_stoned(), polymon(), reward_untrap(), rn2(), Sprintf, Stone_resistance, touch_petrifies, TRUE, try_lift(), uarmg, untrap_prob(), WIN_MESSAGE, and youmonst.
Referenced by untrap().
if | ( | trapkilled | ) |
References closed_door(), FALSE, isok(), levl, TRUE, nhcoord::x, and ZAP_POS.
Referenced by mkroll_launch().
int launch_obj | ( | short | otyp, |
int | x1, | ||
int | y1, | ||
int | x2, | ||
int | y2, | ||
int | style | ||
) |
References add_to_migration(), bhitpos, BOULDER, cansee, closed_door(), curs_on_u(), D_BROKEN, monst::data, del_engr_at(), delay_output, deltrap(), depth(), digging, DISP_END, DISP_FLASH, distmin(), d_level::dlevel, dmgval(), d_level::dnum, down_gate(), FALSE, flooreffects(), fracture_rock(), get_level(), Hallucination, hits_bars(), HOLE, In_endgame, IRONBARS, IS_ROCK, isok(), LANDMINE, LAUNCH_KNOWN, LAUNCH_UNSEEN, LEVEL_TELEP, levl, m_at, MAY_DESTROY, MAY_FRACTURE, MAY_HIT, MIGR_RANDOM, Monnam(), mpickobj(), multi, newsym(), nomul(), obj_extract_self(), obj_to_glyph, ohitmon(), otmp, obj::owornmask, obj::ox, obj::oy, PIT, place_object(), pline(), dig_info::pos, obj::quan, random_teleport_level(), rloco(), rn2(), ROLL, scatter(), seetrap(), sgn(), ship_object(), sobj_at(), obj::spe, SPIKED_PIT, splitobj(), STATUE, stop_occupation(), t_at(), TELEP_TRAP, thitu(), throws_rocks, tmp_at(), TRAPDOOR, TRUE, u, unblock_point(), you::ux, you::uy, you::uz, VIS_EFFECTS, wake_nearto(), nhcoord::x, nhcoord::y, and youmonst.
Referenced by dotrap(), and mintrap().
boolean lava_effects | ( | ) |
References AD_FIRE, Amulet_off(), aobjnam(), Armor_gone(), Blindf_off(), Boots_off(), burn_away_slime(), BURNING, Cloak_off(), d(), monst::data, destroy_item(), discover, done(), FALSE, Fire_resistance, Gloves_off(), Helmet_off(), invent, is_organic, KILLED_BY, killer, killer_format, lava_killer, Lifesaved, likes_lava, losehp(), obj::nobj, obj::owornmask, pline(), POTION_CLASS, Ring_gone(), rn1, safe_teleds(), SCROLL_CLASS, setnotworn(), Shield_off(), SPBOOK_CLASS, surface(), TRUE, TT_LAVA, u, uamul, uarm, uarmc, uarmf, uarmg, uarmh, uarms, ublindf, you::uhp, uleft, uquiver, uqwepgone(), uright, useup(), useupall(), uswapwep, uswapwepgone(), you::utrap, you::utraptype, uwep, uwepgone(), you::ux, you::uy, wizard, Wwalking, xname(), and youmonst.
Referenced by dighole(), e_died(), float_down(), readobjnam(), and spoteffects().
struct trap* maketrap | ( | int | x, |
int | y, | ||
int | typ | ||
) | [read] |
References add_damage(), add_to_container(), BEAR_TRAP, BOULDER, obj::corpsenm, CORR, d_level::dlevel, d_level::dnum, DOOR, trap::dst, FALSE, dlevel_t::flags, flags, ftrap, HOLE, in_rooms(), IS_DOOR, IS_ROOM, IS_WALL, trap::launch, level, levl, MAGIC_PORTAL, makemon(), monst::minvent, mkcorpstat(), mkroll_launch(), flag::mon_moving, mongone(), mons, newtrap, NO_MM_FLAGS, trap::ntrap, obj_extract_self(), otmp, obj::owornmask, obj::owt, PIT, rndmonnum(), ROLLING_BOULDER_TRAP, ROOM, SCORR, SDOOR, SHOPBASE, SPIKED_PIT, STATUE, STATUE_TRAP, STONE, t_at(), TRAPDOOR, TRUE, TT_BEARTRAP, TT_PIT, TT_WEB, trap::tx, trap::ty, rm::typ, u, unearth_objs(), you::utrap, you::utraptype, you::ux, you::uy, WEB, weight(), nhcoord::x, and nhcoord::y.
Referenced by digactualhole(), do_earthquake(), dospinweb(), fill_empty_maze(), fixup_special(), makelevel(), makeniche(), mkinvpos(), mkportal(), mktrap(), readobjnam(), set_trap(), try_disarm(), use_defensive(), and zap_over_floor().
References cansee, mon_adjust_speed(), mon_to_stone(), Monnam(), monstone(), pline(), poly_when_stoned(), resists_ston, stoned, TRUE, and xkilled().
Referenced by damageum(), dropy(), gulpmu(), hmon_hitmon(), mselftouch(), steal(), and thitmonst().
int mintrap | ( | struct monst * | mtmp ) |
References acidic, AD_FIRE, amorphous, ANTI_MAGIC, ARM, ARROW, ARROW_TRAP, BEAR_TRAP, bimanual, blow_up_landmine(), BOULDER, breathless, burn_floor_paper(), burnarmor(), Can_fall_thru(), cansee, canseemon, cloak_simple_name(), count_wsegs(), d(), DART, DART_TRAP, defsyms, deltrap(), destroy_mitem(), distu, erode_obj(), extra_nasty, FALSE, fill_pit(), FIRE_TRAP, flags, HEAD, HOLE, In_sokoban, is_clinger, is_floater, is_flyer, is_ice(), is_whirly, LANDMINE, trap::launch, launch_obj(), LAUNCH_UNSEEN, LEVEL_TELEP, MAGIC_PORTAL, MAGIC_TRAP, mbodypart(), melt_ice(), metallivorous, mindless, mksobj(), permonst::mlet, mlevel_tele_trap(), mon_nam(), MON_WEP, mondied(), Monnam(), mons, monsndx(), mselftouch(), permonst::msize, mtele_trap(), multi, MZ_HUGE, MZ_SMALL, newcham(), newsym(), obj::nobj, nomovemsg, NOTELL, otmp, obj::owt, passes_walls, PIT, pline(), PM_BALROG, PM_BALUCHITHERIUM, PM_BUGBEAR, PM_FIRE_ELEMENTAL, PM_GELATINOUS_CUBE, PM_GREMLIN, PM_IRON_GOLEM, PM_JABBERWOCK, PM_KRAKEN, PM_LEATHER_GOLEM, PM_MASTODON, PM_OWLBEAR, PM_PAPER_GOLEM, PM_PIT_FIEND, PM_PIT_VIPER, PM_PURPLE_WORM, PM_STRAW_GOLEM, PM_TITANOTHERE, PM_WOOD_GOLEM, PM_WUMPUS, POLY_TRAP, POTION_CLASS, obj::quan, resist(), resists_fire, resists_magm(), resists_sleep, rn2(), rnd(), rnl(), ROCK, ROCKTRAP, ROLL, ROLLING_BOULDER_TRAP, rust_dmg(), RUST_TRAP, S_DRAGON, S_GIANT, s_suffix(), SCROLL_CLASS, seetrap(), setmangry(), shieldeff(), SLP_GAS_TRAP, snuff_lit(), sobj_at(), something, flag::soundok, SPBOOK_CLASS, SPIKED_PIT, split_mon(), SQKY_BOARD, STATUE_TRAP, surface(), t_at(), TELEP_TRAP, thitm(), trap_to_defsym, TRAPDOOR, TRUE, trap::tx, trap::ty, u, unconscious(), unsolid, you::uz, W_ARM, W_ARMC, W_ARMG, W_ARMH, W_ARMS, wake_nearto(), WAND_CLASS, WEB, webmaker, weight(), which_armor(), trap::x, nhcoord::x, trap::y, and nhcoord::y.
Referenced by digactualhole(), domove(), dotrap(), dowaterdemon(), dowaternymph(), dowatersnakes(), kickdmg(), m_move(), mhurtle_step(), and use_magic_whistle().
References FALSE, is_pool(), isclearpath(), mksobj(), newsym(), otmp, obj::otyp, obj::owt, place_object(), obj::quan, rn1, rn2(), ROLLING_BOULDER_TRAP, stackobj(), TRUE, weight(), nhcoord::x, xdir, nhcoord::y, and ydir.
Referenced by maketrap().
STATIC_OVL void move_into_trap | ( | struct trap * | ttmp ) |
References A_WIS, check_leash(), drag_ball(), exercise(), FALSE, move_bc(), newsym(), Punished, spoteffects(), TRUE, trap::tx, u, you::umoved, you::ux, you::ux0, you::uy, you::uy0, and vision_recalc().
Referenced by try_disarm().
References cansee, CORPSE, obj::corpsenm, minstapetrify(), permonst::mname, mon_nam(), MON_WEP, Monnam(), mons, obj::otyp, pline(), and touch_petrifies.
Referenced by do_earthquake(), mdamagem(), mintrap(), newcham(), and steal_it().
STATIC_DCL void NDECL | ( | domagictrap | ) |
References A_LAWFUL, adjalign(), monst::data, mindless, permonst::mlet, Monnam(), pline(), rn2(), rnl(), S_HUMAN, set_malign(), align::type, u, and you::ualign.
Referenced by disarm_holdingtrap(), and help_monster_out().
boolean rust_dmg | ( | struct obj * | otmp, |
const char * | ostr, | ||
int | type, | ||
boolean | print, | ||
struct monst * | victim | ||
) |
References Blind, canseemon, destroy_arm(), FALSE, flags, grease_protect(), is_corrodeable, is_flammable(), is_rottable(), is_rustprone, MAX_ERODE, mon_nam(), Monnam(), NEARDATA, pline(), rnl(), TRUE, update_inventory, flag::verbose, vtense(), and youmonst.
Referenced by dokick(), dosit(), dotrap(), hurtarmor(), hurtmarmor(), mintrap(), and passive().
void seetrap | ( | struct trap * | trap ) |
References newsym().
Referenced by blow_up_landmine(), dotrap(), fall_through(), goto_level(), launch_obj(), mintrap(), mlevel_tele_trap(), moverock(), mtele_trap(), use_defensive(), use_misc(), and use_pick_axe2().
void selftouch | ( | char * | arg ) | const |
References an(), BUFSZ, CORPSE, obj::corpsenm, permonst::mname, mons, obj::otyp, pline(), Sprintf, Stone_resistance, touch_petrifies, you::twoweap, u, uswapwep, and uwep.
Referenced by destroy_arm(), do_earthquake(), dotrap(), float_down(), goto_level(), polyself(), and rehumanize().
struct trap* t_at | ( | int | x, |
int | y | ||
) | [read] |
References ftrap, trap::ntrap, trap::tx, and trap::ty.
Referenced by bhit(), bhitpile(), boulder_hits_pool(), break_statue(), close_drawbridge(), deferred_goto(), destroy_drawbridge(), dig(), dig_check(), dighole(), do_flood(), dodown(), dog_move(), domonnoise(), domove(), doorlock(), dopickup(), dosearch0(), dosit(), dospinweb(), dotele(), dotrap(), dowaterdemon(), dowaternymph(), dowatersnakes(), down_gate(), drag_ball(), drop_ball(), drop_throw(), fall_through(), fill_pit(), find_defensive(), find_misc(), findone(), float_down(), flooreffects(), floorfood(), gulpmu(), gush(), hurtle_step(), its_dead(), jump(), kick_object(), launch_obj(), look_here(), lookaround(), lookat(), make_grave(), maketrap(), mfndpos(), mintrap(), mkcavepos(), mkinvpos(), mkswamp(), movebubbles(), moverock(), newsym(), occupied(), open_drawbridge(), openone(), pickup(), put_lregion_here(), repair_damage(), scatter(), ship_object(), spo_grave(), spo_stair(), spoteffects(), teleok(), test_move(), unmap_object(), untrap(), use_defensive(), use_misc(), use_pick_axe2(), use_trap(), wallify_vault(), wallwalk_right(), xkilled(), zap_over_floor(), and zap_updown().
STATIC_OVL boolean thitm | ( | int | tlev, |
struct monst * | mon, | ||
struct obj * | obj, | ||
int | d_override, | ||
boolean | nocorpse | ||
) |
References AD_PHYS, AD_RBRE, cansee, monst::data, dealloc_obj(), dmgval(), doname(), FALSE, find_mac(), monst::mhp, monkilled(), Monnam(), monst::mx, monst::my, newsym(), oresist_disintegration, obj::owt, place_object(), pline(), rnd(), obj::spe, stackobj(), and TRUE.
Referenced by mintrap().
References abuse_dog(), bad_rock(), BEAR_TRAP, bigmonst, BOULDER, can_reach_floor(), monst::data, defsyms, dotrap(), you::dx, you::dy, inv_weight(), invent, killed(), m_at, maketrap(), monst::mhp, mon_nam(), Monnam(), move_into_trap(), monst::mtame, NOWEBMSG, P_BASIC, P_SKILL, Passes_walls, pline(), rnd(), rnl(), sobj_at(), trap_to_defsym, u, untrap_prob(), you::utrap, you::ux, you::uy, WEB, webmaker, weight_cap(), and youmonst.
Referenced by disarm_holdingtrap(), disarm_landmine(), disarm_shooting_trap(), and disarm_squeaky_board().
References HVY_ENCUMBER, mindless, Monnam(), pline(), rnl(), S_HUMAN, set_malign(), wc, and weight_cap().
Referenced by help_monster_out().
boolean unconscious | ( | ) |
References multi, nomovemsg, u, and you::usleep.
Referenced by mintrap(), nh_timeout(), tele(), and you_aggravate().
int untrap | ( | boolean | force ) |
References A_DEX, A_WIS, ACURR, add_damage(), an(), ARROW, ARROW_TRAP, b_trapped(), BEAR_TRAP, Blind, BUFSZ, chest_trap(), Confusion, D_BROKEN, D_ISOPEN, D_NODOOR, D_TRAPPED, DART, DART_TRAP, defsyms, disarm_holdingtrap(), disarm_landmine(), disarm_shooting_trap(), disarm_squeaky_board(), doname(), doormask, you::dx, you::dy, exercise(), symdef::explanation, FALSE, FINGER, Fumbling, getdir(), Hallucination, help_monster_out(), in_rooms(), Is_box, IS_DOOR, LANDMINE, level, level_difficulty(), levl, M_AP_FURNITURE, monst::m_ap_type, m_at, monst::mappearance, MAXULEV, mon_nam(), newsym(), dlevel_t::objects, otmp, obj::otyp, P_BASIC, P_SKILL, PIT, pline(), PM_ROGUE, Protection_from_shape_changers, QBUFSZ, rn2(), rnd(), Role_if, S_hcdoor, S_vcdoor, safe_qbuf(), SHOPBASE, simple_typename(), SPIKED_PIT, Sprintf, SQKY_BOARD, Strcpy, stumble_onto_mimic(), t_at(), the(), trap_to_defsym, TRUE, u, you::ulevel, unblock_point(), you::utrap, you::ux, you::uy, WEB, xname(), and ynq.
Referenced by arti_invoke(), and dountrap().
STATIC_OVL int untrap_prob | ( | struct trap * | ttmp ) |
References Blind, Confusion, monst::data, Fumbling, Hallucination, MAXULEV, PM_RANGER, PM_ROGUE, rn2(), Role_if, Stunned, u, you::uhave, you::ulevel, WEB, webmaker, and youmonst.
Referenced by help_monster_out(), and try_disarm().
References ARMOR_CLASS, CAN_OF_GREASE, delobj(), FALSE, Is_box, Is_container, is_rustprone, Luck, MAX_ERODE, obj::nobj, OILSKIN_CLOAK, OILSKIN_SACK, otmp, obj::otyp, pline(), POT_ACID, POT_WATER, POTION_CLASS, rn2(), rnl(), SCR_BLANK_PAPER, SCR_MAIL, SCROLL_CLASS, snuff_lit(), SPBOOK_CLASS, SPE_BLANK_PAPER, SPE_BOOK_OF_THE_DEAD, the(), uarm, uarmc, and xname().
Referenced by do_flood(), drown(), flooreffects(), gush(), minliquid(), and readobjnam().
STATIC_VAR const char* const A_gush_of_water_hits = "A gush of water hits" |
STATIC_VAR const char* const a_your[2] = { "a", "your" } |
STATIC_VAR const char* const A_Your[2] = { "A", "Your" } |
STATIC_VAR const char* const blindgas[6] |
{"humid", "odorless", "pungent", "chilling", "acrid", "biting"}
const char* const destroy_strings[] |
Referenced by fire_damage().
const char lava_killer[] = "molten lava" [static] |
Referenced by lava_effects().
NEARDATA const char oil[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 } [static] |
STATIC_VAR const char tower_of_flame[] = "tower of flame" |