From 37ac44add61e4547507770017dcb85b53c20acb5 Mon Sep 17 00:00:00 2001 From: Bardur Arantsson Date: Mon, 23 Feb 2015 09:12:01 +0100 Subject: Split util.cc function declarations into separate header files We need one .h file and one .hpp since some of the functions are being called from plain C code. --- src/birth.cc | 2 + src/bldg.cc | 2 + src/cave.cc | 2 + src/cmd1.cc | 2 + src/cmd2.cc | 2 + src/cmd3.cc | 2 + src/cmd4.cc | 2 + src/cmd5.cc | 2 + src/cmd6.cc | 1 + src/cmd7.cc | 2 + src/corrupt.cc | 1 + src/dungeon.cc | 2 + src/externs.h | 79 --------------------------------------- src/files.cc | 2 + src/generate.cc | 1 + src/gods.cc | 2 + src/help.cc | 1 + src/hiscore.cc | 5 ++- src/init1.cc | 2 + src/init2.cc | 2 + src/joke.cc | 1 + src/levels.cc | 2 + src/loadsave.cc | 2 + src/lua_bind.cc | 3 +- src/main-gcu.c | 1 + src/main-gtk2.c | 1 + src/main-sdl.c | 2 + src/main-win.c | 1 + src/main-x11.c | 1 + src/main.c | 1 + src/melee1.cc | 1 + src/melee2.cc | 1 + src/modules.cc | 2 + src/monster1.cc | 2 +- src/monster2.cc | 1 + src/monster3.cc | 2 + src/notes.cc | 3 ++ src/object1.cc | 2 + src/object2.cc | 1 + src/powers.cc | 2 + src/q_betwen.cc | 1 + src/q_bounty.cc | 2 + src/q_dragons.cc | 1 + src/q_eol.cc | 1 + src/q_evil.cc | 1 + src/q_fireprof.cc | 1 + src/q_god.cc | 1 + src/q_haunted.cc | 1 + src/q_hobbit.cc | 1 + src/q_invas.cc | 1 + src/q_library.cc | 2 + src/q_main.cc | 3 ++ src/q_narsil.cc | 2 + src/q_nazgul.cc | 1 + src/q_nirna.cc | 1 + src/q_one.cc | 1 + src/q_poison.cc | 1 + src/q_shroom.cc | 1 + src/q_spider.cc | 1 + src/q_thief.cc | 1 + src/q_thrain.cc | 1 + src/q_troll.cc | 1 + src/q_ultrag.cc | 1 + src/q_wight.cc | 1 + src/q_wolves.cc | 1 + src/randart.cc | 1 + src/skills.cc | 1 + src/spells1.cc | 2 + src/spells2.cc | 2 + src/spells3.cc | 3 +- src/spells4.cc | 2 + src/squelch/automatizer.cc | 1 + src/squelch/condition.cc | 1 + src/squelch/condition_metadata.cc | 2 + src/squelch/rule.cc | 1 + src/squeltch.cc | 2 + src/status.cc | 2 + src/store.cc | 2 + src/traps.cc | 1 + src/util.cc | 7 +--- src/util.h | 21 +++++++++++ src/util.hpp | 68 ++++++++++++++++++++++++++++++++- src/variable.cc | 1 + src/wild.cc | 1 + src/wizard1.cc | 2 + src/wizard2.cc | 2 + src/xtra1.cc | 2 + src/xtra2.cc | 2 + 88 files changed, 215 insertions(+), 92 deletions(-) create mode 100644 src/util.h (limited to 'src') diff --git a/src/birth.cc b/src/birth.cc index fe65ad45..8004a9b6 100644 --- a/src/birth.cc +++ b/src/birth.cc @@ -24,6 +24,8 @@ #include "spells3.hpp" #include "spells5.hpp" #include "store.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/bldg.cc b/src/bldg.cc index 414f1758..95a52498 100644 --- a/src/bldg.cc +++ b/src/bldg.cc @@ -22,6 +22,8 @@ #include "q_bounty.h" #include "spells2.hpp" #include "store.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/cave.cc b/src/cave.cc index fb708d5d..39382cf4 100644 --- a/src/cave.cc +++ b/src/cave.cc @@ -3,6 +3,8 @@ #include "angband.h" #include "q_rand.h" #include "spells1.hpp" +#include "util.hpp" +#include "util.h" #include #include diff --git a/src/cmd1.cc b/src/cmd1.cc index 4dff0df2..503b86d9 100644 --- a/src/cmd1.cc +++ b/src/cmd1.cc @@ -21,6 +21,8 @@ #include "spells2.hpp" #include "spells3.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/cmd2.cc b/src/cmd2.cc index b1504acb..ecf859ba 100644 --- a/src/cmd2.cc +++ b/src/cmd2.cc @@ -19,6 +19,8 @@ #include "spells2.hpp" #include "spells3.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/cmd3.cc b/src/cmd3.cc index 5a41af1e..d12f785a 100644 --- a/src/cmd3.cc +++ b/src/cmd3.cc @@ -14,6 +14,8 @@ #include "quark.h" #include "squeltch.hpp" #include "store.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/cmd4.cc b/src/cmd4.cc index 30d2557b..dbf0b2ef 100644 --- a/src/cmd4.cc +++ b/src/cmd4.cc @@ -14,6 +14,8 @@ #include "notes.hpp" #include "skills.hpp" #include "squeltch.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include diff --git a/src/cmd5.cc b/src/cmd5.cc index 93f29a99..b61231e0 100644 --- a/src/cmd5.cc +++ b/src/cmd5.cc @@ -18,6 +18,8 @@ #include "spells2.hpp" #include "spells4.hpp" #include "spells5.hpp" +#include "util.hpp" +#include "util.h" #include "quark.h" #include "wizard2.hpp" #include "xtra1.hpp" diff --git a/src/cmd6.cc b/src/cmd6.cc index 43033fbe..01a11c95 100644 --- a/src/cmd6.cc +++ b/src/cmd6.cc @@ -23,6 +23,7 @@ #include "spells2.hpp" #include "spells5.hpp" #include "store.hpp" +#include "util.hpp" #include "wizard2.hpp" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/cmd7.cc b/src/cmd7.cc index 4b3e4ec0..7b4272b2 100644 --- a/src/cmd7.cc +++ b/src/cmd7.cc @@ -19,6 +19,8 @@ #include "skills.hpp" #include "spells1.hpp" #include "spells2.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/corrupt.cc b/src/corrupt.cc index f273cdde..c5dd5c51 100644 --- a/src/corrupt.cc +++ b/src/corrupt.cc @@ -1,5 +1,6 @@ #include "angband.h" #include "xtra2.hpp" +#include "util.hpp" #include diff --git a/src/dungeon.cc b/src/dungeon.cc index e52b00e7..287d5f2f 100644 --- a/src/dungeon.cc +++ b/src/dungeon.cc @@ -32,6 +32,8 @@ #include "spells5.hpp" #include "squeltch.hpp" #include "store.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/externs.h b/src/externs.h index 12da39c1..fc336de6 100644 --- a/src/externs.h +++ b/src/externs.h @@ -760,79 +760,6 @@ extern s16b m_bonus(int max, int level); extern void object_gain_level(object_type *o_ptr); extern s32b flag_cost(object_type * o_ptr, int plusses); -/* util.c */ -extern s32b rescale(s32b x, s32b max, s32b new_max); -extern bool_ input_box(cptr text, int y, int x, char *buf, int max); -extern void draw_box(int y, int x, int h, int w); -extern void display_list(int y, int x, int h, int w, cptr title, cptr *list, int max, int begin, int sel, byte sel_color); -extern cptr get_player_race_name(int pr, int ps); -extern cptr get_month_name(int month, bool_ full, bool_ compact); -extern cptr get_day(int day); -extern s32b bst(s32b what, s32b t); -extern errr path_parse(char *buf, int max, cptr file); -extern errr path_temp(char *buf, int max); -extern errr path_build(char *buf, int max, cptr path, cptr file); -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 int fd_make(cptr file, int mode); -extern int fd_open(cptr file, int flags); -extern errr fd_seek(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 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 errr macro_add(cptr pat, cptr act); -extern sint macro_find_exact(cptr pat); -extern char inkey(void); -extern char inkey_scan(void); -extern void display_message(int x, int y, int split, byte color, cptr t); -extern void cmsg_print(byte color, cptr msg); -extern void msg_print(cptr msg); -extern void cmsg_format(byte color, cptr fmt, ...); -extern void msg_format(cptr fmt, ...); -extern void screen_save(void); -extern void screen_load(void); -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 c_prt(byte attr, cptr str, int row, int col); -extern void prt(cptr str, int row, int col); -extern void text_out_to_screen(byte a, cptr str); -extern void text_out_to_file(byte a, cptr str); -extern void text_out(cptr str); -extern void text_out_c(byte a, cptr str); -extern void clear_screen(void); -extern void clear_from(int row); -extern bool_ askfor_aux_complete; -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 s32b get_quantity(cptr prompt, s32b max); -extern void pause_line(int row); -extern char request_command_ignore_keymaps[]; -extern bool_ request_command_inven_mode; -extern void request_command(int shopping); -extern bool_ is_a_vowel(int ch); -extern int get_keymap_dir(char ch); -extern byte count_bits(u32b array); -extern void strlower(char *buf); -extern int test_monster_name(cptr name); -extern int test_mego_name(cptr name); -extern int test_item_name(cptr name); -extern char msg_box(cptr text, int y, int x); -extern timer_type *new_timer(void (*callback)(), s32b delay); -extern int get_keymap_mode(); - /* main.c */ extern bool_ private_check_user_directory(cptr dirpath); @@ -866,12 +793,6 @@ extern tval_desc2 tvals[]; extern void user_name(char *buf, int id); #endif -/* util.c */ -extern void repeat_push(int what); -extern bool_ repeat_pull(int *what); -extern void repeat_check(void); -extern void get_count(int number, int max); - /* script.c */ extern void init_lua_init(void); diff --git a/src/files.cc b/src/files.cc index f4621afd..2d6d22d8 100644 --- a/src/files.cc +++ b/src/files.cc @@ -16,6 +16,8 @@ #include "notes.hpp" #include "skills.hpp" #include "spells2.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include diff --git a/src/generate.cc b/src/generate.cc index bfab3bd1..a750abc6 100644 --- a/src/generate.cc +++ b/src/generate.cc @@ -12,6 +12,7 @@ #include "randart.hpp" #include "spells1.hpp" #include "traps.hpp" +#include "util.hpp" #include #include diff --git a/src/gods.cc b/src/gods.cc index 0c3297ed..83fd3aae 100644 --- a/src/gods.cc +++ b/src/gods.cc @@ -9,6 +9,8 @@ #include "angband.h" #include "skills.hpp" +#include "util.hpp" +#include "util.h" #include "xtra2.hpp" #include diff --git a/src/help.cc b/src/help.cc index b57ce0b3..68c3500c 100644 --- a/src/help.cc +++ b/src/help.cc @@ -12,6 +12,7 @@ #include "angband.h" #include "hooks.h" #include "skills.hpp" +#include "util.hpp" #define DESC_MAX 14 #define TRIGGERED_HELP_MAX 19 diff --git a/src/hiscore.cc b/src/hiscore.cc index 357026da..2f17237f 100644 --- a/src/hiscore.cc +++ b/src/hiscore.cc @@ -1,8 +1,9 @@ #include "hiscore.h" -#include - #include "angband.h" +#include "util.hpp" + +#include int highscore_seek(int highscore_fd, int i) { diff --git a/src/init1.cc b/src/init1.cc index 9af6d44c..f689e940 100644 --- a/src/init1.cc +++ b/src/init1.cc @@ -4,6 +4,8 @@ #include "skills.hpp" #include "spells5.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include diff --git a/src/init2.cc b/src/init2.cc index b6ce8894..16f5d8be 100644 --- a/src/init2.cc +++ b/src/init2.cc @@ -8,6 +8,8 @@ #include "spells3.hpp" #include "squeltch.hpp" #include "tome/make_array.hpp" +#include "util.hpp" +#include "util.h" #include #include diff --git a/src/joke.cc b/src/joke.cc index 273c333a..ab1f070c 100644 --- a/src/joke.cc +++ b/src/joke.cc @@ -1,4 +1,5 @@ #include "angband.h" +#include "util.hpp" static void gen_joke_place_monster(int r_idx) { diff --git a/src/levels.cc b/src/levels.cc index 71148fc5..54c697d0 100644 --- a/src/levels.cc +++ b/src/levels.cc @@ -11,6 +11,8 @@ */ #include "angband.h" +#include "util.hpp" +#include "util.h" /* diff --git a/src/loadsave.cc b/src/loadsave.cc index 4b774fdd..9aff9985 100644 --- a/src/loadsave.cc +++ b/src/loadsave.cc @@ -4,6 +4,8 @@ #include "modules.hpp" #include "quark.h" #include "hooks.h" +#include "util.hpp" +#include "util.h" #include "xtra2.hpp" #include diff --git a/src/lua_bind.cc b/src/lua_bind.cc index 428dfc26..8857c222 100644 --- a/src/lua_bind.cc +++ b/src/lua_bind.cc @@ -14,11 +14,12 @@ #include "angband.h" #include "cmd7.hpp" #include "corrupt.hpp" +#include "range.h" #include "skills.hpp" #include "spell_type.hpp" #include "spells2.hpp" #include "spells5.hpp" -#include "range.h" +#include "util.hpp" #include #include diff --git a/src/main-gcu.c b/src/main-gcu.c index 357b889e..790f02f8 100644 --- a/src/main-gcu.c +++ b/src/main-gcu.c @@ -40,6 +40,7 @@ #include "angband.h" +#include "util.h" #ifdef USE_GCU diff --git a/src/main-gtk2.c b/src/main-gtk2.c index ab3ce50e..6fc85570 100644 --- a/src/main-gtk2.c +++ b/src/main-gtk2.c @@ -31,6 +31,7 @@ */ #include "angband.h" +#include "util.h" /* diff --git a/src/main-sdl.c b/src/main-sdl.c index c9e70b73..03023b86 100644 --- a/src/main-sdl.c +++ b/src/main-sdl.c @@ -26,6 +26,8 @@ #ifdef USE_SDL #include "angband.h" +#include "util.h" + #include #include #include diff --git a/src/main-win.c b/src/main-win.c index 26c55a8d..523e189e 100644 --- a/src/main-win.c +++ b/src/main-win.c @@ -68,6 +68,7 @@ #include "angband.h" +#include "util.h" #ifdef WINDOWS diff --git a/src/main-x11.c b/src/main-x11.c index 41d629cd..cb5eaa10 100644 --- a/src/main-x11.c +++ b/src/main-x11.c @@ -93,6 +93,7 @@ */ #include "angband.h" +#include "util.h" #ifdef USE_X11 diff --git a/src/main.c b/src/main.c index 467c4900..531d0edd 100644 --- a/src/main.c +++ b/src/main.c @@ -9,6 +9,7 @@ */ #include "angband.h" +#include "util.h" diff --git a/src/melee1.cc b/src/melee1.cc index b8a119f5..412c3b8b 100644 --- a/src/melee1.cc +++ b/src/melee1.cc @@ -14,6 +14,7 @@ #include "spells1.hpp" #include "spells2.hpp" #include "store.hpp" +#include "util.hpp" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/melee2.cc b/src/melee2.cc index 860c7f94..acff1f87 100644 --- a/src/melee2.cc +++ b/src/melee2.cc @@ -22,6 +22,7 @@ #include "spells1.hpp" #include "spells2.hpp" #include "traps.hpp" +#include "util.hpp" #include "xtra2.hpp" #include diff --git a/src/modules.cc b/src/modules.cc index 2c6d886c..0e82cbe8 100644 --- a/src/modules.cc +++ b/src/modules.cc @@ -11,6 +11,8 @@ #include "corrupt.hpp" #include "hooks.h" #include "spells2.hpp" +#include "util.hpp" +#include "util.h" #include #include diff --git a/src/monster1.cc b/src/monster1.cc index 3f4a3adc..a0a75a67 100644 --- a/src/monster1.cc +++ b/src/monster1.cc @@ -11,7 +11,7 @@ */ #include "angband.h" - +#include "util.hpp" /* * Pronoun arrays, by gender. diff --git a/src/monster2.cc b/src/monster2.cc index 12cb81af..8582092a 100644 --- a/src/monster2.cc +++ b/src/monster2.cc @@ -12,6 +12,7 @@ #include "randart.hpp" #include "spells1.hpp" #include "spells2.hpp" +#include "util.hpp" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/monster3.cc b/src/monster3.cc index 9e7df503..039bcd94 100644 --- a/src/monster3.cc +++ b/src/monster3.cc @@ -10,6 +10,8 @@ #include "cmd2.hpp" #include "gods.hpp" #include "skills.hpp" +#include "util.hpp" +#include "util.h" #include "xtra2.hpp" /* diff --git a/src/notes.cc b/src/notes.cc index c223808d..46d32513 100644 --- a/src/notes.cc +++ b/src/notes.cc @@ -8,7 +8,10 @@ */ #include "notes.hpp" + #include "angband.h" +#include "util.hpp" +#include "util.h" /* * Show the notes file on the screen diff --git a/src/object1.cc b/src/object1.cc index e33f2193..2f4ddf79 100644 --- a/src/object1.cc +++ b/src/object1.cc @@ -18,6 +18,8 @@ #include "spell_type.hpp" #include "spells5.hpp" #include "squeltch.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include diff --git a/src/object2.cc b/src/object2.cc index 14e56b2d..e4a363c4 100644 --- a/src/object2.cc +++ b/src/object2.cc @@ -17,6 +17,7 @@ #include "spells2.hpp" #include "spells3.hpp" #include "spells5.hpp" +#include "util.hpp" #include "traps.hpp" #include "xtra1.hpp" diff --git a/src/powers.cc b/src/powers.cc index cef654c6..60942f96 100644 --- a/src/powers.cc +++ b/src/powers.cc @@ -18,6 +18,8 @@ #include "spells1.hpp" #include "spells2.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include "xtra2.hpp" /* diff --git a/src/q_betwen.cc b/src/q_betwen.cc index 98d15570..d3c7a798 100644 --- a/src/q_betwen.cc +++ b/src/q_betwen.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_BETWEEN]) diff --git a/src/q_bounty.cc b/src/q_bounty.cc index b7cd150e..80d71a53 100644 --- a/src/q_bounty.cc +++ b/src/q_bounty.cc @@ -1,5 +1,7 @@ #include "q_bounty.h" +#include "util.hpp" + #define cquest (quest[QUEST_BOUNTY]) #define bounty_quest_monster (cquest.data[0]) diff --git a/src/q_dragons.cc b/src/q_dragons.cc index 0ea831b3..d295526d 100644 --- a/src/q_dragons.cc +++ b/src/q_dragons.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_DRAGONS]) diff --git a/src/q_eol.cc b/src/q_eol.cc index fab59960..19cc14e2 100644 --- a/src/q_eol.cc +++ b/src/q_eol.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "hooks.h" #include "traps.hpp" +#include "util.hpp" #include diff --git a/src/q_evil.cc b/src/q_evil.cc index 73972c95..0f14d48b 100644 --- a/src/q_evil.cc +++ b/src/q_evil.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_EVIL]) diff --git a/src/q_fireprof.cc b/src/q_fireprof.cc index 23cb8eba..fa901f8e 100644 --- a/src/q_fireprof.cc +++ b/src/q_fireprof.cc @@ -2,6 +2,7 @@ #include "quark.h" #include "hooks.h" #include "traps.hpp" +#include "util.hpp" #include diff --git a/src/q_god.cc b/src/q_god.cc index 7ce8b8f7..e10a597d 100644 --- a/src/q_god.cc +++ b/src/q_god.cc @@ -1,6 +1,7 @@ #include "q_god.h" #include "quark.h" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_haunted.cc b/src/q_haunted.cc index a78c5e94..a3f96249 100644 --- a/src/q_haunted.cc +++ b/src/q_haunted.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "hooks.h" #include "traps.hpp" +#include "util.hpp" #define cquest (quest[QUEST_HAUNTED]) diff --git a/src/q_hobbit.cc b/src/q_hobbit.cc index 4d8085d5..94bc9ffe 100644 --- a/src/q_hobbit.cc +++ b/src/q_hobbit.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "messages.h" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_invas.cc b/src/q_invas.cc index 0a8c41b8..4bb23c08 100644 --- a/src/q_invas.cc +++ b/src/q_invas.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_INVASION]) diff --git a/src/q_library.cc b/src/q_library.cc index b87b346c..9dab74f4 100644 --- a/src/q_library.cc +++ b/src/q_library.cc @@ -3,6 +3,8 @@ #include "hooks.h" #include "spells3.hpp" #include "spells4.hpp" +#include "util.hpp" +#include "util.h" #include diff --git a/src/q_main.cc b/src/q_main.cc index 73969f1a..866e7ffa 100644 --- a/src/q_main.cc +++ b/src/q_main.cc @@ -1,5 +1,8 @@ #include "q_main.h" + #include "hooks.h" +#include "util.hpp" + #include GENERATE_MONSTER_LOOKUP_FN(get_necromancer, "The Necromancer of Dol Guldur") diff --git a/src/q_narsil.cc b/src/q_narsil.cc index cd0e5b4b..367e674d 100644 --- a/src/q_narsil.cc +++ b/src/q_narsil.cc @@ -1,5 +1,7 @@ #include "q_narsil.h" + #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_NARSIL]) diff --git a/src/q_nazgul.cc b/src/q_nazgul.cc index 9e528ece..51e45ba8 100644 --- a/src/q_nazgul.cc +++ b/src/q_nazgul.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_nirna.cc b/src/q_nirna.cc index 8f5678c5..8ca57d81 100644 --- a/src/q_nirna.cc +++ b/src/q_nirna.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_NIRNAETH]) diff --git a/src/q_one.cc b/src/q_one.cc index 1aab348b..1b6cabe8 100644 --- a/src/q_one.cc +++ b/src/q_one.cc @@ -2,6 +2,7 @@ #include "gods.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_ONE]) diff --git a/src/q_poison.cc b/src/q_poison.cc index 98d29d77..0e40ac91 100644 --- a/src/q_poison.cc +++ b/src/q_poison.cc @@ -4,6 +4,7 @@ #include "quark.h" #include "messages.h" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_POISON]) diff --git a/src/q_shroom.cc b/src/q_shroom.cc index b512484a..15258139 100644 --- a/src/q_shroom.cc +++ b/src/q_shroom.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "messages.h" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_spider.cc b/src/q_spider.cc index dbee4255..81d3006d 100644 --- a/src/q_spider.cc +++ b/src/q_spider.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "gods.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_SPIDER]) diff --git a/src/q_thief.cc b/src/q_thief.cc index eb686a48..417aa4c8 100644 --- a/src/q_thief.cc +++ b/src/q_thief.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "hooks.h" #include "spells2.hpp" +#include "util.hpp" #define cquest (quest[QUEST_THIEVES]) diff --git a/src/q_thrain.cc b/src/q_thrain.cc index 1590304c..c2008450 100644 --- a/src/q_thrain.cc +++ b/src/q_thrain.cc @@ -5,6 +5,7 @@ #include "quark.h" #include "randart.hpp" #include "messages.h" +#include "util.hpp" #include diff --git a/src/q_troll.cc b/src/q_troll.cc index 5d547b1a..036a1ad7 100644 --- a/src/q_troll.cc +++ b/src/q_troll.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_ultrag.cc b/src/q_ultrag.cc index 90f90e6d..53ba4633 100644 --- a/src/q_ultrag.cc +++ b/src/q_ultrag.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_ULTRA_GOOD]) diff --git a/src/q_wight.cc b/src/q_wight.cc index a07c617c..f322c612 100644 --- a/src/q_wight.cc +++ b/src/q_wight.cc @@ -3,6 +3,7 @@ #include "cave.hpp" #include "quark.h" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/q_wolves.cc b/src/q_wolves.cc index 9a68c7ca..2afa173e 100644 --- a/src/q_wolves.cc +++ b/src/q_wolves.cc @@ -2,6 +2,7 @@ #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #define cquest (quest[QUEST_WOLVES]) diff --git a/src/randart.cc b/src/randart.cc index 95bd6b1c..d1306c43 100644 --- a/src/randart.cc +++ b/src/randart.cc @@ -10,6 +10,7 @@ #include "mimic.hpp" #include "quark.h" #include "spells2.hpp" +#include "util.hpp" #include #include diff --git a/src/skills.cc b/src/skills.cc index c3fb3835..1e73ed25 100644 --- a/src/skills.cc +++ b/src/skills.cc @@ -19,6 +19,7 @@ #include "spells4.hpp" #include "traps.hpp" #include "util.hpp" +#include "util.h" #include "xtra2.hpp" #include diff --git a/src/spells1.cc b/src/spells1.cc index 189ad043..cd7ae11b 100644 --- a/src/spells1.cc +++ b/src/spells1.cc @@ -20,6 +20,8 @@ #include "spells5.hpp" #include "squeltch.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/spells2.cc b/src/spells2.cc index ad851251..62fa3818 100644 --- a/src/spells2.cc +++ b/src/spells2.cc @@ -16,6 +16,8 @@ #include "skills.hpp" #include "spells1.hpp" #include "spells3.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/spells3.cc b/src/spells3.cc index 22bede27..0e19a492 100644 --- a/src/spells3.cc +++ b/src/spells3.cc @@ -3,6 +3,7 @@ #include "angband.h" #include "cave.hpp" #include "cmd5.hpp" +#include "mimic.hpp" #include "skills.hpp" #include "spell_type.hpp" #include "spell_idx_list.hpp" @@ -10,7 +11,7 @@ #include "spells2.hpp" #include "spells4.hpp" #include "spells5.hpp" -#include "mimic.hpp" +#include "util.hpp" #include "xtra2.hpp" #include diff --git a/src/spells4.cc b/src/spells4.cc index 4198ead5..a5ec074c 100644 --- a/src/spells4.cc +++ b/src/spells4.cc @@ -9,6 +9,8 @@ #include "spells3.hpp" #include "spells5.hpp" #include "spells6.hpp" +#include "util.hpp" +#include "util.h" #include #include diff --git a/src/squelch/automatizer.cc b/src/squelch/automatizer.cc index 742a0727..0ea04dae 100644 --- a/src/squelch/automatizer.cc +++ b/src/squelch/automatizer.cc @@ -5,6 +5,7 @@ #include "tome/squelch/cursor.hpp" #include "tome/squelch/tree_printer.hpp" #include "angband.h" +#include "util.hpp" namespace squelch { diff --git a/src/squelch/condition.cc b/src/squelch/condition.cc index ea2e9e40..8f839129 100644 --- a/src/squelch/condition.cc +++ b/src/squelch/condition.cc @@ -8,6 +8,7 @@ #include "angband.h" #include "skills.hpp" #include "quark.h" +#include "util.hpp" namespace squelch { diff --git a/src/squelch/condition_metadata.cc b/src/squelch/condition_metadata.cc index 35e1e3f3..7011617a 100644 --- a/src/squelch/condition_metadata.cc +++ b/src/squelch/condition_metadata.cc @@ -6,6 +6,8 @@ #include "tome/squelch/object_status.hpp" #include "angband.h" #include "skills.hpp" +#include "util.hpp" +#include "util.h" namespace squelch { diff --git a/src/squelch/rule.cc b/src/squelch/rule.cc index 060ae257..c538e310 100644 --- a/src/squelch/rule.cc +++ b/src/squelch/rule.cc @@ -7,6 +7,7 @@ #include "../angband.h" #include "../modules.hpp" #include "../quark.h" +#include "../util.hpp" namespace squelch { diff --git a/src/squeltch.cc b/src/squeltch.cc index 1ff2c721..4ed30f9a 100644 --- a/src/squeltch.cc +++ b/src/squeltch.cc @@ -24,6 +24,8 @@ #include "tome/squelch/cursor.hpp" #include "tome/squelch/object_status.hpp" #include "tome/squelch/automatizer.hpp" +#include "util.hpp" +#include "util.h" using squelch::action_type; using squelch::action_mapping; diff --git a/src/status.cc b/src/status.cc index 8c21907b..c8b8621a 100644 --- a/src/status.cc +++ b/src/status.cc @@ -17,6 +17,8 @@ #include "angband.h" #include "xtra1.hpp" +#include "util.hpp" +#include "util.h" static void row_trival(const char*, s16b, u32b, s16b, u32b, int, u32b[INVEN_TOTAL - INVEN_WIELD + 2][7]); static void row_bival(const char*, s16b, u32b, int, u32b[INVEN_TOTAL - INVEN_WIELD + 2][7]); diff --git a/src/store.cc b/src/store.cc index 0e574581..d5e75a97 100644 --- a/src/store.cc +++ b/src/store.cc @@ -18,6 +18,8 @@ #include "spell_type.hpp" #include "skills.hpp" #include "spells5.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include diff --git a/src/traps.cc b/src/traps.cc index a45dfd59..11690667 100644 --- a/src/traps.cc +++ b/src/traps.cc @@ -14,6 +14,7 @@ #include "gods.hpp" #include "spells1.hpp" #include "spells2.hpp" +#include "util.hpp" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/util.cc b/src/util.cc index 55badc07..fbd2020c 100644 --- a/src/util.cc +++ b/src/util.cc @@ -3,6 +3,7 @@ /* Purpose: Angband utilities -BEN- */ #include "util.hpp" +#include "util.h" #include "angband.h" #include "cmd3.hpp" #include "cmd4.hpp" @@ -3677,12 +3678,6 @@ char msg_box(cptr text, int y, int x) return inkey(); } -/* Rescale a value */ -s32b rescale(s32b x, s32b max, s32b new_max) -{ - return (x * new_max) / max; -} - /* * Timers */ diff --git a/src/util.h b/src/util.h new file mode 100644 index 00000000..b1d042ee --- /dev/null +++ b/src/util.h @@ -0,0 +1,21 @@ +#pragma once + +#include "h-basic.h" + +// C linkage required for these functions since main-* code uses them. +#ifdef __cplusplus +extern "C" { +#endif + +extern errr path_parse(char *buf, int max, cptr file); +extern errr path_build(char *buf, int max, cptr path, cptr file); +extern void bell(void); +extern errr macro_add(cptr pat, cptr act); +extern sint macro_find_exact(cptr pat); +extern char inkey(void); +extern void prt(cptr str, int row, int col); +extern void pause_line(int row); + +#ifdef __cplusplus +} // extern "C" +#endif diff --git a/src/util.hpp b/src/util.hpp index a8f892db..e9a93be8 100644 --- a/src/util.hpp +++ b/src/util.hpp @@ -1,8 +1,72 @@ #pragma once -#include "h-basic.h" +#include "angband.h" #include #include -int ask_menu(cptr ask, const std::vector &items); +extern bool_ input_box(cptr text, int y, int x, char *buf, int max); +extern void draw_box(int y, int x, int h, int w); +extern void display_list(int y, int x, int h, int w, cptr title, cptr *list, int max, int begin, int sel, byte sel_color); +extern cptr get_player_race_name(int pr, int ps); +extern cptr get_month_name(int month, bool_ full, bool_ compact); +extern cptr get_day(int day); +extern s32b bst(s32b what, s32b t); +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 int fd_make(cptr file, int mode); +extern int fd_open(cptr file, int flags); +extern errr fd_seek(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 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 char inkey_scan(void); +extern void display_message(int x, int y, int split, byte color, cptr t); +extern void cmsg_print(byte color, cptr msg); +extern void msg_print(cptr msg); +extern void cmsg_format(byte color, cptr fmt, ...); +extern void msg_format(cptr fmt, ...); +extern void screen_save(void); +extern void screen_load(void); +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 c_prt(byte attr, cptr str, int row, int col); +extern void text_out_to_screen(byte a, cptr str); +extern void text_out_to_file(byte a, cptr str); +extern void text_out(cptr str); +extern void text_out_c(byte a, cptr str); +extern void clear_from(int row); +extern int ask_menu(cptr ask, const std::vector &items); +extern bool_ askfor_aux_complete; +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 s32b get_quantity(cptr prompt, s32b max); +extern char request_command_ignore_keymaps[]; +extern bool_ request_command_inven_mode; +extern void request_command(int shopping); +extern bool_ is_a_vowel(int ch); +extern int get_keymap_dir(char ch); +extern byte count_bits(u32b array); +extern void strlower(char *buf); +extern int test_monster_name(cptr name); +extern int test_mego_name(cptr name); +extern int test_item_name(cptr name); +extern char msg_box(cptr text, int y, int x); +extern timer_type *new_timer(void (*callback)(), s32b delay); +extern int get_keymap_mode(); +extern void repeat_push(int what); +extern bool_ repeat_pull(int *what); +extern void repeat_check(void); +extern void get_count(int number, int max); diff --git a/src/variable.cc b/src/variable.cc index 99099379..40254a54 100644 --- a/src/variable.cc +++ b/src/variable.cc @@ -11,6 +11,7 @@ */ #include "angband.h" +#include "util.hpp" int max_macrotrigger = 0; diff --git a/src/wild.cc b/src/wild.cc index c9e64bc7..2fcbb14e 100644 --- a/src/wild.cc +++ b/src/wild.cc @@ -9,6 +9,7 @@ #include "angband.h" #include "cave.hpp" #include "hooks.h" +#include "util.hpp" #include diff --git a/src/wizard1.cc b/src/wizard1.cc index 53312975..ff90ad24 100644 --- a/src/wizard1.cc +++ b/src/wizard1.cc @@ -4,6 +4,8 @@ #include "angband.h" #include "cmd7.hpp" +#include "util.hpp" +#include "util.h" #include diff --git a/src/wizard2.cc b/src/wizard2.cc index 2be1dba6..bde242f1 100644 --- a/src/wizard2.cc +++ b/src/wizard2.cc @@ -18,6 +18,8 @@ #include "spells1.hpp" #include "spells2.hpp" #include "traps.hpp" +#include "util.hpp" +#include "util.h" #include "xtra1.hpp" #include "xtra2.hpp" diff --git a/src/xtra1.cc b/src/xtra1.cc index 25dd90a3..8f0b5a36 100644 --- a/src/xtra1.cc +++ b/src/xtra1.cc @@ -19,6 +19,8 @@ #include "skills.hpp" #include "spells3.hpp" #include "spells6.hpp" +#include "util.hpp" +#include "util.h" #include "xtra2.hpp" #include diff --git a/src/xtra2.cc b/src/xtra2.cc index 2f374fde..cc95b6ca 100644 --- a/src/xtra2.cc +++ b/src/xtra2.cc @@ -20,6 +20,8 @@ #include "skills.hpp" #include "spells1.hpp" #include "spells2.hpp" +#include "util.hpp" +#include "util.h" #include "wizard2.hpp" #include "xtra1.hpp" -- cgit v1.2.3