在素材包的bg文件夾里有兩個(gè)背景圖片,一個(gè)day表示白天嫉到,一個(gè)night表示黑夜沃暗。我們?cè)诘梅置看纬^20分的時(shí)候就從一個(gè)切換到另一個(gè)狀態(tài)。
先來添加三個(gè)變量何恶。
var changeBGScore = 0;//統(tǒng)計(jì)自從上次切換場景后又得了多少分
var day;
var night;
相應(yīng)的在start舞臺(tái)上的preload里添加day背景那里修改成如下所示
night = this.add.sprite(0, 0, 'night');
night.visible = false;
day = this.add.sprite(0, 0, 'day'); // 添加背景圖片
添加了一個(gè)黑夜背景描睦,但是是隱藏的。接著修改碰撞處理方法导而。
function collectMoon(player, moon) {
playerTween.stop();
if(moon.name === 'special') {
score += 5;
changeBGScore += 5;
} else {
score += 1;
changeBGScore += 1;
}
if (changeBGScore >= 20) {//如果自從上次切換背景后得分又超過20分,再次切換
changeBGScore = 0;
if (day.visible === false) {
day.visible = true;
night.visible = false;
} else {
day.visible = false;
night.visible = true;
}
}
if(score > 0 && score % 10 === 0) {
level += 1;
resetSpeed();
}
player.isFlying = false;
moon.moving = false;
bang.play();//播放吃到月餅的聲音
moon.kill();//銷毀月餅
player.kill();//銷毀吃貨
updateScore();//更新得分
addMoon(); //添加一個(gè)新的月餅
addPlayer();//添加一個(gè)新的吃貨
}
本節(jié)教程源碼下載地址:
碼云
github