#define ITEM_LIGHT 1
#define ITEM_SCROLL 2
#define ITEM_WAND 3
#define ITEM_STAFF 4
#define ITEM_WEAPON 5
#define ITEM_FIREWEAPON 6
#define ITEM_MISSILE 7
#define ITEM_TREASURE 8
#define ITEM_ARMOR 9
#define ITEM_POTION 10
#define ITEM_WORN 11
#define ITEM_OTHER 12
#define ITEM_TRASH 13
#define ITEM_TRAP 14
#define ITEM_CONTAINER 15
#define ITEM_NOTE 16
#define ITEM_DRINKCON 17
#define ITEM_KEY 18
#define ITEM_FOOD 19
#define ITEM_MONEY 20
#define ITEM_PEN 21
#define ITEM_BOAT 22
#define ITEM_PILL 23
#define ITEM_RADIO 24
#define ITEM_CHARGE 25
#define ITEM_BOMB 26
#define ITEM_SHOVEL 27
#define ITEM_DISPENSER 28
/* Bitvector For 'wear_flags' */
#define ITEM_TAKE 1
#define ITEM_WEAR_FINGER 2
#define ITEM_WEAR_NECK 4
#define ITEM_WEAR_BODY 8
#define ITEM_WEAR_HEAD 16
#define ITEM_WEAR_LEGS 32
#define ITEM_WEAR_FEET 64
#define ITEM_WEAR_HANDS 128
#define ITEM_WEAR_ARMS 256
#define ITEM_WEAR_SHIELD 512
#define ITEM_WEAR_ABOUT 1024
#define ITEM_WEAR_WAISTE 2048
#define ITEM_WEAR_WRIST 4096
#define ITEM_WIELD 8192
#define ITEM_HOLD 16384
#define ITEM_WEAR_RADIO 32768
#define ITEM_LIGHT_SOURCE 65536
#define ITEM_WEAR_FACE 131072
#define ITEM_WEAR_EARS 262144
#define ITEM_GLOW 1
#define ITEM_HUM 2
#define ITEM_SFX 4
#define ITEM_LOCK 8
#define ITEM_EVIL 16
#define ITEM_INVISIBLE 32
#define ITEM_MAGIC 64
#define ITEM_NODROP 128
#define ITEM_BLESS 256
#define ITEM_ANTI_GOOD 512 /* not usable by good people */
#define ITEM_ANTI_EVIL 1024 /* not usable by evil people */
#define ITEM_ANTI_NEUTRAL 2048 /* not usable by neutral people */
#define ITEM_PRIME 4096
#define ITEM_POOF 8192
#define ITEM_POOFSOON 16384
#define ITEM_VARIABLE 32768
#define ITEM_ANTIPRIME 65536
#define ITEM_NOKICK 131072
#define ITEM_MUTABLE 262144
#define OBJ_NOTIMER -7000000
struct item {
char *name;
unsigned char pair, type;
} item_list[]={
{ "ring", 0, 9},
{ "chain", 0, 9},
{ "suit", 0, 9},
{ "toupee", 0, 9},
{ "trousers", 1, 9},
{ "socks", 1, 9},
{ "gloves", 1, 9},
{ "sleeves", 1, 9},
{ "laptop", 0, 9},
{ "trenchcoat", 0, 9},
{ "belt", 0, 9},
{ "watch", 0, 9},
{ "bat", 0, 5},
{ "briefcase", 0, 9},
{ "cellular phone", 0, 9},
{ "flashlight", 0, 1},
{ "glasses", 0, 9},
{ "earmuffs", 1, 9}
};
#define VOWEL(X) (((X)=='a')||((X)=='e')||((X)=='i')||((X)=='o')||((X)=='u'))
#define BASE 17410
#define RNDARMOR (5+(random()%20))
#define NDESCR 9
char *descr[]={
"diamond",
"gold",
"polyester",
"blonde",
"polyester",
"nylon",
"calf-skin",
"gheppish",
"sickening yellow"
};
main()
{
int i,j,k;
char *s;
unsigned char anf;
srandom(getpid());
for(i=ITEM_WEAR_FINGER,j=0;i<=ITEM_WEAR_EARS;i<<=1,j++){
printf("#%d\n",BASE+j);
s=item_list[j].name;
k=(random()%NDESCR);
anf=(!item_list[j].pair)&&(VOWEL(*descr[k]));
printf("%s~\n",s);
printf("%s%s%s %s~\n",
anf ? "An" : "A",
item_list[j].pair ? " pair of " : " ",
descr[k],
s);
printf("%s%s%s %s is in the dirt.~\n",
anf ? "An" : "A",
item_list[j].pair ? " pair of " : " ",
descr[k],
s);
printf("~\n%d %d %d\n",item_list[j].type,rndflags(),i+1);
printf("%d 0 0 0\n",RNDARMOR);
printf("%d %d %d\n",10,1000,100);
}
}
rndflags()
{
}