gurba-0.40/
gurba-0.40/bin/
gurba-0.40/lib/
gurba-0.40/lib/cmds/guild/fighter/
gurba-0.40/lib/cmds/monster/
gurba-0.40/lib/cmds/race/catfolk/
gurba-0.40/lib/cmds/race/dwarf/
gurba-0.40/lib/cmds/verb/
gurba-0.40/lib/daemons/data/
gurba-0.40/lib/data/boards/
gurba-0.40/lib/data/messages/
gurba-0.40/lib/data/players/
gurba-0.40/lib/design/
gurba-0.40/lib/domains/gurba/
gurba-0.40/lib/domains/gurba/guilds/fighter/
gurba-0.40/lib/domains/gurba/monsters/
gurba-0.40/lib/domains/gurba/objects/armor/
gurba-0.40/lib/domains/gurba/objects/clothing/
gurba-0.40/lib/domains/gurba/objects/weapons/
gurba-0.40/lib/domains/gurba/vendors/
gurba-0.40/lib/kernel/cmds/admin/
gurba-0.40/lib/kernel/daemons/
gurba-0.40/lib/kernel/include/
gurba-0.40/lib/kernel/lib/
gurba-0.40/lib/kernel/net/
gurba-0.40/lib/kernel/sys/
gurba-0.40/lib/logs/
gurba-0.40/lib/pub/
gurba-0.40/lib/std/modules/languages/
gurba-0.40/lib/std/races/
gurba-0.40/lib/std/races/monsters/
gurba-0.40/lib/wiz/fudge/
gurba-0.40/lib/wiz/spud/
gurba-0.40/src/host/beos/
gurba-0.40/src/host/pc/res/
gurba-0.40/src/kfun/
gurba-0.40/src/lpc/
gurba-0.40/src/parser/
gurba-0.40/tmp/
mixed *query_verb_info( void ) {
  return( ({ "", "OBJ", "OBJA" }) );
}

mixed can_close( void ) {
  return( "Close what?" );
}

mixed can_close_str( string str ) {
  if( lowercase(str) == "all" 
      || lowercase(str) == "everything" 
      || lowercase(str) == "all doors"
      || lowercase(str) == "every door" 
      )
    return( 1 );
  else
    return( "You can't seem to find the " + str + "." );
}

mixed can_close_obj( object obj ) {
  if( obj->is_closable() )
    return( 1 );
  return( "You can't open the " + obj->query_id() + "." );
}

mixed do_close_str( string str ) {
  object *inv;
  int i;

  if( lowercase(str) == "all" 
      || lowercase(str) == "everything" 
      ) {
    inv = this_environment()->query_inventory();
    for( i=0; i < sizeof( inv ); i++ ) {
      if( inv[i]->is_closable() ) {
	inv[i]->do_close( this_player() );
      }
    }
  } else if( lowercase(str) == "all doors"
	     || lowercase(str) == "every door" 
	     ) {
    inv = this_environment()->query_inventory();
    for( i=0; i < sizeof( inv ); i++ ) {
      if( inv[i]->is_closable() && inv[i]->is_door() ) {
	inv[i]->do_close( this_player() );
      }
    }
  } 
}

mixed do_close_obj( object obj ) {
  obj->do_close( this_player() );
}