Imitacja kontrukora z instrukcja warunkowa switch

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 ? :slight_smile:

Ucze sie wlasnie o wywolaniach zwrotnych funkcji ale wydaje mi sie ze nie jest to chyba dobry moment na zastosowanie tego.