X-Git-Url: https://git.cameronkatri.com/bsdgames-darwin.git/blobdiff_plain/462fca95471224f85b85be911e72faee16cd1597..73294a12acd4e9ce3be5c49adc331ab62d3a398f:/battlestar/room.c diff --git a/battlestar/room.c b/battlestar/room.c index 3ff7d586..8cdabae7 100644 --- a/battlestar/room.c +++ b/battlestar/room.c @@ -1,6 +1,8 @@ +/* $NetBSD: room.c,v 1.7 1999/02/10 01:36:50 hubertf Exp $ */ + /* - * Copyright (c) 1983 Regents of the University of California. - * All rights reserved. + * Copyright (c) 1983, 1993 + * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -31,23 +33,28 @@ * SUCH DAMAGE. */ +#include #ifndef lint -/*static char sccsid[] = "from: @(#)room.c 5.3 (Berkeley) 6/1/90";*/ -static char rcsid[] = "$Id: room.c,v 1.2 1993/08/01 18:55:54 mycroft Exp $"; -#endif /* not lint */ +#if 0 +static char sccsid[] = "@(#)room.c 8.2 (Berkeley) 4/28/95"; +#else +__RCSID("$NetBSD: room.c,v 1.7 1999/02/10 01:36:50 hubertf Exp $"); +#endif +#endif /* not lint */ -#include "externs.h" +#include "extern.h" +void writedes() { - int compass; - register char *p; - register c; + int compass; + const char *p; + int c; printf("\n\t%s\n", location[position].name); if (beenthere[position] < 3) { compass = NORTH; - for (p = location[position].desc; c = *p++;) + for (p = location[position].desc; (c = *p++) != 0;) if (c != '-' && c != '*' && c != '+') putchar(c); else { @@ -58,10 +65,11 @@ writedes() } } +void printobjs() { - register unsigned int *p = location[position].objects; - register n; + unsigned int *p = location[position].objects; + int n; printf("\n"); for (n = 0; n < NUMOFOBJECTS; n++) @@ -69,159 +77,165 @@ printobjs() puts(objdes[n]); } +void whichway(here) -struct room here; + struct room here; { - switch(direction) { - - case NORTH: - left = here.west; - right = here.east; - ahead = here.north; - back = here.south; - break; - - case SOUTH: - left = here.east; - right = here.west; - ahead = here.south; - back = here.north; - break; - - case EAST: - left = here.north; - right = here.south; - ahead = here.east; - back = here.west; - break; - - case WEST: - left = here.south; - right = here.north; - ahead = here.west; - back = here.east; - break; + switch (direction) { + + case NORTH: + left = here.west; + right = here.east; + ahead = here.north; + back = here.south; + break; + + case SOUTH: + left = here.east; + right = here.west; + ahead = here.south; + back = here.north; + break; + + case EAST: + left = here.north; + right = here.south; + ahead = here.east; + back = here.west; + break; + + case WEST: + left = here.south; + right = here.north; + ahead = here.west; + back = here.east; + break; } } -char * +const char * truedirec(way, option) -int way; -char option; + int way; + char option; { - switch(way) { + switch (way) { + case NORTH: + switch (direction) { case NORTH: - switch(direction) { - case NORTH: - return("ahead"); - case SOUTH: - return(option == '+' ? "behind you" : "back"); - case EAST: - return("left"); - case WEST: - return("right"); - } + return ("ahead"); + case SOUTH: + return (option == '+' ? "behind you" : + "back"); + case EAST: + return ("left"); + case WEST: + return ("right"); + } + case SOUTH: + switch (direction) { + case NORTH: + return (option == '+' ? "behind you" : + "back"); case SOUTH: - switch(direction) { - case NORTH: - return(option == '+' ? "behind you" : "back"); - case SOUTH: - return("ahead"); - case EAST: - return("right"); - case WEST: - return("left"); - } + return ("ahead"); + case EAST: + return ("right"); + case WEST: + return ("left"); + } + case EAST: + switch (direction) { + case NORTH: + return ("right"); + case SOUTH: + return ("left"); case EAST: - switch(direction) { - case NORTH: - return("right"); - case SOUTH: - return("left"); - case EAST: - return("ahead"); - case WEST: - return(option == '+' ? "behind you" : "back"); - } + return ("ahead"); + case WEST: + return (option == '+' ? "behind you" : + "back"); + } + case WEST: + switch (direction) { + case NORTH: + return ("left"); + case SOUTH: + return ("right"); + case EAST: + return (option == '+' ? "behind you" : + "back"); case WEST: - switch(direction) { - case NORTH: - return("left"); - case SOUTH: - return("right"); - case EAST: - return(option == '+' ? "behind you" : "back"); - case WEST: - return("ahead"); - } + return ("ahead"); + } - default: - printf("Error: room %d. More than four directions wanted.", position); - return("!!"); - } + default: + printf("Error: room %d. More than four directions wanted.", position); + return ("!!"); + } } +void newway(thisway) -int thisway; + int thisway; { - switch(direction){ + switch (direction) { - case NORTH: - switch(thisway){ - case LEFT: - direction = WEST; - break; - case RIGHT: - direction = EAST; - break; - case BACK: - direction = SOUTH; - break; - } + case NORTH: + switch (thisway) { + case LEFT: + direction = WEST; break; - case SOUTH: - switch(thisway){ - case LEFT: - direction = EAST; - break; - case RIGHT: - direction = WEST; - break; - case BACK: - direction = NORTH; - break; - } + case RIGHT: + direction = EAST; break; - case EAST: - switch(thisway){ - case LEFT: - direction = NORTH; - break; - case RIGHT: - direction = SOUTH; - break; - case BACK: - direction = WEST; - break; - } + case BACK: + direction = SOUTH; break; - case WEST: - switch(thisway){ - case LEFT: - direction = SOUTH; - break; - case RIGHT: - direction = NORTH; - break; - case BACK: - direction = EAST; - break; - } + } + break; + case SOUTH: + switch (thisway) { + case LEFT: + direction = EAST; + break; + case RIGHT: + direction = WEST; + break; + case BACK: + direction = NORTH; + break; + } + break; + case EAST: + switch (thisway) { + case LEFT: + direction = NORTH; + break; + case RIGHT: + direction = SOUTH; break; - } + case BACK: + direction = WEST; + break; + } + break; + case WEST: + switch (thisway) { + case LEFT: + direction = SOUTH; + break; + case RIGHT: + direction = NORTH; + break; + case BACK: + direction = EAST; + break; + } + break; + } }