/
lib/banish/
lib/d/
lib/doc/
lib/doc/domains/
lib/doc/efun/
lib/doc/examples/
lib/doc/examples/armour/
lib/doc/examples/contain/
lib/doc/examples/food/
lib/doc/examples/magic/
lib/doc/examples/monster/
lib/doc/examples/room/
lib/doc/examples/weapons/
lib/function/
lib/include/
lib/include/fn_specs/
lib/include/skills/
lib/info/
lib/inherit/base/
lib/log/
lib/manuals/312/
lib/news/
lib/obj/party/
lib/objects/components/
lib/open/
lib/open/library/
lib/open/party/
lib/players/
lib/players/zilanthius/
lib/room/
lib/room/city/arena/
lib/room/city/creator/
lib/room/city/garden/monst/
lib/room/city/obj/
lib/room/city/shop/
lib/room/death/
lib/room/registry/
lib/secure/
lib/secure/UDP_CMD_DIR/
lib/skills/
lib/skills/fighter/
lib/skills/thief/
lib/usr/
lib/usr/creators/
lib/usr/players/
/* updated jan 94 - uses shadow of short() & move_player() */

status hide(mixed arg, string alt_type) {
  object ob;

  if(arg != "in shadows") {
    notify_fail("hide in shadows?\n");
    return 0;
  }
  if((ob = (object)this_player()->query_hide_in_shadows_object())) {
    write("You move out of the shadows...\n");
    say(this_player()->query_name() +" suddenly appears.\n");
    destruct(ob);
  }
  else {
    if((ob = (object)this_player()->query_primary_attack())
    && present(ob, environment(this_player()))) {
      write(ob->query_name() +" laughs as you try to hide.\n");
      return 1;
    }
    write("You attempt to hide in the shadows...\n");
    clone_object("obj/shadows/hider")->shadow_short(alt_type);
  }
  return 1;
}

/* Native Mode Move */

#include <move.h>