inherit "/d/Imperium/std/monster";

#include <ss_types.h>
#include <macros.h>
#include <stdproperties.h>
#include "silvy.h"

void
create_monster()
{
    ustaw_nazwe (({"fryderik", "fryderika", "fryderikowi", "fryderika", 
		   "fryderikiem", "fryderiku"}),
                   allocate(6),
    		   PL_MESKI_OS);

    dodaj_nazwy (({"Fryderik Glossenbauer", "Fryderika Glossenbauera",
    		  "Fryderikowi Glossenbauerowi", "Fryderika Glossenbauera",
    		  "Fryderikiem Glossenbauerem", "Fryderiku Glossenbauerze"}),
    		  allocate(6),
    		   PL_MESKI_OS);

    dodaj_nazwy(({"miecznik", "miecznika", "miecznikowi", "miecznika", 
		  "miecznikiem", "mieczniku"}),
		({"miecznicy", "miecznikow", "miecznikom", "miecznikow",
    		  "miecznikami","miecznikach"}), 
		  PL_MESKI_OS);
    
    set_long("Przy kontuarze stoi wysoki, poteznej postury mezczyzna. " +
	"Przypruszone siwizna skronie swiadcza o tym, ze lata jego " +
	"mlodosci juz przeminely, ale w jego ruchach wciaz widac " +
	"gracje i gibkosc. Jego czarne jak wegiel oczy uwaznie lustruja " +
	"kazdego z klientow, a przede wszystkim posiadana przez nich " +
	"bron.\n");

    ustaw_odmiane_rasy (PL_CZLOWIEK);
    
    dodaj_przym ("wysoki","wysocy");
    dodaj_przym ("mocny","mocni");

    remove_prop(NPC_M_NO_ACCEPT_GIVE);
    set_living_name("_miecznik_");
    
    set_gender(G_MALE);
 
    add_prop(CONT_I_WEIGHT, 89000);
    add_prop(CONT_I_HEIGHT, 197);
    add_prop(IMPERIUM_LIVE_I_NULN_CITIZEN,1);

    set_skill(SS_DEFENCE, 40 + random(10));
    set_skill(SS_UNARM_COMBAT, 55 + random(5));
    set_skill(SS_PARRY,  40 + random(10));

    set_stats(({ 55, 75, 75, 38, 44, 82}));

    set_act_time(10);
    add_act("emote z uwaga przyglada sie broni klientow.");
    add_act("emote przechadza sie po pomieszczeniu.");
    add_act("emote rozmawia cicho z jakims klientem.");

    set_chat_time(13);
    add_chat("Masz jakas ciekawa bron do sprzedania? Do mojej kolekcji.");
    add_chat("Czym moge sluzyc?");
    add_chat("Potrzebuje zlamanych i zniszczonych czesci ekwipunku.");
    add_chat("Zaplace 5 sztuk miedzi za kazda zniszczona bron lub zbroje.");

    set_default_answer(QCIMIE(TO,PL_MIA) + " odpowiada: Niestety " +
        "nie jestem w stanie ci w tym pomoc.\n");

    dodaj_srebro(10);
    dodaj_zloto(random(2));
}

string
query_presetation()
{
    return("Fryderik Glossenbauer, Pulkownik Gwardii Miejskiej " +
    	"w Stanie Spoczynku, czlowiek");
}

void
add_introduced (string imie)
{
     set_alarm(2.0,0.0,"return_introduce", imie);
}

void
return_introduce(string kto) 
{
    command("powiedz Jestem zaszczycony, goszczac pan" + koncowka("a","ia") + 
	    " w moim sklepie.");
    command("przedstaw sie " + OB_NAME(find_living(kto, 0)));
}

void
oddaj_rzecz(object ob, object from)
{

    command("emote mowi: Co to jest ? Po co mi to dajesz ?.");
    command("emote dodaje: Zabierz to natychmiast! ");
    command("daj " + ob->query_nazwa(PL_BIE) + " " + from->query_real_name(PL_CEL));

} 
        
void
plac(object ob, object from)
{
        string co = ob->query_nazwa(PL_BIE);

        command("emote mowi: Wspaniale. Oto zaplata za "+ob->query_nazwa(PL_BIE)+".");
        command("daj 5 miedzianych monet " + from->query_real_name(PL_CEL));
        ob->remove_object();
        command("emote dorzuca "+co+" do sterty surowcow wtornych.");
}

void
enter_inv(object ob, object from)
{
    ::enter_inv(ob, from);
    if(!from) return;
    if(ob->query_prop(OBJ_I_BROKEN))
    {
        dodaj_miedz(5);
        set_alarm(0.5,0.0,&plac(ob,from));
        return;
    }
    set_alarm(1.0, 0.0, &oddaj_rzecz(ob, from));
    return;

}    
        