Commit b0423c68 authored by wildfirecode's avatar wildfirecode

1

parents b0cb602e 587ee86b
...@@ -135,8 +135,8 @@ ...@@ -135,8 +135,8 @@
]; ];
// localStorage.clear(); // localStorage.clear();
window['imgver'] = '11112'; window['imgver'] = '11112';
window['total_level'] = 10 + 10 * 29; /// TODO 14 不能变 总数必须大于总的关卡数 window['total_level'] = 10 + 10 * 32; /// TODO 14 不能变 总数必须大于总的关卡数
window['last_level'] = 300;//必须大于等于total_level ///TODO 标记最后一关,等于最后一关即可 window['last_level'] = 325;//必须大于等于total_level ///TODO 标记最后一关,等于最后一关即可
var sharePic = document.getElementById('pic'); var sharePic = document.getElementById('pic');
......
...@@ -286,7 +286,7 @@ export default class MainBase extends eui.UILayer { ...@@ -286,7 +286,7 @@ export default class MainBase extends eui.UILayer {
RES.getResAsync("ele" + i + "Line" + "_png") RES.getResAsync("ele" + i + "Line" + "_png")
RES.getResAsync("ele" + i + "Exp" + "_png") RES.getResAsync("ele" + i + "Exp" + "_png")
} }
for (var i = 0; i < 20; i++) { for (var i = 0; i < 21; i++) {
RES.getResAsync("ele" + i + "_png") RES.getResAsync("ele" + i + "_png")
} }
for (var i = 1; i <= 27; i++) { for (var i = 1; i <= 27; i++) {
...@@ -451,6 +451,7 @@ export default class MainBase extends eui.UILayer { ...@@ -451,6 +451,7 @@ export default class MainBase extends eui.UILayer {
loadSvga(getResPath() + 'resource/assets/svgas/turntable.svga'); loadSvga(getResPath() + 'resource/assets/svgas/turntable.svga');
loadSvga(getResPath() + 'resource/assets/svgas/turnprize.svga'); loadSvga(getResPath() + 'resource/assets/svgas/turnprize.svga');
loadSvga(getResPath() + 'resource/assets/svgas/sprize.svga'); loadSvga(getResPath() + 'resource/assets/svgas/sprize.svga');
loadSvga(getResPath() + 'resource/assets/svgas/monster.svga');
} }
catch (e) { catch (e) {
console.error(e); console.error(e);
......
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
"name": "h5" "name": "h5"
}, },
{ {
"keys": "bonusFra1_png,bonusFra10_png,bonusFra11_png,bonusFra12_png,bonusFra13_png,bonusFra14_png,bonusFra15_png,bonusFra16_png,bonusFra17_png,bonusFra18_png,bonusFra19_png,bonusFra2_png,bonusFra20_png,bonusFra21_png,bonusFra22_png,bonusFra23_png,bonusFra24_png,bonusFra25_png,bonusFra26_png,bonusFra27_png,bonusFra3_png,bonusFra4_png,bonusFra5_png,bonusFra6_png,bonusFra7_png,bonusFra8_png,bonusFra9_png,bonusShoot_png,bonusTime_png,boom1_png,boom10_png,boom11_png,boom12_png,boom13_png,boom14_png,boom15_png,boom16_png,boom17_png,boom18_png,boom2_png,boom3_png,boom4_png,boom5_png,boom6_png,boom7_png,boom8_png,boom9_png,boomBtn_png,chooseRect_png,dangqianfenshu_png,eggPiece1_png,eggPiece2_png,eggPiece3_png,eggPiece4_png,eggPiece5_png,eggStatus0_png,eggStatus1_png,eggStatus2_png,ele0_png,ele0Exp_png,ele0Line_png,ele1_png,ele1Exp_png,ele1Line_png,ele2_png,ele2Exp_png,ele2Line_png,ele3_png,ele3Exp_png,ele3Line_png,ele4_png,ele4Exp_png,ele4Line_png,ele5_png,ele6_png,ele7_png,ele8_png,ele9_png,eleDis1_png,eleDis10_png,eleDis11_png,eleDis12_png,eleDis13_png,eleDis14_png,eleDis15_png,eleDis16_png,eleDis17_png,eleDis18_png,eleDis19_png,eleDis2_png,eleDis3_png,eleDis4_png,eleDis5_png,eleDis6_png,eleDis7_png,eleDis8_png,eleDis9_png,exLighting1_png,exLighting11_png,exLighting14_png,exLighting16_png,exLighting18_png,exLighting19_png,exLighting21_png,exLighting23_png,exLighting25_png,exLighting27_png,exLighting29_png,exLighting3_png,exLighting32_png,exLighting34_png,exLighting5_png,exLighting7_png,exLighting9_png,greenCircleDown_png,greenCircleUp_png,guidePropBoom_png,guidePropCow_png,guidePropHammer_png,guidePropHand_png,guidePropMsgPanel_png,guidePropShoe_png,hammerBtn_png,ice2_png,ice3_png,ice4_png,ice5_png,ice6_png,jellyArrow_png,leftArrow_png,lightedStar_png,lineLight_png,lockVine_png,magicLion_png,magicLionBg_png,mainMusicBtnOff_png,mainMusicBtnOn_png,mainQuestionBtn_png,mainQuitBtn_png,mainSettingBg_png,mainSoundBtnOff_png,mainSoundBtnOn_png,main_mapbottom_png,playSceneBg_jpg,progressDown_png,propNum0_png,propNum1_png,propNum2_png,propNum3_png,propNum4_png,propNum5_png,propNum6_png,propNum7_png,propNum8_png,propNum9_png,propNumBg_png,rectLat_png,rightArrow_png,rightMark_png,rock2_png,rock3_png,rock4_png,rock5_png,rock6_png,scoreNumber0_png,scoreNumber1_png,scoreNumber2_png,scoreNumber3_png,scoreNumber4_png,scoreNumber5_png,scoreNumber6_png,scoreNumber7_png,scoreNumber8_png,scoreNumber9_png,setting_png,starProgress_png,stepAni1_png,stepAni10_png,stepAni11_png,stepAni2_png,stepAni3_png,stepAni4_png,stepAni5_png,stepAni6_png,stepAni7_png,stepAni8_png,stepAni9_png,stepBtn_png,stepNumber0_png,stepNumber1_png,stepNumber2_png,stepNumber3_png,stepNumber4_png,stepNumber5_png,stepNumber6_png,stepNumber7_png,stepNumber8_png,stepNumber9_png,stepsBoard_png,targetBoard_png,targetNumber0_png,targetNumber1_png,targetNumber2_png,targetNumber3_png,targetNumber4_png,targetNumber5_png,targetNumber6_png,targetNumber7_png,targetNumber8_png,targetNumber9_png,unlightedStar_png,yellowCircleDown_png,yellowCircleUp_png,yezi1_png,bubbleStar19_png,bubleEle0_png,bubleEle1_png,bubleEle2_png,bubleEle3_png,bubleEle4_png,bubbleStar1_png,bubbleStar2_png,bubbleStar3_png,bubbleStar4_png,bubbleStar5_png,bubbleStar6_png,bubbleStar7_png,bubbleStar8_png,bubbleStar9_png,bubbleStar10_png,bubbleStar11_png,bubbleStar12_png,bubbleStar13_png,bubbleStar14_png,bubbleStar15_png,bubbleStar16_png,bubbleStar17_png,bubbleStar18_png,ele11_png,ele10_png,brownBallFace_png,eyeDownLeft_png,eyeSingle_png,greyBallFace_png,eyeDownRight_png,hairballPiece9_png,hairballPiece8_png,hairballPiece7_png,hairballPiece6_png,hairballPiece5_png,hairballPiece4_png,hairballPiece3_png,hairballPiece2_png,hairballPiece11_png,hairballPiece10_png,hairballPiece1_png,hairballDisBg_png,curScoreNum9_png,curScoreNum8_png,curScoreNum7_png,curScoreNum6_png,curScoreNum5_png,curScoreNum4_png,curScoreNum3_png,curScoreNum2_png,curScoreNum1_png,curScoreNum0_png,festivalTargetBg_png,lineLight9_png,lineLight8_png,lineLight7_png,lineLight6_png,lineLight5_png,lineLight4_png,lineLight3_png,lineLight2_png,lineLight13_png,lineLight12_png,lineLight11_png,lineLight10_png,lineLight1_png,fesRedUp_png,fesRedSmallLight_png,fesRedDown_png,fesRedCap_png,fesRedBombSta1_png,fesRedBigLight_png,fesEleSmallDis9_png,fesEleSmallDis8_png,fesEleSmallDis7_png,fesEleSmallDis6_png,fesEleSmallDis5_png,fesEleSmallDis4_png,fesEleSmallDis3_png,fesEleSmallDis2_png,fesEleSmallDis10_png,fesEleSmallDis1_png,ele12_png,ele13_png,xingxingbi_png,tinyRedMid_png,tinyRedLeft_png,tinyRedRight_png,rectLatWhite_png,fesRedBombSta2_png,ele14_png,redBombYStar_png,redBombBStar_png,redBombBSnow_png,线条尾部炸开_00000_png,线条尾部炸开_00001_png,线条尾部炸开_00002_png,线条尾部炸开_00003_png,线条尾部炸开_00004_png,线条尾部炸开_00005_png,线条尾部炸开_00006_png,线条尾部炸开_00007_png,线条尾部炸开_00008_png,ele15_png,ele16_png,ele17_png,ele18_png,ele19_png", "keys": "bonusFra1_png,bonusFra10_png,bonusFra11_png,bonusFra12_png,bonusFra13_png,bonusFra14_png,bonusFra15_png,bonusFra16_png,bonusFra17_png,bonusFra18_png,bonusFra19_png,bonusFra2_png,bonusFra20_png,bonusFra21_png,bonusFra22_png,bonusFra23_png,bonusFra24_png,bonusFra25_png,bonusFra26_png,bonusFra27_png,bonusFra3_png,bonusFra4_png,bonusFra5_png,bonusFra6_png,bonusFra7_png,bonusFra8_png,bonusFra9_png,bonusShoot_png,bonusTime_png,boom1_png,boom10_png,boom11_png,boom12_png,boom13_png,boom14_png,boom15_png,boom16_png,boom17_png,boom18_png,boom2_png,boom3_png,boom4_png,boom5_png,boom6_png,boom7_png,boom8_png,boom9_png,boomBtn_png,chooseRect_png,dangqianfenshu_png,eggPiece1_png,eggPiece2_png,eggPiece3_png,eggPiece4_png,eggPiece5_png,eggStatus0_png,eggStatus1_png,eggStatus2_png,ele0_png,ele0Exp_png,ele0Line_png,ele1_png,ele1Exp_png,ele1Line_png,ele2_png,ele2Exp_png,ele2Line_png,ele3_png,ele3Exp_png,ele3Line_png,ele4_png,ele4Exp_png,ele4Line_png,ele5_png,ele6_png,ele7_png,ele8_png,ele9_png,eleDis1_png,eleDis10_png,eleDis11_png,eleDis12_png,eleDis13_png,eleDis14_png,eleDis15_png,eleDis16_png,eleDis17_png,eleDis18_png,eleDis19_png,eleDis2_png,eleDis3_png,eleDis4_png,eleDis5_png,eleDis6_png,eleDis7_png,eleDis8_png,eleDis9_png,exLighting1_png,exLighting11_png,exLighting14_png,exLighting16_png,exLighting18_png,exLighting19_png,exLighting21_png,exLighting23_png,exLighting25_png,exLighting27_png,exLighting29_png,exLighting3_png,exLighting32_png,exLighting34_png,exLighting5_png,exLighting7_png,exLighting9_png,greenCircleDown_png,greenCircleUp_png,guidePropBoom_png,guidePropCow_png,guidePropHammer_png,guidePropHand_png,guidePropMsgPanel_png,guidePropShoe_png,hammerBtn_png,ice2_png,ice3_png,ice4_png,ice5_png,ice6_png,jellyArrow_png,leftArrow_png,lightedStar_png,lineLight_png,lockVine_png,magicLion_png,magicLionBg_png,mainMusicBtnOff_png,mainMusicBtnOn_png,mainQuestionBtn_png,mainQuitBtn_png,mainSettingBg_png,mainSoundBtnOff_png,mainSoundBtnOn_png,main_mapbottom_png,playSceneBg_jpg,progressDown_png,propNum0_png,propNum1_png,propNum2_png,propNum3_png,propNum4_png,propNum5_png,propNum6_png,propNum7_png,propNum8_png,propNum9_png,propNumBg_png,rectLat_png,rightArrow_png,rightMark_png,rock2_png,rock3_png,rock4_png,rock5_png,rock6_png,scoreNumber0_png,scoreNumber1_png,scoreNumber2_png,scoreNumber3_png,scoreNumber4_png,scoreNumber5_png,scoreNumber6_png,scoreNumber7_png,scoreNumber8_png,scoreNumber9_png,setting_png,starProgress_png,stepAni1_png,stepAni10_png,stepAni11_png,stepAni2_png,stepAni3_png,stepAni4_png,stepAni5_png,stepAni6_png,stepAni7_png,stepAni8_png,stepAni9_png,stepBtn_png,stepNumber0_png,stepNumber1_png,stepNumber2_png,stepNumber3_png,stepNumber4_png,stepNumber5_png,stepNumber6_png,stepNumber7_png,stepNumber8_png,stepNumber9_png,stepsBoard_png,targetBoard_png,targetNumber0_png,targetNumber1_png,targetNumber2_png,targetNumber3_png,targetNumber4_png,targetNumber5_png,targetNumber6_png,targetNumber7_png,targetNumber8_png,targetNumber9_png,unlightedStar_png,yellowCircleDown_png,yellowCircleUp_png,yezi1_png,bubbleStar19_png,bubleEle0_png,bubleEle1_png,bubleEle2_png,bubleEle3_png,bubleEle4_png,bubbleStar1_png,bubbleStar2_png,bubbleStar3_png,bubbleStar4_png,bubbleStar5_png,bubbleStar6_png,bubbleStar7_png,bubbleStar8_png,bubbleStar9_png,bubbleStar10_png,bubbleStar11_png,bubbleStar12_png,bubbleStar13_png,bubbleStar14_png,bubbleStar15_png,bubbleStar16_png,bubbleStar17_png,bubbleStar18_png,ele11_png,ele10_png,brownBallFace_png,eyeDownLeft_png,eyeSingle_png,greyBallFace_png,eyeDownRight_png,hairballPiece9_png,hairballPiece8_png,hairballPiece7_png,hairballPiece6_png,hairballPiece5_png,hairballPiece4_png,hairballPiece3_png,hairballPiece2_png,hairballPiece11_png,hairballPiece10_png,hairballPiece1_png,hairballDisBg_png,curScoreNum9_png,curScoreNum8_png,curScoreNum7_png,curScoreNum6_png,curScoreNum5_png,curScoreNum4_png,curScoreNum3_png,curScoreNum2_png,curScoreNum1_png,curScoreNum0_png,festivalTargetBg_png,lineLight9_png,lineLight8_png,lineLight7_png,lineLight6_png,lineLight5_png,lineLight4_png,lineLight3_png,lineLight2_png,lineLight13_png,lineLight12_png,lineLight11_png,lineLight10_png,lineLight1_png,fesRedUp_png,fesRedSmallLight_png,fesRedDown_png,fesRedCap_png,fesRedBombSta1_png,fesRedBigLight_png,fesEleSmallDis9_png,fesEleSmallDis8_png,fesEleSmallDis7_png,fesEleSmallDis6_png,fesEleSmallDis5_png,fesEleSmallDis4_png,fesEleSmallDis3_png,fesEleSmallDis2_png,fesEleSmallDis10_png,fesEleSmallDis1_png,ele12_png,ele13_png,xingxingbi_png,tinyRedMid_png,tinyRedLeft_png,tinyRedRight_png,rectLatWhite_png,fesRedBombSta2_png,ele14_png,redBombYStar_png,redBombBStar_png,redBombBSnow_png,线条尾部炸开_00000_png,线条尾部炸开_00001_png,线条尾部炸开_00002_png,线条尾部炸开_00003_png,线条尾部炸开_00004_png,线条尾部炸开_00005_png,线条尾部炸开_00006_png,线条尾部炸开_00007_png,线条尾部炸开_00008_png,ele15_png,ele16_png,ele17_png,ele18_png,ele19_png,ele20_png,empty_png",
"name": "main2" "name": "main2"
}, },
{ {
...@@ -4212,6 +4212,16 @@ ...@@ -4212,6 +4212,16 @@
"url": "assets/backindex/backindex.png", "url": "assets/backindex/backindex.png",
"type": "image", "type": "image",
"name": "backindex_png" "name": "backindex_png"
},
{
"url": "assets/mainScene/ele20.png",
"type": "image",
"name": "ele20_png"
},
{
"url": "assets/mainScene/empty.png",
"type": "image",
"name": "empty_png"
} }
] ]
} }
\ No newline at end of file
...@@ -8,7 +8,7 @@ import Loading from "../libs/new_wx/components/Loading"; ...@@ -8,7 +8,7 @@ import Loading from "../libs/new_wx/components/Loading";
class FriendWxShare extends ComponentBase { class FriendWxShare extends ComponentBase {
start() { start() {
const data = getHomeData(); const data = getHomeData();
this['lvTxt'].text = data.levels.length ==0 ? 1 : data.levels.length; this['lvTxt'].text = data.levels.length == 0 ? 1 : data.levels.length;
this['avatar'].mask = this['avatarMask']; this['avatar'].mask = this['avatarMask'];
const { data: user } = DataManager.ins.getData('hc_userInfo'); const { data: user } = DataManager.ins.getData('hc_userInfo');
this['avatar'].source = user.avatar; this['avatar'].source = user.avatar;
...@@ -36,6 +36,6 @@ export const getFriendShareUrl = async (parent?: egret.DisplayObjectContainer) = ...@@ -36,6 +36,6 @@ export const getFriendShareUrl = async (parent?: egret.DisplayObjectContainer) =
img.src = base64; img.src = base64;
Loading.instace.hide(); Loading.instace.hide();
}, 200); }, 200);
}) })
} }
\ No newline at end of file
...@@ -98,6 +98,7 @@ import { createCandyDis1Ani } from '../something/anis/candy/createCandyDis1Ani'; ...@@ -98,6 +98,7 @@ import { createCandyDis1Ani } from '../something/anis/candy/createCandyDis1Ani';
import { createCandyDis2Ani } from '../something/anis/candy/createCandyDis2Ani'; import { createCandyDis2Ani } from '../something/anis/candy/createCandyDis2Ani';
import { createCandyDis3Ani } from '../something/anis/candy/createCandyDis3Ani'; import { createCandyDis3Ani } from '../something/anis/candy/createCandyDis3Ani';
import { createCandyDis4Ani } from '../something/anis/candy/createCandyDis4Ani'; import { createCandyDis4Ani } from '../something/anis/candy/createCandyDis4Ani';
import jellyMonsterAI from './jellyMonsterAI';
const aniClass = { const aniClass = {
"BoomAni": BoomAni, "BoomAni": BoomAni,
...@@ -752,6 +753,15 @@ export default class MainScene extends Scene { ...@@ -752,6 +753,15 @@ export default class MainScene extends Scene {
this.elementContainer.addChild(jelly); this.elementContainer.addChild(jelly);
this.lattices[i].element = jelly; this.lattices[i].element = jelly;
break; break;
//果冻怪物
case ElementConfigType.JELLY_MONSTER:
let monster: Element = Tool.getElement(ElementType.JELLY_MONSTER)
monster.x = p[0];
monster.y = p[1];
this.elementContainer.addChild(monster);
this.lattices[i].element = monster;
monster.resetMonster();
break;
//鸡蛋 //鸡蛋
case ElementConfigType.CHICKEN_EGG: case ElementConfigType.CHICKEN_EGG:
let egg: Element = Tool.getElement(ElementType.CHICKEN_EGG) let egg: Element = Tool.getElement(ElementType.CHICKEN_EGG)
...@@ -1956,11 +1966,21 @@ export default class MainScene extends Scene { ...@@ -1956,11 +1966,21 @@ export default class MainScene extends Scene {
} }
//消除结束之后检查石门 //消除结束之后检查石门
await this.checkAllBlock(); await this.checkAllBlock();
//检查糖果
const candyResult = await this.checkAllCandy(); const candyResult = await this.checkAllCandy();
if (candyResult) { if (candyResult) {//是不是有融化了的
this.eliminate(); this.eliminate();
return return
}; };
//果冻怪物
let jellyMonsterAIResult = 0;
if (!this.jellyBrokenMark) {
jellyMonsterAIResult = await jellyMonsterAI(this);//0说明怪物没有地方可吐了
console.log('干刚才吐了几个', jellyMonsterAIResult);
if (jellyMonsterAIResult > 0) //吐了果冻相当于破了个果冻,那么不再蔓延
this.jellyBrokenMark = true;
}
//再检查一次 //再检查一次
if (this.threeMatch()) { if (this.threeMatch()) {
this.eliminate() this.eliminate()
...@@ -2401,10 +2421,13 @@ export default class MainScene extends Scene { ...@@ -2401,10 +2421,13 @@ export default class MainScene extends Scene {
} }
//果冻 //果冻
else if (ele.type == ElementType.JELLY) { else if (ele.type == ElementType.JELLY) {
this.removeJelly(index); this.removeJelly(index, ele.isMonsterJelly);
//算个数 //算个数
this.goElementTarget(ele.type, [ele.x, ele.y]); this.goElementTarget(ele.type, [ele.x, ele.y]);
} }
// else if (ele.type == ElementType.MONSTER_JELLY) {
// this.removeMonsterJelly(index);
// }
//鸡蛋 //鸡蛋
else if (ele.type == ElementType.CHICKEN_EGG) { else if (ele.type == ElementType.CHICKEN_EGG) {
//额外逻辑, //额外逻辑,
...@@ -3010,13 +3033,21 @@ export default class MainScene extends Scene { ...@@ -3010,13 +3033,21 @@ export default class MainScene extends Scene {
* 果冻的移除,包括动效 * 果冻的移除,包括动效
* @param index * @param index
*/ */
removeJelly(index: number) { removeJelly(index: number, isMonsterJelly: boolean) {
this.jellyBrokenMark = true; this.jellyBrokenMark = true;
this.removeOperation(index); this.removeOperation(index);
//播放动效,果冻的特效,待写 if (isMonsterJelly)
this.playAni(RecoverName.JELLYDIS_ANI, Tool.getPositionByIndex(index)) this.playAni(RecoverName.ELEDIS_ANI, Tool.getPositionByIndex(index))
else
this.playAni(RecoverName.JELLYDIS_ANI, Tool.getPositionByIndex(index))
} }
// removeMonsterJelly(index: number) {
// this.jellyBrokenMark = true;
// this.removeOperation(index);
// this.playAni(RecoverName.ELEDIS_ANI, Tool.getPositionByIndex(index))
// }
//移除小红包,包括动效,还有个数累计等等。发接口,等等 //移除小红包,包括动效,还有个数累计等等。发接口,等等
removeFestivalEleSmall(index: number) { removeFestivalEleSmall(index: number) {
let ele = this.removeOperation(index); let ele = this.removeOperation(index);
......
import { Element } from "../something/class/Element";
import { Lattice } from "../something/class/Lattice";
import { ElementType } from "../something/enum/ElementType";
import { AiControl } from "../something/logic/AiControl";
import { Tool } from "../something/Tool";
import MainScene from "./MainScene";
import jellyMonsterAni from "./jellyMonsterAni";
export default async (thisObj: MainScene) => {
//找到所有的怪物
//不用判断石门下是否有果冻
//找出所有果冻索引
var indexs: number[] = [];
for (var i = 0; i < thisObj.lattices.length; i++) {
var lattice = thisObj.lattices[i]
if (lattice && lattice.element && lattice.element.type == ElementType.JELLY_MONSTER) {
indexs.push(i);
}
}
//获取果冻动画,0是自身索引,1是终点索引
let spreads: number[][] = [];
for (const fromIndex of indexs) {
var toIndex = judgeActionIndex(fromIndex, thisObj.lattices);
//考虑0,判断null,有就break
if (toIndex != null) {
//能蔓延,返回自身索引和蔓延的索引
spreads.push([fromIndex, toIndex]);
}
}
if (spreads.length > 0)
AiControl.ins.setHasJelly(true);
var i = Math.floor(Math.random() * spreads.length);
let spread;
if (spreads.length > 0) {
spread = spreads.splice(i, 1)[0];
const [fromIndex, toIndex] = spread;
const fromEle: Element = thisObj.lattices[fromIndex].element;//起始元素
const endEle: Element = thisObj.lattices[toIndex].element; //终点元素
await fromEle.toAction();//准备开始吹
await jellyMonsterAni(thisObj,[fromEle.x,fromEle.y],[endEle.x,endEle.y]);
endEle.reset(ElementType.JELLY);
endEle.isMonsterJelly = true;
}
if (spread)
return 1;
return 0;
}
/**
* 判断可蔓延的方向,并返回蔓延终点的格子索引
* 判断可分裂的方向,并返回分裂终点的格子索引
* 判断可跳动的方向,并返回跳动终点的格子索引
*
* 4个方向随机,
* 得是基础元素,且无任何状态,可以有特效
* @param index
* @return 没有返回null,注意判断时可能有0
*/
function judgeActionIndex(index: number, lattices: Lattice[]): number {
//四个方向尽量随机
var arr = [index - Tool.colNum, index + Tool.colNum];
var rc = Tool.indexToRc(index);
var col = rc[1];
//列数大于0才可能有左边格子
if (col > 0) arr.push(index - 1);
//列数不为最右边
if (col < Tool.colNum - 1) arr.push(index + 1);
while (arr.length) {
var rand = Math.floor(Math.random() * arr.length);//随机4个方向
var i = arr.splice(rand, 1)[0];
if (Tool.judgeBaseEle(lattices[i]) &&
!lattices[i].element.hasAnyState() && !lattices[i].element.candy) {
return i
}
}
return null
}
\ No newline at end of file
import MainScene from "./MainScene";
export default (thisobj: MainScene, from: number[], to: number[]) => {
//每次只有一个怪物吹气泡
return new Promise((r) => {
const tex: egret.Texture = RES.getRes("ele20_png");
const pic = new egret.Bitmap(tex);
pic.anchorOffsetX = tex.textureWidth / 2;
pic.anchorOffsetY = tex.textureHeight;
pic.x = from[0];
pic.y = from[1] + 20;
thisobj.addChild(pic);
egret.Tween.get(pic).set({ scaleX: 0, scaleY: 0 })
.to({ scaleX: 1.1, scaleY: 0.9 }, 300)
.to({ scaleX: 0.9, scaleY: 1.1 }, 100)
.to({ scaleX: 1.05, scaleY: 0.95 }, 100)
.to({ scaleX: 1, scaleY: 1 }, 100)
.wait(300)
.set({ anchorOffsetY: tex.textureHeight / 2, y: from[1] + 20 - tex.textureHeight / 2 })
.to({x:to[0],y:to[1]},500)
.to({ scaleX: 0.9, scaleY: 1.1 }, 100)
.to({ scaleX: 1.05, scaleY: 0.95 }, 100)
.to({ scaleX: 1, scaleY: 1 }, 100).call(r)
// r();
});
}
\ No newline at end of file
...@@ -440,7 +440,7 @@ export default class MapScene extends Scene { ...@@ -440,7 +440,7 @@ export default class MapScene extends Scene {
updateSign() { updateSign() {
const { signInfoVO } = DataManager.ins.getData('getSignInfo'); const { signInfoVO } = DataManager.ins.getData('getSignInfo');
if (signInfoVO&&signInfoVO.continueDay < 7) { //表示明天还可以签到 if (signInfoVO && signInfoVO.continueDay < 7) { //表示明天还可以签到
this['sign_s1'].visible = signInfoVO.todaySigned == 0; this['sign_s1'].visible = signInfoVO.todaySigned == 0;
this['sign_s2'].visible = !this['sign_s1'].visible; this['sign_s2'].visible = !this['sign_s1'].visible;
} else { } else {
......
...@@ -6,7 +6,6 @@ import PanelCtrl from "../../libs/new_wx/ctrls/panelCtrl"; ...@@ -6,7 +6,6 @@ import PanelCtrl from "../../libs/new_wx/ctrls/panelCtrl";
export default class BackIndexPanel extends Panel { export default class BackIndexPanel extends Panel {
start(data) { start(data) {
super.start(); super.start();
} }
onTouchTap_closeBtn() { onTouchTap_closeBtn() {
......
...@@ -45,14 +45,14 @@ export default class HbCutTime extends Panel { ...@@ -45,14 +45,14 @@ export default class HbCutTime extends Panel {
} }
private hbRainBaseInfo(updateData?) { private hbRainBaseInfo(updateData?) {
if(updateData && updateData.data){ if (updateData && updateData.data) {
this.data.res = updateData; this.data.res = updateData;
} }
const success = updateData ? updateData.success : this.data.res.success; const success = updateData ? updateData.success : this.data.res.success;
const res = updateData || this.data.res; const res = updateData || this.data.res;
const data = (updateData && updateData.data) || this.data.res.data; const data = (updateData && updateData.data) || this.data.res.data;
if(!success) { if (!success) {
this.ok_btn.source = 'hbCutTime_btn_soon_png'; this.ok_btn.source = 'hbCutTime_btn_soon_png';
this.tipImage.source = 'hbCutTime_cutLine_disable_png'; this.tipImage.source = 'hbCutTime_cutLine_disable_png';
this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this); this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this);
...@@ -60,7 +60,7 @@ export default class HbCutTime extends Panel { ...@@ -60,7 +60,7 @@ export default class HbCutTime extends Panel {
} }
this.cutTimer = this.cutTimer || new CutTimer(this.cutTimeLabel, 'hh时mm分ss秒', async () => { this.cutTimer = this.cutTimer || new CutTimer(this.cutTimeLabel, 'hh时mm分ss秒', async () => {
const getData = await this.getData(); //重新获取数据 const getData = await this.getData(); //重新获取数据
if(getData.success) { if (getData.success) {
this.hbRainBaseInfo(getData); this.hbRainBaseInfo(getData);
} else { } else {
this.hidePanel(); //没有数据关闭窗口 this.hidePanel(); //没有数据关闭窗口
...@@ -69,9 +69,9 @@ export default class HbCutTime extends Panel { ...@@ -69,9 +69,9 @@ export default class HbCutTime extends Panel {
}); });
const sysTime = res.timestamp; // 当前系统时间 const sysTime = res.timestamp; // 当前系统时间
let time; let time;
if(data.currentSession) { if (data.currentSession) {
time = data.currentSession.endTime - sysTime + 3000; time = data.currentSession.endTime - sysTime + 3000;
if(data.canJoin) { if (data.canJoin) {
this.ok_btn.source = 'hbCutTime_btn_enable_png'; this.ok_btn.source = 'hbCutTime_btn_enable_png';
NetManager.ins.showLog(getlogItem(58)); NetManager.ins.showLog(getlogItem(58));
this.btnEffect(); this.btnEffect();
...@@ -81,18 +81,18 @@ export default class HbCutTime extends Panel { ...@@ -81,18 +81,18 @@ export default class HbCutTime extends Panel {
this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this); this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this);
} }
this.tipImage.source = 'hbCutTime_cutLine_enable_png'; this.tipImage.source = 'hbCutTime_cutLine_enable_png';
if(!this.cutTimer.start(time)) { if (!this.cutTimer.start(time)) {
this.cutTimer.stop(); this.cutTimer.stop();
this.cutTimer.start(time); this.cutTimer.start(time);
} }
} else if(data.nextSession) { } else if (data.nextSession) {
egret.Tween.removeTweens(this.ok_btn); egret.Tween.removeTweens(this.ok_btn);
this.ok_btn.scaleX = this.ok_btn.scaleY = 1; this.ok_btn.scaleX = this.ok_btn.scaleY = 1;
time = data.nextSession.startTime - sysTime + 3000; time = data.nextSession.startTime - sysTime + 3000;
this.ok_btn.source = 'hbCutTime_btn_soon_png'; this.ok_btn.source = 'hbCutTime_btn_soon_png';
this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this); this.ok_btn.removeEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchOK, this);
this.tipImage.source = 'hbCutTime_cutLine_disable_png'; this.tipImage.source = 'hbCutTime_cutLine_disable_png';
if(!this.cutTimer.start(time)) { if (!this.cutTimer.start(time)) {
this.cutTimer.stop(); this.cutTimer.stop();
this.cutTimer.start(time); this.cutTimer.start(time);
} }
...@@ -105,8 +105,8 @@ export default class HbCutTime extends Panel { ...@@ -105,8 +105,8 @@ export default class HbCutTime extends Panel {
private btnEffect() { private btnEffect() {
egret.Tween.removeTweens(this.ok_btn); egret.Tween.removeTweens(this.ok_btn);
egret.Tween.get(this.ok_btn).to({scaleX: 0.9, scaleY: 1.1}, 200, egret.Ease.quadInOut).call(() => { egret.Tween.get(this.ok_btn).to({ scaleX: 0.9, scaleY: 1.1 }, 200, egret.Ease.quadInOut).call(() => {
egret.Tween.get(this.ok_btn).to({scaleX: 1, scaleY: 1}, 200, egret.Ease.quadInOut).call(() => { egret.Tween.get(this.ok_btn).to({ scaleX: 1, scaleY: 1 }, 200, egret.Ease.quadInOut).call(() => {
egret.Tween.get(this.ok_btn).to({ egret.Tween.get(this.ok_btn).to({
scaleX: 0.9618, scaleX: 0.9618,
scaleY: 1.0618 scaleY: 1.0618
...@@ -123,7 +123,7 @@ export default class HbCutTime extends Panel { ...@@ -123,7 +123,7 @@ export default class HbCutTime extends Panel {
} }
destroy() { destroy() {
if(this.cutTimer) { if (this.cutTimer) {
this.cutTimer.stop(); this.cutTimer.stop();
} }
super.destroy(); super.destroy();
...@@ -163,11 +163,11 @@ export default class HbCutTime extends Panel { ...@@ -163,11 +163,11 @@ export default class HbCutTime extends Panel {
onTouchOK() { onTouchOK() {
NetManager.ins.clickLog(getlogItem(58)); NetManager.ins.clickLog(getlogItem(58));
try { try {
if(window['getRST']) window['getRST'](); if (window['getRST']) window['getRST']();
} catch(error) { } catch (error) {
console.warn(error) console.warn(error)
} }
PanelCtrl.instance.show('HbGame', {needScore: this.data.res.data.currentSession.limitScore}); PanelCtrl.instance.show('HbGame', { needScore: this.data.res.data.currentSession.limitScore });
} }
protected get closeBtns(): eui.Button[] { protected get closeBtns(): eui.Button[] {
......
...@@ -65,10 +65,10 @@ export default class HbGame extends Panel { ...@@ -65,10 +65,10 @@ export default class HbGame extends Panel {
// 加分 // 加分
private addScore(score: number) { private addScore(score: number) {
this.score += score; this.score += score;
egret.Tween.get(this.scoreGroup).to({scaleX: 1.3, scaleY: 1.3}, 100).call(() => { egret.Tween.get(this.scoreGroup).to({ scaleX: 1.3, scaleY: 1.3 }, 100).call(() => {
this.scoreLabelStr += score; this.scoreLabelStr += score;
this.scoreLabel.text = `${this.scoreLabelStr}`; this.scoreLabel.text = `${this.scoreLabelStr}`;
egret.Tween.get(this.scoreGroup).to({scaleX: 1, scaleY: 1}, 100); egret.Tween.get(this.scoreGroup).to({ scaleX: 1, scaleY: 1 }, 100);
}); });
} }
...@@ -82,8 +82,8 @@ export default class HbGame extends Panel { ...@@ -82,8 +82,8 @@ export default class HbGame extends Panel {
private hbDoJoin() { private hbDoJoin() {
let session = DataManager.ins.getData(NetName.HBRAIN_BASEINFO).data.currentSession.sessionIndex; let session = DataManager.ins.getData(NetName.HBRAIN_BASEINFO).data.currentSession.sessionIndex;
try { try {
if(window['getRST']) window['getRST'](); if (window['getRST']) window['getRST']();
} catch(error) { } catch (error) {
console.warn(error) console.warn(error)
} }
NetManager.ins.hbRainDoJoin((success, res) => { NetManager.ins.hbRainDoJoin((success, res) => {
...@@ -92,51 +92,51 @@ export default class HbGame extends Panel { ...@@ -92,51 +92,51 @@ export default class HbGame extends Panel {
}, window['collectRuleId']); }, window['collectRuleId']);
const data = res.data; const data = res.data;
const code = res.code; const code = res.code;
if(!success) { if (!success) {
switch(true) { switch (true) {
case (code == "600015"): // 网络错误 //命中风控参与规则 case (code == "600015"): // 网络错误 //命中风控参与规则
PanelCtrl.instance.show("HbNoPrize", {type: 2}); PanelCtrl.instance.show("HbNoPrize", { type: 2 });
break; break;
case (code == "600016"): // 游戏分数提交失败~如有疑问,请联系客服 // 苏宁风控 命中 case (code == "600016"): // 游戏分数提交失败~如有疑问,请联系客服 // 苏宁风控 命中
PanelCtrl.instance.show("HbNoPrize", {type: 2}); PanelCtrl.instance.show("HbNoPrize", { type: 2 });
break; break;
case (code == "600054"): // 红包雨活动暂未开启 case (code == "600054"): // 红包雨活动暂未开启
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600055"): // 红包雨场次配置异常 case (code == "600055"): // 红包雨场次配置异常
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600056"): // 当前红包雨场次不存在 case (code == "600056"): // 当前红包雨场次不存在
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600057"): // 当前红包雨场次已结束 case (code == "600057"): // 当前红包雨场次已结束
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600058"): // 分数未达到目标 case (code == "600058"): // 分数未达到目标
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600059"): // 红包炸弹活动暂未开启 case (code == "600059"): // 红包炸弹活动暂未开启
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600060"): // 当前场次参与次数达到上限 case (code == "600060"): // 当前场次参与次数达到上限
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600061"): // 红包炸弹配置异常 case (code == "600061"): // 红包炸弹配置异常
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
case (code == "600062"): // 红包炸弹已经全部领取 case (code == "600062"): // 红包炸弹已经全部领取
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
default: default:
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
break; break;
} }
return; return;
} }
if(!data || !data.option || data.categoryType == 1) { if (!data || !data.option || data.categoryType == 1) {
PanelCtrl.instance.show("HbNoPrize", {type: 1}); PanelCtrl.instance.show("HbNoPrize", { type: 1 });
} else { } else {
let _data = Utils.deepClone(data); let _data = Utils.deepClone(data);
_data.score = this.score; _data.score = this.score;
...@@ -165,11 +165,11 @@ export default class HbGame extends Panel { ...@@ -165,11 +165,11 @@ export default class HbGame extends Panel {
let totalTime: number = this.totalTime; let totalTime: number = this.totalTime;
let lastT = new Date().getTime(); let lastT = new Date().getTime();
let dt = 0; let dt = 0;
egret.startTick(function(timeStamp: number): boolean { egret.startTick(function (timeStamp: number): boolean {
dt = (new Date().getTime() - lastT) / 1000; dt = (new Date().getTime() - lastT) / 1000;
cTime += dt; cTime += dt;
if(cTime > totalTime){ if (cTime > totalTime) {
cTime = 0; cTime = 0;
} }
angle = 360 * cTime / totalTime; angle = 360 * cTime / totalTime;
...@@ -197,13 +197,13 @@ export default class HbGame extends Panel { ...@@ -197,13 +197,13 @@ export default class HbGame extends Panel {
private timeCallFun() { private timeCallFun() {
this.cutTimeLabel.text = `${--this.time}`; this.cutTimeLabel.text = `${--this.time}`;
if(this.time <= 0) { if (this.time <= 0) {
this.gameOver(); this.gameOver();
} }
if(this.time == 3) { if (this.time == 3) {
let _y = this.cutTimerGroup.y; let _y = this.cutTimerGroup.y;
egret.Tween.get(this.cutTimerGroup, {loop: true}).to({y: _y + 10}, 100).call(() => { egret.Tween.get(this.cutTimerGroup, { loop: true }).to({ y: _y + 10 }, 100).call(() => {
egret.Tween.get(this.cutTimerGroup).to({y: _y}, 100); egret.Tween.get(this.cutTimerGroup).to({ y: _y }, 100);
}) })
} }
} }
...@@ -220,18 +220,18 @@ export default class HbGame extends Panel { ...@@ -220,18 +220,18 @@ export default class HbGame extends Panel {
obj.anchorOffsetY = 377 / 2; obj.anchorOffsetY = 377 / 2;
this.readyGroup.visible = true; this.readyGroup.visible = true;
obj.source = "hbGame_3_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1; obj.source = "hbGame_3_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1;
egret.Tween.get(obj).to({scaleX: 1, scaleY: 1, alpha: 1}, t1, _ease).wait(tw).call(() => { egret.Tween.get(obj).to({ scaleX: 1, scaleY: 1, alpha: 1 }, t1, _ease).wait(tw).call(() => {
egret.Tween.get(obj).to({scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1}, t2).call(() => { egret.Tween.get(obj).to({ scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1 }, t2).call(() => {
obj.source = "hbGame_2_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1; obj.source = "hbGame_2_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1;
egret.Tween.get(obj).to({scaleX: 1, scaleY: 1, alpha: 1}, t1, _ease).wait(tw).call(() => { egret.Tween.get(obj).to({ scaleX: 1, scaleY: 1, alpha: 1 }, t1, _ease).wait(tw).call(() => {
egret.Tween.get(obj).to({scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1}, t2).call(() => { egret.Tween.get(obj).to({ scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1 }, t2).call(() => {
obj.source = "hbGame_1_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1; obj.source = "hbGame_1_png", obj.scaleX = obj.scaleY = _scaleMin, obj.alpha = 1;
egret.Tween.get(obj).to({scaleX: 1, scaleY: 1, alpha: 1}, t1, _ease).wait(tw).call(() => { egret.Tween.get(obj).to({ scaleX: 1, scaleY: 1, alpha: 1 }, t1, _ease).wait(tw).call(() => {
egret.Tween.get(obj).to({scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1}, t2).call(() => { egret.Tween.get(obj).to({ scaleX: _scaleMax, scaleY: _scaleMax, alpha: 0.1 }, t2).call(() => {
this.readyGroup.visible = false; this.readyGroup.visible = false;
this.startGame(); this.startGame();
egret.Tween.get(this.timeBtn).to({y: 8}, 100).call(() => { egret.Tween.get(this.timeBtn).to({ y: 8 }, 100).call(() => {
egret.Tween.get(this.timeBtn).to({y: 0}, 100); egret.Tween.get(this.timeBtn).to({ y: 0 }, 100);
}); });
}) })
}); });
...@@ -243,7 +243,7 @@ export default class HbGame extends Panel { ...@@ -243,7 +243,7 @@ export default class HbGame extends Panel {
private readyTipsEffect() { private readyTipsEffect() {
this.readyGroup.alpha = 0; this.readyGroup.alpha = 0;
egret.Tween.get(this.readyGroup).to({alpha: 1}, 300).call(() => this.readyTimeEffect()); egret.Tween.get(this.readyGroup).to({ alpha: 1 }, 300).call(() => this.readyTimeEffect());
} }
protected onSkinComplete() { protected onSkinComplete() {
......
...@@ -11,9 +11,9 @@ import { NetManager } from "../../../libs/tw/manager/NetManager"; ...@@ -11,9 +11,9 @@ import { NetManager } from "../../../libs/tw/manager/NetManager";
* 红包雨奖励 * 红包雨奖励
*/ */
export default class HbPrize extends Panel { export default class HbPrize extends Panel {
public ok_btn:eui.Button; public ok_btn: eui.Button;
public closeBtn:eui.Button; public closeBtn: eui.Button;
public tipLabel:eui.Label; public tipLabel: eui.Label;
constructor(data) { constructor(data) {
super(); super();
...@@ -31,10 +31,10 @@ export default class HbPrize extends Panel { ...@@ -31,10 +31,10 @@ export default class HbPrize extends Panel {
} }
updateOption(option: any) { updateOption(option: any) {
const { categoryType, img, num, propType,realValue } = option;// 2次数 3道具 4元宝 5实物 6优惠券 7虚拟商品 const { categoryType, img, num, propType, realValue } = option;// 2次数 3道具 4元宝 5实物 6优惠券 7虚拟商品
this['propnums'].text = 'x1'; this['propnums'].text = 'x1';
if(num) if (num)
this['propnums'].text = 'x' + num; this['propnums'].text = 'x' + num;
switch (categoryType) { switch (categoryType) {
case 2: case 2:
...@@ -81,7 +81,7 @@ export default class HbPrize extends Panel { ...@@ -81,7 +81,7 @@ export default class HbPrize extends Panel {
onTouchOK() { onTouchOK() {
NetManager.ins.clickLog(getlogItem(59)); NetManager.ins.clickLog(getlogItem(59));
if((getHomeData().levels.length + 1) > window['last_level']) { if ((getHomeData().levels.length + 1) > window['last_level']) {
changeMapScene(); changeMapScene();
super.hidePanel(); super.hidePanel();
return; return;
......
...@@ -25,7 +25,7 @@ export default class RainMgr { ...@@ -25,7 +25,7 @@ export default class RainMgr {
this.timer.stop(); // 停止计时器 this.timer.stop(); // 停止计时器
// 隐藏全部掉落物品 // 隐藏全部掉落物品
for(let v of this.rainGroup.$children) { for (let v of this.rainGroup.$children) {
v.visible = false; v.visible = false;
} }
} }
...@@ -43,16 +43,16 @@ export default class RainMgr { ...@@ -43,16 +43,16 @@ export default class RainMgr {
// 添加掉落物品 // 添加掉落物品
private addRain() { private addRain() {
let num = Utils.RandomInt(3, 6); let num = Utils.RandomInt(3, 6);
for(let i = 0; i < num; i++) { for (let i = 0; i < num; i++) {
let newRainObj = this.rainPool.get(); let newRainObj = this.rainPool.get();
if(!newRainObj) { if (!newRainObj) {
newRainObj = new RainObj({ newRainObj = new RainObj({
key: RainData.key[~~(Math.random() * RainData.key.length)], key: RainData.key[~~(Math.random() * RainData.key.length)],
rainGroup: this.rainGroup, rainGroup: this.rainGroup,
pool:this.rainPool, pool: this.rainPool,
}); });
} }
setTimeout(()=>{ setTimeout(() => {
newRainObj.addStage((this.rainGroup.width) / num * i + 100, Utils.RandomInt(6, 9) / 10); newRainObj.addStage((this.rainGroup.width) / num * i + 100, Utils.RandomInt(6, 9) / 10);
}, Utils.RandomInt(0, 8) * 100); }, Utils.RandomInt(0, 8) * 100);
} }
...@@ -60,16 +60,16 @@ export default class RainMgr { ...@@ -60,16 +60,16 @@ export default class RainMgr {
private addPool() { private addPool() {
this.rainPool = new Pooling(); this.rainPool = new Pooling();
for(let v of RainData.key) { for (let v of RainData.key) {
let num = 1; let num = 1;
if(v == 'hongbao'){ if (v == 'hongbao') {
num = 45; num = 45;
} }
for(let i = 0; i < num; i++) { for (let i = 0; i < num; i++) {
let newObj = new RainObj({ let newObj = new RainObj({
key: v, key: v,
rainGroup: this.rainGroup, rainGroup: this.rainGroup,
pool:this.rainPool, pool: this.rainPool,
}); });
this.rainPool.push(newObj); this.rainPool.push(newObj);
} }
......
...@@ -8,11 +8,13 @@ export default class TargetItemRenderer extends eui.ItemRenderer { ...@@ -8,11 +8,13 @@ export default class TargetItemRenderer extends eui.ItemRenderer {
dataChanged(){ dataChanged(){
for (let i = 0; i <11; i++) { for (let i = 0; i <11; i++) {
this['icon' + i].visible=false; this['icon' + i].visible=false;
}
try {
this['icon' + this.data.type].visible=true;
} catch (error) {
} }
this['icon' + this.data.type].visible=true;
this['txt'].text = `X${this.data.count }`; this['txt'].text = `X${this.data.count }`;
} }
......
...@@ -16,7 +16,7 @@ export class RegTriangle extends RegPolygon { ...@@ -16,7 +16,7 @@ export class RegTriangle extends RegPolygon {
constructor(length, view) { constructor(length, view) {
super(length, view); super(length, view);
this.type="regTriangle"; this.type = "regTriangle";
this.pointLength = this.length * sqrt3 / 3; this.pointLength = this.length * sqrt3 / 3;
this.sideLength = this.length * sqrt3 / 6; this.sideLength = this.length * sqrt3 / 6;
} }
......
...@@ -274,6 +274,7 @@ export class Tool { ...@@ -274,6 +274,7 @@ export class Tool {
lat.element.hasState(StateType.LOCK) || lat.element.hasState(StateType.LOCK) ||
lat.element.hasState(StateType.BLOCK_LOCK) || lat.element.hasState(StateType.BLOCK_LOCK) ||
lat.element.type == ElementType.JELLY || lat.element.type == ElementType.JELLY ||
lat.element.type == ElementType.JELLY_MONSTER ||
lat.element.type == ElementType.CHICKEN_EGG || lat.element.type == ElementType.CHICKEN_EGG ||
lat.element.type == ElementType.FESTIVALELE_BIG //|| lat.element.type == ElementType.FESTIVALELE_BIG //||
// lat.element.type == ElementType.FESTIVALELE_SMALL // lat.element.type == ElementType.FESTIVALELE_SMALL
...@@ -297,6 +298,7 @@ export class Tool { ...@@ -297,6 +298,7 @@ export class Tool {
!lat.element.hasState(StateType.HAIRBALLGREY) && !lat.element.hasState(StateType.HAIRBALLGREY) &&
!lat.element.hasState(StateType.HAIRBALLBROWN) && !lat.element.hasState(StateType.HAIRBALLBROWN) &&
!lat.element.hasState(StateType.BLOCK_LOCK) && !lat.element.hasState(StateType.BLOCK_LOCK) &&
lat.element.type != ElementType.JELLY_MONSTER &&
lat.element.type != ElementType.FESTIVALELE_SMALL lat.element.type != ElementType.FESTIVALELE_SMALL
) { ) {
return true return true
...@@ -334,7 +336,8 @@ export class Tool { ...@@ -334,7 +336,8 @@ export class Tool {
return false return false
} }
//上方元素为冰淇淋 //上方元素为冰淇淋
else if (lat.element.type == ElementType.LOLLIPOP) { else if (lat.element.type == ElementType.LOLLIPOP ||
lat.element.type == ElementType.JELLY_MONSTER) {
return false return false
} }
//剩下情况 //剩下情况
...@@ -410,6 +413,7 @@ export class Tool { ...@@ -410,6 +413,7 @@ export class Tool {
ele.hasState(StateType.HAIRBALLBLACK) || ele.hasState(StateType.HAIRBALLBLACK) ||
ele.hasState(StateType.HAIRBALLBROWN) || ele.hasState(StateType.HAIRBALLBROWN) ||
ele.type == ElementType.JELLY || ele.type == ElementType.JELLY ||
ele.type == ElementType.JELLY_MONSTER ||
ele.type == ElementType.CHICKEN_EGG || ele.type == ElementType.CHICKEN_EGG ||
ele.type == ElementType.FESTIVALELE_BIG || ele.type == ElementType.FESTIVALELE_BIG ||
ele.type == ElementType.FESTIVALELE_SMALL ele.type == ElementType.FESTIVALELE_SMALL
...@@ -430,6 +434,7 @@ export class Tool { ...@@ -430,6 +434,7 @@ export class Tool {
ele.type == ElementType.JELLY || ele.type == ElementType.JELLY ||
ele.type == ElementType.CHICKEN_EGG || ele.type == ElementType.CHICKEN_EGG ||
ele.type == ElementType.LOLLIPOP || ele.type == ElementType.LOLLIPOP ||
ele.type == ElementType.JELLY_MONSTER ||
ele.type == ElementType.FESTIVALELE_BIG || ele.type == ElementType.FESTIVALELE_BIG ||
ele.type == ElementType.FESTIVALELE_SMALL || ele.type == ElementType.FESTIVALELE_SMALL ||
ele.hasState(StateType.LOCK) || ele.hasState(StateType.LOCK) ||
......
...@@ -36,7 +36,14 @@ export class JellySpreadAni extends egret.DisplayObjectContainer { ...@@ -36,7 +36,14 @@ export class JellySpreadAni extends egret.DisplayObjectContainer {
this.addChild(this.shoot); this.addChild(this.shoot);
} }
play(startP: number[], cloneEle: Element, callback: Function) { play(startP: number[], cloneEle: Element, callback: Function, isMonsterJelly) {
if (isMonsterJelly) {
this.targetImage.texture = RES.getRes('ele20_png');
this.oriImage.texture = RES.getRes('ele20_png');
} else {
this.targetImage.texture = RES.getRes("ele" + ElementType.JELLY + "_png");
this.oriImage.texture = RES.getRes("ele" + ElementType.JELLY + "_png");
}
this.x = startP[0]; this.x = startP[0];
this.y = startP[1]; this.y = startP[1];
//终点位置全局先赋值出来,判断用 //终点位置全局先赋值出来,判断用
......
...@@ -3,5 +3,46 @@ import { PassType } from "../enum/PassType"; ...@@ -3,5 +3,46 @@ import { PassType } from "../enum/PassType";
import { ElementType } from "../enum/ElementType"; import { ElementType } from "../enum/ElementType";
export const Chapters14: ChapterData[] = [ export const Chapters14: ChapterData[] = [
//301
{ baseElementTypes: [0, 1, 2, 3, 4], bubbleProbability: 0, stepCount: 15, passTarget: { type: 1, elements: [{ type: 0, count: 47 }, { type: 1, count: 55 }, { type: 5, count: 10 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], connectedLats: [[18, 36], [26, 44], [54, 72], [62, 80]], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 12, 1, 1, 1, 1, 1, 1, 1, 12, 2, 2, 5, 5, 5, 5, 5, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 12, 1, 1, 1, 1, 1, 1, 1, 12, 2, 2, 11, 1, 1, 1, 11, 2, 2], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 18, type: null }, { index: 19, type: null }, { index: 25, type: null }, { index: 26, type: null }] } },
//302
{ baseElementTypes: [0, 2, 4, 3], bubbleProbability: 10, stepCount: 25, passTarget: { type: 1, elements: [{ type: 2, count: 38 }, { type: 3, count: 38 }, { type: 9, count: 65 }] }, starScores: [15000, 20000, 25000], map: { lattices: [2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 13, type: null }, { index: 45, type: null }, { index: 53, type: null }] } },
//303
{ baseElementTypes: [0, 1, 2, 3, 4], bubbleProbability: 0, stepCount: 18, passTarget: { type: 1, elements: [{ type: 9, count: 64 }, { type: 1, count: 66 }] }, starScores: [15000, 20000, 25000], map: { lattices: [2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 5, 2, 2, 2, 5, 2, 0, 0, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 11, 2, 11, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 20, type: null }, { index: 24, type: null }] } },
//304
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 18, passTarget: { type: 1, elements: [{ type: 9, count: 69 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 11, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 73, type: null }, { index: 74, type: null }, { index: 75, type: null }, { index: 76, type: null }, { index: 77, type: null }, { index: 78, type: null }, { index: 79, type: null }] } },
//305
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 29, passTarget: { type: 1, elements: [{ type: 9, count: 51 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 61, 1, 6, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 1, 3, 0, 61, 0, 3, 1, 3, 3, 1, 0, 3, 3, 3, 0, 1, 3, 3, 0, 0, 3, 1, 3, 0, 0, 3, 0, 0, 0, 3, 3, 3, 0, 0, 0], connectedLats: [], elements: [1, 1, 2, 1, 4, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 6, 1, 1, 2, 1, 1, 6, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 42, 10, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }] } },
//306
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 30, passTarget: { type: 1, elements: [{ type: 0, count: 58 }, { type: 9, count: 60 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 6, 6, 6, 3, 61, 61, 61, 61, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 5, 2, 5, 2, 5, 2, 5, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 5, 2, 5, 2, 5, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 12, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }] } },
//307
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 23, passTarget: { type: 1, elements: [{ type: 9, count: 72 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 61, 6, 41, 6, 61, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 0, 3, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 1, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 1, 2, 2, 2, 1, 2, 1, 0, 0, 0, 2, 2, 2, 0, 0, 0, 1, 1, 1, 9, 9, 9, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }] } },
//308
{ baseElementTypes: [0, 1, 2, 3], bubbleProbability: 0, stepCount: 27, passTarget: { type: 1, elements: [{ type: 9, count: 60 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 0, 0, 3, 0, 0, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 7, 7, 1, 1, 2, 1, 1, 7, 7, 7, 7, 7, 1, 2, 1, 7, 7, 7, 7, 7, 7, 1, 4, 1, 7, 7, 7, 7, 7, 7, 1, 4, 1, 7, 7, 7], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 9, type: null }, { index: 17, type: null }, { index: 45, type: null }, { index: 46, type: null }, { index: 52, type: null }, { index: 53, type: null }, { index: 56, type: null }, { index: 60, type: null }] } },
//309
{ baseElementTypes: [0, 2, 3], bubbleProbability: 0, stepCount: 23, passTarget: { type: 1, elements: [{ type: 1, count: 99 }, { type: 0, count: 88 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 41, 1, 1, 1, 41, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 4, 1, 1, 41, 1, 1, 4, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 41, 1, 1, 1, 41, 1, 0, 0, 1, 1, 1, 4, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 10, type: null }, { index: 11, type: null }, { index: 15, type: null }, { index: 16, type: null }, { index: 27, type: null }, { index: 35, type: null }] } },
//310
{ baseElementTypes: [ 0, 1, 2, 3, 4 ], bubbleProbability: 10, stepCount: 23, passTarget: { type: 1, elements: [ { type: 9, count: 55 } ] }, starScores: [ 15000, 20000, 25000 ], map: { lattices: [ 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 61, 6, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0 ], connectedLats: [ [ 36, 54 ], [ 37, 55 ], [ 38, 56 ], [ 42, 60 ], [ 43, 61 ], [ 44, 62 ] ], elements: [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 7, 7, 7, 1, 1, 1, 7, 7, 7, 1, 1, 1, 4, 4, 4, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1 ], baseElements: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], recycles: [], generateLats: [ { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 11, type: null }, { index: 15, type: null }, { index: 19, type: null }, { index: 25, type: null }, { index: 27, type: null }, { index: 35, type: null } ] } },
//311
{ baseElementTypes: [0, 1, 3, 4], bubbleProbability: 0, stepCount: 27, passTarget: { type: 1, elements: [{ type: 9, count: 52 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 0, 3, 0, 0, 0, 3, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 7, 7, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 2, type: null }, { index: 6, type: null }, { index: 9, type: null }, { index: 10, type: null }, { index: 16, type: null }, { index: 17, type: null }, { index: 22, type: null }, { index: 45, type: null }, { index: 53, type: null }, { index: 55, type: null }, { index: 56, type: null }, { index: 60, type: null }, { index: 61, type: null }, { index: 75, type: null }, { index: 76, type: null }, { index: 77, type: null }] } },
//312
{ baseElementTypes: [0, 1, 2, 3], bubbleProbability: 0, stepCount: 23, passTarget: { type: 1, elements: [{ type: 9, count: 62 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 0, 0, 3, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 6, 3, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 4, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 11, type: null }, { index: 12, type: null }, { index: 14, type: null }, { index: 15, type: null }, { index: 36, type: null }, { index: 37, type: null }, { index: 38, type: null }, { index: 42, type: null }, { index: 43, type: null }, { index: 44, type: null }, { index: 54, type: null }, { index: 55, type: null }, { index: 56, type: null }, { index: 60, type: null }, { index: 61, type: null }, { index: 62, type: null }] } },
//313
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 21, passTarget: { type: 1, elements: [{ type: 9, count: 49 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 2, 1, 3, 3, 3, 3, 3, 1, 2, 2, 0, 3, 3, 3, 3, 3, 0, 2, 2, 1, 3, 3, 3, 3, 3, 1, 2, 2, 0, 3, 3, 3, 3, 3, 0, 2, 2, 1, 3, 3, 3, 3, 3, 1, 2, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 1, 3, 3, 0, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 6, 1, 6, 1, 1, 1, 6, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 2, 1, 1, 6, 1, 4, 1, 1, 2, 2, 2, 1, 1, 4, 4, 6, 2, 2, 2, 2, 2, 6, 4, 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 12, 2, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 18, type: null }, { index: 20, type: null }, { index: 21, type: null }, { index: 22, type: null }, { index: 23, type: null }, { index: 24, type: null }, { index: 26, type: null }] } },
//314
{ baseElementTypes: [0, 1, 3, 4], bubbleProbability: 0, stepCount: 22, passTarget: { type: 1, elements: [{ type: 9, count: 49 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 3, 0, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 6, 3, 3, 3, 3, 3, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 3, 6, 0, 0, 0, 3, 3, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 3, 6, 0, 0, 0, 3, 3, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 0, 3, 0, 0, 0, 0, 0, 3, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 1, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 7, type: null }, { index: 9, type: null }, { index: 11, type: null }, { index: 15, type: null }] } },
//315
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 20, passTarget: { type: 1, elements: [{ type: 6, count: 4 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0], connectedLats: [], elements: [1, 1, 1, 1, 3, 1, 1, 1, 1, 12, 5, 1, 1, 1, 1, 1, 5, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 12, 5, 2, 2, 1, 2, 2, 5, 12, 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, 1, 12, 5, 2, 2, 2, 2, 2, 5, 12, 1, 1, 2, 1, 2, 1, 2, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [10, 16, 37, 43, 64, 66, 68, 70, 74, 76, 78], generateLats: [{ index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }] } },
//316
{ baseElementTypes: [0, 1, 3, 2], bubbleProbability: 0, stepCount: 18, passTarget: { type: 1, elements: [{ type: 9, count: 79 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 6, 6, 6, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 5, 2, 1, 2, 5, 5, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 11, 2, 2, 2, 2, 1, 9, 9, 9, 2, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }] } },
//317
{ baseElementTypes: [1, 2, 3, 4], bubbleProbability: 0, stepCount: 25, passTarget: { type: 1, elements: [{ type: 9, count: 74 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 6, 3, 3, 0, 3, 3, 6, 0, 6, 6, 3, 3, 3, 3, 3, 6, 6, 6, 6, 3, 3, 0, 3, 3, 6, 6, 6, 6, 3, 3, 3, 3, 3, 6, 6, 0, 6, 3, 3, 0, 3, 3, 6, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }] } },
//318
{ baseElementTypes: [2, 1, 0, 4], bubbleProbability: 0, stepCount: 27, passTarget: { type: 1, elements: [{ type: 9, count: 61 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 9, type: null }, { index: 17, type: null }] } },
//319
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 29, passTarget: { type: 1, elements: [{ type: 9, count: 71 }] }, starScores: [15000, 20000, 25000], map: { lattices: [0, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 0, 3, 0, 1, 3, 3, 3, 3, 3, 1, 0], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 7, 7, 7, 7, 1, 1, 1, 7, 2, 2, 2, 2, 2, 7, 1, 1, 7, 2, 5, 5, 5, 2, 7, 1, 1, 7, 2, 5, 1, 5, 2, 7, 1, 1, 7, 2, 5, 5, 5, 2, 7, 1, 1, 7, 2, 2, 2, 2, 2, 7, 1, 1, 1, 7, 7, 7, 7, 7, 1, 1, 1, 12, 1, 1, 1, 1, 1, 12, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 9, type: null }, { index: 17, type: null }, { index: 18, type: null }, { index: 26, type: null }] } },
//320
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 22, passTarget: { type: 1, elements: [{ type: 9, count: 71 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 6, 0, 3, 3, 3, 0, 6, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 0, 3, 0, 3, 1, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 12, 1, 1, 2, 1, 1, 12, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 10, type: null }, { index: 16, type: null }] } },
//321
{ baseElementTypes: [0, 2, 3, 4], bubbleProbability: 0, stepCount: 22, passTarget: { type: 1, elements: [{ type: 22, count: 71 }] }, starScores: [15000, 20000, 25000], map: { lattices: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 6, 0, 3, 3, 3, 0, 6, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 0, 3, 0, 3, 1, 3], connectedLats: [], elements: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 12, 1, 1, 2, 1, 1, 12, 1], baseElements: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], recycles: [], generateLats: [{ index: 0, type: null }, { index: 1, type: null }, { index: 2, type: null }, { index: 3, type: null }, { index: 4, type: null }, { index: 5, type: null }, { index: 6, type: null }, { index: 7, type: null }, { index: 8, type: null }, { index: 10, type: null }, { index: 16, type: null }] } }
] ]
\ No newline at end of file
...@@ -25,12 +25,81 @@ import { createCandyDis1Ani } from "../anis/candy/createCandyDis1Ani"; ...@@ -25,12 +25,81 @@ import { createCandyDis1Ani } from "../anis/candy/createCandyDis1Ani";
import { createCandyDis2Ani } from "../anis/candy/createCandyDis2Ani"; import { createCandyDis2Ani } from "../anis/candy/createCandyDis2Ani";
import { createCandyDis3Ani } from "../anis/candy/createCandyDis3Ani"; import { createCandyDis3Ani } from "../anis/candy/createCandyDis3Ani";
import { createCandyDis4Ani } from "../anis/candy/createCandyDis4Ani"; import { createCandyDis4Ani } from "../anis/candy/createCandyDis4Ani";
import { loadSvga } from "../../loadSvga";
import getResPath from "../../../libs/new_tc/getResPath";
/** /**
* 考虑到底继承白鹭的啥Component还是Container * 考虑到底继承白鹭的啥Component还是Container
* 坐标原点需要坐落在格子的中心点 * 坐标原点需要坐落在格子的中心点
* 最好到时按,底图,动效,气泡,笼子,毛球,进行分层,如果多个状态要共存时,必须分层,到时气泡的动画,要写再自己的层里 * 最好到时按,底图,动效,气泡,笼子,毛球,进行分层,如果多个状态要共存时,必须分层,到时气泡的动画,要写再自己的层里
*/ */
export class Element extends eui.Component { export class Element extends eui.Component {
_mv;
async resetMonster() {
this.changeSource('empty_png');
this.showImage.alpha = 0;
const mv: any = await loadSvga(getResPath() + 'resource/assets/svgas/monster.svga');
this._mv = mv;
this.addChild(mv);
mv.anchorOffsetX = 150;
mv.anchorOffsetY = 150;
mv.x = - 3;
mv.y = - 6;
this.toStandByAction();
}
private _isMonsterJelly: boolean;
set isMonsterJelly(val: boolean) {
this._isMonsterJelly = val;
this.changeSource('ele20_png')
}
get isMonsterJelly() {
return this._isMonsterJelly;
}
toStandByAction() {
if (!this._mv) return;
const mv = this._mv;
const cb = () => {
if (mv.currentFrame == 360) { //向上吹
mv.gotoAndPlay(1, true);
}
};
this._mv.addEventListener(egret.Event.ENTER_FRAME, cb, this);
mv.gotoAndPlay(1, true);
}
toAction() {
return new Promise((r) => {
if (!this._mv) {
r();
return;
}
var p = Tool.getPositionByIndex(this.index);
const mv = this._mv;
const cb = () => {
if (mv.currentFrame == 508) { //向上吹
this.toStandByAction();
}
if (mv.currentFrame == 391) {
r();
// const tex: egret.Texture = RES.getRes("ele20_png");
// const pic = new egret.Bitmap(tex);
// pic.anchorOffsetX = tex.textureWidth / 2;
// pic.anchorOffsetY = tex.textureHeight;
// pic.x = p[0];
// pic.y = p[1];
// this.stage.addChild(pic);
// egret.Tween.get(pic).set({ scaleX: 0, scaleY: 0 }).to({ scaleX: 1.1, scaleY: 1.1 }, 300).wait(1000).call(()=>{
// pic.parent.removeChild(pic);
// });
}
};
this._mv.addEventListener(egret.Event.ENTER_FRAME, cb, this);
mv.gotoAndPlay(361, true);
});
}
private _candy: Candy; private _candy: Candy;
resetToCandyView(baseElement: CandyBaseElementType) { resetToCandyView(baseElement: CandyBaseElementType) {
const res = transElementRes(baseElement); const res = transElementRes(baseElement);
...@@ -68,8 +137,8 @@ export class Element extends eui.Component { ...@@ -68,8 +137,8 @@ export class Element extends eui.Component {
const cb = () => { const cb = () => {
r(); r();
}; };
this.showImage.alpha=0; this.showImage.alpha = 0;
this.candy.visible=false; this.candy.visible = false;
var p = Tool.getPositionByIndex(this.index); var p = Tool.getPositionByIndex(this.index);
if (this.type == ElementType.RABBIT) if (this.type == ElementType.RABBIT)
createCandyDis0Ani(p[0], p[1], this.stage, cb); createCandyDis0Ani(p[0], p[1], this.stage, cb);
...@@ -253,6 +322,7 @@ export class Element extends eui.Component { ...@@ -253,6 +322,7 @@ export class Element extends eui.Component {
changeSource(source: string) { changeSource(source: string) {
// this.showImage.source = source; // this.showImage.source = source;
var texture: egret.Texture = RES.getRes(source); var texture: egret.Texture = RES.getRes(source);
if (!texture) { return; }
this.showImage.texture = texture this.showImage.texture = texture
this.showImage.x = -texture.textureWidth / 2; this.showImage.x = -texture.textureWidth / 2;
......
...@@ -52,6 +52,10 @@ export enum ElementConfigType { ...@@ -52,6 +52,10 @@ export enum ElementConfigType {
* 糖果 * 糖果
*/ */
CANDY = 11, CANDY = 11,
/**
* 果冻怪
*/
JELLY_MONSTER = 12,
} }
// export const isCandy = (t: ElementConfigType) => { // export const isCandy = (t: ElementConfigType) => {
......
...@@ -35,6 +35,9 @@ export enum ElementType { ...@@ -35,6 +35,9 @@ export enum ElementType {
CANDY_CATTLE,//牛 CANDY_CATTLE,//牛
CANDY_LION,//狮子 CANDY_LION,//狮子
CANDY_PIG,//猪 CANDY_PIG,//猪
MONSTER_JELLY1,
JELLY_MONSTER,
} }
export enum CandyBaseElementType { export enum CandyBaseElementType {
......
...@@ -40,6 +40,7 @@ export class AiControl { ...@@ -40,6 +40,7 @@ export class AiControl {
* 判断是否还有果冻,暂时不考虑果冻无中生有,否则逻辑修改 * 判断是否还有果冻,暂时不考虑果冻无中生有,否则逻辑修改
*/ */
private hasJelly: boolean; private hasJelly: boolean;
setHasJelly(val) { this.hasJelly = val }
/** /**
* 提前记录所有的鸡蛋的索引,因为鸡蛋数量不会改变 * 提前记录所有的鸡蛋的索引,因为鸡蛋数量不会改变
*/ */
...@@ -217,13 +218,13 @@ export class AiControl { ...@@ -217,13 +218,13 @@ export class AiControl {
for (var i = 0; i < thisObj.lattices.length; i++) { for (var i = 0; i < thisObj.lattices.length; i++) {
var lattice = thisObj.lattices[i] var lattice = thisObj.lattices[i]
//没有格子或没有元素或不是果冻 跳过 //没有格子或没有元素或不是果冻 跳过
if (lattice && lattice.element && lattice.block && lattice.block.isLock() && lattice.element.type == ElementType.JELLY ) { if (lattice && lattice.element && lattice.block && lattice.block.isLock() && lattice.element.type == ElementType.JELLY) {
blocked.push(i); blocked.push(i);
} }
if (!lattice || !lattice.element || lattice.element.type != ElementType.JELLY || (lattice.block && lattice.block.isLock())) continue if (!lattice || !lattice.element || lattice.element.type != ElementType.JELLY || (lattice.block && lattice.block.isLock())) continue
indexs.push(i); indexs.push(i);
} }
console.log('没有被锁的果冻数量',indexs.length,'被锁果冻数量',blocked.length,) console.log('没有被锁的果冻数量', indexs.length, '被锁果冻数量', blocked.length)
//如果没有果冻,直接回调 //如果没有果冻,直接回调
if (!indexs.length && blocked.length == 0) { if (!indexs.length && blocked.length == 0) {
//标记为无果冻 //标记为无果冻
...@@ -253,7 +254,7 @@ export class AiControl { ...@@ -253,7 +254,7 @@ export class AiControl {
//果冻蔓延动画 //果冻蔓延动画
let jellySpreadAni: JellySpreadAni = Pool.takeOut(RecoverName.JELLYSPREAD_ANI) let jellySpreadAni: JellySpreadAni = Pool.takeOut(RecoverName.JELLYSPREAD_ANI)
if (!jellySpreadAni) { if (!jellySpreadAni) {
jellySpreadAni = new JellySpreadAni() jellySpreadAni = new JellySpreadAni();
} }
thisObj.addChild(jellySpreadAni); thisObj.addChild(jellySpreadAni);
//起始元素 //起始元素
...@@ -265,6 +266,8 @@ export class AiControl { ...@@ -265,6 +266,8 @@ export class AiControl {
//对后续有影响的数据必须提交更新,视图不对就隐藏先,动画里加上对应视图,动画播放回调里去掉动画视图,显示数据视图; //对后续有影响的数据必须提交更新,视图不对就隐藏先,动画里加上对应视图,动画播放回调里去掉动画视图,显示数据视图;
//将终点元素变成果冻,, //将终点元素变成果冻,,
endEle.reset(ElementType.JELLY); endEle.reset(ElementType.JELLY);
if (fromEle.isMonsterJelly)
endEle.isMonsterJelly = true;
//隐藏元素 //隐藏元素
fromEle.visible = false; fromEle.visible = false;
endEle.visible = false; endEle.visible = false;
...@@ -277,7 +280,7 @@ export class AiControl { ...@@ -277,7 +280,7 @@ export class AiControl {
endEle.visible = true; endEle.visible = true;
//执行回调 //执行回调
callback() callback()
}) }, fromEle.isMonsterJelly)
} }
/** /**
* 鸡蛋得孵化逻辑 * 鸡蛋得孵化逻辑
...@@ -728,7 +731,7 @@ function judgeActionIndex(index: number, lattices: Lattice[]): number { ...@@ -728,7 +731,7 @@ function judgeActionIndex(index: number, lattices: Lattice[]): number {
var rand = Math.floor(Math.random() * arr.length); var rand = Math.floor(Math.random() * arr.length);
var i = arr.splice(rand, 1)[0]; var i = arr.splice(rand, 1)[0];
if (Tool.judgeBaseEle(lattices[i]) && if (Tool.judgeBaseEle(lattices[i]) &&
!lattices[i].element.hasAnyState()) { !lattices[i].element.hasAnyState() && !lattices[i].element.candy) {
return i return i
} }
} }
......
{ {
"success": 1, "success": 0,
"code": "600074", "code": "600074",
"desc": "用户未达到回归奖励领取条件", "desc": "用户未达到回归奖励领取条件",
"timestamp": 1578472496421, "timestamp": 1578472496421,
......
...@@ -1512,6 +1512,131 @@ ...@@ -1512,6 +1512,131 @@
"levelNum": 300, "levelNum": 300,
"maxScore": 47440, "maxScore": 47440,
"stars": 1 "stars": 1
},
{
"levelNum": 301,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 302,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 303,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 304,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 305,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 306,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 307,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 308,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 309,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 310,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 311,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 312,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 313,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 314,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 315,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 316,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 317,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 318,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 319,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 320,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 321,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 322,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 323,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 324,
"maxScore": 47440,
"stars": 1
},
{
"levelNum": 325,
"maxScore": 47440,
"stars": 1
} }
], ],
"remainProp": [ "remainProp": [
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment