#include "local.h"
inherit "/std/object";
#include <stdproperties.h>
#include <macros.h>
#include <ss_types.h>


int ilosc_tytoniu;
int zapalona;


int zapal(string co);
int zgas(string co);
int napelnij(string co);

void 
create_object()
{

 ustaw_nazwe(({"fajka","fajki","fajce","fajke","fajka","fajce"}),
   ({"fajki","fajek","fajkom","fajki","fajkami","fajkach"}),PL_ZENSKI);
 set_short("Niewielka fajka.\n");
 set_long("Blah.\n"); 
 add_prop(OBJ_I_NO_DROP,1);
 add_prop(OBJ_I_NO_GIVE,1);
 add_prop(OBJ_I_NO_STEAL,1);
 add_prop(OBJ_M_NO_SELL,1);
 ilosc_tytoniu=0;
 zapalona=0;
}

void
init()
{
 ::init();
 add_action(zapal,"zapal");
 add_action(zgas,"zgas");
 add_action(napelnij,"napelnij"); 
}

int
zgas(string co)
{
  if(co!="fajke") return 0;
  if(zapalona==0){
    write("Fajka jest caly czas zgaszona.\n");
    return 1;
  }
  zapalona=0;
  write("Powoli gasisz fajke.\n");
  say(QCIMIE(TP,PL_MIA)+" zgasil fajke.\n");  
return 1;
}


int
zapal(string co)
{
 if(co!="fajke") return 0;
 if(zapalona==1){
    write("Juz jest zapalona.\n");
    return 1;
 }
 if(ilosc_tytoniu<=0){
    write("Nie ma w niej tytoniu.\n");
    return 1;
 }

  zapalona=1;
  write("Zapalasz fajke i wkladasz ja do ust.\n");
  say(QCIMIE(TP,PL_MIA)+" zapala fajke.\n");
  set_alarm(7.0,0.0,"wypalanie_sie");
return 1;
}


int
napelnij(string co)
{
object cybuch;
 if(co!="fajke") return 0;
  if(!present("cybuch",TP)){
    write("Nie masz cybucha.\n");
    return 1;
  }  
  if(zapalona==1){
    write("Nie mozesz tego zrobic gdy fajka jest zapalona.\n");
    return 1;
  }
  if(ilosc_tytoniu==10){
   write("Fajka jest juz pelna.\n");
   return 1;
  }
   cybuch=present("cybuch",TP);
   ilosc_tytoniu=cybuch->wybierz(10-ilosc_tytoniu);
 return 1;
}

void
wypalanie_sie()
{
int r;
 ilosc_tytoniu-= 1;
 if(ilosc_tytoniu<=0){
   write("Twoja fajka zgasla z powodu wypalenia sie tytoniu.\n");
   say("Fajka "+QCIMIE(TP,PL_DOP)+" zgasla.\n",this_interactive());
   zapalona=0;
 }
 if(zapalona!=0) {
  r=random(5);
  if(r==0){
    write("Wkladasz fajke do ust i delektujesz sie jej aromatem.\n");
    say(QCIMIE(TP,PL_MIA)+" pali swoja fajke.\n",this_interactive());
  }
  if(r==1){
    write("Z twojej fajki wydobywaja sie klebki dymu.\n");
    say("Z fajki "+QCIMIE(TP,PL_DOP)+" wydobywaja sie klebki dymu.\n",this_interactive());
  }  
  if(r==2){
    write("W powietrzu zaczyna sie unosic aromat tytoniu gdy palisz fajke.\n");
    say("W powietrzu unosi sie aromat tytoniu gdy "+QCIMIE(TP,PL_MIA)+" pali swoja fajke.\n",this_interactive());
  }  

   set_alarm(15.0,0.0,"wypalanie_sie");
 }
}


string
query_auto_load()
{
  return HOME+"pipe:";
}

    string
query_recover()
{
    return 0;
}
