//nclude "DIALOGS\Usurer_dialog.h"
void ProcessDialogEvent()
{
	int LoanSum, LoanInterest, LoanPeriod, LoanResult, iPastMonths, DepositSum, DepositInterest, DepositResult;
	ref NPChar, d;

	aref Link, Diag;
	string NPC_Area;

	DeleteAttribute(&Dialog,"Links");

	makeref(NPChar,CharacterRef);
	makearef(Link, Dialog.Links);
	makeref(d, Dialog);
	makearef(Diag, NPChar.Dialog);

	NPC_Area = Npchar.quest.area;

	switch(Dialog.CurrentNode)
	{
		// -----------------------------------Äčŕëîă ďĺđâűé - ďĺđâŕ˙ âńňđĺ÷ŕ
		case "LoanGranted_exit":
			Diag.CurrentNode = Diag.TempNode;

			AddMoneyToCharacter(Pchar, makeint(Pchar.Quest.Loans.(NPC_Area).Sum));
			Pchar.Quest.Loans.(NPC_Area) = true;
			Pchar.Quest.Loans.(NPC_Area).StartDay = getDataDay();
			Pchar.Quest.Loans.(NPC_Area).StartMonth = getDataMonth();
			Pchar.Quest.Loans.(NPC_Area).StartYear = getDataYear();
			Pchar.Quest.Loans.(NPC_Area).StartTime = getTime();

			Pchar.quest.(NPC_Area).win_condition.l1 = "Timer";
			Pchar.quest.(NPC_Area).win_condition.l1.date.day = getDataDay();
			Pchar.quest.(NPC_Area).win_condition.l1.date.month = getDataMonth() + makeint(Pchar.Quest.Loans.(NPC_Area).Period);
			Pchar.quest.(NPC_Area).win_condition.l1.date.year = getDataYear();
			Pchar.quest.(NPC_Area).win_condition = "Loans_" + (NPC_Area);

			DialogExit();

		break;

		case "Deposit_exit":
			Diag.CurrentNode = Diag.TempNode;

		//	DepositSum = -DepositSum;
			AddMoneyToCharacter(Pchar, -(makeint(Pchar.Quest.Deposits.(NPC_Area).Sum)));
			Pchar.Quest.Deposits.(NPC_Area) = true;
			Pchar.Quest.Deposits.(NPC_Area).StartDay = getDataDay();
			Pchar.Quest.Deposits.(NPC_Area).StartMonth = getDataMonth();
			Pchar.Quest.Deposits.(NPC_Area).StartYear = getDataYear();
			Pchar.Quest.Deposits.(NPC_Area).StartTime = getTime();
			DialogExit();
		break;

		case "exit":
			Diag.CurrentNode = Diag.TempNode;
			DialogExit();
			DeleteAttribute(Pchar, "quest.Loans." + (NPC_Area));
			DeleteAttribute(Pchar, "quest.Deposits." + (NPC_Area));
		break;

		case "exit_NoChange":
			Diag.CurrentNode = Diag.TempNode;
			DialogExit();
		break;


		case "First time":
			if(NPChar.quest.meeting == "0")
			{
				NPChar.quest.meeting = 1;
				Dialog.snd1 = "voice\USDI\USDI001";
				Dialog.snd2 = "voice\USDI\USDI002";
				Dialog.snd3 = "voice\USDI\USDI003";
				d.Text = RandPhrase(TimeGreeting() + ", w czym mogę pomóc?", "Cieszę się, że cię widzę, " + address_form.eng + ". Potrzebujesz moich usług?", "Witaj, " + address_form.eng + ". Obawiam się, że nie miałem zaszczytu poznać cię...", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
				Link.l1 = LinkRandPhrase("My name is " + Pchar.name + " " + Pchar.lastname + ".", "Captain " + Pchar.name + " " + Pchar.lastname + ", at your service.", "I'm " + PChar.name + ".");
				Link.l1.go = "meeting";
			}
			else
			{
					Dialog.snd1 = "voice\USDI\USDI004";
					Dialog.snd2 = "voice\USDI\USDI005";
					Dialog.snd3 = "voice\USDI\USDI006";
					d.Text = RandPhrase("Cieszę się, że cię widzę, kapitanie " + PChar.name + ". Jeśli potrzebujesz moich usług, po prostu zapytaj.", TimeGreeting() + ". potrzebujesz czegoś?", "Witaj, " + address_form.eng + ". Czym mogę ci służyć? Mogę przeprowadzić każdą operację finansową.", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
					Link.l1 = LinkRandPhrase("Chciałbym pozyczyć pieniądze.", "Pilnie potrzebuję kilka piastrów.", "Co powiesz na małą pożyczkę?");
					Link.l1.go = "loan";
					if(makeint(Pchar.money) >= 100)
					{
						Link.l2 = LinkRandPhrase("Chcę pożyczyć pieniądze.", "Jesteś w stanie bezpiecznie ulokować moje pieniądze?", "Mogę zdeponować tutaj trochę złota?");
						Link.l2.go = "deposit";
					}
					Link.l3 = "Bywaj, " + NPchar.name + ".";
					Link.l3.go = "exit";

				if(CheckAttribute(Pchar, "Quest.Loans." + (NPC_Area)) && makeint(Pchar.Quest.Loans.(NPC_Area)) == true)
				{
					iPastMonths = GetPastTime("Month", makeint(Pchar.Quest.Loans.(NPC_Area).StartYear),makeint(Pchar.Quest.Loans.(NPC_Area).StartMonth),makeint(Pchar.Quest.Loans.(NPC_Area).StartDay), makefloat(Pchar.Quest.Loans.(NPC_Area).StartTime), getDataYear(),getDataMonth(),GetDataDay(), GetTime());
					Pchar.Quest.Loans.(NPC_Area).Result = makeint(Pchar.Quest.Loans.(NPC_Area).Sum) + ((makeint(Pchar.Quest.Loans.(NPC_Area).Sum)/100)*makeint(Pchar.Quest.Loans.(NPC_Area).Interest))*iPastMonths;

					Dialog.snd1 = "voice\USDI\USDI007";
					Dialog.snd2 = "voice\USDI\USDI008";
					Dialog.snd3 = "voice\USDI\USDI009";

					d.Text = RandPhrase(TimeGreeting() + "," + PChar.name + ". Przyszedłeś mnie spłacić? Aha... jesteś mi winien " + Pchar.Quest.Loans.(NPC_Area).Result + " piastrów.", "Witaj, kapitanie. Miło widzieć cię w dobrym zdrowiu. Jesteś gotów zwrócić " + Pchar.Quest.Loans.(NPC_Area).Result + " piastrów, które pożyczyłeś ode mnie?", "Witaj, " + address_form.eng + ". Mam nadzieję, że miałeś zyskowną robotę i przyniosłeś mi pieniądze na spłatę zadłużenia. Jesteś mi winien " + Pchar.Quest.Loans.(NPC_Area).Result + " piastrów.", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
					if(makeint(PChar.money) >= makeint(Pchar.Quest.Loans.(NPC_Area).Result))
					{
						Link.l1 = LinkRandPhrase("Mogę spłacić moje zadłużenie.", "Jestem w stanie spłacić moje zadłużenie.", "Czas spłacić zadłużenie.");
						Link.l1.go = "loan_return";
					}
					Link.l2 = LinkRandPhrase("Obawiam się, że nie jestem w stanie spłacić cię teraz.", "Następnym razem, " + NPChar.name + ".", "Nie. Wrócę, jak będę miał pieniądze.");
					Link.l2.go = "Loan_Remind";
					Link.l3 = "";
					Link.l3.go = "exit_NoChange";

				}
				if(CheckAttribute(Pchar, "Quest.Deposits." + (NPC_Area)) && makeint(Pchar.Quest.Deposits.(NPC_Area)) == true)
				{
					iPastMonths = GetPastTime("Month", makeint(Pchar.Quest.Deposits.(NPC_Area).StartYear),makeint(Pchar.Quest.Deposits.(NPC_Area).StartMonth),makeint(Pchar.Quest.Deposits.(NPC_Area).StartDay), makefloat(Pchar.Quest.Deposits.(NPC_Area).StartTime), getDataYear(),getDataMonth(),GetDataDay(), GetTime());
					Pchar.Quest.Deposits.(NPC_Area).Result = makeint(Pchar.Quest.Deposits.(NPC_Area).Sum) + ((makeint(Pchar.Quest.Deposits.(NPC_Area).Sum)/100)*makeint(Pchar.Quest.Deposits.(NPC_Area).Interest))*iPastMonths;
					Dialog.snd1 = "voice\USDI\USDI010";
					Dialog.snd2 = "voice\USDI\USDI011";
					Dialog.snd3 = "voice\USDI\USDI012";
					d.Text = RandPhrase("Miło mi pana widzieć, kapitanie " + PChar.name + ". Jeśli potrzebujesz moich usług, po prostu pytaj.", TimeGreeting() + ". potrzebujesz czegoś?", "Witaj, " + address_form.eng + ". Co mogę dla ciebie zrobić? Mogę przeprowadzić każdą operację finansową.", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
					Link.l1 = LinkRandPhrase("Chcę zlikwidować moje inwestycje.", "Czas wycofać pieniądze, które ci powierzyłem.", "Chcę moje złoto wraz z odsetkami.");
					Link.l1.go = "Deposit_return";
					Link.l2 = "Do widzenia, panie " + NPchar.name + ".";
					Link.l2.go = "exit_NoChange";
					Link.l3 = "";
					Link.l3.go = "exit_NoChange";
				}
			}
		break;

		case "Meeting":
			Dialog.snd1 = "voice\USDI\USDI013";
			Dialog.snd2 = "voice\USDI\USDI014";
			Dialog.snd3 = "voice\USDI\USDI015";
			d.Text = RandPhrase("Witam serdecznie. Jestem " + NPChar.name + " " + NPChar.lastname + ". Zajmuję się pożyczaniem pieniędzy.", "Nazywam się " + NPChar.name + " " + NPChar.lastname + ". Jestem lichwiarzem. Jeśli znajdziesz się w nagłej potrzebie finansowej, służę pomocą.", "Ufam, że wiesz, iż nazywam się " + NPChar.name + " " + NPChar.lastname + ". Jestem dość znany w tej społeczności... ale, wracając do interesów - chcesz skorzystać z moich usług?", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
			Link.l1 = LinkRandPhrase("Chciałbym pożyczyć pieniądze.", "Pilnie potrzebuję kilku piastrów.", "Co powiesz na małą pożyczkę?");
			Link.l1.go = "loan";
			if(makeint(Pchar.money) >= 100)
			{
				Link.l2 = LinkRandPhrase("Chciałbym pożyczyć pewną sumę pieniędzy.", "Jesteś w stanie bezpiecznie ulokować moje pieniądze?", "Mogę zdeponować u ciebie trochę złota?");
				Link.l2.go = "deposit";
			}
			Link.l3 = "Do widzenia, panie " + NPchar.name + ".";
			Link.l3.go = "exit";
		break;

		case "loan":
			Dialog.snd = "voice\USDI\USDI016";
			d.Text = "Ależ oczywiście. Ile potrzebujesz?";
			Link.l1 = "Niewiele.";
			Link.l1.go = "Trochę";
			Link.l2 = "Całkiem sporo.";
			Link.l2.go = "Tak średnio";
			Link.l3 = "Im więcej, tym lepiej.";
			Link.l3.go = "Dużo";
		break;

		case "small":
			Pchar.Quest.Loans.(NPC_Area).Sum = 500*makeint(Pchar.rank);
			Dialog.snd = "voice\USDI\USDI017";
			d.Text = "Dobrze. Lepiej zaczynać od małych sum - to zawsze mniejsze ryzyko. Mogę ci zaoferować " + Pchar.Quest.loans.(NPC_Area).sum + " piastrów...";
			Link.l1 = "Zgoda. Na jaki procent?";
			Link.l1.go = "Interest";
			Link.l2 = "Nie, to nie tak. Chcę inną kwotę.";
			Link.l2.go = "Loan";
			Link.l3 = "Myślę, że lepiej nie zadłużać się. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "Medium":
			Pchar.Quest.Loans.(NPC_Area).Sum = 1500*makeint(Pchar.rank);
			Dialog.snd = "voice\USDI\USDI018";
			d.Text = "Nie ma sprawy. Wierzę, że " + Pchar.Quest.Loans.(NPC_Area).sum + " piastrów rozwiąże twoje problemy. To całkiem spora suma.";
			Link.l1 = "Zgoda. Na jaki procent?";
			Link.l1.go = "Interest";
			Link.l2 = "Nie, to nie tak. Chcę inną kwotę.";
			Link.l2.go = "Loan";
			Link.l3 = "Myślę, że lepiej nie zadłużać się. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "Large":
			Pchar.Quest.Loans.(NPC_Area).Sum = 3000*makeint(Pchar.rank);
			Dialog.snd = "voice\USDI\USDI019";
			d.Text = "Hmm... Ryzykowne... aAe dobrze, dam ci " + Pchar.Quest.Loans.(NPC_Area).sum + ". Wiesz, że to spora kwota. Traktuj swoje interesy poważnie, kapitanie.";
			Link.l1 = "Zgoda. Na jaki procent?";
			Link.l1.go = "Interest";
			Link.l2 = "Nie, to nie tak. Chcę inną kwotę.";
			Link.l2.go = "Loan";
			Link.l3 = "Myślę, że lepiej nie zadłużać się. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "Interest":
			Pchar.Quest.Loans.(NPC_Area).Interest = 11 - makeint(Pchar.skill.commerce);
			Dialog.snd = "voice\USDI\USDI020";
			d.Text = Pchar.Quest.Loans.(NPC_Area).Interest + " miesięcznie. Zważywszy to, co wiem na twój temat, lepszej oferty nie utargujesz.";
			Link.l1 = "Dobrze. Teraz sprawa terminów.";
			Link.l1.go = "Period";
			Link.l3 = "Myślę, że lepiej nie zadłużać się. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "Period":
			Pchar.Quest.Loans.(NPC_Area).Period = makeint(makeint(Pchar.reputation)/20) + 1;
			Dialog.snd = "voice\USDI\USDI021";
			d.Text =  "Zważywszy, co o tobie mówią, " + Pchar.name + ", pozwolę ci spłacić to zadłużenie w " + Pchar.Quest.Loans.(NPC_Area).Period + " miesięcy. Jeśli przekroczysz ten termin, naliczę sobie odsetki.";
			Link.l1 = "Akceptuję twoje warunki... i twoje pieniądze.";
			Link.l1.go = "LoanGranted";
			Link.l3 = "Nie ma mowy. Bywaj.";
			Link.l3.go = "Exit";
		break;


		case "LoanGranted":
			Dialog.snd = "voice\USDI\USDI022";
			d.Text = "Dobrze. Ale posłuchaj mojego ostrzeżenia. Nie jestem nowicjuszem w tym fachu i wiem, kto pomoże mi ściągnąć te należności. Jesli zatem zamierzasz zniknąć z moimi pieniędzmi, weź to pod rozwagę. Potraktuj to jako ostrzeżenie, nie zniewagę.";
			Link.l1 = "Hmm... dobrze, bywaj.";
			Link.l1.go = "LoanGranted_exit";
		break;

		case "Loan_Remind":
			Dialog.snd = "voice\USDI\USDI023";
			d.Text = "Dobrze... Procent będzie większy. I nie dam ci za wiele czasu na spłatę.";
			Link.l1 = "Nie martw się. Bywaj.";
			Link.l1.go = "exit_NoChange";
		break;

		case "loan_return":
			addMoneyToCharacter(Pchar, -(makeint(Pchar.Quest.Loans.(NPC_Area).Result)));
			DeleteAttribute(PChar, "quest.loans." + (NPC_Area));
			Pchar.quest.(NPC_Area).over = "Yes";
			Dialog.snd1 = "voice\USDI\USDI024";
			Dialog.snd2 = "voice\USDI\USDI025";
			Dialog.snd3 = "voice\USDI\USDI026";
			d.Text = RandPhrase("Cudownie! Jesli będziesz potrzebował jeszcze pieniędzy - nie wahaj się przyjść do mnie.", "Dziękuję. To przyjemność robić interesy z człowiekiem, który wie, co to punktualność. To taka rzadkość w tych czasach...",  "Cieszę się, że nie zawiodłeś pokładanych w tobie nadziei, " + address_form.fra + "! Mam nadzieje, że skorzystasz z moich usług w przyszłości!", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
			Link.l1 = LinkRandPhrase("Chciałbym pożyczyć pieniądze.", "Pilnie potrzebuję kilku piastrów.", "Co powiesz na małą pożyczkę?");
			Link.l1.go = "loan";
			if(makeint(PChar.money) >= 100)
			{
				Link.l2 = LinkRandPhrase("Chciałbym pożyczyć pewną sumę pieniędzy.", "Jesteś w stanie bezpiecznie ulokować moje pieniądze?", "Mogę zdeponować u ciebie trochę złota?");
				Link.l2.go = "deposit";
			}
			Link.l3 = "Bywaj, " + NPchar.name + ".";
			Link.l3.go = "exit";
		break;

		case "deposit":
			Dialog.snd1 = "voice\USDI\USDI027";
			Dialog.snd2 = "voice\USDI\USDI028";
			Dialog.snd3 = "voice\USDI\USDI029";
			d.Text = RandPhrase("Dobry wybór! Ile chcesz złożyć w depozyt?", "Dobrze. Zaufaj mi. Twoje pieniądze nie tylko będą bezpieczne, ale i dostaniesz procent od nich... Ile tego bedzie?", "Widzę, że wiesz, jak dobrze inwestować. Ile chcesz złożyć w depozycie?", &Dialog, Dialog.snd1, Dialog.snd2, Dialog.snd3);
			Link.l1 = "Ćwierć moich oszczędności - " + makeint(makeint(PChar.money)/40)*10 + " piastrów.";
			Link.l1.go = "quarter";
			Link.l2 = "Połowę moich pieniędzy - " + makeint(makeint(PChar.money)/20)*10 + " piastrów.";
			Link.l2.go = "half";
			Link.l3 = "Wszystko, co mam - " + makeint(makeint(PChar.money)/10)*10 + " piastrów.";
			Link.l3.go = "All";
		break;

		case "quarter":
			Pchar.Quest.Deposits.(NPC_Area).Interest = makeint(Pchar.skill.commerce) + 1;
			Pchar.Quest.Deposits.(NPC_Area).Sum = makeint(makeint(PChar.money)/40)*10;
			Dialog.snd = "voice\USDI\USDI030";
			d.Text = "W porządku. Dam ci dobry procent... powiedzmy, " + Pchar.Quest.Deposits.(NPC_Area).Interest + ". Miesięcznie, rzecz jasna.";
			Link.l1 = "Brzmi nieźle.";
			Link.l1.go = "Deposit_placed";
			Link.l2 = "Myślę, że zmienię kwotę.";
			Link.l2.go = "Deposit";
			Link.l3 = "Nie chcę rozstawać się z moimi pieniążkami. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "half":
			Pchar.Quest.Deposits.(NPC_Area).Interest = makeint(Pchar.skill.commerce) + 1;
			Pchar.Quest.Deposits.(NPC_Area).Sum = makeint(makeint(PChar.money)/20)*10;
			Dialog.snd = "voice\USDI\USDI031";
			d.Text = "W porządku. Dam ci dobry procent... powiedzmy, " + Pchar.Quest.Deposits.(NPC_Area).Interest + ". Miesięcznie, rzecz jasna.";
			Link.l1 = "Brzmi nieźle.";
			Link.l1.go = "Deposit_placed";
			Link.l2 = "Myślę, że zmienię kwotę.";
			Link.l2.go = "Deposit";
			Link.l3 = "Nie chcę rozstawać się z moimi pieniążkami. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "All":
			Pchar.Quest.Deposits.(NPC_Area).Interest = makeint(Pchar.skill.commerce) + 1;
			Pchar.Quest.Deposits.(NPC_Area).Sum = makeint(makeint(PChar.money)/10)*10;
			Dialog.snd = "voice\USDI\USDI032";
			d.Text = "W porządku. Dam ci dobry procent... powiedzmy, " + Pchar.Quest.Deposits.(NPC_Area).Interest + ". Miesięcznie, rzecz jasna.";
			Link.l1 = "Brzmi nieźle.";
			Link.l1.go = "Deposit_placed";
			Link.l2 = "Myślę, że zmienię kwotę.";
			Link.l2.go = "Deposit";
			Link.l3 = "Nie chcę rozstawać się z moimi pieniążkami. Bywaj.";
			Link.l3.go = "Exit";
		break;

		case "Deposit_placed":
			Dialog.snd = "voice\USDI\USDI033";
			d.Text = "Teraz możesz być pewien, że nawet najwiekszy sztorm cię nie zrujnuje. Jesli zechcesz zlikwidować tę lokatę, możesz to uczynić w każdej chwili.";
			Link.l1 = "Dobrze. Bywaj.";
			Link.l1.go = "Deposit_Exit";
		break;

		case "Deposit_return":
			Dialog.snd = "voice\USDI\USDI034";
			d.Text = "Zważywszy procent, na jaki się umówiliśmy, muszę ci oddać " + Pchar.Quest.Deposits.(NPC_Area).Result + " piastrów... Jesteś pewien, że chcesz wycofać swoje pieniądze teraz?";
			Link.l1 = "Absolutnie, pokaż mi je.";
			Link.l1.go = "Deposit_return_1";
			Link.l2 = "Wiesz, masz rację. Myślę, że nic sie nie stanie, jak poleżą trochę dłużej. Bywaj.";
			Link.l2.go = "Exit_noChange";
		break;

		case "Deposit_return_1":
			addMoneyToCharacter(Pchar, makeint(Pchar.Quest.Deposits.(NPC_Area).Result));
			DeleteAttribute(PChar,"quest.deposits." + (NPC_Area));
			Dialog.snd = "voice\USDI\USDI035";
			d.Text = "Heh... żal oddawać tyle złota, tak tu procentowało. Zajrzyj do mnie jeszcze.";
			Link.l1 = "Jeśli zajdzie taka potrzeba, nie omieszkam. Bywaj.";
			Link.l1.go = "Exit";
		break;

		case "DeadMotherfucker":
			Dialog.Tempnode = "DeadMotherFucker_1";
			Dialog.snd = "voice\USDI\USDI035";
			d.Text = "Jeszcze żyjesz? Może wreszcie zdecydujesz się na zwrot pieniędzy?! Do diabła z tobą! Tyle na tobie straciłem, że zadowoli mnie tylko widok twojego truchła!";
			Link.l1 = "Zważ na słowa! Takie wypowiedzi mogą sprawić, że sam będziesz martwy!";
			Link.l1.go = "Exit";
		break;

		case "DeadMotherFucker_1":
			Dialog.snd = "voice\USDI\USDI035";
			d.Text = "Wynocha z mojego domu! I nie pokazuj się tutaj więcej!";
			Link.l1 = "...";
			Link.l1.go = "Exit";
		break;
	}
}


