Advanced Rogue 5: convert to ANSI function declarations.
This still leaves over a thousand lines of warning messages, mostly related to the return types of daemons and fuses.
This commit is contained in:
parent
59f448e92e
commit
f38b2223c8
37 changed files with 977 additions and 733 deletions
|
|
@ -12,6 +12,7 @@
|
||||||
* See the file LICENSE.TXT for full copyright and licensing information.
|
* See the file LICENSE.TXT for full copyright and licensing information.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
|
|
@ -21,8 +22,8 @@
|
||||||
|
|
||||||
coord ch_ret; /* Where chasing takes you */
|
coord ch_ret; /* Where chasing takes you */
|
||||||
|
|
||||||
|
struct linked_list *get_hurl(struct thing *tp);
|
||||||
|
bool straight_shot(int ery, int erx, int eey, int eex, coord *shooting);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -31,8 +32,7 @@ coord ch_ret; /* Where chasing takes you */
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
can_blink(tp)
|
can_blink(struct thing *tp)
|
||||||
register struct thing *tp;
|
|
||||||
{
|
{
|
||||||
register int y, x, index=9;
|
register int y, x, index=9;
|
||||||
coord tryp; /* To hold the coordinates for use in diag_ok */
|
coord tryp; /* To hold the coordinates for use in diag_ok */
|
||||||
|
|
@ -128,8 +128,7 @@ register struct thing *tp;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
coord *
|
coord *
|
||||||
can_shoot(er, ee)
|
can_shoot(coord *er, coord *ee)
|
||||||
register coord *er, *ee;
|
|
||||||
{
|
{
|
||||||
static coord shoot_dir;
|
static coord shoot_dir;
|
||||||
|
|
||||||
|
|
@ -154,13 +153,11 @@ register coord *er, *ee;
|
||||||
* FALSE if we reach the goal.
|
* FALSE if we reach the goal.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
chase(tp, ee, flee, mdead)
|
/* flee: True if destination (ee) is player and monster is running
|
||||||
register struct thing *tp;
|
* away or the player is in a wall and the monster can't get to it
|
||||||
register coord *ee;
|
*/
|
||||||
bool flee; /* True if destination (ee) is player and monster is running away
|
bool
|
||||||
* or the player is in a wall and the monster can't get to it
|
chase(struct thing *tp, coord *ee, bool flee, bool *mdead)
|
||||||
*/
|
|
||||||
bool *mdead;
|
|
||||||
{
|
{
|
||||||
int damage, dist, thisdist, monst_dist = MAXINT;
|
int damage, dist, thisdist, monst_dist = MAXINT;
|
||||||
struct linked_list *weapon;
|
struct linked_list *weapon;
|
||||||
|
|
@ -530,10 +527,10 @@ bool *mdead;
|
||||||
* do_chase:
|
* do_chase:
|
||||||
* Make one thing chase another.
|
* Make one thing chase another.
|
||||||
*/
|
*/
|
||||||
|
/* flee: True if running away or player is inaccessible in wall */
|
||||||
|
|
||||||
do_chase(th, flee)
|
void
|
||||||
register struct thing *th;
|
do_chase(struct thing *th, bool flee)
|
||||||
register bool flee; /* True if running away or player is inaccessible in wall */
|
|
||||||
{
|
{
|
||||||
register struct room *rer, *ree, /* room of chaser, room of chasee */
|
register struct room *rer, *ree, /* room of chaser, room of chasee */
|
||||||
*orig_rer, /* Original room of chaser */
|
*orig_rer, /* Original room of chaser */
|
||||||
|
|
@ -830,8 +827,7 @@ register bool flee; /* True if running away or player is inaccessible in wall */
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
get_hurl(tp)
|
get_hurl(struct thing *tp)
|
||||||
register struct thing *tp;
|
|
||||||
{
|
{
|
||||||
struct linked_list *arrow, *bolt, *rock;
|
struct linked_list *arrow, *bolt, *rock;
|
||||||
register struct linked_list *pitem;
|
register struct linked_list *pitem;
|
||||||
|
|
@ -861,7 +857,8 @@ register struct thing *tp;
|
||||||
* Make all the running monsters move.
|
* Make all the running monsters move.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
runners()
|
void
|
||||||
|
runners(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct thing *tp = NULL;
|
register struct thing *tp = NULL;
|
||||||
|
|
@ -935,9 +932,8 @@ runners()
|
||||||
* Set a monster running after something
|
* Set a monster running after something
|
||||||
*/
|
*/
|
||||||
|
|
||||||
runto(runner, spot)
|
void
|
||||||
register struct thing *runner;
|
runto(struct thing *runner, coord *spot)
|
||||||
coord *spot;
|
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Start the beastie running
|
* Start the beastie running
|
||||||
|
|
@ -959,9 +955,7 @@ coord *spot;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
straight_shot(ery, erx, eey, eex, shooting)
|
straight_shot(int ery, int erx, int eey, int eex, coord *shooting)
|
||||||
register int ery, erx, eey, eex;
|
|
||||||
register coord *shooting;
|
|
||||||
{
|
{
|
||||||
register int dy, dx; /* Deltas */
|
register int dy, dx; /* Deltas */
|
||||||
char ch;
|
char ch;
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,20 @@
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
#include "mach_dep.h"
|
#include "mach_dep.h"
|
||||||
|
|
||||||
|
void help(void);
|
||||||
|
void identify(void);
|
||||||
|
void d_level(void);
|
||||||
|
void u_level(void);
|
||||||
|
void shell(void);
|
||||||
|
void call(bool mark);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* command:
|
* command:
|
||||||
* Process the user commands
|
* Process the user commands
|
||||||
*/
|
*/
|
||||||
|
|
||||||
command()
|
void
|
||||||
|
command(void)
|
||||||
{
|
{
|
||||||
register char ch;
|
register char ch;
|
||||||
register int ntimes = 1; /* Number of player moves */
|
register int ntimes = 1; /* Number of player moves */
|
||||||
|
|
@ -207,8 +215,8 @@ command()
|
||||||
when 'I' : after = FALSE; picky_inven();
|
when 'I' : after = FALSE; picky_inven();
|
||||||
when 'd' : drop(NULL);
|
when 'd' : drop(NULL);
|
||||||
when 'P' : grab(hero.y, hero.x);
|
when 'P' : grab(hero.y, hero.x);
|
||||||
when 'q' : quaff(-1, NULL, TRUE);
|
when 'q' : quaff(-1, 0, TRUE);
|
||||||
when 'r' : read_scroll(-1, NULL, TRUE);
|
when 'r' : read_scroll(-1, 0, TRUE);
|
||||||
when 'e' : eat();
|
when 'e' : eat();
|
||||||
when 'w' : wield();
|
when 'w' : wield();
|
||||||
when 'W' : wear();
|
when 'W' : wear();
|
||||||
|
|
@ -228,7 +236,7 @@ command()
|
||||||
when 'G' : gsense();
|
when 'G' : gsense();
|
||||||
when '^' : set_trap(&player, hero.y, hero.x);
|
when '^' : set_trap(&player, hero.y, hero.x);
|
||||||
when 's' : search(FALSE, FALSE);
|
when 's' : search(FALSE, FALSE);
|
||||||
when 'z' : if (!do_zap(TRUE, NULL, FALSE))
|
when 'z' : if (!do_zap(TRUE, 0, FALSE))
|
||||||
after=FALSE;
|
after=FALSE;
|
||||||
when 'p' : pray();
|
when 'p' : pray();
|
||||||
when 'C' : cast();
|
when 'C' : cast();
|
||||||
|
|
@ -475,8 +483,7 @@ quit(int sig)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void
|
void
|
||||||
bugkill(sig)
|
bugkill(int sig)
|
||||||
int sig;
|
|
||||||
{
|
{
|
||||||
signal(sig, quit); /* If we get it again, give up */
|
signal(sig, quit); /* If we get it again, give up */
|
||||||
death(D_SIGNAL); /* Killed by a bug */
|
death(D_SIGNAL); /* Killed by a bug */
|
||||||
|
|
@ -488,8 +495,8 @@ int sig;
|
||||||
* Player gropes about him to find hidden things.
|
* Player gropes about him to find hidden things.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
search(is_thief, door_chime)
|
void
|
||||||
register bool is_thief, door_chime;
|
search(bool is_thief, bool door_chime)
|
||||||
{
|
{
|
||||||
register int x, y;
|
register int x, y;
|
||||||
register char ch, /* The trap or door character */
|
register char ch, /* The trap or door character */
|
||||||
|
|
@ -570,7 +577,8 @@ register bool is_thief, door_chime;
|
||||||
* Give single character help, or the whole mess if he wants it
|
* Give single character help, or the whole mess if he wants it
|
||||||
*/
|
*/
|
||||||
|
|
||||||
help()
|
void
|
||||||
|
help(void)
|
||||||
{
|
{
|
||||||
register struct h_list *strp = helpstr;
|
register struct h_list *strp = helpstr;
|
||||||
#ifdef WIZARD
|
#ifdef WIZARD
|
||||||
|
|
@ -664,7 +672,8 @@ help()
|
||||||
* Tell the player what a certain thing is.
|
* Tell the player what a certain thing is.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
identify()
|
void
|
||||||
|
identify(void)
|
||||||
{
|
{
|
||||||
register char ch;
|
register char ch;
|
||||||
const char *str;
|
const char *str;
|
||||||
|
|
@ -726,7 +735,8 @@ identify()
|
||||||
* He wants to go down a level
|
* He wants to go down a level
|
||||||
*/
|
*/
|
||||||
|
|
||||||
d_level()
|
void
|
||||||
|
d_level(void)
|
||||||
{
|
{
|
||||||
bool no_phase=FALSE;
|
bool no_phase=FALSE;
|
||||||
|
|
||||||
|
|
@ -770,7 +780,8 @@ d_level()
|
||||||
* He wants to go up a level
|
* He wants to go up a level
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u_level()
|
void
|
||||||
|
u_level(void)
|
||||||
{
|
{
|
||||||
bool no_phase = FALSE;
|
bool no_phase = FALSE;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
@ -828,7 +839,8 @@ u_level()
|
||||||
* Let him escape for a while
|
* Let him escape for a while
|
||||||
*/
|
*/
|
||||||
|
|
||||||
shell()
|
void
|
||||||
|
shell(void)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Set the terminal back to original mode
|
* Set the terminal back to original mode
|
||||||
|
|
@ -859,8 +871,8 @@ shell()
|
||||||
/*
|
/*
|
||||||
* allow a user to call a potion, scroll, or ring something
|
* allow a user to call a potion, scroll, or ring something
|
||||||
*/
|
*/
|
||||||
call(mark)
|
void
|
||||||
bool mark;
|
call(bool mark)
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ int fusecnt = 0;
|
||||||
* Find an empty slot in the daemon list
|
* Find an empty slot in the daemon list
|
||||||
*/
|
*/
|
||||||
struct delayed_action *
|
struct delayed_action *
|
||||||
d_slot()
|
d_slot(void)
|
||||||
{
|
{
|
||||||
reg int i;
|
reg int i;
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
|
|
@ -52,7 +52,7 @@ d_slot()
|
||||||
* Find an empty slot in the fuses list
|
* Find an empty slot in the fuses list
|
||||||
*/
|
*/
|
||||||
struct delayed_action *
|
struct delayed_action *
|
||||||
f_slot()
|
f_slot(void)
|
||||||
{
|
{
|
||||||
reg int i;
|
reg int i;
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
|
|
@ -70,8 +70,7 @@ f_slot()
|
||||||
* Find a particular slot in the table
|
* Find a particular slot in the table
|
||||||
*/
|
*/
|
||||||
struct delayed_action *
|
struct delayed_action *
|
||||||
find_slot(func)
|
find_slot(int (*func)())
|
||||||
reg int (*func)();
|
|
||||||
{
|
{
|
||||||
reg int i;
|
reg int i;
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
|
|
@ -87,6 +86,7 @@ reg int (*func)();
|
||||||
* start_daemon:
|
* start_daemon:
|
||||||
* Start a daemon, takes a function.
|
* Start a daemon, takes a function.
|
||||||
*/
|
*/
|
||||||
|
void
|
||||||
start_daemon(int (*func)(), void *arg, int type)
|
start_daemon(int (*func)(), void *arg, int type)
|
||||||
{
|
{
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
|
|
@ -106,8 +106,8 @@ start_daemon(int (*func)(), void *arg, int type)
|
||||||
* kill_daemon:
|
* kill_daemon:
|
||||||
* Remove a daemon from the list
|
* Remove a daemon from the list
|
||||||
*/
|
*/
|
||||||
kill_daemon(func)
|
void
|
||||||
reg int (*func)();
|
kill_daemon(int (*func)())
|
||||||
{
|
{
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
reg int i;
|
reg int i;
|
||||||
|
|
@ -133,8 +133,8 @@ reg int (*func)();
|
||||||
* Run all the daemons that are active with the current flag,
|
* Run all the daemons that are active with the current flag,
|
||||||
* passing the argument to the function.
|
* passing the argument to the function.
|
||||||
*/
|
*/
|
||||||
do_daemons(flag)
|
void
|
||||||
reg int flag;
|
do_daemons(int flag)
|
||||||
{
|
{
|
||||||
reg struct delayed_action *dev;
|
reg struct delayed_action *dev;
|
||||||
|
|
||||||
|
|
@ -154,6 +154,7 @@ reg int flag;
|
||||||
* fuse:
|
* fuse:
|
||||||
* Start a fuse to go off in a certain number of turns
|
* Start a fuse to go off in a certain number of turns
|
||||||
*/
|
*/
|
||||||
|
void
|
||||||
fuse(int (*func)(), void *arg, int time, int type)
|
fuse(int (*func)(), void *arg, int time, int type)
|
||||||
{
|
{
|
||||||
reg struct delayed_action *wire;
|
reg struct delayed_action *wire;
|
||||||
|
|
@ -173,8 +174,8 @@ fuse(int (*func)(), void *arg, int time, int type)
|
||||||
* lengthen:
|
* lengthen:
|
||||||
* Increase the time until a fuse goes off
|
* Increase the time until a fuse goes off
|
||||||
*/
|
*/
|
||||||
lengthen(func, xtime)
|
void
|
||||||
reg int (*func)(), xtime;
|
lengthen(int (*func)(), int xtime)
|
||||||
{
|
{
|
||||||
reg struct delayed_action *wire;
|
reg struct delayed_action *wire;
|
||||||
|
|
||||||
|
|
@ -188,8 +189,8 @@ reg int (*func)(), xtime;
|
||||||
* extinguish:
|
* extinguish:
|
||||||
* Put out a fuse
|
* Put out a fuse
|
||||||
*/
|
*/
|
||||||
extinguish(func)
|
void
|
||||||
reg int (*func)();
|
extinguish(int (*func)())
|
||||||
{
|
{
|
||||||
reg struct delayed_action *wire;
|
reg struct delayed_action *wire;
|
||||||
|
|
||||||
|
|
@ -207,8 +208,8 @@ reg int (*func)();
|
||||||
* do_fuses:
|
* do_fuses:
|
||||||
* Decrement counters and start needed fuses
|
* Decrement counters and start needed fuses
|
||||||
*/
|
*/
|
||||||
do_fuses(flag)
|
void
|
||||||
reg int flag;
|
do_fuses(int flag)
|
||||||
{
|
{
|
||||||
reg struct delayed_action *wire;
|
reg struct delayed_action *wire;
|
||||||
|
|
||||||
|
|
@ -234,7 +235,8 @@ reg int flag;
|
||||||
* activity:
|
* activity:
|
||||||
* Show wizard number of demaons and memory blocks used
|
* Show wizard number of demaons and memory blocks used
|
||||||
*/
|
*/
|
||||||
activity()
|
void
|
||||||
|
activity(void)
|
||||||
{
|
{
|
||||||
sprintf(outstring,"Daemons = %d : Fuses = %d : Memory Items = %d : Memory Used = %d",
|
sprintf(outstring,"Daemons = %d : Fuses = %d : Memory Items = %d : Memory Used = %d",
|
||||||
demoncnt,fusecnt,total,md_memused());
|
demoncnt,fusecnt,total,md_memused());
|
||||||
|
|
|
||||||
|
|
@ -22,8 +22,8 @@ int between = 0;
|
||||||
* A healing daemon that restors hit points after rest
|
* A healing daemon that restors hit points after rest
|
||||||
*/
|
*/
|
||||||
|
|
||||||
doctor(tp)
|
void
|
||||||
register struct thing *tp;
|
doctor(struct thing *tp)
|
||||||
{
|
{
|
||||||
register int ohp;
|
register int ohp;
|
||||||
register int limit, new_points;
|
register int limit, new_points;
|
||||||
|
|
@ -100,7 +100,8 @@ register struct thing *tp;
|
||||||
* Called when it is time to start rolling for wandering monsters
|
* Called when it is time to start rolling for wandering monsters
|
||||||
*/
|
*/
|
||||||
|
|
||||||
swander()
|
void
|
||||||
|
swander(void)
|
||||||
{
|
{
|
||||||
start_daemon(rollwand, 0, BEFORE);
|
start_daemon(rollwand, 0, BEFORE);
|
||||||
}
|
}
|
||||||
|
|
@ -110,7 +111,8 @@ swander()
|
||||||
* Called to roll to see if a wandering monster starts up
|
* Called to roll to see if a wandering monster starts up
|
||||||
*/
|
*/
|
||||||
|
|
||||||
rollwand()
|
void
|
||||||
|
rollwand(void)
|
||||||
{
|
{
|
||||||
if (++between >= 4)
|
if (++between >= 4)
|
||||||
{
|
{
|
||||||
|
|
@ -128,7 +130,8 @@ rollwand()
|
||||||
/*
|
/*
|
||||||
* this function is a daemon called each turn when the character is a thief
|
* this function is a daemon called each turn when the character is a thief
|
||||||
*/
|
*/
|
||||||
trap_look()
|
void
|
||||||
|
trap_look(void)
|
||||||
{
|
{
|
||||||
if (rnd(100) < (2*dex_compute() + 5*pstats.s_lvl))
|
if (rnd(100) < (2*dex_compute() + 5*pstats.s_lvl))
|
||||||
search(TRUE, FALSE);
|
search(TRUE, FALSE);
|
||||||
|
|
@ -139,7 +142,8 @@ trap_look()
|
||||||
* Release the poor player from his confusion
|
* Release the poor player from his confusion
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unconfuse()
|
void
|
||||||
|
unconfuse(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISHUH);
|
turn_off(player, ISHUH);
|
||||||
msg("You feel less confused now");
|
msg("You feel less confused now");
|
||||||
|
|
@ -151,7 +155,8 @@ unconfuse()
|
||||||
* He lost his see invisible power
|
* He lost his see invisible power
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unsee()
|
void
|
||||||
|
unsee(void)
|
||||||
{
|
{
|
||||||
if (!ISWEARING(R_SEEINVIS)) {
|
if (!ISWEARING(R_SEEINVIS)) {
|
||||||
turn_off(player, CANSEE);
|
turn_off(player, CANSEE);
|
||||||
|
|
@ -164,7 +169,8 @@ unsee()
|
||||||
* Remove to-hit handicap from player
|
* Remove to-hit handicap from player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unstink()
|
void
|
||||||
|
unstink(void)
|
||||||
{
|
{
|
||||||
turn_off(player, HASSTINK);
|
turn_off(player, HASSTINK);
|
||||||
}
|
}
|
||||||
|
|
@ -174,7 +180,8 @@ unstink()
|
||||||
* Player is no longer immune to confusion
|
* Player is no longer immune to confusion
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unclrhead()
|
void
|
||||||
|
unclrhead(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISCLEAR);
|
turn_off(player, ISCLEAR);
|
||||||
msg("The blue aura about your head fades away.");
|
msg("The blue aura about your head fades away.");
|
||||||
|
|
@ -185,7 +192,8 @@ unclrhead()
|
||||||
* Player can no longer walk through walls
|
* Player can no longer walk through walls
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unphase()
|
void
|
||||||
|
unphase(void)
|
||||||
{
|
{
|
||||||
turn_off(player, CANINWALL);
|
turn_off(player, CANINWALL);
|
||||||
msg("Your dizzy feeling leaves you.");
|
msg("Your dizzy feeling leaves you.");
|
||||||
|
|
@ -197,7 +205,8 @@ unphase()
|
||||||
* Player can no longer fly
|
* Player can no longer fly
|
||||||
*/
|
*/
|
||||||
|
|
||||||
land()
|
void
|
||||||
|
land(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISFLY);
|
turn_off(player, ISFLY);
|
||||||
msg("You regain your normal weight");
|
msg("You regain your normal weight");
|
||||||
|
|
@ -209,7 +218,8 @@ land()
|
||||||
* He gets his sight back
|
* He gets his sight back
|
||||||
*/
|
*/
|
||||||
|
|
||||||
sight()
|
void
|
||||||
|
sight(void)
|
||||||
{
|
{
|
||||||
if (on(player, ISBLIND))
|
if (on(player, ISBLIND))
|
||||||
{
|
{
|
||||||
|
|
@ -225,7 +235,8 @@ sight()
|
||||||
* Restore player's strength
|
* Restore player's strength
|
||||||
*/
|
*/
|
||||||
|
|
||||||
res_strength()
|
void
|
||||||
|
res_strength(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
/* If lost_str is non-zero, restore that amount of strength,
|
/* If lost_str is non-zero, restore that amount of strength,
|
||||||
|
|
@ -249,7 +260,8 @@ res_strength()
|
||||||
* End the hasting
|
* End the hasting
|
||||||
*/
|
*/
|
||||||
|
|
||||||
nohaste()
|
void
|
||||||
|
nohaste(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISHASTE);
|
turn_off(player, ISHASTE);
|
||||||
msg("You feel yourself slowing down.");
|
msg("You feel yourself slowing down.");
|
||||||
|
|
@ -260,7 +272,8 @@ nohaste()
|
||||||
* End the slowing
|
* End the slowing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
noslow()
|
void
|
||||||
|
noslow(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISSLOW);
|
turn_off(player, ISSLOW);
|
||||||
msg("You feel yourself speeding up.");
|
msg("You feel yourself speeding up.");
|
||||||
|
|
@ -271,7 +284,8 @@ noslow()
|
||||||
* If this gets called, the player has suffocated
|
* If this gets called, the player has suffocated
|
||||||
*/
|
*/
|
||||||
|
|
||||||
suffocate()
|
void
|
||||||
|
suffocate(void)
|
||||||
{
|
{
|
||||||
death(D_SUFFOCATION);
|
death(D_SUFFOCATION);
|
||||||
}
|
}
|
||||||
|
|
@ -279,7 +293,8 @@ suffocate()
|
||||||
/*
|
/*
|
||||||
* digest the hero's food
|
* digest the hero's food
|
||||||
*/
|
*/
|
||||||
stomach()
|
void
|
||||||
|
stomach(void)
|
||||||
{
|
{
|
||||||
register int oldfood, old_hunger, food_use, i;
|
register int oldfood, old_hunger, food_use, i;
|
||||||
|
|
||||||
|
|
@ -335,7 +350,8 @@ stomach()
|
||||||
/*
|
/*
|
||||||
* daemon for curing the diseased
|
* daemon for curing the diseased
|
||||||
*/
|
*/
|
||||||
cure_disease()
|
void
|
||||||
|
cure_disease(void)
|
||||||
{
|
{
|
||||||
turn_off(player, HASDISEASE);
|
turn_off(player, HASDISEASE);
|
||||||
if (off (player, HASINFEST))
|
if (off (player, HASINFEST))
|
||||||
|
|
@ -346,7 +362,8 @@ cure_disease()
|
||||||
/*
|
/*
|
||||||
* daemon for adding back dexterity
|
* daemon for adding back dexterity
|
||||||
*/
|
*/
|
||||||
un_itch()
|
void
|
||||||
|
un_itch(void)
|
||||||
{
|
{
|
||||||
if (--lost_dext < 1) {
|
if (--lost_dext < 1) {
|
||||||
lost_dext = 0;
|
lost_dext = 0;
|
||||||
|
|
@ -358,7 +375,8 @@ un_itch()
|
||||||
* appear:
|
* appear:
|
||||||
* Become visible again
|
* Become visible again
|
||||||
*/
|
*/
|
||||||
appear()
|
void
|
||||||
|
appear(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISINVIS);
|
turn_off(player, ISINVIS);
|
||||||
PLAYER = VPLAYER;
|
PLAYER = VPLAYER;
|
||||||
|
|
@ -369,7 +387,8 @@ appear()
|
||||||
* dust_appear:
|
* dust_appear:
|
||||||
* dust of disappearance wears off
|
* dust of disappearance wears off
|
||||||
*/
|
*/
|
||||||
dust_appear()
|
void
|
||||||
|
dust_appear(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISINVIS);
|
turn_off(player, ISINVIS);
|
||||||
PLAYER = VPLAYER;
|
PLAYER = VPLAYER;
|
||||||
|
|
@ -380,7 +399,8 @@ dust_appear()
|
||||||
* unchoke:
|
* unchoke:
|
||||||
* the effects of "dust of choking and sneezing" wear off
|
* the effects of "dust of choking and sneezing" wear off
|
||||||
*/
|
*/
|
||||||
unchoke()
|
void
|
||||||
|
unchoke(void)
|
||||||
{
|
{
|
||||||
if (!find_slot(unconfuse))
|
if (!find_slot(unconfuse))
|
||||||
turn_off(player, ISHUH);
|
turn_off(player, ISHUH);
|
||||||
|
|
@ -392,8 +412,8 @@ unchoke()
|
||||||
/*
|
/*
|
||||||
* make some potion for the guy in the Alchemy jug
|
* make some potion for the guy in the Alchemy jug
|
||||||
*/
|
*/
|
||||||
alchemy(obj)
|
void
|
||||||
register struct object *obj;
|
alchemy(struct object *obj)
|
||||||
{
|
{
|
||||||
register struct object *tobj = NULL;
|
register struct object *tobj = NULL;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
@ -440,7 +460,8 @@ register struct object *obj;
|
||||||
* otto's irresistable dance wears off
|
* otto's irresistable dance wears off
|
||||||
*/
|
*/
|
||||||
|
|
||||||
undance()
|
void
|
||||||
|
undance(void)
|
||||||
{
|
{
|
||||||
turn_off(player, ISDANCE);
|
turn_off(player, ISDANCE);
|
||||||
msg ("Your feet take a break.....whew!");
|
msg ("Your feet take a break.....whew!");
|
||||||
|
|
@ -449,14 +470,16 @@ undance()
|
||||||
/*
|
/*
|
||||||
* if he has our favorite necklace of strangulation then take damage every turn
|
* if he has our favorite necklace of strangulation then take damage every turn
|
||||||
*/
|
*/
|
||||||
strangle()
|
void
|
||||||
|
strangle(void)
|
||||||
{
|
{
|
||||||
if ((pstats.s_hpt -= 6) <= 0) death(D_STRANGLE);
|
if ((pstats.s_hpt -= 6) <= 0) death(D_STRANGLE);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* if he has on the gauntlets of fumbling he might drop his weapon each turn
|
* if he has on the gauntlets of fumbling he might drop his weapon each turn
|
||||||
*/
|
*/
|
||||||
fumble()
|
void
|
||||||
|
fumble(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -474,14 +497,16 @@ fumble()
|
||||||
/*
|
/*
|
||||||
* this is called each turn the hero has the ring of searching on
|
* this is called each turn the hero has the ring of searching on
|
||||||
*/
|
*/
|
||||||
ring_search()
|
void
|
||||||
|
ring_search(void)
|
||||||
{
|
{
|
||||||
search(FALSE, FALSE);
|
search(FALSE, FALSE);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* this is called each turn the hero has the ring of teleportation on
|
* this is called each turn the hero has the ring of teleportation on
|
||||||
*/
|
*/
|
||||||
ring_teleport()
|
void
|
||||||
|
ring_teleport(void)
|
||||||
{
|
{
|
||||||
if (rnd(100) < 2) teleport();
|
if (rnd(100) < 2) teleport();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,12 +15,14 @@
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
int packweight(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* updpack:
|
* updpack:
|
||||||
* Update his pack weight and adjust fooduse accordingly
|
* Update his pack weight and adjust fooduse accordingly
|
||||||
*/
|
*/
|
||||||
updpack(getmax)
|
void
|
||||||
int getmax;
|
updpack(bool getmax)
|
||||||
{
|
{
|
||||||
|
|
||||||
reg int topcarry, curcarry;
|
reg int topcarry, curcarry;
|
||||||
|
|
@ -45,7 +47,8 @@ int getmax;
|
||||||
* packweight:
|
* packweight:
|
||||||
* Get the total weight of the hero's pack
|
* Get the total weight of the hero's pack
|
||||||
*/
|
*/
|
||||||
packweight()
|
int
|
||||||
|
packweight(void)
|
||||||
{
|
{
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
reg struct linked_list *pc;
|
reg struct linked_list *pc;
|
||||||
|
|
@ -68,8 +71,8 @@ packweight()
|
||||||
* itemweight:
|
* itemweight:
|
||||||
* Get the weight of an object
|
* Get the weight of an object
|
||||||
*/
|
*/
|
||||||
itemweight(wh)
|
int
|
||||||
reg struct object *wh;
|
itemweight(struct object *wh)
|
||||||
{
|
{
|
||||||
reg int weight;
|
reg int weight;
|
||||||
reg int ac;
|
reg int ac;
|
||||||
|
|
@ -99,7 +102,8 @@ reg struct object *wh;
|
||||||
* playenc:
|
* playenc:
|
||||||
* Get hero's carrying ability above norm
|
* Get hero's carrying ability above norm
|
||||||
*/
|
*/
|
||||||
playenc()
|
int
|
||||||
|
playenc(void)
|
||||||
{
|
{
|
||||||
return ((str_compute()-8)*50);
|
return ((str_compute()-8)*50);
|
||||||
}
|
}
|
||||||
|
|
@ -109,7 +113,8 @@ playenc()
|
||||||
* totalenc:
|
* totalenc:
|
||||||
* Get total weight that the hero can carry
|
* Get total weight that the hero can carry
|
||||||
*/
|
*/
|
||||||
totalenc()
|
int
|
||||||
|
totalenc(void)
|
||||||
{
|
{
|
||||||
reg int wtotal;
|
reg int wtotal;
|
||||||
|
|
||||||
|
|
@ -130,18 +135,18 @@ totalenc()
|
||||||
* See if the hero can carry his pack
|
* See if the hero can carry his pack
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wghtchk()
|
void
|
||||||
|
wghtchk(void)
|
||||||
{
|
{
|
||||||
reg int dropchk, err = TRUE;
|
reg int dropchk, err = TRUE;
|
||||||
reg char ch;
|
reg char ch;
|
||||||
int wghtchk();
|
|
||||||
|
|
||||||
inwhgt = TRUE;
|
inwhgt = TRUE;
|
||||||
if (pstats.s_pack > pstats.s_carry) {
|
if (pstats.s_pack > pstats.s_carry) {
|
||||||
ch = CCHAR( mvwinch(stdscr, hero.y, hero.x) );
|
ch = CCHAR( mvwinch(stdscr, hero.y, hero.x) );
|
||||||
if((ch != FLOOR && ch != PASSAGE)) {
|
if((ch != FLOOR && ch != PASSAGE)) {
|
||||||
extinguish(wghtchk);
|
extinguish(wghtchk);
|
||||||
fuse(wghtchk,TRUE,1,AFTER);
|
fuse(wghtchk,NULL,1,AFTER);
|
||||||
inwhgt = FALSE;
|
inwhgt = FALSE;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -169,7 +174,8 @@ wghtchk()
|
||||||
* -1 hit for heavy pack weight
|
* -1 hit for heavy pack weight
|
||||||
*/
|
*/
|
||||||
|
|
||||||
hitweight()
|
int
|
||||||
|
hitweight(void)
|
||||||
{
|
{
|
||||||
return(2 - foodlev);
|
return(2 - foodlev);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
122
arogue5/fight.c
122
arogue5/fight.c
|
|
@ -13,10 +13,27 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
|
#include <stdlib.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
bool roll_em(struct thing *att_er, struct thing *def_er, struct object *weap,
|
||||||
|
bool hurl, struct object *cur_weapon, bool back_stab);
|
||||||
|
void hit(struct object *weapon, struct thing *tp, char *er, char *ee,
|
||||||
|
bool back_stab);
|
||||||
|
void miss(struct object *weapon, struct thing *tp, char *er, char *ee);
|
||||||
|
int dext_plus(int dexterity);
|
||||||
|
int str_plus(short str);
|
||||||
|
int add_dam(short str);
|
||||||
|
int hung_dam(void);
|
||||||
|
void thunk(struct object *weap, struct thing *tp, char *mname);
|
||||||
|
void m_thunk(struct object *weap, struct thing *tp, char *mname);
|
||||||
|
void bounce(struct object *weap, struct thing *tp, char *mname);
|
||||||
|
void m_bounce(struct object *weap, struct thing *tp, char *mname);
|
||||||
|
struct object *wield_weap(struct object *thrown, struct thing *mp);
|
||||||
|
void explode(struct thing *tp);
|
||||||
|
|
||||||
#define CONF_DAMAGE -1
|
#define CONF_DAMAGE -1
|
||||||
#define PARAL_DAMAGE -2
|
#define PARAL_DAMAGE -2
|
||||||
#define DEST_DAMAGE -3
|
#define DEST_DAMAGE -3
|
||||||
|
|
@ -35,10 +52,8 @@ static const struct matrix att_mat[5] = {
|
||||||
* The player attacks the monster.
|
* The player attacks the monster.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fight(mp, weap, thrown)
|
bool
|
||||||
register coord *mp;
|
fight(coord *mp, struct object *weap, bool thrown)
|
||||||
struct object *weap;
|
|
||||||
bool thrown;
|
|
||||||
{
|
{
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
@ -204,10 +219,8 @@ bool thrown;
|
||||||
* The monster attacks the player
|
* The monster attacks the player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
attack(mp, weapon, thrown)
|
bool
|
||||||
register struct thing *mp;
|
attack(struct thing *mp, struct object *weapon, bool thrown)
|
||||||
register struct object *weapon;
|
|
||||||
bool thrown;
|
|
||||||
{
|
{
|
||||||
register const char *mname;
|
register const char *mname;
|
||||||
register bool did_hit = FALSE;
|
register bool did_hit = FALSE;
|
||||||
|
|
@ -708,9 +721,8 @@ bool thrown;
|
||||||
* returns true if the swing hits
|
* returns true if the swing hits
|
||||||
*/
|
*/
|
||||||
|
|
||||||
swing(class, at_lvl, op_arm, wplus)
|
bool
|
||||||
short class;
|
swing(short class, int at_lvl, int op_arm, int wplus)
|
||||||
int at_lvl, op_arm, wplus;
|
|
||||||
{
|
{
|
||||||
register int res = rnd(20)+1;
|
register int res = rnd(20)+1;
|
||||||
register int need;
|
register int need;
|
||||||
|
|
@ -730,12 +742,9 @@ int at_lvl, op_arm, wplus;
|
||||||
* Roll several attacks
|
* Roll several attacks
|
||||||
*/
|
*/
|
||||||
|
|
||||||
roll_em(att_er, def_er, weap, hurl, cur_weapon, back_stab)
|
bool
|
||||||
struct thing *att_er, *def_er;
|
roll_em(struct thing *att_er, struct thing *def_er, struct object *weap,
|
||||||
struct object *weap;
|
bool hurl, struct object *cur_weapon, bool back_stab)
|
||||||
bool hurl;
|
|
||||||
struct object *cur_weapon;
|
|
||||||
bool back_stab;
|
|
||||||
{
|
{
|
||||||
register struct stats *att, *def;
|
register struct stats *att, *def;
|
||||||
register char *cp = NULL;
|
register char *cp = NULL;
|
||||||
|
|
@ -1028,9 +1037,7 @@ bool back_stab;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char *
|
char *
|
||||||
prname(who, upper)
|
prname(char *who, bool upper)
|
||||||
register char *who;
|
|
||||||
bool upper;
|
|
||||||
{
|
{
|
||||||
static char tbuf[LINELEN];
|
static char tbuf[LINELEN];
|
||||||
|
|
||||||
|
|
@ -1054,11 +1061,8 @@ bool upper;
|
||||||
* Print a message to indicate a succesful hit
|
* Print a message to indicate a succesful hit
|
||||||
*/
|
*/
|
||||||
|
|
||||||
hit(weapon, tp, er, ee, back_stab)
|
void
|
||||||
register struct object *weapon;
|
hit(struct object *weapon, struct thing *tp, char *er, char *ee, bool back_stab)
|
||||||
register struct thing *tp;
|
|
||||||
register char *er, *ee;
|
|
||||||
bool back_stab;
|
|
||||||
{
|
{
|
||||||
register char *s = NULL;
|
register char *s = NULL;
|
||||||
char
|
char
|
||||||
|
|
@ -1114,10 +1118,8 @@ bool back_stab;
|
||||||
* Print a message to indicate a poor swing
|
* Print a message to indicate a poor swing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
miss(weapon, tp, er, ee)
|
void
|
||||||
register struct object *weapon;
|
miss(struct object *weapon, struct thing *tp, char *er, char *ee)
|
||||||
register struct thing *tp;
|
|
||||||
register char *er, *ee;
|
|
||||||
{
|
{
|
||||||
register char *s = NULL;
|
register char *s = NULL;
|
||||||
char
|
char
|
||||||
|
|
@ -1161,8 +1163,8 @@ register char *er, *ee;
|
||||||
* compute to-hit bonus for dexterity
|
* compute to-hit bonus for dexterity
|
||||||
*/
|
*/
|
||||||
|
|
||||||
dext_plus(dexterity)
|
int
|
||||||
register int dexterity;
|
dext_plus(int dexterity)
|
||||||
{
|
{
|
||||||
return (dexterity > 10 ? (dexterity-13)/3 : (dexterity-10)/3);
|
return (dexterity > 10 ? (dexterity-13)/3 : (dexterity-10)/3);
|
||||||
}
|
}
|
||||||
|
|
@ -1173,8 +1175,8 @@ register int dexterity;
|
||||||
* compute armor class bonus for dexterity
|
* compute armor class bonus for dexterity
|
||||||
*/
|
*/
|
||||||
|
|
||||||
dext_prot(dexterity)
|
int
|
||||||
register int dexterity;
|
dext_prot(int dexterity)
|
||||||
{
|
{
|
||||||
return ((dexterity-10)/2);
|
return ((dexterity-10)/2);
|
||||||
}
|
}
|
||||||
|
|
@ -1183,8 +1185,8 @@ register int dexterity;
|
||||||
* compute bonus/penalties for strength on the "to hit" roll
|
* compute bonus/penalties for strength on the "to hit" roll
|
||||||
*/
|
*/
|
||||||
|
|
||||||
str_plus(str)
|
int
|
||||||
register short str;
|
str_plus(short str)
|
||||||
{
|
{
|
||||||
return((str-10)/3);
|
return((str-10)/3);
|
||||||
}
|
}
|
||||||
|
|
@ -1194,8 +1196,8 @@ register short str;
|
||||||
* compute additional damage done for exceptionally high or low strength
|
* compute additional damage done for exceptionally high or low strength
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_dam(str)
|
int
|
||||||
register short str;
|
add_dam(short str)
|
||||||
{
|
{
|
||||||
return((str-9)/2);
|
return((str-9)/2);
|
||||||
}
|
}
|
||||||
|
|
@ -1204,7 +1206,8 @@ register short str;
|
||||||
* hung_dam:
|
* hung_dam:
|
||||||
* Calculate damage depending on players hungry state
|
* Calculate damage depending on players hungry state
|
||||||
*/
|
*/
|
||||||
hung_dam()
|
int
|
||||||
|
hung_dam(void)
|
||||||
{
|
{
|
||||||
reg int howmuch = 0;
|
reg int howmuch = 0;
|
||||||
|
|
||||||
|
|
@ -1222,11 +1225,10 @@ hung_dam()
|
||||||
* A missile hits a monster
|
* A missile hits a monster
|
||||||
*/
|
*/
|
||||||
|
|
||||||
thunk(weap, tp, mname)
|
void
|
||||||
register struct object *weap;
|
thunk(struct object *weap, struct thing *tp, char *mname)
|
||||||
register struct thing *tp; /* Defender */
|
|
||||||
register char *mname;
|
|
||||||
{
|
{
|
||||||
|
/* tp: Defender */
|
||||||
char *def_name; /* Name of defender */
|
char *def_name; /* Name of defender */
|
||||||
|
|
||||||
/* What do we call the defender? */
|
/* What do we call the defender? */
|
||||||
|
|
@ -1251,10 +1253,8 @@ register char *mname;
|
||||||
* A missile from a monster hits the player
|
* A missile from a monster hits the player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
m_thunk(weap, tp, mname)
|
void
|
||||||
register struct object *weap;
|
m_thunk(struct object *weap, struct thing *tp, char *mname)
|
||||||
register struct thing *tp;
|
|
||||||
register char *mname;
|
|
||||||
{
|
{
|
||||||
char *att_name; /* Name of attacker */
|
char *att_name; /* Name of attacker */
|
||||||
|
|
||||||
|
|
@ -1280,11 +1280,10 @@ register char *mname;
|
||||||
* A missile misses a monster
|
* A missile misses a monster
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bounce(weap, tp, mname)
|
void
|
||||||
register struct object *weap;
|
bounce(struct object *weap, struct thing *tp, char *mname)
|
||||||
register struct thing *tp; /* Defender */
|
|
||||||
register char *mname;
|
|
||||||
{
|
{
|
||||||
|
/* tp: Defender */
|
||||||
char *def_name; /* Name of defender */
|
char *def_name; /* Name of defender */
|
||||||
|
|
||||||
/* What do we call the defender? */
|
/* What do we call the defender? */
|
||||||
|
|
@ -1309,10 +1308,8 @@ register char *mname;
|
||||||
A missle from a monster misses the player
|
A missle from a monster misses the player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
m_bounce(weap, tp, mname)
|
void
|
||||||
register struct object *weap;
|
m_bounce(struct object *weap, struct thing *tp, char *mname)
|
||||||
register struct thing *tp;
|
|
||||||
register char *mname;
|
|
||||||
{
|
{
|
||||||
char *att_name; /* Name of attacker */
|
char *att_name; /* Name of attacker */
|
||||||
|
|
||||||
|
|
@ -1339,8 +1336,8 @@ register char *mname;
|
||||||
* Returns true if an object radiates magic
|
* Returns true if an object radiates magic
|
||||||
*/
|
*/
|
||||||
|
|
||||||
is_magic(obj)
|
bool
|
||||||
register struct object *obj;
|
is_magic(struct object *obj)
|
||||||
{
|
{
|
||||||
switch (obj->o_type)
|
switch (obj->o_type)
|
||||||
{
|
{
|
||||||
|
|
@ -1364,9 +1361,8 @@ register struct object *obj;
|
||||||
* Called to put a monster to death
|
* Called to put a monster to death
|
||||||
*/
|
*/
|
||||||
|
|
||||||
killed(item, pr, points)
|
void
|
||||||
register struct linked_list *item;
|
killed(struct linked_list *item, bool pr, bool points)
|
||||||
bool pr, points;
|
|
||||||
{
|
{
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
register struct linked_list *pitem, *nexti;
|
register struct linked_list *pitem, *nexti;
|
||||||
|
|
@ -1447,9 +1443,7 @@ bool pr, points;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct object *
|
struct object *
|
||||||
wield_weap(thrown, mp)
|
wield_weap(struct object *thrown, struct thing *mp)
|
||||||
struct object *thrown;
|
|
||||||
struct thing *mp;
|
|
||||||
{
|
{
|
||||||
int look_for = 0, /* The projectile weapon we are looking for */
|
int look_for = 0, /* The projectile weapon we are looking for */
|
||||||
new_rate, /* The rating of a prospective weapon */
|
new_rate, /* The rating of a prospective weapon */
|
||||||
|
|
@ -1529,8 +1523,8 @@ struct thing *mp;
|
||||||
return(candidate);
|
return(candidate);
|
||||||
}
|
}
|
||||||
|
|
||||||
explode(tp)
|
void
|
||||||
register struct thing *tp;
|
explode(struct thing *tp)
|
||||||
{
|
{
|
||||||
|
|
||||||
register int x,y, damage;
|
register int x,y, damage;
|
||||||
|
|
|
||||||
|
|
@ -97,10 +97,8 @@ char *metal[NMETAL] = {
|
||||||
* make sure all the percentages specified in the tables add up to the
|
* make sure all the percentages specified in the tables add up to the
|
||||||
* right amounts
|
* right amounts
|
||||||
*/
|
*/
|
||||||
badcheck(name, magic, bound)
|
void
|
||||||
char *name;
|
badcheck(char *name, struct magic_item *magic, int bound)
|
||||||
register struct magic_item *magic;
|
|
||||||
register int bound;
|
|
||||||
{
|
{
|
||||||
register struct magic_item *end;
|
register struct magic_item *end;
|
||||||
|
|
||||||
|
|
@ -120,7 +118,8 @@ register int bound;
|
||||||
* Initialize the potion color scheme for this time
|
* Initialize the potion color scheme for this time
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_colors()
|
void
|
||||||
|
init_colors(void)
|
||||||
{
|
{
|
||||||
register int i, j;
|
register int i, j;
|
||||||
bool used[NCOLORS];
|
bool used[NCOLORS];
|
||||||
|
|
@ -148,7 +147,8 @@ init_colors()
|
||||||
* Initialize the construction materials for wands and staffs
|
* Initialize the construction materials for wands and staffs
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_materials()
|
void
|
||||||
|
init_materials(void)
|
||||||
{
|
{
|
||||||
register int i, j;
|
register int i, j;
|
||||||
register char *str;
|
register char *str;
|
||||||
|
|
@ -201,7 +201,8 @@ init_materials()
|
||||||
* do any initialization for miscellaneous magic
|
* do any initialization for miscellaneous magic
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_misc()
|
void
|
||||||
|
init_misc(void)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
|
|
||||||
|
|
@ -221,7 +222,8 @@ init_misc()
|
||||||
* Generate the names of the various scrolls
|
* Generate the names of the various scrolls
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_names()
|
void
|
||||||
|
init_names(void)
|
||||||
{
|
{
|
||||||
register int nsyl;
|
register int nsyl;
|
||||||
register char *cp, *sp;
|
register char *cp, *sp;
|
||||||
|
|
@ -258,7 +260,8 @@ init_names()
|
||||||
* roll up the rogue
|
* roll up the rogue
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_player()
|
void
|
||||||
|
init_player(void)
|
||||||
{
|
{
|
||||||
int stat_total, ch = 0, wpt = 0, i, j;
|
int stat_total, ch = 0, wpt = 0, i, j;
|
||||||
struct linked_list *weap_item, *armor_item, *food_item;
|
struct linked_list *weap_item, *armor_item, *food_item;
|
||||||
|
|
@ -459,7 +462,8 @@ init_player()
|
||||||
* Initialize the ring stone setting scheme for this time
|
* Initialize the ring stone setting scheme for this time
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_stones()
|
void
|
||||||
|
init_stones(void)
|
||||||
{
|
{
|
||||||
register int i, j;
|
register int i, j;
|
||||||
bool used[NSTONES];
|
bool used[NSTONES];
|
||||||
|
|
@ -487,7 +491,8 @@ init_stones()
|
||||||
* init_things
|
* init_things
|
||||||
* Initialize the probabilities for types of things
|
* Initialize the probabilities for types of things
|
||||||
*/
|
*/
|
||||||
init_things()
|
void
|
||||||
|
init_things(void)
|
||||||
{
|
{
|
||||||
register struct magic_item *mp;
|
register struct magic_item *mp;
|
||||||
|
|
||||||
|
|
|
||||||
61
arogue5/io.c
61
arogue5/io.c
|
|
@ -18,6 +18,9 @@
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
void doadd(char *fmt, va_list ap);
|
||||||
|
void ministat(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* msg:
|
* msg:
|
||||||
* Display a message at the top of the screen.
|
* Display a message at the top of the screen.
|
||||||
|
|
@ -27,6 +30,7 @@ static char msgbuf[BUFSIZ];
|
||||||
static int newpos = 0;
|
static int newpos = 0;
|
||||||
|
|
||||||
/*VARARGS1*/
|
/*VARARGS1*/
|
||||||
|
void
|
||||||
msg(char *fmt, ...)
|
msg(char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
|
@ -54,6 +58,7 @@ msg(char *fmt, ...)
|
||||||
/*
|
/*
|
||||||
* add things to the current message
|
* add things to the current message
|
||||||
*/
|
*/
|
||||||
|
void
|
||||||
addmsg(char *fmt, ...)
|
addmsg(char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
|
@ -66,7 +71,8 @@ addmsg(char *fmt, ...)
|
||||||
* Display a new msg (giving him a chance to see the previous one if it
|
* Display a new msg (giving him a chance to see the previous one if it
|
||||||
* is up there with the --More--)
|
* is up there with the --More--)
|
||||||
*/
|
*/
|
||||||
endmsg()
|
void
|
||||||
|
endmsg(void)
|
||||||
{
|
{
|
||||||
strncpy(huh, msgbuf, sizeof(huh));
|
strncpy(huh, msgbuf, sizeof(huh));
|
||||||
|
|
||||||
|
|
@ -96,6 +102,7 @@ endmsg()
|
||||||
draw(msgw);
|
draw(msgw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
doadd(char *fmt, va_list ap)
|
doadd(char *fmt, va_list ap)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|
@ -113,9 +120,8 @@ doadd(char *fmt, va_list ap)
|
||||||
* flgptr will be NULL if we don't know what the monster is yet!
|
* flgptr will be NULL if we don't know what the monster is yet!
|
||||||
*/
|
*/
|
||||||
|
|
||||||
step_ok(y, x, can_on_monst, flgptr)
|
bool
|
||||||
register int y, x, can_on_monst;
|
step_ok(int y, int x, int can_on_monst, struct thing *flgptr)
|
||||||
register struct thing *flgptr;
|
|
||||||
{
|
{
|
||||||
/* can_on_monst = MONSTOK if all we care about are physical obstacles */
|
/* can_on_monst = MONSTOK if all we care about are physical obstacles */
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
@ -156,7 +162,8 @@ register struct thing *flgptr;
|
||||||
* returns true if it is ok for type to shoot over ch
|
* returns true if it is ok for type to shoot over ch
|
||||||
*/
|
*/
|
||||||
|
|
||||||
shoot_ok(ch)
|
bool
|
||||||
|
shoot_ok(char ch)
|
||||||
{
|
{
|
||||||
switch (ch)
|
switch (ch)
|
||||||
{
|
{
|
||||||
|
|
@ -177,7 +184,8 @@ shoot_ok(ch)
|
||||||
* getchar.
|
* getchar.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
readchar()
|
int
|
||||||
|
readchar(void)
|
||||||
{
|
{
|
||||||
int ch;
|
int ch;
|
||||||
|
|
||||||
|
|
@ -195,10 +203,11 @@ readchar()
|
||||||
/*
|
/*
|
||||||
* status:
|
* status:
|
||||||
* Display the important stats line. Keep the cursor where it was.
|
* Display the important stats line. Keep the cursor where it was.
|
||||||
|
* If display is TRUE, display unconditionally
|
||||||
*/
|
*/
|
||||||
|
|
||||||
status(display)
|
void
|
||||||
bool display; /* is TRUE, display unconditionally */
|
status(bool display)
|
||||||
{
|
{
|
||||||
register struct stats *stat_ptr, *max_ptr;
|
register struct stats *stat_ptr, *max_ptr;
|
||||||
register int oy = 0, ox = 0, temp;
|
register int oy = 0, ox = 0, temp;
|
||||||
|
|
@ -327,7 +336,8 @@ line_two:
|
||||||
wmove(cw, oy, ox);
|
wmove(cw, oy, ox);
|
||||||
}
|
}
|
||||||
|
|
||||||
ministat()
|
void
|
||||||
|
ministat(void)
|
||||||
{
|
{
|
||||||
register int oy, ox, temp;
|
register int oy, ox, temp;
|
||||||
static char buf[LINELEN];
|
static char buf[LINELEN];
|
||||||
|
|
@ -367,9 +377,8 @@ ministat()
|
||||||
* Sit around until the guy types the right key
|
* Sit around until the guy types the right key
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wait_for(win,ch)
|
void
|
||||||
WINDOW *win;
|
wait_for(WINDOW *win, char ch)
|
||||||
register char ch;
|
|
||||||
{
|
{
|
||||||
register char c;
|
register char c;
|
||||||
|
|
||||||
|
|
@ -386,9 +395,8 @@ register char ch;
|
||||||
* function used to display a window and wait before returning
|
* function used to display a window and wait before returning
|
||||||
*/
|
*/
|
||||||
|
|
||||||
show_win(scr, message)
|
void
|
||||||
register WINDOW *scr;
|
show_win(WINDOW *scr, char *message)
|
||||||
char *message;
|
|
||||||
{
|
{
|
||||||
mvwaddstr(scr, 0, 0, message);
|
mvwaddstr(scr, 0, 0, message);
|
||||||
touchwin(scr);
|
touchwin(scr);
|
||||||
|
|
@ -403,9 +411,8 @@ char *message;
|
||||||
* dbotline:
|
* dbotline:
|
||||||
* Displays message on bottom line and waits for a space to return
|
* Displays message on bottom line and waits for a space to return
|
||||||
*/
|
*/
|
||||||
dbotline(scr,message)
|
void
|
||||||
WINDOW *scr;
|
dbotline(WINDOW *scr, char *message)
|
||||||
char *message;
|
|
||||||
{
|
{
|
||||||
mvwaddstr(scr,LINES-1,0,message);
|
mvwaddstr(scr,LINES-1,0,message);
|
||||||
draw(scr);
|
draw(scr);
|
||||||
|
|
@ -417,8 +424,8 @@ char *message;
|
||||||
* restscr:
|
* restscr:
|
||||||
* Restores the screen to the terminal
|
* Restores the screen to the terminal
|
||||||
*/
|
*/
|
||||||
restscr(scr)
|
void
|
||||||
WINDOW *scr;
|
restscr(WINDOW *scr)
|
||||||
{
|
{
|
||||||
clearok(scr,TRUE);
|
clearok(scr,TRUE);
|
||||||
touchwin(scr);
|
touchwin(scr);
|
||||||
|
|
@ -431,10 +438,7 @@ WINDOW *scr;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unsigned long
|
unsigned long
|
||||||
netread(error, size, stream)
|
netread(int *error, int size, FILE *stream)
|
||||||
int *error;
|
|
||||||
int size;
|
|
||||||
FILE *stream;
|
|
||||||
{
|
{
|
||||||
unsigned long result = 0L, /* What we read in */
|
unsigned long result = 0L, /* What we read in */
|
||||||
partial; /* Partial value */
|
partial; /* Partial value */
|
||||||
|
|
@ -469,12 +473,13 @@ FILE *stream;
|
||||||
/*
|
/*
|
||||||
* netwrite:
|
* netwrite:
|
||||||
* Write out a byte, short, or long machine independently.
|
* Write out a byte, short, or long machine independently.
|
||||||
|
* value: What to write
|
||||||
|
* size: How much to write out
|
||||||
|
* stream: Where to write it
|
||||||
*/
|
*/
|
||||||
|
|
||||||
netwrite(value, size, stream)
|
int
|
||||||
unsigned long value; /* What to write */
|
netwrite(unsigned long value, int size, FILE *stream)
|
||||||
int size; /* How much to write out */
|
|
||||||
FILE *stream; /* Where to write it */
|
|
||||||
{
|
{
|
||||||
int i; /* Goes through value one byte at a time */
|
int i; /* Goes through value one byte at a time */
|
||||||
char outc; /* The next character to be written */
|
char outc; /* The next character to be written */
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,8 @@
|
||||||
* Takes an item out of whatever linked list it might be in
|
* Takes an item out of whatever linked list it might be in
|
||||||
*/
|
*/
|
||||||
|
|
||||||
_detach(list, item)
|
void
|
||||||
register struct linked_list **list, *item;
|
_detach(struct linked_list **list, struct linked_list *item)
|
||||||
{
|
{
|
||||||
if (*list == item)
|
if (*list == item)
|
||||||
*list = next(item);
|
*list = next(item);
|
||||||
|
|
@ -37,8 +37,8 @@ register struct linked_list **list, *item;
|
||||||
* add an item to the head of a list
|
* add an item to the head of a list
|
||||||
*/
|
*/
|
||||||
|
|
||||||
_attach(list, item)
|
void
|
||||||
register struct linked_list **list, *item;
|
_attach(struct linked_list **list, struct linked_list *item)
|
||||||
{
|
{
|
||||||
if (*list != NULL)
|
if (*list != NULL)
|
||||||
{
|
{
|
||||||
|
|
@ -60,8 +60,8 @@ register struct linked_list **list, *item;
|
||||||
* Throw the whole object list away
|
* Throw the whole object list away
|
||||||
*/
|
*/
|
||||||
|
|
||||||
_o_free_list(ptr)
|
void
|
||||||
register struct linked_list **ptr;
|
_o_free_list(struct linked_list **ptr)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -78,8 +78,8 @@ register struct linked_list **ptr;
|
||||||
* free up an item and its object(and maybe contents)
|
* free up an item and its object(and maybe contents)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
o_discard(item)
|
void
|
||||||
register struct linked_list *item;
|
o_discard(struct linked_list *item)
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
|
|
@ -95,8 +95,8 @@ register struct linked_list *item;
|
||||||
* Throw the whole thing list away
|
* Throw the whole thing list away
|
||||||
*/
|
*/
|
||||||
|
|
||||||
_t_free_list(ptr)
|
void
|
||||||
register struct linked_list **ptr;
|
_t_free_list(struct linked_list **ptr)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -113,8 +113,8 @@ register struct linked_list **ptr;
|
||||||
* free up an item and its thing
|
* free up an item and its thing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
t_discard(item)
|
void
|
||||||
struct linked_list *item;
|
t_discard(struct linked_list *item)
|
||||||
{
|
{
|
||||||
total -= 2;
|
total -= 2;
|
||||||
FREE(item->l_data);
|
FREE(item->l_data);
|
||||||
|
|
@ -126,8 +126,8 @@ struct linked_list *item;
|
||||||
* get rid of an item structure -- don't worry about contents
|
* get rid of an item structure -- don't worry about contents
|
||||||
*/
|
*/
|
||||||
|
|
||||||
destroy_item(item)
|
void
|
||||||
register struct linked_list *item;
|
destroy_item(struct linked_list *item)
|
||||||
{
|
{
|
||||||
total--;
|
total--;
|
||||||
FREE(item);
|
FREE(item);
|
||||||
|
|
@ -139,8 +139,7 @@ register struct linked_list *item;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
new_item(size)
|
new_item(int size)
|
||||||
int size;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -158,7 +157,7 @@ int size;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
creat_item()
|
creat_item(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -169,8 +168,7 @@ creat_item()
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
new(size)
|
new(int size)
|
||||||
int size;
|
|
||||||
{
|
{
|
||||||
register char *space = ALLOC(size);
|
register char *space = ALLOC(size);
|
||||||
static char errbuf[LINELEN];
|
static char errbuf[LINELEN];
|
||||||
|
|
|
||||||
|
|
@ -43,10 +43,10 @@ static char *funfruit[] = {
|
||||||
#define NFRUIT (sizeof(funfruit) / sizeof (char *))
|
#define NFRUIT (sizeof(funfruit) / sizeof (char *))
|
||||||
|
|
||||||
void open_records(void);
|
void open_records(void);
|
||||||
|
bool holiday(void);
|
||||||
|
|
||||||
main(argc, argv, envp)
|
int
|
||||||
char **argv;
|
main(int argc, char *argv[], char *envp[])
|
||||||
char **envp;
|
|
||||||
{
|
{
|
||||||
register char *env;
|
register char *env;
|
||||||
int lowtime;
|
int lowtime;
|
||||||
|
|
@ -123,7 +123,6 @@ char **envp;
|
||||||
* Check for a network update
|
* Check for a network update
|
||||||
*/
|
*/
|
||||||
if (argc == 2 && strcmp(argv[1], "-u") == 0) {
|
if (argc == 2 && strcmp(argv[1], "-u") == 0) {
|
||||||
unsigned long netread();
|
|
||||||
int errcheck, errors = 0;
|
int errcheck, errors = 0;
|
||||||
unsigned long amount;
|
unsigned long amount;
|
||||||
short monster;
|
short monster;
|
||||||
|
|
@ -277,8 +276,8 @@ endit(int sig)
|
||||||
* Exit the program, printing a message.
|
* Exit the program, printing a message.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fatal(s)
|
void
|
||||||
char *s;
|
fatal(char *s)
|
||||||
{
|
{
|
||||||
clear();
|
clear();
|
||||||
move(LINES-2, 0);
|
move(LINES-2, 0);
|
||||||
|
|
@ -294,8 +293,8 @@ char *s;
|
||||||
* Pick a very random number.
|
* Pick a very random number.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
rnd(range)
|
int
|
||||||
register int range;
|
rnd(int range)
|
||||||
{
|
{
|
||||||
return(range == 0 ? 0 : md_rand() % range);
|
return(range == 0 ? 0 : md_rand() % range);
|
||||||
}
|
}
|
||||||
|
|
@ -305,8 +304,8 @@ register int range;
|
||||||
* roll a number of dice
|
* roll a number of dice
|
||||||
*/
|
*/
|
||||||
|
|
||||||
roll(number, sides)
|
int
|
||||||
register int number, sides;
|
roll(int number, int sides)
|
||||||
{
|
{
|
||||||
register int dtotal = 0;
|
register int dtotal = 0;
|
||||||
|
|
||||||
|
|
@ -336,10 +335,11 @@ tstp(int a)
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
setup()
|
void
|
||||||
|
setup(void)
|
||||||
{
|
{
|
||||||
#ifdef CHECKTIME
|
#ifdef CHECKTIME
|
||||||
int checkout();
|
void checkout();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DUMP
|
#ifndef DUMP
|
||||||
|
|
@ -392,7 +392,8 @@ setup()
|
||||||
* refreshing things and looking at the proper times.
|
* refreshing things and looking at the proper times.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
playit()
|
void
|
||||||
|
playit(void)
|
||||||
{
|
{
|
||||||
register char *opts;
|
register char *opts;
|
||||||
|
|
||||||
|
|
@ -416,7 +417,8 @@ playit()
|
||||||
/*
|
/*
|
||||||
* see if the system is being used too much for this game
|
* see if the system is being used too much for this game
|
||||||
*/
|
*/
|
||||||
too_much()
|
bool
|
||||||
|
too_much(void)
|
||||||
{
|
{
|
||||||
#ifdef MAXLOAD
|
#ifdef MAXLOAD
|
||||||
double avec[3];
|
double avec[3];
|
||||||
|
|
@ -435,7 +437,8 @@ too_much()
|
||||||
* author:
|
* author:
|
||||||
* See if a user is an author of the program
|
* See if a user is an author of the program
|
||||||
*/
|
*/
|
||||||
author()
|
bool
|
||||||
|
author(void)
|
||||||
{
|
{
|
||||||
switch (md_getuid()) {
|
switch (md_getuid()) {
|
||||||
#if AUTHOR
|
#if AUTHOR
|
||||||
|
|
@ -450,7 +453,24 @@ author()
|
||||||
|
|
||||||
|
|
||||||
#ifdef CHECKTIME
|
#ifdef CHECKTIME
|
||||||
checkout()
|
/*
|
||||||
|
* checkout()'s version of msg. If we are in the middle of a shell, do a
|
||||||
|
* printf instead of a msg to avoid the refresh.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
chmsg(char *fmt, int arg)
|
||||||
|
{
|
||||||
|
if (in_shell) {
|
||||||
|
printf(fmt, arg);
|
||||||
|
putchar('\n');
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
msg(fmt, arg);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
checkout(void)
|
||||||
{
|
{
|
||||||
static char *msgs[] = {
|
static char *msgs[] = {
|
||||||
"The system is too loaded for games. Please leave in %d minutes",
|
"The system is too loaded for games. Please leave in %d minutes",
|
||||||
|
|
@ -482,23 +502,6 @@ checkout()
|
||||||
alarm(CHECKTIME * 60);
|
alarm(CHECKTIME * 60);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* checkout()'s version of msg. If we are in the middle of a shell, do a
|
|
||||||
* printf instead of a msg to avoid the refresh.
|
|
||||||
*/
|
|
||||||
chmsg(fmt, arg)
|
|
||||||
char *fmt;
|
|
||||||
int arg;
|
|
||||||
{
|
|
||||||
if (in_shell) {
|
|
||||||
printf(fmt, arg);
|
|
||||||
putchar('\n');
|
|
||||||
fflush(stdout);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
msg(fmt, arg);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef LOADAV
|
#ifdef LOADAV
|
||||||
|
|
@ -510,8 +513,8 @@ struct nlist avenrun =
|
||||||
"_avenrun"
|
"_avenrun"
|
||||||
};
|
};
|
||||||
|
|
||||||
loadav(avg)
|
void
|
||||||
reg double *avg;
|
loadav(double *avg)
|
||||||
{
|
{
|
||||||
reg int kmem;
|
reg int kmem;
|
||||||
|
|
||||||
|
|
@ -536,7 +539,8 @@ bad:
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <utmp.h>
|
#include <utmp.h>
|
||||||
struct utmp buf;
|
struct utmp buf;
|
||||||
ucount()
|
int
|
||||||
|
ucount(void)
|
||||||
{
|
{
|
||||||
reg struct utmp *up;
|
reg struct utmp *up;
|
||||||
reg FILE *utmp;
|
reg FILE *utmp;
|
||||||
|
|
@ -559,7 +563,8 @@ ucount()
|
||||||
* holiday:
|
* holiday:
|
||||||
* Returns TRUE when it is a good time to play rogue
|
* Returns TRUE when it is a good time to play rogue
|
||||||
*/
|
*/
|
||||||
holiday()
|
bool
|
||||||
|
holiday(void)
|
||||||
{
|
{
|
||||||
time_t now;
|
time_t now;
|
||||||
struct tm *localtime();
|
struct tm *localtime();
|
||||||
|
|
|
||||||
|
|
@ -30,15 +30,20 @@ static char *frontier,
|
||||||
*bits;
|
*bits;
|
||||||
static int maze_lines,
|
static int maze_lines,
|
||||||
maze_cols;
|
maze_cols;
|
||||||
char *moffset(),
|
|
||||||
*foffset();
|
void draw_maze(void);
|
||||||
|
int findcells(int y, int x);
|
||||||
|
char *foffset(int y, int x);
|
||||||
|
char *moffset(int y, int x);
|
||||||
|
void rmwall(int newy, int newx, int oldy, int oldx);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* crankout:
|
* crankout:
|
||||||
* Does actual drawing of maze to window
|
* Does actual drawing of maze to window
|
||||||
*/
|
*/
|
||||||
crankout()
|
void
|
||||||
|
crankout(void)
|
||||||
{
|
{
|
||||||
reg int x, y;
|
reg int x, y;
|
||||||
|
|
||||||
|
|
@ -71,7 +76,8 @@ crankout()
|
||||||
* domaze:
|
* domaze:
|
||||||
* Draw the maze on this level.
|
* Draw the maze on this level.
|
||||||
*/
|
*/
|
||||||
do_maze()
|
void
|
||||||
|
do_maze(void)
|
||||||
{
|
{
|
||||||
reg int least;
|
reg int least;
|
||||||
reg struct room *rp;
|
reg struct room *rp;
|
||||||
|
|
@ -95,7 +101,7 @@ do_maze()
|
||||||
/*
|
/*
|
||||||
* add some gold to make it worth looking for
|
* add some gold to make it worth looking for
|
||||||
*/
|
*/
|
||||||
item = spec_item(GOLD, NULL, NULL, NULL);
|
item = spec_item(GOLD, 0, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_count *= (rnd(10) + 1); /* add in one large hunk */
|
obj->o_count *= (rnd(10) + 1); /* add in one large hunk */
|
||||||
attach(lvl_obj, item);
|
attach(lvl_obj, item);
|
||||||
|
|
@ -108,7 +114,7 @@ do_maze()
|
||||||
/*
|
/*
|
||||||
* add in some food to make sure he has enough
|
* add in some food to make sure he has enough
|
||||||
*/
|
*/
|
||||||
item = spec_item(FOOD, NULL, NULL, NULL);
|
item = spec_item(FOOD, 0, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
attach(lvl_obj, item);
|
attach(lvl_obj, item);
|
||||||
do {
|
do {
|
||||||
|
|
@ -133,7 +139,8 @@ do_maze()
|
||||||
* draw_maze:
|
* draw_maze:
|
||||||
* Generate and draw the maze on the screen
|
* Generate and draw the maze on the screen
|
||||||
*/
|
*/
|
||||||
draw_maze()
|
void
|
||||||
|
draw_maze(void)
|
||||||
{
|
{
|
||||||
reg int i, j, more;
|
reg int i, j, more;
|
||||||
reg char *ptr;
|
reg char *ptr;
|
||||||
|
|
@ -169,8 +176,8 @@ draw_maze()
|
||||||
* findcells:
|
* findcells:
|
||||||
* Figure out cells to open up
|
* Figure out cells to open up
|
||||||
*/
|
*/
|
||||||
findcells(y,x)
|
int
|
||||||
reg int x, y;
|
findcells(int y, int x)
|
||||||
{
|
{
|
||||||
reg int rtpos, i;
|
reg int rtpos, i;
|
||||||
|
|
||||||
|
|
@ -221,8 +228,7 @@ reg int x, y;
|
||||||
* Calculate memory address for frontier
|
* Calculate memory address for frontier
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
foffset(y, x)
|
foffset(int y, int x)
|
||||||
int y, x;
|
|
||||||
{
|
{
|
||||||
|
|
||||||
return (frontier + (y * maze_cols) + x);
|
return (frontier + (y * maze_cols) + x);
|
||||||
|
|
@ -236,8 +242,7 @@ int y, x;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
maze_view(y, x)
|
maze_view(int y, int x)
|
||||||
int y, x;
|
|
||||||
{
|
{
|
||||||
register int start, goal, delta, ycheck = 0, xcheck = 0, absy, absx, see_radius;
|
register int start, goal, delta, ycheck = 0, xcheck = 0, absy, absx, see_radius;
|
||||||
register bool row;
|
register bool row;
|
||||||
|
|
@ -342,8 +347,7 @@ int y, x;
|
||||||
* Calculate memory address for bits
|
* Calculate memory address for bits
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
moffset(y, x)
|
moffset(int y, int x)
|
||||||
int y, x;
|
|
||||||
{
|
{
|
||||||
|
|
||||||
return (bits + (y * (COLS - 1)) + x);
|
return (bits + (y * (COLS - 1)) + x);
|
||||||
|
|
@ -356,8 +360,8 @@ int y, x;
|
||||||
* rmwall:
|
* rmwall:
|
||||||
* Removes appropriate walls from the maze
|
* Removes appropriate walls from the maze
|
||||||
*/
|
*/
|
||||||
rmwall(newy, newx, oldy, oldx)
|
void
|
||||||
int newy, newx, oldy, oldx;
|
rmwall(int newy, int newx, int oldy, int oldx)
|
||||||
{
|
{
|
||||||
reg int xdif,ydif;
|
reg int xdif,ydif;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,7 @@
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
|
||||||
#if defined(_WIN32) && !defined(__MINGW32__)
|
#if defined(_WIN32) && !defined(__MINGW32__)
|
||||||
#define PATH_MAX MAX_PATH
|
#define PATH_MAX MAX_PATH
|
||||||
|
|
@ -81,7 +82,7 @@
|
||||||
#define MOD_MOVE(c) (toupper(c) )
|
#define MOD_MOVE(c) (toupper(c) )
|
||||||
|
|
||||||
void
|
void
|
||||||
md_init()
|
md_init(void)
|
||||||
{
|
{
|
||||||
#ifdef __INTERIX
|
#ifdef __INTERIX
|
||||||
char *term;
|
char *term;
|
||||||
|
|
@ -132,7 +133,7 @@ md_putchar(int c)
|
||||||
static int md_standout_mode = 0;
|
static int md_standout_mode = 0;
|
||||||
|
|
||||||
int
|
int
|
||||||
md_raw_standout()
|
md_raw_standout(void)
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
|
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
|
||||||
|
|
@ -155,7 +156,7 @@ md_raw_standout()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_raw_standend()
|
md_raw_standend(void)
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
|
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
|
||||||
|
|
@ -223,7 +224,7 @@ md_fdopen(int fd, char *mode)
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_normaluser()
|
md_normaluser(void)
|
||||||
{
|
{
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
setuid(getuid());
|
setuid(getuid());
|
||||||
|
|
@ -232,7 +233,7 @@ md_normaluser()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_getuid()
|
md_getuid(void)
|
||||||
{
|
{
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
return( getuid() );
|
return( getuid() );
|
||||||
|
|
@ -242,7 +243,7 @@ md_getuid()
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_getusername()
|
md_getusername(void)
|
||||||
{
|
{
|
||||||
static char login[80];
|
static char login[80];
|
||||||
char *l = NULL;
|
char *l = NULL;
|
||||||
|
|
@ -279,7 +280,7 @@ md_getusername()
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_gethomedir()
|
md_gethomedir(void)
|
||||||
{
|
{
|
||||||
static char homedir[PATH_MAX];
|
static char homedir[PATH_MAX];
|
||||||
char *h = NULL;
|
char *h = NULL;
|
||||||
|
|
@ -335,7 +336,7 @@ md_gethomedir()
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_getshell()
|
md_getshell(void)
|
||||||
{
|
{
|
||||||
static char shell[PATH_MAX];
|
static char shell[PATH_MAX];
|
||||||
char *s = NULL;
|
char *s = NULL;
|
||||||
|
|
@ -365,7 +366,7 @@ md_getshell()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_shellescape()
|
md_shellescape(void)
|
||||||
{
|
{
|
||||||
#if (!defined(_WIN32) && !defined(__DJGPP__))
|
#if (!defined(_WIN32) && !defined(__DJGPP__))
|
||||||
int ret_status;
|
int ret_status;
|
||||||
|
|
@ -427,7 +428,7 @@ directory_exists(char *dirname)
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_getroguedir()
|
md_getroguedir(void)
|
||||||
{
|
{
|
||||||
static char path[1024];
|
static char path[1024];
|
||||||
char *end,*home;
|
char *end,*home;
|
||||||
|
|
@ -491,8 +492,7 @@ md_crypt(char *key, char *salt)
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_getpass(prompt)
|
md_getpass(char *prompt)
|
||||||
char *prompt;
|
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
static char password_buffer[9];
|
static char password_buffer[9];
|
||||||
|
|
@ -587,7 +587,7 @@ md_htonl(unsigned long int x)
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_rand()
|
md_rand(void)
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
return(rand());
|
return(rand());
|
||||||
|
|
@ -597,8 +597,7 @@ md_rand()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_srand(seed)
|
md_srand(int seed)
|
||||||
register int seed;
|
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
srand(seed);
|
srand(seed);
|
||||||
|
|
@ -608,7 +607,7 @@ register int seed;
|
||||||
}
|
}
|
||||||
|
|
||||||
long
|
long
|
||||||
md_memused()
|
md_memused(void)
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
MEMORYSTATUS stat;
|
MEMORYSTATUS stat;
|
||||||
|
|
@ -622,7 +621,7 @@ md_memused()
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_gethostname()
|
md_gethostname(void)
|
||||||
{
|
{
|
||||||
static char nodename[80];
|
static char nodename[80];
|
||||||
char *n = NULL;
|
char *n = NULL;
|
||||||
|
|
@ -644,7 +643,7 @@ md_gethostname()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_erasechar()
|
md_erasechar(void)
|
||||||
{
|
{
|
||||||
#ifdef BSD
|
#ifdef BSD
|
||||||
return(_tty.sg_erase); /* process erase character */
|
return(_tty.sg_erase); /* process erase character */
|
||||||
|
|
@ -656,7 +655,7 @@ md_erasechar()
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
md_killchar()
|
md_killchar(void)
|
||||||
{
|
{
|
||||||
#ifdef BSD
|
#ifdef BSD
|
||||||
return(_tty.sg_kill);
|
return(_tty.sg_kill);
|
||||||
|
|
@ -673,8 +672,7 @@ md_killchar()
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char *
|
char *
|
||||||
md_unctrl(ch)
|
md_unctrl(char ch)
|
||||||
char ch;
|
|
||||||
{
|
{
|
||||||
#if USG5_0
|
#if USG5_0
|
||||||
extern char *_unctrl[]; /* Defined in curses library */
|
extern char *_unctrl[]; /* Defined in curses library */
|
||||||
|
|
@ -686,7 +684,7 @@ char ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
md_flushinp()
|
md_flushinp(void)
|
||||||
{
|
{
|
||||||
#ifdef BSD
|
#ifdef BSD
|
||||||
ioctl(0, TIOCFLUSH);
|
ioctl(0, TIOCFLUSH);
|
||||||
|
|
|
||||||
|
|
@ -18,9 +18,7 @@
|
||||||
* See if a monster has some magic it can use. Use it and return TRUE if so.
|
* See if a monster has some magic it can use. Use it and return TRUE if so.
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
m_use_item(monster, monst_pos, defend_pos)
|
m_use_item(struct thing *monster, coord *monst_pos, coord *defend_pos)
|
||||||
register struct thing *monster;
|
|
||||||
register coord *monst_pos, *defend_pos;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *pitem;
|
register struct linked_list *pitem;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
@ -95,10 +93,11 @@ register coord *monst_pos, *defend_pos;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* add something to the contents of something else
|
* add something to the contents of something else
|
||||||
|
* bag: the holder of the items
|
||||||
|
* item: the item to put inside
|
||||||
*/
|
*/
|
||||||
put_contents(bag, item)
|
void
|
||||||
register struct object *bag; /* the holder of the items */
|
put_contents(struct object *bag, struct linked_list *item)
|
||||||
register struct linked_list *item; /* the item to put inside */
|
|
||||||
{
|
{
|
||||||
register struct linked_list *titem;
|
register struct linked_list *titem;
|
||||||
register struct object *tobj;
|
register struct object *tobj;
|
||||||
|
|
@ -123,10 +122,10 @@ register struct linked_list *item; /* the item to put inside */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* remove something from something else
|
* remove something from something else
|
||||||
|
* bag: the holder of the items
|
||||||
*/
|
*/
|
||||||
take_contents(bag, item)
|
void
|
||||||
register struct object *bag; /* the holder of the items */
|
take_contents(struct object *bag, struct linked_list *item)
|
||||||
register struct linked_list *item;
|
|
||||||
{
|
{
|
||||||
|
|
||||||
if (bag->o_ac <= 0) {
|
if (bag->o_ac <= 0) {
|
||||||
|
|
@ -140,8 +139,8 @@ register struct linked_list *item;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
do_bag(item)
|
void
|
||||||
register struct linked_list *item;
|
do_bag(struct linked_list *item)
|
||||||
{
|
{
|
||||||
|
|
||||||
register struct linked_list *titem = NULL;
|
register struct linked_list *titem = NULL;
|
||||||
|
|
@ -233,7 +232,8 @@ register struct linked_list *item;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
do_panic()
|
void
|
||||||
|
do_panic(void)
|
||||||
{
|
{
|
||||||
register int x,y;
|
register int x,y;
|
||||||
register struct linked_list *mon;
|
register struct linked_list *mon;
|
||||||
|
|
@ -272,8 +272,7 @@ do_panic()
|
||||||
* print miscellaneous magic bonuses
|
* print miscellaneous magic bonuses
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
misc_name(obj)
|
misc_name(struct object *obj)
|
||||||
register struct object *obj;
|
|
||||||
{
|
{
|
||||||
static char buf[LINELEN];
|
static char buf[LINELEN];
|
||||||
char buf1[LINELEN];
|
char buf1[LINELEN];
|
||||||
|
|
@ -340,7 +339,8 @@ register struct object *obj;
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
use_emori()
|
void
|
||||||
|
use_emori(void)
|
||||||
{
|
{
|
||||||
char selection; /* Cloak function */
|
char selection; /* Cloak function */
|
||||||
int state = 0; /* Menu state */
|
int state = 0; /* Menu state */
|
||||||
|
|
@ -442,8 +442,8 @@ use_emori()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
use_mm(which)
|
void
|
||||||
int which;
|
use_mm(int which)
|
||||||
{
|
{
|
||||||
register struct object *obj = NULL;
|
register struct object *obj = NULL;
|
||||||
register struct linked_list *item = NULL;
|
register struct linked_list *item = NULL;
|
||||||
|
|
@ -496,7 +496,7 @@ int which;
|
||||||
msg("The jug is empty");
|
msg("The jug is empty");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
quaff (obj->o_ac, NULL, FALSE);
|
quaff (obj->o_ac, 0, FALSE);
|
||||||
obj->o_ac = JUG_EMPTY;
|
obj->o_ac = JUG_EMPTY;
|
||||||
fuse (alchemy, obj, ALCHEMYTIME, AFTER);
|
fuse (alchemy, obj, ALCHEMYTIME, AFTER);
|
||||||
if (!(obj->o_flags & ISKNOW))
|
if (!(obj->o_flags & ISKNOW))
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
#include <stdlib.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
|
@ -21,8 +22,8 @@
|
||||||
/*
|
/*
|
||||||
* Check_residue takes care of any effect of the monster
|
* Check_residue takes care of any effect of the monster
|
||||||
*/
|
*/
|
||||||
check_residue(tp)
|
void
|
||||||
register struct thing *tp;
|
check_residue(struct thing *tp)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Take care of special abilities
|
* Take care of special abilities
|
||||||
|
|
@ -63,13 +64,11 @@ register struct thing *tp;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Creat_mons creates the specified monster -- any if 0
|
* Creat_mons creates the specified monster -- any if 0
|
||||||
|
* person: Where to create next to
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
creat_mons(person, monster, report)
|
creat_mons(struct thing *person, short monster, bool report)
|
||||||
struct thing *person; /* Where to create next to */
|
|
||||||
short monster;
|
|
||||||
bool report;
|
|
||||||
{
|
{
|
||||||
struct linked_list *nitem;
|
struct linked_list *nitem;
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
|
|
@ -121,9 +120,7 @@ bool report;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void
|
void
|
||||||
genmonsters(least, treas)
|
genmonsters(int least, bool treas)
|
||||||
register int least;
|
|
||||||
bool treas;
|
|
||||||
{
|
{
|
||||||
reg int i;
|
reg int i;
|
||||||
reg struct room *rp = &rooms[0];
|
reg struct room *rp = &rooms[0];
|
||||||
|
|
@ -166,8 +163,7 @@ bool treas;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
short
|
short
|
||||||
id_monst(monster)
|
id_monst(char monster)
|
||||||
register char monster;
|
|
||||||
{
|
{
|
||||||
register short result;
|
register short result;
|
||||||
|
|
||||||
|
|
@ -187,11 +183,8 @@ register char monster;
|
||||||
* Pick a new monster and add it to the list
|
* Pick a new monster and add it to the list
|
||||||
*/
|
*/
|
||||||
|
|
||||||
new_monster(item, type, cp, max_monster)
|
void
|
||||||
struct linked_list *item;
|
new_monster(struct linked_list *item, short type, coord *cp, bool max_monster)
|
||||||
short type;
|
|
||||||
register coord *cp;
|
|
||||||
bool max_monster;
|
|
||||||
{
|
{
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
register struct monster *mp;
|
register struct monster *mp;
|
||||||
|
|
@ -379,8 +372,7 @@ bool max_monster;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
short
|
short
|
||||||
randmonster(wander, no_unique)
|
randmonster(bool wander, bool no_unique)
|
||||||
register bool wander, no_unique;
|
|
||||||
{
|
{
|
||||||
register int d, cur_level, range, i;
|
register int d, cur_level, range, i;
|
||||||
|
|
||||||
|
|
@ -418,8 +410,8 @@ register bool wander, no_unique;
|
||||||
* to purchase something.
|
* to purchase something.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
sell(tp)
|
void
|
||||||
register struct thing *tp;
|
sell(struct thing *tp)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
@ -731,8 +723,7 @@ register struct thing *tp;
|
||||||
* what to do when the hero steps next to a monster
|
* what to do when the hero steps next to a monster
|
||||||
*/
|
*/
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
wake_monster(y, x)
|
wake_monster(int y, int x)
|
||||||
int y, x;
|
|
||||||
{
|
{
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
register struct linked_list *it;
|
register struct linked_list *it;
|
||||||
|
|
@ -957,7 +948,8 @@ int y, x;
|
||||||
* A wandering monster has awakened and is headed for the player
|
* A wandering monster has awakened and is headed for the player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wanderer()
|
void
|
||||||
|
wanderer(void)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
register struct room *hr = roomin(&hero);
|
register struct room *hr = roomin(&hero);
|
||||||
|
|
|
||||||
|
|
@ -37,9 +37,8 @@ static const char Moves[3][3] = {
|
||||||
* The guy stepped on a trap.... Make him pay.
|
* The guy stepped on a trap.... Make him pay.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
be_trapped(th, tc)
|
char
|
||||||
register struct thing *th;
|
be_trapped(struct thing *th, coord *tc)
|
||||||
register coord *tc;
|
|
||||||
{
|
{
|
||||||
register struct trap *tp;
|
register struct trap *tp;
|
||||||
register char ch;
|
register char ch;
|
||||||
|
|
@ -353,8 +352,7 @@ register coord *tc;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
blue_light(blessed, cursed)
|
blue_light(bool blessed, bool cursed)
|
||||||
bool blessed, cursed;
|
|
||||||
{
|
{
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
bool ret_val=FALSE; /* Whether or not affect is known */
|
bool ret_val=FALSE; /* Whether or not affect is known */
|
||||||
|
|
@ -413,8 +411,8 @@ bool blessed, cursed;
|
||||||
* If not, if player came from a legal place, then try to turn him.
|
* If not, if player came from a legal place, then try to turn him.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
corr_move(dy, dx)
|
void
|
||||||
int dy, dx;
|
corr_move(int dy, int dx)
|
||||||
{
|
{
|
||||||
int legal=0; /* Number of legal alternatives */
|
int legal=0; /* Number of legal alternatives */
|
||||||
register int y, x, /* Indexes though possible positions */
|
register int y, x, /* Indexes though possible positions */
|
||||||
|
|
@ -491,7 +489,8 @@ int dy, dx;
|
||||||
* dip_it:
|
* dip_it:
|
||||||
* Dip an object into a magic pool
|
* Dip an object into a magic pool
|
||||||
*/
|
*/
|
||||||
dip_it()
|
void
|
||||||
|
dip_it(void)
|
||||||
{
|
{
|
||||||
reg struct linked_list *what;
|
reg struct linked_list *what;
|
||||||
reg struct object *ob;
|
reg struct object *ob;
|
||||||
|
|
@ -667,8 +666,8 @@ dip_it()
|
||||||
* consequences (fighting, picking up, etc.)
|
* consequences (fighting, picking up, etc.)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
do_move(dy, dx)
|
void
|
||||||
int dy, dx;
|
do_move(int dy, int dx)
|
||||||
{
|
{
|
||||||
register struct room *rp, *orp;
|
register struct room *rp, *orp;
|
||||||
register char ch;
|
register char ch;
|
||||||
|
|
@ -878,8 +877,8 @@ int dy, dx;
|
||||||
* Start the hero running
|
* Start the hero running
|
||||||
*/
|
*/
|
||||||
|
|
||||||
do_run(ch)
|
void
|
||||||
char ch;
|
do_run(char ch)
|
||||||
{
|
{
|
||||||
firstmove = TRUE;
|
firstmove = TRUE;
|
||||||
running = TRUE;
|
running = TRUE;
|
||||||
|
|
@ -894,11 +893,9 @@ char ch;
|
||||||
* Returns TRUE if it could find it, FALSE otherwise.
|
* Returns TRUE if it could find it, FALSE otherwise.
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
getdelta(match, dy, dx)
|
getdelta(char match, int *dy, int *dx)
|
||||||
char match;
|
|
||||||
int *dy, *dx;
|
|
||||||
{
|
{
|
||||||
register y, x;
|
int y, x;
|
||||||
|
|
||||||
for (y = 0; y < 3; y++)
|
for (y = 0; y < 3; y++)
|
||||||
for (x = 0; x < 3; x++)
|
for (x = 0; x < 3; x++)
|
||||||
|
|
@ -915,8 +912,8 @@ int *dy, *dx;
|
||||||
* isatrap:
|
* isatrap:
|
||||||
* Returns TRUE if this character is some kind of trap
|
* Returns TRUE if this character is some kind of trap
|
||||||
*/
|
*/
|
||||||
isatrap(ch)
|
bool
|
||||||
reg char ch;
|
isatrap(char ch)
|
||||||
{
|
{
|
||||||
switch(ch) {
|
switch(ch) {
|
||||||
case DARTTRAP:
|
case DARTTRAP:
|
||||||
|
|
@ -936,8 +933,8 @@ reg char ch;
|
||||||
* If it is dark, remove anything that might move.
|
* If it is dark, remove anything that might move.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
light(cp)
|
void
|
||||||
coord *cp;
|
light(coord *cp)
|
||||||
{
|
{
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
register int j, k, x, y;
|
register int j, k, x, y;
|
||||||
|
|
@ -1113,8 +1110,7 @@ coord *cp;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bool
|
bool
|
||||||
lit_room(rp)
|
lit_room(struct room *rp)
|
||||||
register struct room *rp;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *fire_item;
|
register struct linked_list *fire_item;
|
||||||
register struct thing *fire_creature;
|
register struct thing *fire_creature;
|
||||||
|
|
@ -1150,8 +1146,7 @@ register struct room *rp;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
coord *
|
coord *
|
||||||
rndmove(who)
|
rndmove(struct thing *who)
|
||||||
struct thing *who;
|
|
||||||
{
|
{
|
||||||
register int x, y;
|
register int x, y;
|
||||||
register int ex, ey, nopen = 0;
|
register int ex, ey, nopen = 0;
|
||||||
|
|
@ -1192,9 +1187,8 @@ struct thing *who;
|
||||||
* set a trap at (y, x) on screen.
|
* set a trap at (y, x) on screen.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
set_trap(tp, y, x)
|
void
|
||||||
register struct thing *tp;
|
set_trap(struct thing *tp, int y, int x)
|
||||||
register int y, x;
|
|
||||||
{
|
{
|
||||||
register bool is_player = (tp == &player);
|
register bool is_player = (tp == &player);
|
||||||
register char selection = rnd(7) + '1';
|
register char selection = rnd(7) + '1';
|
||||||
|
|
@ -1330,8 +1324,8 @@ register int y, x;
|
||||||
* returns what a certain thing will display as to the un-initiated
|
* returns what a certain thing will display as to the un-initiated
|
||||||
*/
|
*/
|
||||||
|
|
||||||
show(y, x)
|
char
|
||||||
register int y, x;
|
show(int y, int x)
|
||||||
{
|
{
|
||||||
register char ch = CCHAR( winat(y, x) );
|
register char ch = CCHAR( winat(y, x) );
|
||||||
register struct linked_list *it;
|
register struct linked_list *it;
|
||||||
|
|
@ -1371,8 +1365,7 @@ register int y, x;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct trap *
|
struct trap *
|
||||||
trap_at(y, x)
|
trap_at(int y, int x)
|
||||||
register int y, x;
|
|
||||||
{
|
{
|
||||||
register struct trap *tp, *ep;
|
register struct trap *tp, *ep;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,11 @@
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
#define TERRASAVE 3
|
#define TERRASAVE 3
|
||||||
|
|
||||||
new_level(ltype)
|
void put_things(LEVTYPE ltype);
|
||||||
LEVTYPE ltype; /* designates type of level to create */
|
|
||||||
|
/* ltype designates type of level to create */
|
||||||
|
void
|
||||||
|
new_level(LEVTYPE ltype)
|
||||||
{
|
{
|
||||||
register int rm = 0, i, cnt;
|
register int rm = 0, i, cnt;
|
||||||
register char ch;
|
register char ch;
|
||||||
|
|
@ -409,7 +412,8 @@ LEVTYPE ltype; /* designates type of level to create */
|
||||||
* Pick a room that is really there
|
* Pick a room that is really there
|
||||||
*/
|
*/
|
||||||
|
|
||||||
rnd_room()
|
int
|
||||||
|
rnd_room(void)
|
||||||
{
|
{
|
||||||
register int rm;
|
register int rm;
|
||||||
|
|
||||||
|
|
@ -425,10 +429,11 @@ rnd_room()
|
||||||
/*
|
/*
|
||||||
* put_things:
|
* put_things:
|
||||||
* put potions and scrolls on this level
|
* put potions and scrolls on this level
|
||||||
|
* ltype: designates type of level to create
|
||||||
*/
|
*/
|
||||||
|
|
||||||
put_things(ltype)
|
void
|
||||||
LEVTYPE ltype; /* designates type of level to create */
|
put_things(LEVTYPE ltype)
|
||||||
{
|
{
|
||||||
register int i, rm, cnt;
|
register int i, rm, cnt;
|
||||||
register struct object *cur;
|
register struct object *cur;
|
||||||
|
|
@ -448,7 +453,7 @@ LEVTYPE ltype; /* designates type of level to create */
|
||||||
* Increasing chance after level 9
|
* Increasing chance after level 9
|
||||||
*/
|
*/
|
||||||
if (ltype != MAZELEV && rnd(HARDER) < level - 8) {
|
if (ltype != MAZELEV && rnd(HARDER) < level - 8) {
|
||||||
register j;
|
register int j;
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
||||||
/* Count the number of free spaces */
|
/* Count the number of free spaces */
|
||||||
|
|
|
||||||
|
|
@ -35,16 +35,16 @@ struct optstruct {
|
||||||
|
|
||||||
typedef struct optstruct OPTION;
|
typedef struct optstruct OPTION;
|
||||||
|
|
||||||
int put_bool(),
|
int get_ro(WINDOW *win, int oy, int ox);
|
||||||
get_bool(),
|
int get_restr(char *optstr, WINDOW *win);
|
||||||
put_str(),
|
int get_score(char *optstr, WINDOW *win);
|
||||||
get_str(),
|
void put_abil(int *ability, WINDOW *win);
|
||||||
get_restr(),
|
void get_abil(int *abil, WINDOW *win);
|
||||||
get_score(),
|
void put_quest(int *quest, WINDOW *win);
|
||||||
put_abil(),
|
void get_quest(int *quest, WINDOW *win);
|
||||||
get_abil(),
|
void put_bool(bool *b, WINDOW *win);
|
||||||
get_quest(),
|
int get_bool(bool *bp, WINDOW *win);
|
||||||
put_quest();
|
void put_str(char *str, WINDOW *win);
|
||||||
|
|
||||||
OPTION optlist[] = {
|
OPTION optlist[] = {
|
||||||
{"terse", "Terse output: ",
|
{"terse", "Terse output: ",
|
||||||
|
|
@ -111,9 +111,8 @@ int get_score(char *optstr, WINDOW *win)
|
||||||
/*
|
/*
|
||||||
* The ability field is read-only
|
* The ability field is read-only
|
||||||
*/
|
*/
|
||||||
get_abil(abil, win)
|
void
|
||||||
int *abil;
|
get_abil(int *abil, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
register int oy, ox;
|
register int oy, ox;
|
||||||
|
|
||||||
|
|
@ -125,9 +124,8 @@ WINDOW *win;
|
||||||
/*
|
/*
|
||||||
* The quest field is read-only
|
* The quest field is read-only
|
||||||
*/
|
*/
|
||||||
get_quest(quest, win)
|
void
|
||||||
int *quest;
|
get_quest(int *quest, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
register int oy, ox;
|
register int oy, ox;
|
||||||
|
|
||||||
|
|
@ -141,9 +139,8 @@ WINDOW *win;
|
||||||
* "Get" a read-only value.
|
* "Get" a read-only value.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
get_ro(win, oy, ox)
|
int
|
||||||
WINDOW *win;
|
get_ro(WINDOW *win, int oy, int ox)
|
||||||
register int oy, ox;
|
|
||||||
{
|
{
|
||||||
register int ny, nx;
|
register int ny, nx;
|
||||||
register bool op_bad;
|
register bool op_bad;
|
||||||
|
|
@ -180,9 +177,8 @@ register int oy, ox;
|
||||||
* allow changing a boolean option and print it out
|
* allow changing a boolean option and print it out
|
||||||
*/
|
*/
|
||||||
|
|
||||||
get_bool(bp, win)
|
int
|
||||||
bool *bp;
|
get_bool(bool *bp, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
register int oy, ox;
|
register int oy, ox;
|
||||||
register bool op_bad;
|
register bool op_bad;
|
||||||
|
|
@ -230,9 +226,8 @@ WINDOW *win;
|
||||||
/*
|
/*
|
||||||
* set a string option
|
* set a string option
|
||||||
*/
|
*/
|
||||||
get_str(opt, win)
|
int
|
||||||
register char *opt;
|
get_str(char *opt, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
register char *sp;
|
register char *sp;
|
||||||
register int c, oy, ox;
|
register int c, oy, ox;
|
||||||
|
|
@ -306,7 +301,8 @@ WINDOW *win;
|
||||||
/*
|
/*
|
||||||
* print and then set options from the terminal
|
* print and then set options from the terminal
|
||||||
*/
|
*/
|
||||||
option()
|
void
|
||||||
|
option(void)
|
||||||
{
|
{
|
||||||
register OPTION *op;
|
register OPTION *op;
|
||||||
register int retval;
|
register int retval;
|
||||||
|
|
@ -362,8 +358,8 @@ option()
|
||||||
* or the end of the entire option string.
|
* or the end of the entire option string.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
parse_opts(str)
|
void
|
||||||
register char *str;
|
parse_opts(char *str)
|
||||||
{
|
{
|
||||||
register char *sp;
|
register char *sp;
|
||||||
register OPTION *op;
|
register OPTION *op;
|
||||||
|
|
@ -459,9 +455,8 @@ register char *str;
|
||||||
/*
|
/*
|
||||||
* print the character type
|
* print the character type
|
||||||
*/
|
*/
|
||||||
put_abil(ability, win)
|
void
|
||||||
int *ability;
|
put_abil(int *ability, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
char *abil;
|
char *abil;
|
||||||
|
|
||||||
|
|
@ -480,9 +475,8 @@ WINDOW *win;
|
||||||
* print out the quest
|
* print out the quest
|
||||||
*/
|
*/
|
||||||
|
|
||||||
put_quest(quest, win)
|
void
|
||||||
int *quest;
|
put_quest(int *quest, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
waddstr(win, rel_magic[*quest].mi_name);
|
waddstr(win, rel_magic[*quest].mi_name);
|
||||||
}
|
}
|
||||||
|
|
@ -491,9 +485,8 @@ WINDOW *win;
|
||||||
/*
|
/*
|
||||||
* put out a boolean
|
* put out a boolean
|
||||||
*/
|
*/
|
||||||
put_bool(b, win)
|
void
|
||||||
bool *b;
|
put_bool(bool *b, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
waddstr(win, *b ? "True" : "False");
|
waddstr(win, *b ? "True" : "False");
|
||||||
}
|
}
|
||||||
|
|
@ -504,9 +497,8 @@ WINDOW *win;
|
||||||
/*
|
/*
|
||||||
* put out a string
|
* put out a string
|
||||||
*/
|
*/
|
||||||
put_str(str, win)
|
void
|
||||||
char *str;
|
put_str(char *str, WINDOW *win)
|
||||||
WINDOW *win;
|
|
||||||
{
|
{
|
||||||
waddstr(win, str);
|
waddstr(win, str);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,8 @@
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
extern char rnd_terrain(), get_terrain();
|
char rnd_terrain(void);
|
||||||
|
char get_terrain(char one, char two, char three, char four);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* init_terrain:
|
* init_terrain:
|
||||||
|
|
@ -19,7 +20,7 @@ extern char rnd_terrain(), get_terrain();
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void
|
void
|
||||||
init_terrain()
|
init_terrain(void)
|
||||||
{
|
{
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
||||||
|
|
@ -38,11 +39,9 @@ init_terrain()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_terrain(basey, basex, deltay, deltax, fresh)
|
do_terrain(int basey, int basex, int deltay, int deltax, bool fresh)
|
||||||
int basey, basex, deltay, deltax;
|
|
||||||
bool fresh;
|
|
||||||
{
|
{
|
||||||
register cury, curx; /* Current y and x positions */
|
int cury, curx; /* Current y and x positions */
|
||||||
|
|
||||||
/* Lay out the boundary */
|
/* Lay out the boundary */
|
||||||
for (cury=1; cury<LINES-2; cury++) { /* Vertical "walls" */
|
for (cury=1; cury<LINES-2; cury++) { /* Vertical "walls" */
|
||||||
|
|
@ -125,7 +124,7 @@ bool fresh;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char
|
char
|
||||||
rnd_terrain()
|
rnd_terrain(void)
|
||||||
{
|
{
|
||||||
int chance = rnd(100);
|
int chance = rnd(100);
|
||||||
|
|
||||||
|
|
@ -149,8 +148,7 @@ rnd_terrain()
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char
|
char
|
||||||
get_terrain(one, two, three, four)
|
get_terrain(char one, char two, char three, char four)
|
||||||
char one, two, three, four;
|
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
int forest = 0, mountain = 0, lake = 0, meadow = 0, total = 0;
|
int forest = 0, mountain = 0, lake = 0, meadow = 0, total = 0;
|
||||||
|
|
@ -203,8 +201,7 @@ char one, two, three, four;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void
|
void
|
||||||
lake_check(place)
|
lake_check(coord *place)
|
||||||
coord *place;
|
|
||||||
{
|
{
|
||||||
NOOP(place);
|
NOOP(place);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,15 +18,15 @@
|
||||||
|
|
||||||
char outstring[512]; /* ridiculously long string for use with msg */
|
char outstring[512]; /* ridiculously long string for use with msg */
|
||||||
|
|
||||||
|
bool is_type (struct object *obj, int type);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* add_pack:
|
* add_pack:
|
||||||
* Pick up an object and add it to the pack. If the argument is non-null
|
* Pick up an object and add it to the pack. If the argument is non-null
|
||||||
* use it as the linked_list pointer instead of gettting it off the ground.
|
* use it as the linked_list pointer instead of gettting it off the ground.
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
add_pack(item, silent, packret)
|
add_pack(struct linked_list *item, bool silent, struct linked_list **packret)
|
||||||
register struct linked_list *item, **packret;
|
|
||||||
bool silent;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *ip, *lp = NULL, *ap;
|
register struct linked_list *ip, *lp = NULL, *ap;
|
||||||
register struct object *obj, *op = NULL;
|
register struct object *obj, *op = NULL;
|
||||||
|
|
@ -305,9 +305,8 @@ picked_up:
|
||||||
* inventory:
|
* inventory:
|
||||||
* list what is in the pack
|
* list what is in the pack
|
||||||
*/
|
*/
|
||||||
inventory(list, type)
|
bool
|
||||||
register struct linked_list *list;
|
inventory(struct linked_list *list, int type)
|
||||||
register int type;
|
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register char ch;
|
register char ch;
|
||||||
|
|
@ -390,8 +389,8 @@ register int type;
|
||||||
* pick_up:
|
* pick_up:
|
||||||
* Add something to characters pack.
|
* Add something to characters pack.
|
||||||
*/
|
*/
|
||||||
pick_up(ch)
|
void
|
||||||
char ch;
|
pick_up(char ch)
|
||||||
{
|
{
|
||||||
switch (ch) {
|
switch (ch) {
|
||||||
default:
|
default:
|
||||||
|
|
@ -416,7 +415,7 @@ char ch;
|
||||||
* Allow player to inventory a single item
|
* Allow player to inventory a single item
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
picky_inven()
|
picky_inven(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register char ch, mch;
|
register char ch, mch;
|
||||||
|
|
@ -471,12 +470,10 @@ picky_inven()
|
||||||
/*
|
/*
|
||||||
* get_item:
|
* get_item:
|
||||||
* pick something out of a pack for a purpose
|
* pick something out of a pack for a purpose
|
||||||
|
* purpose: NULL if we should be silent (no prompts) *
|
||||||
*/
|
*/
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
get_item(list, purpose, type)
|
get_item(struct linked_list *list, char *purpose, int type)
|
||||||
reg struct linked_list *list;
|
|
||||||
char *purpose; /* NULL if we should be silent (no prompts) */
|
|
||||||
int type;
|
|
||||||
{
|
{
|
||||||
reg struct linked_list *item;
|
reg struct linked_list *item;
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
|
|
@ -610,9 +607,8 @@ int type;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pack_char(list, obj)
|
char
|
||||||
register struct object *obj;
|
pack_char(struct linked_list *list, struct object *obj)
|
||||||
struct linked_list *list;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register char c;
|
register char c;
|
||||||
|
|
@ -634,8 +630,8 @@ struct linked_list *list;
|
||||||
* cur_null:
|
* cur_null:
|
||||||
* This updates cur_weapon etc for dropping things
|
* This updates cur_weapon etc for dropping things
|
||||||
*/
|
*/
|
||||||
cur_null(op)
|
void
|
||||||
reg struct object *op;
|
cur_null(struct object *op)
|
||||||
{
|
{
|
||||||
if (op == cur_weapon) cur_weapon = NULL;
|
if (op == cur_weapon) cur_weapon = NULL;
|
||||||
else if (op == cur_armor) cur_armor = NULL;
|
else if (op == cur_armor) cur_armor = NULL;
|
||||||
|
|
@ -659,7 +655,8 @@ reg struct object *op;
|
||||||
* idenpack:
|
* idenpack:
|
||||||
* Identify all the items in the pack
|
* Identify all the items in the pack
|
||||||
*/
|
*/
|
||||||
idenpack()
|
void
|
||||||
|
idenpack(void)
|
||||||
{
|
{
|
||||||
reg struct linked_list *pc;
|
reg struct linked_list *pc;
|
||||||
|
|
||||||
|
|
@ -667,9 +664,8 @@ idenpack()
|
||||||
whatis(pc);
|
whatis(pc);
|
||||||
}
|
}
|
||||||
|
|
||||||
is_type (obj, type)
|
bool
|
||||||
register struct object *obj;
|
is_type (struct object *obj, int type)
|
||||||
register int type;
|
|
||||||
{
|
{
|
||||||
register bool current;
|
register bool current;
|
||||||
|
|
||||||
|
|
@ -804,8 +800,8 @@ register int type;
|
||||||
return(FALSE);
|
return(FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
del_pack(item)
|
void
|
||||||
register struct linked_list *item;
|
del_pack(struct linked_list *item)
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
||||||
|
|
@ -827,9 +823,8 @@ register struct linked_list *item;
|
||||||
* it to him.
|
* it to him.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
carry_obj(mp, chance)
|
void
|
||||||
register struct thing *mp;
|
carry_obj(struct thing *mp, int chance)
|
||||||
int chance;
|
|
||||||
{
|
{
|
||||||
reg struct linked_list *item;
|
reg struct linked_list *item;
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
|
|
@ -851,74 +846,74 @@ int chance;
|
||||||
* avoid it
|
* avoid it
|
||||||
*/
|
*/
|
||||||
if (on(*mp, CARRYDAGGER)) {
|
if (on(*mp, CARRYDAGGER)) {
|
||||||
item = spec_item(RELIC, MUSTY_DAGGER, NULL, NULL);
|
item = spec_item(RELIC, MUSTY_DAGGER, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYCLOAK)) {
|
if (on(*mp, CARRYCLOAK)) {
|
||||||
item = spec_item(RELIC, EMORI_CLOAK, NULL, NULL);
|
item = spec_item(RELIC, EMORI_CLOAK, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYANKH)) {
|
if (on(*mp, CARRYANKH)) {
|
||||||
item = spec_item(RELIC, HEIL_ANKH, NULL, NULL);
|
item = spec_item(RELIC, HEIL_ANKH, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYSTAFF)) {
|
if (on(*mp, CARRYSTAFF)) {
|
||||||
item = spec_item(RELIC, MING_STAFF, NULL, NULL);
|
item = spec_item(RELIC, MING_STAFF, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYWAND)) {
|
if (on(*mp, CARRYWAND)) {
|
||||||
item = spec_item(RELIC, ORCUS_WAND, NULL, NULL);
|
item = spec_item(RELIC, ORCUS_WAND, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYROD)) {
|
if (on(*mp, CARRYROD)) {
|
||||||
item = spec_item(RELIC, ASMO_ROD, NULL, NULL);
|
item = spec_item(RELIC, ASMO_ROD, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYAMULET)) {
|
if (on(*mp, CARRYAMULET)) {
|
||||||
item = spec_item(RELIC, YENDOR_AMULET, NULL, NULL);
|
item = spec_item(RELIC, YENDOR_AMULET, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (on(*mp, CARRYMANDOLIN)) {
|
if (on(*mp, CARRYMANDOLIN)) {
|
||||||
item = spec_item(RELIC, BRIAN_MANDOLIN, NULL, NULL);
|
item = spec_item(RELIC, BRIAN_MANDOLIN, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
if (on(*mp, CARRYMSTAR)) {
|
if (on(*mp, CARRYMSTAR)) {
|
||||||
item = spec_item(RELIC, HRUGGEK_MSTAR, NULL, NULL);
|
item = spec_item(RELIC, HRUGGEK_MSTAR, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
if (on(*mp, CARRYFLAIL)) {
|
if (on(*mp, CARRYFLAIL)) {
|
||||||
item = spec_item(RELIC, YEENOGHU_FLAIL, NULL, NULL);
|
item = spec_item(RELIC, YEENOGHU_FLAIL, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
}
|
}
|
||||||
if (on(*mp, CARRYHORN)) {
|
if (on(*mp, CARRYHORN)) {
|
||||||
item = spec_item(RELIC, GERYON_HORN, NULL, NULL);
|
item = spec_item(RELIC, GERYON_HORN, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
attach(mp->t_pack, item);
|
attach(mp->t_pack, item);
|
||||||
|
|
@ -927,7 +922,7 @@ int chance;
|
||||||
* If it carries gold, give it some
|
* If it carries gold, give it some
|
||||||
*/
|
*/
|
||||||
if (on(*mp, CARRYGOLD) && rnd(100) < chance) {
|
if (on(*mp, CARRYGOLD) && rnd(100) < chance) {
|
||||||
item = spec_item(GOLD, NULL, NULL, NULL);
|
item = spec_item(GOLD, 0, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_count = GOLDCALC + GOLDCALC;
|
obj->o_count = GOLDCALC + GOLDCALC;
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
|
|
@ -938,7 +933,7 @@ int chance;
|
||||||
* If it carries food, give it some
|
* If it carries food, give it some
|
||||||
*/
|
*/
|
||||||
if (on(*mp, CARRYFOOD) && rnd(100) < chance) {
|
if (on(*mp, CARRYFOOD) && rnd(100) < chance) {
|
||||||
item = spec_item(FOOD, NULL, NULL, NULL);
|
item = spec_item(FOOD, 0, 0, 0);
|
||||||
obj = OBJPTR(item);
|
obj = OBJPTR(item);
|
||||||
obj->o_weight = things[TYP_FOOD].mi_wght;
|
obj->o_weight = things[TYP_FOOD].mi_wght;
|
||||||
obj->o_pos = mp->t_pos;
|
obj->o_pos = mp->t_pos;
|
||||||
|
|
@ -1041,8 +1036,8 @@ int chance;
|
||||||
* he wants (* means everything).
|
* he wants (* means everything).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
grab(y, x)
|
int
|
||||||
register y, x;
|
grab(int y, int x)
|
||||||
{
|
{
|
||||||
register struct linked_list *next_item, *item;
|
register struct linked_list *next_item, *item;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
|
||||||
|
|
@ -14,15 +14,20 @@
|
||||||
* See the file LICENSE.TXT for full copyright and licensing information.
|
* See the file LICENSE.TXT for full copyright and licensing information.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
void conn(int r1, int r2);
|
||||||
|
void door(struct room *rm, coord *cp);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* do_passages:
|
* do_passages:
|
||||||
* Draw all the passages on a level.
|
* Draw all the passages on a level.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
do_passages()
|
void
|
||||||
|
do_passages(void)
|
||||||
{
|
{
|
||||||
register struct rdes *r1, *r2 = NULL;
|
register struct rdes *r1, *r2 = NULL;
|
||||||
register int i, j;
|
register int i, j;
|
||||||
|
|
@ -130,8 +135,8 @@ do_passages()
|
||||||
* Draw a corridor from a room in a certain direction.
|
* Draw a corridor from a room in a certain direction.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
conn(r1, r2)
|
void
|
||||||
int r1, r2;
|
conn(int r1, int r2)
|
||||||
{
|
{
|
||||||
register struct room *rpf, *rpt = NULL;
|
register struct room *rpf, *rpt = NULL;
|
||||||
register char rmt;
|
register char rmt;
|
||||||
|
|
@ -266,9 +271,8 @@ int r1, r2;
|
||||||
* also enters the door in the exits array of the room.
|
* also enters the door in the exits array of the room.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
door(rm, cp)
|
void
|
||||||
register struct room *rm;
|
door(struct room *rm, coord *cp)
|
||||||
register coord *cp;
|
|
||||||
{
|
{
|
||||||
struct linked_list *newroom;
|
struct linked_list *newroom;
|
||||||
coord *exit;
|
coord *exit;
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,8 @@
|
||||||
* cleric affecting undead
|
* cleric affecting undead
|
||||||
*/
|
*/
|
||||||
|
|
||||||
affect()
|
void
|
||||||
|
affect(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
|
|
@ -121,7 +122,8 @@ annoy:
|
||||||
/*
|
/*
|
||||||
* the magic user is going to try and cast a spell
|
* the magic user is going to try and cast a spell
|
||||||
*/
|
*/
|
||||||
cast()
|
void
|
||||||
|
cast(void)
|
||||||
{
|
{
|
||||||
register int i, num_spells, spell_ability;
|
register int i, num_spells, spell_ability;
|
||||||
int which_spell;
|
int which_spell;
|
||||||
|
|
@ -271,7 +273,8 @@ cast()
|
||||||
|
|
||||||
/* Constitution bonus */
|
/* Constitution bonus */
|
||||||
|
|
||||||
const_bonus() /* Hit point adjustment for changing levels */
|
int
|
||||||
|
const_bonus(void) /* Hit point adjustment for changing levels */
|
||||||
{
|
{
|
||||||
if (pstats.s_const > 6 && pstats.s_const <= 14)
|
if (pstats.s_const > 6 && pstats.s_const <= 14)
|
||||||
return(0);
|
return(0);
|
||||||
|
|
@ -290,7 +293,8 @@ const_bonus() /* Hit point adjustment for changing levels */
|
||||||
* Sense gold
|
* Sense gold
|
||||||
*/
|
*/
|
||||||
|
|
||||||
gsense()
|
void
|
||||||
|
gsense(void)
|
||||||
{
|
{
|
||||||
/* Only thieves can do this */
|
/* Only thieves can do this */
|
||||||
if (player.t_ctype != C_THIEF) {
|
if (player.t_ctype != C_THIEF) {
|
||||||
|
|
@ -324,7 +328,8 @@ gsense()
|
||||||
/*
|
/*
|
||||||
* the cleric asks his deity for a spell
|
* the cleric asks his deity for a spell
|
||||||
*/
|
*/
|
||||||
pray()
|
void
|
||||||
|
pray(void)
|
||||||
{
|
{
|
||||||
register int i, num_prayers, prayer_ability;
|
register int i, num_prayers, prayer_ability;
|
||||||
int which_prayer;
|
int which_prayer;
|
||||||
|
|
@ -488,7 +493,8 @@ pray()
|
||||||
* Steal in direction given in delta
|
* Steal in direction given in delta
|
||||||
*/
|
*/
|
||||||
|
|
||||||
steal()
|
void
|
||||||
|
steal(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct thing *tp;
|
register struct thing *tp;
|
||||||
|
|
|
||||||
|
|
@ -17,14 +17,16 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
void res_intelligence(void);
|
||||||
|
void res_wisdom(void);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Increase player's constitution
|
* Increase player's constitution
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_const(cursed)
|
void
|
||||||
bool cursed;
|
add_const(bool cursed)
|
||||||
{
|
{
|
||||||
/* Do the potion */
|
/* Do the potion */
|
||||||
if (cursed) {
|
if (cursed) {
|
||||||
|
|
@ -47,8 +49,8 @@ bool cursed;
|
||||||
* Increase player's dexterity
|
* Increase player's dexterity
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_dexterity(cursed)
|
void
|
||||||
bool cursed;
|
add_dexterity(bool cursed)
|
||||||
{
|
{
|
||||||
int ring_str; /* Value of ring strengths */
|
int ring_str; /* Value of ring strengths */
|
||||||
|
|
||||||
|
|
@ -80,8 +82,8 @@ bool cursed;
|
||||||
* add a haste to the player
|
* add a haste to the player
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_haste(blessed)
|
void
|
||||||
bool blessed;
|
add_haste(bool blessed)
|
||||||
{
|
{
|
||||||
int hasttime;
|
int hasttime;
|
||||||
|
|
||||||
|
|
@ -110,8 +112,8 @@ bool blessed;
|
||||||
/*
|
/*
|
||||||
* Increase player's intelligence
|
* Increase player's intelligence
|
||||||
*/
|
*/
|
||||||
add_intelligence(cursed)
|
void
|
||||||
bool cursed;
|
add_intelligence(bool cursed)
|
||||||
{
|
{
|
||||||
int ring_str; /* Value of ring strengths */
|
int ring_str; /* Value of ring strengths */
|
||||||
|
|
||||||
|
|
@ -141,7 +143,8 @@ bool cursed;
|
||||||
/*
|
/*
|
||||||
* this routine makes the hero move slower
|
* this routine makes the hero move slower
|
||||||
*/
|
*/
|
||||||
add_slow()
|
void
|
||||||
|
add_slow(void)
|
||||||
{
|
{
|
||||||
if (on(player, ISHASTE)) { /* Already sped up */
|
if (on(player, ISHASTE)) { /* Already sped up */
|
||||||
extinguish(nohaste);
|
extinguish(nohaste);
|
||||||
|
|
@ -164,8 +167,8 @@ add_slow()
|
||||||
* Increase player's strength
|
* Increase player's strength
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_strength(cursed)
|
void
|
||||||
bool cursed;
|
add_strength(bool cursed)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (cursed) {
|
if (cursed) {
|
||||||
|
|
@ -182,8 +185,8 @@ bool cursed;
|
||||||
* Increase player's wisdom
|
* Increase player's wisdom
|
||||||
*/
|
*/
|
||||||
|
|
||||||
add_wisdom(cursed)
|
void
|
||||||
bool cursed;
|
add_wisdom(bool cursed)
|
||||||
{
|
{
|
||||||
int ring_str; /* Value of ring strengths */
|
int ring_str; /* Value of ring strengths */
|
||||||
|
|
||||||
|
|
@ -215,8 +218,8 @@ bool cursed;
|
||||||
* Lower a level of experience
|
* Lower a level of experience
|
||||||
*/
|
*/
|
||||||
|
|
||||||
lower_level(who)
|
void
|
||||||
short who;
|
lower_level(short who)
|
||||||
{
|
{
|
||||||
int fewer, nsides = 0;
|
int fewer, nsides = 0;
|
||||||
|
|
||||||
|
|
@ -239,10 +242,8 @@ short who;
|
||||||
death(who);
|
death(who);
|
||||||
}
|
}
|
||||||
|
|
||||||
quaff(which, flag, is_potion)
|
void
|
||||||
int which;
|
quaff(int which, int flag, bool is_potion)
|
||||||
int flag;
|
|
||||||
bool is_potion;
|
|
||||||
{
|
{
|
||||||
register struct object *obj = NULL;
|
register struct object *obj = NULL;
|
||||||
register struct linked_list *item, *titem;
|
register struct linked_list *item, *titem;
|
||||||
|
|
@ -625,8 +626,8 @@ bool is_potion;
|
||||||
* if called with zero the restore fully
|
* if called with zero the restore fully
|
||||||
*/
|
*/
|
||||||
|
|
||||||
res_dexterity(howmuch)
|
void
|
||||||
int howmuch;
|
res_dexterity(int howmuch)
|
||||||
{
|
{
|
||||||
short save_max;
|
short save_max;
|
||||||
int ring_str;
|
int ring_str;
|
||||||
|
|
@ -656,7 +657,8 @@ int howmuch;
|
||||||
* Restore player's intelligence
|
* Restore player's intelligence
|
||||||
*/
|
*/
|
||||||
|
|
||||||
res_intelligence()
|
void
|
||||||
|
res_intelligence(void)
|
||||||
{
|
{
|
||||||
short save_max;
|
short save_max;
|
||||||
int ring_str;
|
int ring_str;
|
||||||
|
|
@ -680,7 +682,8 @@ res_intelligence()
|
||||||
* Restore player's wisdom
|
* Restore player's wisdom
|
||||||
*/
|
*/
|
||||||
|
|
||||||
res_wisdom()
|
void
|
||||||
|
res_wisdom(void)
|
||||||
{
|
{
|
||||||
short save_max;
|
short save_max;
|
||||||
int ring_str;
|
int ring_str;
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,8 @@
|
||||||
/*
|
/*
|
||||||
* how much food does this ring use up?
|
* how much food does this ring use up?
|
||||||
*/
|
*/
|
||||||
ring_eat(hand)
|
int
|
||||||
register int hand;
|
ring_eat(int hand)
|
||||||
{
|
{
|
||||||
if (cur_ring[hand] == NULL)
|
if (cur_ring[hand] == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
@ -45,8 +45,8 @@ register int hand;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ring_on(obj)
|
void
|
||||||
register struct object *obj;
|
ring_on(struct object *obj)
|
||||||
{
|
{
|
||||||
register int save_max;
|
register int save_max;
|
||||||
char buf[LINELEN];
|
char buf[LINELEN];
|
||||||
|
|
@ -112,8 +112,7 @@ register struct object *obj;
|
||||||
* print ring bonuses
|
* print ring bonuses
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
ring_num(obj)
|
ring_num(struct object *obj)
|
||||||
register struct object *obj;
|
|
||||||
{
|
{
|
||||||
static char buf[5];
|
static char buf[5];
|
||||||
|
|
||||||
|
|
@ -147,7 +146,8 @@ register struct object *obj;
|
||||||
/*
|
/*
|
||||||
* Return the effect of the specified ring
|
* Return the effect of the specified ring
|
||||||
*/
|
*/
|
||||||
ring_value(type)
|
int
|
||||||
|
ring_value(int type)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -71,15 +71,17 @@ static char *rip[] = {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
char *killname();
|
char *killname(short monst);
|
||||||
|
void scorein(struct sc_ent scores[], int fd);
|
||||||
|
void scoreout(struct sc_ent scores[], FILE *outf);
|
||||||
|
void showpack(char *howso);
|
||||||
|
int update(struct sc_ent top_ten[], unsigned long amount, short quest,
|
||||||
|
char *whoami, short flags, short level, short monst, short ctype,
|
||||||
|
char *system, char *login);
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
byebye(sig)
|
byebye(int sig)
|
||||||
int sig;
|
|
||||||
{
|
{
|
||||||
NOOP(sig);
|
NOOP(sig);
|
||||||
if (!isendwin()) {
|
if (!isendwin()) {
|
||||||
|
|
@ -96,8 +98,8 @@ int sig;
|
||||||
* Do something really fun when he dies
|
* Do something really fun when he dies
|
||||||
*/
|
*/
|
||||||
|
|
||||||
death(monst)
|
void
|
||||||
register short monst;
|
death(short monst)
|
||||||
{
|
{
|
||||||
register char **dp = rip, *killer;
|
register char **dp = rip, *killer;
|
||||||
register struct tm *lt;
|
register struct tm *lt;
|
||||||
|
|
@ -125,8 +127,7 @@ register short monst;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
killname(monst)
|
killname(short monst)
|
||||||
register short monst;
|
|
||||||
{
|
{
|
||||||
static char mons_name[LINELEN];
|
static char mons_name[LINELEN];
|
||||||
int i;
|
int i;
|
||||||
|
|
@ -162,9 +163,8 @@ register short monst;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* VARARGS2 */
|
/* VARARGS2 */
|
||||||
score(amount, flags, monst)
|
void
|
||||||
unsigned long amount;
|
score(unsigned long amount, int flags, short monst)
|
||||||
short monst;
|
|
||||||
{
|
{
|
||||||
static struct sc_ent top_ten[NUMSCORE];
|
static struct sc_ent top_ten[NUMSCORE];
|
||||||
register struct sc_ent *scp;
|
register struct sc_ent *scp;
|
||||||
|
|
@ -626,9 +626,8 @@ void writelog(unsigned long amount, int flags, short monst) {
|
||||||
* Convert a character string that has been translated from a
|
* Convert a character string that has been translated from a
|
||||||
* score file by scoreout() back to a score file structure.
|
* score file by scoreout() back to a score file structure.
|
||||||
*/
|
*/
|
||||||
scorein(scores, fd)
|
void
|
||||||
struct sc_ent scores[];
|
scorein(struct sc_ent scores[], int fd)
|
||||||
int fd;
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char scoreline[100];
|
char scoreline[100];
|
||||||
|
|
@ -652,9 +651,8 @@ int fd;
|
||||||
* this for compatibility sake since some machines write out fields in
|
* this for compatibility sake since some machines write out fields in
|
||||||
* different orders.
|
* different orders.
|
||||||
*/
|
*/
|
||||||
scoreout(scores, outf)
|
void
|
||||||
struct sc_ent scores[];
|
scoreout(struct sc_ent scores[], FILE *outf)
|
||||||
FILE *outf;
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char scoreline[100];
|
char scoreline[100];
|
||||||
|
|
@ -676,8 +674,8 @@ FILE *outf;
|
||||||
* showpack:
|
* showpack:
|
||||||
* Display the contents of the hero's pack
|
* Display the contents of the hero's pack
|
||||||
*/
|
*/
|
||||||
showpack(howso)
|
void
|
||||||
char *howso;
|
showpack(char *howso)
|
||||||
{
|
{
|
||||||
reg char *iname;
|
reg char *iname;
|
||||||
reg int cnt, packnum;
|
reg int cnt, packnum;
|
||||||
|
|
@ -706,7 +704,8 @@ char *howso;
|
||||||
refresh();
|
refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
total_winner()
|
void
|
||||||
|
total_winner(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
@ -760,11 +759,10 @@ total_winner()
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
update(top_ten, amount, quest, whoami, flags, level, monst, ctype, system, login)
|
int
|
||||||
struct sc_ent top_ten[];
|
update(struct sc_ent top_ten[], unsigned long amount, short quest,
|
||||||
unsigned long amount;
|
char *whoami, short flags, short level, short monst, short ctype,
|
||||||
short quest, flags, level, monst, ctype;
|
char *system, char *login)
|
||||||
char *whoami, *system, *login;
|
|
||||||
{
|
{
|
||||||
register struct sc_ent *scp, *sc2;
|
register struct sc_ent *scp, *sc2;
|
||||||
int retval=0; /* 1 if a change, 0 otherwise */
|
int retval=0; /* 1 if a change, 0 otherwise */
|
||||||
|
|
|
||||||
284
arogue5/rogue.h
284
arogue5/rogue.h
|
|
@ -943,48 +943,260 @@ struct spells {
|
||||||
int s_flag; /* is the spell blessed/cursed? */
|
int s_flag; /* is the spell blessed/cursed? */
|
||||||
};
|
};
|
||||||
|
|
||||||
struct linked_list *find_mons(), *find_obj(), *get_item(), *new_item(),
|
void _attach(struct linked_list **list, struct linked_list *item);
|
||||||
*new_thing(), *wake_monster(), *get_hurl(),
|
void _detach(struct linked_list **list, struct linked_list *item);
|
||||||
*spec_item(), *creat_item();
|
void _o_free_list(struct linked_list **ptr);
|
||||||
struct object *wield_weap();
|
void _t_free_list(struct linked_list **ptr);
|
||||||
struct room *roomin();
|
int ac_compute(void);
|
||||||
struct trap *trap_at();
|
void activity(void);
|
||||||
|
void add_dexterity(bool cursed);
|
||||||
char *tr_name(), *new(),
|
void add_intelligence(bool cursed);
|
||||||
*vowelstr(), *inv_name(),
|
bool add_pack(struct linked_list *item, bool silent,
|
||||||
*ctime(), *num(), *ring_num(), *misc_num(), *blesscurse(), *typ_name(),
|
struct linked_list **packret);
|
||||||
*weap_name(), *misc_name();
|
void add_slow(void);
|
||||||
coord *rndmove(), *can_shoot(), *fallpos();
|
void add_wisdom(bool cursed);
|
||||||
short randmonster(), id_monst();
|
void addmsg(char *fmt, ...);
|
||||||
void quit(int sig), tstp(int sig), auto_save(int sig), bugkill(int sig), endit(int sig);
|
void affect(void);
|
||||||
int rnd(), wghtchk(), nohaste(), res_strength(),
|
void aggravate(void);
|
||||||
doctor(), runners(), swander(), unconfuse(), unsee(), fumble(),
|
void alchemy(struct object *obj);
|
||||||
unclrhead(), unphase(), noslow(), rollwand(), stomach(), sight(),
|
void appear(void);
|
||||||
unstink(), suffocate(), cure_disease(), un_itch(), shoot_bolt(),
|
bool attack(struct thing *mp, struct object *weapon, bool thrown);
|
||||||
appear(), dust_appear(), unchoke(), alchemy(), trap_look(), strangle(),
|
void auto_save(int sig);
|
||||||
ring_teleport(), ring_search(), grab();
|
char be_trapped(struct thing *th, coord *tc);
|
||||||
bool blue_light(), can_blink(), creat_mons(), add_pack(),
|
char *blesscurse(int flags);
|
||||||
straight_shot(), maze_view(), lit_room(), getdelta(), save_file(),
|
bool blue_light(bool blessed, bool cursed);
|
||||||
save_game();
|
void bugkill(int sig);
|
||||||
long check_level();
|
void buy_it(void);
|
||||||
void byebye(int sig), genmonsters();
|
void byebye(int sig);
|
||||||
int land(), undance();
|
void cast(void);
|
||||||
|
bool can_blink(struct thing *tp);
|
||||||
|
coord *can_shoot(coord *er, coord *ee);
|
||||||
|
bool cansee(int y, int x);
|
||||||
|
void carry_obj(struct thing *mp, int chance);
|
||||||
|
long check_level(bool get_spells);
|
||||||
|
void check_residue(struct thing *tp);
|
||||||
|
void chg_str(int amt);
|
||||||
|
void command(void);
|
||||||
|
int const_bonus(void);
|
||||||
|
void corr_move(int dy, int dx);
|
||||||
|
struct linked_list *creat_item(void);
|
||||||
|
bool creat_mons(struct thing *person, short monster, bool report);
|
||||||
|
void create_obj(bool prompt, int which_item, int which_type);
|
||||||
|
void cur_null(struct object *op);
|
||||||
|
void cure_disease(void);
|
||||||
|
void dbotline(WINDOW *scr, char *message);
|
||||||
|
void death(short monst);
|
||||||
|
void del_pack(struct linked_list *item);
|
||||||
|
void destroy_item(struct linked_list *item);
|
||||||
|
int dex_compute(void);
|
||||||
|
int dext_prot(int dexterity);
|
||||||
|
bool diag_ok(coord *sp, coord *ep, struct thing *flgptr);
|
||||||
|
void dip_it(void);
|
||||||
|
void do_daemons(int flag);
|
||||||
|
void do_fuses(int flag);
|
||||||
|
void do_maze(void);
|
||||||
|
void do_motion(struct object *obj, int ydelta, int xdelta, struct thing *tp);
|
||||||
|
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_terrain(int basey, int basex, int deltay, int deltax, bool fresh);
|
||||||
|
bool do_zap(bool gotdir, int which, int flag);
|
||||||
|
void doctor(struct thing *tp);
|
||||||
|
void draw_room(struct room *rp);
|
||||||
|
bool drop(struct linked_list *item);
|
||||||
|
bool dropcheck(struct object *op);
|
||||||
|
void dust_appear(void);
|
||||||
|
void eat(void);
|
||||||
|
int encread(char *start, unsigned int size, int inf);
|
||||||
|
int encwrite(char *start, unsigned int size, FILE *outf);
|
||||||
|
void endit(int sig);
|
||||||
|
void endmsg(void);
|
||||||
|
void extinguish(int (*func)());
|
||||||
|
void fall(struct linked_list *item, bool pr);
|
||||||
|
coord *fallpos(coord *pos, bool be_clear, int range);
|
||||||
|
void fatal(char *s);
|
||||||
|
bool fight(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);
|
||||||
|
struct delayed_action *find_slot(int (*func)());
|
||||||
|
void fix_stick(struct object *cur);
|
||||||
|
void fumble(void);
|
||||||
|
void fuse(int (*func)(), void *arg, int time, int type);
|
||||||
|
void genmonsters(int least, bool treas);
|
||||||
|
bool get_dir(void);
|
||||||
|
struct linked_list *get_item(struct linked_list *list, char *purpose, int type);
|
||||||
|
int get_str(char *opt, WINDOW *win);
|
||||||
|
int get_worth(struct object *obj);
|
||||||
|
int getbless(void);
|
||||||
|
int getdeath(void);
|
||||||
|
bool getdelta(char match, int *dy, int *dx);
|
||||||
|
int grab(int y, int x);
|
||||||
|
void gsense(void);
|
||||||
|
bool hit_monster(int y, int x, struct object *obj, struct thing *tp);
|
||||||
|
int hitweight(void);
|
||||||
|
short id_monst(char monster);
|
||||||
|
void idenpack(void);
|
||||||
|
void init_colors(void);
|
||||||
|
void init_materials(void);
|
||||||
|
void init_misc(void);
|
||||||
|
void init_names(void);
|
||||||
|
void init_player(void);
|
||||||
|
void init_stones(void);
|
||||||
|
void init_terrain(void);
|
||||||
|
void init_things(void);
|
||||||
|
void init_weapon(struct object *weap, char type);
|
||||||
|
char *inv_name(struct object *obj, bool drop);
|
||||||
|
bool inventory(struct linked_list *list, int type);
|
||||||
|
bool is_current(struct object *obj);
|
||||||
|
bool is_magic(struct object *obj);
|
||||||
|
bool isatrap(char ch);
|
||||||
|
int itemweight(struct object *wh);
|
||||||
|
void kill_daemon(int (*func)());
|
||||||
|
void killed(struct linked_list *item, bool pr, bool points);
|
||||||
|
void lake_check(coord *place);
|
||||||
|
void land(void);
|
||||||
|
void lengthen(int (*func)(), int xtime);
|
||||||
|
void light(coord *cp);
|
||||||
|
bool lit_room(struct room *rp);
|
||||||
|
void look(bool wakeup, bool runend);
|
||||||
|
void lower_level(short who);
|
||||||
|
bool m_use_item(struct thing *monster, coord *monst_pos, coord *defend_pos);
|
||||||
|
short makemonster(bool create);
|
||||||
|
bool maze_view(int y, int x);
|
||||||
|
char *misc_name(struct object *obj);
|
||||||
|
void missile(int ydelta, int xdelta, struct linked_list *item,
|
||||||
|
struct thing *tp);
|
||||||
|
void msg(char *fmt, ...);
|
||||||
|
unsigned long netread(int *error, int size, FILE *stream);
|
||||||
|
int netwrite(unsigned long value, int size, FILE *stream);
|
||||||
|
char *new(int size);
|
||||||
|
struct linked_list *new_item(int size);
|
||||||
|
void new_level(LEVTYPE ltype);
|
||||||
|
void new_monster(struct linked_list *item, short type, coord *cp,
|
||||||
|
bool max_monster);
|
||||||
|
struct linked_list *new_thing(int thing_type);
|
||||||
|
void nohaste(void);
|
||||||
|
void noslow(void);
|
||||||
|
char *num(int n1, int n2);
|
||||||
|
void o_discard(struct linked_list *item);
|
||||||
|
void option(void);
|
||||||
|
char pack_char(struct linked_list *list, struct object *obj);
|
||||||
|
void parse_opts(char *str);
|
||||||
|
bool passwd(void);
|
||||||
|
int pick_one(struct magic_item *magic, int nitems);
|
||||||
|
void pick_up(char ch);
|
||||||
|
void picky_inven(void);
|
||||||
|
void playit(void);
|
||||||
|
void pray(void);
|
||||||
|
bool price_it(void);
|
||||||
|
void quaff(int which, int flag, bool is_potion);
|
||||||
|
void quit(int sig);
|
||||||
|
void raise_level(bool get_spells);
|
||||||
|
short randmonster(bool wander, bool no_unique);
|
||||||
|
void read_scroll(int which, int flag, bool is_scroll);
|
||||||
|
int readchar(void);
|
||||||
|
void res_dexterity(int howmuch);
|
||||||
|
void res_strength(void);
|
||||||
|
bool restore(char *file, char **envp);
|
||||||
|
void restscr(WINDOW *scr);
|
||||||
|
int ring_eat(int hand);
|
||||||
|
char *ring_num(struct object *obj);
|
||||||
|
void ring_on(struct object *obj);
|
||||||
|
void ring_search(void);
|
||||||
|
void ring_teleport(void);
|
||||||
|
int ring_value(int type);
|
||||||
|
int rnd(int range);
|
||||||
|
void rnd_pos(struct room *rp, coord *cp);
|
||||||
|
int rnd_room(void);
|
||||||
|
coord *rndmove(struct thing *who);
|
||||||
|
int roll(int number, int sides);
|
||||||
|
void rollwand(void);
|
||||||
|
struct room *roomin(coord *cp);
|
||||||
|
int rs_restore_file(int inf);
|
||||||
|
int rs_save_file(FILE *savef);
|
||||||
|
void runners(void);
|
||||||
|
void runto(struct thing *runner, coord *spot);
|
||||||
|
bool save(int which, struct thing *who, int adj);
|
||||||
|
bool save_game(void);
|
||||||
|
void score(unsigned long amount, int flags, short monst);
|
||||||
|
void search(bool is_thief, bool door_chime);
|
||||||
|
char secretdoor(int y, int x);
|
||||||
|
void sell(struct thing *tp);
|
||||||
|
void sell_it(void);
|
||||||
|
void set_trap(struct thing *tp, int y, int x);
|
||||||
|
void setup(void);
|
||||||
|
bool shoot_bolt(struct thing *shooter, coord start, coord dir,
|
||||||
|
bool get_points, short reason, char *name, int damage);
|
||||||
|
bool shoot_ok(char ch);
|
||||||
|
char show(int y, int x);
|
||||||
|
void sight(void);
|
||||||
|
struct linked_list *spec_item(int type, int which, int hit, int damage);
|
||||||
|
void start_daemon(int (*func)(), void *arg, int type);
|
||||||
|
void status(bool display);
|
||||||
|
void steal(void);
|
||||||
|
bool step_ok(int y, int x, int can_on_monst, struct thing *flgptr);
|
||||||
|
void stomach(void);
|
||||||
|
int str_compute(void);
|
||||||
|
void strangle(void);
|
||||||
|
void strucpy(char *s1, char *s2, int len);
|
||||||
|
void suffocate(void);
|
||||||
|
void swander(void);
|
||||||
|
bool swing(short class, int at_lvl, int op_arm, int wplus);
|
||||||
|
void t_discard(struct linked_list *item);
|
||||||
|
void take_off(void);
|
||||||
|
int teleport(void);
|
||||||
|
void total_winner(void);
|
||||||
|
int totalenc(void);
|
||||||
|
char *tr_name(char ch);
|
||||||
|
struct trap *trap_at(int y, int x);
|
||||||
|
void trap_look(void);
|
||||||
|
void un_itch(void);
|
||||||
|
void unchoke(void);
|
||||||
|
void unclrhead(void);
|
||||||
|
void unconfuse(void);
|
||||||
|
void undance(void);
|
||||||
|
void unphase(void);
|
||||||
|
void unsee(void);
|
||||||
|
void unstink(void);
|
||||||
|
void updpack(bool getmax);
|
||||||
|
void use_mm(int which);
|
||||||
|
char *vowelstr(char *str);
|
||||||
|
void wait_for(WINDOW *win, char ch);
|
||||||
|
struct linked_list *wake_monster(int y, int x);
|
||||||
|
void waste_time(void);
|
||||||
|
char *weap_name(struct object *obj);
|
||||||
|
void wear(void);
|
||||||
|
void wghtchk(void);
|
||||||
|
void whatis(struct linked_list *what);
|
||||||
|
void wield(void);
|
||||||
void writelog(unsigned long amount, int flags, short monst);
|
void writelog(unsigned long amount, int flags, short monst);
|
||||||
|
|
||||||
#ifdef CHECKTIME
|
#ifdef CHECKTIME
|
||||||
int checkout();
|
int checkout();
|
||||||
#endif
|
#endif
|
||||||
extern char *md_getusername();
|
extern char *md_getusername(void);
|
||||||
extern char *md_gethomedir();
|
extern char *md_gethomedir(void);
|
||||||
extern void md_flushinp();
|
extern void md_flushinp(void);
|
||||||
extern char *md_getshell();
|
extern char *md_getshell(void);
|
||||||
extern char *md_gethostname();
|
extern char *md_gethostname(void);
|
||||||
extern void md_dobinaryio();
|
extern char *md_getpass(char *prompt);
|
||||||
extern char *md_getpass();
|
extern char *md_crypt(char *key, char *salt);
|
||||||
extern char *md_crypt();
|
extern char *md_getroguedir(void);
|
||||||
extern char *md_getroguedir();
|
extern void md_init(void);
|
||||||
extern void md_init();
|
|
||||||
extern FILE * md_fdopen(int fd, char *mode);
|
extern FILE * md_fdopen(int fd, char *mode);
|
||||||
extern int md_unlink(char *file);
|
extern int md_unlink(char *file);
|
||||||
|
extern int md_normaluser(void);
|
||||||
|
extern int md_getuid(void);
|
||||||
|
extern long md_memused(void);
|
||||||
|
extern void md_reopen_score(void);
|
||||||
|
extern int md_readchar(WINDOW *win);
|
||||||
|
extern int md_shellescape(void);
|
||||||
|
extern int md_srand(int seed);
|
||||||
|
extern int md_rand(void);
|
||||||
|
extern int md_erasechar(void);
|
||||||
|
extern int md_killchar(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Now all the global variables
|
* Now all the global variables
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,11 @@
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
do_rooms()
|
void horiz(int cnt);
|
||||||
|
void vert(int cnt);
|
||||||
|
|
||||||
|
void
|
||||||
|
do_rooms(void)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
@ -99,7 +103,7 @@ do_rooms()
|
||||||
|
|
||||||
has_gold = TRUE; /* This room has gold in it */
|
has_gold = TRUE; /* This room has gold in it */
|
||||||
|
|
||||||
item = spec_item(GOLD, NULL, NULL, NULL);
|
item = spec_item(GOLD, 0, 0, 0);
|
||||||
cur = OBJPTR(item);
|
cur = OBJPTR(item);
|
||||||
|
|
||||||
/* Put the gold into the level list of items */
|
/* Put the gold into the level list of items */
|
||||||
|
|
@ -153,8 +157,8 @@ do_rooms()
|
||||||
* Draw a box around a room
|
* Draw a box around a room
|
||||||
*/
|
*/
|
||||||
|
|
||||||
draw_room(rp)
|
void
|
||||||
register struct room *rp;
|
draw_room(struct room *rp)
|
||||||
{
|
{
|
||||||
register int j, k;
|
register int j, k;
|
||||||
|
|
||||||
|
|
@ -181,8 +185,8 @@ register struct room *rp;
|
||||||
* draw a horizontal line
|
* draw a horizontal line
|
||||||
*/
|
*/
|
||||||
|
|
||||||
horiz(cnt)
|
void
|
||||||
register int cnt;
|
horiz(int cnt)
|
||||||
{
|
{
|
||||||
while (cnt--)
|
while (cnt--)
|
||||||
addch('-');
|
addch('-');
|
||||||
|
|
@ -193,9 +197,8 @@ register int cnt;
|
||||||
* pick a random spot in a room
|
* pick a random spot in a room
|
||||||
*/
|
*/
|
||||||
|
|
||||||
rnd_pos(rp, cp)
|
void
|
||||||
register struct room *rp;
|
rnd_pos(struct room *rp, coord *cp)
|
||||||
register coord *cp;
|
|
||||||
{
|
{
|
||||||
cp->x = rp->r_pos.x + rnd(rp->r_max.x-2) + 1;
|
cp->x = rp->r_pos.x + rnd(rp->r_max.x-2) + 1;
|
||||||
cp->y = rp->r_pos.y + rnd(rp->r_max.y-2) + 1;
|
cp->y = rp->r_pos.y + rnd(rp->r_max.y-2) + 1;
|
||||||
|
|
@ -210,8 +213,7 @@ register coord *cp;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct room *
|
struct room *
|
||||||
roomin(cp)
|
roomin(coord *cp)
|
||||||
register coord *cp;
|
|
||||||
{
|
{
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
||||||
|
|
@ -226,8 +228,8 @@ register coord *cp;
|
||||||
* draw a vertical line
|
* draw a vertical line
|
||||||
*/
|
*/
|
||||||
|
|
||||||
vert(cnt)
|
void
|
||||||
register int cnt;
|
vert(int cnt)
|
||||||
{
|
{
|
||||||
register int x, y;
|
register int x, y;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,8 @@
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
bool save_file(FILE *savef);
|
||||||
|
|
||||||
typedef struct stat STAT;
|
typedef struct stat STAT;
|
||||||
|
|
||||||
extern char version[], encstr[];
|
extern char version[], encstr[];
|
||||||
|
|
@ -31,7 +33,7 @@ extern char version[], encstr[];
|
||||||
STAT sbuf;
|
STAT sbuf;
|
||||||
|
|
||||||
bool
|
bool
|
||||||
save_game()
|
save_game(void)
|
||||||
{
|
{
|
||||||
register FILE *savef;
|
register FILE *savef;
|
||||||
register int c;
|
register int c;
|
||||||
|
|
@ -122,8 +124,7 @@ auto_save(int sig)
|
||||||
* write the saved game on the file
|
* write the saved game on the file
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
save_file(savef)
|
save_file(FILE *savef)
|
||||||
register FILE *savef;
|
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
int slines = LINES;
|
int slines = LINES;
|
||||||
|
|
@ -147,9 +148,8 @@ register FILE *savef;
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
restore(file, envp)
|
bool
|
||||||
register char *file;
|
restore(char *file, char **envp)
|
||||||
char **envp;
|
|
||||||
{
|
{
|
||||||
register int inf;
|
register int inf;
|
||||||
#ifndef _AIX
|
#ifndef _AIX
|
||||||
|
|
@ -264,13 +264,11 @@ char **envp;
|
||||||
/*
|
/*
|
||||||
* perform an encrypted write
|
* perform an encrypted write
|
||||||
*/
|
*/
|
||||||
encwrite(start, size, outf)
|
int
|
||||||
register char *start;
|
encwrite(char *start, unsigned int size, FILE *outf)
|
||||||
register unsigned size;
|
|
||||||
register FILE *outf;
|
|
||||||
{
|
{
|
||||||
register char *ep;
|
register char *ep;
|
||||||
register num_written = 0;
|
register int num_written = 0;
|
||||||
|
|
||||||
ep = encstr;
|
ep = encstr;
|
||||||
|
|
||||||
|
|
@ -288,10 +286,8 @@ register FILE *outf;
|
||||||
/*
|
/*
|
||||||
* perform an encrypted read
|
* perform an encrypted read
|
||||||
*/
|
*/
|
||||||
encread(start, size, inf)
|
int
|
||||||
register char *start;
|
encread(char *start, unsigned int size, int inf)
|
||||||
register unsigned size;
|
|
||||||
register int inf;
|
|
||||||
{
|
{
|
||||||
register char *ep;
|
register char *ep;
|
||||||
register int read_size;
|
register int read_size;
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,8 @@
|
||||||
/*
|
/*
|
||||||
* let the hero get rid of some type of monster (but not a UNIQUE!)
|
* let the hero get rid of some type of monster (but not a UNIQUE!)
|
||||||
*/
|
*/
|
||||||
genocide()
|
void
|
||||||
|
genocide(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *ip;
|
register struct linked_list *ip;
|
||||||
register struct thing *mp;
|
register struct thing *mp;
|
||||||
|
|
@ -37,7 +38,7 @@ genocide()
|
||||||
|
|
||||||
/* Print out the monsters */
|
/* Print out the monsters */
|
||||||
while (num_monst > 0) {
|
while (num_monst > 0) {
|
||||||
register left_limit;
|
int left_limit;
|
||||||
|
|
||||||
if (num_monst < num_lines) left_limit = (num_monst+1)/2;
|
if (num_monst < num_lines) left_limit = (num_monst+1)/2;
|
||||||
else left_limit = num_lines/2;
|
else left_limit = num_lines/2;
|
||||||
|
|
@ -112,10 +113,8 @@ get_monst:
|
||||||
msg("You have wiped out the %s.", monsters[which_monst].m_name);
|
msg("You have wiped out the %s.", monsters[which_monst].m_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
read_scroll(which, flag, is_scroll)
|
void
|
||||||
register int which;
|
read_scroll(int which, int flag, bool is_scroll)
|
||||||
int flag;
|
|
||||||
bool is_scroll;
|
|
||||||
{
|
{
|
||||||
register struct object *obj = NULL, *nobj;
|
register struct object *obj = NULL, *nobj;
|
||||||
register struct linked_list *item, *nitem;
|
register struct linked_list *item, *nitem;
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,12 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
int rs_read_int(int inf, int *i);
|
||||||
|
int rs_write_int(FILE *savef, int c);
|
||||||
|
int list_size(struct linked_list *l);
|
||||||
|
int rs_write_object_list(FILE *savef, struct linked_list *l);
|
||||||
|
int rs_read_object_list(int inf, struct linked_list **list);
|
||||||
|
|
||||||
#define READSTAT (format_error || read_error )
|
#define READSTAT (format_error || read_error )
|
||||||
#define WRITESTAT (write_error)
|
#define WRITESTAT (write_error)
|
||||||
|
|
||||||
|
|
@ -1712,6 +1718,7 @@ rs_read_rooms(int inf, struct room *r, int count)
|
||||||
return(READSTAT);
|
return(READSTAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
rs_write_room_reference(FILE *savef, struct room *rp)
|
rs_write_room_reference(FILE *savef, struct room *rp)
|
||||||
{
|
{
|
||||||
int i, room = -1;
|
int i, room = -1;
|
||||||
|
|
@ -2224,7 +2231,7 @@ rs_read_thing(int inf, struct thing *t)
|
||||||
return(READSTAT);
|
return(READSTAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
void
|
||||||
rs_fix_thing(struct thing *t)
|
rs_fix_thing(struct thing *t)
|
||||||
{
|
{
|
||||||
struct thing *tp;
|
struct thing *tp;
|
||||||
|
|
@ -2434,6 +2441,7 @@ rs_save_file(FILE *savef)
|
||||||
return(WRITESTAT);
|
return(WRITESTAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
rs_restore_file(int inf)
|
rs_restore_file(int inf)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
|
||||||
|
|
@ -18,14 +18,13 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
void drain(int ymin, int ymax, int xmin, int xmax);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* zap a stick and see what happens
|
* zap a stick and see what happens
|
||||||
*/
|
*/
|
||||||
do_zap(gotdir, which, flag)
|
bool
|
||||||
bool gotdir;
|
do_zap(bool gotdir, int which, int flag)
|
||||||
int which;
|
|
||||||
int flag;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj = NULL;
|
register struct object *obj = NULL;
|
||||||
|
|
@ -683,8 +682,8 @@ int flag;
|
||||||
* Do drain hit points from player shtick
|
* Do drain hit points from player shtick
|
||||||
*/
|
*/
|
||||||
|
|
||||||
drain(ymin, ymax, xmin, xmax)
|
void
|
||||||
int ymin, ymax, xmin, xmax;
|
drain(int ymin, int ymax, int xmin, int xmax)
|
||||||
{
|
{
|
||||||
register int i, j, count;
|
register int i, j, count;
|
||||||
register struct thing *ick;
|
register struct thing *ick;
|
||||||
|
|
@ -745,8 +744,8 @@ int ymin, ymax, xmin, xmax;
|
||||||
/*
|
/*
|
||||||
* initialize a stick
|
* initialize a stick
|
||||||
*/
|
*/
|
||||||
fix_stick(cur)
|
void
|
||||||
register struct object *cur;
|
fix_stick(struct object *cur)
|
||||||
{
|
{
|
||||||
if (EQUAL(ws_type[cur->o_which], "staff")) {
|
if (EQUAL(ws_type[cur->o_which], "staff")) {
|
||||||
cur->o_weight = 100;
|
cur->o_weight = 100;
|
||||||
|
|
@ -787,13 +786,9 @@ register struct object *cur;
|
||||||
* given direction
|
* given direction
|
||||||
*/
|
*/
|
||||||
|
|
||||||
shoot_bolt(shooter, start, dir, get_points, reason, name, damage)
|
bool
|
||||||
struct thing *shooter;
|
shoot_bolt(struct thing *shooter, coord start, coord dir, bool get_points,
|
||||||
coord start, dir;
|
short reason, char *name, int damage)
|
||||||
bool get_points;
|
|
||||||
short reason;
|
|
||||||
char *name;
|
|
||||||
int damage;
|
|
||||||
{
|
{
|
||||||
register char dirch = 0, ch;
|
register char dirch = 0, ch;
|
||||||
register bool used, change;
|
register bool used, change;
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,13 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
int extras(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* print out the number of charges on a stick
|
* print out the number of charges on a stick
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
charge_str(obj)
|
charge_str(struct object *obj)
|
||||||
register struct object *obj;
|
|
||||||
{
|
{
|
||||||
static char buf[20];
|
static char buf[20];
|
||||||
|
|
||||||
|
|
@ -41,9 +42,7 @@ register struct object *obj;
|
||||||
* inventory.
|
* inventory.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
inv_name(obj, drop)
|
inv_name(struct object *obj, bool drop)
|
||||||
register struct object *obj;
|
|
||||||
bool drop;
|
|
||||||
{
|
{
|
||||||
register char *pb;
|
register char *pb;
|
||||||
|
|
||||||
|
|
@ -296,8 +295,7 @@ bool drop;
|
||||||
* Return the name of a weapon.
|
* Return the name of a weapon.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
weap_name(obj)
|
weap_name(struct object *obj)
|
||||||
register struct object *obj;
|
|
||||||
{
|
{
|
||||||
switch (obj->o_type) {
|
switch (obj->o_type) {
|
||||||
case WEAPON:
|
case WEAPON:
|
||||||
|
|
@ -325,8 +323,8 @@ register struct object *obj;
|
||||||
* drop:
|
* drop:
|
||||||
* put something down
|
* put something down
|
||||||
*/
|
*/
|
||||||
drop(item)
|
bool
|
||||||
struct linked_list *item;
|
drop(struct linked_list *item)
|
||||||
{
|
{
|
||||||
register char ch = 0;
|
register char ch = 0;
|
||||||
register struct linked_list *obj, *nobj;
|
register struct linked_list *obj, *nobj;
|
||||||
|
|
@ -413,8 +411,8 @@ struct linked_list *item;
|
||||||
/*
|
/*
|
||||||
* do special checks for dropping or unweilding|unwearing|unringing
|
* do special checks for dropping or unweilding|unwearing|unringing
|
||||||
*/
|
*/
|
||||||
dropcheck(op)
|
bool
|
||||||
register struct object *op;
|
dropcheck(struct object *op)
|
||||||
{
|
{
|
||||||
int save_max;
|
int save_max;
|
||||||
|
|
||||||
|
|
@ -514,8 +512,7 @@ register struct object *op;
|
||||||
* return a new thing
|
* return a new thing
|
||||||
*/
|
*/
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
new_thing(thing_type)
|
new_thing(int thing_type)
|
||||||
int thing_type;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *cur;
|
register struct object *cur;
|
||||||
|
|
@ -710,8 +707,7 @@ int thing_type;
|
||||||
* provide a new item tailored to specification
|
* provide a new item tailored to specification
|
||||||
*/
|
*/
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
spec_item(type, which, hit, damage)
|
spec_item(int type, int which, int hit, int damage)
|
||||||
int type, which, hit, damage;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
@ -787,9 +783,8 @@ int type, which, hit, damage;
|
||||||
/*
|
/*
|
||||||
* pick an item out of a list of nitems possible magic items
|
* pick an item out of a list of nitems possible magic items
|
||||||
*/
|
*/
|
||||||
pick_one(magic, nitems)
|
int
|
||||||
register struct magic_item *magic;
|
pick_one(struct magic_item *magic, int nitems)
|
||||||
int nitems;
|
|
||||||
{
|
{
|
||||||
register struct magic_item *end;
|
register struct magic_item *end;
|
||||||
register int i;
|
register int i;
|
||||||
|
|
@ -821,8 +816,7 @@ int nitems;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char *
|
char *
|
||||||
blesscurse(flags)
|
blesscurse(int flags)
|
||||||
int flags;
|
|
||||||
{
|
{
|
||||||
if (flags & ISKNOW) {
|
if (flags & ISKNOW) {
|
||||||
if (flags & ISCURSED) return("cursed ");
|
if (flags & ISCURSED) return("cursed ");
|
||||||
|
|
@ -836,7 +830,8 @@ int flags;
|
||||||
* extras:
|
* extras:
|
||||||
* Return the number of extra items to be created
|
* Return the number of extra items to be created
|
||||||
*/
|
*/
|
||||||
extras()
|
int
|
||||||
|
extras(void)
|
||||||
{
|
{
|
||||||
reg int i;
|
reg int i;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,17 +14,20 @@
|
||||||
|
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
#include <ctype.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
bool open_market(void);
|
||||||
|
void trans_line(void);
|
||||||
|
char *typ_name(struct object *obj);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* buy_it:
|
* buy_it:
|
||||||
* Buy the item on which the hero stands
|
* Buy the item on which the hero stands
|
||||||
*/
|
*/
|
||||||
buy_it()
|
void
|
||||||
|
buy_it(void)
|
||||||
{
|
{
|
||||||
reg int wh;
|
reg int wh;
|
||||||
struct linked_list *item;
|
struct linked_list *item;
|
||||||
|
|
@ -77,7 +80,8 @@ buy_it()
|
||||||
* do_post:
|
* do_post:
|
||||||
* Put a trading post room and stuff on the screen
|
* Put a trading post room and stuff on the screen
|
||||||
*/
|
*/
|
||||||
do_post()
|
void
|
||||||
|
do_post(void)
|
||||||
{
|
{
|
||||||
coord tp;
|
coord tp;
|
||||||
reg int i;
|
reg int i;
|
||||||
|
|
@ -124,8 +128,8 @@ do_post()
|
||||||
* get_worth:
|
* get_worth:
|
||||||
* Calculate an objects worth in gold
|
* Calculate an objects worth in gold
|
||||||
*/
|
*/
|
||||||
get_worth(obj)
|
int
|
||||||
reg struct object *obj;
|
get_worth(struct object *obj)
|
||||||
{
|
{
|
||||||
reg int worth, wh;
|
reg int worth, wh;
|
||||||
|
|
||||||
|
|
@ -195,7 +199,8 @@ reg struct object *obj;
|
||||||
* open_market:
|
* open_market:
|
||||||
* Retruns TRUE when ok do to transacting
|
* Retruns TRUE when ok do to transacting
|
||||||
*/
|
*/
|
||||||
open_market()
|
bool
|
||||||
|
open_market(void)
|
||||||
{
|
{
|
||||||
if (trader >= MAXPURCH && !wizard) {
|
if (trader >= MAXPURCH && !wizard) {
|
||||||
msg("The market is closed. The stairs are that-a-way.");
|
msg("The market is closed. The stairs are that-a-way.");
|
||||||
|
|
@ -210,7 +215,8 @@ open_market()
|
||||||
* price_it:
|
* price_it:
|
||||||
* Price the object that the hero stands on
|
* Price the object that the hero stands on
|
||||||
*/
|
*/
|
||||||
price_it()
|
bool
|
||||||
|
price_it(void)
|
||||||
{
|
{
|
||||||
reg struct linked_list *item;
|
reg struct linked_list *item;
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
|
|
@ -244,7 +250,8 @@ price_it()
|
||||||
* sell_it:
|
* sell_it:
|
||||||
* Sell an item to the trading post
|
* Sell an item to the trading post
|
||||||
*/
|
*/
|
||||||
sell_it()
|
void
|
||||||
|
sell_it(void)
|
||||||
{
|
{
|
||||||
reg struct linked_list *item;
|
reg struct linked_list *item;
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
|
|
@ -291,7 +298,8 @@ sell_it()
|
||||||
* trans_line:
|
* trans_line:
|
||||||
* Show how many transactions the hero has left
|
* Show how many transactions the hero has left
|
||||||
*/
|
*/
|
||||||
trans_line()
|
void
|
||||||
|
trans_line(void)
|
||||||
{
|
{
|
||||||
if (!wizard)
|
if (!wizard)
|
||||||
sprintf(prbuf,"You have %d transactions remaining.",
|
sprintf(prbuf,"You have %d transactions remaining.",
|
||||||
|
|
@ -309,8 +317,7 @@ trans_line()
|
||||||
* Return the name for this type of object
|
* Return the name for this type of object
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
typ_name(obj)
|
typ_name(struct object *obj)
|
||||||
reg struct object *obj;
|
|
||||||
{
|
{
|
||||||
static char buff[20];
|
static char buff[20];
|
||||||
reg int wh;
|
reg int wh;
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,8 @@
|
||||||
* aggravate all the monsters on this level
|
* aggravate all the monsters on this level
|
||||||
*/
|
*/
|
||||||
|
|
||||||
aggravate()
|
void
|
||||||
|
aggravate(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *mi;
|
register struct linked_list *mi;
|
||||||
|
|
||||||
|
|
@ -35,8 +36,8 @@ aggravate()
|
||||||
* returns true if the hero can see a certain coordinate.
|
* returns true if the hero can see a certain coordinate.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
cansee(y, x)
|
bool
|
||||||
register int y, x;
|
cansee(int y, int x)
|
||||||
{
|
{
|
||||||
register struct room *rer;
|
register struct room *rer;
|
||||||
register int radius;
|
register int radius;
|
||||||
|
|
@ -93,8 +94,7 @@ static struct {
|
||||||
};
|
};
|
||||||
|
|
||||||
long
|
long
|
||||||
check_level(get_spells)
|
check_level(bool get_spells)
|
||||||
bool get_spells;
|
|
||||||
{
|
{
|
||||||
register int i, j, add = 0;
|
register int i, j, add = 0;
|
||||||
register unsigned long exp;
|
register unsigned long exp;
|
||||||
|
|
@ -148,8 +148,8 @@ bool get_spells;
|
||||||
* it keeps track of the highest it has been, just in case
|
* it keeps track of the highest it has been, just in case
|
||||||
*/
|
*/
|
||||||
|
|
||||||
chg_str(amt)
|
void
|
||||||
register int amt;
|
chg_str(int amt)
|
||||||
{
|
{
|
||||||
register int ring_str; /* ring strengths */
|
register int ring_str; /* ring strengths */
|
||||||
register struct stats *ptr; /* for speed */
|
register struct stats *ptr; /* for speed */
|
||||||
|
|
@ -172,7 +172,7 @@ register int amt;
|
||||||
* this routine computes the players current AC without dex bonus's
|
* this routine computes the players current AC without dex bonus's
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
ac_compute()
|
ac_compute(void)
|
||||||
{
|
{
|
||||||
register int ac;
|
register int ac;
|
||||||
|
|
||||||
|
|
@ -194,7 +194,8 @@ ac_compute()
|
||||||
/*
|
/*
|
||||||
* this routine computes the players current strength
|
* this routine computes the players current strength
|
||||||
*/
|
*/
|
||||||
str_compute()
|
int
|
||||||
|
str_compute(void)
|
||||||
{
|
{
|
||||||
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
||||||
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_OGRE) {
|
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_OGRE) {
|
||||||
|
|
@ -210,7 +211,8 @@ str_compute()
|
||||||
/*
|
/*
|
||||||
* this routine computes the players current dexterity
|
* this routine computes the players current dexterity
|
||||||
*/
|
*/
|
||||||
dex_compute()
|
int
|
||||||
|
dex_compute(void)
|
||||||
{
|
{
|
||||||
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
||||||
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_DEXTERITY) {
|
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_DEXTERITY) {
|
||||||
|
|
@ -229,9 +231,8 @@ dex_compute()
|
||||||
* Check to see if the move is legal if it is diagonal
|
* Check to see if the move is legal if it is diagonal
|
||||||
*/
|
*/
|
||||||
|
|
||||||
diag_ok(sp, ep, flgptr)
|
bool
|
||||||
register coord *sp, *ep;
|
diag_ok(coord *sp, coord *ep, struct thing *flgptr)
|
||||||
struct thing *flgptr;
|
|
||||||
{
|
{
|
||||||
register int numpaths = 0;
|
register int numpaths = 0;
|
||||||
|
|
||||||
|
|
@ -252,7 +253,8 @@ struct thing *flgptr;
|
||||||
* He wants to eat something, so let him try
|
* He wants to eat something, so let him try
|
||||||
*/
|
*/
|
||||||
|
|
||||||
eat()
|
void
|
||||||
|
eat(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
||||||
|
|
@ -282,10 +284,7 @@ eat()
|
||||||
* pick a random position around the give (y, x) coordinates
|
* pick a random position around the give (y, x) coordinates
|
||||||
*/
|
*/
|
||||||
coord *
|
coord *
|
||||||
fallpos(pos, be_clear, range)
|
fallpos(coord *pos, bool be_clear, int range)
|
||||||
register coord *pos;
|
|
||||||
bool be_clear;
|
|
||||||
int range;
|
|
||||||
{
|
{
|
||||||
register int tried, i, j;
|
register int tried, i, j;
|
||||||
register char ch;
|
register char ch;
|
||||||
|
|
@ -364,9 +363,7 @@ int range;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
find_mons(y, x)
|
find_mons(int y, int x)
|
||||||
register int y;
|
|
||||||
register int x;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct thing *th;
|
register struct thing *th;
|
||||||
|
|
@ -386,9 +383,7 @@ register int x;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct linked_list *
|
struct linked_list *
|
||||||
find_obj(y, x)
|
find_obj(int y, int x)
|
||||||
register int y;
|
|
||||||
register int x;
|
|
||||||
{
|
{
|
||||||
register struct linked_list *obj;
|
register struct linked_list *obj;
|
||||||
register struct object *op;
|
register struct object *op;
|
||||||
|
|
@ -406,7 +401,8 @@ register int x;
|
||||||
/*
|
/*
|
||||||
* set up the direction co_ordinate for use in varios "prefix" commands
|
* set up the direction co_ordinate for use in varios "prefix" commands
|
||||||
*/
|
*/
|
||||||
get_dir()
|
bool
|
||||||
|
get_dir(void)
|
||||||
{
|
{
|
||||||
register char *prompt;
|
register char *prompt;
|
||||||
register bool gotit;
|
register bool gotit;
|
||||||
|
|
@ -446,8 +442,8 @@ get_dir()
|
||||||
/*
|
/*
|
||||||
* see if the object is one of the currently used items
|
* see if the object is one of the currently used items
|
||||||
*/
|
*/
|
||||||
is_current(obj)
|
bool
|
||||||
register struct object *obj;
|
is_current(struct object *obj)
|
||||||
{
|
{
|
||||||
if (obj == NULL)
|
if (obj == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
@ -483,11 +479,12 @@ register struct object *obj;
|
||||||
/*
|
/*
|
||||||
* Look:
|
* Look:
|
||||||
* A quick glance all around the player
|
* A quick glance all around the player
|
||||||
|
* wakeup: Should we wake up monsters
|
||||||
|
* runend: At end of a run -- for mazes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
look(wakeup, runend)
|
void
|
||||||
bool wakeup; /* Should we wake up monsters */
|
look(bool wakeup, bool runend)
|
||||||
bool runend; /* At end of a run -- for mazes */
|
|
||||||
{
|
{
|
||||||
register int x, y, radius;
|
register int x, y, radius;
|
||||||
register char ch, och;
|
register char ch, och;
|
||||||
|
|
@ -738,8 +735,8 @@ bool runend; /* At end of a run -- for mazes */
|
||||||
* The guy just magically went up a level.
|
* The guy just magically went up a level.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
raise_level(get_spells)
|
void
|
||||||
bool get_spells;
|
raise_level(bool get_spells)
|
||||||
{
|
{
|
||||||
unsigned long test; /* Next level -- be sure it is not an overflow */
|
unsigned long test; /* Next level -- be sure it is not an overflow */
|
||||||
|
|
||||||
|
|
@ -766,11 +763,12 @@ static int st_matrix[5][5] = {
|
||||||
/*
|
/*
|
||||||
* save:
|
* save:
|
||||||
* See if a creature saves against something
|
* See if a creature saves against something
|
||||||
|
* which: which type of save
|
||||||
|
* who: who is saving
|
||||||
|
* adj: saving throw adjustment
|
||||||
*/
|
*/
|
||||||
save(which, who, adj)
|
bool
|
||||||
int which; /* which type of save */
|
save(int which, struct thing *who, int adj)
|
||||||
struct thing *who; /* who is saving */
|
|
||||||
int adj; /* saving throw adjustment */
|
|
||||||
{
|
{
|
||||||
register int need, level;
|
register int need, level;
|
||||||
|
|
||||||
|
|
@ -814,8 +812,8 @@ int adj; /* saving throw adjustment */
|
||||||
* Figure out what a secret door looks like.
|
* Figure out what a secret door looks like.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
secretdoor(y, x)
|
char
|
||||||
register int y, x;
|
secretdoor(int y, int x)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
@ -838,9 +836,8 @@ register int y, x;
|
||||||
/*
|
/*
|
||||||
* copy string using unctrl for things
|
* copy string using unctrl for things
|
||||||
*/
|
*/
|
||||||
strucpy(s1, s2, len)
|
void
|
||||||
register char *s1, *s2;
|
strucpy(char *s1, char *s2, int len)
|
||||||
register int len;
|
|
||||||
{
|
{
|
||||||
register char *sp;
|
register char *sp;
|
||||||
|
|
||||||
|
|
@ -859,8 +856,7 @@ register int len;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char *
|
char *
|
||||||
tr_name(ch)
|
tr_name(char ch)
|
||||||
char ch;
|
|
||||||
{
|
{
|
||||||
register char *s = NULL;
|
register char *s = NULL;
|
||||||
|
|
||||||
|
|
@ -890,8 +886,7 @@ char ch;
|
||||||
* for printfs: if string starts with a vowel, return "n" for an "an"
|
* for printfs: if string starts with a vowel, return "n" for an "an"
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
vowelstr(str)
|
vowelstr(char *str)
|
||||||
register char *str;
|
|
||||||
{
|
{
|
||||||
switch (*str)
|
switch (*str)
|
||||||
{
|
{
|
||||||
|
|
@ -911,7 +906,8 @@ register char *str;
|
||||||
* Do nothing but let other things happen
|
* Do nothing but let other things happen
|
||||||
*/
|
*/
|
||||||
|
|
||||||
waste_time()
|
void
|
||||||
|
waste_time(void)
|
||||||
{
|
{
|
||||||
if (inwhgt) /* if from wghtchk then done */
|
if (inwhgt) /* if from wghtchk then done */
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -23,10 +23,8 @@
|
||||||
* do the actual motion on the screen done by an object traveling
|
* do the actual motion on the screen done by an object traveling
|
||||||
* across the room
|
* across the room
|
||||||
*/
|
*/
|
||||||
do_motion(obj, ydelta, xdelta, tp)
|
void
|
||||||
register struct object *obj;
|
do_motion(struct object *obj, int ydelta, int xdelta, struct thing *tp)
|
||||||
register int ydelta, xdelta;
|
|
||||||
register struct thing *tp;
|
|
||||||
{
|
{
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -70,9 +68,8 @@ register struct thing *tp;
|
||||||
* Drop an item someplace around here.
|
* Drop an item someplace around here.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fall(item, pr)
|
void
|
||||||
register struct linked_list *item;
|
fall(struct linked_list *item, bool pr)
|
||||||
bool pr;
|
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register struct room *rp;
|
register struct room *rp;
|
||||||
|
|
@ -116,10 +113,8 @@ bool pr;
|
||||||
* Does the missile hit the monster
|
* Does the missile hit the monster
|
||||||
*/
|
*/
|
||||||
|
|
||||||
hit_monster(y, x, obj, tp)
|
bool
|
||||||
register int y, x;
|
hit_monster(int y, int x, struct object *obj, struct thing *tp)
|
||||||
struct object *obj;
|
|
||||||
register struct thing *tp;
|
|
||||||
{
|
{
|
||||||
static coord mp;
|
static coord mp;
|
||||||
|
|
||||||
|
|
@ -144,9 +139,8 @@ register struct thing *tp;
|
||||||
* Set up the initial goodies for a weapon
|
* Set up the initial goodies for a weapon
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init_weapon(weap, type)
|
void
|
||||||
register struct object *weap;
|
init_weapon(struct object *weap, char type)
|
||||||
char type;
|
|
||||||
{
|
{
|
||||||
register struct init_weps *iwp;
|
register struct init_weps *iwp;
|
||||||
|
|
||||||
|
|
@ -169,10 +163,8 @@ char type;
|
||||||
* Fire a missile in a given direction
|
* Fire a missile in a given direction
|
||||||
*/
|
*/
|
||||||
|
|
||||||
missile(ydelta, xdelta, item, tp)
|
void
|
||||||
int ydelta, xdelta;
|
missile(int ydelta, int xdelta, struct linked_list *item, struct thing *tp)
|
||||||
register struct linked_list *item;
|
|
||||||
register struct thing *tp;
|
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register struct linked_list *nitem;
|
register struct linked_list *nitem;
|
||||||
|
|
@ -247,8 +239,7 @@ register struct thing *tp;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char *
|
char *
|
||||||
num(n1, n2)
|
num(int n1, int n2)
|
||||||
register int n1, n2;
|
|
||||||
{
|
{
|
||||||
static char numbuf[LINELEN];
|
static char numbuf[LINELEN];
|
||||||
|
|
||||||
|
|
@ -268,7 +259,8 @@ register int n1, n2;
|
||||||
* Pull out a certain weapon
|
* Pull out a certain weapon
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wield()
|
void
|
||||||
|
wield(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj, *oweapon;
|
register struct object *obj, *oweapon;
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,8 @@
|
||||||
* Get the armor off of the players back
|
* Get the armor off of the players back
|
||||||
*/
|
*/
|
||||||
|
|
||||||
take_off()
|
void
|
||||||
|
take_off(void)
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
@ -52,7 +53,8 @@ take_off()
|
||||||
* The player wants to wear something, so let him/her put it on.
|
* The player wants to wear something, so let him/her put it on.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wear()
|
void
|
||||||
|
wear(void)
|
||||||
{
|
{
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@
|
||||||
|
|
||||||
#include "curses.h"
|
#include "curses.h"
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "rogue.h"
|
#include "rogue.h"
|
||||||
|
|
||||||
|
|
@ -23,9 +24,8 @@
|
||||||
* create_obj:
|
* create_obj:
|
||||||
* Create any object for wizard, scroll, magician, or cleric
|
* Create any object for wizard, scroll, magician, or cleric
|
||||||
*/
|
*/
|
||||||
create_obj(prompt, which_item, which_type)
|
void
|
||||||
bool prompt;
|
create_obj(bool prompt, int which_item, int which_type)
|
||||||
int which_item, which_type;
|
|
||||||
{
|
{
|
||||||
reg struct linked_list *item;
|
reg struct linked_list *item;
|
||||||
reg struct object *obj;
|
reg struct object *obj;
|
||||||
|
|
@ -311,7 +311,8 @@ int which_item, which_type;
|
||||||
* getbless:
|
* getbless:
|
||||||
* Get a blessing for a wizards object
|
* Get a blessing for a wizards object
|
||||||
*/
|
*/
|
||||||
getbless()
|
int
|
||||||
|
getbless(void)
|
||||||
{
|
{
|
||||||
reg char bless;
|
reg char bless;
|
||||||
|
|
||||||
|
|
@ -328,7 +329,8 @@ getbless()
|
||||||
/*
|
/*
|
||||||
* get a non-monster death type
|
* get a non-monster death type
|
||||||
*/
|
*/
|
||||||
getdeath()
|
int
|
||||||
|
getdeath(void)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
int which_death;
|
int which_death;
|
||||||
|
|
@ -358,8 +360,8 @@ getdeath()
|
||||||
/*
|
/*
|
||||||
* make a monster for the wizard
|
* make a monster for the wizard
|
||||||
*/
|
*/
|
||||||
makemonster(create)
|
short
|
||||||
bool create;
|
makemonster(bool create)
|
||||||
{
|
{
|
||||||
register int i;
|
register int i;
|
||||||
register short which_monst;
|
register short which_monst;
|
||||||
|
|
@ -368,7 +370,7 @@ bool create;
|
||||||
|
|
||||||
/* Print out the monsters */
|
/* Print out the monsters */
|
||||||
while (num_monst > 0) {
|
while (num_monst > 0) {
|
||||||
register left_limit;
|
register int left_limit;
|
||||||
|
|
||||||
if (num_monst < num_lines) left_limit = (num_monst+1)/2;
|
if (num_monst < num_lines) left_limit = (num_monst+1)/2;
|
||||||
else left_limit = num_lines/2;
|
else left_limit = num_lines/2;
|
||||||
|
|
@ -430,7 +432,8 @@ get_monst:
|
||||||
* see if user knows password
|
* see if user knows password
|
||||||
*/
|
*/
|
||||||
|
|
||||||
passwd()
|
bool
|
||||||
|
passwd(void)
|
||||||
{
|
{
|
||||||
register char *sp, c;
|
register char *sp, c;
|
||||||
char buf[LINELEN];
|
char buf[LINELEN];
|
||||||
|
|
@ -457,7 +460,8 @@ passwd()
|
||||||
* Bamf the hero someplace else
|
* Bamf the hero someplace else
|
||||||
*/
|
*/
|
||||||
|
|
||||||
teleport()
|
int
|
||||||
|
teleport(void)
|
||||||
{
|
{
|
||||||
register struct room *new_rp, *old_rp = roomin(&hero);
|
register struct room *new_rp, *old_rp = roomin(&hero);
|
||||||
register int rm;
|
register int rm;
|
||||||
|
|
@ -525,8 +529,8 @@ teleport()
|
||||||
* What a certin object is
|
* What a certin object is
|
||||||
*/
|
*/
|
||||||
|
|
||||||
whatis(what)
|
void
|
||||||
struct linked_list *what;
|
whatis(struct linked_list *what)
|
||||||
{
|
{
|
||||||
register struct object *obj;
|
register struct object *obj;
|
||||||
register struct linked_list *item;
|
register struct linked_list *item;
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,9 @@
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
unsigned long int md_htonl(unsigned long int x);
|
||||||
|
unsigned long int md_ntohl(unsigned long int x);
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue