extern FEAT_IDX feat_glyph;
extern FEAT_IDX feat_explosive_rune;
extern FEAT_IDX feat_mirror;
-extern door_type feat_door[MAX_DOOR_TYPES];
extern FEAT_IDX feat_up_stair;
extern FEAT_IDX feat_down_stair;
extern FEAT_IDX feat_entrance;
extern void apply_default_feat_lighting(TERM_COLOR f_attr[F_LIT_MAX], SYMBOL_CODE f_char[F_LIT_MAX]);
extern void map_info(POSITION y, POSITION x, TERM_COLOR *ap, char *cp, TERM_COLOR *tap, char *tcp);
extern void move_cursor_relative(int row, int col);
-extern void print_rel(char c, byte a, TERM_LEN y, TERM_LEN x);
+extern void print_rel(SYMBOL_CODE c, TERM_COLOR a, TERM_LEN y, TERM_LEN x);
extern void note_spot(POSITION y, POSITION x);
extern void display_dungeon(void);
extern void lite_spot(POSITION y, POSITION x);
extern void do_cmd_run(void);
extern void do_cmd_rest(void);
extern void do_cmd_fire(void);
-extern void do_cmd_fire_aux(INVENTORY_IDX item, object_type *j_ptr);
+extern void exe_fire(INVENTORY_IDX item, object_type *j_ptr);
extern bool do_cmd_throw(int mult, bool boomerang, OBJECT_IDX shuriken);
#ifdef TRAVEL
extern void do_cmd_travel(void);
extern void do_cmd_load_screen(void);
extern void do_cmd_save_screen_html_aux(char *filename, int message);
extern void do_cmd_save_screen(void);
-extern void do_cmd_knowledge_quests_completed(FILE *fff, IDX quest_num[]);
-extern void do_cmd_knowledge_quests_failed(FILE *fff, IDX quest_num[]);
+extern void do_cmd_knowledge_quests_completed(FILE *fff, QUEST_IDX quest_num[]);
+extern void do_cmd_knowledge_quests_failed(FILE *fff, QUEST_IDX quest_num[]);
extern bool ang_sort_comp_quest_num(vptr u, vptr v, int a, int b);
extern void ang_sort_swap_quest_num(vptr u, vptr v, int a, int b);
extern void do_cmd_knowledge(void);
extern void sanity_blast(monster_type *m_ptr, bool necro);
extern void update_monster(MONSTER_IDX m_idx, bool full);
extern void update_monsters(bool full);
-extern bool place_monster_aux(MONSTER_IDX who, POSITION y, POSITION x, MONRACE_IDX r_idx, BIT_FLAGS mode);
-extern bool place_monster(POSITION y, POSITION x, BIT_FLAGS mode);
-extern bool alloc_horde(POSITION y, POSITION x);
-extern bool alloc_guardian(bool def_val);
-extern bool alloc_monster(POSITION dis, BIT_FLAGS mode);
-extern bool summon_specific(MONSTER_IDX who, POSITION y1, POSITION x1, DEPTH lev, int type, BIT_FLAGS mode, SYMBOL_CODE symbol);
-extern bool summon_named_creature (MONSTER_IDX who, POSITION oy, POSITION ox, MONRACE_IDX r_idx, BIT_FLAGS mode);
extern bool multiply_monster(MONSTER_IDX m_idx, bool clone, BIT_FLAGS mode);
extern void update_smart_learn(MONSTER_IDX m_idx, int what);
extern void choose_new_monster(MONSTER_IDX m_idx, bool born, MONRACE_IDX r_idx);
extern bool can_get_item(void);
extern bool get_item(OBJECT_IDX *cp, concptr pmt, concptr str, BIT_FLAGS mode);
extern object_type *choose_object(OBJECT_IDX *idx, concptr q, concptr s, BIT_FLAGS option);
+PERCENTAGE breakage_chance(object_type *o_ptr);
/* object2.c */
extern void excise_object_idx(OBJECT_IDX o_idx);
/* xtra2.c */
extern void check_experience(void);
-extern void complete_quest(QUEST_IDX quest_num);
-extern void check_quest_completion(monster_type *m_ptr);
-extern void check_find_art_quest_completion(object_type *o_ptr);
extern concptr extract_note_dies(MONRACE_IDX r_idx);
extern void monster_death(MONSTER_IDX m_idx, bool drop_item);
-extern bool mon_take_hit(MONSTER_IDX m_idx, HIT_POINT dam, bool *fear, concptr note);
extern void get_screen_size(TERM_LEN *wid_p, TERM_LEN *hgt_p);
extern void panel_bounds_center(void);
extern void resize_map(void);
extern bool get_hack_dir(DIRECTION *dp);
extern bool get_direction(DIRECTION *dp, bool allow_under, bool with_steed);
extern bool get_rep_dir(DIRECTION *dp, bool under);
-extern void gain_level_reward(int chosen_reward);
extern bool tgt_pt(POSITION *x, POSITION *y);
extern void do_poly_wounds(void);
extern void change_race(CHARACTER_IDX new_race, concptr effect_msg);
-extern HIT_POINT mon_damage_mod(monster_type *m_ptr, HIT_POINT dam, bool is_psy_spear);
extern ENERGY bow_energy(OBJECT_SUBTYPE_VALUE sval);
extern int bow_tmul(OBJECT_SUBTYPE_VALUE sval);
extern void display_rumor(bool ex);
extern void do_cmd_gain_hissatsu(void);
extern MULTIPLY mult_hissatsu(MULTIPLY mult, BIT_FLAGS *flgs, monster_type *m_ptr, BIT_FLAGS mode);
-/* mutation.c */
-extern bool gain_random_mutation(int choose_mut);
-extern bool lose_mutation(int choose_mut);
-extern void lose_all_mutations(void);
-extern void dump_mutations(FILE *OutFile);
-extern void do_cmd_knowledge_mutations(void);
-extern int calc_mutant_regenerate_mod(void);
-extern bool mutation_power_aux(int power);
-
/*
* Hack -- conditional (or "bizarre") externs