#include <mudlib.h>
inherit ROOM;
#define ELF 3
object *elves;
void reset(status arg) {
  int i;
  object glv, telf;
  
  if(!arg) {
    set_short("the elfin forest");
    set_long(
"You are standing before a large oak tree.  Its far larger than     \n"+
"any of the other trees in the forest. Its branches seem to reach   \n"+
"up into the sky for miles. This tree is so big someon or something \n"+
"could live in it.\n");
 
   set_exits(({
        "room/newbie/new4",  "northwest",
    }));
    set_items(({
        "tree",   "A large oak tree. One of the branches seems strange",
        "branch", "An oak branch. The base seems to have a pivot for twisting",
    }));
    set_weather(2,4,3);
  }
  if(!elves) elves = allocate(ELF);
  for(i = 0; i < ELF; i++) {
    if(!elves[i]) {
      telf = clone_object(MONSTER);
      telf->set_name("elf");
      telf->set_short("a wood elf");
      telf->set_long(
          "A small little wood elf. She has pointy ears, and small feet.\n");
      telf->set_level(2);
      telf->set_ac(3);
      telf->set_wc(6);
      telf->set_al(50);
      telf->set_gender(2);
      telf->set_race("wood elf");
      move_object(telf, this_object());
      elves[i] = telf;
    }
    if(!present("gloves", elves[i])) {
        glv = clone_object(ARMOUR);
        glv->set_name("gloves");
        glv->set_short("A pair of bark gloves");
        glv->set_long(
               "A pair of gloves made from the soft bark of a pine tree.\n");
        glv->set_ac(1);
        glv->set_weight(5);
        glv->set_value(60);
        glv->set_type("gloves");
        glv->set_armour_material("leather");
        move_object(glv, elves[i]);
        command("wear gloves", elves[i]);
    } 
  }
}
void init() {
  ::init();
  add_action("twist", "twist");
}
status twist(string arg) {
   if(arg != "branch") return 0;
   write("You twist the branch, and a trapdoor opens under you.\n");
   say(this_player()->query_name()+" twists the branch.\n",this_player());
   this_player()->move_player("through a trapdoor#/room/newbie/tree1");
   return 1;
}