
/* 
 * Plik:        magazynek.c
 * Autor:       Kylo
 * Data:        24.10.97
 * Last Update: 14.11.97
 * Opis:        Stajnia w zajezdzie		
 */

// Dziedziczenie standartowego pokuju w Imperium
inherit "/d/Imperium/std/room.c";

// Dolaczenie pliku naglowkowego 
#include "magazynek.h"

// Beczka w pomieszczeniu i nie tylko to
object beczka;
object drzwi_s;

/*
 * Nazwa funkcji: obsluga_komend()
 * Opis:	  Obsluguje lokalne komendy gracza       
 * Argumenty:	  brak
 * Zwraca:	  nic nie zwraca
 */

string
obsluga_komend()
{
    // Tekst ktory zobaczy gracz
    write("Teraz nie ma na to czasu. Zaraz moze ktos przyjsc. \n ");
    // Tekst ktory zobacza pozostali gracze w pomieszczeniu
    say(QCTNAME(TP) + " znieruchmial na chwilke./n ");
    // Zwracany pusty tekst - wymaganie funkcji VBCF
    return "";
}
//koniec funkcij obsluga_komend()

/*
 * Nazwa funkcji: ustaw_dlugi_opis()
 * Opis:	  Ustawi dlugi opis magazynak zajazdu (VBFC)       
 * Argumenty:	  brak
 * Zwraca:	  dlugi opis magazynka
 */

string
ustaw_dlugi_opis() 
{
    string opis="";
    opis+="Po schodach zszedles do niewielkiej piwniczki, w ktorej " +
	"wlasciciel zajazdu przechowuje swoje zapasy. " +
	"Jedynym zrodlem swiatla jest to, ktore sam przyniosles. " +
	"W jego blasku dostrzegasz stojace na kamiennej posadzce " +
	"beczki, skrzynki, a pod sciana jakies worki. Z sufitu zwisaja " +
	"szynki, wolowe udzce, peta kielbas, a takze wience czosnku i " +
	"innych przypraw oraz ziol - jednym slowem dobrze zaopatrzona " +
	"spizarnia. Jedna ze stojacych beczek jest mniejsza " +
	"niz pozostale." +
        "Na poludniu sa kamienne schody prowadzace spowrotem na gore, " +
    	"\n";
	
return opis;
} 
// koniec funkcji ustaw_dlugi_opis()

/*
 * Nazwa funkcji: reset_imperium_room()
 * Opis:	  Odswiezenie pomieszczenia ( co okolo 30 min)
 * Argumenty:	  brak
 * Zwraca:	  nic nie zwraca
 */
 
void 
reset_imperium_room()
{
    // Odtworzenie beczki
    if(!beczka)    
    {
	beczka=clone_object(PRZEDMIOTY_PATH + "beczka.c");
	beczka->move(TO);
    }
    if(!drzwi_s)
    {
        drzwi_s=clone_object(DRZWI_PATH + "szynkwas_magazynek.d.2.c");
        drzwi_s->move(TO);
    }
}
// koniec funkcji reset_imperium_room()
    
/*
 * Nazwa funkcji: create_imperium_room()
 * Opis:	  Inicjalizacja glownej funkcji pomieszczenia
 *		  W Imperium jest to create_imperium_room() 
 *		  nie zas create_room().
 * Argumenty:	  brak
 * Zwraca:	  nic nie zwraca
 */
 	
void
create_imperium_room()
{
    // Ustalenie natezenia swiatla w tym pomieszczeniu - 0 ciemnosc.       
    // ( domyslnie 1 )
    add_prop(ROOM_I_LIGHT, 0);

    // Ustalenie czy pokoj jest 'na zewnatrz' - 1 pomieszczenie.    
    // ( domyslnie 0 )
    add_prop(ROOM_I_INSIDE, 1);

    // Ustalenie 'krotkiego opisu' pomieszczenia,"
    // Na koncu _NIE_MA_KROPKI_. 
    set_short("Magazynek zajazdu");

    // Ustawienie dlugiego opisu
    set_long("@@ustaw_dlugi_opis");

    // Dodanie wyjsc z pomieszczenia
    add_exit(LOKACJE_PATH + "szynkwas.c","poludnie");
    
    // Ustawienie opisow przedmiotow 'widzianych' 
    // przez gracza w danym pomieszczeniu.
    add_item(({"schody","kamienne schody"}),
	"Zwykle kamienne schody, sa zimne i mokre, tak wiec uwazaj " +
	"aby sie nie posliznac. " +
	"\n");
    add_item("beczki",
	"Jest tu duzo beczek, w wiekszosci sa to ogromne dreniane " +
	"pojemniki zawierajace najpewniej wino, miejscowe piwo, i inne " +
	"trunki. O tym co miesci sie w tych mniejszych nie masz zupelnie " +
	"pojecia. " +
	"\n");
    add_item("skrzynki",
	"W tych bilsko Ciebie znajduja sie jablka, co jest w tych glebiej " +
	"schowanych nie potrafisz okreslic. " +
	"\n");
    add_item("worki",
	"Obmacujac ich zawartosc stwierdzasz ze zawieraja cos sypkiego, " +
	"pewnie jakas kasze czy tez make. " +
	"\n");
    add_item(({"szynki","udzce"}),
	"Wisi tutaj ich kilka. " +
	"Sa ogromne i wygladaja bardzo smakowicie. \n");			
    add_item(({"kielbase","kielbasy"}),
	"Miejscowy wrob, dobrze podsuszony - wyglada bardzo smakowicie. " +
	"\n");
    add_item(({"wience","czosnek","ziola"}),
	"Czosnek i inne przyprawy przydatne w kuchni. \n");	
    // Pozwalenie graczowi wykonac komendy 
    add_cmd_item(({"kiebase","kielbasy"}),
	({"wez","zjedz"}),
        "@@obsluga_komend");	
    // Zainicjowanie tzw. events, czyli losowych komunikatow pojawiajacych
    // sie w danym pomieszczeniu. ( pierwszy pojawi sie po 10 sekundach,
    // nastepne co 100 sekund )
    
    set_event_time(10.0, 200.0); 
    // Lista eventow. 
       
    add_event("Dotkliwe zimno panujace tutaj przeszylo Cie na wskros.\n");
    add_event("Slyszysz odglosy dobrej zabawy na gorze.\n"); 
    add_event("Lepiej sie stad wynos, zaraz moze ktos przyjsc.\n"); 
    add_event("Kropla zimnej wody spadla z sufitu na kamienna " +
	"podloge. " +
	"\n");
    // Wlaczenie eventow.
    set_events_on(1);
    
    // Odswiezenie zawartosci pomieszczenia
    reset_imperium_room();
}
// koniec funkcji create_imperium_room()



