XRogue: convert to ANSI-style function declarations.
This commit is contained in:
parent
e8e6e604c3
commit
2853120387
41 changed files with 1281 additions and 908 deletions
|
|
@ -24,12 +24,20 @@
|
|||
int mf_count = 0; /* move_free counter - see actions.c(m_act()) */
|
||||
int mf_jmpcnt = 0; /* move_free counter for # of jumps */
|
||||
|
||||
void m_breathe(struct thing *tp);
|
||||
void m_select(struct thing *th, bool flee);
|
||||
void m_sonic(struct thing *tp);
|
||||
void m_spell(struct thing *tp);
|
||||
void m_summon(struct thing *tp);
|
||||
bool m_use_it(struct thing *tp, bool flee, struct room *rer, struct room *ree);
|
||||
bool m_use_pack(struct thing *monster, coord *defend_pos, int dist,
|
||||
coord *shoot_dir);
|
||||
|
||||
/*
|
||||
* Did we disrupt a spell?
|
||||
*/
|
||||
dsrpt_monster(tp, always, see_him)
|
||||
register struct thing *tp;
|
||||
bool always, see_him;
|
||||
void
|
||||
dsrpt_monster(struct thing *tp, bool always, bool see_him)
|
||||
{
|
||||
switch (tp->t_action) {
|
||||
case A_SUMMON:
|
||||
|
|
@ -58,7 +66,8 @@ bool always, see_him;
|
|||
}
|
||||
}
|
||||
|
||||
dsrpt_player()
|
||||
void
|
||||
dsrpt_player(void)
|
||||
{
|
||||
int which, action;
|
||||
struct linked_list *item;
|
||||
|
|
@ -87,7 +96,7 @@ dsrpt_player()
|
|||
if (purse > 0) {
|
||||
msg("Your gold goes flying everywhere!");
|
||||
do {
|
||||
item = spec_item(GOLD, NULL, NULL, NULL);
|
||||
item = spec_item(GOLD, 0, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_count = min(purse, rnd(20)+1);
|
||||
purse -= obj->o_count;
|
||||
|
|
@ -125,8 +134,8 @@ dsrpt_player()
|
|||
* Otherwise, let it perform its chosen action.
|
||||
*/
|
||||
|
||||
m_act(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
m_act(struct thing *tp)
|
||||
{
|
||||
struct object *obj;
|
||||
bool flee; /* Are we scared? */
|
||||
|
|
@ -290,8 +299,8 @@ register struct thing *tp;
|
|||
* Breathe in the chosen direction.
|
||||
*/
|
||||
|
||||
m_breathe(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
m_breathe(struct thing *tp)
|
||||
{
|
||||
register int damage;
|
||||
register char *breath = NULL;
|
||||
|
|
@ -399,11 +408,11 @@ register struct thing *tp;
|
|||
/*
|
||||
* m_select:
|
||||
* Select an action for the monster.
|
||||
* flee: True if running away or player is inaccessible in wall
|
||||
*/
|
||||
|
||||
m_select(th, flee)
|
||||
register struct thing *th;
|
||||
register bool flee; /* True if running away or player is inaccessible in wall */
|
||||
void
|
||||
m_select(struct thing *th, bool flee)
|
||||
{
|
||||
register struct room *rer, *ree; /* room of chaser, room of chasee */
|
||||
int dist = INT_MIN;
|
||||
|
|
@ -541,8 +550,8 @@ register bool flee; /* True if running away or player is inaccessible in wall */
|
|||
* The monster is sounding a sonic blast.
|
||||
*/
|
||||
|
||||
m_sonic(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
m_sonic(struct thing *tp)
|
||||
{
|
||||
register int damage;
|
||||
struct object blast =
|
||||
|
|
@ -571,8 +580,8 @@ register struct thing *tp;
|
|||
* The monster casts a spell. Currently this is limited to
|
||||
* magic missile.
|
||||
*/
|
||||
m_spell(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
m_spell(struct thing *tp)
|
||||
{
|
||||
struct object missile =
|
||||
{
|
||||
|
|
@ -594,8 +603,8 @@ register struct thing *tp;
|
|||
* Summon aid.
|
||||
*/
|
||||
|
||||
m_summon(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
m_summon(struct thing *tp)
|
||||
{
|
||||
register char *helpname, *mname;
|
||||
int fail, numsum;
|
||||
|
|
@ -668,10 +677,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
bool
|
||||
m_use_it(tp, flee, rer, ree)
|
||||
register struct thing *tp;
|
||||
bool flee;
|
||||
register struct room *rer, *ree;
|
||||
m_use_it(struct thing *tp, bool flee, struct room *rer, struct room *ree)
|
||||
{
|
||||
int dist;
|
||||
register coord *ee = tp->t_dest, *er = &tp->t_pos;
|
||||
|
|
@ -836,7 +842,8 @@ register struct room *rer, *ree;
|
|||
|
||||
}
|
||||
|
||||
reap()
|
||||
void
|
||||
reap(void)
|
||||
{
|
||||
_t_free_list(&rlist);
|
||||
}
|
||||
|
|
@ -844,10 +851,11 @@ reap()
|
|||
/*
|
||||
* runners:
|
||||
* Make all the awake monsters try to do something.
|
||||
* segments: Number of segments since last called
|
||||
*/
|
||||
|
||||
runners(segments)
|
||||
int segments; /* Number of segments since last called */
|
||||
int
|
||||
runners(int segments)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp = NULL;
|
||||
|
|
@ -961,11 +969,7 @@ int segments; /* Number of segments since last called */
|
|||
* Only care about relics and wands for now.
|
||||
*/
|
||||
bool
|
||||
m_use_pack(monster, defend_pos, dist, shoot_dir)
|
||||
register struct thing *monster;
|
||||
coord *defend_pos;
|
||||
register int dist;
|
||||
register coord *shoot_dir;
|
||||
m_use_pack(struct thing *monster, coord *defend_pos, int dist, coord *shoot_dir)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct linked_list *pitem, *relic, *stick;
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
/*
|
||||
|
|
@ -25,13 +26,9 @@
|
|||
* given direction
|
||||
*/
|
||||
|
||||
shoot_bolt(shooter, start, dir, get_points, reason, name, damage)
|
||||
struct thing *shooter;
|
||||
coord start, dir;
|
||||
bool get_points;
|
||||
short reason;
|
||||
char *name;
|
||||
int damage;
|
||||
void
|
||||
shoot_bolt(struct thing *shooter, coord start, coord dir, bool get_points,
|
||||
short reason, char *name, int damage)
|
||||
{
|
||||
unsigned char dirch = 0, ch;
|
||||
bool used, change, see_him;
|
||||
|
|
|
|||
|
|
@ -19,16 +19,18 @@
|
|||
#include <ctype.h>
|
||||
#include <curses.h>
|
||||
#include <limits.h>
|
||||
#include <stdlib.h>
|
||||
#include "rogue.h"
|
||||
|
||||
bool straight_shot(int ery, int erx, int eey, int eex, coord *shooting);
|
||||
|
||||
/*
|
||||
* Canblink checks if the monster can teleport (blink). If so, it will
|
||||
* try to blink the monster next to the player.
|
||||
*/
|
||||
|
||||
bool
|
||||
can_blink(tp)
|
||||
register struct thing *tp;
|
||||
can_blink(struct thing *tp)
|
||||
{
|
||||
register int y, x, index=9;
|
||||
coord tryp; /* To hold the coordinates for use in diag_ok */
|
||||
|
|
@ -123,8 +125,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
int
|
||||
can_shoot(er, ee, shoot_dir)
|
||||
register coord *er, *ee, *shoot_dir;
|
||||
can_shoot(coord *er, coord *ee, coord *shoot_dir)
|
||||
{
|
||||
/*
|
||||
* They must be in the same room or very close (at door)
|
||||
|
|
@ -150,15 +151,13 @@ register coord *er, *ee, *shoot_dir;
|
|||
* Find the spot for the chaser(er) to move closer to the
|
||||
* chasee(ee). Rer is the room of the chaser, and ree is the
|
||||
* room of the creature being chased (chasee).
|
||||
*/
|
||||
|
||||
chase(tp, ee, rer, ree, flee)
|
||||
register struct thing *tp;
|
||||
register coord *ee;
|
||||
register struct room *rer, *ree;
|
||||
bool flee; /* True if destination (ee) is player and monster is running away
|
||||
* flee: True if destination (ee) is player and monster is running away
|
||||
* or the player is in a wall and the monster can't get to it
|
||||
*/
|
||||
|
||||
void
|
||||
chase(struct thing *tp, coord *ee, struct room *rer, struct room *ree,
|
||||
bool flee)
|
||||
{
|
||||
int dist, thisdist, monst_dist = INT_MAX;
|
||||
register coord *er = &tp->t_pos;
|
||||
|
|
@ -495,8 +494,8 @@ bool flee; /* True if destination (ee) is player and monster is running away
|
|||
* Make one thing chase another.
|
||||
*/
|
||||
|
||||
do_chase(th)
|
||||
register struct thing *th;
|
||||
void
|
||||
do_chase(struct thing *th)
|
||||
{
|
||||
register struct room *orig_rer, /* Original room of chaser */
|
||||
*new_room; /* new room of monster */
|
||||
|
|
@ -812,8 +811,7 @@ register struct thing *th;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
get_hurl(tp)
|
||||
register struct thing *tp;
|
||||
get_hurl(struct thing *tp)
|
||||
{
|
||||
struct linked_list *arrow=NULL, *bolt=NULL, *rock=NULL,
|
||||
*spear = NULL, *dagger=NULL, *dart=NULL, *aklad=NULL;
|
||||
|
|
@ -860,9 +858,8 @@ register struct thing *tp;
|
|||
* Set a monster running after something
|
||||
*/
|
||||
|
||||
runto(runner, spot)
|
||||
register struct thing *runner;
|
||||
coord *spot;
|
||||
void
|
||||
runto(struct thing *runner, coord *spot)
|
||||
{
|
||||
if (on(*runner, ISSTONE))
|
||||
return;
|
||||
|
|
@ -888,9 +885,7 @@ coord *spot;
|
|||
*/
|
||||
|
||||
bool
|
||||
straight_shot(ery, erx, eey, eex, shooting)
|
||||
register int ery, erx, eey, eex;
|
||||
register coord *shooting;
|
||||
straight_shot(int ery, int erx, int eey, int eex, coord *shooting)
|
||||
{
|
||||
register int dy, dx; /* Deltas */
|
||||
unsigned char ch;
|
||||
|
|
|
|||
|
|
@ -24,12 +24,21 @@
|
|||
#include "mach_dep.h"
|
||||
#include "rogue.h"
|
||||
|
||||
void display(void);
|
||||
void d_level(void);
|
||||
void u_level(void);
|
||||
void shell(void);
|
||||
void nameit(void);
|
||||
void namemonst(void);
|
||||
void count_gold(void);
|
||||
|
||||
/*
|
||||
* command:
|
||||
* Process the user commands
|
||||
*/
|
||||
|
||||
command()
|
||||
void
|
||||
command(void)
|
||||
{
|
||||
unsigned int ch;
|
||||
struct linked_list *item;
|
||||
|
|
@ -288,7 +297,7 @@ command()
|
|||
else {
|
||||
after = FALSE;
|
||||
player.t_action = A_NIL;
|
||||
fright();
|
||||
fright(NULL);
|
||||
}
|
||||
when 'g' : /* Give command: give slime-molds to monsters */
|
||||
if (player.t_action == A_NIL) {
|
||||
|
|
@ -298,7 +307,7 @@ command()
|
|||
else {
|
||||
after = FALSE;
|
||||
player.t_action = A_NIL;
|
||||
give();
|
||||
give(NULL);
|
||||
}
|
||||
when 'G' :
|
||||
if (player.t_action == A_NIL) {
|
||||
|
|
@ -357,14 +366,14 @@ command()
|
|||
/* when '\\' : after = FALSE; ident_hero(); */
|
||||
when '\\' : msg("Charon (the Boatman) looks at you... ");
|
||||
|
||||
when '/' : after = FALSE; identify(NULL);
|
||||
when '/' : after = FALSE; identify('\0');
|
||||
when C_COUNT : count_gold();
|
||||
when C_DIP : dip_it();
|
||||
when C_DROP : player.t_action = C_DROP;
|
||||
drop((struct linked_list *)NULL);
|
||||
when C_EAT : eat();
|
||||
when C_QUAFF : quaff(-1, NULL, NULL, TRUE);
|
||||
when C_READ : read_scroll(-1, NULL, TRUE);
|
||||
when C_QUAFF : quaff(-1, 0, 0, TRUE);
|
||||
when C_READ : read_scroll(-1, 0, TRUE);
|
||||
when C_SETTRAP : set_trap(&player, hero.y, hero.x);
|
||||
when C_SEARCH :
|
||||
if (player.t_action == A_NIL) {
|
||||
|
|
@ -379,7 +388,7 @@ command()
|
|||
when C_USE : use_mm(-1);
|
||||
when C_WEAR : wear();
|
||||
when C_WIELD : wield();
|
||||
when C_ZAP : if (!player_zap(NULL, FALSE)) after=FALSE;
|
||||
when C_ZAP : if (!player_zap(0, FALSE)) after=FALSE;
|
||||
when C_CAST : cast();
|
||||
when C_CHANT : chant();
|
||||
when C_PRAY : pray();
|
||||
|
|
@ -638,7 +647,8 @@ command()
|
|||
* tell the player what is at a certain coordinates assuming
|
||||
* it can be seen.
|
||||
*/
|
||||
display()
|
||||
void
|
||||
display(void)
|
||||
{
|
||||
coord c;
|
||||
struct linked_list *item;
|
||||
|
|
@ -673,8 +683,7 @@ display()
|
|||
|
||||
/*UNUSED*/
|
||||
void
|
||||
quit(sig)
|
||||
int sig;
|
||||
quit(int sig)
|
||||
{
|
||||
register int oy, ox;
|
||||
|
||||
|
|
@ -727,8 +736,8 @@ int sig;
|
|||
* killed by a program bug instead of voluntarily.
|
||||
*/
|
||||
|
||||
bugkill(sig)
|
||||
int sig;
|
||||
void
|
||||
bugkill(int sig)
|
||||
{
|
||||
signal(sig, quit); /* If we get it again, give up */
|
||||
if (levtype == OUTSIDE) {
|
||||
|
|
@ -748,8 +757,8 @@ int sig;
|
|||
* Player gropes about him to find hidden things.
|
||||
*/
|
||||
|
||||
search(is_thief, door_chime)
|
||||
register bool is_thief, door_chime;
|
||||
void
|
||||
search(bool is_thief, bool door_chime)
|
||||
{
|
||||
register int x, y;
|
||||
register char ch, /* The trap or door character */
|
||||
|
|
@ -861,7 +870,8 @@ register bool is_thief, door_chime;
|
|||
* He wants to go down a level
|
||||
*/
|
||||
|
||||
d_level()
|
||||
void
|
||||
d_level(void)
|
||||
{
|
||||
bool no_phase=FALSE;
|
||||
char position = winat(hero.y, hero.x);
|
||||
|
|
@ -962,7 +972,8 @@ d_level()
|
|||
* He wants to go up a level
|
||||
*/
|
||||
|
||||
u_level()
|
||||
void
|
||||
u_level(void)
|
||||
{
|
||||
bool no_phase = FALSE;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -1053,7 +1064,8 @@ u_level()
|
|||
* Let him escape for a while
|
||||
*/
|
||||
|
||||
shell()
|
||||
void
|
||||
shell(void)
|
||||
{
|
||||
/*
|
||||
* Set the terminal back to original mode
|
||||
|
|
@ -1079,7 +1091,8 @@ shell()
|
|||
/*
|
||||
* see what we want to name -- an item or a monster.
|
||||
*/
|
||||
nameit()
|
||||
void
|
||||
nameit(void)
|
||||
{
|
||||
char answer;
|
||||
|
||||
|
|
@ -1103,9 +1116,8 @@ nameit()
|
|||
* allow a user to call a potion, scroll, or ring something
|
||||
*/
|
||||
|
||||
nameitem(item, mark)
|
||||
struct linked_list *item;
|
||||
bool mark;
|
||||
void
|
||||
nameitem(struct linked_list *item, bool mark)
|
||||
{
|
||||
register struct object *obj;
|
||||
register char **guess = NULL, *elsewise = NULL;
|
||||
|
|
@ -1191,7 +1203,8 @@ bool mark;
|
|||
|
||||
/* Name a monster */
|
||||
|
||||
namemonst()
|
||||
void
|
||||
namemonst(void)
|
||||
{
|
||||
register struct thing *tp;
|
||||
struct linked_list *item;
|
||||
|
|
@ -1236,7 +1249,8 @@ namemonst()
|
|||
msg("There is no monster there to name.");
|
||||
}
|
||||
|
||||
count_gold()
|
||||
void
|
||||
count_gold(void)
|
||||
{
|
||||
if (player.t_action != C_COUNT) {
|
||||
msg("You take a break to count your money.. ");
|
||||
|
|
@ -1259,7 +1273,8 @@ count_gold()
|
|||
* Teleport somewhere, anywhere...
|
||||
*/
|
||||
|
||||
do_teleport()
|
||||
void
|
||||
do_teleport(void)
|
||||
{
|
||||
int tlev;
|
||||
prbuf[0] = '\0';
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ int fusecnt = 0;
|
|||
* Find an empty slot in the daemon list
|
||||
*/
|
||||
struct delayed_action *
|
||||
d_slot()
|
||||
d_slot(void)
|
||||
{
|
||||
reg int i;
|
||||
reg struct delayed_action *dev;
|
||||
|
|
@ -57,7 +57,7 @@ d_slot()
|
|||
* Find an empty slot in the fuses list
|
||||
*/
|
||||
struct delayed_action *
|
||||
f_slot()
|
||||
f_slot(void)
|
||||
{
|
||||
reg int i;
|
||||
reg struct delayed_action *dev;
|
||||
|
|
@ -74,8 +74,7 @@ f_slot()
|
|||
*/
|
||||
|
||||
struct delayed_action *
|
||||
find_slot(func)
|
||||
reg int (*func)();
|
||||
find_slot(int (*func)())
|
||||
{
|
||||
reg int i;
|
||||
reg struct delayed_action *dev;
|
||||
|
|
@ -91,9 +90,8 @@ reg int (*func)();
|
|||
* Start a daemon, takes a function.
|
||||
*/
|
||||
|
||||
start_daemon(dfunc, arg, type)
|
||||
reg VOID *arg;
|
||||
reg int type, (*dfunc)();
|
||||
void
|
||||
start_daemon(int (*dfunc)(), VOID *arg, int type)
|
||||
{
|
||||
reg struct delayed_action *dev;
|
||||
|
||||
|
|
@ -112,8 +110,8 @@ reg int type, (*dfunc)();
|
|||
* Remove a daemon from the list
|
||||
*/
|
||||
|
||||
kill_daemon(dfunc)
|
||||
reg int (*dfunc)();
|
||||
void
|
||||
kill_daemon(int (*dfunc)())
|
||||
{
|
||||
reg struct delayed_action *dev;
|
||||
reg int i;
|
||||
|
|
@ -140,8 +138,8 @@ reg int (*dfunc)();
|
|||
* passing the argument to the function.
|
||||
*/
|
||||
|
||||
do_daemons(flag)
|
||||
reg int flag;
|
||||
void
|
||||
do_daemons(int flag)
|
||||
{
|
||||
struct delayed_action *dev;
|
||||
int i;
|
||||
|
|
@ -165,9 +163,8 @@ reg int flag;
|
|||
* Start a fuse to go off in a certain number of turns
|
||||
*/
|
||||
|
||||
fuse(dfunc, arg, time, type)
|
||||
VOID *arg;
|
||||
reg int (*dfunc)(), time, type;
|
||||
void
|
||||
fuse(int (*dfunc)(), VOID *arg, int time, int type)
|
||||
{
|
||||
reg struct delayed_action *wire;
|
||||
|
||||
|
|
@ -186,8 +183,8 @@ reg int (*dfunc)(), time, type;
|
|||
* Increase the time until a fuse goes off
|
||||
*/
|
||||
|
||||
lengthen(dfunc, xtime)
|
||||
reg int (*dfunc)(), xtime;
|
||||
void
|
||||
lengthen(int (*dfunc)(), int xtime)
|
||||
{
|
||||
reg struct delayed_action *wire;
|
||||
|
||||
|
|
@ -201,8 +198,8 @@ reg int (*dfunc)(), xtime;
|
|||
* Put out a fuse
|
||||
*/
|
||||
|
||||
extinguish(dfunc)
|
||||
reg int (*dfunc)();
|
||||
void
|
||||
extinguish(int (*dfunc)())
|
||||
{
|
||||
reg struct delayed_action *wire;
|
||||
|
||||
|
|
@ -220,8 +217,8 @@ reg int (*dfunc)();
|
|||
* Decrement counters and start needed fuses
|
||||
*/
|
||||
|
||||
do_fuses(flag)
|
||||
reg int flag;
|
||||
void
|
||||
do_fuses(int flag)
|
||||
{
|
||||
struct delayed_action *wire;
|
||||
int i;
|
||||
|
|
@ -250,7 +247,8 @@ reg int flag;
|
|||
* Show wizard number of demaons and memory blocks used
|
||||
*/
|
||||
|
||||
activity()
|
||||
void
|
||||
activity(void)
|
||||
{
|
||||
msg("Daemons = %d : Fuses = %d : Memory Items = %d : Memory Used = %d",
|
||||
demoncnt,fusecnt,total,md_memused());
|
||||
|
|
|
|||
109
xrogue/daemons.c
109
xrogue/daemons.c
|
|
@ -24,8 +24,8 @@
|
|||
* A healing daemon that restors hit points after rest
|
||||
*/
|
||||
|
||||
doctor(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
doctor(struct thing *tp)
|
||||
{
|
||||
register int ohp;
|
||||
register int limit, new_points;
|
||||
|
|
@ -111,7 +111,8 @@ register struct thing *tp;
|
|||
* Called when it is time to start rolling for wandering monsters
|
||||
*/
|
||||
|
||||
swander()
|
||||
void
|
||||
swander(void)
|
||||
{
|
||||
start_daemon(rollwand, (VOID *)NULL, BEFORE);
|
||||
}
|
||||
|
|
@ -123,7 +124,8 @@ swander()
|
|||
|
||||
int between = 0;
|
||||
|
||||
rollwand()
|
||||
void
|
||||
rollwand(void)
|
||||
{
|
||||
|
||||
if (++between >= 4)
|
||||
|
|
@ -145,7 +147,8 @@ rollwand()
|
|||
* 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))
|
||||
search(TRUE, FALSE);
|
||||
|
|
@ -156,7 +159,8 @@ trap_look()
|
|||
* Release the poor player from his confusion
|
||||
*/
|
||||
|
||||
unconfuse()
|
||||
void
|
||||
unconfuse(void)
|
||||
{
|
||||
turn_off(player, ISHUH);
|
||||
msg("You feel less confused now");
|
||||
|
|
@ -167,7 +171,8 @@ unconfuse()
|
|||
* He lost his see invisible power
|
||||
*/
|
||||
|
||||
unsee()
|
||||
void
|
||||
unsee(void)
|
||||
{
|
||||
if (!ISWEARING(R_SEEINVIS)) {
|
||||
turn_off(player, CANSEE);
|
||||
|
|
@ -180,7 +185,8 @@ unsee()
|
|||
* Remove to-hit handicap from player
|
||||
*/
|
||||
|
||||
unstink()
|
||||
void
|
||||
unstink(void)
|
||||
{
|
||||
turn_off(player, HASSTINK);
|
||||
}
|
||||
|
|
@ -190,7 +196,8 @@ unstink()
|
|||
* Player is no longer immune to confusion
|
||||
*/
|
||||
|
||||
unclrhead()
|
||||
void
|
||||
unclrhead(void)
|
||||
{
|
||||
turn_off(player, ISCLEAR);
|
||||
msg("The blue aura about your head fades away.");
|
||||
|
|
@ -201,7 +208,8 @@ unclrhead()
|
|||
* Player can no longer walk through walls
|
||||
*/
|
||||
|
||||
unphase()
|
||||
void
|
||||
unphase(void)
|
||||
{
|
||||
turn_off(player, CANINWALL);
|
||||
msg("Your dizzy feeling leaves you.");
|
||||
|
|
@ -215,7 +223,7 @@ unphase()
|
|||
*/
|
||||
|
||||
int
|
||||
land()
|
||||
land(void)
|
||||
{
|
||||
turn_off(player, ISFLY);
|
||||
msg("You regain your normal weight");
|
||||
|
|
@ -228,7 +236,8 @@ land()
|
|||
* He gets his sight back
|
||||
*/
|
||||
|
||||
sight()
|
||||
void
|
||||
sight(void)
|
||||
{
|
||||
if (on(player, ISBLIND))
|
||||
{
|
||||
|
|
@ -245,8 +254,7 @@ sight()
|
|||
*/
|
||||
|
||||
int
|
||||
res_strength(howmuch)
|
||||
long howmuch;
|
||||
res_strength(long howmuch)
|
||||
{
|
||||
|
||||
/* If lost_str is non-zero, restore that amount of strength,
|
||||
|
|
@ -271,7 +279,8 @@ long howmuch;
|
|||
* End the hasting
|
||||
*/
|
||||
|
||||
nohaste()
|
||||
void
|
||||
nohaste(void)
|
||||
{
|
||||
turn_off(player, ISHASTE);
|
||||
msg("You feel yourself slowing down.");
|
||||
|
|
@ -282,7 +291,8 @@ nohaste()
|
|||
* End the slowing
|
||||
*/
|
||||
|
||||
noslow()
|
||||
void
|
||||
noslow(void)
|
||||
{
|
||||
turn_off(player, ISSLOW);
|
||||
msg("You feel yourself speeding up.");
|
||||
|
|
@ -293,7 +303,8 @@ noslow()
|
|||
* If this gets called, the player has suffocated
|
||||
*/
|
||||
|
||||
suffocate()
|
||||
void
|
||||
suffocate(void)
|
||||
{
|
||||
pstats.s_hpt = -1;
|
||||
death(D_SUFFOCATION);
|
||||
|
|
@ -303,7 +314,8 @@ suffocate()
|
|||
* digest the hero's food
|
||||
*/
|
||||
|
||||
stomach()
|
||||
void
|
||||
stomach(void)
|
||||
{
|
||||
register int oldfood, old_hunger, food_use, i;
|
||||
|
||||
|
|
@ -387,7 +399,8 @@ stomach()
|
|||
* daemon for curing the diseased
|
||||
*/
|
||||
|
||||
cure_disease()
|
||||
void
|
||||
cure_disease(void)
|
||||
{
|
||||
turn_off(player, HASDISEASE);
|
||||
if (off (player, HASINFEST))
|
||||
|
|
@ -400,7 +413,8 @@ cure_disease()
|
|||
* Become visible again
|
||||
*/
|
||||
|
||||
appear()
|
||||
void
|
||||
appear(void)
|
||||
{
|
||||
turn_off(player, ISINVIS);
|
||||
PLAYER = VPLAYER;
|
||||
|
|
@ -413,7 +427,8 @@ appear()
|
|||
* dust of disappearance wears off
|
||||
*/
|
||||
|
||||
dust_appear()
|
||||
void
|
||||
dust_appear(void)
|
||||
{
|
||||
turn_off(player, ISINVIS);
|
||||
PLAYER = VPLAYER;
|
||||
|
|
@ -426,7 +441,8 @@ dust_appear()
|
|||
* the effects of "dust of choking and sneezing" wear off
|
||||
*/
|
||||
|
||||
unchoke()
|
||||
void
|
||||
unchoke(void)
|
||||
{
|
||||
if (!find_slot(unconfuse))
|
||||
turn_off(player, ISHUH);
|
||||
|
|
@ -440,8 +456,8 @@ unchoke()
|
|||
* make some potion for the guy in the Alchemy jug
|
||||
*/
|
||||
|
||||
alchemy(obj)
|
||||
register struct object *obj;
|
||||
void
|
||||
alchemy(struct object *obj)
|
||||
{
|
||||
register struct object *tobj = NULL;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -492,7 +508,7 @@ register struct object *obj;
|
|||
*/
|
||||
|
||||
int
|
||||
undance()
|
||||
undance(void)
|
||||
{
|
||||
turn_off(player, ISDANCE);
|
||||
msg ("Your feet take a break.....whew!");
|
||||
|
|
@ -503,7 +519,8 @@ undance()
|
|||
* if he has our favorite necklace of strangulation then take damage every turn
|
||||
*/
|
||||
|
||||
strangle()
|
||||
void
|
||||
strangle(void)
|
||||
{
|
||||
if ((pstats.s_hpt -= 6) <= 0) {
|
||||
pstats.s_hpt = -1;
|
||||
|
|
@ -515,7 +532,8 @@ strangle()
|
|||
* if he has on the gauntlets of fumbling he might drop his weapon each turn
|
||||
*/
|
||||
|
||||
fumble()
|
||||
void
|
||||
fumble(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -557,7 +575,8 @@ fumble()
|
|||
* it's a lot like trap_look()
|
||||
*/
|
||||
|
||||
ring_search()
|
||||
void
|
||||
ring_search(void)
|
||||
{
|
||||
if (rnd(75) < (2*dex_compute() + 5*pstats.s_lvl)) search(TRUE, FALSE);
|
||||
else search(FALSE, FALSE);
|
||||
|
|
@ -567,7 +586,8 @@ ring_search()
|
|||
* this is called each turn the hero has the ring of teleportation on
|
||||
*/
|
||||
|
||||
ring_teleport()
|
||||
void
|
||||
ring_teleport(void)
|
||||
{
|
||||
if (rnd(100) < 3) teleport();
|
||||
}
|
||||
|
|
@ -576,7 +596,8 @@ ring_teleport()
|
|||
* this is called to charge up the quill of Nagrom
|
||||
*/
|
||||
|
||||
quill_charge()
|
||||
void
|
||||
quill_charge(void)
|
||||
{
|
||||
register struct object *tobj = NULL;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -601,7 +622,8 @@ quill_charge()
|
|||
* take the skills away gained (or lost) by the potion of skills
|
||||
*/
|
||||
|
||||
unskill()
|
||||
void
|
||||
unskill(void)
|
||||
{
|
||||
if (pstats.s_lvladj != 0) {
|
||||
pstats.s_lvl -= pstats.s_lvladj;
|
||||
|
|
@ -616,8 +638,7 @@ unskill()
|
|||
*/
|
||||
|
||||
int
|
||||
cloak_charge(obj)
|
||||
register struct object *obj;
|
||||
cloak_charge(struct object *obj)
|
||||
{
|
||||
if (obj->o_charges < 1)
|
||||
obj->o_charges = 1;
|
||||
|
|
@ -629,7 +650,8 @@ register struct object *obj;
|
|||
* He lost his fire resistance
|
||||
*/
|
||||
|
||||
nofire()
|
||||
void
|
||||
nofire(void)
|
||||
{
|
||||
if (!ISWEARING(R_FIRE)) {
|
||||
turn_off(player, NOFIRE);
|
||||
|
|
@ -642,7 +664,8 @@ nofire()
|
|||
* He lost his cold resistance
|
||||
*/
|
||||
|
||||
nocold()
|
||||
void
|
||||
nocold(void)
|
||||
{
|
||||
if (!ISWEARING(R_WARMTH)) {
|
||||
turn_off(player, NOCOLD);
|
||||
|
|
@ -655,7 +678,8 @@ nocold()
|
|||
* He lost his protection from lightning
|
||||
*/
|
||||
|
||||
nobolt()
|
||||
void
|
||||
nobolt(void)
|
||||
{
|
||||
turn_off(player, NOBOLT);
|
||||
msg("Your skin loses its bluish tint");
|
||||
|
|
@ -666,8 +690,8 @@ nobolt()
|
|||
* an artifact eats gold
|
||||
*/
|
||||
|
||||
eat_gold(obj)
|
||||
register struct object *obj;
|
||||
void
|
||||
eat_gold(struct object *obj)
|
||||
{
|
||||
if (purse == 250)
|
||||
msg("%s.. Bids you to find some more gold. ", inv_name(obj, FALSE));
|
||||
|
|
@ -691,7 +715,8 @@ register struct object *obj;
|
|||
* give the hero back some spell points
|
||||
*/
|
||||
|
||||
spell_recovery()
|
||||
void
|
||||
spell_recovery(void)
|
||||
{
|
||||
int time;
|
||||
|
||||
|
|
@ -705,7 +730,8 @@ spell_recovery()
|
|||
* give the hero back some prayer points
|
||||
*/
|
||||
|
||||
prayer_recovery()
|
||||
void
|
||||
prayer_recovery(void)
|
||||
{
|
||||
int time;
|
||||
|
||||
|
|
@ -719,7 +745,8 @@ prayer_recovery()
|
|||
* give the hero back some chant points
|
||||
*/
|
||||
|
||||
chant_recovery()
|
||||
void
|
||||
chant_recovery(void)
|
||||
{
|
||||
int time;
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,8 @@
|
|||
* He wants to eat something, so let him try
|
||||
*/
|
||||
|
||||
eat()
|
||||
void
|
||||
eat(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
int which;
|
||||
|
|
|
|||
|
|
@ -26,11 +26,9 @@
|
|||
* the reason code if the defender is killed. Otherwise return 0.
|
||||
*/
|
||||
|
||||
effect(att, def, weap, thrown, see_att, see_def)
|
||||
register struct thing *att, *def;
|
||||
struct object *weap;
|
||||
bool thrown;
|
||||
register bool see_att, see_def;
|
||||
int
|
||||
effect(struct thing *att, struct thing *def, struct object *weap, bool thrown,
|
||||
bool see_att, bool see_def)
|
||||
{
|
||||
register bool att_player, def_player;
|
||||
char attname[LINELEN+1], defname[LINELEN+1];
|
||||
|
|
|
|||
|
|
@ -15,14 +15,15 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
int packweight(struct thing *tp);
|
||||
|
||||
/*
|
||||
* updpack:
|
||||
* Update his pack weight and adjust fooduse accordingly
|
||||
*/
|
||||
|
||||
updpack(getmax, tp)
|
||||
int getmax;
|
||||
struct thing *tp;
|
||||
void
|
||||
updpack(int getmax, struct thing *tp)
|
||||
{
|
||||
|
||||
reg int topcarry, curcarry;
|
||||
|
|
@ -52,8 +53,8 @@ struct thing *tp;
|
|||
* Get the total weight of the hero's pack
|
||||
*/
|
||||
|
||||
packweight(tp)
|
||||
register struct thing *tp;
|
||||
int
|
||||
packweight(struct thing *tp)
|
||||
{
|
||||
reg struct object *obj;
|
||||
reg struct linked_list *pc;
|
||||
|
|
@ -89,8 +90,8 @@ register struct thing *tp;
|
|||
* Get the weight of an object
|
||||
*/
|
||||
|
||||
itemweight(wh)
|
||||
reg struct object *wh;
|
||||
int
|
||||
itemweight(struct object *wh)
|
||||
{
|
||||
reg int weight;
|
||||
reg int ac;
|
||||
|
|
@ -120,8 +121,8 @@ reg struct object *wh;
|
|||
* Get hero's carrying ability above norm
|
||||
*/
|
||||
|
||||
playenc(tp)
|
||||
register struct thing *tp;
|
||||
int
|
||||
playenc(struct thing *tp)
|
||||
{
|
||||
register int strength;
|
||||
|
||||
|
|
@ -136,8 +137,8 @@ register struct thing *tp;
|
|||
* Get total weight that the hero can carry
|
||||
*/
|
||||
|
||||
totalenc(tp)
|
||||
register struct thing *tp;
|
||||
int
|
||||
totalenc(struct thing *tp)
|
||||
{
|
||||
reg int wtotal;
|
||||
|
||||
|
|
@ -157,11 +158,11 @@ register struct thing *tp;
|
|||
* See if the hero can carry his pack
|
||||
*/
|
||||
|
||||
wghtchk()
|
||||
void
|
||||
wghtchk(void)
|
||||
{
|
||||
reg int dropchk, err = TRUE;
|
||||
reg char ch;
|
||||
int wghtchk();
|
||||
|
||||
inwhgt = TRUE;
|
||||
if (pstats.s_pack > pstats.s_carry) {
|
||||
|
|
@ -195,7 +196,8 @@ wghtchk()
|
|||
* -1 hit for heavy pack weight
|
||||
*/
|
||||
|
||||
hitweight()
|
||||
int
|
||||
hitweight(void)
|
||||
{
|
||||
return(2 - foodlev);
|
||||
}
|
||||
|
|
|
|||
105
xrogue/fight.c
105
xrogue/fight.c
|
|
@ -19,6 +19,7 @@
|
|||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include "rogue.h"
|
||||
|
||||
#define CONF_DAMAGE -1
|
||||
|
|
@ -26,15 +27,23 @@
|
|||
#define DEST_DAMAGE -3
|
||||
#define DRAIN_DAMAGE -4
|
||||
|
||||
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, bool see_att, bool see_def, char *er, char *ee,
|
||||
bool back_stab, bool thrown, bool short_msg);
|
||||
void miss(struct object *weapon, bool see_att, bool see_def, char *er, char *ee,
|
||||
bool thrown, bool short_msg);
|
||||
int add_dam(short str);
|
||||
int hung_dam(void);
|
||||
|
||||
int killed_chance = 0; /* cumulative chance for goodies to loose it */
|
||||
|
||||
/*
|
||||
* returns true if player has a any chance to hit the monster
|
||||
*/
|
||||
|
||||
player_can_hit(tp, weap)
|
||||
register struct thing *tp;
|
||||
register struct object *weap;
|
||||
bool
|
||||
player_can_hit(struct thing *tp, struct object *weap)
|
||||
{
|
||||
if (off(*tp, CMAGICHIT) && off(*tp, BMAGICHIT) && off(*tp, MAGICHIT))
|
||||
return(TRUE);
|
||||
|
|
@ -62,10 +71,8 @@ register struct object *weap;
|
|||
* The player attacks the monster.
|
||||
*/
|
||||
|
||||
fight(mp, weap, thrown)
|
||||
register coord *mp;
|
||||
struct object *weap;
|
||||
bool thrown;
|
||||
bool
|
||||
fight(coord *mp, struct object *weap, bool thrown)
|
||||
{
|
||||
register struct thing *tp;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -226,10 +233,8 @@ bool thrown;
|
|||
* The monster attacks the player
|
||||
*/
|
||||
|
||||
attack(mp, weapon, thrown)
|
||||
register struct thing *mp;
|
||||
register struct object *weapon;
|
||||
bool thrown;
|
||||
bool
|
||||
attack(struct thing *mp, struct object *weapon, bool thrown)
|
||||
{
|
||||
register char *mname;
|
||||
register bool see_att, did_hit = FALSE;
|
||||
|
|
@ -305,9 +310,8 @@ bool thrown;
|
|||
* returns true if the swing hits
|
||||
*/
|
||||
|
||||
swing(class, at_lvl, op_arm, wplus)
|
||||
short class;
|
||||
int at_lvl, op_arm, wplus;
|
||||
bool
|
||||
swing(short class, int at_lvl, int op_arm, int wplus)
|
||||
{
|
||||
register int res = rnd(20)+1;
|
||||
register int need;
|
||||
|
|
@ -327,12 +331,9 @@ int at_lvl, op_arm, wplus;
|
|||
* Roll several attacks
|
||||
*/
|
||||
|
||||
roll_em(att_er, def_er, weap, hurl, cur_weapon, back_stab)
|
||||
struct thing *att_er, *def_er;
|
||||
struct object *weap;
|
||||
bool hurl;
|
||||
struct object *cur_weapon;
|
||||
bool back_stab;
|
||||
bool
|
||||
roll_em(struct thing *att_er, struct thing *def_er, struct object *weap,
|
||||
bool hurl, struct object *cur_weapon, bool back_stab)
|
||||
{
|
||||
register struct stats *att, *def;
|
||||
register char *cp = NULL;
|
||||
|
|
@ -739,9 +740,7 @@ bool back_stab;
|
|||
*/
|
||||
|
||||
char *
|
||||
prname(who, upper)
|
||||
register char *who;
|
||||
bool upper;
|
||||
prname(char *who, bool upper)
|
||||
{
|
||||
static char tbuf[LINELEN];
|
||||
|
||||
|
|
@ -766,11 +765,9 @@ bool upper;
|
|||
* Print a message to indicate a succesful hit
|
||||
*/
|
||||
|
||||
hit(weapon, see_att, see_def, er, ee, back_stab, thrown, short_msg)
|
||||
register struct object *weapon;
|
||||
bool see_att, see_def;
|
||||
register char *er, *ee;
|
||||
bool back_stab, thrown, short_msg;
|
||||
void
|
||||
hit(struct object *weapon, bool see_att, bool see_def, char *er, char *ee,
|
||||
bool back_stab, bool thrown, bool short_msg)
|
||||
{
|
||||
register char *s = NULL;
|
||||
char att_name[LINELEN], /* Name of attacker */
|
||||
|
|
@ -830,11 +827,9 @@ bool back_stab, thrown, short_msg;
|
|||
* Print a message to indicate a poor swing
|
||||
*/
|
||||
|
||||
miss(weapon, see_att, see_def, er, ee, thrown, short_msg)
|
||||
register struct object *weapon;
|
||||
bool see_att, see_def;
|
||||
register char *er, *ee;
|
||||
bool thrown, short_msg;
|
||||
void
|
||||
miss(struct object *weapon, bool see_att, bool see_def, char *er, char *ee,
|
||||
bool thrown, bool short_msg)
|
||||
{
|
||||
register char *s = NULL;
|
||||
char att_name[LINELEN], /* Name of attacker */
|
||||
|
|
@ -874,8 +869,8 @@ bool thrown, short_msg;
|
|||
* compute to-hit bonus for dexterity
|
||||
*/
|
||||
|
||||
dext_plus(dexterity)
|
||||
register int dexterity;
|
||||
int
|
||||
dext_plus(int dexterity)
|
||||
{
|
||||
return (dexterity > 10 ? (dexterity-13)/3 : (dexterity-10)/3);
|
||||
}
|
||||
|
|
@ -886,8 +881,8 @@ register int dexterity;
|
|||
* compute armor class bonus for dexterity
|
||||
*/
|
||||
|
||||
dext_prot(dexterity)
|
||||
register int dexterity;
|
||||
int
|
||||
dext_prot(int dexterity)
|
||||
{
|
||||
return ((dexterity-10)/2);
|
||||
}
|
||||
|
|
@ -897,8 +892,8 @@ register int dexterity;
|
|||
* compute bonus/penalties for strength on the "to hit" roll
|
||||
*/
|
||||
|
||||
str_plus(str)
|
||||
register short str;
|
||||
int
|
||||
str_plus(short str)
|
||||
{
|
||||
return((str-10)/3);
|
||||
}
|
||||
|
|
@ -908,8 +903,8 @@ register short str;
|
|||
* compute additional damage done for exceptionally high or low strength
|
||||
*/
|
||||
|
||||
add_dam(str)
|
||||
register short str;
|
||||
int
|
||||
add_dam(short str)
|
||||
{
|
||||
return((str-9)/2);
|
||||
}
|
||||
|
|
@ -919,7 +914,8 @@ register short str;
|
|||
* Calculate damage depending on players hungry state
|
||||
*/
|
||||
|
||||
hung_dam()
|
||||
int
|
||||
hung_dam(void)
|
||||
{
|
||||
reg int howmuch = 0;
|
||||
|
||||
|
|
@ -938,8 +934,8 @@ hung_dam()
|
|||
* Returns true if an object radiates magic
|
||||
*/
|
||||
|
||||
is_magic(obj)
|
||||
register struct object *obj;
|
||||
bool
|
||||
is_magic(struct object *obj)
|
||||
{
|
||||
switch (obj->o_type)
|
||||
{
|
||||
|
|
@ -963,9 +959,8 @@ register struct object *obj;
|
|||
* Called to put a monster to death
|
||||
*/
|
||||
|
||||
killed(item, pr, points, treasure)
|
||||
register struct linked_list *item;
|
||||
bool pr, points, treasure;
|
||||
void
|
||||
killed(struct linked_list *item, bool pr, bool points, bool treasure)
|
||||
{
|
||||
register struct thing *tp, *mp;
|
||||
register struct linked_list *pitem, *nexti, *mitem;
|
||||
|
|
@ -1115,9 +1110,7 @@ bool pr, points, treasure;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
wield_weap(thrown, mp)
|
||||
struct object *thrown;
|
||||
struct thing *mp;
|
||||
wield_weap(struct object *thrown, struct thing *mp)
|
||||
{
|
||||
int look_for = 0, /* The projectile weapon we are looking for */
|
||||
new_rate, /* The rating of a prospective weapon */
|
||||
|
|
@ -1198,8 +1191,9 @@ struct thing *mp;
|
|||
|
||||
return(candidate);
|
||||
}
|
||||
explode(tp)
|
||||
register struct thing *tp;
|
||||
|
||||
void
|
||||
explode(struct thing *tp)
|
||||
{
|
||||
|
||||
register int x,y, damage;
|
||||
|
|
@ -1253,11 +1247,8 @@ register struct thing *tp;
|
|||
* Called when one monster attacks another monster.
|
||||
*/
|
||||
|
||||
skirmish(attacker, mp, weap, thrown)
|
||||
register struct thing *attacker;
|
||||
register coord *mp;
|
||||
struct object *weap;
|
||||
bool thrown;
|
||||
bool
|
||||
skirmish(struct thing *attacker, coord *mp, struct object *weap, bool thrown)
|
||||
{
|
||||
register struct thing *defender;
|
||||
register struct linked_list *item;
|
||||
|
|
|
|||
|
|
@ -299,7 +299,8 @@ static struct item_list item_help[] = {
|
|||
0, 0
|
||||
};
|
||||
|
||||
ident_hero()
|
||||
void
|
||||
ident_hero(void)
|
||||
{
|
||||
bool doit = TRUE;
|
||||
|
||||
|
|
@ -475,7 +476,8 @@ ident_hero()
|
|||
* Real Help
|
||||
*/
|
||||
|
||||
help()
|
||||
void
|
||||
help(void)
|
||||
{
|
||||
register struct h_list *strp = helpstr;
|
||||
register struct item_list *itemp = item_help;
|
||||
|
|
@ -587,8 +589,8 @@ help()
|
|||
* Tell the player what a certain thing is.
|
||||
*/
|
||||
|
||||
identify(ch)
|
||||
register unsigned char ch;
|
||||
void
|
||||
identify(unsigned char ch)
|
||||
{
|
||||
register char *str = NULL;
|
||||
|
||||
|
|
|
|||
|
|
@ -105,10 +105,8 @@ struct words metal[NMETAL] = {
|
|||
* right amounts
|
||||
*/
|
||||
|
||||
badcheck(name, magic, bound)
|
||||
char *name;
|
||||
register struct magic_item *magic;
|
||||
register int bound;
|
||||
void
|
||||
badcheck(char *name, struct magic_item *magic, int bound)
|
||||
{
|
||||
register struct magic_item *end;
|
||||
|
||||
|
|
@ -128,7 +126,8 @@ register int bound;
|
|||
* Initialize the potion color scheme for this time
|
||||
*/
|
||||
|
||||
init_colors()
|
||||
void
|
||||
init_colors(void)
|
||||
{
|
||||
register int i;
|
||||
register char *str;
|
||||
|
|
@ -152,7 +151,8 @@ init_colors()
|
|||
* do any initialization for food
|
||||
*/
|
||||
|
||||
init_foods()
|
||||
void
|
||||
init_foods(void)
|
||||
{
|
||||
register int i;
|
||||
|
||||
|
|
@ -168,7 +168,8 @@ init_foods()
|
|||
* Initialize the construction materials for wands and staffs
|
||||
*/
|
||||
|
||||
init_materials()
|
||||
void
|
||||
init_materials(void)
|
||||
{
|
||||
register int i;
|
||||
register char *str;
|
||||
|
|
@ -203,7 +204,8 @@ init_materials()
|
|||
* do any initialization for miscellaneous magic
|
||||
*/
|
||||
|
||||
init_misc()
|
||||
void
|
||||
init_misc(void)
|
||||
{
|
||||
register int i;
|
||||
|
||||
|
|
@ -221,7 +223,8 @@ init_misc()
|
|||
* Generate the names of the various scrolls
|
||||
*/
|
||||
|
||||
init_names()
|
||||
void
|
||||
init_names(void)
|
||||
{
|
||||
register int nsyl;
|
||||
register char *cp, *sp;
|
||||
|
|
@ -258,7 +261,8 @@ init_names()
|
|||
* roll up the rogue
|
||||
*/
|
||||
|
||||
init_player()
|
||||
void
|
||||
init_player(void)
|
||||
{
|
||||
int stat_total, round = 0, minimum, maximum, ch, i, j = 0;
|
||||
short do_escape, *our_stats[NUMABILITIES-1];
|
||||
|
|
@ -790,7 +794,8 @@ init_player()
|
|||
* Initialize the ring stone setting scheme for this time
|
||||
*/
|
||||
|
||||
init_stones()
|
||||
void
|
||||
init_stones(void)
|
||||
{
|
||||
register int i;
|
||||
register char *str;
|
||||
|
|
@ -815,7 +820,8 @@ init_stones()
|
|||
* Initialize the probabilities for types of things
|
||||
*/
|
||||
|
||||
init_things()
|
||||
void
|
||||
init_things(void)
|
||||
{
|
||||
register struct magic_item *mp;
|
||||
|
||||
|
|
|
|||
59
xrogue/io.c
59
xrogue/io.c
|
|
@ -22,6 +22,8 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
void doadd(char *fmt, va_list ap);
|
||||
|
||||
/*
|
||||
* msg:
|
||||
* Display a message at the top of the screen.
|
||||
|
|
@ -77,7 +79,8 @@ addmsg(char *fmt, ...)
|
|||
* player with the --More-- string. Then erase the message.
|
||||
*/
|
||||
|
||||
rmmsg()
|
||||
void
|
||||
rmmsg(void)
|
||||
{
|
||||
if (mpos) {
|
||||
wclear(msgw);
|
||||
|
|
@ -96,7 +99,8 @@ rmmsg()
|
|||
* is up there with the --More--)
|
||||
*/
|
||||
|
||||
endmsg()
|
||||
void
|
||||
endmsg(void)
|
||||
{
|
||||
/* Needed to track where we are for 5.0 (PC) curses */
|
||||
register int x, y;
|
||||
|
|
@ -141,6 +145,7 @@ endmsg()
|
|||
draw(msgw);
|
||||
}
|
||||
|
||||
void
|
||||
doadd(char *fmt, va_list ap)
|
||||
{
|
||||
vsprintf((char *) &msgbuf[newpos], fmt, ap);
|
||||
|
|
@ -153,9 +158,8 @@ doadd(char *fmt, va_list ap)
|
|||
* flgptr will be NULL if we don't know what the monster is yet!
|
||||
*/
|
||||
|
||||
step_ok(y, x, can_on_monst, flgptr)
|
||||
register int y, x, can_on_monst;
|
||||
register struct thing *flgptr;
|
||||
bool
|
||||
step_ok(int y, int x, int can_on_monst, struct thing *flgptr)
|
||||
{
|
||||
/* can_on_monst = MONSTOK if all we care about are physical obstacles */
|
||||
register struct linked_list *item;
|
||||
|
|
@ -222,6 +226,7 @@ register struct thing *flgptr;
|
|||
* returns true if it is ok for type to shoot over ch
|
||||
*/
|
||||
|
||||
bool
|
||||
shoot_ok(int ch)
|
||||
{
|
||||
switch (ch)
|
||||
|
|
@ -240,10 +245,11 @@ shoot_ok(int ch)
|
|||
/*
|
||||
* status:
|
||||
* Display the important stats line. Keep the cursor where it was.
|
||||
* display: is TRUE, display unconditionally
|
||||
*/
|
||||
|
||||
status(display)
|
||||
bool display; /* is TRUE, display unconditionally */
|
||||
void
|
||||
status(bool display)
|
||||
{
|
||||
register struct stats *stat_ptr, *max_ptr;
|
||||
register int oy = 0, ox = 0, temp;
|
||||
|
|
@ -377,8 +383,8 @@ line_two:
|
|||
* Sit around until the guy types the right key
|
||||
*/
|
||||
|
||||
wait_for(ch)
|
||||
register char ch;
|
||||
void
|
||||
wait_for(char ch)
|
||||
{
|
||||
register char c;
|
||||
|
||||
|
|
@ -407,10 +413,9 @@ register char ch;
|
|||
* typed and then redraw the starting screen.
|
||||
*/
|
||||
|
||||
over_win(oldwin, newin, maxy, maxx, cursory, cursorx, redraw)
|
||||
WINDOW *oldwin, *newin;
|
||||
int maxy, maxx, cursory, cursorx;
|
||||
char redraw;
|
||||
void
|
||||
over_win(WINDOW *oldwin, WINDOW *newin, int maxy, int maxx, int cursory,
|
||||
int cursorx, char redraw)
|
||||
{
|
||||
char blanks[LINELEN+1];
|
||||
register int line, i;
|
||||
|
|
@ -460,9 +465,8 @@ char redraw;
|
|||
* function used to display a window and wait before returning
|
||||
*/
|
||||
|
||||
show_win(scr, message)
|
||||
register WINDOW *scr;
|
||||
char *message;
|
||||
void
|
||||
show_win(WINDOW *scr, char *message)
|
||||
{
|
||||
mvwaddstr(scr, 0, 0, message);
|
||||
touchwin(scr);
|
||||
|
|
@ -477,9 +481,8 @@ char *message;
|
|||
* Displays message on bottom line and waits for a space to return
|
||||
*/
|
||||
|
||||
dbotline(scr,message)
|
||||
WINDOW *scr;
|
||||
char *message;
|
||||
void
|
||||
dbotline(WINDOW *scr, char *message)
|
||||
{
|
||||
mvwaddstr(scr,lines-1,0,message);
|
||||
draw(scr);
|
||||
|
|
@ -491,8 +494,8 @@ char *message;
|
|||
* Restores the screen to the terminal
|
||||
*/
|
||||
|
||||
restscr(scr)
|
||||
WINDOW *scr;
|
||||
void
|
||||
restscr(WINDOW *scr)
|
||||
{
|
||||
clearok(scr,TRUE);
|
||||
touchwin(scr);
|
||||
|
|
@ -506,10 +509,7 @@ WINDOW *scr;
|
|||
*/
|
||||
|
||||
unsigned long
|
||||
netread(error, size, stream)
|
||||
int *error;
|
||||
int size;
|
||||
FILE *stream;
|
||||
netread(int *error, int size, FILE *stream)
|
||||
{
|
||||
unsigned long result = 0L, /* What we read in */
|
||||
partial; /* Partial value */
|
||||
|
|
@ -542,12 +542,13 @@ FILE *stream;
|
|||
/*
|
||||
* netwrite:
|
||||
* 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)
|
||||
unsigned long value; /* What to write */
|
||||
int size; /* How much to write out */
|
||||
FILE *stream; /* Where to write it */
|
||||
int
|
||||
netwrite(unsigned long value, int size, FILE *stream)
|
||||
{
|
||||
int i; /* Goes through value one byte at a time */
|
||||
char outc; /* The next character to be written */
|
||||
|
|
|
|||
|
|
@ -21,13 +21,16 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
void r_discard(struct linked_list *item);
|
||||
void t_discard(struct linked_list *item);
|
||||
|
||||
/*
|
||||
* detach:
|
||||
* Takes an item out of whatever linked list it might be in
|
||||
*/
|
||||
|
||||
_detach(list, item)
|
||||
register struct linked_list **list, *item;
|
||||
void
|
||||
_detach(struct linked_list **list, struct linked_list *item)
|
||||
{
|
||||
if (*list == item)
|
||||
*list = next(item);
|
||||
|
|
@ -42,8 +45,8 @@ register struct linked_list **list, *item;
|
|||
* add an item to the head of a list
|
||||
*/
|
||||
|
||||
_attach(list, item)
|
||||
register struct linked_list **list, *item;
|
||||
void
|
||||
_attach(struct linked_list **list, struct linked_list *item)
|
||||
{
|
||||
if (*list != NULL)
|
||||
{
|
||||
|
|
@ -65,8 +68,8 @@ register struct linked_list **list, *item;
|
|||
* Throw the whole object list away
|
||||
*/
|
||||
|
||||
_o_free_list(ptr)
|
||||
register struct linked_list **ptr;
|
||||
void
|
||||
_o_free_list(struct linked_list **ptr)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -83,8 +86,8 @@ register struct linked_list **ptr;
|
|||
* free up an item and its object(and maybe contents)
|
||||
*/
|
||||
|
||||
o_discard(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
o_discard(struct linked_list *item)
|
||||
{
|
||||
register struct object *obj;
|
||||
|
||||
|
|
@ -102,8 +105,8 @@ register struct linked_list *item;
|
|||
discard the item (monster) itself as that belong to mlist.
|
||||
*/
|
||||
|
||||
_r_free_fire_list(ptr)
|
||||
register struct linked_list **ptr;
|
||||
void
|
||||
_r_free_fire_list(struct linked_list **ptr)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -119,8 +122,8 @@ register struct linked_list **ptr;
|
|||
* Throw the whole list of room exits away
|
||||
*/
|
||||
|
||||
_r_free_list(ptr)
|
||||
register struct linked_list **ptr;
|
||||
void
|
||||
_r_free_list(struct linked_list **ptr)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -137,8 +140,8 @@ register struct linked_list **ptr;
|
|||
* free up an item and its room
|
||||
*/
|
||||
|
||||
r_discard(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
r_discard(struct linked_list *item)
|
||||
{
|
||||
total -= 2;
|
||||
FREE(DOORPTR(item));
|
||||
|
|
@ -150,8 +153,8 @@ register struct linked_list *item;
|
|||
* Throw the whole thing list away
|
||||
*/
|
||||
|
||||
_t_free_list(ptr)
|
||||
register struct linked_list **ptr;
|
||||
void
|
||||
_t_free_list(struct linked_list **ptr)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -168,8 +171,8 @@ register struct linked_list **ptr;
|
|||
* free up an item and its thing
|
||||
*/
|
||||
|
||||
t_discard(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
t_discard(struct linked_list *item)
|
||||
{
|
||||
register struct thing *tp;
|
||||
|
||||
|
|
@ -187,8 +190,8 @@ register struct linked_list *item;
|
|||
* get rid of an item structure -- don't worry about contents
|
||||
*/
|
||||
|
||||
destroy_item(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
destroy_item(struct linked_list *item)
|
||||
{
|
||||
total--;
|
||||
FREE(item);
|
||||
|
|
@ -200,8 +203,7 @@ register struct linked_list *item;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
new_item(size)
|
||||
int size;
|
||||
new_item(int size)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -220,7 +222,7 @@ int size;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
creat_item()
|
||||
creat_item(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
|
||||
|
|
@ -231,8 +233,7 @@ creat_item()
|
|||
}
|
||||
|
||||
char *
|
||||
new(size)
|
||||
int size;
|
||||
new(int size)
|
||||
{
|
||||
register char *space = ALLOC(size);
|
||||
|
||||
|
|
|
|||
|
|
@ -27,10 +27,13 @@
|
|||
#include "rogue.h"
|
||||
|
||||
void open_records(void);
|
||||
bool too_much(void);
|
||||
bool author(void);
|
||||
bool playtime(void);
|
||||
bool betaover(void);
|
||||
|
||||
main(argc, argv, envp)
|
||||
char **argv;
|
||||
char **envp;
|
||||
int
|
||||
main(int argc, char *argv[], char *envp[])
|
||||
{
|
||||
register char *env;
|
||||
time_t now;
|
||||
|
|
@ -283,10 +286,8 @@ char **envp;
|
|||
* Exit the program abnormally.
|
||||
*/
|
||||
|
||||
/*UNUSED*/
|
||||
void
|
||||
endit(sig)
|
||||
int sig;
|
||||
endit(int sig)
|
||||
{
|
||||
NOOP(sig);
|
||||
fatal("Ok, if you want to exit that badly, I'll have to allow it\n");
|
||||
|
|
@ -297,8 +298,8 @@ int sig;
|
|||
* Exit the program, printing a message.
|
||||
*/
|
||||
|
||||
fatal(s)
|
||||
char *s;
|
||||
void
|
||||
fatal(char *s)
|
||||
{
|
||||
clear();
|
||||
move(lines-2, 0);
|
||||
|
|
@ -313,8 +314,8 @@ char *s;
|
|||
* Pick a very random number.
|
||||
*/
|
||||
|
||||
rnd(range)
|
||||
register int range;
|
||||
int
|
||||
rnd(int range)
|
||||
{
|
||||
return( md_rand(range) );
|
||||
}
|
||||
|
|
@ -324,8 +325,8 @@ register int range;
|
|||
* roll a number of dice
|
||||
*/
|
||||
|
||||
roll(number, sides)
|
||||
register int number, sides;
|
||||
int
|
||||
roll(int number, int sides)
|
||||
{
|
||||
register int dtotal = 0;
|
||||
|
||||
|
|
@ -334,7 +335,8 @@ register int number, sides;
|
|||
return dtotal;
|
||||
}
|
||||
|
||||
setup()
|
||||
void
|
||||
setup(void)
|
||||
{
|
||||
md_setup();
|
||||
}
|
||||
|
|
@ -345,7 +347,8 @@ setup()
|
|||
* refreshing things and looking at the proper times.
|
||||
*/
|
||||
|
||||
playit()
|
||||
void
|
||||
playit(void)
|
||||
{
|
||||
register char *opts;
|
||||
|
||||
|
|
@ -366,7 +369,8 @@ playit()
|
|||
* see if the system is being used too much for this game
|
||||
*/
|
||||
|
||||
too_much()
|
||||
bool
|
||||
too_much(void)
|
||||
{
|
||||
/* we no longer do load checking or user counts */
|
||||
return(FALSE);
|
||||
|
|
@ -377,7 +381,8 @@ too_much()
|
|||
* See if a user is an author of the program
|
||||
*/
|
||||
|
||||
author()
|
||||
bool
|
||||
author(void)
|
||||
{
|
||||
switch (md_getuid()) {
|
||||
case 0: /* always OK for root to play */
|
||||
|
|
@ -392,7 +397,8 @@ author()
|
|||
* Returns TRUE when it is a good time to play rogue
|
||||
*/
|
||||
|
||||
playtime()
|
||||
bool
|
||||
playtime(void)
|
||||
{
|
||||
/* we no longer do playtime checking */
|
||||
|
||||
|
|
@ -404,14 +410,15 @@ playtime()
|
|||
* Returns TRUE if the test period of this version of the game is over
|
||||
*/
|
||||
|
||||
betaover()
|
||||
bool
|
||||
betaover(void)
|
||||
{
|
||||
return(FALSE);
|
||||
}
|
||||
|
||||
|
||||
exit_game(flag)
|
||||
int flag;
|
||||
void
|
||||
exit_game(int flag)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
|
|
|||
|
|
@ -27,8 +27,11 @@ struct b_cellscells {
|
|||
|
||||
static char *maze_frontier, *maze_bits;
|
||||
static int maze_lines, maze_cols;
|
||||
static char *moffset(), *foffset();
|
||||
static int rmwall(),findcells(),crankout(),draw_maze();
|
||||
static char *moffset(int y, int x);
|
||||
static char *foffset(int y, int x);
|
||||
static void rmwall(int newy, int newx, int oldy, int oldx);
|
||||
static void draw_maze(void);
|
||||
static int findcells(int y, int x);
|
||||
|
||||
/*
|
||||
* crankout:
|
||||
|
|
@ -36,7 +39,8 @@ static int rmwall(),findcells(),crankout(),draw_maze();
|
|||
*/
|
||||
|
||||
static
|
||||
crankout()
|
||||
void
|
||||
crankout(void)
|
||||
{
|
||||
reg int x, y;
|
||||
|
||||
|
|
@ -70,7 +74,8 @@ crankout()
|
|||
* Draw the maze on this level.
|
||||
*/
|
||||
|
||||
do_maze()
|
||||
void
|
||||
do_maze(void)
|
||||
{
|
||||
reg int least;
|
||||
reg struct room *rp;
|
||||
|
|
@ -94,7 +99,7 @@ do_maze()
|
|||
/*
|
||||
* 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->o_count *= (rnd(50) + 50); /* add in one large hunk */
|
||||
attach(lvl_obj, item);
|
||||
|
|
@ -107,7 +112,7 @@ do_maze()
|
|||
/*
|
||||
* 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);
|
||||
attach(lvl_obj, item);
|
||||
do {
|
||||
|
|
@ -146,7 +151,8 @@ do_maze()
|
|||
*/
|
||||
|
||||
static
|
||||
draw_maze()
|
||||
void
|
||||
draw_maze(void)
|
||||
{
|
||||
reg int i, j, more;
|
||||
reg char *ptr;
|
||||
|
|
@ -183,8 +189,8 @@ draw_maze()
|
|||
* Figure out cells to open up
|
||||
*/
|
||||
|
||||
static findcells(y,x)
|
||||
reg int x, y;
|
||||
static int
|
||||
findcells(int y, int x)
|
||||
{
|
||||
reg int rtpos, i;
|
||||
|
||||
|
|
@ -236,8 +242,7 @@ reg int x, y;
|
|||
*/
|
||||
|
||||
static char *
|
||||
foffset(y, x)
|
||||
int y, x;
|
||||
foffset(int y, int x)
|
||||
{
|
||||
|
||||
return (maze_frontier + (y * maze_cols) + x);
|
||||
|
|
@ -251,8 +256,7 @@ int y, x;
|
|||
*/
|
||||
|
||||
bool
|
||||
maze_view(y, x)
|
||||
int y, x;
|
||||
maze_view(int y, int x)
|
||||
{
|
||||
register int start, goal, delta, ycheck = 0, xcheck = 0, absy, absx, see_radius;
|
||||
register bool row;
|
||||
|
|
@ -360,8 +364,7 @@ int y, x;
|
|||
*/
|
||||
|
||||
static char *
|
||||
moffset(y, x)
|
||||
int y, x;
|
||||
moffset(int y, int x)
|
||||
{
|
||||
return (maze_bits + (y * (cols - 1)) + x);
|
||||
}
|
||||
|
|
@ -371,8 +374,8 @@ int y, x;
|
|||
* Removes appropriate walls from the maze
|
||||
*/
|
||||
static
|
||||
rmwall(newy, newx, oldy, oldx)
|
||||
int newy, newx, oldy, oldx;
|
||||
void
|
||||
rmwall(int newy, int newx, int oldy, int oldx)
|
||||
{
|
||||
reg int xdif,ydif;
|
||||
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@
|
|||
* Change the player's class to the specified one.
|
||||
*/
|
||||
|
||||
changeclass(newclass)
|
||||
long *newclass;
|
||||
void
|
||||
changeclass(long *newclass)
|
||||
{
|
||||
if (*newclass == player.t_ctype) {
|
||||
msg("You feel more skillful.");
|
||||
|
|
@ -152,8 +152,8 @@ long *newclass;
|
|||
* Use the relic that our monster is wielding.
|
||||
*/
|
||||
|
||||
m_use_relic(monster)
|
||||
register struct thing *monster;
|
||||
void
|
||||
m_use_relic(struct thing *monster)
|
||||
{
|
||||
register struct object *obj;
|
||||
|
||||
|
|
@ -181,7 +181,7 @@ register struct thing *monster;
|
|||
}
|
||||
when EMORI_CLOAK:
|
||||
debug("stunning with Emori's cloak");
|
||||
do_zap(monster, obj, &monster->t_newpos, WS_PARALYZE, NULL);
|
||||
do_zap(monster, obj, &monster->t_newpos, WS_PARALYZE, 0);
|
||||
obj->o_charges = 0;
|
||||
|
||||
when ASMO_ROD: {
|
||||
|
|
@ -248,11 +248,12 @@ register struct thing *monster;
|
|||
|
||||
/*
|
||||
* add something to the contents of something else
|
||||
* bag: the holder of the items
|
||||
* item: the item to put inside
|
||||
*/
|
||||
|
||||
put_contents(bag, item)
|
||||
register struct object *bag; /* the holder of the items */
|
||||
register struct linked_list *item; /* the item to put inside */
|
||||
void
|
||||
put_contents(struct object *bag, struct linked_list *item)
|
||||
{
|
||||
register struct linked_list *titem;
|
||||
register struct object *tobj;
|
||||
|
|
@ -277,11 +278,11 @@ register struct linked_list *item; /* the item to put inside */
|
|||
|
||||
/*
|
||||
* remove something from something else
|
||||
* bag: the holder of the items
|
||||
*/
|
||||
|
||||
take_contents(bag, item)
|
||||
register struct object *bag; /* the holder of the items */
|
||||
register struct linked_list *item;
|
||||
void
|
||||
take_contents(struct object *bag, struct linked_list *item)
|
||||
{
|
||||
|
||||
if (bag->o_ac <= 0) {
|
||||
|
|
@ -295,8 +296,8 @@ register struct linked_list *item;
|
|||
}
|
||||
|
||||
|
||||
do_bag(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
do_bag(struct linked_list *item)
|
||||
{
|
||||
|
||||
register struct linked_list *titem = NULL;
|
||||
|
|
@ -417,9 +418,10 @@ register struct linked_list *item;
|
|||
}
|
||||
}
|
||||
|
||||
do_panic(who)
|
||||
int who; /* Kind of monster to panic (all if who is NULL) */
|
||||
void
|
||||
do_panic(int who)
|
||||
{
|
||||
/* who: kind of monster to panic (all if who is 0) */
|
||||
register int x,y;
|
||||
register struct linked_list *mon, *item;
|
||||
register struct thing *th;
|
||||
|
|
@ -485,9 +487,7 @@ int who; /* Kind of monster to panic (all if who is NULL) */
|
|||
*/
|
||||
|
||||
int
|
||||
misc_name(str,obj)
|
||||
char *str;
|
||||
register struct object *obj;
|
||||
misc_name(char *str, struct object *obj)
|
||||
{
|
||||
char buf1[LINELEN];
|
||||
|
||||
|
|
@ -565,7 +565,8 @@ register struct object *obj;
|
|||
return(0);
|
||||
}
|
||||
|
||||
use_emori()
|
||||
void
|
||||
use_emori(void)
|
||||
{
|
||||
char selection; /* Cloak function */
|
||||
int state = 0; /* Menu state */
|
||||
|
|
@ -669,8 +670,8 @@ use_emori()
|
|||
* try to write a scroll with the quill of Nagrom
|
||||
*/
|
||||
|
||||
use_quill(obj)
|
||||
struct object *obj;
|
||||
void
|
||||
use_quill(struct object *obj)
|
||||
{
|
||||
struct linked_list *item;
|
||||
register int i,
|
||||
|
|
@ -761,7 +762,7 @@ struct object *obj;
|
|||
|
||||
/* Should we overlay? */
|
||||
if (menu_overlay && MAXQUILL + 3 < lines - 3) {
|
||||
over_win(cw, hw, MAXQUILL + 5, maxlen + 3, 0, curlen, NULL);
|
||||
over_win(cw, hw, MAXQUILL + 5, maxlen + 3, 0, curlen, '\0');
|
||||
}
|
||||
else draw(hw);
|
||||
}
|
||||
|
|
@ -789,7 +790,7 @@ struct object *obj;
|
|||
/* Should we overlay? */
|
||||
if (menu_overlay && MAXQUILL + 3 < lines - 3) {
|
||||
over_win(cw, hw, MAXQUILL + 5, maxlen + 3,
|
||||
0, curlen, NULL);
|
||||
0, curlen, '\0');
|
||||
}
|
||||
else draw(hw);
|
||||
|
||||
|
|
@ -830,8 +831,8 @@ struct object *obj;
|
|||
* Use something
|
||||
*/
|
||||
|
||||
use_mm(which)
|
||||
int which;
|
||||
void
|
||||
use_mm(int which)
|
||||
{
|
||||
register struct object *obj = NULL;
|
||||
register struct linked_list *item = NULL;
|
||||
|
|
@ -907,7 +908,7 @@ int which;
|
|||
when GERYON_HORN:
|
||||
/* Chase close monsters away */
|
||||
msg("The horn blasts a shrill tone.");
|
||||
do_panic(NULL);
|
||||
do_panic(0);
|
||||
when EYE_VECNA:
|
||||
msg("The pain slowly subsides.. ");
|
||||
when HEIL_ANKH:
|
||||
|
|
@ -934,7 +935,7 @@ int which;
|
|||
msg("The jug is empty");
|
||||
break;
|
||||
}
|
||||
quaff (obj->o_ac, NULL, NULL, FALSE);
|
||||
quaff (obj->o_ac, 0, 0, FALSE);
|
||||
obj->o_ac = JUG_EMPTY;
|
||||
fuse (alchemy, obj, ALCHEMYTIME, AFTER);
|
||||
if (!(obj->o_flags & ISKNOW))
|
||||
|
|
@ -1012,7 +1013,7 @@ int which;
|
|||
break;
|
||||
}
|
||||
obj->o_charges--;
|
||||
do_panic(NULL);
|
||||
do_panic(0);
|
||||
return;
|
||||
/*
|
||||
* dust of disappearance makes the player invisible for a while
|
||||
|
|
@ -1140,7 +1141,7 @@ int which;
|
|||
str = "vibrates softly";
|
||||
msg("You rub the crystal and it %s... ", str);
|
||||
/* cure him */
|
||||
read_scroll(S_CURING, NULL, FALSE);
|
||||
read_scroll(S_CURING, 0, FALSE);
|
||||
/* give him weird hands */
|
||||
turn_on(player, CANHUH);
|
||||
msg("Your fingertips turn blue. ");
|
||||
|
|
@ -1218,8 +1219,7 @@ int which;
|
|||
*/
|
||||
|
||||
int
|
||||
usage_time(item)
|
||||
struct linked_list *item;
|
||||
usage_time(struct linked_list *item)
|
||||
{
|
||||
register struct object *obj;
|
||||
register int units = -1;
|
||||
|
|
|
|||
|
|
@ -19,14 +19,15 @@
|
|||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include "rogue.h"
|
||||
|
||||
/*
|
||||
* Check_residue takes care of any effect of the monster
|
||||
*/
|
||||
|
||||
check_residue(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
check_residue(struct thing *tp)
|
||||
{
|
||||
/*
|
||||
* Take care of special abilities
|
||||
|
|
@ -70,13 +71,11 @@ register struct thing *tp;
|
|||
|
||||
/*
|
||||
* Creat_mons creates the specified monster -- any if 0
|
||||
* person: where to create next to
|
||||
*/
|
||||
|
||||
bool
|
||||
creat_mons(person, monster, report)
|
||||
struct thing *person; /* Where to create next to */
|
||||
short monster;
|
||||
bool report;
|
||||
creat_mons(struct thing *person, short monster, bool report)
|
||||
{
|
||||
struct linked_list *nitem;
|
||||
register struct thing *tp;
|
||||
|
|
@ -131,9 +130,7 @@ bool report;
|
|||
*/
|
||||
|
||||
void
|
||||
genmonsters(least, treas)
|
||||
register int least;
|
||||
bool treas;
|
||||
genmonsters(int least, bool treas)
|
||||
{
|
||||
reg int i;
|
||||
reg struct room *rp = &rooms[0];
|
||||
|
|
@ -180,8 +177,7 @@ bool treas;
|
|||
*/
|
||||
|
||||
short
|
||||
id_monst(monster)
|
||||
register char monster;
|
||||
id_monst(char monster)
|
||||
{
|
||||
register short result;
|
||||
|
||||
|
|
@ -215,11 +211,8 @@ register char monster;
|
|||
* Pick a new monster and add it to the list
|
||||
*/
|
||||
|
||||
new_monster(item, type, cp, max_monster)
|
||||
struct linked_list *item;
|
||||
short type;
|
||||
coord *cp;
|
||||
bool max_monster;
|
||||
void
|
||||
new_monster(struct linked_list *item, short type, coord *cp, bool max_monster)
|
||||
{
|
||||
register struct thing *tp;
|
||||
register struct monster *mp;
|
||||
|
|
@ -428,8 +421,7 @@ bool max_monster;
|
|||
*/
|
||||
|
||||
short
|
||||
randmonster(wander, no_unique)
|
||||
register bool wander, no_unique;
|
||||
randmonster(bool wander, bool no_unique)
|
||||
{
|
||||
register int d, cur_level, range, i;
|
||||
|
||||
|
|
@ -491,8 +483,8 @@ register bool wander, no_unique;
|
|||
* to purchase something.
|
||||
*/
|
||||
|
||||
sell(tp)
|
||||
register struct thing *tp;
|
||||
void
|
||||
sell(struct thing *tp)
|
||||
{
|
||||
register struct linked_list *item, *seller;
|
||||
register struct linked_list *sellpack;
|
||||
|
|
@ -588,8 +580,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
wake_monster(y, x)
|
||||
int y, x;
|
||||
wake_monster(int y, int x)
|
||||
{
|
||||
register struct thing *tp;
|
||||
register struct linked_list *it;
|
||||
|
|
@ -786,7 +777,8 @@ int y, x;
|
|||
* A wandering monster has awakened and is headed for the player
|
||||
*/
|
||||
|
||||
wanderer()
|
||||
void
|
||||
wanderer(void)
|
||||
{
|
||||
register int i;
|
||||
register struct room *hr = roomin(&hero);
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
/*
|
||||
|
|
@ -37,9 +38,8 @@ static char Moves[3][3] = {
|
|||
* The guy stepped on a trap.... Make him pay.
|
||||
*/
|
||||
|
||||
be_trapped(th, tc)
|
||||
register struct thing *th;
|
||||
register coord *tc;
|
||||
char
|
||||
be_trapped(struct thing *th, coord *tc)
|
||||
{
|
||||
register struct trap *tp;
|
||||
register char ch, *mname = NULL;
|
||||
|
|
@ -504,8 +504,7 @@ register coord *tc;
|
|||
*/
|
||||
|
||||
bool
|
||||
blue_light(blessed, cursed)
|
||||
bool blessed, cursed;
|
||||
blue_light(bool blessed, bool cursed)
|
||||
{
|
||||
register struct room *rp;
|
||||
bool ret_val=FALSE; /* Whether or not affect is known */
|
||||
|
|
@ -563,8 +562,8 @@ bool blessed, cursed;
|
|||
* If not, if player came from a legal place, then try to turn him.
|
||||
*/
|
||||
|
||||
corr_move(dy, dx)
|
||||
int dy, dx;
|
||||
void
|
||||
corr_move(int dy, int dx)
|
||||
{
|
||||
int legal=0; /* Number of legal alternatives */
|
||||
register int y, x, /* Indexes though possible positions */
|
||||
|
|
@ -642,7 +641,8 @@ int dy, dx;
|
|||
* Dip an object into a magic pool
|
||||
*/
|
||||
|
||||
dip_it()
|
||||
void
|
||||
dip_it(void)
|
||||
{
|
||||
reg struct linked_list *what;
|
||||
reg struct object *ob;
|
||||
|
|
@ -839,8 +839,8 @@ dip_it()
|
|||
* consequences (fighting, picking up, etc.)
|
||||
*/
|
||||
|
||||
do_move(dy, dx)
|
||||
int dy, dx;
|
||||
void
|
||||
do_move(int dy, int dx)
|
||||
{
|
||||
register struct room *rp, *orp;
|
||||
register unsigned char ch;
|
||||
|
|
@ -1189,8 +1189,8 @@ int dy, dx;
|
|||
* Start the hero running
|
||||
*/
|
||||
|
||||
do_run(ch)
|
||||
char ch;
|
||||
void
|
||||
do_run(char ch)
|
||||
{
|
||||
firstmove = TRUE;
|
||||
running = TRUE;
|
||||
|
|
@ -1206,9 +1206,7 @@ char ch;
|
|||
*/
|
||||
|
||||
bool
|
||||
getdelta(match, dy, dx)
|
||||
char match;
|
||||
int *dy, *dx;
|
||||
getdelta(char match, int *dy, int *dx)
|
||||
{
|
||||
register int y, x;
|
||||
|
||||
|
|
@ -1228,8 +1226,8 @@ int *dy, *dx;
|
|||
* Returns TRUE if this character is some kind of trap
|
||||
*/
|
||||
|
||||
isatrap(ch)
|
||||
reg char ch;
|
||||
bool
|
||||
isatrap(char ch)
|
||||
{
|
||||
switch(ch) {
|
||||
case WORMHOLE:
|
||||
|
|
@ -1250,8 +1248,8 @@ reg char ch;
|
|||
* If it is dark, remove anything that might move.
|
||||
*/
|
||||
|
||||
light(cp)
|
||||
coord *cp;
|
||||
void
|
||||
light(coord *cp)
|
||||
{
|
||||
register struct room *rp;
|
||||
register int j, k, x, y;
|
||||
|
|
@ -1428,8 +1426,7 @@ coord *cp;
|
|||
*/
|
||||
|
||||
bool
|
||||
lit_room(rp)
|
||||
register struct room *rp;
|
||||
lit_room(struct room *rp)
|
||||
{
|
||||
register struct linked_list *fire_item;
|
||||
register struct thing *fire_creature;
|
||||
|
|
@ -1466,8 +1463,7 @@ register struct room *rp;
|
|||
*/
|
||||
|
||||
short
|
||||
movement(tp)
|
||||
register struct thing *tp;
|
||||
movement(struct thing *tp)
|
||||
{
|
||||
register int result;
|
||||
register int carry; /* Percentage carried */
|
||||
|
|
@ -1531,8 +1527,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
coord
|
||||
rndmove(who)
|
||||
struct thing *who;
|
||||
rndmove(struct thing *who)
|
||||
{
|
||||
register int x, y;
|
||||
register int ex, ey, nopen = 0;
|
||||
|
|
@ -1586,9 +1581,8 @@ static const char *trap_types[TRAPTYPES] = {
|
|||
* set a trap at (y, x) on screen.
|
||||
*/
|
||||
|
||||
set_trap(tp, y, x)
|
||||
register struct thing *tp;
|
||||
register int y, x;
|
||||
void
|
||||
set_trap(struct thing *tp, int y, int x)
|
||||
{
|
||||
register bool is_player = (tp == &player);
|
||||
register int selection = rnd(TRAPTYPES-WIZARDTRAPS) + '1';
|
||||
|
|
@ -1645,7 +1639,7 @@ register int y, x;
|
|||
* Put out the selection. The longest line is
|
||||
* the prompt line (39 characters long).
|
||||
*/
|
||||
over_win(cw, hw, num_traps + 3, 41, 0, 39, NULL);
|
||||
over_win(cw, hw, num_traps + 3, 41, 0, 39, '\0');
|
||||
else
|
||||
draw(hw);
|
||||
state = 1; /* Now in prompt window */
|
||||
|
|
@ -1705,7 +1699,7 @@ register int y, x;
|
|||
* Put out the selection. The longest line is
|
||||
* the prompt line (43 characters long).
|
||||
*/
|
||||
over_win(cw, hw, num_traps+3, 45, 0, 43, NULL);
|
||||
over_win(cw, hw, num_traps+3, 45, 0, 43, '\0');
|
||||
else
|
||||
draw(hw);
|
||||
}
|
||||
|
|
@ -1778,8 +1772,8 @@ register int y, x;
|
|||
* returns what a certain thing will display as to the un-initiated
|
||||
*/
|
||||
|
||||
show(y, x)
|
||||
register int y, x;
|
||||
char
|
||||
show(int y, int x)
|
||||
{
|
||||
register unsigned char ch = winat(y, x);
|
||||
register struct linked_list *it;
|
||||
|
|
@ -1819,8 +1813,7 @@ register int y, x;
|
|||
*/
|
||||
|
||||
struct trap *
|
||||
trap_at(y, x)
|
||||
register int y, x;
|
||||
trap_at(int y, int x)
|
||||
{
|
||||
register struct trap *tp, *ep;
|
||||
|
||||
|
|
@ -1838,11 +1831,12 @@ register int y, x;
|
|||
* Calculate how many segments it will take to swing the given
|
||||
* weapon (note that the weapon may actually be a stick or
|
||||
* even something else).
|
||||
* wielder: Who's wielding the weapon
|
||||
* weap: The weapon
|
||||
*/
|
||||
|
||||
weap_move(wielder, weap)
|
||||
register struct thing *wielder; /* Who's wielding the weapon */
|
||||
register struct object *weap; /* The weapon */
|
||||
int
|
||||
weap_move(struct thing *wielder, struct object *weap)
|
||||
{
|
||||
register int weap_rate;
|
||||
int dexterity;
|
||||
|
|
|
|||
|
|
@ -20,13 +20,16 @@
|
|||
#include "rogue.h"
|
||||
#define TERRASAVE 3
|
||||
|
||||
void put_things(LEVTYPE ltype);
|
||||
|
||||
/*
|
||||
* new_level:
|
||||
* Dig and draw a new level
|
||||
* ltype: designates type of level to create
|
||||
*/
|
||||
|
||||
new_level(ltype)
|
||||
LEVTYPE ltype; /* designates type of level to create */
|
||||
void
|
||||
new_level(LEVTYPE ltype)
|
||||
{
|
||||
register int rm = 0, i, cnt;
|
||||
register unsigned char ch;
|
||||
|
|
@ -464,14 +467,15 @@ LEVTYPE ltype; /* designates type of level to create */
|
|||
|
||||
/* Do we sense any food on this level? */
|
||||
if (cur_relic[SURTUR_RING])
|
||||
quaff(P_FFIND, NULL, NULL, FALSE);
|
||||
quaff(P_FFIND, 0, 0, FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* Pick a room that is really there
|
||||
*/
|
||||
|
||||
rnd_room()
|
||||
int
|
||||
rnd_room(void)
|
||||
{
|
||||
register int rm;
|
||||
|
||||
|
|
@ -487,10 +491,11 @@ rnd_room()
|
|||
/*
|
||||
* put_things:
|
||||
* put potions and scrolls on this level
|
||||
* ltype: designates type of level to create
|
||||
*/
|
||||
|
||||
put_things(ltype)
|
||||
LEVTYPE ltype; /* designates type of level to create */
|
||||
void
|
||||
put_things(LEVTYPE ltype)
|
||||
{
|
||||
register int i, rm, cnt;
|
||||
register struct object *cur;
|
||||
|
|
|
|||
|
|
@ -30,6 +30,6 @@ struct network {
|
|||
char *rogue;
|
||||
};
|
||||
extern struct network Network[];
|
||||
extern unsigned long netread();
|
||||
extern unsigned long netwrite();
|
||||
extern unsigned long netread(int *error, int size, FILE *stream);
|
||||
extern int netwrite(unsigned long value, int size, FILE *stream);
|
||||
|
||||
|
|
|
|||
|
|
@ -41,16 +41,16 @@ struct optstruct {
|
|||
|
||||
typedef struct optstruct OPTION;
|
||||
|
||||
int put_bool(),
|
||||
get_bool(),
|
||||
put_str(),
|
||||
get_str(),
|
||||
put_abil(),
|
||||
get_abil(),
|
||||
get_quest(),
|
||||
put_quest(),
|
||||
get_default();
|
||||
|
||||
int get_ro(WINDOW *win, int oy, int ox);
|
||||
void put_bool(bool *b, WINDOW *win);
|
||||
int get_bool(bool *bp, WINDOW *win);
|
||||
void put_str(char *str, WINDOW *win);
|
||||
int get_str(char *opt, WINDOW *win);
|
||||
void put_abil(int *ability, WINDOW *win);
|
||||
void get_abil(int *abil, WINDOW *win);
|
||||
void put_quest(int *quest, WINDOW *win);
|
||||
void get_quest(int *quest, WINDOW *win);
|
||||
void get_default(bool *bp, WINDOW *win);
|
||||
int get_str_prot(char *opt, WINDOW *win);
|
||||
int get_score(char *opt, WINDOW *win);
|
||||
bool allowchange(OPTION *op);
|
||||
|
|
@ -88,9 +88,8 @@ OPTION optlist[] = {
|
|||
* The default attribute field is read-only
|
||||
*/
|
||||
|
||||
get_default(bp, win)
|
||||
bool *bp;
|
||||
WINDOW *win;
|
||||
void
|
||||
get_default(bool *bp, WINDOW *win)
|
||||
{
|
||||
register int oy, ox;
|
||||
|
||||
|
|
@ -103,9 +102,8 @@ WINDOW *win;
|
|||
* The ability (class) field is read-only
|
||||
*/
|
||||
|
||||
get_abil(abil, win)
|
||||
int *abil;
|
||||
WINDOW *win;
|
||||
void
|
||||
get_abil(int *abil, WINDOW *win)
|
||||
{
|
||||
register int oy, ox;
|
||||
|
||||
|
|
@ -118,9 +116,8 @@ WINDOW *win;
|
|||
* The quest field is read-only
|
||||
*/
|
||||
|
||||
get_quest(quest, win)
|
||||
int *quest;
|
||||
WINDOW *win;
|
||||
void
|
||||
get_quest(int *quest, WINDOW *win)
|
||||
{
|
||||
register int oy, ox;
|
||||
|
||||
|
|
@ -134,9 +131,8 @@ WINDOW *win;
|
|||
* "Get" a read-only value.
|
||||
*/
|
||||
|
||||
get_ro(win, oy, ox)
|
||||
WINDOW *win;
|
||||
register int oy, ox;
|
||||
int
|
||||
get_ro(WINDOW *win, int oy, int ox)
|
||||
{
|
||||
register int ny, nx;
|
||||
register bool op_bad;
|
||||
|
|
@ -173,9 +169,8 @@ register int oy, ox;
|
|||
* allow changing a boolean option and print it out
|
||||
*/
|
||||
|
||||
get_bool(bp, win)
|
||||
bool *bp;
|
||||
WINDOW *win;
|
||||
int
|
||||
get_bool(bool *bp, WINDOW *win)
|
||||
{
|
||||
register int oy, ox;
|
||||
register bool op_bad;
|
||||
|
|
@ -223,9 +218,8 @@ WINDOW *win;
|
|||
* set a string option
|
||||
*/
|
||||
|
||||
get_str(opt, win)
|
||||
register char *opt;
|
||||
WINDOW *win;
|
||||
int
|
||||
get_str(char *opt, WINDOW *win)
|
||||
{
|
||||
register char *sp;
|
||||
register int c, oy, ox;
|
||||
|
|
@ -298,7 +292,8 @@ WINDOW *win;
|
|||
* print and then set options from the terminal
|
||||
*/
|
||||
|
||||
option()
|
||||
void
|
||||
option(void)
|
||||
{
|
||||
register OPTION *op;
|
||||
register int retval;
|
||||
|
|
@ -356,8 +351,8 @@ option()
|
|||
* or the end of the entire option string.
|
||||
*/
|
||||
|
||||
parse_opts(str)
|
||||
register char *str;
|
||||
void
|
||||
parse_opts(char *str)
|
||||
{
|
||||
register char *sp;
|
||||
register OPTION *op;
|
||||
|
|
@ -466,9 +461,8 @@ register char *str;
|
|||
* print the character type
|
||||
*/
|
||||
|
||||
put_abil(ability, win)
|
||||
int *ability;
|
||||
WINDOW *win;
|
||||
void
|
||||
put_abil(int *ability, WINDOW *win)
|
||||
{
|
||||
waddstr(win, char_class[*ability].name);
|
||||
}
|
||||
|
|
@ -477,9 +471,8 @@ WINDOW *win;
|
|||
* print out the quest
|
||||
*/
|
||||
|
||||
put_quest(quest, win)
|
||||
int *quest;
|
||||
WINDOW *win;
|
||||
void
|
||||
put_quest(int *quest, WINDOW *win)
|
||||
{
|
||||
waddstr(win, rel_magic[*quest].mi_name);
|
||||
}
|
||||
|
|
@ -488,9 +481,8 @@ WINDOW *win;
|
|||
* put out a boolean
|
||||
*/
|
||||
|
||||
put_bool(b, win)
|
||||
bool *b;
|
||||
WINDOW *win;
|
||||
void
|
||||
put_bool(bool *b, WINDOW *win)
|
||||
{
|
||||
waddstr(win, *b ? "True" : "False");
|
||||
}
|
||||
|
|
@ -499,9 +491,8 @@ WINDOW *win;
|
|||
* put out a string
|
||||
*/
|
||||
|
||||
put_str(str, win)
|
||||
char *str;
|
||||
WINDOW *win;
|
||||
void
|
||||
put_str(char *str, WINDOW *win)
|
||||
{
|
||||
waddstr(win, str);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,8 @@
|
|||
#include <curses.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:
|
||||
|
|
@ -23,7 +24,7 @@ extern char rnd_terrain(), get_terrain();
|
|||
*/
|
||||
|
||||
void
|
||||
init_terrain()
|
||||
init_terrain(void)
|
||||
{
|
||||
register struct room *rp;
|
||||
|
||||
|
|
@ -40,9 +41,7 @@ init_terrain()
|
|||
}
|
||||
|
||||
void
|
||||
do_terrain(basey, basex, deltay, deltax, fresh)
|
||||
int basey, basex, deltay, deltax;
|
||||
bool fresh;
|
||||
do_terrain(int basey, int basex, int deltay, int deltax, bool fresh)
|
||||
{
|
||||
register int cury, curx; /* Current y and x positions */
|
||||
|
||||
|
|
@ -140,7 +139,7 @@ bool fresh;
|
|||
*/
|
||||
|
||||
char
|
||||
rnd_terrain()
|
||||
rnd_terrain(void)
|
||||
{
|
||||
int chance = rnd(100);
|
||||
|
||||
|
|
@ -164,8 +163,7 @@ rnd_terrain()
|
|||
*/
|
||||
|
||||
char
|
||||
get_terrain(one, two, three, four)
|
||||
char one, two, three, four;
|
||||
get_terrain(char one, char two, char three, char four)
|
||||
{
|
||||
register int i;
|
||||
int forest = 0, mountain = 0, lake = 0, meadow = 0, total = 0;
|
||||
|
|
|
|||
|
|
@ -21,6 +21,8 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
bool is_type(struct object *obj, int type);
|
||||
|
||||
/*
|
||||
* add_pack:
|
||||
* Pick up an object and add it to the pack. If the argument is non-null
|
||||
|
|
@ -28,9 +30,7 @@
|
|||
*/
|
||||
|
||||
bool
|
||||
add_pack(item, silent)
|
||||
register struct linked_list *item;
|
||||
bool silent;
|
||||
add_pack(struct linked_list *item, bool silent)
|
||||
{
|
||||
register struct linked_list *ip, *lp = NULL, *ap;
|
||||
register struct object *obj, *op = NULL;
|
||||
|
|
@ -462,9 +462,8 @@ picked_up:
|
|||
* list what is in the pack
|
||||
*/
|
||||
|
||||
inventory(list, type)
|
||||
register struct linked_list *list;
|
||||
register int type;
|
||||
bool
|
||||
inventory(struct linked_list *list, int type)
|
||||
{
|
||||
register struct object *obj;
|
||||
register char ch;
|
||||
|
|
@ -563,7 +562,7 @@ register int type;
|
|||
*/
|
||||
|
||||
void
|
||||
picky_inven()
|
||||
picky_inven(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register char ch, mch;
|
||||
|
|
@ -616,14 +615,12 @@ picky_inven()
|
|||
/*
|
||||
* get_item:
|
||||
* pick something out of a pack for a purpose
|
||||
* purpose: NULL if we should be silent (no prompts)
|
||||
*/
|
||||
|
||||
struct linked_list *
|
||||
get_item(list, purpose, type, askfirst, showcost)
|
||||
reg struct linked_list *list;
|
||||
char *purpose; /* NULL if we should be silent (no prompts) */
|
||||
int type;
|
||||
bool askfirst, showcost;
|
||||
get_item(struct linked_list *list, char *purpose, int type, bool askfirst,
|
||||
bool showcost)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
@ -755,7 +752,7 @@ bool askfirst, showcost;
|
|||
|
||||
/* Write the screen */
|
||||
if ((menu_overlay && cnt < lines - 3) || cnt == 1) {
|
||||
over_win(cw, hw, cnt + 2, maxx + 3, cnt, curx, NULL);
|
||||
over_win(cw, hw, cnt + 2, maxx + 3, cnt, curx, '\0');
|
||||
cnt = -1; /* Indicate we used over_win */
|
||||
}
|
||||
else draw(hw);
|
||||
|
|
@ -814,9 +811,8 @@ bool askfirst, showcost;
|
|||
}
|
||||
}
|
||||
|
||||
pack_char(list, obj)
|
||||
register struct object *obj;
|
||||
struct linked_list *list;
|
||||
char
|
||||
pack_char(struct linked_list *list, struct object *obj)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register char c;
|
||||
|
|
@ -838,8 +834,8 @@ struct linked_list *list;
|
|||
* This updates cur_weapon etc for dropping things
|
||||
*/
|
||||
|
||||
cur_null(op)
|
||||
reg struct object *op;
|
||||
void
|
||||
cur_null(struct object *op)
|
||||
{
|
||||
if (op == cur_weapon) cur_weapon = NULL;
|
||||
else if (op == cur_armor) cur_armor = NULL;
|
||||
|
|
@ -864,7 +860,8 @@ reg struct object *op;
|
|||
* Identify all the items in the pack
|
||||
*/
|
||||
|
||||
idenpack()
|
||||
void
|
||||
idenpack(void)
|
||||
{
|
||||
reg struct linked_list *pc;
|
||||
|
||||
|
|
@ -872,9 +869,8 @@ idenpack()
|
|||
whatis(pc);
|
||||
}
|
||||
|
||||
is_type (obj, type)
|
||||
register struct object *obj;
|
||||
register int type;
|
||||
bool
|
||||
is_type(struct object *obj, int type)
|
||||
{
|
||||
register bool current;
|
||||
|
||||
|
|
@ -1029,8 +1025,8 @@ register int type;
|
|||
return(FALSE);
|
||||
}
|
||||
|
||||
del_pack(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
del_pack(struct linked_list *item)
|
||||
{
|
||||
register struct object *obj;
|
||||
|
||||
|
|
@ -1052,9 +1048,8 @@ register struct linked_list *item;
|
|||
* it to him.
|
||||
*/
|
||||
|
||||
carry_obj(mp, chance)
|
||||
register struct thing *mp;
|
||||
int chance;
|
||||
void
|
||||
carry_obj(struct thing *mp, int chance)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
@ -1077,75 +1072,75 @@ int chance;
|
|||
*/
|
||||
if (on(*mp, ISUNIQUE)) {
|
||||
if (on(*mp, CARRYMDAGGER)) {
|
||||
item = spec_item(RELIC, MUSTY_DAGGER, NULL, NULL);
|
||||
item = spec_item(RELIC, MUSTY_DAGGER, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYCLOAK)) {
|
||||
item = spec_item(RELIC, EMORI_CLOAK, NULL, NULL);
|
||||
item = spec_item(RELIC, EMORI_CLOAK, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYANKH)) {
|
||||
item = spec_item(RELIC, HEIL_ANKH, NULL, NULL);
|
||||
item = spec_item(RELIC, HEIL_ANKH, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYSTAFF)) {
|
||||
item = spec_item(RELIC, MING_STAFF, NULL, NULL);
|
||||
item = spec_item(RELIC, MING_STAFF, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYWAND)) {
|
||||
item = spec_item(RELIC, ORCUS_WAND, NULL, NULL);
|
||||
item = spec_item(RELIC, ORCUS_WAND, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYROD)) {
|
||||
item = spec_item(RELIC, ASMO_ROD, NULL, NULL);
|
||||
item = spec_item(RELIC, ASMO_ROD, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYYAMULET)) {
|
||||
item = spec_item(RELIC, YENDOR_AMULET, NULL, NULL);
|
||||
item = spec_item(RELIC, YENDOR_AMULET, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYBAMULET)) {
|
||||
item = spec_item(RELIC, STONEBONES_AMULET, NULL, NULL);
|
||||
item = spec_item(RELIC, STONEBONES_AMULET, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
|
||||
if (on(*mp, CARRYMANDOLIN)) {
|
||||
item = spec_item(RELIC, BRIAN_MANDOLIN, NULL, NULL);
|
||||
item = spec_item(RELIC, BRIAN_MANDOLIN, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYEYE)) {
|
||||
item = spec_item(RELIC, EYE_VECNA, NULL, NULL);
|
||||
item = spec_item(RELIC, EYE_VECNA, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYAXE)) {
|
||||
item = spec_item(RELIC, AXE_AKLAD, NULL, NULL);
|
||||
item = spec_item(RELIC, AXE_AKLAD, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
|
|
@ -1153,7 +1148,7 @@ int chance;
|
|||
if (on(*mp, CARRYQUILL)) {
|
||||
register int i, howmany;
|
||||
|
||||
item = spec_item(RELIC, QUILL_NAGROM, NULL, NULL);
|
||||
item = spec_item(RELIC, QUILL_NAGROM, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
obj->o_charges = rnd(QUILLCHARGES);
|
||||
|
|
@ -1170,31 +1165,31 @@ int chance;
|
|||
}
|
||||
}
|
||||
if (on(*mp, CARRYMSTAR)) {
|
||||
item = spec_item(RELIC, HRUGGEK_MSTAR, NULL, NULL);
|
||||
item = spec_item(RELIC, HRUGGEK_MSTAR, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYFLAIL)) {
|
||||
item = spec_item(RELIC, YEENOGHU_FLAIL, NULL, NULL);
|
||||
item = spec_item(RELIC, YEENOGHU_FLAIL, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYHORN)) {
|
||||
item = spec_item(RELIC, GERYON_HORN, NULL, NULL);
|
||||
item = spec_item(RELIC, GERYON_HORN, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYSURTURRING)) {
|
||||
item = spec_item(RELIC, SURTUR_RING, NULL, NULL);
|
||||
item = spec_item(RELIC, SURTUR_RING, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
}
|
||||
if (on(*mp, CARRYCARD)) {
|
||||
item = spec_item(RELIC, ALTERAN_CARD, NULL, NULL);
|
||||
item = spec_item(RELIC, ALTERAN_CARD, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_pos = mp->t_pos;
|
||||
attach(mp->t_pack, item);
|
||||
|
|
@ -1204,7 +1199,7 @@ int chance;
|
|||
* If it carries gold, give it some
|
||||
*/
|
||||
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->o_count = GOLDCALC + GOLDCALC;
|
||||
obj->o_pos = mp->t_pos;
|
||||
|
|
@ -1232,7 +1227,7 @@ int chance;
|
|||
when 40: type = E_SLIMEMOLD; /* monster food */
|
||||
otherwise: type = E_RATION;
|
||||
}
|
||||
item = spec_item(FOOD, type, NULL, NULL);
|
||||
item = spec_item(FOOD, type, 0, 0);
|
||||
obj = OBJPTR(item);
|
||||
obj->o_weight = things[TYP_FOOD].mi_wght;
|
||||
obj->o_pos = mp->t_pos;
|
||||
|
|
@ -1356,8 +1351,8 @@ int chance;
|
|||
* he wants (* means everything).
|
||||
*/
|
||||
|
||||
grab(y, x)
|
||||
register int y, x;
|
||||
int
|
||||
grab(int y, int x)
|
||||
{
|
||||
register struct linked_list *next_item, *item;
|
||||
register struct object *obj;
|
||||
|
|
@ -1425,7 +1420,7 @@ register int y, x;
|
|||
* Leave 3 blank lines at the bottom and 3 blank columns to he right.
|
||||
*/
|
||||
if (menu_overlay && num_there < lines - 3) {
|
||||
over_win(cw, hw, num_there + 2, maxlen + 3, num_there, curlen, NULL);
|
||||
over_win(cw, hw, num_there + 2, maxlen + 3, num_there, curlen, '\0');
|
||||
pagecnt = -1; /* Indicate we used over_win */
|
||||
}
|
||||
else draw(hw); /* write screen */
|
||||
|
|
@ -1474,7 +1469,7 @@ register int y, x;
|
|||
*/
|
||||
if (menu_overlay && num_there < lines - 3) {
|
||||
over_win(cw, hw, num_there + 2, maxlen + 3,
|
||||
num_there, 49, NULL);
|
||||
num_there, 49, '\0');
|
||||
cnt = -1; /* Indicate we used over_win */
|
||||
}
|
||||
else draw(hw); /* write screen */
|
||||
|
|
@ -1513,8 +1508,8 @@ register int y, x;
|
|||
* Create a pack for sellers (a la quartermaster)
|
||||
*/
|
||||
|
||||
make_sell_pack(tp)
|
||||
struct thing *tp;
|
||||
void
|
||||
make_sell_pack(struct thing *tp)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
|
|||
|
|
@ -16,15 +16,20 @@
|
|||
See the file LICENSE.TXT for full copyright and licensing information.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
void conn(int r1, int r2);
|
||||
void door(struct room *rm, coord *cp);
|
||||
|
||||
/*
|
||||
* do_passages:
|
||||
* Draw all the passages on a level.
|
||||
*/
|
||||
|
||||
do_passages()
|
||||
void
|
||||
do_passages(void)
|
||||
{
|
||||
register struct rdes *r1, *r2 = NULL;
|
||||
register int i, j;
|
||||
|
|
@ -133,8 +138,8 @@ do_passages()
|
|||
* Draw a corridor from a room in a certain direction.
|
||||
*/
|
||||
|
||||
conn(r1, r2)
|
||||
int r1, r2;
|
||||
void
|
||||
conn(int r1, int r2)
|
||||
{
|
||||
register struct room *rpf, *rpt = NULL;
|
||||
register char rmt;
|
||||
|
|
@ -347,9 +352,8 @@ int r1, r2;
|
|||
* also enters the door in the exits array of the room.
|
||||
*/
|
||||
|
||||
door(rm, cp)
|
||||
register struct room *rm;
|
||||
register coord *cp;
|
||||
void
|
||||
door(struct room *rm, coord *cp)
|
||||
{
|
||||
struct linked_list *newroom;
|
||||
coord *exit;
|
||||
|
|
|
|||
|
|
@ -17,12 +17,15 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
bool pick_spell(struct spells spells[], int ability, int num_spells, int power,
|
||||
const char *prompt, const char *type);
|
||||
/*
|
||||
* affect:
|
||||
* cleric affecting undead
|
||||
*/
|
||||
|
||||
affect()
|
||||
void
|
||||
affect(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp;
|
||||
|
|
@ -140,7 +143,8 @@ annoy:
|
|||
* the cleric asks his deity for a spell
|
||||
*/
|
||||
|
||||
pray()
|
||||
void
|
||||
pray(void)
|
||||
{
|
||||
register int num_prayers, prayer_ability, which_prayer;
|
||||
|
||||
|
|
@ -210,7 +214,7 @@ pray()
|
|||
|
||||
if (cleric_spells[which_prayer].s_type == TYP_POTION)
|
||||
quaff( cleric_spells[which_prayer].s_which,
|
||||
NULL,
|
||||
0,
|
||||
cleric_spells[which_prayer].s_flag,
|
||||
FALSE);
|
||||
else if (cleric_spells[which_prayer].s_type == TYP_SCROLL)
|
||||
|
|
@ -231,7 +235,8 @@ pray()
|
|||
* the magician is going to try and cast a spell
|
||||
*/
|
||||
|
||||
cast()
|
||||
void
|
||||
cast(void)
|
||||
{
|
||||
register int spell_ability, which_spell, num_spells;
|
||||
|
||||
|
|
@ -291,7 +296,7 @@ cast()
|
|||
|
||||
if (magic_spells[which_spell].s_type == TYP_POTION)
|
||||
quaff( magic_spells[which_spell].s_which,
|
||||
NULL,
|
||||
0,
|
||||
magic_spells[which_spell].s_flag,
|
||||
FALSE);
|
||||
else if (magic_spells[which_spell].s_type == TYP_SCROLL)
|
||||
|
|
@ -312,7 +317,8 @@ cast()
|
|||
* the druid asks his deity for a spell
|
||||
*/
|
||||
|
||||
chant()
|
||||
void
|
||||
chant(void)
|
||||
{
|
||||
register int num_chants, chant_ability, which_chant;
|
||||
|
||||
|
|
@ -377,7 +383,7 @@ chant()
|
|||
|
||||
if (druid_spells[which_chant].s_type == TYP_POTION)
|
||||
quaff( druid_spells[which_chant].s_which,
|
||||
NULL,
|
||||
0,
|
||||
druid_spells[which_chant].s_flag,
|
||||
FALSE);
|
||||
else if (druid_spells[which_chant].s_type == TYP_SCROLL)
|
||||
|
|
@ -396,7 +402,8 @@ chant()
|
|||
|
||||
/* Constitution bonus */
|
||||
|
||||
const_bonus() /* Hit point adjustment for changing levels */
|
||||
int
|
||||
const_bonus(void) /* Hit point adjustment for changing levels */
|
||||
{
|
||||
register int bonus;
|
||||
if (pstats.s_const > 9 && pstats.s_const < 18)
|
||||
|
|
@ -436,8 +443,8 @@ const_bonus() /* Hit point adjustment for changing levels */
|
|||
* way to get this artifact and remain alive.
|
||||
*/
|
||||
|
||||
give(th)
|
||||
register struct thing *th;
|
||||
void
|
||||
give(struct thing *th)
|
||||
{
|
||||
/*
|
||||
* Find any monster within one space of you
|
||||
|
|
@ -571,8 +578,8 @@ register struct thing *th;
|
|||
* Frighten a monster. Useful for the 'good' characters.
|
||||
*/
|
||||
|
||||
fright(th)
|
||||
register struct thing *th;
|
||||
void
|
||||
fright(struct thing *th)
|
||||
{
|
||||
/*
|
||||
* Find any monster within one space of you
|
||||
|
|
@ -682,13 +689,14 @@ register struct thing *th;
|
|||
* gsense: Sense gold
|
||||
*/
|
||||
|
||||
gsense()
|
||||
void
|
||||
gsense(void)
|
||||
{
|
||||
/* Thief & assassin can do this, but fighter & ranger can later */
|
||||
if (player.t_ctype == C_THIEF || player.t_ctype == C_ASSASSIN ||
|
||||
((player.t_ctype == C_FIGHTER || player.t_ctype == C_RANGER) &&
|
||||
pstats.s_lvl >= 12)) {
|
||||
read_scroll(S_GFIND, NULL, FALSE);
|
||||
read_scroll(S_GFIND, 0, FALSE);
|
||||
}
|
||||
else msg("You seem to have no gold sense.");
|
||||
return;
|
||||
|
|
@ -698,13 +706,14 @@ gsense()
|
|||
* xsense: Sense traps
|
||||
*/
|
||||
|
||||
xsense()
|
||||
void
|
||||
xsense(void)
|
||||
{
|
||||
/* Only thief can do this, but assassin, fighter, & monk can later */
|
||||
if (player.t_ctype == C_THIEF || ((player.t_ctype == C_ASSASSIN ||
|
||||
player.t_ctype == C_FIGHTER || player.t_ctype == C_MONK) &&
|
||||
pstats.s_lvl >= 14)) {
|
||||
read_scroll(S_FINDTRAPS, NULL, FALSE);
|
||||
read_scroll(S_FINDTRAPS, 0, FALSE);
|
||||
}
|
||||
else msg("You seem not to be able to sense traps.");
|
||||
return;
|
||||
|
|
@ -715,7 +724,8 @@ xsense()
|
|||
* Steal in direction given in delta
|
||||
*/
|
||||
|
||||
steal()
|
||||
void
|
||||
steal(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp;
|
||||
|
|
@ -857,7 +867,8 @@ steal()
|
|||
* Take charmed monsters with you via up or down commands.
|
||||
*/
|
||||
|
||||
take_with()
|
||||
void
|
||||
take_with(void)
|
||||
{
|
||||
register struct thing *tp;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -884,15 +895,17 @@ take_with()
|
|||
/*
|
||||
* this routine lets the player pick the spell that they
|
||||
* want to cast regardless of character class
|
||||
* spells: spell list
|
||||
* ability: spell ability
|
||||
* num_spells: number of spells that can be cast
|
||||
* power: spell power
|
||||
* prompt: prompt for spell list
|
||||
* type: type of thing--> spell, prayer, chant
|
||||
*/
|
||||
|
||||
pick_spell(spells, ability, num_spells, power, prompt, type)
|
||||
struct spells spells[]; /* spell list */
|
||||
int ability; /* spell ability */
|
||||
int num_spells; /* number of spells that can be cast */
|
||||
int power; /* spell power */
|
||||
const char *prompt; /* prompt for spell list */
|
||||
const char *type; /* type of thing--> spell, prayer, chant */
|
||||
bool
|
||||
pick_spell(struct spells spells[], int ability, int num_spells, int power,
|
||||
const char *prompt, const char *type)
|
||||
{
|
||||
bool nohw = FALSE;
|
||||
register int i;
|
||||
|
|
@ -1001,7 +1014,7 @@ const char *type; /* type of thing--> spell, prayer, chant */
|
|||
|
||||
/* Should we overlay? */
|
||||
if (menu_overlay && num_spells + 3 < lines - 3) {
|
||||
over_win(cw, hw, num_spells + 5, maxlen + 3, 0, curlen, NULL);
|
||||
over_win(cw, hw, num_spells + 5, maxlen + 3, 0, curlen, '\0');
|
||||
}
|
||||
else draw(hw);
|
||||
}
|
||||
|
|
@ -1029,7 +1042,7 @@ const char *type; /* type of thing--> spell, prayer, chant */
|
|||
/* Should we overlay? */
|
||||
if (menu_overlay && num_spells + 3 < lines - 3) {
|
||||
over_win(cw, hw, num_spells + 5, maxlen + 3,
|
||||
0, curlen, NULL);
|
||||
0, curlen, '\0');
|
||||
}
|
||||
else draw(hw);
|
||||
|
||||
|
|
@ -1068,7 +1081,8 @@ const char *type; /* type of thing--> spell, prayer, chant */
|
|||
* Let the player know what's happening with himself
|
||||
*/
|
||||
|
||||
opt_player()
|
||||
void
|
||||
opt_player(void)
|
||||
{
|
||||
int i = 1; /* initialize counters */
|
||||
int j = 2;
|
||||
|
|
@ -1446,7 +1460,7 @@ opt_player()
|
|||
if (menu_overlay) { /* Print the list. */
|
||||
wmove(hw, i+2, 0);
|
||||
wprintw(hw, spacemsg);
|
||||
over_win(cw, hw, i+3, j, i+2, 27, NULL);
|
||||
over_win(cw, hw, i+3, j, i+2, 27, '\0');
|
||||
}
|
||||
else {
|
||||
wmove(hw, i+2, 0);
|
||||
|
|
@ -1461,7 +1475,7 @@ opt_player()
|
|||
wprintw(hw, spacemsg);
|
||||
if (j > 2) j = 78;
|
||||
else j = 39;
|
||||
over_win(cw, hw, i+3, j, i+2, 27, NULL);
|
||||
over_win(cw, hw, i+3, j, i+2, 27, '\0');
|
||||
}
|
||||
else {
|
||||
wmove(hw, i+2, 0);
|
||||
|
|
|
|||
|
|
@ -20,6 +20,19 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
int add_charisma(int change);
|
||||
int add_constitution(int change);
|
||||
int add_dexterity(int change);
|
||||
int add_intelligence(int change);
|
||||
int add_strength(int change);
|
||||
int add_wisdom(int change);
|
||||
|
||||
int res_charisma(int howmuch);
|
||||
int res_constitution(int howmuch);
|
||||
int res_dexterity(int howmuch);
|
||||
int res_intelligence(int howmuch);
|
||||
int res_wisdom(int howmuch);
|
||||
|
||||
/*
|
||||
* add_abil is an array of functions used to change attributes. It must be
|
||||
* ordered according to the attribute definitions in rogue.h.
|
||||
|
|
@ -45,8 +58,7 @@ int (*res_abil[NUMABILITIES])() = {
|
|||
*/
|
||||
|
||||
int
|
||||
add_constitution(change)
|
||||
int change;
|
||||
add_constitution(int change)
|
||||
{
|
||||
/* Do the potion */
|
||||
if (change < 0) {
|
||||
|
|
@ -76,8 +88,7 @@ int change;
|
|||
*/
|
||||
|
||||
int
|
||||
add_charisma(change)
|
||||
int change;
|
||||
add_charisma(int change)
|
||||
{
|
||||
/* Do the potion */
|
||||
if (change < 0) msg("You feel less attractive now.");
|
||||
|
|
@ -99,8 +110,7 @@ int change;
|
|||
*/
|
||||
|
||||
int
|
||||
add_dexterity(change)
|
||||
int change;
|
||||
add_dexterity(int change)
|
||||
{
|
||||
int ring_str; /* Value of ring strengths */
|
||||
|
||||
|
|
@ -132,8 +142,8 @@ int change;
|
|||
* add a haste to the player
|
||||
*/
|
||||
|
||||
add_haste(blessed)
|
||||
bool blessed;
|
||||
void
|
||||
add_haste(bool blessed)
|
||||
{
|
||||
int hasttime;
|
||||
|
||||
|
|
@ -171,8 +181,7 @@ bool blessed;
|
|||
*/
|
||||
|
||||
int
|
||||
add_intelligence(change)
|
||||
int change;
|
||||
add_intelligence(int change)
|
||||
{
|
||||
int ring_str; /* Value of ring strengths */
|
||||
|
||||
|
|
@ -203,7 +212,8 @@ int change;
|
|||
* this routine makes the hero move slower
|
||||
*/
|
||||
|
||||
add_slow()
|
||||
void
|
||||
add_slow(void)
|
||||
{
|
||||
/* monks cannot be slowed or hasted */
|
||||
if (player.t_ctype == C_MONK || ISWEARING(R_FREEDOM)) {
|
||||
|
|
@ -232,8 +242,7 @@ add_slow()
|
|||
*/
|
||||
|
||||
int
|
||||
add_strength(change)
|
||||
int change;
|
||||
add_strength(int change)
|
||||
{
|
||||
|
||||
if (change < 0) {
|
||||
|
|
@ -252,8 +261,7 @@ int change;
|
|||
*/
|
||||
|
||||
int
|
||||
add_wisdom(change)
|
||||
int change;
|
||||
add_wisdom(int change)
|
||||
{
|
||||
int ring_str; /* Value of ring strengths */
|
||||
|
||||
|
|
@ -280,11 +288,8 @@ int change;
|
|||
return(0);
|
||||
}
|
||||
|
||||
quaff(which, kind, flags, is_potion)
|
||||
int which;
|
||||
int kind;
|
||||
int flags;
|
||||
bool is_potion;
|
||||
void
|
||||
quaff(int which, int kind, int flags, bool is_potion)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct linked_list *item, *titem;
|
||||
|
|
@ -587,7 +592,7 @@ bool is_potion;
|
|||
blessed ? "much " : "");
|
||||
p_know[P_RAISE] = TRUE;
|
||||
raise_level();
|
||||
do_panic(NULL); /* this startles them */
|
||||
do_panic(0); /* this startles them */
|
||||
if (blessed) raise_level();
|
||||
}
|
||||
when P_HASTE:
|
||||
|
|
@ -941,8 +946,7 @@ bool is_potion;
|
|||
*/
|
||||
|
||||
int
|
||||
res_dexterity(howmuch)
|
||||
int howmuch;
|
||||
res_dexterity(int howmuch)
|
||||
{
|
||||
short save_max;
|
||||
int ring_str;
|
||||
|
|
@ -975,8 +979,7 @@ int howmuch;
|
|||
*/
|
||||
|
||||
int
|
||||
res_intelligence(howmuch)
|
||||
int howmuch;
|
||||
res_intelligence(int howmuch)
|
||||
{
|
||||
short save_max;
|
||||
int ring_str;
|
||||
|
|
@ -1004,8 +1007,7 @@ int howmuch;
|
|||
*/
|
||||
|
||||
int
|
||||
res_wisdom(howmuch)
|
||||
int howmuch;
|
||||
res_wisdom(int howmuch)
|
||||
{
|
||||
short save_max;
|
||||
int ring_str;
|
||||
|
|
@ -1033,8 +1035,7 @@ int howmuch;
|
|||
*/
|
||||
|
||||
int
|
||||
res_constitution(howmuch)
|
||||
int howmuch;
|
||||
res_constitution(int howmuch)
|
||||
{
|
||||
if (howmuch > 0)
|
||||
pstats.s_const = min(pstats.s_const + howmuch, max_stats.s_const);
|
||||
|
|
@ -1048,8 +1049,7 @@ int howmuch;
|
|||
*/
|
||||
|
||||
int
|
||||
res_charisma(howmuch)
|
||||
int howmuch;
|
||||
res_charisma(int howmuch)
|
||||
{
|
||||
if (howmuch > 0)
|
||||
pstats.s_charisma =
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@
|
|||
* how much food does this ring use up?
|
||||
*/
|
||||
|
||||
ring_eat(hand)
|
||||
register int hand;
|
||||
int
|
||||
ring_eat(int hand)
|
||||
{
|
||||
if (cur_ring[hand] == NULL)
|
||||
return 0;
|
||||
|
|
@ -54,8 +54,8 @@ register int hand;
|
|||
return 0;
|
||||
}
|
||||
|
||||
ring_on(item)
|
||||
register struct linked_list *item;
|
||||
void
|
||||
ring_on(struct linked_list *item)
|
||||
{
|
||||
register struct object *obj;
|
||||
register int save_max;
|
||||
|
|
@ -122,8 +122,7 @@ register struct linked_list *item;
|
|||
*/
|
||||
|
||||
char *
|
||||
ring_num(obj)
|
||||
register struct object *obj;
|
||||
ring_num(struct object *obj)
|
||||
{
|
||||
static char buf[5];
|
||||
|
||||
|
|
@ -158,7 +157,8 @@ register struct object *obj;
|
|||
* Return the effect of the specified ring
|
||||
*/
|
||||
|
||||
ring_value(type)
|
||||
int
|
||||
ring_value(int type)
|
||||
{
|
||||
int result = 0;
|
||||
|
||||
|
|
|
|||
72
xrogue/rip.c
72
xrogue/rip.c
|
|
@ -20,6 +20,7 @@
|
|||
#define EDITSCORE 2 /* Edit the current score file */
|
||||
#define ADDSCORE 3 /* Add a new score */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <curses.h>
|
||||
#include <time.h>
|
||||
#include <signal.h>
|
||||
|
|
@ -54,14 +55,20 @@ static char *rip[] = {
|
|||
NULL
|
||||
};
|
||||
|
||||
char *killname();
|
||||
int rs_read_scorefile(FILE *savef, struct sc_ent *entries, int count);
|
||||
void rs_write_scorefile(FILE *savef, struct sc_ent *entries, int count);
|
||||
|
||||
char *killname(short monst);
|
||||
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);
|
||||
|
||||
extern FILE *scorefi, *logfile;
|
||||
|
||||
/*UNUSED*/
|
||||
void
|
||||
byebye(sig)
|
||||
int sig;
|
||||
byebye(int sig)
|
||||
{
|
||||
NOOP(sig);
|
||||
exit_game(EXIT_ENDWIN);
|
||||
|
|
@ -73,8 +80,8 @@ int sig;
|
|||
* Do something really fun when he dies
|
||||
*/
|
||||
|
||||
death(monst)
|
||||
register short monst;
|
||||
void
|
||||
death(short monst)
|
||||
{
|
||||
register char **dp = rip, *killer;
|
||||
register struct tm *lt;
|
||||
|
|
@ -102,8 +109,7 @@ register short monst;
|
|||
}
|
||||
|
||||
char *
|
||||
killname(monst)
|
||||
register short monst;
|
||||
killname(short monst)
|
||||
{
|
||||
static char mons_name[LINELEN/2];
|
||||
int i;
|
||||
|
|
@ -187,10 +193,8 @@ writelog(unsigned long amount, int flags, short monst)
|
|||
*/
|
||||
|
||||
/* VARARGS2 */
|
||||
score(amount, flags, monst)
|
||||
unsigned long amount;
|
||||
int flags;
|
||||
short monst;
|
||||
void
|
||||
score(unsigned long amount, int flags, short monst)
|
||||
{
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
register struct sc_ent *scp;
|
||||
|
|
@ -574,8 +578,8 @@ short monst;
|
|||
* Display the contents of the hero's pack
|
||||
*/
|
||||
|
||||
showpack(howso)
|
||||
char *howso;
|
||||
void
|
||||
showpack(char *howso)
|
||||
{
|
||||
reg char *iname;
|
||||
reg int cnt, packnum;
|
||||
|
|
@ -604,7 +608,8 @@ char *howso;
|
|||
refresh();
|
||||
}
|
||||
|
||||
total_winner()
|
||||
void
|
||||
total_winner(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *obj;
|
||||
|
|
@ -665,9 +670,7 @@ total_winner()
|
|||
|
||||
|
||||
void
|
||||
delete_score(top_ten, idx)
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
int idx;
|
||||
delete_score(struct sc_ent top_ten[NUMSCORE], int idx)
|
||||
{
|
||||
for(;idx < NUMSCORE-1;idx++)
|
||||
top_ten[idx] = top_ten[idx+1];
|
||||
|
|
@ -676,9 +679,7 @@ int idx;
|
|||
}
|
||||
|
||||
int
|
||||
insert_score(top_ten, sc)
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
struct sc_ent *sc;
|
||||
insert_score(struct sc_ent top_ten[NUMSCORE], struct sc_ent *sc)
|
||||
{
|
||||
int i,j;
|
||||
|
||||
|
|
@ -699,10 +700,8 @@ struct sc_ent *sc;
|
|||
|
||||
/* PCS = player-class-system (used to determines uniqueness of player) */
|
||||
|
||||
int
|
||||
is_pcs_match(sc1,sc2)
|
||||
struct sc_ent *sc1;
|
||||
struct sc_ent *sc2;
|
||||
bool
|
||||
is_pcs_match(struct sc_ent *sc1, struct sc_ent *sc2)
|
||||
{
|
||||
return( (strcmp(sc1->sc_name,sc2->sc_name) == 0) &&
|
||||
(sc1->sc_ctype == sc2->sc_ctype) &&
|
||||
|
|
@ -710,10 +709,8 @@ struct sc_ent *sc2;
|
|||
}
|
||||
|
||||
int
|
||||
count_pcs_matches(top_ten,sc,lowest)
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
struct sc_ent *sc;
|
||||
int *lowest;
|
||||
count_pcs_matches(struct sc_ent top_ten[NUMSCORE], struct sc_ent *sc,
|
||||
int *lowest)
|
||||
{
|
||||
int i, matches = 0;
|
||||
|
||||
|
|
@ -729,10 +726,8 @@ int *lowest;
|
|||
}
|
||||
|
||||
int
|
||||
find_most_pcs_matches(top_ten,sc,num,idx)
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
struct sc_ent *sc;
|
||||
int *num, *idx;
|
||||
find_most_pcs_matches(struct sc_ent top_ten[NUMSCORE], struct sc_ent *sc,
|
||||
int *num, int *idx)
|
||||
{
|
||||
int i, matches, max_match=0, max_match_idx=-1, lowest;
|
||||
|
||||
|
|
@ -761,9 +756,7 @@ int *num, *idx;
|
|||
|
||||
|
||||
int
|
||||
add_score(top_ten,sc)
|
||||
struct sc_ent top_ten[NUMSCORE];
|
||||
struct sc_ent *sc;
|
||||
add_score(struct sc_ent top_ten[NUMSCORE], struct sc_ent *sc)
|
||||
{
|
||||
int idx, count;
|
||||
|
||||
|
|
@ -797,11 +790,10 @@ struct sc_ent *sc;
|
|||
}
|
||||
}
|
||||
|
||||
update(top_ten, amount, quest, whoami, flags, level, monst, ctype, system, login)
|
||||
struct sc_ent top_ten[];
|
||||
unsigned long amount;
|
||||
short quest, flags, level, monst, ctype;
|
||||
char *whoami, *system, *login;
|
||||
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)
|
||||
{
|
||||
struct sc_ent sc;
|
||||
|
||||
|
|
|
|||
332
xrogue/rogue.h
332
xrogue/rogue.h
|
|
@ -1223,53 +1223,295 @@ struct sc_ent {
|
|||
* Other structures
|
||||
*/
|
||||
|
||||
struct linked_list *find_mons(), *find_obj(), *get_item(), *new_item(),
|
||||
*new_thing(), *wake_monster(), *get_hurl(), *spec_item(),
|
||||
*creat_item(), *wield_weap();
|
||||
|
||||
struct room *roomin();
|
||||
struct trap *trap_at();
|
||||
|
||||
char *getenv(), *tr_name(), *new(), *vowelstr(),
|
||||
*inv_name(), *num(),
|
||||
*ring_num(), *misc_num(), *blesscurse(), *p_kind(), *typ_name(),
|
||||
*prname(), *monster_name(), *weap_name();
|
||||
|
||||
coord rndmove(), *fallpos(), *doorway(), get_coordinates();
|
||||
int can_shoot(),misc_name();
|
||||
|
||||
short randmonster(), id_monst(), movement();
|
||||
|
||||
int bugkill(), nohaste(), spell_recovery(), doctor(), runners(), swander(),
|
||||
unconfuse(), unsee(), fumble(), unclrhead(), unphase(), noslow(),
|
||||
rollwand(), stomach(), sight(), unstink(), suffocate(), cure_disease(),
|
||||
shoot_bolt(), changeclass(), appear(), dust_appear(), unchoke(),
|
||||
alchemy(), trap_look(), strangle(), ring_teleport(), ring_search(),
|
||||
grab(), dsrpt_player(), quill_charge(), make_sell_pack(), unskill(),
|
||||
findmindex(), nobolt(), nofire(), nocold(), usage_time(), eat_gold(),
|
||||
chant_recovery(), prayer_recovery(), dsrpt_monster(), opt_player();
|
||||
|
||||
bool blue_light(), can_blink(), creat_mons(), add_pack(), invisible(),
|
||||
straight_shot(), maze_view(), lit_room(), getdelta(), save_file(),
|
||||
save_game(), m_use_it(), m_use_pack(), get_dir(), need_dir(),passwd();
|
||||
|
||||
long check_level();
|
||||
long encread();
|
||||
long get_worth();
|
||||
long encwrite();
|
||||
|
||||
void byebye(int sig), genmonsters(), quit(int sig),
|
||||
auto_save(int sig), endit(int sig), tstp();
|
||||
|
||||
void teleport();
|
||||
|
||||
void _attach(struct linked_list **list, struct linked_list *item);
|
||||
void _detach(struct linked_list **list, struct linked_list *item);
|
||||
void _o_free_list(struct linked_list **ptr);
|
||||
void _r_free_fire_list(struct linked_list **ptr);
|
||||
void _r_free_list(struct linked_list **ptr);
|
||||
void _t_free_list(struct linked_list **ptr);
|
||||
int ac_compute(bool ignoremetal);
|
||||
void activity(void);
|
||||
bool add_pack(struct linked_list *item, bool silent);
|
||||
void add_slow(void);
|
||||
void addmsg(char *fmt, ...);
|
||||
void affect(void);
|
||||
void aggravate(bool do_uniques, bool do_good);
|
||||
void alchemy(struct object *obj);
|
||||
void appear(void);
|
||||
bool attack(struct thing *mp, struct object *weapon, bool thrown);
|
||||
void auto_save(int sig);
|
||||
char be_trapped(struct thing *th, coord *tc);
|
||||
bool blue_light(bool blessed, bool cursed);
|
||||
void buy_it(void);
|
||||
void byebye(int sig);
|
||||
bool can_blink(struct thing *tp);
|
||||
int can_shoot(coord *er, coord *ee, coord *shoot_dir);
|
||||
bool cansee(int y, int x);
|
||||
void carry_obj(struct thing *mp, int chance);
|
||||
void cast(void);
|
||||
void changeclass(long *newclass);
|
||||
void chant(void);
|
||||
void chant_recovery(void);
|
||||
void chase(struct thing *tp, coord *ee, struct room *rer, struct room *ree,
|
||||
bool flee);
|
||||
long check_level(void);
|
||||
void check_residue(struct thing *tp);
|
||||
void chg_str(int amt);
|
||||
void choose_qst(void);
|
||||
int cloak_charge(struct object *obj);
|
||||
void command(void);
|
||||
void confus_player(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_plus(int dexterity);
|
||||
int dext_prot(int dexterity);
|
||||
bool diag_ok(coord *sp, coord *ep, struct thing *flgptr);
|
||||
void dip_it(void);
|
||||
void do_chase(struct thing *th);
|
||||
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_panic(int who);
|
||||
void do_passages(void);
|
||||
void do_post(bool startup);
|
||||
void do_rooms(void);
|
||||
void do_run(char ch);
|
||||
void do_teleport(void);
|
||||
void do_terrain(int basey, int basex, int deltay, int deltax, bool fresh);
|
||||
void do_zap(struct thing *zapper, struct object *obj, coord *direction,
|
||||
int which, int flags);
|
||||
void doctor(struct thing *tp);
|
||||
coord *doorway(struct room *rp, coord *door);
|
||||
void draw_room(struct room *rp);
|
||||
bool drop(struct linked_list *item);
|
||||
bool dropcheck(struct object *op);
|
||||
void dsrpt_monster(struct thing *tp, bool always, bool see_him);
|
||||
void dsrpt_player(void);
|
||||
void dust_appear(void);
|
||||
void eat(void);
|
||||
void eat_gold(struct object *obj);
|
||||
int effect(struct thing *att, struct thing *def, struct object *weap,
|
||||
bool thrown, bool see_att, bool see_def);
|
||||
long encread(char *start, unsigned long size, int inf);
|
||||
long encwrite(char *start, unsigned long size, FILE *outf);
|
||||
void endit(int sig);
|
||||
void endmsg(void);
|
||||
void exit_game(int flag);
|
||||
void explode(struct thing *tp);
|
||||
void extinguish(int (*dfunc)());
|
||||
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)());
|
||||
int findmindex(char *name);
|
||||
void fix_stick(struct object *cur);
|
||||
void fright(struct thing *th);
|
||||
void fumble(void);
|
||||
void fuse(int (*dfunc)(), VOID *arg, int time, int type);
|
||||
void genmonsters(int least, bool treas);
|
||||
coord get_coordinates(void);
|
||||
bool get_dir(coord *direction);
|
||||
struct linked_list *get_hurl(struct thing *tp);
|
||||
struct linked_list *get_item(struct linked_list *list, char *purpose, int type,
|
||||
bool askfirst, bool showcost);
|
||||
int get_str(char *opt, WINDOW *win);
|
||||
long get_worth(struct object *obj);
|
||||
int getdeath(void);
|
||||
bool getdelta(char match, int *dy, int *dx);
|
||||
void give(struct thing *th);
|
||||
int grab(int y, int x);
|
||||
void gsense(void);
|
||||
void help(void);
|
||||
bool hit_monster(int y, int x, struct object *obj, struct thing *tp);
|
||||
int hitweight(void);
|
||||
void idenpack(void);
|
||||
void ident_hero(void);
|
||||
void identify(unsigned char ch);
|
||||
void init_colors(void);
|
||||
void init_foods(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 invisible(struct thing *monst);
|
||||
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 (*dfunc)());
|
||||
void killed(struct linked_list *item, bool pr, bool points, bool treasure);
|
||||
int land(void);
|
||||
void lengthen(int (*dfunc)(), int xtime);
|
||||
void light(coord *cp);
|
||||
bool lit_room(struct room *rp);
|
||||
void look(bool wakeup, bool runend);
|
||||
void lower_level(short who);
|
||||
void m_use_relic(struct thing *monster);
|
||||
void m_use_wand(struct thing *monster);
|
||||
void make_sell_pack(struct thing *tp);
|
||||
short makemonster(bool showall, char *action);
|
||||
bool maze_view(int y, int x);
|
||||
int misc_name(char *str, struct object *obj);
|
||||
void missile(int ydelta, int xdelta, struct linked_list *item,
|
||||
struct thing *tp);
|
||||
char *monster_name(struct thing *tp);
|
||||
bool move_hero(int why);
|
||||
short movement(struct thing *tp);
|
||||
void msg(char *fmt, ...);
|
||||
void nameitem(struct linked_list *item, bool mark);
|
||||
bool need_dir(int type, int which);
|
||||
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, bool allow_curse);
|
||||
void nobolt(void);
|
||||
void nocold(void);
|
||||
void nofire(void);
|
||||
void nohaste(void);
|
||||
void noslow(void);
|
||||
char *num(int n1, int n2);
|
||||
void o_discard(struct linked_list *item);
|
||||
void opt_player(void);
|
||||
void option(void);
|
||||
void over_win(WINDOW *oldwin, WINDOW *newin, int maxy, int maxx, int cursory,
|
||||
int cursorx, char redraw);
|
||||
char pack_char(struct linked_list *list, struct object *obj);
|
||||
void parse_opts(char *str);
|
||||
bool passwd(void);
|
||||
void picky_inven(void);
|
||||
bool player_zap(int which, int flag);
|
||||
void playit(void);
|
||||
void pray(void);
|
||||
void prayer_recovery(void);
|
||||
bool price_it(void);
|
||||
char *prname(char *who, bool upper);
|
||||
void quaff(int which, int kind, int flags, bool is_potion);
|
||||
void quill_charge(void);
|
||||
void quit(int sig);
|
||||
void raise_level(void);
|
||||
short randmonster(bool wander, bool no_unique);
|
||||
void read_scroll(int which, int flag, bool is_scroll);
|
||||
void reap(void);
|
||||
int res_strength(long howmuch);
|
||||
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 linked_list *item);
|
||||
void ring_search(void);
|
||||
void ring_teleport(void);
|
||||
int ring_value(int type);
|
||||
void rmmsg(void);
|
||||
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 runners(int segments);
|
||||
void runto(struct thing *runner, coord *spot);
|
||||
bool save(int which, struct thing *who, int adj);
|
||||
bool save_game(void);
|
||||
char secretdoor(int y, int x);
|
||||
void score(unsigned long amount, int flags, short monst);
|
||||
void search(bool is_thief, bool door_chime);
|
||||
void sell(struct thing *tp);
|
||||
void sell_it(void);
|
||||
void set_trap(struct thing *tp, int y, int x);
|
||||
void setup(void);
|
||||
void shoot_bolt(struct thing *shooter, coord start, coord dir,
|
||||
bool get_points, short reason, char *name, int damage);
|
||||
bool shoot_ok(int ch);
|
||||
char show(int y, int x);
|
||||
void sight(void);
|
||||
bool skirmish(struct thing *attacker, coord *mp, struct object *weap,
|
||||
bool thrown);
|
||||
struct linked_list *spec_item(int type, int which, int hit, int damage);
|
||||
void spell_recovery(void);
|
||||
void start_daemon(int (*dfunc)(), 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);
|
||||
int str_plus(short str);
|
||||
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 take_off(void);
|
||||
void take_with(void);
|
||||
void teleport(void);
|
||||
void total_winner(void);
|
||||
int totalenc(struct thing *tp);
|
||||
char *tr_name(char ch);
|
||||
struct trap *trap_at(int y, int x);
|
||||
void trap_look(void);
|
||||
void unchoke(void);
|
||||
void unclrhead(void);
|
||||
void unconfuse(void);
|
||||
int undance(void);
|
||||
void unphase(void);
|
||||
void unsee(void);
|
||||
void unskill(void);
|
||||
void unstink(void);
|
||||
void updpack(int getmax, struct thing *tp);
|
||||
int usage_time(struct linked_list *item);
|
||||
void use_mm(int which);
|
||||
char *vowelstr(char *str);
|
||||
void wait_for(char ch);
|
||||
struct linked_list *wake_monster(int y, int x);
|
||||
void wake_room(struct room *rp);
|
||||
void wanderer(void);
|
||||
void waste_time(void);
|
||||
int weap_move(struct thing *wielder, struct object *weap);
|
||||
char *weap_name(struct object *obj);
|
||||
void wear(void);
|
||||
void wghtchk(void);
|
||||
void whatis(struct linked_list *what);
|
||||
void wield(void);
|
||||
struct linked_list *wield_weap(struct object *thrown, struct thing *mp);
|
||||
void writelog(unsigned long amount, int flags, short monst);
|
||||
void xsense(void);
|
||||
|
||||
int undance(), land(), cloak_charge(), wghtchk();
|
||||
char *getenv(), *misc_num();
|
||||
|
||||
int add_intelligence(), add_strength(), add_wisdom(), add_dexterity(),
|
||||
add_constitution(), add_charisma(), res_intelligence(), res_strength(),
|
||||
res_wisdom(), res_dexterity(), res_constitution(), res_charisma();
|
||||
int usage_time();
|
||||
|
||||
void tstp();
|
||||
|
||||
int md_getuid(void);
|
||||
long md_memused(void);
|
||||
int md_normaluser(void);
|
||||
int md_rand(int range);
|
||||
void md_setup(void);
|
||||
int md_shellescape(void);
|
||||
int md_srand(int seed);
|
||||
|
||||
/*
|
||||
* Now all the global variables
|
||||
|
|
@ -1405,7 +1647,7 @@ extern char *retstr;
|
|||
extern FILE *scorefi;
|
||||
extern FILE *logfile;
|
||||
extern LEVTYPE levtype;
|
||||
extern int (*add_abil[NUMABILITIES])(); /* Functions to change abilities */
|
||||
extern int (*add_abil[NUMABILITIES])(int); /* Functions to change abilities */
|
||||
extern int (*res_abil[NUMABILITIES])(); /* Functions to change abilities */
|
||||
extern int mf_count; /* move_free counter - see actions.c(m_act()) */
|
||||
extern int mf_jmpcnt; /* move_free counter for # of jumps */
|
||||
|
|
|
|||
|
|
@ -20,7 +20,11 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
do_rooms()
|
||||
void horiz(int cnt);
|
||||
void vert(int cnt);
|
||||
|
||||
void
|
||||
do_rooms(void)
|
||||
{
|
||||
register int i;
|
||||
register struct room *rp;
|
||||
|
|
@ -107,7 +111,7 @@ do_rooms()
|
|||
|
||||
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);
|
||||
|
||||
/* Put the gold into the level list of items */
|
||||
|
|
@ -177,9 +181,7 @@ do_rooms()
|
|||
*/
|
||||
|
||||
coord *
|
||||
doorway(rp, door)
|
||||
register struct room *rp;
|
||||
register coord *door;
|
||||
doorway(struct room *rp, coord *door)
|
||||
{
|
||||
register int misses = 0;
|
||||
static coord answer;
|
||||
|
|
@ -208,8 +210,8 @@ register coord *door;
|
|||
* Draw a box around a room
|
||||
*/
|
||||
|
||||
draw_room(rp)
|
||||
register struct room *rp;
|
||||
void
|
||||
draw_room(struct room *rp)
|
||||
{
|
||||
register int j, k;
|
||||
|
||||
|
|
@ -236,8 +238,8 @@ register struct room *rp;
|
|||
* draw a horizontal line
|
||||
*/
|
||||
|
||||
horiz(cnt)
|
||||
register int cnt;
|
||||
void
|
||||
horiz(int cnt)
|
||||
{
|
||||
while (cnt--)
|
||||
addch(HORZWALL);
|
||||
|
|
@ -248,9 +250,8 @@ register int cnt;
|
|||
* pick a random spot in a room
|
||||
*/
|
||||
|
||||
rnd_pos(rp, cp)
|
||||
register struct room *rp;
|
||||
register coord *cp;
|
||||
void
|
||||
rnd_pos(struct room *rp, coord *cp)
|
||||
{
|
||||
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;
|
||||
|
|
@ -265,8 +266,7 @@ register coord *cp;
|
|||
*/
|
||||
|
||||
struct room *
|
||||
roomin(cp)
|
||||
register coord *cp;
|
||||
roomin(coord *cp)
|
||||
{
|
||||
register struct room *rp;
|
||||
|
||||
|
|
@ -281,8 +281,8 @@ register coord *cp;
|
|||
* draw a vertical line
|
||||
*/
|
||||
|
||||
vert(cnt)
|
||||
register int cnt;
|
||||
void
|
||||
vert(int cnt)
|
||||
{
|
||||
register int x, y;
|
||||
|
||||
|
|
|
|||
|
|
@ -31,10 +31,16 @@ extern char version[];
|
|||
extern unsigned char encstr[];
|
||||
extern int big_endian;
|
||||
|
||||
bool rs_write_int(FILE *savef, int c);
|
||||
bool rs_read_int(int inf, int *i);
|
||||
bool rs_save_file(FILE *savef);
|
||||
bool rs_restore_file(int inf);
|
||||
|
||||
int md_unlink(char *file);
|
||||
bool save_file(FILE *savef);
|
||||
|
||||
bool
|
||||
save_game()
|
||||
save_game(void)
|
||||
{
|
||||
register FILE *savef;
|
||||
register int c;
|
||||
|
|
@ -129,12 +135,11 @@ auto_save(int sig)
|
|||
*/
|
||||
|
||||
bool
|
||||
save_file(savef)
|
||||
register FILE *savef;
|
||||
save_file(FILE *savef)
|
||||
{
|
||||
int slines = LINES;
|
||||
int scols = COLS;
|
||||
int ret = FALSE;
|
||||
bool ret = FALSE;
|
||||
int endian = 0x01020304;
|
||||
big_endian = ( *((char *)&endian) == 0x01 );
|
||||
|
||||
|
|
@ -150,9 +155,8 @@ register FILE *savef;
|
|||
return(ret);
|
||||
}
|
||||
|
||||
restore(file, envp)
|
||||
register char *file;
|
||||
char **envp;
|
||||
bool
|
||||
restore(char *file, char *envp[])
|
||||
{
|
||||
register int inf;
|
||||
extern char **environ;
|
||||
|
|
@ -251,10 +255,7 @@ char **envp;
|
|||
*/
|
||||
|
||||
long
|
||||
encwrite(start, size, outf)
|
||||
register char *start;
|
||||
register unsigned long size;
|
||||
register FILE *outf;
|
||||
encwrite(char *start, unsigned long size, FILE *outf)
|
||||
{
|
||||
register unsigned char *ep;
|
||||
register int i = 0;
|
||||
|
|
@ -292,10 +293,7 @@ register FILE *outf;
|
|||
*/
|
||||
|
||||
long
|
||||
encread(start, size, inf)
|
||||
register char *start;
|
||||
register unsigned long size;
|
||||
int inf;
|
||||
encread(char *start, unsigned long size, int inf)
|
||||
{
|
||||
register unsigned char *ep;
|
||||
register int rd_siz;
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
#include "rogue.h"
|
||||
|
|
@ -25,7 +26,8 @@
|
|||
* let the hero get rid of some type of monster
|
||||
*/
|
||||
|
||||
genocide()
|
||||
void
|
||||
genocide(void)
|
||||
{
|
||||
register struct linked_list *ip;
|
||||
register struct thing *mp;
|
||||
|
|
@ -56,10 +58,8 @@ genocide()
|
|||
msg("You have wiped out the %s.", monsters[which_monst].m_name);
|
||||
}
|
||||
|
||||
read_scroll(which, flag, is_scroll)
|
||||
register int which;
|
||||
int flag;
|
||||
bool is_scroll;
|
||||
void
|
||||
read_scroll(int which, int flag, bool is_scroll)
|
||||
{
|
||||
register struct object *obj = NULL, *nobj;
|
||||
register struct linked_list *item, *nitem;
|
||||
|
|
@ -499,7 +499,7 @@ bool is_scroll;
|
|||
nobj->o_flags &= ~ISCURSED;
|
||||
}
|
||||
msg("Your pack glistens brightly!");
|
||||
do_panic(NULL); /* this startles them */
|
||||
do_panic(0); /* this startles them */
|
||||
/* return; leaks item, go through end of function */
|
||||
}
|
||||
else {
|
||||
|
|
|
|||
157
xrogue/state.c
157
xrogue/state.c
|
|
@ -97,6 +97,14 @@ int format_error = FALSE;
|
|||
int save_debug = FALSE;
|
||||
#define DBG(x) {if (save_debug) rsPrintf x;}
|
||||
|
||||
bool rs_read_new_string(int inf, char **s);
|
||||
int find_list_ptr(struct linked_list *l, void *ptr);
|
||||
bool rs_write_coord_list(FILE *savef, struct linked_list *l);
|
||||
bool rs_read_coord_list(int inf, struct linked_list **list);
|
||||
int list_size(struct linked_list *l);
|
||||
bool rs_write_object_list(FILE *savef, struct linked_list *l);
|
||||
bool rs_read_object_list(int inf, struct linked_list **list);
|
||||
|
||||
int
|
||||
rsPrintf(char *fmt, ...)
|
||||
{
|
||||
|
|
@ -128,6 +136,7 @@ get_list_item(struct linked_list *l, int i)
|
|||
return(NULL);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write(FILE *savef, void *ptr, size_t size)
|
||||
{
|
||||
size_t i = 0;
|
||||
|
|
@ -143,6 +152,7 @@ rs_write(FILE *savef, void *ptr, size_t size)
|
|||
|
||||
int end_of_file = FALSE;
|
||||
|
||||
bool
|
||||
rs_read(int inf, void *ptr, size_t size)
|
||||
{
|
||||
int actual;
|
||||
|
|
@ -165,6 +175,7 @@ rs_read(int inf, void *ptr, size_t size)
|
|||
|
||||
int big_endian = 0;
|
||||
|
||||
bool
|
||||
rs_write_uint(FILE *savef, unsigned int c)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -184,6 +195,7 @@ rs_write_uint(FILE *savef, unsigned int c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_int(FILE *savef, int c)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -203,6 +215,7 @@ rs_write_int(FILE *savef, int c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_ulong(FILE *savef, unsigned long c)
|
||||
{
|
||||
unsigned int c2;
|
||||
|
|
@ -229,6 +242,7 @@ rs_write_ulong(FILE *savef, unsigned long c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_long(FILE *savef, long c)
|
||||
{
|
||||
int c2;
|
||||
|
|
@ -255,6 +269,7 @@ rs_write_long(FILE *savef, long c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_boolean(FILE *savef, bool c)
|
||||
{
|
||||
char buf;
|
||||
|
|
@ -269,6 +284,7 @@ rs_write_boolean(FILE *savef, bool c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_int(int inf, int *i)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -291,6 +307,7 @@ rs_read_int(int inf, int *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_uint(int inf, unsigned int *i)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -313,6 +330,7 @@ rs_read_uint(int inf, unsigned int *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_ulong(int inf, unsigned long *i)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -337,6 +355,7 @@ rs_read_ulong(int inf, unsigned long *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_long(int inf, long *i)
|
||||
{
|
||||
char bytes[4];
|
||||
|
|
@ -361,6 +380,7 @@ rs_read_long(int inf, long *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_boolean(int inf, bool *i)
|
||||
{
|
||||
char buf;
|
||||
|
|
@ -372,6 +392,7 @@ rs_read_boolean(int inf, bool *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_ints(FILE *savef, int *c, int count)
|
||||
{
|
||||
int n=0;
|
||||
|
|
@ -384,6 +405,7 @@ rs_write_ints(FILE *savef, int *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_short(FILE *savef, short c)
|
||||
{
|
||||
char bytes[2];
|
||||
|
|
@ -401,6 +423,7 @@ rs_write_short(FILE *savef, short c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_short(int inf, short *s)
|
||||
{
|
||||
char bytes[2];
|
||||
|
|
@ -421,6 +444,7 @@ rs_read_short(int inf, short *s)
|
|||
}
|
||||
|
||||
|
||||
bool
|
||||
rs_write_shorts(FILE *savef, short *c, int count)
|
||||
{
|
||||
int n=0;
|
||||
|
|
@ -433,6 +457,7 @@ rs_write_shorts(FILE *savef, short *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_longs(FILE *savef, long *c, int count)
|
||||
{
|
||||
int n=0;
|
||||
|
|
@ -445,6 +470,7 @@ rs_write_longs(FILE *savef, long *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_ulongs(FILE *savef, unsigned long *c, int count)
|
||||
{
|
||||
int n=0;
|
||||
|
|
@ -457,6 +483,7 @@ rs_write_ulongs(FILE *savef, unsigned long *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_booleans(FILE *savef, bool *c, int count)
|
||||
{
|
||||
int n=0;
|
||||
|
|
@ -469,6 +496,7 @@ rs_write_booleans(FILE *savef, bool *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_ints(int inf, int *i, int count)
|
||||
{
|
||||
int n=0,value=0;
|
||||
|
|
@ -487,6 +515,7 @@ rs_read_ints(int inf, int *i, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_shorts(int inf, short *i, int count)
|
||||
{
|
||||
int n=0,value=0;
|
||||
|
|
@ -505,6 +534,7 @@ rs_read_shorts(int inf, short *i, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_longs(int inf, long *i, int count)
|
||||
{
|
||||
int n=0,value=0;
|
||||
|
|
@ -523,6 +553,7 @@ rs_read_longs(int inf, long *i, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_ulongs(int inf, unsigned long *i, int count)
|
||||
{
|
||||
int n=0,value=0;
|
||||
|
|
@ -541,6 +572,7 @@ rs_read_ulongs(int inf, unsigned long *i, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_booleans(int inf, bool *i, int count)
|
||||
{
|
||||
int n=0,value=0;
|
||||
|
|
@ -559,6 +591,7 @@ rs_read_booleans(int inf, bool *i, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_levtype(FILE *savef, LEVTYPE c)
|
||||
{
|
||||
int lt;
|
||||
|
|
@ -578,6 +611,7 @@ rs_write_levtype(FILE *savef, LEVTYPE c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_levtype(int inf, LEVTYPE *l)
|
||||
{
|
||||
int lt;
|
||||
|
|
@ -597,6 +631,7 @@ rs_read_levtype(int inf, LEVTYPE *l)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_char(FILE *savef, char c)
|
||||
{
|
||||
rs_write(savef, &c, 1);
|
||||
|
|
@ -605,6 +640,7 @@ rs_write_char(FILE *savef, char c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_char(int inf, char *c)
|
||||
{
|
||||
rs_read(inf, c, 1);
|
||||
|
|
@ -612,6 +648,7 @@ rs_read_char(int inf, char *c)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_uchar(FILE *savef, unsigned char c)
|
||||
{
|
||||
rs_write(savef, &c, 1);
|
||||
|
|
@ -620,6 +657,7 @@ rs_write_uchar(FILE *savef, unsigned char c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_uchar(int inf, unsigned char *c)
|
||||
{
|
||||
rs_read(inf, c, 1);
|
||||
|
|
@ -627,6 +665,7 @@ rs_read_uchar(int inf, unsigned char *c)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_string(FILE *savef, char *s)
|
||||
{
|
||||
int len = 0;
|
||||
|
|
@ -639,6 +678,7 @@ rs_write_string(FILE *savef, char *s)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_string_index(int inf, struct words master[], int maxindex, char **str)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -660,6 +700,7 @@ rs_read_string_index(int inf, struct words master[], int maxindex, char **str)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_string_index(FILE *savef, struct words master[], int maxindex, char *str)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -677,6 +718,7 @@ rs_write_string_index(FILE *savef, struct words master[], int maxindex, char *st
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_scrolls(int inf)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -691,6 +733,7 @@ rs_read_scrolls(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_scrolls(FILE *savef)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -701,9 +744,10 @@ rs_write_scrolls(FILE *savef)
|
|||
rs_write_boolean(savef,s_know[i]);
|
||||
rs_write_string(savef,s_guess[i]);
|
||||
}
|
||||
return(READSTAT);
|
||||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_potions(int inf)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -718,6 +762,7 @@ rs_read_potions(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_potions(FILE *savef)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -732,6 +777,7 @@ rs_write_potions(FILE *savef)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_rings(int inf)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -746,6 +792,7 @@ rs_read_rings(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_rings(FILE *savef)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -760,6 +807,7 @@ rs_write_rings(FILE *savef)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_misc(int inf)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -773,6 +821,7 @@ rs_read_misc(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_misc(FILE *savef)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -786,6 +835,7 @@ rs_write_misc(FILE *savef)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_sticks(FILE *savef)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -809,6 +859,7 @@ rs_write_sticks(FILE *savef)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_sticks(int inf)
|
||||
{
|
||||
int i = 0, list = 0;
|
||||
|
|
@ -833,6 +884,7 @@ rs_read_sticks(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_string(int inf, char *s, int max)
|
||||
{
|
||||
int len = 0;
|
||||
|
|
@ -852,6 +904,7 @@ rs_read_string(int inf, char *s, int max)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_new_string(int inf, char **s)
|
||||
{
|
||||
int len=0;
|
||||
|
|
@ -878,6 +931,7 @@ rs_read_new_string(int inf, char **s)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_strings(FILE *savef, char *s[], int count)
|
||||
{
|
||||
int len = 0;
|
||||
|
|
@ -896,6 +950,7 @@ rs_write_strings(FILE *savef, char *s[], int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_words(FILE *savef, struct words *w, int count)
|
||||
{
|
||||
int n = 0;
|
||||
|
|
@ -911,6 +966,7 @@ rs_write_words(FILE *savef, struct words *w, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_words(int inf, struct words *w, int count)
|
||||
{
|
||||
int n = 0;
|
||||
|
|
@ -933,6 +989,7 @@ rs_read_words(int inf, struct words *w, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_new_strings(int inf, char **s, int count)
|
||||
{
|
||||
int len = 0;
|
||||
|
|
@ -966,6 +1023,7 @@ rs_read_new_strings(int inf, char **s, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_coord(FILE *savef, coord *c)
|
||||
{
|
||||
DBG(("X ="));
|
||||
|
|
@ -976,6 +1034,7 @@ rs_write_coord(FILE *savef, coord *c)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_coord(int inf, coord *c)
|
||||
{
|
||||
rs_read_int(inf,&c->x);
|
||||
|
|
@ -1047,6 +1106,7 @@ struct object *find_alchemy_jug(int n) {
|
|||
return tobj;
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_daemons(FILE *savef, struct delayed_action *d_list,int count)
|
||||
{
|
||||
int i = 0;
|
||||
|
|
@ -1173,6 +1233,7 @@ rs_write_daemons(FILE *savef, struct delayed_action *d_list,int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_daemons(int inf, struct delayed_action *d_list, int count)
|
||||
{
|
||||
int i = 0;
|
||||
|
|
@ -1344,6 +1405,7 @@ rs_read_daemons(int inf, struct delayed_action *d_list, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_rooms(FILE *savef, struct room r[], int count)
|
||||
{
|
||||
int n = 0,i = -1;
|
||||
|
|
@ -1376,6 +1438,7 @@ rs_write_rooms(FILE *savef, struct room r[], int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_rooms(int inf, struct room *r, int count)
|
||||
{
|
||||
int value = 0, n = 0, i = 0, index = 0, id = 0;
|
||||
|
|
@ -1436,6 +1499,7 @@ rs_read_rooms(int inf, struct room *r, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_object(FILE *savef, struct object *o)
|
||||
{
|
||||
rs_write_int(savef, RSXR_OBJECT);
|
||||
|
|
@ -1487,6 +1551,7 @@ rs_write_object(FILE *savef, struct object *o)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_object(int inf, struct object *o)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -1523,6 +1588,7 @@ rs_read_object(int inf, struct object *o)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_stats(FILE *savef, struct stats *s)
|
||||
{
|
||||
DBG(("Stats\n"));
|
||||
|
|
@ -1546,6 +1612,7 @@ rs_write_stats(FILE *savef, struct stats *s)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_stats(int inf, struct stats *s)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -1580,6 +1647,7 @@ rs_read_stats(int inf, struct stats *s)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_mstats(FILE *savef, struct mstats *s)
|
||||
{
|
||||
DBG(("M-Stats\n"));
|
||||
|
|
@ -1598,6 +1666,7 @@ rs_write_mstats(FILE *savef, struct mstats *s)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_mstats(int inf, struct mstats *s)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -1634,6 +1703,7 @@ rs_read_mstats(int inf, struct mstats *s)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_init_weps(FILE *savef, struct init_weps *w, int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -1656,6 +1726,7 @@ rs_write_init_weps(FILE *savef, struct init_weps *w, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_init_weps(int inf, struct init_weps *w,int count)
|
||||
{
|
||||
int id,value,i;
|
||||
|
|
@ -1684,6 +1755,7 @@ rs_read_init_weps(int inf, struct init_weps *w,int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_init_armor(FILE *savef, struct init_armor *a, int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -1701,6 +1773,7 @@ rs_write_init_armor(FILE *savef, struct init_armor *a, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_init_armor(int inf, struct init_armor *a,int count)
|
||||
{
|
||||
int id,value,i;
|
||||
|
|
@ -1720,6 +1793,7 @@ rs_read_init_armor(int inf, struct init_armor *a,int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_spells(FILE *savef, struct spells *s, int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -1736,6 +1810,7 @@ rs_write_spells(FILE *savef, struct spells *s, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_spells(int inf, struct spells *s,int count)
|
||||
{
|
||||
int id,value,i;
|
||||
|
|
@ -1753,6 +1828,7 @@ rs_read_spells(int inf, struct spells *s,int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_item_list(FILE *savef, struct item_list *i)
|
||||
{
|
||||
DBG(("Item List\n"));
|
||||
|
|
@ -1761,6 +1837,8 @@ rs_write_item_list(FILE *savef, struct item_list *i)
|
|||
rs_write(savef, i->item_desc, sizeof(i->item_desc));
|
||||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_item_list(int inf, struct item_list *i)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -1772,6 +1850,7 @@ rs_read_item_list(int inf, struct item_list *i)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_h_list(FILE *savef, struct h_list *h)
|
||||
{
|
||||
DBG(("H List\n"));
|
||||
|
|
@ -1781,6 +1860,7 @@ rs_write_h_list(FILE *savef, struct h_list *h)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_h_list(int inf, struct h_list *h)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -1792,6 +1872,7 @@ rs_read_h_list(int inf, struct h_list *h)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_death_types(FILE *savef, struct death_type *d,int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -1807,6 +1888,8 @@ rs_write_death_types(FILE *savef, struct death_type *d,int count)
|
|||
}
|
||||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_death_types(int inf, struct death_type *d, int count)
|
||||
{
|
||||
int id,value,i;
|
||||
|
|
@ -1828,6 +1911,7 @@ rs_read_death_types(int inf, struct death_type *d, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_character_types(FILE *savef, struct character_types *c, int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -1851,6 +1935,7 @@ rs_write_character_types(FILE *savef, struct character_types *c, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_character_types(int inf, struct character_types *c,int count)
|
||||
{
|
||||
int id,value,i;
|
||||
|
|
@ -1880,6 +1965,7 @@ rs_read_character_types(int inf, struct character_types *c,int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_traps(FILE *savef, struct trap *trap,int count)
|
||||
{
|
||||
int n;
|
||||
|
|
@ -1895,8 +1981,10 @@ rs_write_traps(FILE *savef, struct trap *trap,int count)
|
|||
rs_write_coord(savef, &trap[n].tr_pos);
|
||||
rs_write_long(savef, trap[n].tr_flags);
|
||||
}
|
||||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_traps(int inf, struct trap *trap, int count)
|
||||
{
|
||||
int id = 0, value = 0, n = 0;
|
||||
|
|
@ -1937,6 +2025,7 @@ rs_read_traps(int inf, struct trap *trap, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_monsters(FILE * savef, struct monster * m, int count)
|
||||
{
|
||||
int n;
|
||||
|
|
@ -1965,6 +2054,7 @@ rs_write_monsters(FILE * savef, struct monster * m, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_monsters(int inf, struct monster *m, int count)
|
||||
{
|
||||
int id = 0, value = 0, n = 0;
|
||||
|
|
@ -2024,6 +2114,7 @@ rs_read_monsters(int inf, struct monster *m, int count)
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
bool
|
||||
rs_write_coord_list(FILE *savef, struct linked_list *l)
|
||||
{
|
||||
DBG(("Coordinate List\n"));
|
||||
|
|
@ -2039,6 +2130,7 @@ rs_write_coord_list(FILE *savef, struct linked_list *l)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_coord_list(int inf, struct linked_list **list)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -2082,6 +2174,7 @@ rs_read_coord_list(int inf, struct linked_list **list)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_object_list(FILE *savef, struct linked_list *l)
|
||||
{
|
||||
DBG(("Object List\n"));
|
||||
|
|
@ -2097,6 +2190,7 @@ rs_write_object_list(FILE *savef, struct linked_list *l)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_object_list(int inf, struct linked_list **list)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -2175,6 +2269,7 @@ coord *c;
|
|||
return(-1);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_thing(FILE *savef, struct thing *t)
|
||||
{
|
||||
int i = -1;
|
||||
|
|
@ -2285,6 +2380,7 @@ rs_write_thing(FILE *savef, struct thing *t)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
void
|
||||
rs_fix_thing(struct thing *t)
|
||||
{
|
||||
struct linked_list *item;
|
||||
|
|
@ -2302,6 +2398,7 @@ rs_fix_thing(struct thing *t)
|
|||
}
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_thing(int inf, struct thing *t)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -2413,6 +2510,7 @@ list_size(struct linked_list *l)
|
|||
}
|
||||
|
||||
|
||||
bool
|
||||
rs_write_monster_list(FILE *savef, struct linked_list *l)
|
||||
{
|
||||
int cnt = 0;
|
||||
|
|
@ -2435,8 +2533,8 @@ rs_write_monster_list(FILE *savef, struct linked_list *l)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
rs_fix_monster_list(list)
|
||||
struct linked_list *list;
|
||||
void
|
||||
rs_fix_monster_list(struct linked_list *list)
|
||||
{
|
||||
struct linked_list *item;
|
||||
|
||||
|
|
@ -2444,6 +2542,7 @@ struct linked_list *list;
|
|||
rs_fix_thing(THINGPTR(item));
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_monster_list(int inf, struct linked_list **list)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -2485,6 +2584,7 @@ rs_read_monster_list(int inf, struct linked_list **list)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_magic_items(FILE *savef, struct magic_item *i, int count)
|
||||
{
|
||||
int n;
|
||||
|
|
@ -2505,6 +2605,7 @@ rs_write_magic_items(FILE *savef, struct magic_item *i, int count)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_magic_items(int inf, struct magic_item *mi, int count)
|
||||
{
|
||||
int id;
|
||||
|
|
@ -2546,6 +2647,7 @@ rs_read_magic_items(int inf, struct magic_item *mi, int count)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_write_window(FILE *savef, WINDOW *win)
|
||||
{
|
||||
int row,col,height,width;
|
||||
|
|
@ -2558,8 +2660,11 @@ rs_write_window(FILE *savef, WINDOW *win)
|
|||
for(row=0;row<height;row++)
|
||||
for(col=0;col<width;col++)
|
||||
rs_write_int(savef, mvwinch(win,row,col));
|
||||
|
||||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_read_window(int inf, WINDOW *win)
|
||||
{
|
||||
int row,col,maxlines,maxcols,value,width,height;
|
||||
|
|
@ -2588,6 +2693,7 @@ rs_read_window(int inf, WINDOW *win)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_save_file(FILE *savef)
|
||||
{
|
||||
int i, weapon, armor, ring, misc, room = -1;
|
||||
|
|
@ -2743,6 +2849,7 @@ rs_save_file(FILE *savef)
|
|||
return(WRITESTAT);
|
||||
}
|
||||
|
||||
bool
|
||||
rs_restore_file(int inf)
|
||||
{
|
||||
int weapon, armor, ring, misc, room = -1,i,checkpoint;
|
||||
|
|
@ -2904,6 +3011,7 @@ rs_restore_file(int inf)
|
|||
return(READSTAT);
|
||||
}
|
||||
|
||||
void
|
||||
rs_write_scorefile(FILE *savef, struct sc_ent *entries, int count)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -2923,6 +3031,7 @@ rs_write_scorefile(FILE *savef, struct sc_ent *entries, int count)
|
|||
}
|
||||
}
|
||||
|
||||
int
|
||||
rs_read_scorefile(FILE *savef, struct sc_ent *entries, int count)
|
||||
{
|
||||
int i,available = 0;
|
||||
|
|
@ -2954,6 +3063,7 @@ rs_read_scorefile(FILE *savef, struct sc_ent *entries, int count)
|
|||
|
||||
|
||||
|
||||
void
|
||||
rs_print_thing(FILE *outf, struct thing *thing, char *prefix, int list, int index)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -2995,6 +3105,7 @@ rs_print_thing(FILE *outf, struct thing *thing, char *prefix, int list, int inde
|
|||
fprintf(outf,"%st_reserved : %d\n",prefix,thing->t_reserved);
|
||||
}
|
||||
|
||||
void
|
||||
rs_print_game_state(FILE *outf)
|
||||
{
|
||||
fprintf(outf, "Player\n");
|
||||
|
|
@ -3025,8 +3136,7 @@ rs_print_game_state(FILE *outf)
|
|||
****/
|
||||
|
||||
int
|
||||
md_rand(range)
|
||||
register int range;
|
||||
md_rand(int range)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
return(range <= 0 ? 0 : rand() % range);
|
||||
|
|
@ -3036,8 +3146,7 @@ register int range;
|
|||
}
|
||||
|
||||
int
|
||||
md_srand(seed)
|
||||
register int seed;
|
||||
md_srand(int seed)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
srand(seed);
|
||||
|
|
@ -3047,7 +3156,7 @@ register int seed;
|
|||
}
|
||||
|
||||
void
|
||||
md_flushinp()
|
||||
md_flushinp(void)
|
||||
{
|
||||
/* ioctl(0,TIOCFLUSH) */
|
||||
/* ioctl(_tty_ch,TCFLSH,0) */
|
||||
|
|
@ -3055,7 +3164,7 @@ md_flushinp()
|
|||
}
|
||||
|
||||
int
|
||||
md_getuid()
|
||||
md_getuid(void)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
return(42);
|
||||
|
|
@ -3065,7 +3174,7 @@ md_getuid()
|
|||
}
|
||||
|
||||
long
|
||||
md_memused()
|
||||
md_memused(void)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
MEMORYSTATUS stat;
|
||||
|
|
@ -3079,7 +3188,7 @@ md_memused()
|
|||
}
|
||||
|
||||
char *
|
||||
md_getusername()
|
||||
md_getusername(void)
|
||||
{
|
||||
static char login[80];
|
||||
char *l = NULL;
|
||||
|
|
@ -3114,7 +3223,7 @@ md_getusername()
|
|||
}
|
||||
|
||||
char *
|
||||
md_gethomedir()
|
||||
md_gethomedir(void)
|
||||
{
|
||||
static char homedir[PATH_MAX];
|
||||
char *h = NULL;
|
||||
|
|
@ -3181,7 +3290,7 @@ directory_exists(char *dirname)
|
|||
}
|
||||
|
||||
char *
|
||||
md_getroguedir()
|
||||
md_getroguedir(void)
|
||||
{
|
||||
static char path[1024];
|
||||
char *end,*home;
|
||||
|
|
@ -3218,7 +3327,7 @@ md_getroguedir()
|
|||
}
|
||||
|
||||
char *
|
||||
md_getshell()
|
||||
md_getshell(void)
|
||||
{
|
||||
static char shell[PATH_MAX];
|
||||
char *s = NULL;
|
||||
|
|
@ -3246,7 +3355,7 @@ md_getshell()
|
|||
}
|
||||
|
||||
char *
|
||||
md_gethostname()
|
||||
md_gethostname(void)
|
||||
{
|
||||
static char nodename[80];
|
||||
char *n = NULL;
|
||||
|
|
@ -3268,7 +3377,7 @@ md_gethostname()
|
|||
}
|
||||
|
||||
int
|
||||
md_shellescape()
|
||||
md_shellescape(void)
|
||||
{
|
||||
#if (!defined(_WIN32) && !defined(__DJGPP__))
|
||||
int ret_status;
|
||||
|
|
@ -3308,7 +3417,7 @@ md_shellescape()
|
|||
}
|
||||
|
||||
int
|
||||
md_erasechar()
|
||||
md_erasechar(void)
|
||||
{
|
||||
/*
|
||||
return(_tty.sg_erase);
|
||||
|
|
@ -3318,7 +3427,7 @@ md_erasechar()
|
|||
}
|
||||
|
||||
int
|
||||
md_killchar()
|
||||
md_killchar(void)
|
||||
{
|
||||
/*
|
||||
return(_tty.sg_kill);
|
||||
|
|
@ -3362,7 +3471,7 @@ md_htonl(unsigned long int x)
|
|||
}
|
||||
|
||||
void
|
||||
md_init()
|
||||
md_init(void)
|
||||
{
|
||||
#ifdef __INTERIX
|
||||
char *term;
|
||||
|
|
@ -3378,8 +3487,7 @@ md_init()
|
|||
}
|
||||
|
||||
char *
|
||||
md_getpass(prompt)
|
||||
char *prompt;
|
||||
md_getpass(char *prompt)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
static char password_buffer[9];
|
||||
|
|
@ -3446,8 +3554,7 @@ char *prompt;
|
|||
|
||||
/*UNUSED*/
|
||||
void
|
||||
tstp(a)
|
||||
int a;
|
||||
tstp(int a)
|
||||
{
|
||||
mvcur(0, cols - 1, lines - 1, 0);
|
||||
fflush(stdout);
|
||||
|
|
@ -3462,8 +3569,8 @@ int a;
|
|||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
md_setup()
|
||||
void
|
||||
md_setup(void)
|
||||
{
|
||||
#ifdef SIGTSTP
|
||||
signal(SIGTSTP, tstp);
|
||||
|
|
|
|||
|
|
@ -21,16 +21,15 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
void drain(int ymin, int ymax, int xmin, int xmax);
|
||||
|
||||
/*
|
||||
* zap a stick and see what happens
|
||||
*/
|
||||
|
||||
do_zap(zapper, obj, direction, which, flags)
|
||||
struct thing *zapper;
|
||||
struct object *obj;
|
||||
coord *direction;
|
||||
int which;
|
||||
int flags;
|
||||
void
|
||||
do_zap(struct thing *zapper, struct object *obj, coord *direction, int which,
|
||||
int flags)
|
||||
{
|
||||
register struct linked_list *item = NULL;
|
||||
register struct thing *tp;
|
||||
|
|
@ -647,8 +646,8 @@ int flags;
|
|||
* Do drain hit points from player shtick
|
||||
*/
|
||||
|
||||
drain(ymin, ymax, xmin, xmax)
|
||||
int ymin, ymax, xmin, xmax;
|
||||
void
|
||||
drain(int ymin, int ymax, int xmin, int xmax)
|
||||
{
|
||||
register int i, j, count;
|
||||
register struct thing *ick;
|
||||
|
|
@ -727,8 +726,8 @@ int ymin, ymax, xmin, xmax;
|
|||
* initialize a stick
|
||||
*/
|
||||
|
||||
fix_stick(cur)
|
||||
register struct object *cur;
|
||||
void
|
||||
fix_stick(struct object *cur)
|
||||
{
|
||||
if (EQUAL(ws_type[cur->o_which], "staff")) {
|
||||
cur->o_weight = 100;
|
||||
|
|
@ -768,8 +767,8 @@ register struct object *cur;
|
|||
* Use the wand that our monster is wielding.
|
||||
*/
|
||||
|
||||
m_use_wand(monster)
|
||||
register struct thing *monster;
|
||||
void
|
||||
m_use_wand(struct thing *monster)
|
||||
{
|
||||
register struct object *obj;
|
||||
|
||||
|
|
@ -794,14 +793,16 @@ register struct thing *monster;
|
|||
*/
|
||||
msg("%s points a %s at you!", prname(monster_name(monster), TRUE),
|
||||
ws_type[obj->o_which]);
|
||||
do_zap(monster, obj, &monster->t_newpos, obj->o_which, NULL);
|
||||
do_zap(monster, obj, &monster->t_newpos, obj->o_which, 0);
|
||||
monster->t_wand /= 2; /* chance lowers with each use */
|
||||
}
|
||||
|
||||
/*
|
||||
* type: type of item, NULL means stick
|
||||
* which: which item
|
||||
*/
|
||||
bool
|
||||
need_dir(type, which)
|
||||
int type, /* type of item, NULL means stick */
|
||||
which; /* which item */
|
||||
need_dir(int type, int which)
|
||||
{
|
||||
if (type == STICK || type == 0) {
|
||||
switch (which) {
|
||||
|
|
@ -831,9 +832,8 @@ return (FALSE); /* hope we don't get here */
|
|||
* let the player zap a stick and see what happens
|
||||
*/
|
||||
|
||||
player_zap(which, flag)
|
||||
int which;
|
||||
int flag;
|
||||
bool
|
||||
player_zap(int which, int flag)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *obj;
|
||||
|
|
@ -869,7 +869,7 @@ int flag;
|
|||
switch (obj->o_which) {
|
||||
case ORCUS_WAND:
|
||||
/* msg(nothing); */
|
||||
read_scroll(S_PETRIFY, NULL, FALSE);
|
||||
read_scroll(S_PETRIFY, 0, FALSE);
|
||||
return(TRUE);
|
||||
when MING_STAFF:
|
||||
which = WS_MISSILE;
|
||||
|
|
|
|||
|
|
@ -21,13 +21,17 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
int pick_one(struct magic_item *magic, int nitems);
|
||||
char *blesscurse(int flags);
|
||||
char *p_kind(struct object *obj);
|
||||
int extras(void);
|
||||
|
||||
/*
|
||||
* print out the number of charges on a stick
|
||||
*/
|
||||
|
||||
char *
|
||||
charge_str(obj)
|
||||
register struct object *obj;
|
||||
charge_str(struct object *obj)
|
||||
{
|
||||
static char buf[20];
|
||||
|
||||
|
|
@ -47,9 +51,7 @@ register struct object *obj;
|
|||
*/
|
||||
|
||||
char *
|
||||
inv_name(obj, drop)
|
||||
register struct object *obj;
|
||||
bool drop;
|
||||
inv_name(struct object *obj, bool drop)
|
||||
{
|
||||
register char *pb;
|
||||
|
||||
|
|
@ -331,8 +333,7 @@ bool drop;
|
|||
*/
|
||||
|
||||
char *
|
||||
weap_name(obj)
|
||||
register struct object *obj;
|
||||
weap_name(struct object *obj)
|
||||
{
|
||||
switch (obj->o_type) {
|
||||
case WEAPON:
|
||||
|
|
@ -365,8 +366,8 @@ register struct object *obj;
|
|||
* put something down
|
||||
*/
|
||||
|
||||
drop(item)
|
||||
struct linked_list *item;
|
||||
bool
|
||||
drop(struct linked_list *item)
|
||||
{
|
||||
register char ch = 0;
|
||||
register struct linked_list *obj, *nobj;
|
||||
|
|
@ -473,8 +474,8 @@ struct linked_list *item;
|
|||
* do special checks for dropping or unweilding|unwearing|unringing
|
||||
*/
|
||||
|
||||
dropcheck(op)
|
||||
register struct object *op;
|
||||
bool
|
||||
dropcheck(struct object *op)
|
||||
{
|
||||
int save_max;
|
||||
|
||||
|
|
@ -583,9 +584,7 @@ register struct object *op;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
new_thing(thing_type, allow_curse)
|
||||
int thing_type;
|
||||
bool allow_curse;
|
||||
new_thing(int thing_type, bool allow_curse)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *cur;
|
||||
|
|
@ -801,8 +800,7 @@ bool allow_curse;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
spec_item(type, which, hit, damage)
|
||||
int type, which, hit, damage;
|
||||
spec_item(int type, int which, int hit, int damage)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *obj;
|
||||
|
|
@ -877,9 +875,8 @@ int type, which, hit, damage;
|
|||
* pick an item out of a list of nitems possible magic items
|
||||
*/
|
||||
|
||||
pick_one(magic, nitems)
|
||||
register struct magic_item *magic;
|
||||
int nitems;
|
||||
int
|
||||
pick_one(struct magic_item *magic, int nitems)
|
||||
{
|
||||
register struct magic_item *end;
|
||||
register int i;
|
||||
|
|
@ -908,8 +905,7 @@ int nitems;
|
|||
*/
|
||||
|
||||
char *
|
||||
blesscurse(flags)
|
||||
int flags;
|
||||
blesscurse(int flags)
|
||||
{
|
||||
if (flags & ISKNOW) {
|
||||
if (flags & ISCURSED) return("cursed ");
|
||||
|
|
@ -922,11 +918,11 @@ int flags;
|
|||
/*
|
||||
* p_kind returns the type of potion for some types of identified potions;
|
||||
* otherwise, it returns the color.
|
||||
* We assume that obj points to a potion.
|
||||
*/
|
||||
|
||||
char *
|
||||
p_kind(obj)
|
||||
struct object *obj; /* We assume that obj points to a potion */
|
||||
p_kind(struct object *obj)
|
||||
{
|
||||
if (obj->o_which == P_ABIL) return(abilities[obj->o_kind].w_string);
|
||||
else return(p_colors[obj->o_which]);
|
||||
|
|
@ -937,7 +933,8 @@ struct object *obj; /* We assume that obj points to a potion */
|
|||
* Return the number of extra items to be created
|
||||
*/
|
||||
|
||||
extras()
|
||||
int
|
||||
extras(void)
|
||||
{
|
||||
reg int i;
|
||||
|
||||
|
|
|
|||
|
|
@ -16,12 +16,17 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
bool open_market(void);
|
||||
void trans_line(void);
|
||||
char *typ_name(struct object *obj);
|
||||
|
||||
/*
|
||||
* buy_it:
|
||||
* Buy the item on which the hero stands
|
||||
*/
|
||||
|
||||
buy_it()
|
||||
void
|
||||
buy_it(void)
|
||||
{
|
||||
reg int wh;
|
||||
struct linked_list *item = NULL;
|
||||
|
|
@ -84,10 +89,11 @@ buy_it()
|
|||
/*
|
||||
* do_post:
|
||||
* Put a trading post room and stuff on the screen
|
||||
* startup: True if equipping the player at the beginning of the game
|
||||
*/
|
||||
|
||||
do_post(startup)
|
||||
bool startup; /* True if equipping the player at the beginning of the game */
|
||||
void
|
||||
do_post(bool startup)
|
||||
{
|
||||
coord tp;
|
||||
reg int i, j = 0, k;
|
||||
|
|
@ -348,7 +354,8 @@ bool startup; /* True if equipping the player at the beginning of the game */
|
|||
* Retruns TRUE when ok do to transacting
|
||||
*/
|
||||
|
||||
open_market()
|
||||
bool
|
||||
open_market(void)
|
||||
{
|
||||
if (trader >= MAXPURCH && !wizard && level != 0) {
|
||||
msg("The market is closed. The stairs are that-a-way! ");
|
||||
|
|
@ -364,7 +371,8 @@ open_market()
|
|||
* Price the object that the hero stands on
|
||||
*/
|
||||
|
||||
price_it()
|
||||
bool
|
||||
price_it(void)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
@ -404,7 +412,8 @@ price_it()
|
|||
* Sell an item to the trading post
|
||||
*/
|
||||
|
||||
sell_it()
|
||||
void
|
||||
sell_it(void)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
@ -451,7 +460,8 @@ sell_it()
|
|||
* Show how many transactions the hero has left
|
||||
*/
|
||||
|
||||
trans_line()
|
||||
void
|
||||
trans_line(void)
|
||||
{
|
||||
if (level == 0)
|
||||
sprintf(prbuf, "You are welcome to spend whatever gold you have.");
|
||||
|
|
@ -472,8 +482,7 @@ trans_line()
|
|||
*/
|
||||
|
||||
char *
|
||||
typ_name(obj)
|
||||
reg struct object *obj;
|
||||
typ_name(struct object *obj)
|
||||
{
|
||||
static char buff[20];
|
||||
reg int wh;
|
||||
|
|
|
|||
114
xrogue/util.c
114
xrogue/util.c
|
|
@ -26,8 +26,7 @@
|
|||
*/
|
||||
|
||||
int
|
||||
ac_compute(ignoremetal)
|
||||
bool ignoremetal;
|
||||
ac_compute(bool ignoremetal)
|
||||
{
|
||||
register int ac;
|
||||
|
||||
|
|
@ -60,8 +59,8 @@ bool ignoremetal;
|
|||
* aggravate all the monsters on this level
|
||||
*/
|
||||
|
||||
aggravate(do_uniques, do_good)
|
||||
bool do_uniques, do_good;
|
||||
void
|
||||
aggravate(bool do_uniques, bool do_good)
|
||||
{
|
||||
register struct linked_list *mi;
|
||||
register struct thing *thingptr;
|
||||
|
|
@ -78,8 +77,8 @@ bool do_uniques, do_good;
|
|||
* returns true if the hero can see a certain coordinate.
|
||||
*/
|
||||
|
||||
cansee(y, x)
|
||||
register int y, x;
|
||||
bool
|
||||
cansee(int y, int x)
|
||||
{
|
||||
register struct room *rer;
|
||||
register int radius;
|
||||
|
|
@ -126,7 +125,7 @@ register int y, x;
|
|||
*/
|
||||
|
||||
long
|
||||
check_level()
|
||||
check_level(void)
|
||||
{
|
||||
register int i, j, add = 0;
|
||||
register unsigned long exp;
|
||||
|
|
@ -170,8 +169,8 @@ check_level()
|
|||
* it keeps track of the highest it has been, just in case
|
||||
*/
|
||||
|
||||
chg_str(amt)
|
||||
register int amt;
|
||||
void
|
||||
chg_str(int amt)
|
||||
{
|
||||
register int ring_str; /* ring strengths */
|
||||
register struct stats *ptr; /* for speed */
|
||||
|
|
@ -195,7 +194,8 @@ register int amt;
|
|||
* let's confuse the player
|
||||
*/
|
||||
|
||||
confus_player()
|
||||
void
|
||||
confus_player(void)
|
||||
{
|
||||
if (off(player, ISCLEAR))
|
||||
{
|
||||
|
|
@ -213,7 +213,8 @@ confus_player()
|
|||
* this routine computes the players current dexterity
|
||||
*/
|
||||
|
||||
dex_compute()
|
||||
int
|
||||
dex_compute(void)
|
||||
{
|
||||
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
||||
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_DEXTERITY) {
|
||||
|
|
@ -231,9 +232,8 @@ dex_compute()
|
|||
* Check to see if the move is legal if it is diagonal
|
||||
*/
|
||||
|
||||
diag_ok(sp, ep, flgptr)
|
||||
register coord *sp, *ep;
|
||||
struct thing *flgptr;
|
||||
bool
|
||||
diag_ok(coord *sp, coord *ep, struct thing *flgptr)
|
||||
{
|
||||
register int numpaths = 0;
|
||||
|
||||
|
|
@ -254,10 +254,7 @@ struct thing *flgptr;
|
|||
*/
|
||||
|
||||
coord *
|
||||
fallpos(pos, be_clear, range)
|
||||
register coord *pos;
|
||||
bool be_clear;
|
||||
int range;
|
||||
fallpos(coord *pos, bool be_clear, int range)
|
||||
{
|
||||
register int tried, i, j;
|
||||
register char ch;
|
||||
|
|
@ -333,8 +330,8 @@ int range;
|
|||
* Find the index into the monster table of a monster given its name.
|
||||
*/
|
||||
|
||||
findmindex(name)
|
||||
char *name;
|
||||
int
|
||||
findmindex(char *name)
|
||||
{
|
||||
int which;
|
||||
|
||||
|
|
@ -355,9 +352,7 @@ char *name;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
find_mons(y, x)
|
||||
register int y;
|
||||
register int x;
|
||||
find_mons(int y, int x)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct thing *th;
|
||||
|
|
@ -377,9 +372,7 @@ register int x;
|
|||
*/
|
||||
|
||||
struct linked_list *
|
||||
find_obj(y, x)
|
||||
register int y;
|
||||
register int x;
|
||||
find_obj(int y, int x)
|
||||
{
|
||||
register struct linked_list *obj;
|
||||
register struct object *op;
|
||||
|
|
@ -398,7 +391,7 @@ register int x;
|
|||
*/
|
||||
|
||||
coord
|
||||
get_coordinates()
|
||||
get_coordinates(void)
|
||||
{
|
||||
register int which;
|
||||
coord c;
|
||||
|
|
@ -458,8 +451,7 @@ get_coordinates()
|
|||
*/
|
||||
|
||||
bool
|
||||
get_dir(direction)
|
||||
coord *direction;
|
||||
get_dir(coord *direction)
|
||||
{
|
||||
register char *prompt;
|
||||
register bool gotit;
|
||||
|
|
@ -519,8 +511,7 @@ coord *direction;
|
|||
*/
|
||||
|
||||
long
|
||||
get_worth(obj)
|
||||
reg struct object *obj;
|
||||
get_worth(struct object *obj)
|
||||
{
|
||||
reg long worth, wh;
|
||||
|
||||
|
|
@ -591,8 +582,7 @@ reg struct object *obj;
|
|||
*/
|
||||
|
||||
bool
|
||||
invisible(monst)
|
||||
register struct thing *monst;
|
||||
invisible(struct thing *monst)
|
||||
{
|
||||
register bool ret_code;
|
||||
|
||||
|
|
@ -608,8 +598,8 @@ register struct thing *monst;
|
|||
* see if the object is one of the currently used items
|
||||
*/
|
||||
|
||||
is_current(obj)
|
||||
register struct object *obj;
|
||||
bool
|
||||
is_current(struct object *obj)
|
||||
{
|
||||
if (obj == NULL)
|
||||
return FALSE;
|
||||
|
|
@ -648,11 +638,12 @@ register struct object *obj;
|
|||
/*
|
||||
* Look:
|
||||
* A quick glance all around the player
|
||||
* wakeup: Should we wake up monsters
|
||||
* runend: At end of a run -- for mazes
|
||||
*/
|
||||
|
||||
look(wakeup, runend)
|
||||
bool wakeup; /* Should we wake up monsters */
|
||||
bool runend; /* At end of a run -- for mazes */
|
||||
void
|
||||
look(bool wakeup, bool runend)
|
||||
{
|
||||
register int x, y, radius;
|
||||
register unsigned char ch, och;
|
||||
|
|
@ -937,8 +928,8 @@ bool runend; /* At end of a run -- for mazes */
|
|||
* Lower a level of experience
|
||||
*/
|
||||
|
||||
lower_level(who)
|
||||
short who;
|
||||
void
|
||||
lower_level(short who)
|
||||
{
|
||||
int fewer, nsides;
|
||||
unsigned long exp;
|
||||
|
|
@ -975,8 +966,7 @@ short who;
|
|||
*/
|
||||
|
||||
char *
|
||||
monster_name(tp)
|
||||
register struct thing *tp;
|
||||
monster_name(struct thing *tp)
|
||||
{
|
||||
prbuf[0] = '\0';
|
||||
if (on(*tp, ISFLEE) || on(*tp, WASTURNED))
|
||||
|
|
@ -1007,8 +997,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
bool
|
||||
move_hero(why)
|
||||
int why;
|
||||
move_hero(int why)
|
||||
{
|
||||
char *action = NULL;
|
||||
unsigned char which;
|
||||
|
|
@ -1053,7 +1042,8 @@ int why;
|
|||
* The guy just magically went up a level.
|
||||
*/
|
||||
|
||||
raise_level()
|
||||
void
|
||||
raise_level(void)
|
||||
{
|
||||
unsigned long test; /* Next level -- be sure it is not an overflow */
|
||||
|
||||
|
|
@ -1105,12 +1095,13 @@ static const char st_matrix[NUM_CHARTYPES][5] = {
|
|||
/*
|
||||
* save:
|
||||
* See if a creature saves against something
|
||||
* which: which type of save
|
||||
* who: who is saving
|
||||
* adj: saving throw adjustment
|
||||
*/
|
||||
|
||||
save(which, who, adj)
|
||||
int which; /* which type of save */
|
||||
struct thing *who; /* who is saving */
|
||||
int adj; /* saving throw adjustment */
|
||||
bool
|
||||
save(int which, struct thing *who, int adj)
|
||||
{
|
||||
register int need, level, protect;
|
||||
|
||||
|
|
@ -1167,8 +1158,8 @@ int adj; /* saving throw adjustment */
|
|||
* Figure out what a secret door looks like.
|
||||
*/
|
||||
|
||||
secretdoor(y, x)
|
||||
register int y, x;
|
||||
char
|
||||
secretdoor(int y, int x)
|
||||
{
|
||||
register int i;
|
||||
register struct room *rp;
|
||||
|
|
@ -1192,7 +1183,8 @@ register int y, x;
|
|||
* this routine computes the players current strength
|
||||
*/
|
||||
|
||||
str_compute()
|
||||
int
|
||||
str_compute(void)
|
||||
{
|
||||
if (cur_misc[WEAR_GAUNTLET] != NULL &&
|
||||
cur_misc[WEAR_GAUNTLET]->o_which == MM_G_OGRE) {
|
||||
|
|
@ -1209,9 +1201,8 @@ str_compute()
|
|||
* copy string using unctrl for things
|
||||
*/
|
||||
|
||||
strucpy(s1, s2, len)
|
||||
register char *s1, *s2;
|
||||
register int len;
|
||||
void
|
||||
strucpy(char *s1, char *s2, int len)
|
||||
{
|
||||
register char *sp;
|
||||
while (len--)
|
||||
|
|
@ -1229,8 +1220,7 @@ register int len;
|
|||
*/
|
||||
|
||||
char *
|
||||
tr_name(ch)
|
||||
char ch;
|
||||
tr_name(char ch)
|
||||
{
|
||||
register char *s = NULL;
|
||||
|
||||
|
|
@ -1263,8 +1253,7 @@ char ch;
|
|||
*/
|
||||
|
||||
char *
|
||||
vowelstr(str)
|
||||
register char *str;
|
||||
vowelstr(char *str)
|
||||
{
|
||||
switch (*str)
|
||||
{
|
||||
|
|
@ -1283,8 +1272,8 @@ register char *str;
|
|||
* wake up a room full (hopefully) of creatures
|
||||
*/
|
||||
|
||||
wake_room(rp)
|
||||
register struct room *rp;
|
||||
void
|
||||
wake_room(struct room *rp)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp;
|
||||
|
|
@ -1302,7 +1291,8 @@ register struct room *rp;
|
|||
* Do nothing but let other things happen
|
||||
*/
|
||||
|
||||
waste_time()
|
||||
void
|
||||
waste_time(void)
|
||||
{
|
||||
if (inwhgt) /* if from wghtchk then done */
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -21,10 +21,8 @@
|
|||
#include <string.h>
|
||||
#include "rogue.h"
|
||||
|
||||
boomerang(ydelta, xdelta, item, tp)
|
||||
int ydelta, xdelta;
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp;
|
||||
void
|
||||
boomerang(int ydelta, int xdelta, struct linked_list *item, struct thing *tp)
|
||||
{
|
||||
register struct object *obj;
|
||||
struct thing midpoint;
|
||||
|
|
@ -56,10 +54,8 @@ register struct thing *tp;
|
|||
* tp other than t_pos unless we change boomerang().
|
||||
*/
|
||||
|
||||
do_motion(obj, ydelta, xdelta, tp)
|
||||
register struct object *obj;
|
||||
register int ydelta, xdelta;
|
||||
register struct thing *tp;
|
||||
void
|
||||
do_motion(struct object *obj, int ydelta, int xdelta, struct thing *tp)
|
||||
{
|
||||
|
||||
/*
|
||||
|
|
@ -117,9 +113,8 @@ register struct thing *tp;
|
|||
* Drop an item someplace around here.
|
||||
*/
|
||||
|
||||
fall(item, pr)
|
||||
register struct linked_list *item;
|
||||
bool pr;
|
||||
void
|
||||
fall(struct linked_list *item, bool pr)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct room *rp;
|
||||
|
|
@ -171,10 +166,8 @@ bool pr;
|
|||
* Does the missile hit the monster
|
||||
*/
|
||||
|
||||
hit_monster(y, x, obj, tp)
|
||||
register int y, x;
|
||||
struct object *obj;
|
||||
register struct thing *tp;
|
||||
bool
|
||||
hit_monster(int y, int x, struct object *obj, struct thing *tp)
|
||||
{
|
||||
static coord mp;
|
||||
|
||||
|
|
@ -204,9 +197,8 @@ register struct thing *tp;
|
|||
* Set up the initial goodies for a weapon
|
||||
*/
|
||||
|
||||
init_weapon(weap, type)
|
||||
register struct object *weap;
|
||||
char type;
|
||||
void
|
||||
init_weapon(struct object *weap, char type)
|
||||
{
|
||||
register struct init_weps *iwp;
|
||||
|
||||
|
|
@ -229,10 +221,8 @@ char type;
|
|||
* Fire a missile in a given direction
|
||||
*/
|
||||
|
||||
missile(ydelta, xdelta, item, tp)
|
||||
int ydelta, xdelta;
|
||||
register struct linked_list *item;
|
||||
register struct thing *tp;
|
||||
void
|
||||
missile(int ydelta, int xdelta, struct linked_list *item, struct thing *tp)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct linked_list *nitem;
|
||||
|
|
@ -308,8 +298,7 @@ register struct thing *tp;
|
|||
*/
|
||||
|
||||
char *
|
||||
num(n1, n2)
|
||||
register int n1, n2;
|
||||
num(int n1, int n2)
|
||||
{
|
||||
static char numbuf[LINELEN/2];
|
||||
|
||||
|
|
@ -329,7 +318,8 @@ register int n1, n2;
|
|||
* Pull out a certain weapon
|
||||
*/
|
||||
|
||||
wield()
|
||||
void
|
||||
wield(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *obj, *oweapon;
|
||||
|
|
|
|||
|
|
@ -20,12 +20,15 @@
|
|||
#include <curses.h>
|
||||
#include "rogue.h"
|
||||
|
||||
int dress_units(struct linked_list *item);
|
||||
|
||||
/*
|
||||
* take_off:
|
||||
* Get the armor off of the players back
|
||||
*/
|
||||
|
||||
take_off()
|
||||
void
|
||||
take_off(void)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -74,7 +77,8 @@ take_off()
|
|||
* The player wants to wear something, so let him/her put it on.
|
||||
*/
|
||||
|
||||
wear()
|
||||
void
|
||||
wear(void)
|
||||
{
|
||||
register struct linked_list *item;
|
||||
register struct object *obj;
|
||||
|
|
@ -395,8 +399,8 @@ wear()
|
|||
* given item of "clothing"?
|
||||
*/
|
||||
|
||||
dress_units(item)
|
||||
struct linked_list *item;
|
||||
int
|
||||
dress_units(struct linked_list *item)
|
||||
{
|
||||
register struct object *obj;
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,8 @@
|
|||
* under strange circumstances)
|
||||
*/
|
||||
|
||||
int getbless(void);
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <curses.h>
|
||||
#include <ctype.h>
|
||||
|
|
@ -33,9 +35,8 @@
|
|||
* Create any object for wizard, scroll, magician, or cleric
|
||||
*/
|
||||
|
||||
create_obj(prompt, which_item, which_type)
|
||||
bool prompt;
|
||||
int which_item, which_type;
|
||||
void
|
||||
create_obj(bool prompt, int which_item, int which_type)
|
||||
{
|
||||
reg struct linked_list *item;
|
||||
reg struct object *obj;
|
||||
|
|
@ -338,7 +339,7 @@ int which_item, which_type;
|
|||
*/
|
||||
|
||||
int
|
||||
getbless()
|
||||
getbless(void)
|
||||
{
|
||||
reg char bless;
|
||||
|
||||
|
|
@ -356,7 +357,8 @@ getbless()
|
|||
* get a non-monster death type
|
||||
*/
|
||||
|
||||
getdeath()
|
||||
int
|
||||
getdeath(void)
|
||||
{
|
||||
register int i;
|
||||
int which_death;
|
||||
|
|
@ -385,11 +387,11 @@ getdeath()
|
|||
|
||||
/*
|
||||
* make a monster for the wizard
|
||||
* showall -> show uniques and genocided creatures
|
||||
*/
|
||||
|
||||
makemonster(showall, action)
|
||||
bool showall; /* showall -> show uniques and genocided creatures */
|
||||
char *action;
|
||||
short
|
||||
makemonster(bool showall, char *action)
|
||||
{
|
||||
register int i;
|
||||
register short which_monst;
|
||||
|
|
@ -485,7 +487,7 @@ get_monst:
|
|||
*/
|
||||
|
||||
bool
|
||||
passwd()
|
||||
passwd(void)
|
||||
{
|
||||
register char *sp, c;
|
||||
char buf[LINELEN];
|
||||
|
|
@ -522,7 +524,7 @@ passwd()
|
|||
*/
|
||||
|
||||
void
|
||||
teleport()
|
||||
teleport(void)
|
||||
{
|
||||
register struct room *new_rp = NULL, *old_rp = roomin(&hero);
|
||||
register int rm, which;
|
||||
|
|
@ -622,8 +624,8 @@ teleport()
|
|||
* What a certin object is
|
||||
*/
|
||||
|
||||
whatis(what)
|
||||
struct linked_list *what;
|
||||
void
|
||||
whatis(struct linked_list *what)
|
||||
{
|
||||
register struct object *obj;
|
||||
register struct linked_list *item;
|
||||
|
|
@ -686,7 +688,8 @@ struct linked_list *what;
|
|||
* (if on STARTLEV equipage level = 0)
|
||||
*/
|
||||
|
||||
choose_qst()
|
||||
void
|
||||
choose_qst(void)
|
||||
{
|
||||
bool doit = TRUE;
|
||||
bool escp = TRUE;
|
||||
|
|
@ -718,7 +721,7 @@ choose_qst()
|
|||
if (menu_overlay) /* Print the selections. The longest line is
|
||||
* Hruggek (26 characters). The prompt is 21.
|
||||
*/
|
||||
over_win(cw, hw, 20, 29, 0, 21, NULL);
|
||||
over_win(cw, hw, 20, 29, 0, 21, '\0');
|
||||
else
|
||||
draw(hw);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue