Mercurial > hg > early-roguelike
annotate urogue/rip.c @ 304:e52a8a7ad4c5
Fix many compiler warnings.
There should only be two changes in behavior:
arogue7/fight.c, arogue7/fight.c: a to-hit bonus is now correctly
applied to characters who are not monks instead of monks who are not
empty-handed.
urogue/fight.c: fixed an interaction with the "debug" macro that could
cause the wrong message to be displayed.
| author | John "Elwin" Edwards | 
|---|---|
| date | Wed, 14 Apr 2021 18:55:33 -0400 | 
| parents | 0250220d8cdd | 
| children | 
| rev | line source | 
|---|---|
| 256 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 1 /* | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 2 rip.c - File for the fun ends Death or a total win | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 3 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 4 UltraRogue: The Ultimate Adventure in the Dungeons of Doom | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 5 Copyright (C) 1985, 1986, 1992, 1993, 1995 Herb Chong | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 6 All rights reserved. | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 7 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 8 Based on "Advanced Rogue" | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 9 Copyright (C) 1984, 1985 Michael Morgan, Ken Dalka | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 10 All rights reserved. | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 11 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 12 Based on "Rogue: Exploring the Dungeons of Doom" | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 13 Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 14 All rights reserved. | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 15 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 16 See the file LICENSE.TXT for full copyright and licensing information. | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 17 */ | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 18 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 19 #include <string.h> | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 20 #include <stdlib.h> | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 21 #include <ctype.h> | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 22 #include <time.h> | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 23 #include "rogue.h" | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 24 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 25 static struct sc_ent | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 26 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 27 int sc_lvl; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 28 long sc_score; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 29 char sc_name[76]; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 30 long sc_gold; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 31 int sc_flags; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 32 int sc_level; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 33 int sc_artifacts; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 34 int sc_monster; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 35 } top_ten[10]; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 36 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 37 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 38 static const char *rip[] = | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 39 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 40 " __________", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 41 " / \\", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 42 " / REST \\", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 43 " / IN \\", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 44 " / PEACE \\", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 45 " / \\", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 46 " | |", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 47 " | |", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 48 " | killed by |", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 49 " | |", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 50 " | 1993 |", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 51 " *| * * * | *", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 52 " ________)/\\\\_//(\\/(/\\)/\\//\\/|_)_______", | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 53 0 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 54 }; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 55 | 
| 268 | 56 void writelog(long amount, int lvl, int flags, int monst); | 
| 57 | |
| 256 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 58 /* | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 59 death() | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 60 Do something really fun when he dies | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 61 */ | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 62 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 63 void | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 64 death(int monst) | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 65 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 66 char **dp = (char **) rip, *killer; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 67 struct tm *lt; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 68 time_t date; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 69 char buf[80]; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 70 int c; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 71 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 72 if (is_wearing(R_RESURRECT) || rnd(wizard ? 3 : 67) == 0) | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 73 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 74 int die = TRUE; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 75 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 76 if (resurrect-- == 0) | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 77 msg("You've run out of lives."); | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 78 else if (!save_resurrect(ring_value(R_RESURRECT))) | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 79 msg("Your attempt to return from the grave fails."); | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 80 else | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 81 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 82 struct linked_list *item; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 83 struct linked_list *next_item; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 84 struct object *obj; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 85 int rm, flags; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 86 coord pos; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 87 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 88 die = FALSE; | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 89 msg("You feel a sudden warmth and then nothingness."); | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 90 teleport(); | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 91 | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 92 if (ring_value(R_RESURRECT) > 1 && rnd(10)) | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 John "Elwin" Edwards parents: diff
changeset | 93 { | 
| 
c495a4f288c6
Import UltraRogue from the Roguelike Restoration Project (r1490)
 | 
