#!/usr/bin/perl -w
use strict;

my ($kredit, $bank, $vklad, $odpoved, $zmena_vkladu, $dalej, $ano, $nie);
my ($a, $b, $c);

$kredit = 100;
$bank = 0;

#beh programu, pavúk volaní podprogramov

uvod();
vklad();
overenie_vklad();

sub uvod{
	print "Hra kocky v. 0.2 Suli.\n\n";
	print "Pointa hry je v hazarde. Ako prvé sa určí suma, o ktorú sa bude hrať. Váš protivník je počítač, takže vždy bude súhlasiť s Vaším návrhom stávky. Vašou úlohou je v prvom hode hodiť čo najlepšie čísla. V druhom hode sa rozhodnete, ktorou kockou chcete hádzať, tak, aby ste mali čo najvyššiu šancu vyhrať. Vyhrávate v prípade, že sa druhým hodom zvolenou kockou trafíte medzi zvyšné 2. Veľa šťastia a zábavy samozrejme :)\n\n";
}

sub vklad{
	print "Tvoj kredit je $kredit. O koľko si chceš zahrať?: ";
	chomp ($vklad = <STDIN>);
	overenie_vklad();
}

sub overenie_vklad{
	if ($vklad <= $kredit and $vklad > 0){
		prvy_hod();
	}
	else{
		zmena_vklad();
	}
}

sub prvy_hod{
	$bank = $vklad*2;
		
	print "\n";
	print "Vložil si: $vklad\n";
	print "V Banku je: $bank\n\n";
	
	print "Prvý hod:\n\n";
	$a = (int rand 6) + 1;
	$b = (int rand 6) + 1;
	$c = (int rand 6) + 1;
	
	print "Kocka 1: $a\nKocka 2: $b\nKocka 3: $c\n";
	overenie_druhy_hod();
}

sub overenie_druhy_hod{
	print "Ktorou kockou chceš teraz hádzať? ";
	chomp ($odpoved = <STDIN>);
	print "\n\n";
	druhy_hod();
}

sub oprava_druhej_kocky{
	print "Vyber si len kocku od 1 do 3! ";
	chomp ($odpoved = <STDIN>);
	druhy_hod();
}

sub vyhra{
	$kredit = $kredit + ($bank - $vklad);
	print "Hura!, vyhral si! Tvoj kredit je: $kredit.\n";
	print "Chcete ešte hrať? (1/0)\n";
	chomp ($dalej = <STDIN>);
	if ($dalej == 1){
		vklad();
	}
	elsif ($dalej == 0){
		die "Ďakujem za hru.\n";
	}
}

sub prehra{
	$kredit = $kredit - $vklad;
	print "Je mi ľúto, prehral si. Tvoj kredit je: $kredit.\n";
	print "Chcete ešte hrať? (1/0)\n";
	chomp ($dalej = <STDIN>);
	if ($dalej == 1){
		vklad();
	}
	elsif ($dalej == 0){
		die "Ďakujem za hru.\n";
	}
}


sub druhy_hod{
	if ($odpoved == 1){
		print "Druhý hod:\n\n";
		$a = (int rand 6) + 1;
		print "Kocka 1: $a\nKocka 2: $b\nKocka 3: $c\n";
			if ($a > $b and $a < $c or $a < $b and $a > $c){
				vyhra();
			}
			else{
				prehra();
			}
	}
	elsif ($odpoved == 2){
		print "Druhý hod:\n\n";
		$b = (int rand 6) + 1;
		print "Kocka 1: $a\nKocka 2: $b\nKocka 3: $c\n";
			if ($b > $a and $b < $c or $b < $a and $a > $c){
				vyhra();
			}
			else{
				prehra();
			}
	}
	elsif ($odpoved == 3){
		print "Druhý hod:\n\n";
		$c = (int rand 6) + 1;
		print "Kocka 1: $a\nKocka 2: $b\nKocka 3: $c\n";
			if ($c > $a and $c < $b or $c < $a and $c > $a){
				vyhra();
			}
			else{
				prehra();
			}
	}
	else{
		oprava_druhej_kocky();
	}
}
		
sub zmena_vklad{
	print "Bohužiaľ, nemáte tolko prostriedkov v kredite.\n";
	print "Chcete zmenit vklad? (1/0): ";
	chomp ($zmena_vkladu = <STDIN>);
	vklad();
}	

sub overenie_zmena_vklad{
	if ($zmena_vkladu = 1){
		vklad();
	}
	elsif ($zmena_vkladu = 0){
		die "Ďakujeme za záujem, dovidenia.\n";
	}
}
