#pragma strict_types
inherit "/d/Faerun/std/room";
inherit "lib/pub";
#include <stdproperties.h>
#include <macros.h>
#include "definicje.h"
public int no_command();
public int no_command2();
void
create_room()
{	
    set_short("Gospoda Candlekeep");
    set_long("Bar w tej gospodzie jest obszerny i bardzo funkcjonalny. "+
    "W pomieszczeniu panuje zaduch, w powietrzu unosi sie zapach alkoholu, "+
    "papierosow i potu. Pomieszczenie jest zadbane i czyste. Nad barem "+
    "wisi tabliczka pelniaca role menu. Stoilki przy ktorych mozna usiasc sa "+
    "okragle, na kazdym stoi krysztalowa popielnica, dla palacych.\n");
    add_prop(ROOM_I_INSIDE,1);
    add_cmd_item(({"tabliczke","menu"}),({"czytaj","przeczytaj"}),
		   "@@menu");
    add_item("stol","Jest to ogragly stolik wykonany z drewna, stoi przy nim kilka krzesel "+
    "na ktorych mozna usiasc.\n");
    add_drink("piwa","piwo","kufel ciemnego, miejscowego piwa",
	      "ciemno-bursztynowego, wspaniale pieniacego sie piwa",
	      ({({"ciemny","miejscowy"}),({"ciemni","miejscowi"})}),
	      5,250,5,20,PL_NIJAKI_NOS);
    add_drink("wina","wino","kieliszek czerwonego wytrawnego wina",
	      "",({({"czerwony","wytrawny"}),({"czerwoni",
	      "wytrawni"})}),12,100,0,60,PL_NIJAKI_NOS);
    add_drink("spirytusa","spirytus","szklane bardzo mocnego krasnoludzkiego "+
    "spirytusu","",({"mocny","mocni"}),25,200,0,80,PL_MESKI_NOS_NZYW);	      
    add_food("stek",0,300,30,PL_MESKI_NOS_ZYW,
	     "miske z ryzem i soczystym stekiem");		   
    add_food("baranine",0,500,50,PL_ZENSKI,"obwicie przyprawiana "+
    "rumiana baranine");
    add_exit("droga11","poludniowy-wschod");    
    add_exit("gospoda2","zachod");
    set_event_time(60,this_object());
    add_event("Ktos tlucze szklanke.\n");
    add_event("Paru podpitych gosci, bije sie miedzysoba.\n");
    add_event("Dym papierosow drazni twe gardlo.\n");
    add_event("Slyszysz chrapanie dochodzace od jednego ze stolikow.\n");
    add_event("Ktos zachacza noga o twe krzeslo i laduje na ziemi.\n");
    clone_object(NPC_PATH+"karczmarz")->move(this_object());
    clone_object(NPC_PATH+"kaplan")->move(this_object());
    clone_object(NPC_PATH+"kaplan")->move(this_object());
}
void
init()
{
    ::init();
    init_pub();
    add_action("sit_down","usiadz");
    add_action("stand_up","wstan");  
    add_action("do_all_commands", "", 1);    
}
string
menu()
{
    say(QCIMIE(this_player(),PL_MIA)+ " czyta tabliczke.\n");
    return
    "\nTabliczka wyglada nastepujaco:\n\n"+
    "\t\tMENU:\n"+
    "Jedzenie:\n"+
    " Stek z ryzem:\t\t30 miedziakow\n"+
    " Baranina:\t\t50 miedziakow\n"+
    "Napoje:\n"+
    " Miejscowe, ciemne piwo:\t\t20 miedziakow\n"+
    " Czerwone, wytrawne wino:\t\t60 miedziakow\n"+
    " Mocny, krasnoludzki spirytus:\t\t80 miedziakow\n"+
    "\n";
}
public int
do_all_commands(string str)
{
    string verb;
    string *nie_dozwolone;
    string *nie_dozwolone2;
    nie_dozwolone=({"n","polnoc","s","poludnie","w","zachod","e","wschod","nw",
        "polnocny-zachod","sw","poludniowy-zachod","se","poludniowy-wschod",
        "polnocny-wschod","ne","teleport",
        "u","gora","d","dol","goto","home"});
    nie_dozwolone2=({"zamow"});   
    verb = query_verb();
    if (this_player()->query_prop(SIEDZACY)==1)
    {
    if (member_array(verb,nie_dozwolone)==-1)
        return 0;
    else 
        return no_command();
    }
    if(this_player()->query_prop(SIEDZACY)==0)
    {
    if(member_array(verb,nie_dozwolone2)==-1)
	return 0;
	else
	return no_command2();
    }
    return 0; 
}
public int
no_command()
{
    write("Moze bys tak najpierw wstal.\n");
    return 1;
}
public int
no_command2()
{
    write("To co zamowiles podajemy tylko na miejscu, wiec usiadz sobie "+
    "przy stole.\n");
    return 1;
}
int
sit_down(string str)
{
    object who,*list;
    string check;
  
    if (!str)
        return 0;

    if (sscanf(str,"przy %s",check)==1)
        str = check;
    
    
    notify_fail("Gdzie chcesz usiasc, moze przy stole?\n");
    if(str!="stole")return 0;
    if(this_player()->query_prop(SIEDZACY)==1)
    {
    write("Ale ty juz siedzisz.\n");
    return 1;
    }
    this_player()->add_prop(SIEDZACY,1);
    this_player()->add_prop(LIVE_S_EXTRA_SHORT," siedzac"+
    this_player()->koncowka("y","a")+" przy stole");
    write("Rozsiadasz sie wygodnie na krzesle sojacym przy stole.\n");
    say(QCTNAME(this_player())+" siada przy stole.\n");
    return 1;
}
int
stand_up(string str)
{
    object who,*list;
    string check;

    notify_fail("Nie siedzisz nigdzie.\n");
    if (this_player()->query_prop(SIEDZACY)==0)
        return 0;

    this_player()->change_prop(SIEDZACY,0);
    this_player()->change_prop(LIVE_S_EXTRA_SHORT,"");
    write("Wstajesz z krzesla.\n");
    say(QCTNAME(this_player())+" wstaje od stolu.\n");
    return 1;
}

