/* Korytarz w wiezy <WYJSCIE!> */

inherit "/d/Imperium/std/room.c";

#include "darkmts.h"

int lewy,prawy;
int wlazimy();

void
create_imperium_room()
{
 
 add_prop(ROOM_I_LIGHT,0);
 
 add_prop(ROOM_S_DARK_LONG, "  Wydaje ci sie, ze znajdujesz sie w jakims "
		          + "waskim korytarzu. Zalegajace tu ciemnosci "
			  + "nie pozwalaja wiecej zobaczyc. Czujesz, ze "
			  + "potracasz nogami jakies przedmioty.\n");
 
 add_prop(ROOM_I_INSIDE,1);
 
 set_short("W waskim korytarzu");

 set_long("  Waski korytarz prowadzi na poludnie i na polnoc. Zadnego obiecujacego "
	+ "zrodla swiatla. Gdy zauwazasz nastepny zakret domyslasz sie, ze chodzisz "
	+ "w kolko! Rozsypujacy sie szkielet siedzi oparty o wschodnia sciane. "
	+ "Drobne krople spadajace z sufitu rozpryskuja sie na szczatkach scielacych "
	+ "podloge, wydajac gluchy odglos.\n");
 
 add_exit(PATH+"korytar4.c", "polnoc");
 add_exit(PATH+"korytar6.c", "poludnie");
 
 add_item(({"smieci","czaszki","piszczele","podloge"}),
            "Kamienna, zakurzona podloga usiana jest czaszkami i piszczelami "
	  + "roznych istot. Zbutwiale ubrania wydzielaja nieprzyjemny odor.\n");
 add_item(({"ubrania","szczatki"}), "Ci biedacy mieli przy sobie rozne rzeczy, "
 				  + "lecz te juz dawno przerdzewialy lub zamienily "
				  + "sie w proch.\n");
 add_item("szkielet","Usmiech smierci nie dodal ci wcale otuchy. Lecz za plecami "
		   + "kosciotrupa zauwazasz jakis mechanizm!\n");
 add_item(({"wschodnia sciane","sciany","sciane"}), "Zimne, twarde kamienie...\n");

 add_item(({"krazki","krazek","dysk","mechanizm"}),"@@mech");
 
 lewy = 1;
 prawy = 0;

}

void init()
{
 ::init();
 add_action("nac","nacisnij");
 add_action("nac","wcisnij");
 add_action("obr","obroc");
}

                               /*  O b s l u g a     d r z w i  */

string mech()
{
 return "Na dysku wielkosci dwoch dloni umieszczona jest para krazkow, "
      + "jeden po lewej stronie, drugi po prawej. "
      + "Przy dotknieciu lekko sie wglebiaja.\n";
} 
int nac(string co)
{
 say(QCIMIE(this_player(),PL_MIA)+" majstruje cos przy scianie.\n");
 
 if (co == "lewy krazek" || co == "prawy krazek" || co == "dysk")
 { 
  if (co == "dysk") {
                     write("Dysk nie daje sie wcisnac.\n"); 
                     return 1;}
  if (co == "lewy krazek") 
  {
   if (lewy==1) {
                 write( "Lewy krazek juz jest wcisniety.\n");
                 return 1;}
                   
   lewy = 1;
   prawy = 0;
  write ( "Wciskasz lewy krazek.\n");
  return 1;
  
  }
  if (co == "prawy krazek")
  {
   if (prawy==1) {
   write ( "Prawy krazek juz jest wcisniety.\n");   
   return 1;}
   
   prawy = 1;
   lewy = 0;
   write ( "Wciskasz prawy krazek. Dysk chyba mozna obrocic.\n");
   return 1;
  }
 }
 notify_fail("Co chcesz nacisnac?\n");
 return 0;
}
int obr(string co)
{
 if (co == "dysk" && prawy == 1)
 {
  add_exit(PATH + "wnetrze1.c","zachod","@@wlazimy");
  
  tell_room(this_object(),"Sciana powoli odsuwa sie ukazujac waskie przejscie "
			+ "na zachod.\n");
  set_alarm(5.0,0.0,"remexit");
  return 1;
 }
 if (co == "dysk" && prawy == 0) {
  write ( "Dysk nie daje sie obrocic.\n");
  return 1; }
  
 notify_fail("Co chcesz obrocic?\n");
 return 0;
}

string 
remexit()
{
 say("Mechanizm uruchamia sie, ponownie zamykajac wejscie.\n");
 remove_exit("zachod");
 return "";
}

int
wlazimy()
{
    set_alarm(0.1,0.0,"wlazimy1");
    return 0;
}

void
wlazimy1()
{
     write("Mechanizm w scianie uruchamia sie, zamykajac wejscie.\n");
}    
