Functions for starting and stopping daemons and fuses now expect the type 'void (*func)()'. Only a few functions in XRogue needed to be modified to fit. Determining the type of the argument is left for a later date. Building with GCC5 should now produce less than 200 lines of warnings per game.
247 lines
8.6 KiB
Text
247 lines
8.6 KiB
Text
EXTTHG player;
|
|
EXTWEP weaps[];
|
|
EXTARM armors[];
|
|
EXTMON monsters[], *mtlev[];
|
|
EXTTRAP traps[];
|
|
EXTROOM *oldrp, rooms[];
|
|
EXTCORD delta, stairs, oldpos, rndspot;
|
|
EXTLKL *mlist, *lvl_obj;
|
|
EXTOBJ *cur_armor, *cur_weapon, *cur_ring[];
|
|
EXTMAG r_magic[], s_magic[], ws_magic[], p_magic[];
|
|
EXTMAG things[], a_magic[], w_magic[];
|
|
EXTINT max_hp, quiet, food_left, hungry_state, level, max_level;
|
|
EXTINT foodlev, total, count, demoncnt, fung_hit, ntraps;
|
|
EXTINT lastscore, purse, mpos, seed, dnum, no_food, packvol, playuid;
|
|
EXTINT curprice, trader, group, levcount, levtype, ringfood, playgid;
|
|
EXTINT chkstairs(), notfight();
|
|
EXTINT prntfile();
|
|
EXTBOOL running, nochange, after, inwhgt, isfight, firstmove, nlmove;
|
|
EXTBOOL wizard, waswizard, in_shell, amulet, door_stop, playing, use_savedir;
|
|
EXTBOOL notify, ws_know[], p_know[], s_know[], r_know[], inpool;
|
|
EXTCHAR home[], file_name[], whoami[], fruit[], curpurch[], scorefile[];
|
|
EXTCHAR *r_stones[], *p_colors[], *s_names[], *ws_type[], *ws_made[];
|
|
EXTCHAR *ws_guess[], *s_guess[], *r_guess[], *p_guess[];/*, *unctrl();*/
|
|
EXTCHAR morestr[], prbuf[], huh[];
|
|
EXTCHAR *release, take, runch;
|
|
EXTCHAR retstr[], wizstr[], spacemsg[], illegal[], callit[], starlist[];
|
|
EXTSTAT max_stats, *him;
|
|
extern struct magic_info thnginfo[];
|
|
extern struct real re_stats;
|
|
extern long e_levels[];
|
|
extern struct rod ws_stuff[];
|
|
extern struct sgttyb _tty;
|
|
|
|
extern struct coord nh;
|
|
extern struct delayed_action d_list[MAXDAEMONS];
|
|
extern int between;
|
|
|
|
extern char *rainbow[NCOLORS];
|
|
extern char *sylls[NSYLS];
|
|
extern char *stones[NSTONES];
|
|
extern char *wood[NWOOD];
|
|
extern char *metal[NMETAL];
|
|
|
|
void _attach(struct linked_list **list, struct linked_list *item);
|
|
void _detach(struct linked_list **list, struct linked_list *item);
|
|
void _free_list(struct linked_list **ptr);
|
|
void activity(void);
|
|
int add_dam(struct stats *who);
|
|
void add_haste(bool potion);
|
|
void add_mon(struct room *rm, bool treas);
|
|
bool add_pack(struct linked_list *item, bool silent);
|
|
void add_pass(void);
|
|
void addmsg(char *fmt, ...);
|
|
void aggravate(void);
|
|
int attack(struct thing *mp);
|
|
bool author(void);
|
|
void auto_save(int a);
|
|
int be_trapped(struct coord *tc, struct thing *th);
|
|
void buy_it(void);
|
|
void byebye(int how);
|
|
bool cansee(int y, int x);
|
|
char *charge_str(struct object *obj);
|
|
void check_level(void);
|
|
void chg_abil(int what, int amt, int how);
|
|
void chg_hpt(int howmany, bool alsomax, char what);
|
|
void command(void);
|
|
bool cordok(int y, int x);
|
|
void create_obj(bool fscr);
|
|
void cur_null(struct object *op);
|
|
void dbotline(WINDOW *scr, char *message);
|
|
bool dead_end(char ch);
|
|
void death(char monst);
|
|
void del_pack(struct linked_list *what);
|
|
bool diag_ok(struct coord *sp, struct coord *ep);
|
|
void dip_it(void);
|
|
void discard(struct linked_list *item);
|
|
void displevl(void);
|
|
void dispmax(void);
|
|
void dispmons(void);
|
|
void do_daemons(int flag);
|
|
void do_fuses(void);
|
|
void do_maze(void);
|
|
void do_motion(struct object *obj, int ydelta, int xdelta);
|
|
void do_move(int dy, int dx);
|
|
void do_passages(void);
|
|
void do_post(void);
|
|
void do_rooms(void);
|
|
void do_run(char ch);
|
|
void do_zap(bool gotdir);
|
|
void doctor(int fromfuse);
|
|
void draw_room(struct room *rp);
|
|
int drop(struct linked_list *item);
|
|
bool dropcheck(struct object *op);
|
|
void eat(void);
|
|
int encread(void *starta, unsigned int size, int inf);
|
|
void encwrite(void *starta, unsigned int size, FILE *outf);
|
|
void endit(int a);
|
|
void endmsg(void);
|
|
void extinguish(void (*func)());
|
|
int extras(void);
|
|
void fall(struct linked_list *item, bool pr);
|
|
bool fallpos(struct coord *pos, struct coord *newpos, bool passages);
|
|
void fatal(char *s);
|
|
bool fight(struct coord *mp, struct object *weap, bool thrown);
|
|
struct linked_list *find_mons(int y, int x);
|
|
struct linked_list *find_obj(int y, int x);
|
|
void fix_stick(struct object *cur);
|
|
void fuse(void (*func)(), int arg, int time);
|
|
void game_err(int a);
|
|
void genocide(void);
|
|
bool get_dir(void);
|
|
struct linked_list *get_item(char *purpose, int type);
|
|
int get_str(char *opt, WINDOW *awin);
|
|
int get_worth(struct object *obj);
|
|
int getbless(void);
|
|
int getindex(char what);
|
|
int getpcon(struct stats *who);
|
|
int getpdex(struct stats *who, bool heave);
|
|
int getpwis(struct stats *who);
|
|
void heal_self(int factor, bool updmaxhp);
|
|
bool hit_monster(struct coord *mp, struct object *obj);
|
|
int hitweight(void);
|
|
bool hurt_armor(struct object *obj);
|
|
void idenpack(void);
|
|
char *identify(int what);
|
|
void ignore(void);
|
|
bool illeg_ch(unsigned char ch);
|
|
void init_everything(void);
|
|
void init_ring(struct object *what, bool fromwiz);
|
|
void init_weapon(struct object *weap, int type);
|
|
void initarmor(struct object *obj, int what);
|
|
void initfood(struct object *what);
|
|
char *inv_name(struct object *obj, bool drop);
|
|
bool inventory(struct linked_list *list, int type);
|
|
int itemvol(struct object *wh);
|
|
int itemweight(struct object *wh);
|
|
bool is_current(struct object *obj);
|
|
bool is_magic(struct object *obj);
|
|
bool isatrap(char ch);
|
|
bool isring(int hand, int ring);
|
|
bool iswearing(int ring);
|
|
void killed(struct linked_list *item, bool pr);
|
|
void lengthen(void (*func)(), int xtime);
|
|
void lev_mon(void);
|
|
void light(struct coord *cp);
|
|
void look(bool wakeup);
|
|
bool magring(struct object *what);
|
|
bool makemons(int what);
|
|
int midx(char whichmon);
|
|
void missile(int ydelta, int xdelta);
|
|
void money(void);
|
|
bool monhurt(struct thing *th);
|
|
void msg(char *fmt, ...);
|
|
char *new(int size);
|
|
struct linked_list *new_item(int size);
|
|
void new_level(int ltype);
|
|
struct linked_list *new_monster(char type, struct coord *cp, bool treas);
|
|
struct linked_list *new_thing(bool treas, int type, int which);
|
|
void nohaste(int fromfuse);
|
|
void noteth(int fromfuse);
|
|
void notinvinc(int fromfuse);
|
|
void notregen(int fromfuse);
|
|
void notslow(int fromfuse);
|
|
char npch(char ch);
|
|
char *num(int n1, int n2);
|
|
bool o_off(struct object *what, long bit);
|
|
bool o_on(struct object *what, long bit);
|
|
void option(void);
|
|
char pack_char(struct object *obj);
|
|
void parse_opts(char *str);
|
|
bool passwd(void);
|
|
int pick_one(struct magic_item *mag);
|
|
void pick_up(char ch);
|
|
void picky_inven(void);
|
|
bool pl_off(long what);
|
|
bool pl_on(long what);
|
|
void playit(void);
|
|
bool price_it(void);
|
|
void quaff(void);
|
|
void quit(int a);
|
|
void raise_level(void);
|
|
void rchg_str(int amt);
|
|
void read_scroll(void);
|
|
int readchar(void);
|
|
void remove_monster(struct coord *mp, struct linked_list *item);
|
|
void resoflg(struct object *what, long bit);
|
|
bool restore(char *file, char **envp);
|
|
void restscr(WINDOW *scr);
|
|
bool rf_on(struct room *rm, long bit);
|
|
char *ring_num(struct object *what);
|
|
void ring_off(void);
|
|
void ring_on(void);
|
|
void ringabil(void);
|
|
int ringex(int rtype);
|
|
int rnd(int range);
|
|
char rnd_mon(bool wander, bool baddie);
|
|
struct coord *rnd_pos(struct room *rp);
|
|
int rnd_room(void);
|
|
struct coord *rndmove(struct thing *who);
|
|
int roll(int number, int sides);
|
|
void rollwand(int fromfuse);
|
|
struct room *roomin(struct coord *cp);
|
|
int rs_restore_file(int inf);
|
|
int rs_save_file(FILE *savef);
|
|
void runners(void);
|
|
void runto(struct coord *runner, struct coord *spot);
|
|
void sapem(int fromfuse);
|
|
bool save(int which);
|
|
bool save_game(void);
|
|
bool save_throw(int which, struct thing *tp);
|
|
void score(int amount, int aflag, char monst);
|
|
void sell_it(void);
|
|
void setoflg(struct object *what, long bit);
|
|
void setup(void);
|
|
char show(int y, int x);
|
|
bool showtop(int showname);
|
|
void sight(int fromfuse);
|
|
void start_daemon(void (*func)(), int arg, int type);
|
|
void status(int fromfuse);
|
|
bool step_ok(unsigned char ch);
|
|
void stomach(int fromfuse);
|
|
int str_plus(struct stats *who);
|
|
void strucpy(char *s1, char *s2, int len);
|
|
void swander(int fromfuse);
|
|
bool swing(int at_lvl, int op_arm, int wplus);
|
|
void take_off(void);
|
|
int teleport(struct coord spot, struct thing *th);
|
|
void toss_ring(struct object *what);
|
|
void total_winner(void);
|
|
int totalenc(void);
|
|
char *tr_name(char ch);
|
|
struct trap *trap_at(int y, int x);
|
|
void unconfuse(int fromfuse);
|
|
void unhold(char whichmon);
|
|
void unsee(int fromfuse);
|
|
void updpack(void);
|
|
char *vowelstr(char *str);
|
|
void wait_for(WINDOW *win, char ch);
|
|
struct linked_list *wake_monster(int y, int x);
|
|
void wanderer(void);
|
|
void waste_time(void);
|
|
void wear(void);
|
|
void wghtchk(int fromfuse);
|
|
void whatis(struct linked_list *what);
|
|
void wield(void);
|
|
char winat(int y, int x);
|
|
void writelog(int amount, int aflag, char monst);
|