#include "room.h"
object gold_stick, orc_slayer, shaman;
#undef EXTRA_RESET
#define EXTRA_RESET fix_shaman();
fix_shaman()
{
if (!shaman || !living(shaman)) {
gold_stick = clone_object("obj/treasure");
call_other(gold_stick, "set_id", "staff");
call_other(gold_stick, "set_alias", "golden staff");
call_other(gold_stick, "set_short", "A golden staff");
call_other(gold_stick, "set_value", 300);
orc_slayer = clone_object("obj/weapon");
call_other(orc_slayer, "set_name", "short sword");
call_other(orc_slayer, "set_alias", "sword");
call_other(orc_slayer, "set_short", "Short sword");
call_other(orc_slayer, "set_alt_name", "orc slayer");
call_other(orc_slayer, "set_long", "This is a very fine blade.\n"+
"It's covered with ancient runes.\n" +
"Engraved on it is a picture of the sword slicing an orc.\n");
call_other(orc_slayer, "set_read",
"The only thing you can read is the word 'orc'.\n");
call_other(orc_slayer, "set_class", 9);
call_other(orc_slayer, "set_weight", 2);
call_other(orc_slayer, "set_value", 200);
call_other(orc_slayer, "set_hit_func", this_object());
shaman = clone_object("obj/monster.talk");
call_other(shaman, "set_name", "shaman");
call_other(shaman, "set_alias", "orc shaman");
call_other(shaman, "set_race", "orc");
call_other(shaman, "set_level", 10);
call_other(shaman, "set_al", -300);
call_other(shaman, "set_short", "An orc shaman");
call_other(shaman, "set_wc", 10);
call_other(shaman, "set_ac", 1);
call_other(shaman, "set_aggressive", 1);
call_other(shaman, "set_chance", 20);
call_other(shaman, "set_spell_mess1",
"You are hit by a magic missile");
call_other(shaman, "set_spell_mess2",
"The shaman casts an magic missile");
call_other(shaman, "set_spell_dam", 20);
move_object(shaman, this_object());
move_object(gold_stick, shaman);
move_object(orc_slayer, shaman);
}
}
ONE_EXIT("room/fortress", "south",
"The orc treasury",
"You are in the orc treasury. It is normally heavily guarded.\n", 1)
weapon_hit(attacker)
{
string alig;
if(call_other(attacker,"id","orc")){
write("Ziiing\n");
return 10;
}
return 0;
}