Witam.
Chcialem zrobic sobie giereczke a mianowicie gre Sapera, ale oczywiscie natrafilem na jeden maly kwasik w trakcje pisania kodu. Otoz chcial bym jakos stworzyc konstruktor ktory bedzie mi ustawial bomby, wysokosc i szerokosc planszy. O to moj kodzik
<!DOCTYPE html>
<html>
<head>
<script>
var Saper = function (poziomGry)
{
if (!(this instanceof Saper)) {
return new Saper(); // pattern of enforcing new
}
this.poziom = poziomGry;
this.szerokosc;
this.wysokosc;
this.miny;
this.ustawGre = function(poziomGry) {
switch(poziomGry) {
case 1 : this.szerokosc=7; this.wysokosc=7; this.miny=7; break;
case 2 : this.szerokosc=8; this.wysokosc=8; this.miny=8; break;
case 3 : this.szerokosc=9; this.wysokosc=9; this.miny=10; break;
}
}
this.ustawGre(1);
alert("szerokosc=" + this.szerokosc + " wysokosc=" + this.wysokosc + " miny=" + this.miny);
};
function graj_w_saper(lvlOfGame) {
var gra = new Saper(lvlOfGame);
}
</script>
</head>
<body>
<div id="polePlanszy" style="padding: 10px auto 0 auto;"></div>
<button onclick="graj_w_saper(1)">Graj </button>
</body>
</html>
Wyadaje mi sie ze to co udalo mi sie zrobic nie jest zbyt eleganckie. W Javie zrobil bym to w konstruktorze a tu musze deklarowac oddzielna funkcje poczym wywolywac ja w objekcie. Hmmm macie jakies pomysly jak zrobic to lepiej ?
Ucze sie wlasnie o wywolaniach zwrotnych funkcji ale wydaje mi sie ze nie jest to chyba dobry moment na zastosowanie tego.