#pragma strict_types

inherit "/d/Imperium/std/library_std";

#include "aglarond.h"
#include "library.h"


void
create_imperium_room()
{
  set_short("Biblioteka");
  set_long("Znajdujesz sie w olbrzymim pomieszczeniu wypelnionym " +
  "poustawianymi jedna przy drugiej dlugimi szafami pelnymi ksiazek. " +
  "Po sali kreci sie kilku bibliotekarzy, ktorzy pomagaja " +
  "wypozyczajacym w znalezieniu szukanych ksiazek oraz odbieraja " +
  "zwracane egzemplarze. Na scianie wisi duza tablica z wypisanymi " +
  "zasadami obowiazujacymi korzystajacych z biblioteki.\n");

  add_item(({"szafe", "szafy", "polke", "polki", "ksiazki"}), 
    "Wysokie az do sufitu szafy sa wykonane z solidnego drewna, jednak " +
    "wydaje sie, jakby w kazdej chwili mialy runac pod ciezarem " +
    "zgromadzonych w nich ksiazek. Szafy ciagna sie rownymi rzedami przez " +
    "cala dlugosc sali. Komus niezorientowanemu trudno byloby znalezc " +
    "tutaj interesujaca go ksiazke. Dlatego pomoca sluza bibliotekarze.\n");
  add_item(({"bibliotekarza", "bibliotekarzy"}), 
    "Bibliotekarze krzataja sie po calym pomieszczeniu zajeci " +
    "inwentaryzacja ksiazek i obslugiwaniem wypozyczajacych.\n");
  add_item("tablice","Moze lepiej ja przeczytac?\n");
  add_cmd_item(({"tablice", "zasady"}), "przeczytaj", 
    "Witamy w Bibliotece Uniwersytetu Nulnijskiego.\n" +
    "Prawo do korzystania z ksiegozbioru maja wszystkie zainteresowane " +
    "osoby, co gwarantuje im uchwala Senatu Uniwersytetu Nulnijskiego " +
    "o upowszechnianiu literatury. W pierwszej kolejnosci sa obslugiwani " +
    "pracownicy Uniwersytetu oraz studenci.\n" +
    "W bibliotece nalezy zachowac spokoj. Obowiazuje calkowity zakaz " +
    "palenia. Z ksiegozbioru wolno korzystac wylacznie na terenie " +
    "biblioteki, a wynoszenie woluminow poza brame biblioteki jest " +
    "zabronione.\n" +
    "Aby zorientowac sie, jakie ksiazki mozna wypozyczyc, nalezy " +
    "wykonac komende <spis>. Komendy <wypozycz> i <zwroc> nie wymagaja " +
    "komentarza. Kazdy z korzystajacych z biblioteki moze rowniez " +
    "napisac wlasna ksiazke (z pomoca komendy <napisz>) i przedstawic " +
    "ja administracji biblioteki. Jezeli ksiazka zostanie uznana za " +
    "wartosciowa, zostanie opublikowana i udostepniona w zbiorach " +
    "Biblioteki Uniwersytetu Nulnijskiego.\n");

/* Tutaj znajduja sie wyjscia. wyjdz() nie pozwala graczowi wyjsc bez zwrotu
    wypozyczonych ksiazek  */    

  add_exit(NPATH + "lokacje/magow", "poludniowy-wschod", "@@wyjdz", 1);
  add_exit("/d/Imperium/Garou/ROOM/join.c","wschod",0,0,1);
/* Pokoj administratora biblioteki */
  add_exit(LIBRARY_DIR + "admin.c","zachod","@@wcheck",1);

  add_prop(ROOM_I_LIGHT, 5);
  add_prop(ROOM_I_INSIDE, 1);

  set_event_time(20.0, 130.0);
  add_event("Przez sale przechodzi niski czlowiek w bialej szacie.\n");
  add_event("Do jednej z szafek podchodzi mag i przeglada umieszczone " +
            "w niej ksiazki.\n");
  add_event("Po sali rozchodzi sie odglos niewielkiej maszyny drukarskiej.\n");
  add_event("Jedna z lamp oswietlajacych biblioteke zaczyna powoli " +
  	    "przygasac.\n");
  add_event("Przez sale przechodzi stary wozny z niewielkim pojemnikiem, " +
  	    "z ktorego uzupelnia oliwe w lampach.\n");
  add_event("Z glebi sali dobiega cie glosny zgrzyt odsuwanego krzesla.\n");
  add_event("Obok ciebie przechodzi grupa studentow niosacych ksiazki.\n");
  add_event("Niezmacona cisze tego miejsca rozdziera przerazliwy zgrzyt " +
  	    "gilotyny tnacej papier.\n");
  add_event("Jeden z bibliotekarzy ucisza halasliwego goscia na koncu " +
  	    "sali.\n");
  set_events_on(1); 
  set_katalog_biblioteki(LIBRARY_DIR);
  set_katalog_usunietych(LIBRARY_DIR+"usuniete/");
  set_zarzadca(ZARZADCA);
}

void
init()
{
	::init();
	init_library();
}

void
lib_hook_nowy_administrator(string kto, string przyjal)
{
   object pr=find_player(przyjal);
   tell_object(find_player(lower_case(kto)), "\n\nW twoim umysle pojawia " +
   "sie wizja postaci przemawiajacej do ciebie. Gdy probujesz sie jej " +
   "przyjrzec, kontury zaczynaja sie rozmywac lecz zamazany obraz " +
   "pozostaje. Pomimo iz nie widzisz aby jej usta otwieraly sie, slyszysz " +
   "w swoim umysle jej glos. Nagle w twoim umysle pojawia sie wiedza na " +
   "temat tej osoby. Jest to sam mistrz " + capitalize(przyjal) +
   ", wielki mag zamieszkujacy w poteznym miescie Nuln. Powoli zaczyna " +
   "do ciebie docierac sens slow wymawianych przez niego:\n\n" +
   "Jestem osoba bardzo zajeta i nie mam duzo czasu. Doceniajac " +
   "twoj upor postanowil" + pr->koncowka("em","am") + " ci powierzyc " +
   "bardzo odpowiedzialna funkcje. " +
   "Zostales przyjety do grona osob odpowiedzialnych za stan biblioteki " +
   "na Uniwersytecie Nulnijskim. Od tej chwili mozesz wejsc " +
   "do archiwum. Bedziesz odpowiedzialny za dopuszczenie lub nie ksiazek " +
   "do publikacji. Nie zawiedz mojego zaufania i wykaz sie madroscia " +
   "dokonujac wyborow.\n\n Powoli jego obraz zaczyna sie rozmywac " +
   "znikajac po chwili zupelnie.\n");
}

void
lib_hook_wyrzuc_administratora(string kto, string przyjal)
{
   tell_object(find_player(lower_case(kto)), "\n\nW twoim umysle pojawia " +
   "sie wizja postaci przemawiajacej do ciebie. Gdy probujesz sie jej " +
   "przyjrzec, kontury zaczynaja sie rozmywac lecz zamazany obraz " +
   "pozostaje. Pomimo, iz nie widzisz aby jej usta otwieraly sie, slyszysz " +
   "w swoim umysle jej glos. Nagle w twoim umysle pojawia sie wiedza na " +
   "temat tej osoby. Jest to sam mistrz " + capitalize(przyjal) +
   ", wielki mag zamieszkujacy potezne miasto Nuln. Powoli zaczyna do " +
   "ciebie docierac sens slow wymawianych przez niego:\n\nZ powodu " +
   "zaistnialych okolicznosci nie mozesz dluzej piastowac tak " +
   "odpowiedzialnej funkcji w mojej bibliotece Uniwersytetu Nulnijskiego. " +
   "Dokladniejsze informacje zostana wyslane do ciebie Imperialna poczta.\n" +
   "\nPowoli jego obraz zaczyna sie rozmywac znikajac po chwili zupelnie.\n");
}