diff --git a/arogue5/options.c b/arogue5/options.c index f7e4c99..4a08ee0 100644 --- a/arogue5/options.c +++ b/arogue5/options.c @@ -28,8 +28,8 @@ struct optstruct { char *o_name; /* option name */ char *o_prompt; /* prompt for interactive entry */ - int *o_opt; /* pointer to thing to set */ - int (*o_putfunc)(); /* function to print value */ + void *o_opt; /* pointer to thing to set */ + void (*o_putfunc)(); /* function to print value */ int (*o_getfunc)(); /* function to get value interactively */ }; @@ -39,38 +39,38 @@ int get_ro(WINDOW *win, int oy, int ox); int get_restr(char *optstr, WINDOW *win); int get_score(char *optstr, WINDOW *win); void put_abil(int *ability, WINDOW *win); -void get_abil(int *abil, WINDOW *win); +int get_abil(int *abil, WINDOW *win); void put_quest(int *quest, WINDOW *win); -void get_quest(int *quest, WINDOW *win); +int get_quest(int *quest, WINDOW *win); void put_bool(bool *b, WINDOW *win); int get_bool(bool *bp, WINDOW *win); void put_str(char *str, WINDOW *win); OPTION optlist[] = { {"terse", "Terse output: ", - (int *) &terse, put_bool, get_bool }, + (void *) &terse, put_bool, get_bool }, {"flush", "Flush typeahead during battle: ", - (int *) &fight_flush, put_bool, get_bool }, + (void *) &fight_flush, put_bool, get_bool }, {"jump", "Show position only at end of run: ", - (int *) &jump, put_bool, get_bool }, + (void *) &jump, put_bool, get_bool }, {"step", "Do inventories one line at a time: ", - (int *) &slow_invent, put_bool, get_bool }, + (void *) &slow_invent, put_bool, get_bool }, {"askme", "Ask me about unidentified things: ", - (int *) &askme, put_bool, get_bool }, + (void *) &askme, put_bool, get_bool }, {"pickup", "Pick things up automatically: ", - (int *) &auto_pickup, put_bool, get_bool }, + (void *) &auto_pickup, put_bool, get_bool }, {"name", "Name: ", - (int *) whoami, put_str, get_restr }, + (void *) whoami, put_str, get_restr }, {"fruit", "Fruit: ", - (int *) fruit, put_str, get_str }, + (void *) fruit, put_str, get_str }, {"file", "Save file: ", - (int *) file_name, put_str, get_restr }, + (void *) file_name, put_str, get_restr }, {"score", "Score file: ", - (int *) score_file, put_str, get_score }, + (void *) score_file, put_str, get_score }, {"class", "Character class: ", - (int *)&char_type, put_abil, get_abil }, + (void *)&char_type, put_abil, get_abil }, {"quest", "Quest item: ", - (int *) &quest_item, put_quest, get_quest } + (void *) &quest_item, put_quest, get_quest } }; /* For fields that would be restricted if use_savedir is set. */ @@ -111,27 +111,27 @@ int get_score(char *optstr, WINDOW *win) /* * The ability field is read-only */ -void +int get_abil(int *abil, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); put_abil(abil, win); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* * The quest field is read-only */ -void +int get_quest(int *quest, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); waddstr(win, rel_magic[*quest].mi_name); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* @@ -416,18 +416,19 @@ parse_opts(char *str) if (op->o_putfunc != put_abil) strcpy((char *)op->o_opt, value); - else if (*op->o_opt == -1) { /* Only init ability once */ + else if (*(int *)op->o_opt == -1) { + /* Only init ability once */ register int len = strlen(value); if (isupper(value[0])) value[0] = tolower(value[0]); if (EQSTR(value, "fighter", len)) - *op->o_opt = C_FIGHTER; + *(int *)op->o_opt = C_FIGHTER; else if (EQSTR(value, "magic", min(len, 5))) - *op->o_opt = C_MAGICIAN; + *(int *)op->o_opt = C_MAGICIAN; else if (EQSTR(value, "cleric", len)) - *op->o_opt = C_CLERIC; + *(int *)op->o_opt = C_CLERIC; else if (EQSTR(value, "thief", len)) - *op->o_opt = C_THIEF; + *(int *)op->o_opt = C_THIEF; } } break; diff --git a/arogue7/options.c b/arogue7/options.c index 488da76..5ae0bcf 100644 --- a/arogue7/options.c +++ b/arogue7/options.c @@ -33,8 +33,8 @@ struct optstruct { char *o_name; /* option name */ char *o_prompt; /* prompt for interactive entry */ - int *o_opt; /* pointer to thing to set */ - int (*o_putfunc)(); /* function to print value */ + void *o_opt; /* pointer to thing to set */ + void (*o_putfunc)(); /* function to print value */ int (*o_getfunc)(); /* function to get value interactively */ }; @@ -45,9 +45,9 @@ int get_bool(bool *bp, WINDOW *win); void put_str(char *str, WINDOW *win); int get_str(char *opt, WINDOW *win); void put_abil(int *ability, WINDOW *win); -void get_abil(int *abil, WINDOW *win); +int get_abil(int *abil, WINDOW *win); void put_quest(int *quest, WINDOW *win); -void get_quest(int *quest, WINDOW *win); +int get_quest(int *quest, WINDOW *win); int get_ro(WINDOW *win, int oy, int ox); int get_str_prot(char *opt, WINDOW *win); @@ -56,55 +56,55 @@ bool allowchange(OPTION *op); OPTION optlist[] = { {"terse", "Terse output: ", - (int *) &terse, put_bool, get_bool }, + (void *) &terse, put_bool, get_bool }, {"flush", "Flush typeahead during battle: ", - (int *) &fight_flush, put_bool, get_bool }, + (void *) &fight_flush, put_bool, get_bool }, {"jump", "Show position only at end of run: ", - (int *) &jump, put_bool, get_bool }, + (void *) &jump, put_bool, get_bool }, {"step", "Do inventories one line at a time: ", - (int *) &slow_invent, put_bool, get_bool }, + (void *) &slow_invent, put_bool, get_bool }, {"askme", "Ask me about unidentified things: ", - (int *) &askme, put_bool, get_bool }, + (void *) &askme, put_bool, get_bool }, {"pickup", "Pick things up automatically: ", - (int *) &auto_pickup, put_bool, get_bool }, + (void *) &auto_pickup, put_bool, get_bool }, {"overlay", "Overlay menu: ", - (int *) &menu_overlay, put_bool, get_bool }, + (void *) &menu_overlay, put_bool, get_bool }, {"name", "Name: ", - (int *) whoami, put_str, get_str_prot }, + (void *) whoami, put_str, get_str_prot }, {"file", "Save file: ", - (int *) file_name, put_str, get_str_prot }, + (void *) file_name, put_str, get_str_prot }, {"score", "Score file: ", - (int *) score_file, put_str, get_score }, + (void *) score_file, put_str, get_score }, {"class", "Character class: ", - (int *)&char_type, put_abil, get_abil }, + (void *)&char_type, put_abil, get_abil }, {"quest", "Quest item: ", - (int *) &quest_item, put_quest, get_quest } + (void *) &quest_item, put_quest, get_quest } }; /* * The ability field is read-only */ -void +int get_abil(int *abil, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); put_abil(abil, win); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* * The quest field is read-only */ -void +int get_quest(int *quest, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); waddstr(win, rel_magic[*quest].mi_name); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* @@ -387,14 +387,15 @@ parse_opts(char *str) strcpy((char *)op->o_opt, (char *)value); } - else if (*op->o_opt == -1) { /* Only init ability once */ + else if (*(int *)op->o_opt == -1) { + /* Only init ability once */ register int len = strlen(value); register int i; if (isupper(value[0])) value[0] = tolower(value[0]); for (i=0; io_opt = i; + *(int *)op->o_opt = i; break; } } diff --git a/rogue4/options.c b/rogue4/options.c index a4bc062..f14b70f 100644 --- a/rogue4/options.c +++ b/rogue4/options.c @@ -27,8 +27,8 @@ struct optstruct { char *o_name; /* option name */ char *o_prompt; /* prompt for interactive entry */ - int *o_opt; /* pointer to thing to set */ - int (*o_putfunc)(); /* function to print value */ + void *o_opt; /* pointer to thing to set */ + void (*o_putfunc)(); /* function to print value */ int (*o_getfunc)(); /* function to get value interactively */ }; @@ -43,23 +43,23 @@ int get_str(char *opt, WINDOW *win); OPTION optlist[] = { {"terse", "Terse output: ", - (int *) &terse, put_bool, get_bool }, + (void *) &terse, put_bool, get_bool }, {"flush", "Flush typeahead during battle: ", - (int *) &fight_flush, put_bool, get_bool }, + (void *) &fight_flush, put_bool, get_bool }, {"jump", "Show position only at end of run: ", - (int *) &jump, put_bool, get_bool }, + (void *) &jump, put_bool, get_bool }, {"step", "Do inventories one line at a time: ", - (int *) &slow_invent, put_bool, get_bool }, + (void *) &slow_invent, put_bool, get_bool }, {"askme", "Ask me about unidentified things: ", - (int *) &askme, put_bool, get_bool }, + (void *) &askme, put_bool, get_bool }, {"passgo", "Follow turnings in passageways: ", - (int *) &passgo, put_bool, get_bool }, + (void *) &passgo, put_bool, get_bool }, {"name", "Name: ", - (int *) whoami, put_str, get_str }, + (void *) whoami, put_str, get_str }, {"fruit", "Fruit: ", - (int *) fruit, put_str, get_str }, + (void *) fruit, put_str, get_str }, {"file", "Save file: ", - (int *) file_name, put_str, get_str } + (void *) file_name, put_str, get_str } }; /* diff --git a/xrogue/options.c b/xrogue/options.c index 91497e9..1e743e5 100644 --- a/xrogue/options.c +++ b/xrogue/options.c @@ -34,8 +34,8 @@ struct optstruct { char *o_name; /* option name */ char *o_prompt; /* prompt for interactive entry */ - int *o_opt; /* pointer to thing to set */ - int (*o_putfunc)(); /* function to print value */ + void *o_opt; /* pointer to thing to set */ + void (*o_putfunc)(); /* function to print value */ int (*o_getfunc)(); /* function to get value interactively */ }; @@ -47,83 +47,83 @@ int get_bool(bool *bp, WINDOW *win); void put_str(char *str, WINDOW *win); int get_str(char *opt, WINDOW *win); void put_abil(int *ability, WINDOW *win); -void get_abil(int *abil, WINDOW *win); +int get_abil(int *abil, WINDOW *win); void put_quest(int *quest, WINDOW *win); -void get_quest(int *quest, WINDOW *win); -void get_default(bool *bp, WINDOW *win); +int get_quest(int *quest, WINDOW *win); +int get_default(bool *bp, WINDOW *win); int get_str_prot(char *opt, WINDOW *win); int get_score(char *opt, WINDOW *win); bool allowchange(OPTION *op); OPTION optlist[] = { {"terse", "Terse output: ", - (int *) &terse, put_bool, get_bool }, + (void *) &terse, put_bool, get_bool }, {"flush", "Flush typeahead during battle: ", - (int *) &fight_flush, put_bool, get_bool }, + (void *) &fight_flush, put_bool, get_bool }, {"jump", "Show position only at end of run: ", - (int *) &jump, put_bool, get_bool }, + (void *) &jump, put_bool, get_bool }, {"step", "Do inventories one line at a time: ", - (int *) &slow_invent, put_bool, get_bool }, + (void *) &slow_invent, put_bool, get_bool }, {"askme", "Ask me about unidentified things: ", - (int *) &askme, put_bool, get_bool }, + (void *) &askme, put_bool, get_bool }, {"pickup", "Pick things up automatically: ", - (int *) &auto_pickup, put_bool, get_bool }, + (void *) &auto_pickup, put_bool, get_bool }, {"overlay", "Overlay menu: ", - (int *) &menu_overlay, put_bool, get_bool }, + (void *) &menu_overlay, put_bool, get_bool }, {"name", "Name: ", - (int *) whoami, put_str, get_str_prot }, + (void *) whoami, put_str, get_str_prot }, {"file", "Save file: ", - (int *) file_name, put_str, get_str_prot }, + (void *) file_name, put_str, get_str_prot }, {"score", "Score file: ", - (int *) score_file, put_str, get_score }, + (void *) score_file, put_str, get_score }, {"class", "Character type: ", - (int *) &char_type, put_abil, get_abil }, + (void *) &char_type, put_abil, get_abil }, {"quest", "Quest item: ", - (int *) &quest_item, put_quest, get_quest }, + (void *) &quest_item, put_quest, get_quest }, {"default", "Default Attributes: ", - (int *) &def_attr, put_bool, get_default } + (void *) &def_attr, put_bool, get_default } }; /* * The default attribute field is read-only */ -void +int get_default(bool *bp, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); put_bool(bp, win); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* * The ability (class) field is read-only */ -void +int get_abil(int *abil, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); put_abil(abil, win); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* * The quest field is read-only */ -void +int get_quest(int *quest, WINDOW *win) { register int oy, ox; getyx(win, oy, ox); waddstr(win, rel_magic[*quest].mi_name); - get_ro(win, oy, ox); + return get_ro(win, oy, ox); } /* @@ -411,13 +411,14 @@ parse_opts(char *str) strcpy((char *)op->o_opt, value); } - else if (*op->o_opt == -1) { /* Only init ability once */ + else if (*(int *)op->o_opt == -1) { + /* Only init ability once */ register int len = strlen(value); register int i; for (i=0; io_opt = i; + *(int *)op->o_opt = i; break; } }