Compare commits
3 Commits
de5ff73df7
...
b617219f5b
Author | SHA1 | Date | |
---|---|---|---|
![]() |
b617219f5b | ||
![]() |
1431ea689a | ||
![]() |
97eefaaac2 |
File diff suppressed because it is too large
Load Diff
|
@ -537,7 +537,7 @@ export default class Block extends cc.Component {
|
||||||
this.block_Info.node = null;
|
this.block_Info.node = null;
|
||||||
}
|
}
|
||||||
else if(this.type == BlockType.炸弹块){
|
else if(this.type == BlockType.炸弹块){
|
||||||
this.node.getChildByName("boom").getComponent("Boom").destroyBoom();
|
this.node.getChildByName("boom").getComponent("Boom").destroyBoom(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -589,7 +589,7 @@ export default class Block extends cc.Component {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MapConroler._instance.judgeWin();
|
MapConroler._instance.judgeWin(0);
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
let tempColor = this.color;
|
let tempColor = this.color;
|
||||||
|
@ -763,7 +763,7 @@ export default class Block extends cc.Component {
|
||||||
var self = this;
|
var self = this;
|
||||||
this.removeMapBlock();
|
this.removeMapBlock();
|
||||||
|
|
||||||
MapConroler._instance.judgeWin();
|
MapConroler._instance.judgeWin(1);
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
let pos = this.node.getPosition();
|
let pos = this.node.getPosition();
|
||||||
if(self.type == BlockType.叠加块下){
|
if(self.type == BlockType.叠加块下){
|
||||||
|
@ -779,7 +779,7 @@ export default class Block extends cc.Component {
|
||||||
self.block_Info.node.getComponent("Block").posY,false);
|
self.block_Info.node.getComponent("Block").posY,false);
|
||||||
}
|
}
|
||||||
else if(self.type == BlockType.炸弹块){
|
else if(self.type == BlockType.炸弹块){
|
||||||
this.node.getChildByName("boom").getComponent("Boom").destroyBoom();
|
this.node.getChildByName("boom").getComponent("Boom").destroyBoom(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
MapConroler._instance.nextLevel();
|
MapConroler._instance.nextLevel();
|
||||||
|
@ -1319,14 +1319,12 @@ export default class Block extends cc.Component {
|
||||||
this.touchDelta = cc.v2(0, 0);
|
this.touchDelta = cc.v2(0, 0);
|
||||||
|
|
||||||
}
|
}
|
||||||
if(this.type == BlockType.叠加块上 && this.moveStack == true){
|
if(this.type == BlockType.叠加块下){
|
||||||
if((this.stacking.x != 0 || this.stacking.y!= 0) && this.block_Info.node!= null){
|
if(this.block_Info.node!= null){
|
||||||
this.isTouch = false;
|
if(this.block_Info.node.getComponent("Block").moveStack == true){
|
||||||
// this.node.x = this.block_Info.node.x + this.stacking.x;
|
this.block_Info.node.x = this.node.x + this.block_Info.node.getComponent("Block").stacking.x;
|
||||||
// this.node.y = this.block_Info.node.y + this.stacking.y;
|
this.block_Info.node.y = this.node.y + this.block_Info.node.getComponent("Block").stacking.y;
|
||||||
this.node.x = Math.round(this.block_Info.node.x + this.stacking.x);
|
}
|
||||||
this.node.y = Math.round(this.block_Info.node.y + this.stacking.y);
|
|
||||||
console.log("跟随移动",dt);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(this.block_Info){
|
if(this.block_Info){
|
||||||
|
|
|
@ -259,7 +259,7 @@ export default class GameManager extends cc.Component {
|
||||||
|
|
||||||
//新用户,有本地缓存读取配置
|
//新用户,有本地缓存读取配置
|
||||||
newReadData() {
|
newReadData() {
|
||||||
console.log("读取新信息");
|
console.log("读取新信息2");
|
||||||
let openid = cc.fx.StorageMessage.getStorage("openid");
|
let openid = cc.fx.StorageMessage.getStorage("openid");
|
||||||
if (openid == null || openid == "" || openid == undefined) {
|
if (openid == null || openid == "" || openid == undefined) {
|
||||||
console.log("没有openid");
|
console.log("没有openid");
|
||||||
|
@ -270,7 +270,7 @@ export default class GameManager extends cc.Component {
|
||||||
action: 'read'
|
action: 'read'
|
||||||
},
|
},
|
||||||
success: res => {
|
success: res => {
|
||||||
console.log('读取用户数据成功', res.result)
|
console.log('读取用户数据成功_____________________', res.result)
|
||||||
if (res.result.code == 404 && res.result.message == "未找到用户数据") {
|
if (res.result.code == 404 && res.result.message == "未找到用户数据") {
|
||||||
}
|
}
|
||||||
else if (res.result.code == 200) {
|
else if (res.result.code == 200) {
|
||||||
|
@ -687,7 +687,7 @@ export default class GameManager extends cc.Component {
|
||||||
MiniGameSdk.API.shushu_Login();
|
MiniGameSdk.API.shushu_Login();
|
||||||
MiniGameSdk.API.yinli_Init();
|
MiniGameSdk.API.yinli_Init();
|
||||||
MiniGameSdk.API.yinli_Login();
|
MiniGameSdk.API.yinli_Login();
|
||||||
cc.fx.GameTool.setWechatGameGroup(2);
|
const group = cc.fx.GameTool.setWechatGameGroup(2);
|
||||||
this.startGame();
|
this.startGame();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -127,6 +127,7 @@ export default class MapConroler extends cc.Component {
|
||||||
onLoad() {
|
onLoad() {
|
||||||
|
|
||||||
cc.fx.GameConfig.GM_INFO.review = 0;
|
cc.fx.GameConfig.GM_INFO.review = 0;
|
||||||
|
cc.fx.GameConfig.GM_INFO.reviewBoom = 0;
|
||||||
cc.fx.GameConfig.GM_INFO.gameState = true;
|
cc.fx.GameConfig.GM_INFO.gameState = true;
|
||||||
this.mask.opacity = 0;
|
this.mask.opacity = 0;
|
||||||
this.node.getChildByName("Adhesive").zIndex = 500;
|
this.node.getChildByName("Adhesive").zIndex = 500;
|
||||||
|
@ -1333,13 +1334,22 @@ export default class MapConroler extends cc.Component {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
judgeWin(){
|
judgeWin(number) {
|
||||||
this.blockNum = this.blocks.length;
|
this.blockNum = this.blocks.length;
|
||||||
|
if (number == 1) {
|
||||||
if ((this.blockNum == 0 || this.blockNum == 1) && !this.gameWin && !this.gameOver) {
|
if ((this.blockNum == 0 || this.blockNum == 1) && !this.gameWin && !this.gameOver) {
|
||||||
this.stopTimeCutDown();
|
this.stopTimeCutDown();
|
||||||
this.stopBoom();
|
this.stopBoom();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (number == 0) {
|
||||||
|
if (this.blockNum == 0 && !this.gameWin && !this.gameOver) {
|
||||||
|
this.stopTimeCutDown();
|
||||||
|
this.stopBoom();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
//判断游戏成功下一关
|
//判断游戏成功下一关
|
||||||
nextLevel() {
|
nextLevel() {
|
||||||
|
@ -1381,7 +1391,7 @@ export default class MapConroler extends cc.Component {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (this.gameOver == true) {
|
if (this.gameOver == true) {
|
||||||
this.failLevel(null);
|
this.failLevel("time");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1456,15 +1466,28 @@ export default class MapConroler extends cc.Component {
|
||||||
// this.node.parent.parent.parent.destroy();
|
// this.node.parent.parent.parent.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
reviewLevel() {
|
//时间到了复活
|
||||||
|
reviewLevel(event, type) {
|
||||||
if (this.reviewState == true) {
|
if (this.reviewState == true) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.reviewState = true;
|
this.reviewState = true;
|
||||||
cc.fx.AudioManager._instance.playEffect("anniu_Big", null);
|
cc.fx.AudioManager._instance.playEffect("anniu_Big", null);
|
||||||
|
|
||||||
let coin = 900;
|
let coin = 900;
|
||||||
|
let data = {
|
||||||
|
type: type,
|
||||||
|
coin: -coin
|
||||||
|
}
|
||||||
|
if (type == "time") {
|
||||||
if (cc.fx.GameConfig.GM_INFO.review == 1) coin = 1900;
|
if (cc.fx.GameConfig.GM_INFO.review == 1) coin = 1900;
|
||||||
else if (cc.fx.GameConfig.GM_INFO.review == 2) coin = 2500;
|
else if (cc.fx.GameConfig.GM_INFO.review == 2) coin = 2500;
|
||||||
|
}
|
||||||
|
else if (type == "boom") {
|
||||||
|
if (cc.fx.GameConfig.GM_INFO.reviewBoom == 1) coin = 1900;
|
||||||
|
else if (cc.fx.GameConfig.GM_INFO.reviewBoom == 2) coin = 2500;
|
||||||
|
}
|
||||||
|
data.coin = -coin;
|
||||||
// console.log("自身金币:",cc.fx.GameConfig.GM_INFO.coin,"消耗金币:",coin);
|
// console.log("自身金币:",cc.fx.GameConfig.GM_INFO.coin,"消耗金币:",coin);
|
||||||
if (cc.fx.GameConfig.GM_INFO.coin < Math.abs(coin)) {
|
if (cc.fx.GameConfig.GM_INFO.coin < Math.abs(coin)) {
|
||||||
MiniGameSdk.API.showToast("金币不足,无法加时间");
|
MiniGameSdk.API.showToast("金币不足,无法加时间");
|
||||||
|
@ -1476,23 +1499,33 @@ export default class MapConroler extends cc.Component {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.runRewive(-coin);
|
this.runRewive(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//执行复活函数
|
||||||
runRewive(data) {
|
runRewive(data) {
|
||||||
console.log("复活回调函数内", data);
|
console.log("复活回调函数内", data);
|
||||||
cc.fx.GameTool.changeCoin(data);
|
cc.fx.GameTool.changeCoin(data.coin);
|
||||||
MiniGameSdk.API.showToast("继续游戏");
|
MiniGameSdk.API.showToast("继续游戏");
|
||||||
NumberToImage.numberToImageNodes(cc.fx.GameConfig.GM_INFO.coin, 30, 15, "coin_", this.coin, true);
|
NumberToImage.numberToImageNodes(cc.fx.GameConfig.GM_INFO.coin, 30, 15, "coin_", this.coin, true);
|
||||||
|
if (data.type == "time") {
|
||||||
if (cc.fx.GameConfig.GM_INFO.review < 2)
|
if (cc.fx.GameConfig.GM_INFO.review < 2)
|
||||||
cc.fx.GameConfig.GM_INFO.review += 1;
|
cc.fx.GameConfig.GM_INFO.review += 1;
|
||||||
|
}
|
||||||
|
else if (data.type == "boom") {
|
||||||
|
if (cc.fx.GameConfig.GM_INFO.reviewBoom < 2)
|
||||||
|
cc.fx.GameConfig.GM_INFO.reviewBoom += 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
this.gameOver = false;
|
this.gameOver = false;
|
||||||
this.gameWin = false;
|
this.gameWin = false;
|
||||||
|
this.pause = false;
|
||||||
|
if (data.type == "time") {
|
||||||
this.timeNumber = 21;
|
this.timeNumber = 21;
|
||||||
this.add_Time += 20;
|
this.add_Time += 20;
|
||||||
this.pause = false;
|
}
|
||||||
|
|
||||||
this.blockNum = this.blocks.length;
|
this.blockNum = this.blocks.length;
|
||||||
if (this.blockNum == 0) this.nextLevel();
|
if (this.blockNum == 0) this.nextLevel();
|
||||||
|
@ -1576,15 +1609,22 @@ export default class MapConroler extends cc.Component {
|
||||||
this.node.parent.parent.getChildByName("Lose").active = true;
|
this.node.parent.parent.getChildByName("Lose").active = true;
|
||||||
this.node.parent.parent.getChildByName("Lose").getChildByName("Time").active = true;
|
this.node.parent.parent.getChildByName("Lose").getChildByName("Time").active = true;
|
||||||
this.node.parent.parent.getChildByName("Lose").getChildByName("Boom").active = false;
|
this.node.parent.parent.getChildByName("Lose").getChildByName("Boom").active = false;
|
||||||
|
if (type) {
|
||||||
|
if (type == "time") {
|
||||||
let buyBtn = this.node.parent.parent.getChildByName("Lose").getChildByName("Time").getChildByName("buyBtn");
|
let buyBtn = this.node.parent.parent.getChildByName("Lose").getChildByName("Time").getChildByName("buyBtn");
|
||||||
buyBtn.getChildByName("coin1").active = buyBtn.getChildByName("coin2").active = buyBtn.getChildByName("coin3").active = false;
|
buyBtn.getChildByName("coin1").active = buyBtn.getChildByName("coin2").active = buyBtn.getChildByName("coin3").active = false;
|
||||||
if (cc.fx.GameConfig.GM_INFO.review == 0) buyBtn.getChildByName("coin1").active = true;
|
if (cc.fx.GameConfig.GM_INFO.review == 0) buyBtn.getChildByName("coin1").active = true;
|
||||||
else if (cc.fx.GameConfig.GM_INFO.review == 1) buyBtn.getChildByName("coin2").active = true;
|
else if (cc.fx.GameConfig.GM_INFO.review == 1) buyBtn.getChildByName("coin2").active = true;
|
||||||
else if (cc.fx.GameConfig.GM_INFO.review == 2) buyBtn.getChildByName("coin3").active = true;
|
else if (cc.fx.GameConfig.GM_INFO.review == 2) buyBtn.getChildByName("coin3").active = true;
|
||||||
if (type) {
|
}
|
||||||
if (type == "boom") {
|
if (type == "boom") {
|
||||||
this.node.parent.parent.getChildByName("Lose").getChildByName("Time").active = false;
|
this.node.parent.parent.getChildByName("Lose").getChildByName("Time").active = false;
|
||||||
this.node.parent.parent.getChildByName("Lose").getChildByName("Boom").active = true;
|
this.node.parent.parent.getChildByName("Lose").getChildByName("Boom").active = true;
|
||||||
|
let buyBtn = this.node.parent.parent.getChildByName("Lose").getChildByName("Boom").getChildByName("buyBtn");
|
||||||
|
buyBtn.getChildByName("coin1").active = buyBtn.getChildByName("coin2").active = buyBtn.getChildByName("coin3").active = false;
|
||||||
|
if (cc.fx.GameConfig.GM_INFO.reviewBoom == 0) buyBtn.getChildByName("coin1").active = true;
|
||||||
|
else if (cc.fx.GameConfig.GM_INFO.reviewBoom == 1) buyBtn.getChildByName("coin2").active = true;
|
||||||
|
else if (cc.fx.GameConfig.GM_INFO.reviewBoom == 2) buyBtn.getChildByName("coin3").active = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, time);
|
}, time);
|
||||||
|
@ -1760,7 +1800,7 @@ export default class MapConroler extends cc.Component {
|
||||||
this.setPropNum();
|
this.setPropNum();
|
||||||
// this.iceLabel.string = cc.fx.GameConfig.GM_INFO.freezeAmount.toString();
|
// this.iceLabel.string = cc.fx.GameConfig.GM_INFO.freezeAmount.toString();
|
||||||
MiniGameSdk.API.showToast("购买冻结时间成功");
|
MiniGameSdk.API.showToast("购买冻结时间成功");
|
||||||
}, 2000);
|
}, 200);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1775,7 +1815,7 @@ export default class MapConroler extends cc.Component {
|
||||||
MiniGameSdk.API.showToast("购买魔法棒成功");
|
MiniGameSdk.API.showToast("购买魔法棒成功");
|
||||||
this.setPropNum();
|
this.setPropNum();
|
||||||
// this.magicLabel.string = cc.fx.GameConfig.GM_INFO.magicAmount.toString();
|
// this.magicLabel.string = cc.fx.GameConfig.GM_INFO.magicAmount.toString();
|
||||||
}, 2000);
|
}, 200);
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (data == "hammerAmount") {
|
else if (data == "hammerAmount") {
|
||||||
|
@ -1789,7 +1829,7 @@ export default class MapConroler extends cc.Component {
|
||||||
this.setPropNum();
|
this.setPropNum();
|
||||||
// this.hammerLabel.string = cc.fx.GameConfig.GM_INFO.hammerAmount.toString();
|
// this.hammerLabel.string = cc.fx.GameConfig.GM_INFO.hammerAmount.toString();
|
||||||
MiniGameSdk.API.showToast("购买锤子成功");
|
MiniGameSdk.API.showToast("购买锤子成功");
|
||||||
}, 2000);
|
}, 200);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1807,15 +1847,6 @@ export default class MapConroler extends cc.Component {
|
||||||
if (hammerBtn.getComponent("btnControl")._touch) {
|
if (hammerBtn.getComponent("btnControl")._touch) {
|
||||||
hammerBtn.getComponent("btnControl").setTouch(false);
|
hammerBtn.getComponent("btnControl").setTouch(false);
|
||||||
if (cc.fx.GameConfig.GM_INFO.hammerAmount < 1) {
|
if (cc.fx.GameConfig.GM_INFO.hammerAmount < 1) {
|
||||||
// if (cc.fx.GameConfig.GM_INFO.coin < 1500) {
|
|
||||||
// MiniGameSdk.API.showToast("金币不足,无法购买道具");
|
|
||||||
// setTimeout(() => {
|
|
||||||
// this.openShop();
|
|
||||||
// hammerBtn.getComponent("btnControl").setTouch(true);
|
|
||||||
// }, 500);
|
|
||||||
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
this.node.parent.parent.getChildByName("propWindow").active = true;
|
this.node.parent.parent.getChildByName("propWindow").active = true;
|
||||||
this.node.parent.parent.parent.getComponent("SceneManager").openPropBuy("hammer");
|
this.node.parent.parent.parent.getComponent("SceneManager").openPropBuy("hammer");
|
||||||
}
|
}
|
||||||
|
|
|
@ -1170,6 +1170,14 @@ export namespace MiniGameSdk {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static updateCoinAndLevel() {
|
||||||
|
if (typeof wx !== 'undefined' && wx !== null) {
|
||||||
|
console.log("上传金币和关卡信息给数数")
|
||||||
|
API._ta.userSet({ current_level: cc.fx.GameConfig.GM_INFO.level });
|
||||||
|
API._ta.userSet({ current_coin: cc.fx.GameConfig.GM_INFO.coin });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 数数平台设置动态公共属性
|
* 数数平台设置动态公共属性
|
||||||
*/
|
*/
|
||||||
|
@ -1193,6 +1201,7 @@ export namespace MiniGameSdk {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
API._ta.setSuperProperties(superProperties);//设置公共事件属性
|
API._ta.setSuperProperties(superProperties);//设置公共事件属性
|
||||||
|
API.updateCoinAndLevel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -61,6 +61,8 @@ export class GameConfig {
|
||||||
mean_Time: number; //平均放箭速度
|
mean_Time: number; //平均放箭速度
|
||||||
hp: number; //体力值
|
hp: number; //体力值
|
||||||
review: number; //复活次数
|
review: number; //复活次数
|
||||||
|
reviewBoom: number; //炸弹复活次数
|
||||||
|
reviewDoor: number; //门复活次数
|
||||||
currSeed: number; //用于随机数种子
|
currSeed: number; //用于随机数种子
|
||||||
openid: string; //微信用户唯一id
|
openid: string; //微信用户唯一id
|
||||||
gameId: string; //游戏ID
|
gameId: string; //游戏ID
|
||||||
|
@ -92,17 +94,15 @@ export class GameConfig {
|
||||||
coinnum: number; //每局的金币数
|
coinnum: number; //每局的金币数
|
||||||
paid_user: boolean; //是否是付费用户
|
paid_user: boolean; //是否是付费用户
|
||||||
version: number; //版本号
|
version: number; //版本号
|
||||||
shushu_DistinctId: string //数数访客ID
|
shushu_DistinctId: string; //数数访客ID
|
||||||
shushu_AccountId: string //数数账号ID
|
shushu_AccountId: string; //数数账号ID
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
//游戏内信息
|
//游戏内信息
|
||||||
|
|
||||||
static get Instance()
|
static get Instance() {
|
||||||
{
|
if (this._instance == null) {
|
||||||
if (this._instance == null)
|
|
||||||
{
|
|
||||||
this._instance = new GameConfig();
|
this._instance = new GameConfig();
|
||||||
}
|
}
|
||||||
return this._instance;
|
return this._instance;
|
||||||
|
@ -197,6 +197,8 @@ export class GameConfig {
|
||||||
mean_Time: 0, //平均放箭速度
|
mean_Time: 0, //平均放箭速度
|
||||||
hp: 5, //体力值
|
hp: 5, //体力值
|
||||||
review: 0, //复活次数
|
review: 0, //复活次数
|
||||||
|
reviewBoom: 0, //炸弹复活次数
|
||||||
|
reviewDoor: 0, //门复活次数
|
||||||
currSeed: 200000, //用于随机数种子
|
currSeed: 200000, //用于随机数种子
|
||||||
openid: "", //微信用户唯一id
|
openid: "", //微信用户唯一id
|
||||||
gameId: "100001", //游戏ID
|
gameId: "100001", //游戏ID
|
||||||
|
|
|
@ -1034,9 +1034,10 @@ var GameTool = {
|
||||||
}
|
}
|
||||||
console.log("type____________________:", type);
|
console.log("type____________________:", type);
|
||||||
console.log("分组编号____________________:", groupNumber);
|
console.log("分组编号____________________:", groupNumber);
|
||||||
|
return groupNumber;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -16,14 +16,16 @@ const {ccclass, property} = cc._decorator;
|
||||||
export default class Boom extends cc.Component {
|
export default class Boom extends cc.Component {
|
||||||
static _instance: any;
|
static _instance: any;
|
||||||
time: number = 60;
|
time: number = 60;
|
||||||
|
over: boolean = false;
|
||||||
|
|
||||||
// mapInfo: number[][] = [];
|
// mapInfo: number[][] = [];
|
||||||
|
|
||||||
onLoad() {
|
onLoad() {
|
||||||
|
this.over = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
|
this.over = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
init(time) {
|
init(time) {
|
||||||
|
@ -38,7 +40,9 @@ export default class Boom extends cc.Component {
|
||||||
this.schedule(this.updateTime, 1);
|
this.schedule(this.updateTime, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
destroyBoom(){
|
destroyBoom(type) {
|
||||||
|
if (this.over) return;
|
||||||
|
this.over = true;
|
||||||
this.unschedule(this.updateTime);
|
this.unschedule(this.updateTime);
|
||||||
this.node.parent.getComponent("Block").resetFreeze();
|
this.node.parent.getComponent("Block").resetFreeze();
|
||||||
this.node.destroy();
|
this.node.destroy();
|
||||||
|
@ -54,16 +58,28 @@ export default class Boom extends cc.Component {
|
||||||
this.time--;
|
this.time--;
|
||||||
NumberToImage.numberToImageNodes(this.time, 20, 8, "lock_", this.node.getChildByName("time"), false);
|
NumberToImage.numberToImageNodes(this.time, 20, 8, "lock_", this.node.getChildByName("time"), false);
|
||||||
if (this.time <= 0) {
|
if (this.time <= 0) {
|
||||||
|
// 创建模拟触摸事件对象
|
||||||
|
const mockTouchEvent = {
|
||||||
|
getLocation: () => {
|
||||||
|
// 获取父节点的位置作为触摸落点
|
||||||
|
const parentPos = this.node.parent.getPosition();
|
||||||
|
return parentPos;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// 触发父节点 Block 的 touchEnd 事件
|
||||||
|
this.node.parent.getComponent("Block").touchEnd(mockTouchEvent);
|
||||||
this.unschedule(this.updateTime);
|
this.unschedule(this.updateTime);
|
||||||
|
this.node.getChildByName("time").active = false;
|
||||||
MapConroler._instance.failLevel("boom");
|
MapConroler._instance.failLevel("boom");
|
||||||
this.node.getChildByName("zhandan").active = true;
|
this.node.getChildByName("zhandan").active = true;
|
||||||
this.node.getChildByName("bg").active = false;
|
this.node.getChildByName("bg").active = false;
|
||||||
const skeleton = this.node.getChildByName("zhandan").getComponent(sp.Skeleton);
|
const skeleton = this.node.getChildByName("zhandan").getComponent(sp.Skeleton);
|
||||||
skeleton.setAnimation(1, "eff", false);
|
skeleton.setAnimation(1, "eff", false);
|
||||||
// 监听动画完成事件
|
// 监听动画完成事件,销毁自身爆炸节点
|
||||||
skeleton.setCompleteListener(() => {
|
skeleton.setCompleteListener(() => {
|
||||||
// 动画播放完成后销毁节点
|
// 动画播放完成后销毁节点
|
||||||
this.node.destroy();
|
this.destroyBoom(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
// this.node.destroy();
|
// this.node.destroy();
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html
|
// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html
|
||||||
|
|
||||||
import JiaZai from "./JiaZai";
|
import JiaZai from "./JiaZai";
|
||||||
|
import MapConroler from "./Map";
|
||||||
import SceneManager from "./SceneManager";
|
import SceneManager from "./SceneManager";
|
||||||
|
|
||||||
|
|
||||||
|
@ -131,8 +132,13 @@ export default class setUi extends cc.Component {
|
||||||
|
|
||||||
//退出游戏
|
//退出游戏
|
||||||
clickExit() {
|
clickExit() {
|
||||||
|
if(MapConroler._instance.gameStart == true) {
|
||||||
this.exit.active = true;
|
this.exit.active = true;
|
||||||
}
|
}
|
||||||
|
else{
|
||||||
|
MapConroler._instance.returnHome();
|
||||||
|
}
|
||||||
|
}
|
||||||
//取消
|
//取消
|
||||||
cancelExit() {
|
cancelExit() {
|
||||||
this.exit.active = false;
|
this.exit.active = false;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user