// Brama wschodnia
// Napisane prze Alfena.

#include <pl.h>
#include <stdproperties.h>
#include <money.h>
#include "alfen.h"
#include "local.h"
#include <macros.h>

#define TP this_player()
#define TO this_object()

inherit GPATH + "std/room";

int otwarta(object br); // predefinicja

void otworz_brame(object br);
void zamknij_brame(object br);

object* query_guard(){return query_npce()[0];}

void set_guard(){
  dodaj_npca(NPATH + "npc/oficer_gwardii");
  dodaj_npca(NPATH + "npc/gwardzista");
  dodaj_npca(NPATH + "npc/gwardzista");
  dodaj_npca(NPATH + "npc/gwardzista");
}


void create_imperium_room() {

  add_prop(ROOM_I_INSIDE, 1);
  add_prop(ROOM_I_LIGHT, 1);

}



int sprawdzian() 
{
  
  int inwentarz;
  int i;
  int ilu;
  object *pom = query_guard();
  ilu=0;
  
  for (i=0; i < sizeof (pom); i++)
   if (!pom[i])
     ilu++;


  return 0;

   
  if (ilu==sizeof(pom))
    return 0; //brak zolnierzy wolne przejscie


  i=0;
  while ((i<sizeof(pom)) && !(ilu=CAN_SEE(pom[i++], this_player())));

  if (ilu) {
    if (TP->query_prop(LIVE_I_SNEAK)) {
      say(capitalize(QIMIE(pom[i-1], PL_MIA))+" lapie " +
        capitalize(QIMIE(this_player(), PL_BIE)) + " za kolnierz.\n");
      pom[i-1]->command("Mam Cie ..... Na koniec kolejki.");
      return 1;
    }
    inwentarz = sizeof(all_inventory(TP));
    
    say(capitalize(QIMIE(pom[i-1], PL_MIA))+" zagradza droge " +
          capitalize(QIMIE(this_player(), PL_CEL)) + " proszac "+
          "o okazanie zawartosci sakiewki.\n");
    for (ilu = 0; ilu < inwentarz; ilu++)
      if (((all_inventory(TP)[ilu])->heap_value()) >= 720)
      {
        say(capitalize(QIMIE(pom[i-1],PL_MIA))+" z usmiechem przepuszcza "+
          capitalize(QIMIE(this_player(), PL_BIE)) + " przez brame.\n");
        return 0;
      }
    pom[i-1]->command("powiedz Zebrakow nie wpuszczamy. Radze Ci "+
      " zebrac conajmniej 5 zlotych monet.");
    return 1;
  }
}



void otwarta(object br){
  string s;
  int otw;

  otw=0;
  s = TO->dzien_noc();
  if (s=="dzien")
    otw=1;


  if ((br->query_open())&&(!otw))
    zamknij_brame(br);
    
  if ((!(br->query_open()))&&otw)
    otworz_brame(br);

}


void otworz_brame(object br) {
    object s;
    string naz;
    
    s = br->query_other_door();
    if (!s)
      br->load_other_door();
    
      
    br->set_open(1);
    br->do_open_door("Zgrzyty i trzaski zaklocily cisze "+
        "panujaca w tym miejscu. Brama zostala otwarta.\n");
    s->do_open_door("Zgrzyty i trzaski zaklocily cisze panujaca "+
        "w tym miejscu. Brama zostala otwarta.\n");
}



void zamknij_brame(object br) {
    object s;
    
    s = br->query_other_door();
    if (!s)
      br->load_other_door();
    
    
    br->set_open(0);
    br->do_close_door("Z glosnym zgrzytem potezna brama zostala zamknieta.\n");
    s->do_close_door("Z glosnym zgrzytem potezna brama zostala zamknieta.\n");
}


