#include <mudlib.h> inherit ROOM; static object alchemist; void reset(status arg) { if(!present("alchemist")) { alchemist = clone_object("room/city/monst/alchmst"); alchemist -> set_name("garion"); alchemist -> set_short("Garion the alchemist"); alchemist -> set_long( "Garion, although an old man, used to be a famous adventurer, and \n"+ "a powerful fighter and wizard. He now puts his knowledge into \n"+ "brewing potions for young adventurers.\n"); alchemist -> set_gender(1); alchemist -> set_race("human"); alchemist -> set_owner("garion"); alchemist -> set_alias("alchemist"); alchemist -> load_chat(10,({ "Garion collects a few bottles.\n", "Garion labels a few potions.\n", "Garion sips a potion to test its strength.\n", "Garion cleans up the workshop.\n", })); alchemist -> load_a_chat(10,({ "Garion exclaims: Leave me alone!\n", "Garion cries out for help!\n", "Garion pleads with you.\n", "Garion bursts out crying.\n", })); alchemist -> set_brew(1); alchemist -> set_potion_array(({ "cure light wounds", "cure serious wounds", "slow poison", "cure disease", "resist fire", "resist lightning", })); alchemist -> set_level(15); alchemist -> set_wc(20); alchemist -> set_ac(12); alchemist -> set_hp(1000); alchemist -> add_money(100 + random(1000)); move_object(alchemist, this_object()); } reset_doors(arg); load_door(({ "file", "room/city/market2", "direction", "east door", "key id", "city key", "long", "A tall red door with a tiny peek hole in the center.\n", })); if(arg) return; set_short("The Alchemist's Shop"); set_long( "This small room feels stuffy and cramped. There are thousands \n"+ "of bottles, jars and potions with strange colourful liquids \n"+ "stacked in rows along tall shelves which cover the four walls \n"+ "of this tiny room, making it feel even smaller. There is a \n"+ "small gold plaque on a counter at the far end of the room. \n"); set_items(({ "plaque#sign", "Perhaps you could read it?", "bottle#bottles", "Some are tall and thin, and some are coloured", "jar#jars", "Most of the glassware on the shelves are jars of many \n"+ "different sizes and colours, containing strange and \n"+ "bubbling liquids", "potion#potions", "They are obviously the alchemists specialty, as some have \n"+ "prices and labels on them", "prices#price#label#labels", "Perhaps you should read the plaque to get an idea of what\n"+ "the alchemist sells?", })); set_smell("The room is full of strange and exotic smells.\n"); set_weather(2,1,0); } void init() { ::init(); add_action("read", "read"); } status read(string str) { string tmp1, tmp2; if(sscanf(str, "%splaque%s", tmp1, tmp2)) { write( "Potions for Sale Cost \n"+ "---------------- -------- \n"+ "Cure Light Wounds.......8 silver \n"+ "Cure Serious Wounds.....2 gold \n"+ "Cure Disease...........14 silver \n"+ "Slow Poison.............6 silver \n"+ "Resist Fire............18 silver \n"+ "Resist Lightning.......18 silver \n"+ "\nUsage: brew <potion name >\n"); say(this_player()->query_name()+" reads the plaque on the counter.\n", this_player()); return 1; } return 0; }