1*1c7f94e5Sjsm /* $NetBSD: def.objects.h,v 1.6 2003/04/02 18:36:34 jsm Exp $ */ 23ea4a95cSchristos 302ded532Smycroft /* 4*1c7f94e5Sjsm * Copyright (c) 1985, Stichting Centrum voor Wiskunde en Informatica, 5*1c7f94e5Sjsm * Amsterdam 6*1c7f94e5Sjsm * All rights reserved. 7*1c7f94e5Sjsm * 8*1c7f94e5Sjsm * Redistribution and use in source and binary forms, with or without 9*1c7f94e5Sjsm * modification, are permitted provided that the following conditions are 10*1c7f94e5Sjsm * met: 11*1c7f94e5Sjsm * 12*1c7f94e5Sjsm * - Redistributions of source code must retain the above copyright notice, 13*1c7f94e5Sjsm * this list of conditions and the following disclaimer. 14*1c7f94e5Sjsm * 15*1c7f94e5Sjsm * - Redistributions in binary form must reproduce the above copyright 16*1c7f94e5Sjsm * notice, this list of conditions and the following disclaimer in the 17*1c7f94e5Sjsm * documentation and/or other materials provided with the distribution. 18*1c7f94e5Sjsm * 19*1c7f94e5Sjsm * - Neither the name of the Stichting Centrum voor Wiskunde en 20*1c7f94e5Sjsm * Informatica, nor the names of its contributors may be used to endorse or 21*1c7f94e5Sjsm * promote products derived from this software without specific prior 22*1c7f94e5Sjsm * written permission. 23*1c7f94e5Sjsm * 24*1c7f94e5Sjsm * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS 25*1c7f94e5Sjsm * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 26*1c7f94e5Sjsm * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 27*1c7f94e5Sjsm * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER 28*1c7f94e5Sjsm * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 29*1c7f94e5Sjsm * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 30*1c7f94e5Sjsm * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 31*1c7f94e5Sjsm * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 32*1c7f94e5Sjsm * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 33*1c7f94e5Sjsm * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 34*1c7f94e5Sjsm * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 3502ded532Smycroft */ 36*1c7f94e5Sjsm 37*1c7f94e5Sjsm /* 38*1c7f94e5Sjsm * Copyright (c) 1982 Jay Fenlason <hack@gnu.org> 39*1c7f94e5Sjsm * All rights reserved. 40*1c7f94e5Sjsm * 41*1c7f94e5Sjsm * Redistribution and use in source and binary forms, with or without 42*1c7f94e5Sjsm * modification, are permitted provided that the following conditions 43*1c7f94e5Sjsm * are met: 44*1c7f94e5Sjsm * 1. Redistributions of source code must retain the above copyright 45*1c7f94e5Sjsm * notice, this list of conditions and the following disclaimer. 46*1c7f94e5Sjsm * 2. Redistributions in binary form must reproduce the above copyright 47*1c7f94e5Sjsm * notice, this list of conditions and the following disclaimer in the 48*1c7f94e5Sjsm * documentation and/or other materials provided with the distribution. 49*1c7f94e5Sjsm * 3. The name of the author may not be used to endorse or promote products 50*1c7f94e5Sjsm * derived from this software without specific prior written permission. 51*1c7f94e5Sjsm * 52*1c7f94e5Sjsm * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 53*1c7f94e5Sjsm * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 54*1c7f94e5Sjsm * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 55*1c7f94e5Sjsm * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 56*1c7f94e5Sjsm * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 57*1c7f94e5Sjsm * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 58*1c7f94e5Sjsm * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 59*1c7f94e5Sjsm * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 60*1c7f94e5Sjsm * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 61*1c7f94e5Sjsm * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 62*1c7f94e5Sjsm */ 63*1c7f94e5Sjsm 643ea4a95cSchristos #ifndef _DEF_OBJECTS_H_ 653ea4a95cSchristos #define _DEF_OBJECTS_H_ 6661f28255Scgd /* objects have letter " % ) ( 0 _ ` [ ! ? / = * */ 6761f28255Scgd #include "config.h" 6861f28255Scgd #include "def.objclass.h" 6961f28255Scgd 7061f28255Scgd struct objclass objects[] = { 7161f28255Scgd 7261f28255Scgd { "strange object", NULL, NULL, 1, 0, 7361f28255Scgd ILLOBJ_SYM, 0, 0, 0, 0, 0, 0 }, 7461f28255Scgd { "amulet of Yendor", NULL, NULL, 1, 0, 7561f28255Scgd AMULET_SYM, 100, 0, 2, 0, 0, 0 }, 7661f28255Scgd 7761f28255Scgd #define FOOD(name,prob,delay,weight,nutrition) { name, NULL, NULL, 1, 1,\ 7861f28255Scgd FOOD_SYM, prob, delay, weight, 0, 0, nutrition } 7961f28255Scgd 8061f28255Scgd /* dog eats foods 0-4 but prefers 1 above 0,2,3,4 */ 8161f28255Scgd /* food 4 can be read */ 8261f28255Scgd /* food 5 improves your vision */ 8361f28255Scgd /* food 6 makes you stronger (like Popeye) */ 8461f28255Scgd /* foods CORPSE up to CORPSE+52 are cadavers */ 8561f28255Scgd 8661f28255Scgd FOOD("food ration", 50, 5, 4, 800), 8761f28255Scgd FOOD("tripe ration", 20, 1, 2, 200), 8861f28255Scgd FOOD("pancake", 3, 1, 1, 200), 8961f28255Scgd FOOD("dead lizard", 3, 0, 1, 40), 9061f28255Scgd FOOD("fortune cookie", 7, 0, 1, 40), 9161f28255Scgd FOOD("carrot", 2, 0, 1, 50), 9261f28255Scgd FOOD("tin", 7, 0, 1, 0), 9361f28255Scgd FOOD("orange", 1, 0, 1, 80), 9461f28255Scgd FOOD("apple", 1, 0, 1, 50), 9561f28255Scgd FOOD("pear", 1, 0, 1, 50), 9661f28255Scgd FOOD("melon", 1, 0, 1, 100), 9761f28255Scgd FOOD("banana", 1, 0, 1, 80), 9861f28255Scgd FOOD("candy bar", 1, 0, 1, 100), 9961f28255Scgd FOOD("egg", 1, 0, 1, 80), 10061f28255Scgd FOOD("clove of garlic", 1, 0, 1, 40), 10161f28255Scgd FOOD("lump of royal jelly", 0, 0, 1, 200), 10261f28255Scgd 10361f28255Scgd FOOD("dead human", 0, 4, 40, 400), 10461f28255Scgd FOOD("dead giant ant", 0, 1, 3, 30), 10561f28255Scgd FOOD("dead giant bat", 0, 1, 3, 30), 10661f28255Scgd FOOD("dead centaur", 0, 5, 50, 500), 10761f28255Scgd FOOD("dead dragon", 0, 15, 150, 1500), 10861f28255Scgd FOOD("dead floating eye", 0, 1, 1, 10), 10961f28255Scgd FOOD("dead freezing sphere", 0, 1, 1, 10), 11061f28255Scgd FOOD("dead gnome", 0, 1, 10, 100), 11161f28255Scgd FOOD("dead hobgoblin", 0, 2, 20, 200), 11261f28255Scgd FOOD("dead stalker", 0, 4, 40, 400), 11361f28255Scgd FOOD("dead jackal", 0, 1, 10, 100), 11461f28255Scgd FOOD("dead kobold", 0, 1, 10, 100), 11561f28255Scgd FOOD("dead leprechaun", 0, 4, 40, 400), 11661f28255Scgd FOOD("dead mimic", 0, 4, 40, 400), 11761f28255Scgd FOOD("dead nymph", 0, 4, 40, 400), 11861f28255Scgd FOOD("dead orc", 0, 2, 20, 200), 11961f28255Scgd FOOD("dead purple worm", 0, 7, 70, 700), 12061f28255Scgd FOOD("dead quasit", 0, 2, 20, 200), 12161f28255Scgd FOOD("dead rust monster", 0, 5, 50, 500), 12261f28255Scgd FOOD("dead snake", 0, 1, 10, 100), 12361f28255Scgd FOOD("dead troll", 0, 4, 40, 400), 12461f28255Scgd FOOD("dead umber hulk", 0, 5, 50, 500), 12561f28255Scgd FOOD("dead vampire", 0, 4, 40, 400), 12661f28255Scgd FOOD("dead wraith", 0, 1, 1, 10), 12761f28255Scgd FOOD("dead xorn", 0, 7, 70, 700), 12861f28255Scgd FOOD("dead yeti", 0, 7, 70, 700), 12961f28255Scgd FOOD("dead zombie", 0, 1, 3, 30), 13061f28255Scgd FOOD("dead acid blob", 0, 1, 3, 30), 13161f28255Scgd FOOD("dead giant beetle", 0, 1, 1, 10), 13261f28255Scgd FOOD("dead cockatrice", 0, 1, 3, 30), 13361f28255Scgd FOOD("dead dog", 0, 2, 20, 200), 13461f28255Scgd FOOD("dead ettin", 0, 1, 3, 30), 13561f28255Scgd FOOD("dead fog cloud", 0, 1, 1, 10), 13661f28255Scgd FOOD("dead gelatinous cube", 0, 1, 10, 100), 13761f28255Scgd FOOD("dead homunculus", 0, 2, 20, 200), 13861f28255Scgd FOOD("dead imp", 0, 1, 1, 10), 13961f28255Scgd FOOD("dead jaguar", 0, 3, 30, 300), 14061f28255Scgd FOOD("dead killer bee", 0, 1, 1, 10), 14161f28255Scgd FOOD("dead leocrotta", 0, 5, 50, 500), 14261f28255Scgd FOOD("dead minotaur", 0, 7, 70, 700), 14361f28255Scgd FOOD("dead nurse", 0, 4, 40, 400), 14461f28255Scgd FOOD("dead owlbear", 0, 7, 70, 700), 14561f28255Scgd FOOD("dead piercer", 0, 2, 20, 200), 14661f28255Scgd FOOD("dead quivering blob", 0, 1, 10, 100), 14761f28255Scgd FOOD("dead giant rat", 0, 1, 3, 30), 14861f28255Scgd FOOD("dead giant scorpion", 0, 1, 10, 100), 14961f28255Scgd FOOD("dead tengu", 0, 3, 30, 300), 15061f28255Scgd FOOD("dead unicorn", 0, 3, 30, 300), 15161f28255Scgd FOOD("dead violet fungi", 0, 1, 10, 100), 15261f28255Scgd FOOD("dead long worm", 0, 5, 50, 500), 15361f28255Scgd /* %% wt of long worm should be proportional to its length */ 15461f28255Scgd FOOD("dead xan", 0, 3, 30, 300), 15561f28255Scgd FOOD("dead yellow light", 0, 1, 1, 10), 15661f28255Scgd FOOD("dead zruty", 0, 6, 60, 600), 15761f28255Scgd 15861f28255Scgd /* weapons ... - ROCK come several at a time */ 15961f28255Scgd /* weapons ... - (ROCK-1) are shot using idem+(BOW-ARROW) */ 16061f28255Scgd /* weapons AXE, SWORD, THSWORD are good for worm-cutting */ 16161f28255Scgd /* weapons (PICK-)AXE, DAGGER, CRYSKNIFE are good for tin-opening */ 16261f28255Scgd #define WEAPON(name,prob,wt,ldam,sdam) { name, NULL, NULL, 1, 0 /*%%*/,\ 16361f28255Scgd WEAPON_SYM, prob, 0, wt, ldam, sdam, 0 } 16461f28255Scgd 16561f28255Scgd WEAPON("arrow", 7, 0, 6, 6), 16661f28255Scgd WEAPON("sling bullet", 7, 0, 4, 6), 16761f28255Scgd WEAPON("crossbow bolt", 7, 0, 4, 6), 16861f28255Scgd WEAPON("dart", 7, 0, 3, 2), 16961f28255Scgd WEAPON("rock", 6, 1, 3, 3), 17061f28255Scgd WEAPON("boomerang", 2, 3, 9, 9), 17161f28255Scgd WEAPON("mace", 9, 3, 6, 7), 17261f28255Scgd WEAPON("axe", 6, 3, 6, 4), 17361f28255Scgd WEAPON("flail", 6, 3, 6, 5), 17461f28255Scgd WEAPON("long sword", 8, 3, 8, 12), 17561f28255Scgd WEAPON("two handed sword", 6, 4, 12, 6), 17661f28255Scgd WEAPON("dagger", 6, 3, 4, 3), 17761f28255Scgd WEAPON("worm tooth", 0, 4, 2, 2), 17861f28255Scgd WEAPON("crysknife", 0, 3, 10, 10), 17961f28255Scgd WEAPON("spear", 6, 3, 6, 8), 18061f28255Scgd WEAPON("bow", 6, 3, 4, 6), 18161f28255Scgd WEAPON("sling", 5, 3, 6, 6), 18261f28255Scgd WEAPON("crossbow", 6, 3, 4, 6), 18361f28255Scgd 18461f28255Scgd { "whistle", "whistle", NULL, 0, 0, 18561f28255Scgd TOOL_SYM, 90, 0, 2, 0, 0, 0 }, 18661f28255Scgd { "magic whistle", "whistle", NULL, 0, 0, 18761f28255Scgd TOOL_SYM, 10, 0, 2, 0, 0, 0 }, 18861f28255Scgd { "expensive camera", NULL, NULL, 1, 1, 18961f28255Scgd TOOL_SYM, 0, 0, 3, 0, 0, 0 }, 19061f28255Scgd { "ice box", "large box", NULL, 0, 0, 19161f28255Scgd TOOL_SYM, 0, 0, 40, 0, 0, 0 }, 19261f28255Scgd { "pick-axe", NULL, NULL, 1, 1, 19361f28255Scgd TOOL_SYM, 0, 0, 5, 6, 3, 0 }, 19461f28255Scgd { "can opener", NULL, NULL, 1, 1, 19561f28255Scgd TOOL_SYM, 0, 0, 1, 0, 0, 0 }, 19661f28255Scgd { "heavy iron ball", NULL, NULL, 1, 0, 19761f28255Scgd BALL_SYM, 100, 0, 20, 0, 0, 0 }, 19861f28255Scgd { "iron chain", NULL, NULL, 1, 0, 19961f28255Scgd CHAIN_SYM, 100, 0, 20, 0, 0, 0 }, 20061f28255Scgd { "enormous rock", NULL, NULL, 1, 0, 20161f28255Scgd ROCK_SYM, 100, 0, 200 /* > MAX_CARR_CAP */, 0, 0, 0 }, 20261f28255Scgd 20361f28255Scgd #define ARMOR(name,prob,delay,ac,can) { name, NULL, NULL, 1, 0,\ 20461f28255Scgd ARMOR_SYM, prob, delay, 8, ac, can, 0 } 20561f28255Scgd ARMOR("helmet", 3, 1, 9, 0), 20661f28255Scgd ARMOR("plate mail", 5, 5, 3, 2), 20761f28255Scgd ARMOR("splint mail", 8, 5, 4, 1), 20861f28255Scgd ARMOR("banded mail", 10, 5, 4, 0), 20961f28255Scgd ARMOR("chain mail", 10, 5, 5, 1), 21061f28255Scgd ARMOR("scale mail", 10, 5, 6, 0), 21161f28255Scgd ARMOR("ring mail", 15, 5, 7, 0), 21261f28255Scgd /* the armors below do not rust */ 21361f28255Scgd ARMOR("studded leather armor", 13, 3, 7, 1), 21461f28255Scgd ARMOR("leather armor", 17, 3, 8, 0), 21561f28255Scgd ARMOR("elven cloak", 5, 0, 9, 3), 21661f28255Scgd ARMOR("shield", 3, 0, 9, 0), 21761f28255Scgd ARMOR("pair of gloves", 1, 1, 9, 0), 21861f28255Scgd 21961f28255Scgd #define POTION(name,color) { name, color, NULL, 0, 1,\ 22061f28255Scgd POTION_SYM, 0, 0, 2, 0, 0, 0 } 22161f28255Scgd 22261f28255Scgd POTION("restore strength", "orange"), 22361f28255Scgd POTION("booze", "bubbly"), 22461f28255Scgd POTION("invisibility", "glowing"), 22561f28255Scgd POTION("fruit juice", "smoky"), 22661f28255Scgd POTION("healing", "pink"), 22761f28255Scgd POTION("paralysis", "puce"), 22861f28255Scgd POTION("monster detection", "purple"), 22961f28255Scgd POTION("object detection", "yellow"), 23061f28255Scgd POTION("sickness", "white"), 23161f28255Scgd POTION("confusion", "swirly"), 23261f28255Scgd POTION("gain strength", "purple-red"), 23361f28255Scgd POTION("speed", "ruby"), 23461f28255Scgd POTION("blindness", "dark green"), 23561f28255Scgd POTION("gain level", "emerald"), 23661f28255Scgd POTION("extra healing", "sky blue"), 23761f28255Scgd POTION("levitation", "brown"), 23861f28255Scgd POTION(NULL, "brilliant blue"), 23961f28255Scgd POTION(NULL, "clear"), 24061f28255Scgd POTION(NULL, "magenta"), 24161f28255Scgd POTION(NULL, "ebony"), 24261f28255Scgd 24361f28255Scgd #define SCROLL(name,text,prob) { name, text, NULL, 0, 1,\ 24461f28255Scgd SCROLL_SYM, prob, 0, 3, 0, 0, 0 } 24561f28255Scgd SCROLL("mail", "KIRJE", 0), 24661f28255Scgd SCROLL("enchant armor", "ZELGO MER", 6), 24761f28255Scgd SCROLL("destroy armor", "JUYED AWK YACC", 5), 24861f28255Scgd SCROLL("confuse monster", "NR 9", 5), 24961f28255Scgd SCROLL("scare monster", "XIXAXA XOXAXA XUXAXA", 4), 25061f28255Scgd SCROLL("blank paper", "READ ME", 3), 25161f28255Scgd SCROLL("remove curse", "PRATYAVAYAH", 6), 25261f28255Scgd SCROLL("enchant weapon", "DAIYEN FOOELS", 6), 25361f28255Scgd SCROLL("damage weapon", "HACKEM MUCHE", 5), 25461f28255Scgd SCROLL("create monster", "LEP GEX VEN ZEA", 5), 25561f28255Scgd SCROLL("taming", "PRIRUTSENIE", 1), 25661f28255Scgd SCROLL("genocide", "ELBIB YLOH",2), 25761f28255Scgd SCROLL("light", "VERR YED HORRE", 10), 25861f28255Scgd SCROLL("teleportation", "VENZAR BORGAVVE", 5), 25961f28255Scgd SCROLL("gold detection", "THARR", 4), 26061f28255Scgd SCROLL("food detection", "YUM YUM", 1), 26161f28255Scgd SCROLL("identify", "KERNOD WEL", 18), 26261f28255Scgd SCROLL("magic mapping", "ELAM EBOW", 5), 26361f28255Scgd SCROLL("amnesia", "DUAM XNAHT", 3), 26461f28255Scgd SCROLL("fire", "ANDOVA BEGARIN", 5), 26561f28255Scgd SCROLL("punishment", "VE FORBRYDERNE", 1), 26661f28255Scgd SCROLL(NULL, "VELOX NEB", 0), 26761f28255Scgd SCROLL(NULL, "FOOBIE BLETCH", 0), 26861f28255Scgd SCROLL(NULL, "TEMOV", 0), 26961f28255Scgd SCROLL(NULL, "GARVEN DEH", 0), 27061f28255Scgd 27161f28255Scgd #define WAND(name,metal,prob,flags) { name, metal, NULL, 0, 0,\ 27261f28255Scgd WAND_SYM, prob, 0, 3, flags, 0, 0 } 27361f28255Scgd 27461f28255Scgd WAND("light", "iridium", 10, NODIR), 27561f28255Scgd WAND("secret door detection", "tin", 5, NODIR), 27661f28255Scgd WAND("create monster", "platinum", 5, NODIR), 27761f28255Scgd WAND("wishing", "glass", 1, NODIR), 27861f28255Scgd WAND("striking", "zinc", 9, IMMEDIATE), 27961f28255Scgd WAND("slow monster", "balsa", 5, IMMEDIATE), 28061f28255Scgd WAND("speed monster", "copper", 5, IMMEDIATE), 28161f28255Scgd WAND("undead turning", "silver", 5, IMMEDIATE), 28261f28255Scgd WAND("polymorph", "brass", 5, IMMEDIATE), 28361f28255Scgd WAND("cancellation", "maple", 5, IMMEDIATE), 28461f28255Scgd WAND("teleportation", "pine", 5, IMMEDIATE), 28561f28255Scgd WAND("make invisible", "marble", 9, IMMEDIATE), 28661f28255Scgd WAND("digging", "iron", 5, RAY), 28761f28255Scgd WAND("magic missile", "aluminium", 10, RAY), 28861f28255Scgd WAND("fire", "steel", 5, RAY), 28961f28255Scgd WAND("sleep", "curved", 5, RAY), 29061f28255Scgd WAND("cold", "short", 5, RAY), 29161f28255Scgd WAND("death", "long", 1, RAY), 29261f28255Scgd WAND(NULL, "oak", 0, 0), 29361f28255Scgd WAND(NULL, "ebony", 0, 0), 29461f28255Scgd WAND(NULL, "runed", 0, 0), 29561f28255Scgd 29661f28255Scgd #define RING(name,stone,spec) { name, stone, NULL, 0, 0,\ 29761f28255Scgd RING_SYM, 0, 0, 1, spec, 0, 0 } 29861f28255Scgd 29961f28255Scgd RING("adornment", "engagement", 0), 30061f28255Scgd RING("teleportation", "wooden", 0), 30161f28255Scgd RING("regeneration", "black onyx", 0), 30261f28255Scgd RING("searching", "topaz", 0), 30361f28255Scgd RING("see invisible", "pearl", 0), 30461f28255Scgd RING("stealth", "sapphire", 0), 30561f28255Scgd RING("levitation", "moonstone", 0), 30661f28255Scgd RING("poison resistance", "agate", 0), 30761f28255Scgd RING("aggravate monster", "tiger eye", 0), 30861f28255Scgd RING("hunger", "shining", 0), 30961f28255Scgd RING("fire resistance", "gold", 0), 31061f28255Scgd RING("cold resistance", "copper", 0), 31161f28255Scgd RING("protection from shape changers", "diamond", 0), 31261f28255Scgd RING("conflict", "jade", 0), 31361f28255Scgd RING("gain strength", "ruby", SPEC), 31461f28255Scgd RING("increase damage", "silver", SPEC), 31561f28255Scgd RING("protection", "granite", SPEC), 31661f28255Scgd RING("warning", "wire", 0), 31761f28255Scgd RING("teleport control", "iron", 0), 31861f28255Scgd RING(NULL, "ivory", 0), 31961f28255Scgd RING(NULL, "blackened", 0), 32061f28255Scgd 32161f28255Scgd /* gems ************************************************************/ 32261f28255Scgd #define GEM(name,color,prob,gval) { name, color, NULL, 0, 1,\ 32361f28255Scgd GEM_SYM, prob, 0, 1, 0, 0, gval } 32461f28255Scgd GEM("diamond", "blue", 1, 4000), 32561f28255Scgd GEM("ruby", "red", 1, 3500), 32661f28255Scgd GEM("sapphire", "blue", 1, 3000), 32761f28255Scgd GEM("emerald", "green", 1, 2500), 32861f28255Scgd GEM("turquoise", "green", 1, 2000), 32961f28255Scgd GEM("aquamarine", "blue", 1, 1500), 33061f28255Scgd GEM("tourmaline", "green", 1, 1000), 33161f28255Scgd GEM("topaz", "yellow", 1, 900), 33261f28255Scgd GEM("opal", "yellow", 1, 800), 33361f28255Scgd GEM("garnet", "dark", 1, 700), 33461f28255Scgd GEM("amethyst", "violet", 2, 650), 33561f28255Scgd GEM("agate", "green", 2, 600), 33661f28255Scgd GEM("onyx", "white", 2, 550), 33761f28255Scgd GEM("jasper", "yellowish brown", 2, 500), 33861f28255Scgd GEM("jade", "green", 2, 450), 33961f28255Scgd GEM("worthless piece of blue glass", "blue", 20, 0), 34061f28255Scgd GEM("worthless piece of red glass", "red", 20, 0), 34161f28255Scgd GEM("worthless piece of yellow glass", "yellow", 20, 0), 34261f28255Scgd GEM("worthless piece of green glass", "green", 20, 0), 34361f28255Scgd { NULL, NULL, NULL, 0, 0, ILLOBJ_SYM, 0, 0, 0, 0, 0, 0 } 34461f28255Scgd }; 34561f28255Scgd 346ab8b6343Sjsm const char obj_symbols[] = { 34761f28255Scgd ILLOBJ_SYM, AMULET_SYM, FOOD_SYM, WEAPON_SYM, TOOL_SYM, 34861f28255Scgd BALL_SYM, CHAIN_SYM, ROCK_SYM, ARMOR_SYM, POTION_SYM, SCROLL_SYM, 34961f28255Scgd WAND_SYM, RING_SYM, GEM_SYM, 0 }; 35061f28255Scgd int bases[sizeof(obj_symbols)]; 3513ea4a95cSchristos #endif /* _DEF_OBJECTS_H_ */ 352