2007년 12월 21일
자바스크립트로 만드는 객체지향 게임 - 게임 메인 클래스
폭탄 테이블, 불꽃 레인 등 게임 요소를 생성하고, 게임을 진행시키는 역할을 담당한다.
/* 게임메인클래스*/
$class({
CBombLink : {
bombTable : null,
lane : [],
level : 1,
curFireNum : 0,
EVENT_MAP : {
fireDrop : 'onFireDrop' // 불꽃이모두내려갔을때수신하는이벤트
},
// 폭탄테이블, 불꽃레인등을생성하고, 폭탄을배열한다.
init : function(width,height,element) {
this.bombTable = new CBombTable(width,height,element);
this.lane[0] = new CLane(this,this.bombTable,true);
this.lane[1] = new CLane(this,this.bombTable,false);
this.bombTable.createLevel(this.level);
element = null;
this.doStart();
},
// 게임을시작한다. 좌, 우레인중랜덤하게불꽃을생성한다.
doStart : function() {
//this.bombTable.dumpTable();
this.lane[(Math.round(Math.random()*10))%2].fire(Math.min(3,(Math.round(Math.random()*10))%3+(10-this.level)));
this.curFireNum++;
if (this.curFireNum%(10-this.level)==0) this.bombTable.tableUp(); // 불꽃이지정개수만큼떨어지면, 폭탄을1줄추가한다.
},
// 불꽃이모두내려가면, 1초후새로운불꽃을생성한다.
onFireDrop : function() {
window.setTimeout(this.doStart.bind(this),1000);
}
}
});
# by | 2007/12/21 17:27 | SWAF - 응용 | 트랙백 | 덧글(0)




☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]