the Dungeon sometimes make note of the names of the worst of these miscreants
in this, the list of Dungeoneers:
- Adam Aronow Irina Rempt-Drijfhout Mike Gallop
- Andreas Dorn Izchak Miller Mike Passaretti
- Andy Church J. Ali Harlow Mike Stephenson
- Andy Swanson Janet Walz Norm Meluch
- Ari Huttunen Janne Salmijarvi Olaf Seibert
- Barton House Jean-Christophe Collet Pat Rankin
- Benson I. Margulies Jochen Erwied Paul Winner
- Bill Dyer John Kallen Pierre Martineau
- Boudewijn Waijers John Rupley Ralf Brown
- Bruce Cox John S. Bien Richard Addison
- Bruce Holloway Johnny Lee Richard Beigel
- Bruce Mewborne Jon W{tte Richard P. Hughey
- Carl Schelin Jonathan Handler Rob Menke
- Chris Russo Joshua Delahunty Robin Johnson
- David Cohrs Keizo Yamamoto Roland McGrath
- David Damerell Ken Arromdee Ron Van Iwaarden
- David Gentzel Ken Lorber Ronnen Miller
- David Hairston Ken Washikita Ross Brown
- Dean Luick Kevin Darcy Sascha Wostmann
- Del Lamb Kevin Hugo Scott Bigham
- Deron Meranda Kevin Sitze Scott R. Turner
- Dylan O'Donnell Kevin Smolkowski Stephen Spackman
- Eric Backus Kevin Sweet Stephen White
- Eric Hendrickson Lars Huttar Steve Creps
- Eric R. Smith Mark Gooderum Steve Linhart
- Eric S. Raymond Mark Modrall Steve VanDevender
- Erik Andersen Marvin Bressler Tim Lennan
- Frederick Roeber Matthew Day Timo Hakulinen
- Gil Neiger Merlyn LeRoy Tom Almy
- Greg Laskin Michael Allison Tom West
- Greg Olson Michael Feir Warren Cheung
- Gregg Wonderly Michael Hamel Warwick Allison
- Hao-yang Wang Michael Sokolov Yitzhak Sapir
- Helge Hafting Mike Engber
-
+ Adam Aronow Irina Rempt-Drijfhout Mike Engber
+ Andreas Dorn Izchak Miller Mike Gallop
+ Andy Church J. Ali Harlow Mike Passaretti
+ Andy Swanson Janet Walz Mike Stephenson
+ Ari Huttunen Janne Salmijarvi Norm Meluch
+ Barton House Jean-Christophe Collet Olaf Seibert
+ Benson I. Margulies Jochen Erwied Pat Rankin
+ Bill Dyer John Kallen Paul Winner
+ Boudewijn Waijers John Rupley Pierre Martineau
+ Bruce Cox John S. Bien Ralf Brown
+ Bruce Holloway Johnny Lee Richard Addison
+ Bruce Mewborne Jon W{tte Richard Beigel
+ Carl Schelin Jonathan Handler Richard P. Hughey
+ Chris Russo Joshua Delahunty Rob Menke
+ David Cohrs Keizo Yamamoto Robin Johnson
+ David Damerell Ken Arnold Roland McGrath
+ David Gentzel Ken Arromdee Ron Van Iwaarden
+ David Hairston Ken Lorber Ronnen Miller
+ Dean Luick Ken Washikita Ross Brown
+ Del Lamb Kevin Darcy Sascha Wostmann
+ Deron Meranda Kevin Hugo Scott Bigham
+ Dylan O'Donnell Kevin Sitze Scott R. Turner
+ Eric Backus Kevin Smolkowski Stephen Spackman
+ Eric Hendrickson Kevin Sweet Stephen White
+ Eric R. Smith Lars Huttar Steve Creps
+ Eric S. Raymond Mark Gooderum Steve Linhart
+ Erik Andersen Mark Modrall Steve VanDevender
+ Frederick Roeber Marvin Bressler Tim Lennan
+ Gil Neiger Matthew Day Timo Hakulinen
+ Greg Laskin Merlyn LeRoy Tom Almy
+ Greg Olson Michael Allison Tom West
+ Gregg Wonderly Michael Feir Warren Cheung
+ Hao-yang Wang Michael Hamel Warwick Allison
+ Helge Hafting Michael Sokolov Yitzhak Sapir
center;
c c c.
.\"TABLE_START
-Adam Aronow Irina Rempt-Drijfhout Mike Gallop
-Andreas Dorn Izchak Miller Mike Passaretti
-Andy Church J. Ali Harlow Mike Stephenson
-Andy Swanson Janet Walz Norm Meluch
-Ari Huttunen Janne Salmijarvi Olaf Seibert
-Barton House Jean-Christophe Collet Pat Rankin
-Benson I. Margulies Jochen Erwied Paul Winner
-Bill Dyer John Kallen Pierre Martineau
-Boudewijn Waijers John Rupley Ralf Brown
-Bruce Cox John S. Bien Richard Addison
-Bruce Holloway Johnny Lee Richard Beigel
-Bruce Mewborne Jon W{tte Richard P. Hughey
-Carl Schelin Jonathan Handler Rob Menke
-Chris Russo Joshua Delahunty Robin Johnson
-David Cohrs Keizo Yamamoto Roland McGrath
-David Damerell Ken Arromdee Ron Van Iwaarden
-David Gentzel Ken Lorber Ronnen Miller
-David Hairston Ken Washikita Ross Brown
-Dean Luick Kevin Darcy Sascha Wostmann
-Del Lamb Kevin Hugo Scott Bigham
-Deron Meranda Kevin Sitze Scott R. Turner
-Dylan O'Donnell Kevin Smolkowski Stephen Spackman
-Eric Backus Kevin Sweet Stephen White
-Eric Hendrickson Lars Huttar Steve Creps
-Eric R. Smith Mark Gooderum Steve Linhart
-Eric S. Raymond Mark Modrall Steve VanDevender
-Erik Andersen Marvin Bressler Tim Lennan
-Frederick Roeber Matthew Day Timo Hakulinen
-Gil Neiger Merlyn LeRoy Tom Almy
-Greg Laskin Michael Allison Tom West
-Greg Olson Michael Feir Warren Cheung
-Gregg Wonderly Michael Hamel Warwick Allison
-Hao-yang Wang Michael Sokolov Yitzhak Sapir
-Helge Hafting Mike Engber
+Adam Aronow Irina Rempt-Drijfhout Mike Engber
+Andreas Dorn Izchak Miller Mike Gallop
+Andy Church J. Ali Harlow Mike Passaretti
+Andy Swanson Janet Walz Mike Stephenson
+Ari Huttunen Janne Salmijarvi Norm Meluch
+Barton House Jean-Christophe Collet Olaf Seibert
+Benson I. Margulies Jochen Erwied Pat Rankin
+Bill Dyer John Kallen Paul Winner
+Boudewijn Waijers John Rupley Pierre Martineau
+Bruce Cox John S. Bien Ralf Brown
+Bruce Holloway Johnny Lee Richard Addison
+Bruce Mewborne Jon W{tte Richard Beigel
+Carl Schelin Jonathan Handler Richard P. Hughey
+Chris Russo Joshua Delahunty Rob Menke
+David Cohrs Keizo Yamamoto Robin Johnson
+David Damerell Ken Arnold Roland McGrath
+David Gentzel Ken Arromdee Ron Van Iwaarden
+David Hairston Ken Lorber Ronnen Miller
+Dean Luick Ken Washikita Ross Brown
+Del Lamb Kevin Darcy Sascha Wostmann
+Deron Meranda Kevin Hugo Scott Bigham
+Dylan O'Donnell Kevin Sitze Scott R. Turner
+Eric Backus Kevin Smolkowski Stephen Spackman
+Eric Hendrickson Kevin Sweet Stephen White
+Eric R. Smith Lars Huttar Steve Creps
+Eric S. Raymond Mark Gooderum Steve Linhart
+Erik Andersen Mark Modrall Steve VanDevender
+Frederick Roeber Marvin Bressler Tim Lennan
+Gil Neiger Matthew Day Timo Hakulinen
+Greg Laskin Merlyn LeRoy Tom Almy
+Greg Olson Michael Allison Tom West
+Gregg Wonderly Michael Feir Warren Cheung
+Hao-yang Wang Michael Hamel Warwick Allison
+Helge Hafting Michael Sokolov Yitzhak Sapir
.\"TABLE_END Do not delete this line.
.TE
.ed
\begin{center}
\begin{tabular}{lll}
%TABLE_START
-Adam Aronow & Irina Rempt-Drijfhout & Mike Gallop\\
-Andreas Dorn & Izchak Miller & Mike Passaretti\\
-Andy Church & J. Ali Harlow & Mike Stephenson\\
-Andy Swanson & Janet Walz & Norm Meluch\\
-Ari Huttunen & Janne Salmij\"{a}rvi & Olaf Seibert\\
-Barton House & Jean-Christophe Collet & Pat Rankin\\
-Benson I. Margulies & Jochen Erwied & Paul Winner\\
-Bill Dyer & John Kallen & Pierre Martineau\\
-Boudewijn Waijers & John Rupley & Ralf Brown\\
-Bruce Cox & John S. Bien & Richard Addison\\
-Bruce Holloway & Johnny Lee & Richard Beigel\\
-Bruce Mewborne & Jon W\{tte & Richard P. Hughey\\
-Carl Schelin & Jonathan Handler & Rob Menke\\
-Chris Russo & Joshua Delahunty & Robin Johnson\\
-David Cohrs & Keizo Yamamoto & Roland McGrath\\
-David Damerell & Ken Arromdee & Ron Van Iwaarden\\
-David Gentzel & Ken Lorber & Ronnen Miller\\
-David Hairston & Ken Washikita & Ross Brown\\
-Dean Luick & Kevin Darcy & Sascha Wostmann\\
-Del Lamb & Kevin Hugo & Scott Bigham\\
-Deron Meranda & Kevin Sitze & Scott R. Turner\\
-Dylan O'Donnell & Kevin Smolkowski & Stephen Spackman\\
-Eric Backus & Kevin Sweet & Stephen White\\
-Eric Hendrickson & Lars Huttar & Steve Creps\\
-Eric R. Smith & Mark Gooderum & Steve Linhart\\
-Eric S. Raymond & Mark Modrall & Steve VanDevender\\
-Erik Andersen & Marvin Bressler & Tim Lennan\\
-Frederick Roeber & Matthew Day & Timo Hakulinen\\
-Gil Neiger & Merlyn LeRoy & Tom Almy\\
-Greg Laskin & Michael Allison & Tom West\\
-Greg Olson & Michael Feir & Warren Cheung\\
-Gregg Wonderly & Michael Hamel & Warwick Allison\\
-Hao-yang Wang & Michael Sokolov & Yitzhak Sapir\\
-Helge Hafting & Mike Engber
+Adam Aronow & Irina Rempt-Drijfhout & Mike Engber \\
+Andreas Dorn & Izchak Miller & Mike Gallop\\
+Andy Church & J. Ali Harlow & Mike Passaretti\\
+Andy Swanson & Janet Walz & Mike Stephenson\\
+Ari Huttunen & Janne Salmij\"{a}rvi & Norm Meluch\\
+Barton House & Jean-Christophe Collet & Olaf Seibert\\
+Benson I. Margulies & Jochen Erwied & Pat Rankin\\
+Bill Dyer & John Kallen & Paul Winner\\
+Boudewijn Waijers & John Rupley & Pierre Martineau\\
+Bruce Cox & John S. Bien & Ralf Brown\\
+Bruce Holloway & Johnny Lee & Richard Addison\\
+Bruce Mewborne & Jon W\{tte & Richard Beigel\\
+Carl Schelin & Jonathan Handler & Richard P. Hughey\\
+Chris Russo & Joshua Delahunty & Rob Menke\\
+David Cohrs & Keizo Yamamoto & Robin Johnson\\
+David Damerell & Ken Arnold & Roland McGrath\\
+David Gentzel & Ken Arromdee & Ron Van Iwaarden\\
+David Hairston & Ken Lorber & Ronnen Miller\\
+Dean Luick & Ken Washikita & Ross Brown\\
+Del Lamb & Kevin Darcy & Sascha Wostmann\\
+Deron Meranda & Kevin Hugo & Scott Bigham\\
+Dylan O'Donnell & Kevin Sitze & Scott R. Turner\\
+Eric Backus & Kevin Smolkowski & Stephen Spackman\\
+Eric Hendrickson & Kevin Sweet & Stephen White\\
+Eric R. Smith & Lars Huttar & Steve Creps\\
+Eric S. Raymond & Mark Gooderum & Steve Linhart\\
+Erik Andersen & Mark Modrall & Steve VanDevender\\
+Frederick Roeber & Marvin Bressler & Tim Lennan\\
+Gil Neiger & Matthew Day & Timo Hakulinen\\
+Greg Laskin & Merlyn LeRoy & Tom Almy\\
+Greg Olson & Michael Allison & Tom West\\
+Gregg Wonderly & Michael Feir & Warren Cheung\\
+Hao-yang Wang & Michael Hamel & Warwick Allison\\
+Helge Hafting & Michael Sokolov & Yitzhak Sapir
%TABLE_END Do not delete this line.
\end{tabular}
\end{center}
#define purple c_color_names.c_purple
#define White c_color_names.c_white
+/* The names of the colors used for gems, etc. */
+E const char *c_obj_colors[];
+
E struct c_common_strings {
const char *const c_nothing_happens, *const c_thats_enough_tries,
*const c_silly_thing_to, *const c_shudder_for_moment,
static const char tools[] = { TOOL_CLASS, WEAPON_CLASS, WAND_CLASS, 0 };
static const char tools_too[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS,
- WEAPON_CLASS, WAND_CLASS, 0 };
+ WEAPON_CLASS, WAND_CLASS, GEM_CLASS, 0 };
#ifdef TOURIST
STATIC_DCL int FDECL(use_camera, (struct obj *));
trapinfo.tobj = 0;
}
+STATIC_OVL void
+use_stone(otmp)
+struct obj *otmp;
+{
+ struct obj *obj;
+ char allowall[2];
+ const char *color = 0;
+ static const char *ambiguous = "You make scratch marks on the stone";
+
+ allowall[0] = ALL_CLASSES;
+ allowall[1] = '\0';
+ if (!(obj = getobj(allowall, "rub on the stone")))
+ return;
+
+ if (otmp->cursed && obj->oclass == GEM_CLASS && rnd(5) == 1) {
+ pline(
+ (Blind ? "You feel something shatter" :
+ (Hallucination ? "Oh, wow, look at the pretty shards" :
+ "A sharp crack shatters %s %s")),
+ (obj->quan == 1 ? "the" : "a"),
+ lcase(makesingular(let_to_name(obj->oclass, FALSE))));
+ useup(obj);
+ return;
+ }
+
+ if (Blind) {
+ pline("\"scritch, scritch\"");
+ return;
+ }
+
+ if (Hallucination) {
+ pline("Oh wow, man: Fractals!");
+ return;
+ }
+
+ if (otmp->otyp != TOUCHSTONE) {
+ pline(ambiguous);
+ return;
+ }
+
+ switch (obj->oclass) {
+ case GOLD:
+ color = "golden";
+ break;
+ case GEM_CLASS:
+ if (otmp->blessed) {
+ makeknown(TOUCHSTONE);
+ makeknown(obj->otyp);
+ prinv((char *)0, obj, 0L);
+ return;
+ }
+ /* FALLTHROUGH */
+ case RING_CLASS:
+ if (objects[obj->otyp].oc_material == GLASS) {
+ pline(ambiguous); /* yet not amibguous if a known touchstone */
+ return;
+ }
+ color = c_obj_colors[objects[obj->otyp].oc_color];
+ break;
+ default:
+ pline("\"scritch, scritch\"");
+ return;
+ }
+ pline("You see %s streaks on the stone", color);
+ return;
+}
+
/* Place a landmine/bear trap. Helge Hafting */
STATIC_OVL void
use_trap(otmp)
register int res = 1;
if(check_capacity((char *)0)) return (0);
- obj = getobj(carrying(POT_OIL) ? tools_too : tools, "use or apply");
+ obj = getobj(carrying(POT_OIL) || carrying(TOUCHSTONE)
+ ? tools_too : tools, "use or apply");
if(!obj) return 0;
if (obj->oclass == WAND_CLASS)
case BEARTRAP:
use_trap(obj);
break;
+ case TOUCHSTONE:
+ use_stone(obj);
+ break;
default:
/* Pole-weapons can strike at a distance */
if (is_pole(obj)) {
"white"
};
+const char *c_obj_colors[] = {
+ "black", /* CLR_BLACK */
+ "red", /* CLR_RED */
+ "green", /* CLR_GREEN */
+ "brown", /* CLR_BROWN */
+ "blue", /* CLR_BLUE */
+ "magenta", /* CLR_MAGENTA */
+ "cyan", /* CLR_CYAN */
+ "gray", /* CLR_GRAY */
+ "transparent", /* no_color */
+ "orange", /* CLR_ORANGE */
+ "bright green", /* CLR_BRIGHT_GREEN */
+ "yellow", /* CLR_YELLOW */
+ "bright blue", /* CLR_BRIGHT_BLUE */
+ "bright magenta", /* CLR_BRIGHT_MAGENTA */
+ "bright cyan", /* CLR_BRIGHT_CYAN */
+ "white", /* CLR_WHITE */
+};
+
struct c_common_strings c_common_strings = {
"Nothing happens.", "That's enough tries!",
"That is a silly thing to %s.", "shudder for a moment.",
int cnt = rnl(5);
coord mm;
mm.x = x; mm.y = y;
- pline("You've disturbed the occupants!");
+ pline("You've attracted the tree's former occupants!");
while (cnt--)
if (enexto(&mm, mm.x, mm.y, &mons[PM_KILLER_BEE]))
(void) makemon(&mons[PM_KILLER_BEE],
ROCK("luckstone", "gray", 0, 10, 10, 60, 3, 3, 1, 10, 7, MINERAL, CLR_GRAY),
ROCK("loadstone", "gray", 0, 10, 500, 1, 3, 3, 1, 10, 6, MINERAL, CLR_GRAY),
-ROCK("flint", "gray", 0, 18, 10, 1, 6, 6, 0, 10, 7, MINERAL, CLR_GRAY),
+ROCK("flint", "gray", 0, 10, 10, 1, 6, 6, 0, 10, 7, MINERAL, CLR_GRAY),
+ROCK("touchstone", "gray", 0, 8, 10, 45, 3, 3, 1, 10, 6, MINERAL, CLR_GRAY),
ROCK("rock", (char *)0, 1,100, 10, 0, 3, 3, 0, 10, 7, MINERAL, CLR_GRAY),
#undef GEM
#undef ROCK
{ FOOD_RATION, 0, FOOD_CLASS, 3, 0 },
{ PICK_AXE, UNDEF_SPE, TOOL_CLASS, 1, UNDEF_BLESS },
{ TINNING_KIT, UNDEF_SPE, TOOL_CLASS, 1, UNDEF_BLESS },
+ { TOUCHSTONE, 0, GEM_CLASS, 1, 1 },
{ SACK, 0, TOOL_CLASS, 1, 0 },
{ 0, 0, 0, 0, 0 }
};
if(!rn2(10)) ini_inv(Tinopener);
else if(!rn2(4)) ini_inv(Lamp);
else if(!rn2(10)) ini_inv(Magicmarker);
- knows_class(GEM_CLASS);
knows_object(SACK);
skill_init(Skill_A);
break;
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
}
-# tile 427 (rock)
+# tile 427 (gray / touchstone)
+{
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMPPPPPMMMMMM
+ MMMMPNPPPPPMMMMM
+ MMMPNPPPPPPPAMMM
+ MMPPPPPPPPPPPAAM
+ MMPPPPPPPPPPPAAA
+ MMMPPPPPPPPPAAAM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+}
+# tile 428 (rock)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
}
-# tile 428 (boulder)
+# tile 429 (boulder)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
}
-# tile 429 (statue)
+# tile 430 (statue)
{
MMMMMMMMMMMMMMMM
MMMMMMMMJJMMMMMM
MMMMMJJJJJJAAMMM
MMMMMMMMMMMMMMMM
}
-# tile 430 (heavy iron ball)
+# tile 431 (heavy iron ball)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
}
-# tile 431 (iron chain)
+# tile 432 (iron chain)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMPPMPA
MMMMMMMMMMMMAAMM
}
-# tile 432 (splash of venom / blinding venom)
+# tile 433 (splash of venom / blinding venom)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM
}
-# tile 433 (splash of venom / acid venom)
+# tile 434 (splash of venom / acid venom)
{
MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMM