/* File: externs.h */ /* Purpose: extern declarations (variables and functions) */ /* * Note that some files have their own header files * (z-virt.h, z-util.h, z-form.h, term.h, random.h) */ /* * Automatically generated "variable" declarations */ /* tables.c */ extern s16b ddd[9]; extern s16b ddx[10]; extern s16b ddy[10]; extern s16b ddx_ddd[9]; extern s16b ddy_ddd[9]; extern char hexsym[16]; extern byte adj_val_min[]; extern byte adj_val_max[]; extern byte adj_mag_study[]; extern byte adj_mag_mana[]; extern byte adj_mag_fail[]; extern byte adj_mag_stat[]; extern byte adj_chr_gold[]; extern byte adj_int_dev[]; extern byte adj_wis_sav[]; extern byte adj_dex_dis[]; extern byte adj_int_dis[]; extern byte adj_dex_ta[]; extern byte adj_str_td[]; extern byte adj_dex_th[]; extern byte adj_str_th[]; extern byte adj_str_wgt[]; extern byte adj_str_hold[]; extern byte adj_str_dig[]; extern byte adj_str_blow[]; extern byte adj_dex_blow[]; extern byte adj_dex_safe[]; extern byte adj_con_fix[]; extern byte adj_con_mhp[]; extern byte blows_table[12][12]; extern owner_type owners[MAX_STORES][MAX_OWNERS]; extern byte extract_energy[200]; extern s32b player_exp[PY_MAX_LEVEL]; extern player_race race_info[MAX_RACES]; extern player_class class_info[MAX_CLASS]; extern player_magic magic_info[MAX_CLASS]; extern u32b spell_flags[2][9][2]; extern cptr spell_names[2][64]; extern byte chest_traps[64]; extern cptr player_title[MAX_CLASS][PY_MAX_LEVEL/5]; extern cptr color_names[16]; extern cptr sound_names[SOUND_MAX]; extern cptr stat_names[6]; extern cptr stat_names_reduced[6]; extern option_type options[]; /* variable.c */ extern cptr copyright[5]; extern byte version_major; extern byte version_minor; extern byte version_patch; extern byte version_type; extern byte sf_major; extern byte sf_minor; extern byte sf_patch; extern byte sf_extra; extern u32b sf_xtra; extern u32b sf_when; extern u16b sf_lives; extern u16b sf_saves; extern bool arg_wizard; extern bool arg_fiddle; extern bool character_generated; extern bool character_dungeon; extern bool character_loaded; extern bool character_saved; extern bool character_icky; extern bool character_xtra; extern u32b seed_flavor; extern u32b seed_town; extern s16b command_cmd; extern s16b command_arg; extern s16b command_rep; extern s16b command_dir; extern s16b command_see; extern s16b command_gap; extern s16b command_wrk; extern s16b command_new; extern s16b energy_use; extern s16b choose_default; extern bool create_up_stair; extern bool create_down_stair; extern bool msg_flag; extern bool alive; extern bool death; extern s16b running; extern s16b resting; extern s16b cur_hgt; extern s16b cur_wid; extern s16b dun_level; extern s16b num_repro; extern s16b object_level; extern s16b monster_level; extern s32b turn; extern s32b old_turn; extern bool wizard; extern bool to_be_wizard; extern bool can_be_wizard; extern u16b total_winner; extern u16b panic_save; extern u16b noscore; extern s16b signal_count; extern bool inkey_base; extern bool inkey_xtra; extern bool inkey_scan; extern bool inkey_flag; extern s16b coin_type; extern bool opening_chest; extern bool use_graphics; extern bool use_sound; extern bool scan_monsters; extern bool scan_objects; extern s16b total_weight; extern s16b inven_nxt; extern s16b inven_cnt; extern s16b equip_cnt; extern s16b i_nxt; extern s16b m_nxt; extern s16b i_max; extern s16b m_max; extern s16b i_top; extern s16b m_top; extern bool rogue_like_commands; extern bool quick_messages; extern bool other_query_flag; extern bool carry_query_flag; extern bool always_pickup; extern bool always_throw; extern bool always_repeat; extern bool use_old_target; extern bool show_equip_label; extern bool depth_in_feet; extern bool use_color; extern bool compress_savefile; extern bool hilite_player; extern bool ring_bell; extern bool find_ignore_stairs; extern bool find_ignore_doors; extern bool find_cut; extern bool find_examine; extern bool disturb_near; extern bool disturb_move; extern bool disturb_enter; extern bool disturb_leave; extern bool disturb_panel; extern bool disturb_other; extern bool flush_disturb; extern bool flush_failure; extern bool flush_command; extern bool fresh_before; extern bool fresh_after; extern bool fresh_message; extern bool alert_hitpoint; extern bool alert_failure; extern bool view_yellow_lite; extern bool view_bright_lite; extern bool view_perma_grids; extern bool view_torch_grids; extern bool flow_by_sound; extern bool flow_by_smell; extern bool track_follow; extern bool track_target; extern bool no_haggle_flag; extern bool shuffle_owners; extern bool show_inven_weight; extern bool show_equip_weight; extern bool show_store_weight; extern bool stack_allow_items; extern bool stack_allow_wands; extern bool stack_force_notes; extern bool stack_force_costs; extern bool view_reduce_lite; extern bool view_reduce_view; extern bool optimize_display; extern bool optimize_various; extern bool autoscum; extern bool generate_artifacts; extern bool dungeon_align; extern bool dungeon_stair; extern bool show_health_bar; extern bool color_browse; extern bool smart_learn; extern bool smart_cheat; extern bool recall_show_desc; extern bool recall_show_kill; extern bool use_mirror_debug; extern bool use_mirror_around; extern bool use_mirror_recent; extern bool use_mirror_normal; extern bool use_mirror_choose; extern bool use_mirror_spells; extern bool use_recall_recent; extern bool use_choice_normal; extern bool use_choice_choose; extern bool use_choice_spells; extern bool show_choose_info; extern bool show_choose_prompt; extern bool show_choose_weight; extern bool show_choose_label; extern bool cheat_peek; extern bool cheat_hear; extern bool cheat_room; extern bool cheat_xtra; extern bool cheat_know; extern bool cheat_live; extern s16b hitpoint_warn; extern s16b delay_spd; extern term *term_screen; extern term *term_mirror; extern term *term_recall; extern term *term_choice; extern s16b feeling; extern s16b rating; extern bool good_item_flag; extern bool new_level_flag; extern bool closing_flag; extern s16b max_panel_rows, max_panel_cols; extern s16b panel_row, panel_col; extern s16b panel_row_min, panel_row_max; extern s16b panel_col_min, panel_col_max; extern s16b panel_col_prt, panel_row_prt; extern s16b target_who; extern s16b target_col; extern s16b target_row; extern s16b health_who; extern s16b recent_idx; extern int player_uid; extern int player_euid; extern int player_egid; extern char player_name[32]; extern char player_base[32]; extern char died_from[80]; extern char history[4][60]; extern char savefile[1024]; extern s16b lite_n; extern byte lite_y[LITE_MAX]; extern byte lite_x[LITE_MAX]; extern s16b view_n; extern byte view_y[VIEW_MAX]; extern byte view_x[VIEW_MAX]; extern s16b temp_n; extern byte temp_y[TEMP_MAX]; extern byte temp_x[TEMP_MAX]; extern s16b macro__num; extern cptr *macro__pat; extern cptr *macro__act; extern bool *macro__cmd; extern char *macro__buf; extern s16b quark__num; extern cptr *quark__str; extern u16b message__next; extern u16b message__last; extern u16b message__head; extern u16b message__tail; extern u16b *message__ptr; extern char *message__buf; extern s16b i_fast[MAX_I_IDX]; extern s16b m_fast[MAX_M_IDX]; extern cave_type *cave[MAX_HGT]; extern object_type *i_list; extern monster_type *m_list; extern quest q_list[MAX_Q_IDX]; extern store_type *store; extern object_type *inventory; extern s16b alloc_kind_size; extern s16b *alloc_kind_index; extern kind_entry *alloc_kind_table; extern s16b alloc_race_size; extern s16b *alloc_race_index; extern race_entry *alloc_race_table; extern byte tval_to_attr[128]; extern char tval_to_char[128]; extern byte keymap_cmds[128]; extern byte keymap_dirs[128]; extern byte color_table[256][4]; extern player_type *p_ptr; extern player_race *rp_ptr; extern player_class *cp_ptr; extern player_magic *mp_ptr; extern bool spell_learned[64]; extern bool spell_worked[64]; extern bool spell_forgotten[64]; extern byte spell_order[64]; extern s16b player_hp[PY_MAX_LEVEL]; extern header *v_head; extern vault_type *v_info; extern char *v_name; extern char *v_text; extern header *f_head; extern feature_type *f_info; extern char *f_name; extern char *f_text; extern header *k_head; extern object_kind *k_info; extern char *k_name; extern char *k_text; extern header *a_head; extern artifact_type *a_info; extern char *a_name; extern char *a_text; extern header *e_head; extern ego_item_type *e_info; extern char *e_name; extern char *e_text; extern header *r_head; extern monster_race *r_info; extern char *r_name; extern char *r_text; extern cptr ANGBAND_SYS; extern cptr ANGBAND_DIR; extern cptr ANGBAND_DIR_APEX; extern cptr ANGBAND_DIR_BONE; extern cptr ANGBAND_DIR_DATA; extern cptr ANGBAND_DIR_EDIT; extern cptr ANGBAND_DIR_FILE; extern cptr ANGBAND_DIR_HELP; extern cptr ANGBAND_DIR_INFO; extern cptr ANGBAND_DIR_SAVE; extern cptr ANGBAND_DIR_USER; extern cptr ANGBAND_DIR_XTRA; extern bool item_tester_full; extern byte item_tester_tval; extern bool (*item_tester_hook)(object_type *i_ptr); extern bool (*ang_sort_comp)(vptr u, vptr v, int a, int b); extern void (*ang_sort_swap)(vptr u, vptr v, int a, int b); extern bool (*get_mon_num_hook)(int r_idx); extern bool (*get_obj_num_hook)(int k_idx); /* * Automatically generated "function declarations" */ /* birth.c */ extern void player_birth(void); /* cave.c */ extern bool valid_grid(int y, int x); extern int distance(int y1, int x1, int y2, int x2); extern bool los(int y1, int x1, int y2, int x2); extern bool player_can_see_bold(int y, int x); extern bool no_lite(void); extern void map_info(int y, int x, byte *ap, char *cp); extern void move_cursor_relative(int row, int col); extern void print_rel(char c, byte a, int y, int x); extern void note_spot(int y, int x); extern void lite_spot(int y, int x); extern void prt_map(void); extern void display_map(void); extern void do_cmd_view_map(void); extern void forget_lite(void); extern void update_lite(void); extern void forget_view(void); extern void update_view(void); extern void forget_flow(void); extern void update_flow(void); extern void map_area(void); extern void wiz_lite(void); extern void forget_map(void); extern void mmove2(int *y, int *x, int y1, int x1, int y2, int x2); extern bool projectable(int y1, int x1, int y2, int x2); extern void scatter(int *yp, int *xp, int y, int x, int d, int m); extern void health_track(int m_idx); extern void recent_track(int r_idx); extern void disturb(int stop_search, int flush_output); extern bool is_quest(int level); /* cmd1.c */ extern bool test_hit_fire(int chance, int ac, int vis); extern bool test_hit_norm(int chance, int ac, int vis); extern s16b critical_shot(int weight, int plus, int dam); extern s16b critical_norm(int weight, int plus, int dam, monster_type *m_ptr); extern s16b tot_dam_aux(object_type *i_ptr, int tdam, monster_type *m_ptr); extern void search(void); extern void carry(int pickup); extern void py_attack(int y, int x); extern void move_player(int dir, int do_pickup); extern void run_step(int dir); /* cmd2.c */ extern void do_cmd_go_up(void); extern void do_cmd_go_down(void); extern void do_cmd_search(void); extern void do_cmd_toggle_search(void); extern void do_cmd_open(void); extern void do_cmd_close(void); extern void do_cmd_tunnel(void); extern void do_cmd_disarm(void); extern void do_cmd_bash(void); extern void do_cmd_walk(int pickup); extern void do_cmd_stay(int pickup); extern void do_cmd_run(void); extern void do_cmd_rest(void); extern void do_cmd_fire(void); extern void do_cmd_throw(void); /* cmd3.c */ extern void do_cmd_inven(void); extern void do_cmd_equip(void); extern void do_cmd_wield(void); extern void do_cmd_takeoff(void); extern void do_cmd_drop(void); extern void do_cmd_destroy(void); extern void do_cmd_observe(void); extern void do_cmd_uninscribe(void); extern void do_cmd_inscribe(void); extern void do_cmd_refill(void); extern void do_cmd_toggle_choose(void); extern void do_cmd_target(void); extern void do_cmd_look(void); extern void do_cmd_locate(void); extern void do_cmd_query_symbol(void); /* cmd4.c */ extern void do_cmd_redraw(void); extern void do_cmd_change_name(void); extern void do_cmd_message_one(void); extern void do_cmd_messages(void); extern void do_cmd_options(void); extern void do_cmd_pref(void); extern void do_cmd_macros(void); extern void do_cmd_visuals(void); extern void do_cmd_colors(void); extern void do_cmd_note(void); extern void do_cmd_version(void); extern void do_cmd_feeling(void); extern void do_cmd_load_screen(void); extern void do_cmd_save_screen(void); extern void do_cmd_check_artifacts(void); extern void do_cmd_check_uniques(void); /* cmd5.c */ extern void do_cmd_browse(void); extern void do_cmd_study(void); extern void do_cmd_cast(void); extern void do_cmd_pray(void); /* cmd6.c */ extern void do_cmd_eat_food(void); extern void do_cmd_quaff_potion(void); extern void do_cmd_read_scroll(void); extern void do_cmd_aim_wand(void); extern void do_cmd_use_staff(void); extern void do_cmd_zap_rod(void); extern void do_cmd_activate(void); /* dungeon.c */ extern void play_game(bool new_game); /* files.c */ extern void safe_setuid_drop(void); extern void safe_setuid_grab(void); extern s16b tokenize(char *buf, s16b num, char **tokens); extern void display_player(bool do_hist, bool char_dump); extern errr file_character(cptr name, bool full); extern errr process_pref_file_aux(char *buf); extern errr process_pref_file(cptr name); extern errr check_time_init(void); extern errr check_load_init(void); extern errr check_time(void); extern errr check_load(void); extern void read_times(void); extern void show_news(void); extern errr show_file(cptr name, cptr what); extern void do_cmd_help(cptr name); extern void process_player_name(bool sf); extern void get_name(void); extern void do_cmd_suicide(void); extern void do_cmd_save_game(void); extern long total_points(void); extern void display_scores(int from, int to); extern void close_game(void); extern void exit_game_panic(void); extern void signals_ignore_tstp(void); extern void signals_handle_tstp(void); extern void signals_init(void); /* generate.c */ extern void generate_cave(void); /* init-txt.c */ extern errr init_v_info_txt(FILE *fp, char *buf); extern errr init_f_info_txt(FILE *fp, char *buf); extern errr init_k_info_txt(FILE *fp, char *buf); extern errr init_a_info_txt(FILE *fp, char *buf); extern errr init_e_info_txt(FILE *fp, char *buf); extern errr init_r_info_txt(FILE *fp, char *buf); /* init.c */ extern void init_file_paths(char *path); extern void init_some_arrays(void); extern void init_leftover(void); /* load.c */ extern errr rd_savefile_new(void); /* melee1.c */ /* melee2.c */ extern bool make_attack_normal(int m_idx); extern bool make_attack_spell(int m_idx); extern void process_monsters(void); /* mon-desc.c */ extern void screen_roff(int r_idx); extern void display_roff(int r_idx); /* monster.c */ extern void delete_monster_idx(int i); extern void delete_monster(int y, int x); extern void compact_monsters(int size); extern void wipe_m_list(void); extern s16b m_pop(void); extern s16b get_mon_num(int level); extern void monster_desc(char *desc, monster_type *m_ptr, int mode); extern void lore_do_probe(int m_idx); extern void lore_treasure(int m_idx, int num_item, int num_gold); extern void update_mon(int m_idx, bool dist); extern void update_monsters(bool dist); extern bool place_monster_aux(int y, int x, int r_idx, bool slp, bool grp); extern bool place_monster(int y, int x, bool slp, bool grp); extern bool alloc_monster(int dis, int slp); extern bool summon_specific(int y1, int x1, int lev, int type); extern bool multiply_monster(int m_idx); extern bool monster_saves(int mlev, int plev); /* obj-desc.cpp */ /* object.cpp */ extern void flavor_init(void); extern void reset_visuals(void); extern void object_flags(object_type *i_ptr, u32b *f1, u32b *f2, u32b *f3); extern void object_desc(char *buf, object_type *i_ptr, int pref, int mode); extern void object_desc_store(char *buf, object_type *i_ptr, int pref, int mode); extern bool identify_fully_aux(object_type *i_ptr); extern s16b index_to_label(int i); extern s16b label_to_inven(int c); extern s16b label_to_equip(int c); extern s16b wield_slot(object_type *i_ptr); extern cptr mention_use(int i); extern cptr describe_use(int i); extern void inven_item_charges(int item); extern void inven_item_describe(int item); extern void inven_item_increase(int item, int num); extern void inven_item_optimize(int item); extern void floor_item_charges(int item); extern void floor_item_describe(int item); extern void floor_item_increase(int item, int num); extern void floor_item_optimize(int item); extern bool inven_carry_okay(object_type *i_ptr); extern s16b inven_carry(object_type *i_ptr); extern bool item_tester_okay(object_type *i_ptr); extern void display_inven(void); extern void display_equip(void); extern void show_inven(void); extern void show_equip(void); extern bool get_item(int *cp, cptr pmt, bool equip, bool inven, bool floor); extern void delete_object_idx(int i); extern void delete_object(int y, int x); extern void compact_objects(int size); extern void wipe_i_list(void); extern s16b i_pop(void); extern s16b get_obj_num(int level); extern bool object_similar(object_type *i_ptr, object_type *j_ptr); extern void object_absorb(object_type *i_ptr, object_type *j_ptr); extern s16b lookup_kind(int tval, int sval); extern void invwipe(object_type *i_ptr); extern void apply_magic(object_type *i_ptr, int lev, bool okay, bool good, bool great); extern void place_object(int y, int x, bool good, bool great); extern void acquirement(int y1, int x1, int num, bool great); extern void place_trap(int y, int x); extern void place_gold(int y, int x); extern void process_objects(void); extern void drop_near(object_type *i_ptr, int chance, int y, int x); extern void pick_trap(int y, int x); extern cptr item_activation(object_type *i_ptr); extern void combine_pack(void); extern void reorder_pack(void); /* save.cpp */ extern bool save_player(void); extern bool load_player(void); /* spells1.cpp */ extern s16b poly_r_idx(int r_idx); extern void teleport_away(int m_idx, int dis); extern void teleport_player(int dis); extern void teleport_player_to(int ny, int nx); extern void teleport_player_level(void); extern void take_hit(int damage, cptr kb_str); extern void take_hit_no_invuln(int damage, cptr kb_str); extern void acid_dam(int dam, cptr kb_str); extern void elec_dam(int dam, cptr kb_str); extern void fire_dam(int dam, cptr kb_str); extern void cold_dam(int dam, cptr kb_str); extern bool inc_stat(int stat); extern bool dec_stat(int stat, int amount, int permanent); extern bool res_stat(int stat); extern bool apply_disenchant(int mode); extern bool project(int who, int rad, int y, int x, int dam, int typ, int flg); /* spells2.cpp */ extern bool hp_player(int num); extern void warding_glyph(void); extern bool do_dec_stat(int stat); extern bool do_res_stat(int stat); extern bool do_inc_stat(int stat); extern void identify_pack(void); extern void message_pain(int m_idx, int dam); extern bool remove_curse(void); extern bool remove_all_curse(void); extern bool restore_level(void); extern void self_knowledge(void); extern bool lose_all_info(void); extern bool detect_treasure(void); extern bool detect_magic(void); extern bool detect_invisible(void); extern bool detect_evil(void); extern bool detect_monsters(void); extern bool detection(void); extern bool detect_object(void); extern bool detect_trap(void); extern bool detect_sdoor(void); extern void stair_creation(void); extern bool enchant(object_type *i_ptr, int n, int eflag); extern bool enchant_spell(int num_hit, int num_dam, int num_ac); extern bool ident_spell(void); extern bool identify_fully(void); extern bool recharge(int num); extern bool speed_monsters(void); extern bool slow_monsters(void); extern bool sleep_monsters(void); extern void aggravate_monsters(int who); extern bool genocide(void); extern bool mass_genocide(void); extern bool probing(void); extern bool banish_evil(int dist); extern bool dispel_evil(int dam); extern bool dispel_undead(int dam); extern bool dispel_monsters(int dam); extern bool turn_undead(void); extern void destroy_area(int y1, int x1, int r, bool full); extern void earthquake(int cy, int cx, int r); extern void lite_room(int y1, int x1); extern void unlite_room(int y1, int x1); extern bool lite_area(int dam, int rad); extern bool unlite_area(int dam, int rad); extern bool fire_ball(int typ, int dir, int dam, int rad); extern bool fire_bolt(int typ, int dir, int dam); extern bool fire_beam(int typ, int dir, int dam); extern bool fire_bolt_or_beam(int prob, int typ, int dir, int dam); extern bool lite_line(int dir); extern bool drain_life(int dir, int dam); extern bool wall_to_mud(int dir); extern bool destroy_door(int dir); extern bool disarm_trap(int dir); extern bool heal_monster(int dir); extern bool speed_monster(int dir); extern bool slow_monster(int dir); extern bool sleep_monster(int dir); extern bool confuse_monster(int dir, int plev); extern bool fear_monster(int dir, int plev); extern bool poly_monster(int dir); extern bool clone_monster(int dir); extern bool teleport_monster(int dir); extern bool door_creation(void); extern bool trap_creation(void); extern bool destroy_doors_touch(void); extern bool sleep_monsters_touch(void); /* store.c */ extern void do_cmd_store(void); extern void store_shuffle(void); extern void store_maint(void); extern void store_init(void); /* util.c */ extern "C" void delay(unsigned t); extern errr path_parse(char *buf, int max, cptr file); extern errr path_temp(char *buf, int max); extern FILE *my_fopen(cptr file, cptr mode); extern errr my_fgets(FILE *fff, char *buf, huge n); extern errr my_fputs(FILE *fff, cptr buf, huge n); extern errr my_fclose(FILE *fff); extern errr fd_kill(cptr file); extern errr fd_move(cptr file, cptr what); extern errr fd_copy(cptr file, cptr what); extern int fd_make(cptr file, int mode); extern int fd_open(cptr file, int flags); extern errr fd_lock(int fd, int what); extern errr fd_seek(int fd, huge n); extern errr fd_chop(int fd, huge n); extern errr fd_read(int fd, char *buf, huge n); extern errr fd_write(int fd, cptr buf, huge n); extern errr fd_close(int fd); extern void flush(void); extern void bell(void); extern void game_sound(int num); extern void move_cursor(int row, int col); extern void text_to_ascii(char *buf, cptr str); extern void ascii_to_text(char *buf, cptr str); extern void keymap_init(void); extern void macro_add(cptr pat, cptr act, bool cmd_flag); extern char inkey(void); extern cptr quark_str(s16b num); extern s16b quark_add(cptr str); extern s16b message_num(void); extern cptr message_str(s16b age); extern void message_add(cptr msg); extern void msg_print(cptr msg); extern void msg_format(cptr fmt, ...); extern void clear_screen(void); extern void clear_from(int row); extern void c_put_str(byte attr, cptr str, int row, int col); extern void put_str(cptr str, int row, int col); extern void prt(cptr str, int row, int col); extern void c_prt(byte attr, cptr str, int row, int col); extern bool askfor_aux(char *buf, int len); extern bool get_string(cptr prompt, char *buf, int len); extern bool get_check(cptr prompt); extern bool get_com(cptr prompt, char *command); extern s16b get_quantity(cptr prompt, int max); extern void pause_line(int row); extern void request_command(void); extern bool is_a_vowel(int ch); /* xtra1.c */ extern void cnv_stat(int val, char *out_val); extern s16b modify_stat_value(int value, int amount); extern void notice_stuff(void); extern void update_stuff(void); extern void redraw_stuff(void); extern void handle_stuff(void); /* xtra2.c */ extern bool set_blind(int v); extern bool set_confused(int v); extern bool set_poisoned(int v); extern bool set_afraid(int v); extern bool set_paralyzed(int v); extern bool set_image(int v); extern bool set_fast(int v); extern bool set_slow(int v); extern bool set_shield(int v); extern bool set_blessed(int v); extern bool set_hero(int v); extern bool set_shero(int v); extern bool set_protevil(int v); extern bool set_invuln(int v); extern bool set_tim_invis(int v); extern bool set_tim_infra(int v); extern bool set_oppose_acid(int v); extern bool set_oppose_elec(int v); extern bool set_oppose_fire(int v); extern bool set_oppose_cold(int v); extern bool set_oppose_pois(int v); extern bool set_stun(int v); extern bool set_cut(int v); extern bool set_food(int v); extern bool add_blind(int v); extern bool add_confused(int v); extern bool add_poisoned(int v); extern void check_experience(void); extern void gain_exp(s32b amount); extern void lose_exp(s32b amount); extern void monster_death(int m_idx); extern bool mon_take_hit(int m_idx, int dam, bool *fear, cptr note); extern void panel_bounds(void); extern void verify_panel(void); extern void ang_sort_aux(vptr u, vptr v, int p, int q); extern void ang_sort(vptr u, vptr v, int n); extern void ang_sort_swap_distance(vptr u, vptr v, int a, int b); extern bool ang_sort_comp_distance(vptr u, vptr v, int a, int b); extern bool target_able(int m_idx); extern bool target_okay(void); extern s16b target_pick(int y1, int x1, int dy, int dx); extern bool target_set(void); extern bool get_aim_dir(int *dp); extern bool get_rep_dir(int *dp); /* * Hack -- conditional (or "bizarre") externs */ #ifdef SET_UID /* util.c */ extern void user_name(char *buf, int id); #endif #ifndef HAS_MEMSET /* util.c */ extern char *memset(char*, int, huge); #endif #ifndef HAS_STRICMP /* util.c */ extern int stricmp(cptr a, cptr b); #endif #ifdef MACINTOSH /* main-mac.c */ /* extern void delay(int x); */ /* extern void main(void); */ #endif #ifdef WINDOWS /* main-win.c */ /* extern void delay(int x); */ /* extern int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, ...); */ #endif #ifdef ACORN /* main-acn.c */ /* extern void delay(int x); */ #endif