#include "hack.h"
#include "artifact.h"
#include "edog.h"
Functions | |
STATIC_DCL void | FDECL (urustm,(struct monst *, struct obj *)) |
STATIC_DCL boolean | FDECL (u_slip_free,(struct monst *, struct attack *)) |
STATIC_DCL int | FDECL (passiveum,(struct permonst *, struct monst *, struct attack *)) |
STATIC_DCL boolean | FDECL (diseasemu,(struct permonst *)) |
STATIC_DCL int | FDECL (hitmu,(struct monst *, struct attack *)) |
STATIC_DCL int | FDECL (gulpmu,(struct monst *, struct attack *)) |
STATIC_DCL int | FDECL (explmu,(struct monst *, struct attack *, BOOLEAN_P)) |
STATIC_DCL void | FDECL (missmu,(struct monst *, BOOLEAN_P, struct attack *)) |
STATIC_DCL void | FDECL (mswings,(struct monst *, struct obj *)) |
STATIC_DCL void | FDECL (wildmiss,(struct monst *, struct attack *)) |
STATIC_DCL void | FDECL (hurtarmor,(int)) |
STATIC_DCL void | FDECL (hitmsg,(struct monst *, struct attack *)) |
STATIC_OVL void | hitmsg (struct monst *mtmp, struct attack *mattk) |
STATIC_OVL void | missmu (struct monst *mtmp, boolean nearmiss, struct attack *mattk) |
STATIC_OVL void | mswings (struct monst *mtmp, struct obj *otemp) |
const char * | mpoisons_subj (struct monst *mtmp, struct attack *mattk) |
void | u_slow_down () |
STATIC_OVL void | wildmiss (struct monst *mtmp, struct attack *mattk) |
void | expels (struct monst *mtmp, struct permonst *mdat, boolean message) |
struct attack * | getmattk (struct permonst *mptr, int indx, prev_result, struct attack *alt_attk_buf) |
int | mattacku (struct monst *mtmp) |
STATIC_OVL void | hurtarmor (int attk) |
STATIC_OVL boolean | diseasemu (struct permonst *mdat) |
STATIC_OVL boolean | u_slip_free (struct monst *mtmp, struct attack *mattk) |
int | magic_negation (struct monst *mon) |
STATIC_OVL int | hitmu (struct monst *mtmp, struct attack *mattk) |
STATIC_OVL int | gulpmu (struct monst *mtmp, struct attack *mattk) |
STATIC_OVL int | explmu (struct monst *mtmp, struct attack *mattk, boolean ufound) |
int | gazemu (struct monst *mtmp, struct attack *mattk) |
void | mdamageu (struct monst *mtmp, int n) |
STATIC_OVL void | urustm (struct monst *mon, struct obj *obj) |
int | could_seduce (struct monst *magr, struct monst *mdef, struct attack *mattk) |
STATIC_OVL int | passiveum (struct permonst *olduasmon, struct monst *mtmp, struct attack *mattk) |
struct monst * | cloneu () |
Variables | |
STATIC_VAR NEARDATA struct obj * | otmp |
static int | dieroll |
struct monst* cloneu | ( | ) | [read] |
References flag::botl, christen_monst(), monst::data, flags, G_EXTINCT, initedog(), monst::m_lev, makemon(), you::mh, you::mhmax, monst::mhp, monst::mhpmax, permonst::mlevel, MM_EDOG, mon, monsndx(), NO_MINVENT, plname, u, you::ux, you::uy, and youmonst.
Referenced by hitmu(), and split_mon().
References AD_SSEX, attack::adtyp, monst::data, gender(), Invis, is_animal, permonst::mlet, mons, perceives, PM_INCUBUS, PM_SUCCUBUS, poly_gender(), S_NYMPH, SEDUCE, See_invisible, and youmonst.
Referenced by domonnoise(), hitmm(), hitmsg(), hitmu(), hmonas(), missmm(), missmu(), missum(), steal_it(), and wildmiss().
References A_CON, ACURR, FALSE, make_sick(), rn1, Sick, SICK_NONVOMITABLE, Sick_resistance, and TRUE.
Referenced by gulpmu(), and hitmu().
References AD_COLD, AD_ELEC, AT_ENGL, is_animal, is_whirly, mnexto(), mon_nam(), NATTK, newsym(), pline(), spoteffects(), Strcpy, TRUE, u, um_dist(), unstuck(), you::ux, and you::uy.
Referenced by bhitm(), dospinweb(), gulpmu(), monflee(), newcham(), openit(), tamedog(), and zap_dig().
References A_DEX, ACURR, AD_BLND, AD_COLD, AD_ELEC, AD_FIRE, AD_HALU, AD_STUN, Blind, burn_away_slime(), canseemon, Cold_resistance, d(), monst::data, defends(), dmgtype(), FALSE, Fire_resistance, flags, Half_physical_damage, Hallucination, HHallucination, hitmsg(), levl, make_blinded(), make_hallucinated(), mdamageu(), mon_visible, mondead(), Monnam(), pline(), PM_BLACK_LIGHT, PM_VIOLET_FUNGUS, resists_blnd(), rnd(), Shock_resistance, u, ugolemeffects(), you::ulevel, you::umonnum, uwep, flag::verbose, vision_clears, wake_nearto(), WATER, and youmonst.
Referenced by mattacku().
STATIC_DCL void FDECL | ( | hurtarmor | , |
(int) | |||
) |
References AD_BLND, AD_CONF, AD_FIRE, AD_SLEE, AD_SLOW, AD_STON, AD_STUN, Blind, BOLT_LIM, burn_away_slime(), canseemon, Confusion, couldsee, d(), monst::data, defends(), destroy_item(), distu, done(), fall_asleep(), FALSE, Fire_resistance, Hallucination, HConfusion, HFast, HStun, INTRINSIC, killed(), KILLED_BY, killer, killer_format, m_canseeu, make_blinded(), make_confused(), make_stunned(), mdamageu(), mhis, mon_nam(), mon_reflects(), Monnam(), mons, multi, pline(), PM_MEDUSA, PM_STONE_GOLEM, poly_when_stoned(), polymon(), POTION_CLASS, Reflecting, resists_blnd(), rn2(), rnd(), s_suffix(), SCROLL_CLASS, Sleep_resistance, SPBOOK_CLASS, Stone_resistance, stoned, STONING, stop_occupation(), TIMEOUT, TRUE, u_slow_down(), ureflects(), uwep, vision_clears, and youmonst.
Referenced by m_respond(), and mattacku().
struct attack* getmattk | ( | struct permonst * | mptr, |
int | indx, | ||
prev_result | , | ||
struct attack * | alt_attk_buf | ||
) | [read] |
References AD_DISE, AD_FAMN, AD_PEST, AD_STUN, and attack::adtyp.
Referenced by hmonas(), mattackm(), and mattacku().
References A_STR, Acid_resistance, AD_ACID, AD_BLND, AD_COLD, AD_DGST, AD_DISE, AD_DISN, AD_ELEC, AD_FIRE, AD_PHYS, Amphibious, amphibious, Blind, Blinded, BOULDER, Breathless, BUFSZ, burn_away_slime(), can_blnd(), Cold_resistance, d(), monst::data, destroy_arm(), diseasemu(), Disint_resistance, display_nhwindow, dmgtype(), exercise(), expels(), FALSE, Fire_resistance, flags, flaming, Half_physical_damage, Hallucination, if(), invent, is_animal, make_blinded(), mdamageu(), minstapetrify(), mon_nam(), Monnam(), mons, permonst::msize, MZ_HUGE, newsym(), obj::nobj, number_leashed(), PIT, pline(), PM_FOG_CLOUD, Punished, remove_monster(), reset_occupations(), resists_ston, rn2(), rnd(), shieldeff(), Shock_resistance, Slow_digestion, snuff_lit(), sobj_at(), SPIKED_PIT, stop_occupation(), Strcpy, swallowed(), t_at(), touch_petrifies, TRUE, TT_WEB, u, you::uac, uarm, uarmc, uarms, ugolemeffects(), you::uhp, unleash_all(), unplacebc(), you::ustuck, you::uswldtim, you::utrap, you::utraptype, you::ux, you::uy, flag::verbose, vision_clears, vision_recalc(), vtense(), WIN_MESSAGE, and youmonst.
Referenced by mattacku().
References AT_BITE, AT_BOOM, AT_BUTT, AT_EXPL, AT_KICK, AT_STNG, AT_TENT, AT_TUCH, Blind, could_seduce(), monst::data, Monnam(), pline(), s_suffix(), thick_skinned, and youmonst.
Referenced by explmu(), and hitmu().
References A_CON, A_DEX, A_INT, A_STR, A_WIS, ABASE, Acid_resistance, ACURR, AD_ACID, AD_BLND, AD_COLD, AD_CONF, AD_CORR, AD_CURS, AD_DCAY, AD_DETH, AD_DISE, AD_DISN, AD_DRCO, AD_DRDX, AD_DREN, AD_DRIN, AD_DRLI, AD_DRST, AD_ELEC, AD_ENCH, AD_FAMN, AD_FIRE, AD_HEAD, AD_HEAL, AD_LEGS, AD_PEST, AD_PHYS, AD_PLYS, AD_RUST, AD_SAMU, AD_SEDU, AD_SGLD, AD_SITM, AD_SLEE, AD_SLIM, AD_SLOW, AD_SSEX, AD_STCK, AD_STON, AD_STUN, AD_TLPT, AD_WERE, AD_WRAP, adjattrib(), Adjmonnam(), Amonnam(), amorphous, Amphibious, an(), Antimagic, aobjnam(), artifact_hit(), AT_BITE, AT_HUGS, AT_TUCH, AT_WEAP, attrcurse(), ATTRMIN, Blind, Blind_telepat, Blinded, body_part(), flag::botl, BUFSZ, burn_away_slime(), can_blnd(), canseemon, canspotmon, cloneu(), Cold_resistance, Confusion, CORPSE, obj::corpsenm, could_seduce(), d(), monst::data, defends(), delayed_killer, destroy_arm(), destroy_item(), DIED, discover, diseasemu(), Disint_resistance, dmgtype(), dmgval(), doname(), done(), done_in_by(), drain_en(), drain_item(), Drain_resistance, DROWNING, DUNCE_CAP, DWARVISH_CLOAK, EDOG, exercise(), fall_asleep(), FALSE, flag::female, Fire_resistance, flags, flaming, Flying, forget_levels(), forget_objects(), Free_action, G_UNIQ, Half_physical_damage, has_blood, has_head, have_lizard(), HConfusion, HFast, hides_under, hitmsg(), HStun, hurtarmor(), IRON, IRON_SHOES, is_animal, is_demon, is_fainted(), Is_medusa_level, is_pool(), is_quest_artifact(), is_undead, is_vampire, Is_waterlevel, is_weptool, KILLED_BY, KILLED_BY_AN, killer, killer_format, LEFT_SIDE, LEG, level, Levitation, levl, locomotion(), losexp(), LOW_BOOTS, magic_negation(), make_blinded(), make_confused(), make_sick(), make_stunned(), map_invisible(), mdamageu(), you::mh, you::mhmax, midnight(), min, permonst::mlet, permonst::mlevel, permonst::mname, mon_nam(), monflee(), mongone(), Monnam(), mons, monsndx(), flag::moonphase, morehungry(), moves, mpoisons_subj(), multi, MUMMY_WRAPPING, NECK, NEW_MOON, newsym(), night(), nomovemsg, nomul(), NON_PM, noncorporeal, obj::oartifact, objects, dlevel_t::objects, obj::oclass, on_fire(), oresist_disintegration, obj::otyp, obj::owt, passiveum(), pline(), PM_BLACK_PUDDING, PM_BROWN_PUDDING, PM_CLAY_GOLEM, PM_GREEN_SLIME, PM_GREMLIN, PM_HEALER, PM_IRON_GOLEM, PM_LEATHER_GOLEM, PM_PAPER_GOLEM, PM_PRIEST, PM_ROPE_GOLEM, PM_STONE_GOLEM, PM_STRAW_GOLEM, PM_WOOD_GOLEM, poisoned(), poly_when_stoned(), polymon(), POOL, POTION_CLASS, Protection_from_shape_changers, rehumanize(), RIGHT_SIDE, RING_CLASS, rloc(), rn1, rn2(), rnd(), Role_if, S_EEL, S_HUMAN, S_JABBERWOCK, s_suffix(), SCROLL_CLASS, SEDUCE, set_wounded_legs(), shieldeff(), Shock_resistance, Sick, SICK_ALL, Sleep_resistance, Slimed, some_armor(), something, flag::soundok, SPBOOK_CLASS, Sprintf, steal(), stealamulet(), stealgold(), STEED, sticks(), Stone_resistance, Stoned, stop_occupation(), Strcpy, Swimming, tele(), tele_restrict(), the(), touch_petrifies, TOURIST, TRUE, you::twoweap, type_is_pname, u, u_slip_free(), u_slow_down(), you::uac, uamul, uarm, uarmc, uarmf, uarmg, uarmh, uarms, you::uhave, you::uhp, you::uhpmax, you::ulevel, you::ulycn, you::umonnum, Unblind_telepat, Unchanging, Underwater, Upolyd, urustm(), useup(), you::ustuck, uwep, uwepgone(), you::ux, you::uy, you::uz, flag::verbose, vision_clears, WAND_CLASS, WATER, WEAPON_CLASS, what, wizard, and youmonst.
Referenced by mattacku().
STATIC_OVL void hurtarmor | ( | int | attk ) |
int magic_negation | ( | struct monst * | mon ) |
int mattacku | ( | struct monst * | mtmp ) |
References attack::aatyp, AC_VALUE, an(), ART_DEMONBANE, AT_BITE, AT_BREA, AT_BUTT, AT_CLAW, AT_ENGL, AT_EXPL, AT_GAZE, AT_HUGS, AT_KICK, AT_MAGC, AT_SPIT, AT_STNG, AT_TENT, AT_TUCH, AT_WEAP, bot(), flag::botl, breamu(), BUFSZ, buzzmu(), cansee, canseemon, castmu(), ceiling(), Conflict, d(), monst::data, distu, doname(), EGG, enexto(), explmu(), FALSE, find_mac(), find_offensive(), flags, flush_screen(), gazemu(), getmattk(), GOLD_PIECE, growl_sound(), gulpmu(), hitmu(), hitval(), Invis, is_animal, is_demon, is_hider, is_human, is_metallic, is_orc, is_pool(), Is_rogue_level, is_swimmer, is_were, is_whirly, killed(), level, likes_gold, M_AP_NOTHING, M_AP_OBJECT, monst::m_ap_type, m_monnam(), makeplural(), monst::mappearance, mattackm(), mimic_obj_name(), missmu(), permonst::mlet, MM_AGR_DIED, MM_DEF_DIED, permonst::mname, mon_nam(), MON_WEP, mon_wield_item(), Monnam(), monnear(), mons, monstermoves, msummon(), mswings(), multi, monst::mux, monst::muy, NATTK, NEED_HTH_WEAPON, NEED_WEAPON, new_were(), newsym(), night(), nomovemsg, nomul(), obj::oartifact, dlevel_t::objects, obj::otyp, perceives, pline(), plname, PM_BALROG, PM_INCUBUS, PM_MEDUSA, PM_SUCCUBUS, remove_monster(), rn2(), rnd(), S_EEL, S_MIMIC, S_PIERCER, s_suffix(), sensemon, set_apparxy(), something, Something, flag::soundok, obj::spe, spitmu(), Sprintf, Strcpy, teleds(), thick_skinned, thrwmu(), touch_petrifies, TRUE, u, you::uac, you::umonnum, you::umoved, Underwater, unmul(), Upolyd, upstart(), use_offensive(), you::usleep, you::ustuck, uwep, you::ux, you::uy, you::uz, were_summon(), which_armor(), wildmiss(), worm_move(), WORN_HELMET, nhcoord::x, nhcoord::y, and youmonst.
Referenced by dog_move(), pri_move(), shk_move(), and wormhitu().
void mdamageu | ( | struct monst * | mtmp, |
int | n | ||
) |
References flag::botl, done_in_by(), flags, you::mh, rehumanize(), showdmg(), TRUE, u, you::uhp, and Upolyd.
Referenced by cast_cleric_spell(), cast_wizard_spell(), castmu(), explmu(), gazemu(), gulpmu(), hitmu(), hmonas(), passive(), and spoteffects().
References canspotmon, could_seduce(), flags, map_invisible(), Monnam(), pline(), stop_occupation(), flag::verbose, and youmonst.
Referenced by mattacku().
References attack::aatyp, AT_BITE, AT_GAZE, AT_TUCH, AT_WEAP, MON_WEP, uwep, and youmonst.
Referenced by damageum(), hitmu(), and mdamagem().
References Blind, flags, mhis, mon_visible, Monnam(), objects, PIERCE, pline(), singular(), flag::verbose, and xname().
Referenced by mattacku().
STATIC_OVL int passiveum | ( | struct permonst * | olduasmon, |
struct monst * | mtmp, | ||
struct attack * | mattk | ||
) |
References attack::aatyp, AD_ACID, AD_COLD, AD_ELEC, AD_ENCH, AD_FIRE, AD_PHYS, AD_PLYS, AD_STON, AD_STUN, attack::adtyp, AT_BOOM, AT_NONE, attk_protection(), Blind, d(), monst::data, drain_item(), erode_armor(), erode_obj(), golemeffects(), haseyes, Invis, makeplural(), permonst::mattk, you::mh, you::mhmax, permonst::mlevel, permonst::mname, mon_reflects(), mon_to_stone(), MON_WEP, Monnam(), NATTK, perceives, pline(), PM_FLOATING_EYE, poly_when_stoned(), rehumanize(), resists_acid, resists_cold, resists_elec, resists_fire, resists_ston, rn2(), shieldeff(), split_mon(), stagger(), stoned, TRUE, u, you::umonnum, Upolyd, W_ARMG, xkilled(), and youmonst.
Referenced by hitmu().
References AD_DRIN, AD_WRAP, attack::adtyp, cloak_simple_name(), FALSE, Monnam(), objects, OILSKIN_CLOAK, obj::otyp, pline(), rn2(), TRUE, uarm, uarmc, uarmh, update_inventory, and xname().
Referenced by hitmu().
void u_slow_down | ( | ) |
References A_DEX, exercise(), FALSE, Fast, and HFast.
Referenced by gazemu(), hitmu(), and zapyourself().
References AD_CORR, AD_RUST, aobjnam(), cansee, monst::data, dmgtype(), FALSE, is_corrodeable, is_rustprone, MAX_ERODE, mon_nam(), Monnam(), pline(), rn2(), s_suffix(), TRUE, vis, and youmonst.
Referenced by hitmu().
References AD_SEDU, AD_SSEX, AT_BITE, AT_BUTT, AT_KICK, AT_STNG, cansee, could_seduce(), Displaced, flags, Invis, levl, Monnam(), nolimbs, perceives, pline(), rn2(), Underwater, flag::verbose, WATER, and youmonst.
Referenced by mattacku().
int dieroll [static] |
Referenced by activate_statue_trap(), add_to_container(), add_to_minv(), addinv(), arti_invoke(), artifact_score(), askchain(), autoquiver(), bagotricks(), bhitpile(), bill_box_content(), bill_dummy_object(), bless(), blocked_boulder(), break_armor(), bury_objs(), buzz(), can_twoweapon(), cancel_monst(), carrying(), chat_with_leader(), check_leash(), check_map_spot(), clear_bypasses(), collect_obj_classes(), contained_cost(), contained_gold(), container_impact_dmg(), create_object(), cursed_object_at(), deadbook(), del_sokoprize(), delallobj(), destroy_arm(), destroy_drawbridge(), dig_up_grave(), dip(), dipfountain(), discard_minvent(), display_pickinv(), do_dknown_of(), do_earthquake(), do_takeoff(), doapply(), dochat(), dodrink(), doeat(), doforce(), done(), doorganize(), dopay(), doprinuse(), doprtool(), doputon(), dorecover(), doremring(), dosacrifice(), dospit(), dotakeoff(), dotrap(), dounpaid(), dowear(), drop_upon_death(), drop_weapon(), dropped_container(), eatspecial(), engrave(), fill_pit(), fill_zoo(), final_level(), find_lev_obj(), finish_paybill(), finish_quest(), fire_damage(), fix_worst_trouble(), fixup_special(), flip_level(), floorfood(), forcelock(), get_mleash(), getobj(), glibr(), gulpum(), have_lizard(), help_monster_out(), hits_bars(), in_trouble(), inven_inuse(), its_dead(), kill_eggs(), launch_obj(), litroom(), litter(), look_here(), lookat(), loot_mon(), m_carrying(), m_initinv(), m_initthrow(), m_initweap(), m_move(), m_unleash(), makedog(), maketrap(), makewish(), maybe_tutorial(), mbag_explodes(), mbhit(), mdrop_special_objs(), meatmetal(), meatobj(), melt_ice(), menu_drop(), menu_loot(), merged(), mineralize(), mintrap(), mk_artifact(), mk_mplayer(), mk_named_object(), mk_tt_object(), mkbox_cnts(), mkcorpstat(), mkgoldobj(), mkgrave(), mkinvpos(), mkobj_at(), mkroll_launch(), mksobj(), mksobj_at(), mkundead(), mlifesaver(), mon_adjust_speed(), mon_break_armor(), mon_has_amulet(), mon_has_arti(), mon_has_special(), mongets(), monstone(), movebubbles(), moverock(), mpickstuff(), mv_bubble(), newcham(), next_to_u(), o_in(), o_material(), obj_attach_mid(), obj_delivery(), obj_here(), obj_ice_effects(), obj_timer_checks(), object_detect(), on_ground(), openone(), oselect(), out_container(), pick_lock(), picked_container(), place_object(), pleased(), poly_obj(), polyuse(), price_quote(), priestini(), probe_monster(), readobjnam(), realloc_obj(), recharge(), relobj(), reorder_invent(), repair_damage(), replace_object(), replmon(), reset_oattached_mids(), resetobjs(), restgamestate(), restobjchn(), revive_nasty(), rndcurse(), save_mtraits(), savebones(), scatter(), seffects(), select_hwep(), select_rwep(), set_mimic_sym(), set_trap(), shk_has_leather_jackets(), shkgone(), shkinit(), shop_object(), singular(), slip_or_trip(), sobj_at(), some_armor(), spitmu(), splitobj(), stackobj(), start_tin(), steal(), steal_it(), stealamulet(), stealarm(), stolen_container(), stone_luck(), sub_one_frombill(), subfrombill(), tactics(), take_gold(), take_off(), target_on(), teleport_pet(), throw_obj(), thrwmu(), trim_contents(), tt_oname(), uhave_graystone(), uncurse(), unearth_objs(), unleash_all(), untrap(), unturn_dead(), update_mon_intrinsics(), use_candle(), use_container(), use_defensive(), use_grapple(), use_grease(), use_misc(), use_offensive(), use_trap(), use_whip(), useupf(), water_damage(), water_prayer(), worst_cursed_item(), write_ls(), xkilled(), zap_dig(), and zap_updown().