#include "hack.h"
#include "lev.h"
Functions | |
STATIC_PTR int | FDECL (drop,(struct obj *)) |
STATIC_PTR int | NDECL (wipeoff) |
STATIC_DCL int | FDECL (menu_drop,(int)) |
STATIC_DCL int | NDECL (currentlevel_rewrite) |
STATIC_DCL void | NDECL (final_level) |
int | dodrop () |
boolean | boulder_hits_pool (struct obj *otmp, int rx, int ry, boolean pushing) |
boolean | flooreffects (struct obj *obj, int x, int y, const char *verb) |
void | doaltarobj (struct obj *obj) |
boolean | canletgo (struct obj *obj, const char *word) |
STATIC_PTR int | drop (struct obj *obj) |
void | dropx (struct obj *obj) |
void | dropy (struct obj *obj) |
void | obj_no_longer_held (struct obj *obj) |
int | doddrop () |
STATIC_OVL int | menu_drop (int retry) |
int | dodown () |
int | doup () |
STATIC_OVL int | currentlevel_rewrite () |
void | goto_level (d_level *newlevel, boolean at_stairs, boolean falling, boolean portal) |
STATIC_OVL void | final_level () |
void | schedule_goto (d_level *tolev, boolean at_stairs, boolean falling, int portal_flag, const char *pre_msg, const char *post_msg) |
void | deferred_goto () |
boolean | revive_corpse (struct obj *corpse) |
void | revive_mon (genericptr_t arg, long timeout) |
int | donull () |
STATIC_PTR int | wipeoff () |
int | dowipe () |
void | set_wounded_legs (long side, int timex) |
void | heal_legs () |
Variables | |
static NEARDATA const char | drop_types [] |
static NEARDATA boolean | at_ladder = FALSE |
d_level | save_dlevel = {0, 0} |
static char * | dfr_pre_msg = 0 |
static char * | dfr_post_msg = 0 |
References Blind, BOULDER, burn_away_slime(), bury_objs(), cansee, d(), DB_FLOOR, DB_UNDER, delfloortrap(), delobj(), distu, docrt(), DRAWBRIDGE_UP, FALSE, Fire_resistance, flags, is_lava(), is_pool(), Is_waterlevel, KILLED_BY, levl, losehp(), newsym(), obfree(), pline(), rn2(), ROOM, flag::soundok, t_at(), the(), TRUE, u, you::uz, flag::verbose, vision_full_recalc, wake_nearto(), waterbody_name(), what, and xname().
Referenced by flooreffects(), melt_ice(), and moverock().
STATIC_OVL int currentlevel_rewrite | ( | ) |
References BUFSZ, close(), COUNT_SAVE, create_levelfile(), delete_levelfile(), ledger_no(), mark_synch, pline(), savelev(), u, and you::uz.
Referenced by goto_level().
void deferred_goto | ( | ) |
References assign_level(), deltrap(), dfr_post_msg, goto_level(), newsym(), on_level(), pline(), t_at(), u, you::utolev, you::utotype, you::ux, you::uy, and you::uz.
Referenced by level_tele(), moveloop(), and movemon().
void doaltarobj | ( | struct obj * | obj ) |
References an(), Blind, COIN_CLASS, doname(), Doname2(), u_conduct::gnostic, Hallucination, hcolor(), NH_AMBER, NH_BLACK, otense(), pline(), u, and you::uconduct.
Referenced by dropx(), and hitfloor().
int doddrop | ( | ) |
References add_valid_menu_class(), drop(), FALSE, flags, ggetobj(), menu_drop(), flag::menu_style, MENU_TRADITIONAL, reset_occupations(), SELL_DELIBERATE, SELL_NORMAL, sellobj_state(), u, and you::ushops.
int dodown | ( | ) |
References obj::age, artifact_has_invprop(), flag::autodig, Can_fall_thru(), monst::data, ELevitation, FALSE, flags, float_down(), floating_above(), goto_hell(), HLevitation, HOLE, I_SPECIAL, invent, is_animal, is_pick, Is_stronghold, LADDER, LEVITATION, Levitation, levl, locomotion(), Monnam(), monstermoves, next_level(), next_to_u(), obj::nobj, flag::nopick, obj::oartifact, on_level(), PIT, pline(), rnz(), SPIKED_PIT, sstairs, surface(), stairway::sx, stairway::sy, t_at(), TIMEOUT, TRAPDOOR, TRUE, TT_PIT, u, you::uevent, stairway::up, use_pick_axe2(), you::ustuck, you::utrap, you::utraptype, uwep, you::ux, you::uy, you::uz, valley_level, W_ARTI, xdnladder, xdnstair, ydnladder, ydnstair, yn, and youmonst.
int dodrop | ( | ) |
References drop(), getobj(), invent, reset_occupations(), SELL_DELIBERATE, SELL_NORMAL, sellobj_state(), SIZE, u, you::ugold, and you::ushops.
int donull | ( | ) |
int doup | ( | ) |
References monst::data, FALSE, is_animal, LADDER, ledger_no(), levl, Monnam(), near_capacity(), next_to_u(), pline(), prev_level(), SLT_ENCUMBER, sstairs, STAIRS, stairway::sx, stairway::sy, TRUE, u, stairway::up, you::ustuck, you::ux, you::uy, you::uz, xupladder, xupstair, yn, yupladder, and yupstair.
Referenced by peffects().
int dowipe | ( | ) |
References body_part(), FACE, NEARDATA, set_occupation(), Sprintf, u, you::ucreamed, and wipeoff().
STATIC_PTR int drop | ( | struct obj * | obj ) |
References flag::botl, BUFSZ, can_reach_floor(), canletgo(), COIN_CLASS, doname(), dropx(), flags, freeinv(), hitfloor(), invent, IS_ALTAR, IS_SINK, levl, mbodypart(), MEAT_RING, mon_nam(), RING_CLASS, s_suffix(), setuqwep(), setuswapwep(), setuwep(), STOMACH, Strcpy, TRUE, u, uquiver, you::ustuck, uswapwep, uwep, you::ux, you::uy, flag::verbose, welded(), and weldmsg().
Referenced by doddrop(), dodrop(), and menu_drop().
void dropx | ( | struct obj * | obj ) |
References flag::botl, COIN_CLASS, doaltarobj(), dropy(), FALSE, flags, freeinv(), invent, IS_ALTAR, levl, ship_object(), u, you::ux, and you::uy.
Referenced by bagotricks(), break_armor(), cpostfx(), dig(), doloot(), dowrite(), drop(), drop_uswapwep(), drop_weapon(), emergency_disrobe(), glibr(), hold_another_object(), litter(), start_tin(), use_grease(), use_towel(), use_trap(), and use_whip().
void dropy | ( | struct obj * | obj ) |
References Blind, CORPSE, monst::data, delobj(), drop_ball(), FALSE, flooreffects(), grow_up(), is_animal, Levitation, map_object(), monst::mhp, monst::mhpmax, minstapetrify(), mons, mpickobj(), newcham(), newsym(), place_object(), PM_GREEN_SLIME, PM_NURSE, PM_WRAITH, polyfodder, sellobj(), setuqwep(), setuswapwep(), setuwep(), stackobj(), touch_petrifies, TRUE, u, uball, uquiver, you::ustuck, uswapwep, uwep, you::ux, and you::uy.
Referenced by damageum(), doeat(), dog_eat(), doloot(), dosacrifice(), dosit(), dropx(), hitfloor(), hold_another_object(), m_throw(), punish(), throwit(), toss_up(), touchfood(), and use_misc().
STATIC_DCL int FDECL | ( | menu_drop | , |
(int) | |||
) |
STATIC_PTR int FDECL | ( | drop | , |
(struct obj *) | |||
) |
STATIC_OVL void final_level | ( | ) |
References AMULET_OF_REFLECTION, bless(), Blind, Conflict, create_mplayers(), d(), DEADMONSTER, enexto(), FALSE, fmon, m_dowear(), monst::m_lev, monst::mhp, monst::mhpmax, mk_roamer(), mksobj(), mongets(), mons, mpickobj(), monst::mtame, monst::nmon, otmp, obj::otyp, pline(), PM_ANGEL, align::record, reset_hostility(), rn1, rnd(), select_hwep(), SHIELD_OF_REFLECTION, SILVER_SABER, obj::spe, TRUE, align::type, u, you::ualign, you::ux, you::uy, W_ARMS, which_armor(), nhcoord::x, and nhcoord::y.
Referenced by goto_level().
References AMULET_OF_YENDOR, Blind, BOULDER, boulder_hits_pool(), bury_objs(), cansee, monst::data, deltrap(), distu, FALSE, fire_damage(), flags, Flying, Hallucination, hmon(), HOLE, is_lava(), is_pool(), is_whirly, Levitation, losehp(), m_at, map_background(), newsym(), NO_KILLER_PREFIX, obfree(), OBJ_FREE, otense(), Passes_walls, passes_walls, PIT, pline(), rloco(), rnd(), rnf(), flag::soundok, SPIKED_PIT, surface(), t_at(), The(), the_your, throws_rocks, TRAPDOOR, TRUE, TT_PIT, u, Underwater, you::utrap, you::utraptype, you::ux, you::uy, vtense(), water_damage(), weight(), xname(), and youmonst.
Referenced by destroy_drawbridge(), do_earthquake(), drop_boulder_on_monster(), drop_boulder_on_player(), drop_throw(), dropy(), fill_pit(), fire_damage(), kick_object(), launch_obj(), mdrop_obj(), monstone(), moverock(), newcham(), placebc(), possibly_unwield(), rloco(), throw_gold(), and throwit().
References ALL_MAP, assign_level(), astral_level, at_dgn_entrance(), ballfall(), bclose(), Blind, prop::blocked, bufon(), BUFSZ, carried, check_special_room(), close(), com_pager(), Conflict, currentlevel_rewrite(), monst::data, DEADMONSTER, delete_levelfile(), depth(), mvitals::died, display_nhwindow, distu, dndest, d_level::dnum, docrt(), done(), drag_down(), dunlev(), dunlev_reached, dunlevs_in_dungeon(), you::dz, earth_level, enexto(), ESCAPED, FALSE, fill_pit(), final_level(), linfo::flags, flags, flush_screen(), Flying, fmon, forget_map(), forget_traps(), FORGOTTEN, FREE_SAVE, freeinv(), ftrap, Fumbling, getlev(), hackpid, Hallucination, dest_area::hx, dest_area::hy, impact_drop(), In_endgame, In_hell(), in_out_region(), In_quest(), In_V_tower(), In_W_tower(), index, Inhell, initrack(), Is_juiblex_level, Is_knox, Is_rogue_level, Is_stronghold, IS_STWALL, Is_valley, Is_waterlevel, keepdogs(), kill_genocided_monsters(), KILLED_BY, killer, ledger_no(), level_info, Levitation, levl, LFILE_EXISTS, losedogs(), losehp(), LR_DOWNTELE, LR_UPTELE, dest_area::lx, dest_area::ly, m_at, MAGIC_PORTAL, maxledgerno(), minit(), mklev(), mnexto(), movebubbles(), near_capacity(), dest_area::nhx, dest_area::nhy, dest_area::nlx, dest_area::nly, monst::nmon, NON_PM, trap::ntrap, obj_delivery(), occupied(), ok_to_quest(), on_level(), On_W_tower_level(), onquest(), open_levelfile(), pickup(), place_lregion(), placebc(), pline(), PM_ARCHEOLOGIST, PM_CROESUS, PM_ROGUE, Punished, qstart_level, quest_status, recalc_mapseen(), recbranch_mapseen(), reset_rndmonst(), resurrect(), rloc(), rn1, rn2(), rnd(), Role_if, run_timers(), savelev(), seetrap(), selftouch(), setuqwep(), setuswapwep(), setuwep(), Sprintf, STEED, TELEPAT, TRICKED, TRUE, trap::tx, trap::ty, u, u_on_dnstairs(), u_on_newpos(), u_on_sstairs(), u_on_upstairs(), uarmh, uball, you::uevent, you::uhave, UNENCUMBERED, unplacebc(), update_mlstmv(), updest, you::uprops, uquiver, you::ustuck, uswapwep, you::uswldtim, you::utolev, you::utotype, you::utrap, uwep, you::ux, you::uy, you::uz, you::uz0, vision_full_recalc, vision_recalc(), vision_reset(), VISITED, WIN_MESSAGE, WRITE_SAVE, nhcoord::x, trap::x, xdnladder, xupladder, nhcoord::y, trap::y, ydnladder, yname(), youmonst, and yupladder.
Referenced by arti_invoke(), deferred_goto(), digactualhole(), goto_hell(), next_level(), peffects(), and prev_level().
void heal_legs | ( | ) |
References A_DEX, ATEMP, body_part(), BOTH_SIDES, flag::botl, encumber_msg(), EWounded_legs, flags, HWounded_legs, LEG, makeplural(), u, and Wounded_legs.
Referenced by dosit(), fix_worst_trouble(), fpostfx(), nh_timeout(), and peffects().
STATIC_OVL int menu_drop | ( | int | retry ) |
References any::a_obj, add_valid_menu_class(), ALL_FINISHED, ALL_TYPES, ALL_TYPES_SELECTED, allow_all(), allow_category(), assigninvlet(), BUC_BLESSED, BUC_CURSED, BUC_UNCURSED, BUC_UNKNOWN, CHOOSE_ALL, COIN_CLASS, obj::corpsenm, mi::count, dealloc_obj(), drop(), FALSE, flags, ggetobj(), invent, INVORDER_SORT, mi::item, LOADSTONE, MENU_COMBINATION, MENU_FULL, flag::menu_style, mkgoldobj(), obj::nobj, obj::oclass, otmp, obj::otyp, PICK_ANY, obj::quan, query_category(), query_objlist(), splitobj(), TRUE, u, you::ugold, UNIDENTIFIED_TYPES, UNPAID_TYPES, update_inventory, USE_INVLET, and welded().
Referenced by doddrop().
STATIC_DCL void NDECL | ( | final_level | ) |
STATIC_DCL int NDECL | ( | currentlevel_rewrite | ) |
STATIC_PTR int NDECL | ( | wipeoff | ) |
void obj_no_longer_held | ( | struct obj * | obj ) |
References obj::cobj, CRYSKNIFE, Is_container, obj::nobj, rn2(), STATUE, and WORM_TOOTH.
Referenced by add_to_container(), drop_upon_death(), mon_arrive(), monstone(), place_object(), throwit(), and use_whip().
References Adjmonnam(), Amonnam(), an(), Blind, BUFSZ, cansee, canseemon, corpse_xname(), monst::data, eos(), FALSE, get_container_location(), if(), locomotion(), monst::mhp, monst::mhpmax, mon_nam(), Monnam(), monst::mx, monst::my, OBJ_CONTAINED, OBJ_FLOOR, OBJ_INVENT, OBJ_MINVENT, pline(), revive(), s_suffix(), Something, Sprintf, Strcpy, TRUE, uwep, where, and xname().
Referenced by cprefx(), pickup_object(), revive_mon(), revive_nasty(), rloco(), and use_tinning_kit().
void revive_mon | ( | genericptr_t | arg, |
long | timeout | ||
) |
References obj::age, obj::corpsenm, is_rider, mons, monstermoves, revive_corpse(), ROT_CORPSE, start_timer(), and TIMER_OBJECT.
void schedule_goto | ( | d_level * | tolev, |
boolean | at_stairs, | ||
boolean | falling, | ||
int | portal_flag, | ||
const char * | pre_msg, | ||
const char * | post_msg | ||
) |
References assign_level(), dfr_post_msg, u, you::utolev, and you::utotype.
Referenced by domagicportal(), expulsion(), fall_through(), and level_tele().
void set_wounded_legs | ( | long | side, |
int | timex | ||
) |
References A_DEX, ATEMP, flag::botl, encumber_msg(), EWounded_legs, flags, HWounded_legs, TIMEOUT, and Wounded_legs.
Referenced by dig(), dokick(), dotrap(), drop_ball(), hitmu(), and jump().
STATIC_PTR int wipeoff | ( | ) |
References Blinded, body_part(), FACE, make_blinded(), pline(), TRUE, u, and you::ucreamed.
Referenced by dowipe().
char * dfr_post_msg = 0 |
Referenced by deferred_goto(), and schedule_goto().
char* dfr_pre_msg = 0 [static] |
NEARDATA const char drop_types[] [static] |
{ ALLOW_COUNT, COIN_CLASS, ALL_CLASSES, 0 }
d_level save_dlevel = {0, 0} |
Referenced by no_bones_level().