extern bool abbrev_all; /* Describe obj's all resistances by abbreviation */
extern bool exp_need; /* Show the experience needed for next level */
extern bool ignore_unview; /* Ignore whenever any monster does */
+extern bool show_ammo_detail; /* Show Description of ammo damage */
+extern bool show_ammo_no_crit; /* Show No-crit damage of ammo */
+extern bool show_ammo_crit_ratio; /* Show critical ratio of ammo */
/*** Game-Play Options ***/
extern void glow_deep_lava_and_bldg(void);
/* cmd1.c */
-extern bool test_hit_fire(int chance, int ac, int vis);
+extern bool test_hit_fire(int chance, monster_type *m_ptr, int vis, char* o_name);
extern bool test_hit_norm(int chance, int ac, int vis);
-extern s16b critical_shot(int weight, int plus, int dam);
+extern s16b critical_shot(int weight, int plus_ammo, int plus_bow, int dam);
extern s16b critical_norm(int weight, int plus, int dam, s16b meichuu, int mode);
extern s16b tot_dam_aux(object_type *o_ptr, int tdam, monster_type *m_ptr, int mode, bool thrown);
extern void search(void);
#endif
/* cmd2.c */
+extern void forget_travel_flow(void);
extern bool confirm_leave_level(bool down_stair);
extern void do_cmd_go_up(void);
extern void do_cmd_go_down(void);
extern u32b counts_read(int where);
/* flavor.c */
+extern bool object_is_quest_target(object_type *o_ptr);
extern void get_table_name_aux(char *out_string);
extern void get_table_name(char *out_string);
extern void get_table_sindarin_aux(char *out_string);
extern object_type *choose_warning_item(void);
extern bool process_warning(int xx, int yy);
extern void do_cmd_kaji(bool only_browse);
+extern void torch_flags(object_type *o_ptr, u32b *flgs);
+extern void torch_dice(object_type *o_ptr, int *dd, int *ds);
+extern void torch_lost_fuel(object_type *o_ptr);
/* racial.c */
extern bool gain_magic(void);
extern int set_fire_destroy(object_type *o_ptr);
extern int set_cold_destroy(object_type *o_ptr);
extern int inven_damage(inven_func typ, int perc);
-extern int acid_dam(int dam, cptr kb_str, int monspell);
-extern int elec_dam(int dam, cptr kb_str, int monspell);
-extern int fire_dam(int dam, cptr kb_str, int monspell);
-extern int cold_dam(int dam, cptr kb_str, int monspell);
+extern int acid_dam(int dam, cptr kb_str, int monspell, bool aura);
+extern int elec_dam(int dam, cptr kb_str, int monspell, bool aura);
+extern int fire_dam(int dam, cptr kb_str, int monspell, bool aura);
+extern int cold_dam(int dam, cptr kb_str, int monspell, bool aura);
extern bool rustproof(void);
extern bool curse_armor(void);
extern bool curse_weapon_object(bool force, object_type *o_ptr);
extern bool dimension_door(void);
extern bool mirror_tunnel(void);
extern bool summon_kin_player(int level, int y, int x, u32b mode);
+extern void massacre(int py, int px);
/* store.c */
extern bool combine_and_reorder_home(int store_num);
extern int quest_number(int level);
extern int random_quest_number(int level);
extern bool tele_town(void);
+extern s16b calc_crit_ratio_shot(int weight, int plus_ammo,int plus_bow, int dam);
+extern s16b calc_expect_crit_shot(int weight, int plus_ammo,int plus_bow, int dam);
+extern s16b calc_expect_crit(int weight, int plus, int dam, s16b meichuu, bool dokubari);
/* util.c */
extern errr path_parse(char *buf, int max, cptr file);
extern cptr map_name(void);
extern u32b weight_limit(void);
extern bool buki_motteruka(int i);
+extern bool is_heavy_shoot(object_type *o_ptr);
+extern int bow_tval_ammo(object_type *o_ptr);
+extern s16b calc_num_fire(object_type *o_ptr);
extern void calc_bonuses(void);
extern void notice_stuff(void);
extern void update_stuff(void);
extern s16b empty_hands(bool riding_control);
extern bool heavy_armor(void);
extern void print_monster_list(int x, int y, int max_lines);
+extern void update_playtime(void);
/* effects.c */
/* xtra2.c */
extern void check_experience(void);
+extern void complete_quest(int quest_num);
extern void check_quest_completion(monster_type *m_ptr);
+extern void check_find_art_quest_completion(object_type *o_ptr);
extern cptr extract_note_dies(monster_race *r_ptr);
extern void monster_death(int m_idx, bool drop_item);
extern bool mon_take_hit(int m_idx, int dam, bool *fear, cptr note);
extern void display_rumor(bool ex);
/* mspells1.c */
-extern bool clean_shot(int y1, int x1, int y2, int x2, bool friend);
+extern bool clean_shot(int y1, int x1, int y2, int x2, bool is_friend);
extern bool summon_possible(int y1, int x1);
extern bool raise_possible(monster_type *m_ptr);
extern bool dispel_check(int m_idx);
extern void do_cmd_hissatsu(void);
extern void do_cmd_hissatsu_browse(void);
extern void do_cmd_gain_hissatsu(void);
+extern s16b mult_hissatsu(int mult, u32b *flgs, monster_type *m_ptr, int mode);
/* mutation.c */
extern int count_bits(u32b x);