/* Namiot dla orkow */
inherit "std/object";
#include "tigr.h"
#include "banda.h"

#define PLIK_LOKACJI (PATH + "/obj/in_namiot.c")

object banda=0;
object lokacja=0;

create_object()
{
   ustaw_nazwe( ({"namiot","namiotu","namiotowi","namiot","namiotem","namiocie"}),
   		({"namioty","namiotow","namiotom","namioty","namiotami","namiotach"}),
   		PL_MESKI_NZYW);
   
   dodaj_przym("cuchnacy","cuchnace");
   
   set_long("Widzisz przed soba mniej wiecej dwumetrowy namiot prostej budowy. " +
   	    "Mozna by go opisac jako pare kijow polaczonych ze soba, " +
   	    "skladajacych sie na szkielet budowli, i przyczepionych do " +
   	    "nich zwierzecych skor, ktore w teorii maja stanowic zabezpieczenie " +
   	    "przed deszczem i zimnem. Unoszacy sie w powietrzu smrod kaze " +
   	    "przypuszczac, ze namiot ow jest dzielem orkowych rak.\n");
   	    
   
   add_prop(OBJ_I_VOLUME, 700000);
   add_prop(OBJ_I_WEIGHT, 80000);
   add_prop(OBJ_M_NO_GET, "Chcesz zabrac caly namiot?\n");
   
   set_alarm(8000.0,0.0,&remove_object());
}

ustaw_bande(object b)
{
   banda=b;
}

object
query_banda()
{
   return banda;
}

int
enter(string str)
{
   mixed oblist;
   object namiot;
   
   notify_fail("Wejdz gdzie?\n");
   if (!str) return 0;
   
   parse_command(str,ENTO,"'do' %i:"+PL_DOP,oblist);
   
   if (!sizeof(oblist)) return 0;
   
   if (!oblist[0]) return 0;
   if (oblist[0]==1) namiot=oblist[1];
   else
     if (oblist[0]<0) namiot=oblist[-(oblist[0])];
     
   if (namiot!=TO) return 0;
   
   if ((!(banda->nasz_ork(TP)))&&(banda->gdzie_banda()==ENTO))
      {
         write(capitalize((banda->query_dowodca())->short(TP,PL_MIA)) + " zastawia ci droge do namiotu!\n");
         return 1;
      }
   
   if (!lokacja) 
      {
         lokacja=clone_object(PLIK_LOKACJI);
         lokacja->utworz_wyjscie(ENTO);
      }
   
   if (TP->move_living("do namiotu",lokacja)) return notify_fail("Nie mozesz tam wejsc!\n");
   
   TP->set_obiekty_zaimkow(  ({TO}) );
   return 1;
}


init()
{
   ::init();
   add_action(enter, "wejdz");
}

remove_object()
{
   ENTO->remove_prop(IMPERIUM_ROOM_I_NIE_MOZNA_ROZBIC_OBOZU);
   lokacja->remove_object();
   ::remove_object();
}