inherit "/d/Imperium/std/room";

#include "local.h"
#include "library.h"

object masterlib;
int spis();
int kolejka();
int zaloz();
int akceptuje(string tytul);
int odrzuc(string tytul);
int usun(string tytul);
int uprawniam(string kogo);
int zwalniam(string kogo);
int obejrzyj(string tytul);

void
create_imperium_room() 
{
  set_short("Administracja biblioteki w Athel Loren.\n");
  set_long("Pokoj administracji biblioteki. Mozesz tutaj dokonac " +
  "nastepujacych rzeczy.\n" +
  "Zalozyc nowa biblioteke                 <zaloz>\n" +
  "Spis ksiazek dostepnych w bibliotece    <spis>\n" +
  "Spis ksiazek oczekujacych na publikacje <kolejka>\n" +
  "Zaakceptowac ksiazke do publikacji      <akceptuje TYTUL>\n" +
  "Niedopuscic ksiazki do publikacji       <odrzuc TYTUL>\n" +
  "Obejrzec ksiazke czekajaca w kolejce    <obejrzyj TYTUL>\n" +
  "  Komendy tylko dla zarzadcy biblioteki:\n" +
  "Usunac ksiazke z biblioteki             <usun TYTUL>\n" +
  "Nadac komus prawa administratora        <uprawniam KOGO>\n" +
  "Zabrac komus prawa administratora       <zwalniam KOGO>\n");

  add_exit(LIBRARY_DIR+"library.c","wschod",0,0);
  add_prop(ROOM_I_LIGHT, 5);
  add_prop(ROOM_I_INSIDE, 1);

  masterlib=find_object(LIBRARY_DIR+"library.c");
}

void 
init()
{
  ::init(); 

  add_action(spis, "spis");
  add_action(kolejka, "kolejka");
  add_action(zaloz,"zaloz");
  add_action(akceptuje,"akceptuje");
  add_action(odrzuc,"odrzuc");    
  add_action(usun,"usun");
  add_action(uprawniam,"uprawniam");
  add_action(zwalniam,"zwalniam");
  add_action(obejrzyj,"obejrzyj");
}

int 
obejrzyj(string tytul)
{
  masterlib->wypozycz_temp(tytul);
  return 1;
}

int 
uprawniam(string kogo)
{
  masterlib->mk_admin(kogo);
  return 1;
}

int 
zwalniam(string kogo)
{
  masterlib->rm_admin(kogo);
  return 1;
}

int 
odrzuc(string tytul)
{
  masterlib->usun_temp(tytul);
  return 1;
}

int 
usun(string tytul)
{
  masterlib->usun(tytul);
  return 1;
}

int 
akceptuje(string tytul)
{
  masterlib->accept(tytul);
  return 1;
}

int 
spis()
{
  masterlib->spis();
  return 1;
}

int 
kolejka()
{
  masterlib->tspis();
  return 1;
}

int 
zaloz()
{
  masterlib->clear_library();
  return 1;
}