inherit "/d/Imperium/std/room";
#include "../mafia.h"
mapping rodzina=([]);


//PROTOTYPY
void save();
void load();


void
create_imperium_room()
{
    set_short("Master gildii Alderazzi");
    set_long("Tutaj sie jebie ostro sie jebie .\n");
    load();
}

void
save()
{
    save_object(ALDERAZZI);
}

void
load()
{
    restore_object(ALDERAZZI);
}

void
set_data(mixed imie,int val)
{
    rodzina[imie]=val;
}

int
czy_czlonek(mixed imie)
{
    if(rodzina[imie]) return 1;
    return 0;
}

void
nowy_czlonek(mixed imie)
{
    rodzina[imie]=1;
    save();
}

void
usun(mixed imie)
{
    rodzina=m_delete(rodzina, imie);
    save();
}

void
wywal_z_gildii(mixed imie)
{
    rodzina[imie]=10;
    save();
}

void
promote(mixed imie)
{
    if(rodzina[imie]==1) 
    {
    	 rodzina[imie]=2;
    	 save();
    	 return;
    }
}

void
demote(mixed imie)
{
    
    rodzina[imie]=1;
    save();
}
     
int
query_ranga(mixed imie)
{
    return rodzina[imie];
}
int
query_szef()
{
  mixed dom;
  int i;
  dom = m_indices(rodzina);
  for(i=0;i<m_sizeof(rodzina);i++)
      if (rodzina[dom[i]]==4) return dom[i];
}

int
query_ojciec()
{
  mixed dom;
  int i;
  dom = m_indices(rodzina);
  for(i=0;i<m_sizeof(rodzina);i++)
      if (rodzina[dom[i]]==3) return dom[i];
}	

void
logowanie(object kto)
{
    string imie=kto->query_real_name();
    if(!czy_czlonek(imie))
    {
      kto->usun_gildia_occ();
      kto->catch_msg("Nie jestes juz w rodzinie.\n");
      kto->set_default_start_location(IMPERIUM_START);
      kto->command("zakoncz");
      return;
    }
    if(rodzina[imie]==10)
    {
      usun(imie);
      kto->usun_gildia_occ();
      kto->catch_msg("Nie jestes juz w Rodzinie\n");
      kto->set_default_start_location(IMPERIUM_START);
      kto->command("zakoncz");
      return;  
    }
    kto->add_soul();

}

void
tell_guild(string str)
{
    int i;
    mixed dom = m_indices(rodzina);
    for(i=0; i<m_sizeof(rodzina); i++)
       if(objectp(find_player(dom[i]))) find_player(dom[i])->catch_msg("W swojej glowie slyszysz glos cwela, ktory mowi: " + str + "\n");
}
