/* Opis: Pomnik pierwszej pary osadniczek
 * Autor: Dlugji
 * Data: 12. 8. 2002
 */
 
inherit "/d/Imperium/std/room";

#include <macros.h>
#include <stdproperties.h>
#include <ss_types.h>

#define ZAPALIL_SWIECE_NA_GROBIE "_zapalil_swiece_na_grobie"

int swieczki = 0;
int liscie=0;

create_imperium_room()
{
  set_short("Grobowisko");
  set_long("Mamy tu grobowisko z pomnikiem osadow.\n");
  
  add_item(({"pomnik", "grob"}), "@@opis_grobu");
  add_item("liscie", "@@ob_liscie");
  
  add_cmd_item("napis", "przeczytaj", "@@ob_napis");
  if(czy_sa_liscie())
    liscie=1;     
}
string
ob_liscie(string str)
{
  if(liscie)
    switch(pora_roku())
      {
      case "wiosna":
	return "Wiosenne liscie leza na grobie.\n";
      case "jesien":
	return "Jesienne liscie leza na grobie.\n";
      case "lato"  :
	return "Letnie liscie bleble.\n";
      }
  return "Nie zauwazasz niczego takiego.\n";	
}

string
ob_napis(string str)
{
  switch(this_player()->query_stat(SS_WIS))
    {
    case 0..40:
      return "Nie jestes w stanie rozczytac tego napisu.\n";
    case 41..75:
      return "Starasz sie rozczytac napis lecz ino udaje ci sie " +
	"wykombinowac ze sa to imiona czy cos ;].\n";
    default:
      return "Na grobie widnieje napis \"Blabla blbla - pierwsza " +
	"para Osadnicza.\"\n";
    }
}

int
czy_sa_liscie()
{
    switch(pora_roku())
    {
		case "wiosna":
		case "jesien":
		case "lato": return 1;
		default: return 0;
	}	
}
string
opis_grobu()
{
	string opis;
	opis= "Widzisz przed soba ladny grob. Wygrawerowany na nim jest jakis napis. ";
	if(liscie) opis+="Caly grob obsypany jest suchymi lisciami. ";
	if(swieczki)
		switch(swieczki)
		{
			case 1: opis+="Na grobie stoi jedna zapalona swieczka. "; break;
			case 2: opis+="Na grobie stoja dwie zapalone swieczki. "; break;
			case 3..6: opis+="Na grobie stoi kilka zapalonych swiczek. "; break;
			default: opis+="Grob ozdabia wiele rozpalonych swieczek. "; break;
		}
	
	return opis+ "\n";
}
int odgarnij(string str)
{
	notify_fail("Co chcesz odgarnac?\n");
	if (str != "liscie") return 0;
	notify_fail("Przeciez na grobie nie ma nawet jednego liscia.\n");
	if (!liscie) return 0;
	write("Pelen szacunku ku pamieci blabla odgarniasz liscie z grobu.\n");
	say(QCIMIE(this_player(), PL_MIA) + " czysci grob z lisci.\n");
	liscie=0;
	if(czy_sa_liscie())	set_alarm(10.0, 0.0, "reliscie");	
	return 1;
}
void
reliscie()
{
    tell_room(this_object(),"Liscie powoli zasypuja grob.. czy cos.\n");
	liscie=1;
}
int
rozpal(string str)
{
	notify_fail("Co chcesz rozpalic?\n");
	if (str != "swiece") return 0;
	notify_fail("Juz rozpalil" + this_player()->koncowka("es", "as") + " swiece ku pamieci blabla.\n");
	if(this_player()->query_prop(ZAPALIL_SWIECE_NA_GROBIE)) return 0;
	write("Wyciagasz zza pazuchy jedna swieczke i rozpalasz ja na grobie.\n");
	say(QCIMIE(this_player(), PL_MIA) + " rozpala jedna swiece ku pamieci blabla.\n");
	swieczki+=1;
	this_player()->add_prop(ZAPALIL_SWIECE_NA_GROBIE, 1);
	return 1;
}
void
init()
{
	::init();
	add_action("odgarnij", "odgarnij");
	add_action("rozpal", "rozpal");
}
