Fix: SE016 Problem: The inclusion in 0.0.5E6 of a number of new firearms triggered a major test of the conditional compilation symbols found in section 4 of config.h. A number of problems were found and fixed. Compatible with: Slash'EM 0.0.5E6 Author: J. Ali Harlow, ali@avrc.city.ac.uk Date: 30 Oct 1999 *** include/extern.h.orig Thu Oct 28 12:18:07 1999 --- include/extern.h Thu Oct 28 12:19:45 1999 *************** *** 587,593 **** --- 587,595 ---- E void FDECL(explode, (int,int,int,int,CHAR_P)); E void FDECL(scatter, (int, int, int, unsigned int)); E void FDECL(splatter_burning_oil, (int, int)); + #ifdef FIREARMS E void FDECL(grenade_explode, (int, int, int, boolean)); + #endif /* ### extralev.c ### */ *** src/apply.c.orig Thu Oct 28 12:18:07 1999 --- src/apply.c Thu Oct 28 15:53:55 1999 *************** *** 2451,2457 **** --- 2451,2459 ---- use_candle(obj); break; case GREEN_LIGHTSABER: + #ifdef D_SABER case BLUE_LIGHTSABER: + #endif case RED_LIGHTSABER: case RED_DOUBLE_LIGHTSABER: /* Fall through - activate via use_lamp */ *** src/artifact.c.orig Thu Oct 28 12:18:07 1999 --- src/artifact.c Thu Oct 28 17:36:16 1999 *************** *** 1257,1263 **** --- 1257,1265 ---- otmp->oartifact == ART_DEMONBANE || otmp->oartifact == ART_WEREBANE || otmp->oartifact == ART_TROLLSBANE || + #ifdef BLACKMARKET otmp->oartifact == ART_THIEFBANE || + #endif otmp->oartifact == ART_OGRESMASHER || otmp->oartifact == ART_ELFRIST) { register const struct artifact *weap = get_artifact(otmp); *** src/explode.c.orig Thu Oct 28 12:18:07 1999 --- src/explode.c Thu Oct 28 12:19:45 1999 *************** *** 660,665 **** --- 660,666 ---- explode(x, y, ZT_SPELL(ZT_FIRE), d(4,4), BURNING_OIL); } + #ifdef FIREARMS void grenade_explode(otyp,x,y, isyou) int otyp, x, y; *************** *** 680,685 **** --- 681,687 ---- if (!isyou) ztype = -ztype; explode(x, y, ztype, d(3,6), WEAPON_CLASS); } + #endif #endif /* OVL1 */ *** src/invent.c.orig Thu Oct 28 12:18:07 1999 --- src/invent.c Thu Oct 28 17:26:57 1999 *************** *** 2537,2546 **** --- 2537,2548 ---- any.a_int = 6; Sprintf (buf, "suit: %s", uarm ? doname(uarm) : "nothing"); add_menu(win, NO_GLYPH, &any, 0, 0, ATR_NONE, buf, MENU_UNSELECTED); + #ifdef TOURIST /* Shirts*/ any.a_int = 7; Sprintf (buf, "shirt: %s", uarmu ? doname(uarmu) : "nothing"); add_menu(win, NO_GLYPH, &any, 0, 0, ATR_NONE, buf, MENU_UNSELECTED); + #endif /* Gloves*/ any.a_int = 8; Sprintf (buf, "%s: %s", makeplural(body_part(HAND)), uarmg ? doname(uarmg) : "nothing"); *************** *** 2587,2595 **** --- 2589,2599 ---- case 6: /*body*/ return (dowear2(armor,"armor")); + #ifdef TOURIST case 7: /*shirt*/ return (dowear2(armor,"shirts")); + #endif case 8: /*gloves*/ return (dowear2(armor,"gloves")); *** src/mkobj.c.orig Thu Oct 28 12:18:07 1999 --- src/mkobj.c Thu Oct 28 15:58:41 1999 *************** *** 443,449 **** --- 443,451 ---- otmp->altmode = FALSE; case GREEN_LIGHTSABER: case RED_LIGHTSABER: + #ifdef D_SABER case BLUE_LIGHTSABER: + #endif otmp->lamplit = 0; otmp->age = (long) rn1(500,1000); blessorcurse(otmp, 2); *** src/objects.c.orig Thu Oct 28 12:18:07 1999 --- src/objects.c Thu Oct 28 15:48:29 1999 *************** *** 160,174 **** 0, 0, 0, 2, 30, 10, 8, 8, 0, P, P_SHORT_SWORD, IRON, CLR_BLACK), /* Broadswords */ - # ifdef D_SABER WEAPON("broadsword", (char *)0, 1, 0, 0, 20, 70, 10, 4, 6, 0, S, P_BROAD_SWORD, IRON, HI_METAL), /* +d4 small, +1 large */ - # else - WEAPON("broadsword", (char *)0, - 1, 0, 0, 21, 70, 10, 4, 6, 0, S, P_BROAD_SWORD, IRON, HI_METAL), - /* +d4 small, +1 large */ - # endif /* D_SABER */ WEAPON("runesword", "runed broadsword", 0, 0, 0, 0, 40,300, 4, 6, 0, S, P_BROAD_SWORD, IRON, CLR_BLACK), /* +d4 small, +1 large; base for artifact (Stormbringer) */ --- 160,168 ---- *************** *** 806,813 **** --- 800,812 ---- WEPTOOL("spoon", (char *)0, 1, 0, 0, 0, 0, 1, 5000, 0, 0, 0, WHACK, -P_DART, PLATINUM, HI_METAL), # endif /* P_SPOON */ + #ifdef D_SABER WEPTOOL("pick-axe", (char *)0, 1, 0, 0, 1, 17, 80, 50, 6, 3, 0, WHACK, P_PICK_AXE, IRON, HI_METAL), + #else + WEPTOOL("pick-axe", (char *)0, + 1, 0, 0, 1, 18, 80, 50, 6, 3, 0, WHACK, P_PICK_AXE, IRON, HI_METAL), + #endif WEPTOOL("fishing pole", (char *)0, 1, 0, 0, 0, 10, 30, 50, 2, 6, 0, WHACK, P_POLEARMS, METAL, HI_METAL), WEPTOOL("unicorn horn", (char *)0, *** src/read.c.orig Thu Oct 28 12:18:07 1999 --- src/read.c Thu Oct 28 16:07:17 1999 *************** *** 547,553 **** --- 547,555 ---- } break; case GREEN_LIGHTSABER: + #ifdef D_SABER case BLUE_LIGHTSABER: + #endif case RED_LIGHTSABER: case RED_DOUBLE_LIGHTSABER: if (is_cursed) { *** src/timeout.c.orig Thu Oct 28 12:18:08 1999 --- src/timeout.c Thu Oct 28 16:08:16 1999 *************** *** 1103,1109 **** --- 1103,1111 ---- pline("%s %s reverts to single blade mode!",whose, xname(obj)); } case GREEN_LIGHTSABER: + #ifdef D_SABER case BLUE_LIGHTSABER: + #endif case RED_LIGHTSABER: /* Callback is checked every 5 turns - lightsaber automatically deactivates if not wielded */ *************** *** 1248,1254 **** --- 1250,1258 ---- case RED_DOUBLE_LIGHTSABER: if (obj->altmode && obj->age > 1) obj->age--; /* Double power usage */ + #ifdef D_SABER case BLUE_LIGHTSABER: + #endif case RED_LIGHTSABER: case GREEN_LIGHTSABER: turns = 1; *** src/u_init.c.orig Thu Oct 28 12:18:08 1999 --- src/u_init.c Thu Oct 28 17:30:13 1999 *************** *** 383,389 **** { WOODEN_FLUTE, 0, TOOL_CLASS, 1, 0 }, { 0, 0, 0, 0, 0 } }; - #ifdef TOURIST static struct trobj Leash[] = { { LEASH, 0, TOOL_CLASS, 1, 0 }, { 0, 0, 0, 0, 0 } --- 383,388 ---- *************** *** 392,398 **** { TOWEL, 0, TOOL_CLASS, 1, 0 }, { 0, 0, 0, 0, 0 } }; - #endif /* TOURIST */ static struct trobj Wishing[] = { { WAN_WISHING, 3, WAND_CLASS, 1, 0 }, { 0, 0, 0, 0, 0 } --- 391,396 ---- *** src/weapon.c.orig Thu Oct 28 12:18:08 1999 --- src/weapon.c Thu Oct 28 16:09:26 1999 *************** *** 252,258 **** --- 252,260 ---- case TWO_HANDED_SWORD: tmp += d(2,6); break; case GREEN_LIGHTSABER: tmp +=13; break; + #ifdef D_SABER case BLUE_LIGHTSABER: tmp +=12; break; + #endif case RED_DOUBLE_LIGHTSABER: if (otmp->altmode) tmp += rnd(11); /* fallthrough */ *************** *** 283,289 **** --- 285,293 ---- case VOULGE: tmp += rnd(4); break; case GREEN_LIGHTSABER: tmp +=9; break; + #ifdef D_SABER case BLUE_LIGHTSABER: tmp +=8; break; + #endif case RED_DOUBLE_LIGHTSABER: if (otmp->altmode) tmp += rnd(9); /* fallthrough */ *************** *** 565,572 **** CORPSE, /* cockatrice corpse */ TSURUGI, RUNESWORD, HEAVY_HAMMER, DWARVISH_MATTOCK, ! RED_DOUBLE_LIGHTSABER, ! RED_LIGHTSABER, BLUE_LIGHTSABER, GREEN_LIGHTSABER, TWO_HANDED_SWORD, BATTLE_AXE, KATANA, UNICORN_HORN, CRYSKNIFE, TRIDENT, LONG_SWORD, ELVEN_BROADSWORD, BROADSWORD, --- 569,579 ---- CORPSE, /* cockatrice corpse */ TSURUGI, RUNESWORD, HEAVY_HAMMER, DWARVISH_MATTOCK, ! RED_DOUBLE_LIGHTSABER, RED_LIGHTSABER, ! #ifdef D_SABER ! BLUE_LIGHTSABER, ! #endif ! GREEN_LIGHTSABER, TWO_HANDED_SWORD, BATTLE_AXE, KATANA, UNICORN_HORN, CRYSKNIFE, TRIDENT, LONG_SWORD, ELVEN_BROADSWORD, BROADSWORD, *** win/share/tilemap.c.orig Thu Oct 28 12:18:08 1999 --- win/share/tilemap.c Thu Oct 28 12:54:46 1999 *************** *** 52,57 **** --- 52,58 ---- #ifndef CHARON /* not supported yet */ { MON_GLYPH, PM_CROESUS, "Charon" }, #endif + #ifndef MAIL { MON_GLYPH, PM_FAMINE, "mail daemon" }, #endif *************** *** 63,99 **** #ifndef TOURIST { MON_GLYPH, PM_SAMURAI, "tourist" }, - { MON_GLYPH, PM_LORD_SATO, "Twoflower" }, - { MON_GLYPH, PM_ROSHI, "guide" }, #endif #ifndef YEOMAN { MON_GLYPH, PM_VALKYRIE, "yeoman" }, - { MON_GLYPH, PM_LOLTH, "Chief Yeoman Warder" }, - { MON_GLYPH, PM_DARK_ONE, "Colonel Blood" }, - { MON_GLYPH, PM_APPRENTICE, "Yeoman Warder" }, #endif #ifndef DWARF { MON_GLYPH, PM_MASTER_SHIFTER, "Thorin" }, { MON_GLYPH, PM_TRANSMUTER, "Smaug" }, ! { MON_GLYPH, PM_SHIFTER*, "dwarf warrior" }, #endif #ifndef FIREARMS { OBJ_GLYPH, SLING, "pistol" }, { OBJ_GLYPH, SLING, "submachine gun" }, { OBJ_GLYPH, SLING, "rifle" }, { OBJ_GLYPH, SLING, "shotgun" }, { OBJ_GLYPH, SLING, "bullet" }, { OBJ_GLYPH, SLING, "silver bullet" }, { OBJ_GLYPH, SLING, "shotgun shell" }, #endif #ifndef KOPS { OBJ_GLYPH, BULLWHIP, "rubber hose" }, #endif #ifndef TOURIST #ifdef KOPS { OBJ_GLYPH, RUBBER_HOSE, "Hawaiian shirt" }, --- 64,130 ---- #ifndef TOURIST { MON_GLYPH, PM_SAMURAI, "tourist" }, #endif #ifndef YEOMAN { MON_GLYPH, PM_VALKYRIE, "yeoman" }, #endif #ifndef DWARF { MON_GLYPH, PM_MASTER_SHIFTER, "Thorin" }, + #endif + + #ifndef TOURIST + { MON_GLYPH, PM_LORD_SATO, "Twoflower" }, + #endif + + #ifndef YEOMAN + { MON_GLYPH, PM_LOLTH, "Chief Yeoman Warder" }, + #endif + + #ifndef DWARF { MON_GLYPH, PM_TRANSMUTER, "Smaug" }, ! #endif ! ! #ifndef YEOMAN ! { MON_GLYPH, PM_DARK_ONE, "Colonel Blood" }, ! #endif ! ! #ifndef DWARF ! { MON_GLYPH, PM_SHIFTER, "dwarf warrior" }, ! #endif ! ! #ifndef TOURIST ! { MON_GLYPH, PM_ROSHI, "guide" }, ! #endif ! ! #ifndef YEOMAN ! { MON_GLYPH, PM_APPRENTICE, "Yeoman Warder" }, #endif #ifndef FIREARMS { OBJ_GLYPH, SLING, "pistol" }, { OBJ_GLYPH, SLING, "submachine gun" }, + { OBJ_GLYPH, SLING, "heavy machine gun" }, { OBJ_GLYPH, SLING, "rifle" }, + { OBJ_GLYPH, SLING, "assault rifle" }, + { OBJ_GLYPH, SLING, "sniper rifle" }, { OBJ_GLYPH, SLING, "shotgun" }, + { OBJ_GLYPH, SLING, "auto shotgun" }, + { OBJ_GLYPH, SLING, "rocket launcher" }, { OBJ_GLYPH, SLING, "bullet" }, { OBJ_GLYPH, SLING, "silver bullet" }, { OBJ_GLYPH, SLING, "shotgun shell" }, + { OBJ_GLYPH, SLING, "rocket" }, + { OBJ_GLYPH, SLING, "frag grenade" }, + { OBJ_GLYPH, SLING, "gas grenade" }, #endif #ifndef KOPS { OBJ_GLYPH, BULLWHIP, "rubber hose" }, #endif + #ifndef TOURIST #ifdef KOPS { OBJ_GLYPH, RUBBER_HOSE, "Hawaiian shirt" }, *************** *** 103,121 **** { OBJ_GLYPH, BULLWHIP, "T-shirt" }, #endif { OBJ_GLYPH, LOCK_PICK, "credit card" }, ! { OBJ_GLYPH, RED_DOUBLE_LIGHTSABER, "expensive camera" }, #endif #ifndef D_SABER { OBJ_GLYPH, GREEN_LIGHTSABER, "blue lightsaber" }, #endif ! #ifndef YEOMAN ! { OBJ_GLYPH, TOWEL, "saddle" }, #endif ! #ifndef P_SPOON ! { OBJ_GLYPH, BEARTRAP, "spoon" }, #endif /* allow slime mold to look like slice of pizza, since we --- 134,155 ---- { OBJ_GLYPH, BULLWHIP, "T-shirt" }, #endif { OBJ_GLYPH, LOCK_PICK, "credit card" }, ! #endif ! ! #ifndef P_SPOON ! { OBJ_GLYPH, BEARTRAP, "spoon" }, #endif #ifndef D_SABER { OBJ_GLYPH, GREEN_LIGHTSABER, "blue lightsaber" }, #endif ! #ifndef TOURIST ! { OBJ_GLYPH, RED_DOUBLE_LIGHTSABER, "expensive camera" }, #endif ! #ifndef YEOMAN ! { OBJ_GLYPH, TOWEL, "saddle" }, #endif /* allow slime mold to look like slice of pizza, since we