
#pragma strict_types

inherit "/std/armour";
#include "../wieza.h"
#include "/d/Imperium/kasan/Wieza/engine/spec.h"
#include "/d/Imperium/kasan/Wieza/engine/emoty.h"

#define SYGNET_SUBLOC "sygnet_ragazzi_subloc"

void
create_armour()
{
    ustaw_nazwe(({"sygnet","sygnetu","sygnetowi","sygnet","sygnetem","sygnecie"}),
                ({"sygnety","sygnetow","sygnetom","sygnety","sygnetami","sygnetach"}),
                PL_MESKI_NOS_NZYW);
    dodaj_przym("srebrny","srebrni");
    dodaj_przym("zdobiony","zdobieni");

    add_name("sygnet_mafiozo");

    add_prop(OBJ_M_NO_SELL, "Nie mozesz sprzedac srebrego sygnetu.\n");
    add_prop(OBJ_M_NO_DROP, "Nie mozesz pozbyc sie srebrnego sygnetu.\n");
    add_prop(OBJ_M_NO_GIVE, "Nie mozesz oddac srebrnego sygnetu.\n");
    
    set_long("@@sygnetdesc");
    set_ac(A_ANY_FINGER,0,0,0);
    this_object()->set_af(this_object());	/* Aby byly wywolywane wear(), remove(). */
    
    add_prop(OBJ_I_VALUE, 10);
    add_prop(OBJ_I_WEIGHT, 2);
    add_prop(OBJ_I_VOLUME, 2);
    TP->add_prop("mafiozo_ragazzi",1);
    TP->add_prop("ragazzi",1);
    TP->add_prop("ojciec_ragazzi",1);

}

void
init()
{
	::init();
	add_action("help", "mglowa");
        add_action("seria", "seria");
        add_action("pomoc","mpomoc");
        add_action("awans","awansuj");
//      add_action("przekonaj","mprzekonaj");
}

void
leave_env(object from, object to)
{
    this_player()->remove_subloc(SYGNET_SUBLOC);

    ::leave_env(from, to);
}

string
show_subloc(string subloc, object on_obj, object for_obj)
{
    if (subloc == SYGNET_SUBLOC)
    {
        if (for_obj == on_obj)
        return "Twoj srebrny zdobiony sygnet mowi, iz jestes glowa Rodziny Ragazzi.\n";
        return "Nosi na sobie pierscien jaki posiada tylko La Pappa Ragazzi Familia.\n";
    }
}

mixed
wear()
{
    this_player()->add_subloc(SYGNET_SUBLOC, this_object());

    return 0;
}

mixed
remove()
{
    this_player()->remove_subloc(SYGNET_SUBLOC);

    return 0;
}


string
query_recover()
{
    return 0;
}

string
query_auto_load()
{
    return MASTER;
}

string
sygnetdesc()
{
    return "Masz przed soba pieknie zdobiony srebrny sygnet. Wyroznia sie od innych swoim "+
           "charakterystycznym wykonaniem.  Na srodku sygnetu umieszczono mieniacy sie czerwonym "+
           "blaskiem rubin, a wokol waz symbol-Rodziny Ragazzi. " +
           "Na wewnetrznej stronie sygnetu zauwazasz wyryte slowa: "+TP->query_name(PL_MIA)+
           " La Pappa Ragazzi Familia. Spis komend uzyskasz piszac <mpomoc>, a dodatkowe "+
           "dostepne dla Ojca Ragazzi <mglowa>.\n";
} 

int
help(string str)
{
    write("Bedac glowa Rodziny Ragazzi uzyskujesz dostep do dotatkowych komend dostepnych "+
          "jedynie Tobie, oto one:\n\n"+
          "mawansuj - awansowanie kogos na swego blizszego sluge\n"+
          "mprzekaz - przekazanie wladzy nad Rodzina komus innemu\n\n"+
          "Mozesz takze poprosic o klucz do skarbca, ktory jest jedynie do twojej dyspozycji.\n");
    return 1;
}

int
awans(string str)
{
    object *kogo = parse_this(str,"%l:"+PL_BIE);

   if (TP->query_prop("ojciec_ragazzi")==0)
    {
    notify_fail("Awansowac moze tylko Ojciec Rodziny Ragazzi.\n");
    return 0;
    }
    
    if (!sizeof(kogo))
    {
    notify_fail("Kogo chcesz awansowac?\n");
    return 0;
    }

    if (!kogo[0]->query_prop("ragazzi"))
    {
    	notify_fail("Mozesz mianowac tylko Czlonkow Rodziny\n");
       return 0;
    }
    if (kogo[0]->query_prop("zolnierz_ragazzi"))
    {
    	notify_fail("Nie mozesz mianowac drugi raz kogos zolnierzem.\n");
    	return 0;
    }
    
        setuid();
    seteuid(getuid());
    (kogo[0]->query_subloc_obj(SYGNET_SUBLOC))->remove_object();
    TP->catch_msg("Awansujesz "+QCIMIE(kogo[0],PL_BIE)+" na zolnierza Rodziny Ragazzi.\n");
    kogo[0]->catch_msg("Zostales awansowany na zolnierza Rodziny Ragazzi.\n");
    kogo[0]->catch_msg("Dostajesz platynowy zdobiony pierscien od "+QIMIE(TP,PL_BIE)+"\n");
    clone_object(OBJ+"sygnet_zol.c")->move(kogo[0]);
    kogo[0]->command("zaloz sygnet");
    
   return 1; 
}	