#include <mudlib.h>
inherit ROOM;
static object alchemist;
void reset(status arg) {
if(!present("alchemist")) {
alchemist = clone_object("room/city/monst/alchemist");
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);
set_exits(({
"room/city/main_st3", "north",
"room/city/market3", "south",
}));
}
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;
}