/*
* Item generator 2, a simpler approch to the creation system
*
* File: Generator.Ring.c
* Descr: This file holds the main generation of Ring items
* Makes sure Ring has magical property
*/
#if defined(macintosh)
#include <types.h>
#else
#include <sys/types.h>
#endif
#include <ctype.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include "merc.h"
#include "interp.h"
#include "magic.h"
#include "recycle.h"
#include "tables.h"
OBJ_DATA *
gen_ring_rare (OBJ_DATA * obj, int level)
{
char name_set[MSL];
char shor_set[MSL];
char long_set[MSL];
char prefix[MSL];
char suffix[MSL];
obj = create_object (get_obj_index (910), 0);
obj->wear_flags = ITEM_TAKE;
obj->wear_flags += ITEM_WEAR_FINGER;
switch(number_range(1, 5))
{ default:
case 1:
sprintf(prefix, "Raven");
break;
case 2:
sprintf(prefix, "Dark");
break;
case 3:
sprintf(prefix, "Destructive");
break;
case 4:
sprintf(prefix, "Unholy");
break;
case 5:
sprintf(prefix, "Shimmering");
break;
}
switch(number_range(1, 5))
{ default:
case 1:
sprintf(suffix, "spiral");
break;
case 2:
sprintf(suffix, "coil");
break;
case 3:
sprintf(suffix, "circle");
break;
case 4:
sprintf(suffix, "thorned ring");
break;
case 5:
sprintf(suffix, "ring");
break;
}
switch(number_range(1, 3))
{ default:
case 1:
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
break;
case 2:
gen_ring_prefix(obj, level);
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
break;
case 3:
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
gen_ring_suffix(obj, level);
break;
case 4:
gen_ring_prefix(obj, level);
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
gen_ring_suffix(obj, level);
break;
}
sprintf(name_set, "%s %s", prefix, suffix);
sprintf(shor_set, "%s %s", prefix, suffix);
sprintf(long_set, "a small ring is on the ground here");
obj->name = str_dup (name_set);
obj->short_descr = str_dup (shor_set);
obj->description = str_dup (long_set);
obj->level = level;
return(obj);
}
OBJ_DATA *
gen_ammy_rare (OBJ_DATA * obj, int level)
{
char name_set[MSL];
char shor_set[MSL];
char long_set[MSL];
char prefix[MSL];
char suffix[MSL];
obj = create_object (get_obj_index (911), 0);
obj->wear_flags = ITEM_TAKE;
obj->wear_flags += ITEM_WEAR_NECK;
switch(number_range(1, 5))
{ default:
case 1:
sprintf(prefix, "Hawk");
break;
case 2:
sprintf(prefix, "Dark");
break;
case 3:
sprintf(prefix, "Destructive");
break;
case 4:
sprintf(prefix, "Unholy");
break;
case 5:
sprintf(prefix, "Shimmering");
break;
}
switch(number_range(1, 5))
{ default:
case 1:
sprintf(suffix, "chain");
break;
case 2:
sprintf(suffix, "coil");
break;
case 3:
sprintf(suffix, "necklace");
break;
case 4:
sprintf(suffix, "string");
break;
case 5:
sprintf(suffix, "amulet");
break;
}
switch(number_range(1, 3))
{ default:
case 1:
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
break;
case 2:
gen_ring_prefix(obj, level);
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
break;
case 3:
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
gen_ring_suffix(obj, level);
break;
case 4:
gen_ring_prefix(obj, level);
gen_ring_prefix(obj, level);
gen_ring_suffix(obj, level);
gen_ring_suffix(obj, level);
break;
}
sprintf(name_set, "%s %s", prefix, suffix);
sprintf(shor_set, "%s %s", prefix, suffix);
sprintf(long_set, "a small amulet is on the ground here");
obj->name = str_dup (name_set);
obj->short_descr = str_dup (shor_set);
obj->description = str_dup (long_set);
obj->level = level;
return(obj);
}