Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xiaoxiaole
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wildfirecode13
xiaoxiaole
Commits
f1902476
Commit
f1902476
authored
Mar 30, 2020
by
wildfirecode
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'hotfix20200330_'
parents
45610744
8c398db0
Changes
30
Show whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
1268 additions
and
147 deletions
+1268
-147
index.html
egret/index.html
+1
-1
MainBase.ts
egret/libs/new_wx/MainBase.ts
+2
-0
ele38.png
egret/resource/assets/mainScene/ele38.png
+0
-0
ele39.png
egret/resource/assets/mainScene/ele39.png
+0
-0
canno.svga
egret/resource/assets/svgas/canno.svga
+0
-0
canno1.svga
egret/resource/assets/svgas/canno1.svga
+0
-0
cannoblock.svga
egret/resource/assets/svgas/cannoblock.svga
+0
-0
cannofire.svga
egret/resource/assets/svgas/cannofire.svga
+0
-0
cannofire1.svga
egret/resource/assets/svgas/cannofire1.svga
+0
-0
cannolight.svga
egret/resource/assets/svgas/cannolight.svga
+0
-0
cannoparticle.svga
egret/resource/assets/svgas/cannoparticle.svga
+0
-0
loading_animals.svga
egret/resource/assets/svgas/loading_animals.svga
+0
-0
default.res.json
egret/resource/default.res.json
+11
-1
MainScene.ts
egret/src/mainScene/MainScene.ts
+534
-52
doSandAI.ts
egret/src/mainScene/doSandAI.ts
+1
-1
Tool.ts
egret/src/something/Tool.ts
+94
-7
Chapter14.ts
egret/src/something/chapters/Chapter14.ts
+13
-2
Chapter16.ts
egret/src/something/chapters/Chapter16.ts
+18
-18
Chapter17.ts
egret/src/something/chapters/Chapter17.ts
+18
-9
Chapter18.ts
egret/src/something/chapters/Chapter18.ts
+10
-9
Chapter20 copy.ts
egret/src/something/chapters/Chapter20 copy.ts
+0
-14
Chapter20.ts
egret/src/something/chapters/Chapter20.ts
+2
-1
Chapter22.ts
egret/src/something/chapters/Chapter22.ts
+110
-0
getChapter.ts
egret/src/something/chapters/getChapter.ts
+1
-1
Element.ts
egret/src/something/class/Element.ts
+181
-2
ElementConfigType.ts
egret/src/something/enum/ElementConfigType.ts
+7
-0
ElementType.ts
egret/src/something/enum/ElementType.ts
+42
-27
MapData.ts
egret/src/something/interface/MapData.ts
+5
-1
GameGuide.ts
egret/src/something/uis/GameGuide.ts
+93
-0
homemax.json
mock/happyclear/homemax.json
+125
-1
No files found.
egret/index.html
View file @
f1902476
...
@@ -19,7 +19,7 @@
...
@@ -19,7 +19,7 @@
background-color
:
#000
;
background-color
:
#000
;
background-size
:
100%
;
background-size
:
100%
;
background-position
:
center
;
background-position
:
center
;
background-image
:
url("https://yun.duiba.com.cn/db_games/activity/game/0
217/startscenebg2
.jpg")
;
background-image
:
url("https://yun.duiba.com.cn/db_games/activity/game/0
327/startscenebg
.jpg")
;
/* background-image: url("https://yun.duiba.com.cn/db_games/activity/game/1565600901/resource/assets/startScene/startscenebg.jpg"); */
/* background-image: url("https://yun.duiba.com.cn/db_games/activity/game/1565600901/resource/assets/startScene/startscenebg.jpg"); */
padding
:
0
;
padding
:
0
;
border
:
0
;
border
:
0
;
...
...
egret/libs/new_wx/MainBase.ts
View file @
f1902476
...
@@ -307,6 +307,8 @@ export default class MainBase extends eui.UILayer {
...
@@ -307,6 +307,8 @@ export default class MainBase extends eui.UILayer {
}
}
RES
.
getResAsync
(
"ele34_png"
);
RES
.
getResAsync
(
"ele34_png"
);
RES
.
getResAsync
(
"ele36_png"
);
RES
.
getResAsync
(
"ele36_png"
);
RES
.
getResAsync
(
"ele38_png"
);
RES
.
getResAsync
(
"ele39_png"
);
for
(
var
i
=
1
;
i
<=
27
;
i
++
)
{
for
(
var
i
=
1
;
i
<=
27
;
i
++
)
{
RES
.
getResAsync
(
"bonusFra"
+
i
+
"_png"
)
RES
.
getResAsync
(
"bonusFra"
+
i
+
"_png"
)
}
}
...
...
egret/resource/assets/mainScene/ele38.png
0 → 100644
View file @
f1902476
3.24 KB
egret/resource/assets/mainScene/ele39.png
0 → 100644
View file @
f1902476
7.18 KB
egret/resource/assets/svgas/canno.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/canno1.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/cannoblock.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/cannofire.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/cannofire1.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/cannolight.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/cannoparticle.svga
0 → 100644
View file @
f1902476
File added
egret/resource/assets/svgas/loading_animals.svga
View file @
f1902476
No preview for this file type
egret/resource/default.res.json
View file @
f1902476
...
@@ -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,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,ele23_png,ele25_png,ele27_png,ele26_png,ele24_png,ele22_png,chocolateMark3_png,chocolateMark1_png,chocolateFour_png,chocolateMark0_png,chocolateMark2_png,redbombParticle_png,monster_shoot_png,ele33_1_png,ele33_0_png,ele34_png,honey_png,ele36_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,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,ele23_png,ele25_png,ele27_png,ele26_png,ele24_png,ele22_png,chocolateMark3_png,chocolateMark1_png,chocolateFour_png,chocolateMark0_png,chocolateMark2_png,redbombParticle_png,monster_shoot_png,ele33_1_png,ele33_0_png,ele34_png,honey_png,ele36_png
,ele38_png,ele39_png
"
,
"name"
:
"main2"
"name"
:
"main2"
},
},
{
{
...
@@ -5101,6 +5101,16 @@
...
@@ -5101,6 +5101,16 @@
"url"
:
"assets/common/common_closebtn2.png"
,
"url"
:
"assets/common/common_closebtn2.png"
,
"type"
:
"image"
,
"type"
:
"image"
,
"name"
:
"common_closebtn2_png"
"name"
:
"common_closebtn2_png"
},
{
"url"
:
"assets/mainScene/ele39.png"
,
"type"
:
"image"
,
"name"
:
"ele39_png"
},
{
"url"
:
"assets/mainScene/ele38.png"
,
"type"
:
"image"
,
"name"
:
"ele38_png"
}
}
]
]
}
}
\ No newline at end of file
egret/src/mainScene/MainScene.ts
View file @
f1902476
...
@@ -61,7 +61,7 @@ import { Ice } from '../something/class/Ice';
...
@@ -61,7 +61,7 @@ import { Ice } from '../something/class/Ice';
import
{
Lattice
}
from
'../something/class/Lattice'
;
import
{
Lattice
}
from
'../something/class/Lattice'
;
import
{
EffectType
}
from
'../something/enum/EffectType'
;
import
{
EffectType
}
from
'../something/enum/EffectType'
;
import
{
ElementConfigType
}
from
'../something/enum/ElementConfigType'
;
import
{
ElementConfigType
}
from
'../something/enum/ElementConfigType'
;
import
{
CandyBaseElementType
,
codeMsgs
,
convertBaseElementType
,
elementMonsterResMap
,
ElementType
,
fireworksTypeMap
,
FiveBaseElementTypes
,
MonsterBaseElementType
,
monsterElementMap
,
submitTran
}
from
'../something/enum/ElementType'
;
import
{
CandyBaseElementType
,
codeMsgs
,
convertBaseElementType
,
elementMonsterResMap
,
ElementType
,
fireworksTypeMap
,
FiveBaseElementTypes
,
MonsterBaseElementType
,
monsterElementMap
,
submitTran
,
connoDirection
,
forwardDirection
}
from
'../something/enum/ElementType'
;
import
{
isIce
,
isSpecialLattice
,
isSand
,
isBlock
}
from
'../something/enum/LatticeType'
;
import
{
isIce
,
isSpecialLattice
,
isSand
,
isBlock
}
from
'../something/enum/LatticeType'
;
import
{
PassType
}
from
'../something/enum/PassType'
;
import
{
PassType
}
from
'../something/enum/PassType'
;
import
{
RecoverName
}
from
'../something/enum/RecoverName'
;
import
{
RecoverName
}
from
'../something/enum/RecoverName'
;
...
@@ -268,6 +268,12 @@ export default class MainScene extends Scene {
...
@@ -268,6 +268,12 @@ export default class MainScene extends Scene {
private
_steps
:
number
;
private
_steps
:
number
;
private
stepNumber
:
StepNumber
;
private
stepNumber
:
StepNumber
;
//新增炮台,地图上所有的炮台
cannoArr
:
Array
<
{
idx
:
number
,
ele
:
Element
}
>
=
[];
//每个炮台对应的特效
cannoEffect
:
Array
<
any
>
=
[];
//准备发射的炮台
readyCannoArr
:
number
[]
=
[];
get
steps
():
number
{
get
steps
():
number
{
return
this
.
_steps
return
this
.
_steps
}
}
...
@@ -407,16 +413,26 @@ export default class MainScene extends Scene {
...
@@ -407,16 +413,26 @@ export default class MainScene extends Scene {
var
svgas
=
[
"amazing"
,
"great"
,
"wonderful"
,
"bonusTime"
];
var
svgas
=
[
"amazing"
,
"great"
,
"wonderful"
,
"bonusTime"
];
//如果有节日的加
//如果有节日的加
if
(
this
.
festivalTarget
)
svgas
.
push
(
"redBombLight"
);
if
(
this
.
festivalTarget
)
svgas
.
push
(
"redBombLight"
);
//到时候用炮台石头的替换todo
svgas
.
push
(
"cannoblock"
);
for
(
let
i
=
0
;
i
<
svgas
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
svgas
.
length
;
i
++
)
{
if
(
movieClips
[
svgas
[
i
]])
continue
;
if
(
movieClips
[
svgas
[
i
]])
continue
;
let
mvname
=
svgas
[
i
];
svgaParser
.
load
(
resPath
+
'resource/assets/svgas/'
+
svgas
[
i
]
+
".svga"
,
(
videoItem
)
=>
{
svgaParser
.
load
(
resPath
+
'resource/assets/svgas/'
+
svgas
[
i
]
+
".svga"
,
(
videoItem
)
=>
{
var
mv
=
new
window
[
"SVGA"
].
EgretMovieClip
(
videoItem
);
var
mv
=
new
window
[
"SVGA"
].
EgretMovieClip
(
videoItem
);
mv
.
lockStep
=
true
;
mv
.
lockStep
=
true
;
if
(
svgas
[
i
]
==
"cannoblock"
){
// console.log("石头破裂动画",mv);
}
if
(
svgas
[
i
]
!=
"bonusTime"
)
{
if
(
svgas
[
i
]
!=
"bonusTime"
)
{
mv
.
x
=
(
750
-
520
)
/
2
;
mv
.
x
=
(
750
-
520
)
/
2
;
mv
.
y
=
500
;
mv
.
y
=
500
;
}
}
mv
.
stop
();
mv
.
stop
();
movieClips
[
svgas
[
i
]]
=
mv
;
let
fun
;
let
fun
;
mv
.
addEventListener
(
egret
.
Event
.
COMPLETE
,
fun
=
function
(
e
)
{
mv
.
addEventListener
(
egret
.
Event
.
COMPLETE
,
fun
=
function
(
e
)
{
e
.
target
.
stop
()
e
.
target
.
stop
()
...
@@ -424,12 +440,144 @@ export default class MainScene extends Scene {
...
@@ -424,12 +440,144 @@ export default class MainScene extends Scene {
e
.
target
.
parent
.
removeChild
(
e
.
target
)
e
.
target
.
parent
.
removeChild
(
e
.
target
)
}
}
},
this
)
},
this
)
movieClips
[
svgas
[
i
]]
=
mv
;
},
function
(
error
)
{
},
function
(
error
)
{
// alert(error.message);
// alert(error.message);
})
})
}
}
}
}
/**
* 一个炮台有三个附属动画
*/
initCannoSvgas
(
arr
:
Array
<
{
idx
:
number
,
ele
:
Element
}
>
){
var
resPath
=
getResPath
();
this
.
cannoEffect
=
new
Array
();
if
(
!
svgaParser
)
svgaParser
=
new
window
[
"SVGA"
].
Parser
();
var
svgas
=
[
"cannofire1"
,
"cannolight"
,
"cannoparticle"
];
//新增大炮的动画
for
(
let
i
=
0
;
i
<
arr
.
length
;
i
++
){
let
icanno
:
Element
=
arr
[
i
].
ele
;
let
icannodir
:
forwardDirection
=
icanno
.
_cannoDir
;
let
icannolpos
=
Tool
.
getPositionByIndex
(
arr
[
i
].
idx
);
let
icannowpos
=
this
.
elementContainer
.
localToGlobal
(
icannolpos
[
0
],
icannolpos
[
1
]);
let
icannobox
:
eui
.
Group
=
new
eui
.
Group
;
let
icannoboxwid
:
number
=
116
;
let
icannoboxhei
:
number
=
116
;
icannobox
.
width
=
icannoboxwid
;
icannobox
.
height
=
icannoboxhei
;
icannobox
.
anchorOffsetX
=
icannoboxwid
/
2
;
icannobox
.
anchorOffsetY
=
icannoboxhei
/
2
;
let
effectobj
=
{};
this
.
cannoEffect
[
i
]
=
effectobj
;
this
.
cannoEffect
[
i
][
"box"
]
=
icannobox
;
this
.
addChild
(
icannobox
);
icannobox
.
x
=
icannowpos
.
x
;
icannobox
.
y
=
icannowpos
.
y
;
let
roanum
=
Tool
.
getCannoRoaByDir
(
icannodir
);
icannobox
.
touchEnabled
=
false
;
icannobox
.
touchThrough
=
true
;
icannobox
.
rotation
=
roanum
;
for
(
let
j
=
0
;
j
<
svgas
.
length
;
j
++
){
let
jsvgname
=
svgas
[
j
];
svgaParser
.
load
(
resPath
+
'resource/assets/svgas/'
+
jsvgname
+
".svga"
,
(
videoItem
)
=>
{
let
mv
=
new
window
[
"SVGA"
].
EgretMovieClip
(
videoItem
);
// mv.lockStep = true;
mv
.
gotoAndStop
(
1
);
mv
[
"cannoidx"
]
=
i
;
if
(
jsvgname
==
"cannofire1"
){
var
mvwidth
=
1009
;
var
mvheight
=
100
;
mv
.
x
=
icannoboxwid
-
8
;
mv
.
y
=
(
icannoboxhei
-
mvwidth
)
+
180
;
mv
.
rotation
=
90
;
// console.log("cannofireTotal-------",mv,mv.totalFrames);
mv
.
addEventListener
(
egret
.
Event
.
ENTER_FRAME
,
this
.
listenCnfire
,
this
);
}
else
if
(
jsvgname
==
"cannolight"
){
var
mvwidth
=
400
;
var
mvheight
=
400
;
mv
.
x
=
(
icannoboxwid
-
mvwidth
)
/
2
;
mv
.
y
=
(
icannoboxhei
-
mvheight
)
/
2
;
// console.log("cannolight-------",mv. totalFrames);
mv
.
addEventListener
(
egret
.
Event
.
ENTER_FRAME
,
this
.
listenCnlight
,
this
);
}
else
if
(
jsvgname
==
"cannoparticle"
){
mv
.
x
=
icannoboxwid
;
mv
.
y
=
-
icannoboxhei
/
2
;
mv
.
rotation
=
90
;
// console.log("cannoparticle-------",mv. totalFrames);
mv
.
addEventListener
(
egret
.
Event
.
ENTER_FRAME
,
this
.
listenCnparticle
,
this
);
}
this
.
cannoEffect
[
i
][
jsvgname
]
=
mv
;
},
function
(
error
){
console
.
log
(
"炮台svg加载失败"
,
jsvgname
);
})
}
}
}
listenCnfire
(
e
){
var
target
=
e
.
target
;
var
curframe
=
target
.
currentFrame
;
if
(
curframe
>=
30
){
// console.log("fire播放完成",target["cannoidx"]);
target
.
gotoAndStop
(
1
);
if
(
target
.
parent
){
target
.
parent
.
removeChild
(
target
);
}
}
else
if
(
curframe
==
25
){
var
icannoidx
=
target
[
"cannoidx"
];
var
icanno
=
this
.
cannoArr
[
icannoidx
].
ele
;
this
.
callBackFireCanno
(
icanno
);
}
}
listenCnlight
(
e
){
var
target
=
e
.
target
;
var
curframe
=
target
.
currentFrame
;
if
(
curframe
>=
28
){
// console.log("light播放完成",target["cannoidx"]);
target
.
gotoAndStop
(
1
);
if
(
target
.
parent
){
target
.
parent
.
removeChild
(
target
);
}
var
icannoidx
=
target
[
"cannoidx"
];
var
icanno
=
this
.
cannoArr
[
icannoidx
].
ele
;
var
anmstat
=
icanno
.
_cannoStat
;
icanno
.
changeMvPlay
(
anmstat
);
}
}
listenCnparticle
(
e
){
var
target
=
e
.
target
;
var
curframe
=
target
.
currentFrame
;
if
(
curframe
>=
98
){
// console.log("particle播放完成",target["cannoidx"]);
target
.
gotoAndStop
(
1
);
if
(
target
.
parent
){
target
.
parent
.
removeChild
(
target
);
}
}
else
if
(
curframe
==
60
){
var
icannoidx
=
target
[
"cannoidx"
];
this
.
selectPlayCannoEffect
(
icannoidx
,
"cannofire1"
);
}
}
selectPlayCannoFire
(
idx
:
number
){
var
arridx
=
this
.
getCannoArrByIdx
(
idx
);
this
.
selectPlayCannoEffect
(
arridx
,
"cannofire1"
);
}
/**
* 播放炮台动画
*/
selectPlayCannoEffect
(
idx
:
number
,
name
:
string
){
if
(
this
.
cannoEffect
&&
this
.
cannoEffect
[
idx
]
&&
this
.
cannoEffect
[
idx
][
name
]){
if
(
!
this
.
cannoEffect
[
idx
][
name
].
visible
){
this
.
cannoEffect
[
idx
][
name
].
visible
=
true
;
}
this
.
cannoEffect
[
idx
][
"box"
].
addChild
(
this
.
cannoEffect
[
idx
][
name
]);
this
.
cannoEffect
[
idx
][
name
].
gotoAndPlay
(
1
,
1
);
}
}
//初始化界面ui,,道具弄在这里s
//初始化界面ui,,道具弄在这里s
initUi
()
{
initUi
()
{
...
@@ -734,6 +882,7 @@ export default class MainScene extends Scene {
...
@@ -734,6 +882,7 @@ export default class MainScene extends Scene {
//初始化地图元素
//初始化地图元素
initElement
()
{
initElement
()
{
this
.
cannoArr
=
new
Array
();
//没有就根据地图格子随机元素
//没有就根据地图格子随机元素
var
elements
=
this
.
chapterData
.
map
.
elements
||
Tool
.
setNumber01
(
this
.
chapterData
.
map
.
lattices
.
slice
());
var
elements
=
this
.
chapterData
.
map
.
elements
||
Tool
.
setNumber01
(
this
.
chapterData
.
map
.
lattices
.
slice
());
for
(
var
i
=
0
;
i
<
elements
.
length
;
i
++
)
{
for
(
var
i
=
0
;
i
<
elements
.
length
;
i
++
)
{
...
@@ -865,12 +1014,37 @@ export default class MainScene extends Scene {
...
@@ -865,12 +1014,37 @@ export default class MainScene extends Scene {
this
.
elementContainer
.
addChild
(
egg
);
this
.
elementContainer
.
addChild
(
egg
);
this
.
lattices
[
i
].
element
=
egg
;
this
.
lattices
[
i
].
element
=
egg
;
break
;
break
;
case
ElementConfigType
.
CANNO_DIR_TOP
:
case
ElementConfigType
.
CANNO_DIR_BOTTOM
:
case
ElementConfigType
.
CANNO_DIR_LEFT
:
case
ElementConfigType
.
CANNO_DIR_RIGHT
:
let
canno
:
Element
=
Tool
.
getElement
(
ElementType
.
CANNO
);
canno
.
x
=
p
[
0
];
canno
.
y
=
p
[
1
];
this
.
elementContainer
.
addChild
(
canno
);
this
.
lattices
[
i
].
element
=
canno
;
this
.
cannoArr
.
push
({
idx
:
i
,
ele
:
canno
});
var
dirType
=
Tool
.
getCannoDir
(
elements
[
i
]);
canno
.
resetToCannoView
(
dirType
,
this
);
break
;
case
ElementConfigType
.
CANNO_BLOCK
:
let
canno_block
:
Element
=
Tool
.
getElement
(
ElementType
.
CANNO_BLOCK
);
canno_block
.
x
=
p
[
0
];
canno_block
.
y
=
p
[
1
];
this
.
elementContainer
.
addChild
(
canno_block
);
this
.
lattices
[
i
].
element
=
canno_block
;
break
;
default
:
default
:
//其他标识按空元素记
//其他标识按空元素记
this
.
emptys
.
push
(
i
);
this
.
emptys
.
push
(
i
);
break
break
}
}
}
}
this
.
initCannoSvgas
(
this
.
cannoArr
);
// console.log("关卡大炮配置",this.cannoArr);
}
}
//重置基础元素及特效类型
//重置基础元素及特效类型
...
@@ -887,6 +1061,7 @@ export default class MainScene extends Scene {
...
@@ -887,6 +1061,7 @@ export default class MainScene extends Scene {
if
(
!
Tool
.
judgeBaseEle
(
this
.
lattices
[
i
])
&&
!
isCandyEle
&&
!
isMonsterEle
)
continue
;
if
(
!
Tool
.
judgeBaseEle
(
this
.
lattices
[
i
])
&&
!
isCandyEle
&&
!
isMonsterEle
)
continue
;
//是0,跳过
//是0,跳过
if
(
!
baseElement
&&
!
isCandyEle
&&
!
isMonsterEle
)
continue
if
(
!
baseElement
&&
!
isCandyEle
&&
!
isMonsterEle
)
continue
const
ele
:
Element
=
this
.
lattices
[
i
].
element
;
const
ele
:
Element
=
this
.
lattices
[
i
].
element
;
if
(
isCandyEle
)
{
//糖果元素
if
(
isCandyEle
)
{
//糖果元素
if
(
baseElement
==
CandyBaseElementType
.
RANDOM
)
{
//如果是随机糖果,目前只有随机糖果
if
(
baseElement
==
CandyBaseElementType
.
RANDOM
)
{
//如果是随机糖果,目前只有随机糖果
...
@@ -924,7 +1099,7 @@ export default class MainScene extends Scene {
...
@@ -924,7 +1099,7 @@ export default class MainScene extends Scene {
//初始化引导,游戏和道具
//初始化引导,游戏和道具
initGuide
()
{
initGuide
()
{
//游戏引导
//游戏引导
const
gameGuideChapterNum
=
[
1
,
2
,
3
,
5
,
8
,
9
,
10
,
12
,
17
,
25
,
41
,
61
,
101
,
121
,
226
,
3
77
]
const
gameGuideChapterNum
=
[
1
,
2
,
3
,
5
,
8
,
9
,
10
,
12
,
17
,
25
,
41
,
61
,
101
,
121
,
226
,
3
01
,
331
,
377
,
406
,
426
,
453
,
501
];
if
(
gameGuideChapterNum
.
indexOf
(
this
.
chapter
>>
0
)
>
-
1
)
{
if
(
gameGuideChapterNum
.
indexOf
(
this
.
chapter
>>
0
)
>
-
1
)
{
if
(
!
readCache
(
getCacheKey
()
+
this
.
chapter
))
{
if
(
!
readCache
(
getCacheKey
()
+
this
.
chapter
))
{
this
.
gameGuide
=
new
GameGuide
(
this
);
this
.
gameGuide
=
new
GameGuide
(
this
);
...
@@ -1019,8 +1194,6 @@ export default class MainScene extends Scene {
...
@@ -1019,8 +1194,6 @@ export default class MainScene extends Scene {
this
.
soundBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_soundBtnn
,
this
)
this
.
soundBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_soundBtnn
,
this
)
this
.
musicBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_musicBtn
,
this
)
this
.
musicBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_musicBtn
,
this
)
this
.
quitBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_quitBtn
,
this
)
this
.
quitBtn
.
addEventListener
(
egret
.
TouchEvent
.
TOUCH_TAP
,
this
.
onTap_quitBtn
,
this
)
}
}
removeEvents
()
{
removeEvents
()
{
...
@@ -1126,7 +1299,13 @@ export default class MainScene extends Scene {
...
@@ -1126,7 +1299,13 @@ export default class MainScene extends Scene {
onTap_quitBtn
()
{
onTap_quitBtn
()
{
PanelCtrl
.
instance
.
show
(
"quit"
,
{
level
:
this
.
chapter
});
PanelCtrl
.
instance
.
show
(
"quit"
,
{
level
:
this
.
chapter
});
}
}
// testchangeShow(num:number){
// var cannoele = this.cannoArr[0].ele;
// var cur = cannoele.cannoMoveClip.currentFrame;
// cur += num*10;
// cannoele.cannoMoveClip.gotoAndStop(cur);
// console.log(cannoele.cannoMoveClip.currentFrame);
// }
onTap_boomBtn
()
{
onTap_boomBtn
()
{
NetManager
.
ins
.
clickLog
(
getlogItem
(
7
));
NetManager
.
ins
.
clickLog
(
getlogItem
(
7
));
if
(
this
.
propBtnCon
.
boomBtn
.
propNumShow
.
count
<=
0
)
{
if
(
this
.
propBtnCon
.
boomBtn
.
propNumShow
.
count
<=
0
)
{
...
@@ -1188,6 +1367,8 @@ export default class MainScene extends Scene {
...
@@ -1188,6 +1367,8 @@ export default class MainScene extends Scene {
var
ele
=
e
.
target
.
parent
var
ele
=
e
.
target
.
parent
if
(
ele
instanceof
Element
&&
if
(
ele
instanceof
Element
&&
// ele.type != ElementType.ROCK &&
// ele.type != ElementType.ROCK &&
ele
.
type
!=
ElementType
.
CANNO
&&
ele
.
type
!=
ElementType
.
CANNO_BLOCK
&&
!
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
//石门无法消除
!
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
//石门无法消除
ele
.
type
!=
ElementType
.
LOLLIPOP
)
{
ele
.
type
!=
ElementType
.
LOLLIPOP
)
{
this
.
elementContainer
.
removeEventListener
(
egret
.
TouchEvent
.
TOUCH_BEGIN
,
fun
,
this
);
this
.
elementContainer
.
removeEventListener
(
egret
.
TouchEvent
.
TOUCH_BEGIN
,
fun
,
this
);
...
@@ -1244,21 +1425,40 @@ export default class MainScene extends Scene {
...
@@ -1244,21 +1425,40 @@ export default class MainScene extends Scene {
var
rc
=
Tool
.
indexToRc
(
index
);
var
rc
=
Tool
.
indexToRc
(
index
);
var
p
=
Tool
.
getPositionByIndex
(
index
);
var
p
=
Tool
.
getPositionByIndex
(
index
);
this
.
playAni
(
RecoverName
.
CROSS_ANI
,
p
);
this
.
playAni
(
RecoverName
.
CROSS_ANI
,
p
);
for
(
var
i
=
0
;
i
<
this
.
lattices
.
length
;
i
++
)
{
// for (var i = 0; i < this.lattices.length; i++) {
var
lat
=
this
.
lattices
[
i
];
// var lat = this.lattices[i];
if
(
Tool
.
judgeEliminate
(
lat
)
&&
(
lat
.
row
==
rc
[
0
]
||
lat
.
column
==
rc
[
1
]))
{
// if (Tool.judgeEliminate(lat) && (lat.row == rc[0] || lat.column == rc[1])) {
if
(
this
.
eliminatedElements
.
indexOf
(
i
)
==
-
1
)
{
// if (this.eliminatedElements.indexOf(i) == -1) {
this
.
eliminatedElements
.
push
(
i
);
// this.eliminatedElements.push(i);
if
(
this
.
lattices
[
i
].
element
.
type
==
ElementType
.
FISH
)
{
// if (this.lattices[i].element.type == ElementType.FISH) {
this
.
lattices
[
i
].
element
.
nextFishState
();
// this.lattices[i].element.nextFishState();
}
// }
if
(
Tool
.
judgeHasScore
(
lat
.
element
))
{
// if (Tool.judgeHasScore(lat.element)) {
// //算直线+直线LL
// this.pushScoreAni(baseScore * 1 * effectBaseTimes.LL, Tool.getPositionByIndex(i))
// }
// }
// }
// }
//新增石头阻挡
var
elimitarr
=
this
.
getEliPassCannoStone
(
rc
[
0
],
rc
[
1
]);
for
(
var
j
=
0
;
j
<
elimitarr
.
length
;
j
++
){
var
jelidx
=
elimitarr
[
j
];
var
jlat
=
this
.
lattices
[
jelidx
];
if
(
this
.
eliminatedElements
.
indexOf
(
jelidx
)
==-
1
){
this
.
eliminatedElements
.
push
(
jelidx
);
if
(
jlat
.
element
.
type
==
ElementType
.
FISH
){
jlat
.
element
.
nextFishState
();
}
if
(
Tool
.
judgeHasScore
(
jlat
.
element
)){
//算直线+直线LL
//算直线+直线LL
this
.
pushScoreAni
(
baseScore
*
1
*
effectBaseTimes
.
LL
,
Tool
.
getPositionByIndex
(
i
))
this
.
pushScoreAni
(
baseScore
*
1
*
effectBaseTimes
.
LL
,
Tool
.
getPositionByIndex
(
jelidx
))
}
}
}
}
}
}
}
setTimeout
(()
=>
{
setTimeout
(()
=>
{
this
.
_converyorTag
=
true
;
this
.
_converyorTag
=
true
;
this
.
eliminate
();
this
.
eliminate
();
...
@@ -1296,6 +1496,77 @@ export default class MainScene extends Scene {
...
@@ -1296,6 +1496,77 @@ export default class MainScene extends Scene {
}
}
},
prop
)
},
prop
)
}
}
//横向消除,不包括炮台石头
getEliHorPassCannoStone
(
row
:
number
,
col
:
number
){
var
elimitarr
:
number
[]
=
new
Array
();
//向左
for
(
var
i
=
col
;
i
>=
0
;
i
--
){
var
iemitidx
=
Tool
.
rcToIndex
(
row
,
i
);
var
lat
=
this
.
lattices
[
iemitidx
];
var
caneliminate
=
Tool
.
judgeEliminate
(
lat
);
var
iscannoblock
=
Tool
.
judgeIscannoBlock
(
lat
);
if
(
caneliminate
){
elimitarr
.
push
(
iemitidx
);
}
if
(
iscannoblock
){
break
;
}
}
//向右
for
(
var
i
=
col
;
i
<
Tool
.
colNum
;
i
++
){
var
iemitidx
=
Tool
.
rcToIndex
(
row
,
i
);
var
lat
=
this
.
lattices
[
iemitidx
];
var
caneliminate
=
Tool
.
judgeEliminate
(
lat
);
var
iscannoblock
=
Tool
.
judgeIscannoBlock
(
lat
);
if
(
caneliminate
){
elimitarr
.
push
(
iemitidx
);
}
if
(
iscannoblock
){
break
;
}
}
return
elimitarr
;
}
//竖向消除,不包括炮台石头
getEliVerPassCannoStone
(
row
:
number
,
col
:
number
){
var
elimitarr
:
number
[]
=
new
Array
();
//向上
for
(
var
i
=
row
;
i
>=
0
;
i
--
){
var
iemitidx
=
Tool
.
rcToIndex
(
i
,
col
);
var
lat
=
this
.
lattices
[
iemitidx
];
var
caneliminate
=
Tool
.
judgeEliminate
(
lat
);
var
iscannoblock
=
Tool
.
judgeIscannoBlock
(
lat
);
if
(
caneliminate
){
elimitarr
.
push
(
iemitidx
);
}
if
(
iscannoblock
){
break
;
}
}
//向下
for
(
var
i
=
row
;
i
<
Tool
.
rowNum
;
i
++
){
var
iemitidx
=
Tool
.
rcToIndex
(
i
,
col
);
var
lat
=
this
.
lattices
[
iemitidx
];
var
caneliminate
=
Tool
.
judgeEliminate
(
lat
);
var
iscannoblock
=
Tool
.
judgeIscannoBlock
(
lat
);
if
(
caneliminate
){
elimitarr
.
push
(
iemitidx
);
}
if
(
iscannoblock
){
break
;
}
}
return
elimitarr
;
}
//一般横向竖向消除,不过炮台石头
getEliPassCannoStone
(
row
:
number
,
col
:
number
){
var
elimitarr
:
number
[]
=
new
Array
();
var
elimitarrhor
=
this
.
getEliHorPassCannoStone
(
row
,
col
);
var
elimitarrver
=
this
.
getEliVerPassCannoStone
(
row
,
col
);
elimitarr
.
push
(...
elimitarrhor
);
elimitarr
.
push
(...
elimitarrver
);
return
elimitarr
;
}
mouseDownE
(
e
:
egret
.
TextEvent
)
{
mouseDownE
(
e
:
egret
.
TextEvent
)
{
// if (!this.enableTouch) return
// if (!this.enableTouch) return
...
@@ -2014,6 +2285,29 @@ export default class MainScene extends Scene {
...
@@ -2014,6 +2285,29 @@ export default class MainScene extends Scene {
this
.
pushScoreAni
(
baseScore
*
this
.
commonContinuityTimes
,
Tool
.
getPositionByIndex
(
index
))
this
.
pushScoreAni
(
baseScore
*
this
.
commonContinuityTimes
,
Tool
.
getPositionByIndex
(
index
))
}
}
}
}
// if(this.eliminatedElements.length>0){
// for(var i=0;i<this.eliminatedElements.length;i++){
// var ielimidx = this.eliminatedElements[i];
// for(var p=0;p<this.cannoArr.length;p++){
// var pcannoidx = this.cannoArr[p].idx;
// var isnext = Tool.checkNebByidx(pcannoidx,ielimidx);
// if(isnext){
// var pcannoele = this.cannoArr[p].ele;
// pcannoele.addOneCannoStat();
// var pcannostat = pcannoele.checkCannoStat();
// if(pcannostat){
// if(this.readyCannoArr.indexOf(p)==-1){
// this.readyCannoArr.push(p);
// }
// }
// }
// }
// }
// }
return
this
.
eliminatedElements
.
length
>
0
;
return
this
.
eliminatedElements
.
length
>
0
;
}
}
...
@@ -2044,7 +2338,6 @@ export default class MainScene extends Scene {
...
@@ -2044,7 +2338,6 @@ export default class MainScene extends Scene {
this
.
score
+=
scoreAll
;
this
.
score
+=
scoreAll
;
this
.
oneStepScore
+=
scoreAll
;
this
.
oneStepScore
+=
scoreAll
;
// console.log(this.score)
// console.log(this.score)
//this.eliminatedElements已为0;对有特效的特殊处理,又会添加进eliminatedElements,
//this.eliminatedElements已为0;对有特效的特殊处理,又会添加进eliminatedElements,
//必须在上面得分动效后,因为下面这波重新出现的元素要在下一次出现
//必须在上面得分动效后,因为下面这波重新出现的元素要在下一次出现
this
.
effectEliminate
(
effectIndexs
);
this
.
effectEliminate
(
effectIndexs
);
...
@@ -2074,6 +2367,27 @@ export default class MainScene extends Scene {
...
@@ -2074,6 +2367,27 @@ export default class MainScene extends Scene {
this
.
eliminate
();
this
.
eliminate
();
return
return
}
}
//炮台充能发射
var
emitcanno
:
Element
;
if
(
this
.
readyCannoArr
.
length
>
0
){
var
readyCannoIdx
=
this
.
readyCannoArr
[
0
];
emitcanno
=
this
.
cannoArr
[
readyCannoIdx
].
ele
;
}
// for(var p=0;p<this.cannoArr.length;p++){
// var pcanno = this.cannoArr[p].ele;
// var pcannostat = pcanno.checkCannoStat();
// if(pcannostat){
// emitcanno = pcanno;
// break;
// }
// }
if
(
emitcanno
){
this
.
fireCanno
(
emitcanno
);
return
;
}
if
(
this
.
_converyorTag
)
{
if
(
this
.
_converyorTag
)
{
await
doConveyorAI
(
this
);
await
doConveyorAI
(
this
);
this
.
_converyorTag
=
false
;
this
.
_converyorTag
=
false
;
...
@@ -2209,6 +2523,80 @@ export default class MainScene extends Scene {
...
@@ -2209,6 +2523,80 @@ export default class MainScene extends Scene {
})
})
}
}
//大炮发射
fireCanno
(
canno
:
Element
){
var
cannodir
=
canno
.
_cannoDir
;
var
cannorow
=
canno
.
row
;
var
cannocol
=
canno
.
column
;
var
cannoFireArr
:
number
[]
=
new
Array
();
if
(
cannodir
==
forwardDirection
.
left
){
for
(
var
i
=
cannocol
;
i
>=
0
;
i
--
){
var
iemitidx
=
Tool
.
rcToIndex
(
cannorow
,
i
);
cannoFireArr
.
push
(
iemitidx
);
}
}
else
if
(
cannodir
==
forwardDirection
.
up
){
for
(
var
i
=
cannorow
;
i
>=
0
;
i
--
){
var
iemitidx
=
Tool
.
rcToIndex
(
i
,
cannocol
);
cannoFireArr
.
push
(
iemitidx
);
}
}
else
if
(
cannodir
==
forwardDirection
.
right
){
for
(
var
i
=
cannocol
;
i
<
Tool
.
colNum
;
i
++
){
var
iemitidx
=
Tool
.
rcToIndex
(
cannorow
,
i
);
cannoFireArr
.
push
(
iemitidx
);
}
}
else
if
(
cannodir
==
forwardDirection
.
down
){
for
(
var
i
=
cannorow
;
i
<
Tool
.
rowNum
;
i
++
){
var
iemitidx
=
Tool
.
rcToIndex
(
i
,
cannocol
);
cannoFireArr
.
push
(
iemitidx
);
}
}
for
(
var
j
=
0
;
j
<
cannoFireArr
.
length
;
j
++
){
var
jemitidx
=
cannoFireArr
[
j
];
var
lat
=
this
.
lattices
[
jemitidx
];
var
caneliminate
=
Tool
.
judgeEliminate
(
lat
);
var
iscannoblock
=
Tool
.
judgeIscannoBlock
(
lat
);
if
(
lat
&&
(
caneliminate
||
iscannoblock
)){
if
(
this
.
eliminatedElements
.
indexOf
(
jemitidx
)
==-
1
){
this
.
eliminatedElements
.
push
(
jemitidx
);
}
//加分
if
(
iscannoblock
){
// console.log("炮台石头消除");
break
;
}
}
}
canno
.
fireCanno
();
var
cannoidx
=
canno
.
index
;
var
cannoarridx
=
this
.
getCannoArrByIdx
(
cannoidx
);
// this.selectPlayCannoEffect(cannoarridx,"cannoparticle");
// setTimeout(()=>{
// this.eliminate();
// this.readyCannoArr.shift();
// canno.resetCannoStat();
// },200);
}
getCannoArrByIdx
(
cannoidx
:
number
){
var
arridx
:
number
=
0
;
for
(
var
i
=
0
;
i
<
this
.
cannoArr
.
length
;
i
++
){
var
icannoidx
=
this
.
cannoArr
[
i
].
idx
;
if
(
icannoidx
==
cannoidx
){
arridx
=
i
;
break
;
}
}
return
arridx
;
}
/**
* 炮台发射完毕,开始炮台消除
*/
callBackFireCanno
(
canno
:
Element
){
this
.
eliminate
();
this
.
readyCannoArr
.
shift
();
canno
.
resetCannoStat
();
}
checkAllBlock
()
{
checkAllBlock
()
{
// this.lattices.filter(item => item.block).forEach((item) => {
// this.lattices.filter(item => item.block).forEach((item) => {
// item.block.nextState();
// item.block.nextState();
...
@@ -2377,19 +2765,37 @@ export default class MainScene extends Scene {
...
@@ -2377,19 +2765,37 @@ export default class MainScene extends Scene {
this
.
recoverEle
(
one
)
this
.
recoverEle
(
one
)
this
.
recoverEle
(
two
)
this
.
recoverEle
(
two
)
//添加消除元素two,同行或同列
//添加消除元素two,同行或同列
for
(
var
i
=
0
;
i
<
this
.
lattices
.
length
;
i
++
)
{
// for (var i = 0; i < this.lattices.length; i++) {
var
lat
=
this
.
lattices
[
i
];
// var lat = this.lattices[i];
if
(
Tool
.
judgeEliminate
(
lat
)
&&
(
lat
.
row
==
lat1
.
row
||
lat
.
column
==
lat1
.
column
))
{
// if (Tool.judgeEliminate(lat) && (lat.row == lat1.row || lat.column == lat1.column)) {
if
(
this
.
eliminatedElements
.
indexOf
(
i
)
==
-
1
)
this
.
eliminatedElements
.
push
(
i
);
// if (this.eliminatedElements.indexOf(i) == -1) this.eliminatedElements.push(i);
if
(
this
.
lattices
[
i
].
element
.
type
==
ElementType
.
FISH
)
{
// if (this.lattices[i].element.type == ElementType.FISH) {
this
.
lattices
[
i
].
element
.
nextFishState
();
// this.lattices[i].element.nextFishState();
}
// }
if
(
Tool
.
judgeHasScore
(
lat
.
element
))
{
// if (Tool.judgeHasScore(lat.element)) {
// //线与线
// this.pushScoreAni(baseScore * this.effectContinuityTimes * effectBaseTimes.LL, Tool.getPositionByIndex(i))
// }
// }
// }
//新增石头阻挡
var
elimitarr
=
this
.
getEliPassCannoStone
(
lat1
.
row
,
lat1
.
column
);
for
(
var
j
=
0
;
j
<
elimitarr
.
length
;
j
++
){
var
jelidx
=
elimitarr
[
j
];
var
jlat
=
this
.
lattices
[
jelidx
];
if
(
this
.
eliminatedElements
.
indexOf
(
jelidx
)
==-
1
){
this
.
eliminatedElements
.
push
(
jelidx
);
if
(
jlat
.
element
.
type
==
ElementType
.
FISH
){
jlat
.
element
.
nextFishState
();
}
if
(
Tool
.
judgeHasScore
(
jlat
.
element
)){
//线与线
//线与线
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
.
LL
,
Tool
.
getPositionByIndex
(
i
))
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
.
LL
,
Tool
.
getPositionByIndex
(
jelidx
));
}
}
}
}
}
}
}
}
//一个方向,一个爆炸
//一个方向,一个爆炸
else
if
((
ele1
.
effectType
<
2
||
ele2
.
effectType
<
2
)
&&
else
if
((
ele1
.
effectType
<
2
||
ele2
.
effectType
<
2
)
&&
...
@@ -2634,6 +3040,10 @@ export default class MainScene extends Scene {
...
@@ -2634,6 +3040,10 @@ export default class MainScene extends Scene {
//统一逻辑,个数等,都进里面
//统一逻辑,个数等,都进里面
this
.
removeFestivalEleSmall
(
index
);
this
.
removeFestivalEleSmall
(
index
);
}
}
//炮台石头
else
if
(
ele
.
type
==
ElementType
.
CANNO_BLOCK
){
this
.
removeCannoBlock
(
index
);
}
}
}
}
}
//从消除列表移除
//从消除列表移除
...
@@ -2722,18 +3132,33 @@ export default class MainScene extends Scene {
...
@@ -2722,18 +3132,33 @@ export default class MainScene extends Scene {
//动画移除自己
//动画移除自己
this
.
playAni
(
RecoverName
.
HORIZONTAL_ANI
,
p
);
this
.
playAni
(
RecoverName
.
HORIZONTAL_ANI
,
p
);
this
.
recoverEle
(
index
);
this
.
recoverEle
(
index
);
for
(
var
i
=
0
;
i
<
Tool
.
colNum
;
i
++
)
{
// for (var i = 0; i < Tool.colNum; i++) {
var
ein
=
Tool
.
rcToIndex
(
row
,
i
);
// var ein = Tool.rcToIndex(row, i);
if
(
Tool
.
judgeEliminate
(
this
.
lattices
[
ein
]))
{
// if (Tool.judgeEliminate(this.lattices[ein])) {
if
(
this
.
eliminatedElements
.
indexOf
(
ein
)
<
0
&&
effectIndexs
.
indexOf
(
ein
)
<
0
)
{
// if (this.eliminatedElements.indexOf(ein) < 0 && effectIndexs.indexOf(ein) < 0) {
this
.
eliminatedElements
.
push
(
ein
);
// this.eliminatedElements.push(ein);
if
(
this
.
lattices
[
ein
].
element
.
type
==
ElementType
.
FISH
)
{
// if (this.lattices[ein].element.type == ElementType.FISH) {
this
.
lattices
[
ein
].
element
.
nextFishState
();
// this.lattices[ein].element.nextFishState();
}
// }
//加分
// //加分
if
(
Tool
.
judgeHasScore
(
this
.
lattices
[
ein
].
element
))
{
// if (Tool.judgeHasScore(this.lattices[ein].element)) {
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
[
"0"
],
Tool
.
getPositionByIndex
(
ein
))
// this.pushScoreAni(baseScore * this.effectContinuityTimes * effectBaseTimes["0"], Tool.getPositionByIndex(ein))
// }
// }
// }
// }
//新增石头阻挡
var
elimitarr
=
this
.
getEliHorPassCannoStone
(
row
,
lat
.
column
);
for
(
var
j1
=
0
;
j1
<
elimitarr
.
length
;
j1
++
){
var
jelidx
=
elimitarr
[
j1
];
var
jlat
=
this
.
lattices
[
jelidx
];
if
(
this
.
eliminatedElements
.
indexOf
(
jelidx
)
==-
1
&&
effectIndexs
.
indexOf
(
jelidx
)
==-
1
){
this
.
eliminatedElements
.
push
(
jelidx
);
if
(
jlat
.
element
.
type
==
ElementType
.
FISH
){
jlat
.
element
.
nextFishState
();
}
}
if
(
Tool
.
judgeHasScore
(
jlat
.
element
)){
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
[
"0"
],
Tool
.
getPositionByIndex
(
jelidx
));
}
}
}
}
}
}
...
@@ -2744,18 +3169,32 @@ export default class MainScene extends Scene {
...
@@ -2744,18 +3169,32 @@ export default class MainScene extends Scene {
//动画移除自己
//动画移除自己
this
.
playAni
(
RecoverName
.
VERTICAL_ANI
,
p
);
this
.
playAni
(
RecoverName
.
VERTICAL_ANI
,
p
);
this
.
recoverEle
(
index
);
this
.
recoverEle
(
index
);
for
(
var
i
=
0
;
i
<
Tool
.
rowNum
;
i
++
)
{
// for (var i = 0; i < Tool.rowNum; i++) {
var
ein
=
Tool
.
rcToIndex
(
i
,
col
);
// var ein = Tool.rcToIndex(i, col);
if
(
Tool
.
judgeEliminate
(
this
.
lattices
[
ein
]))
{
// if (Tool.judgeEliminate(this.lattices[ein])) {
if
(
this
.
eliminatedElements
.
indexOf
(
ein
)
<
0
&&
effectIndexs
.
indexOf
(
ein
)
<
0
)
{
// if (this.eliminatedElements.indexOf(ein) < 0 && effectIndexs.indexOf(ein) < 0) {
this
.
eliminatedElements
.
push
(
ein
);
// this.eliminatedElements.push(ein);
if
(
this
.
lattices
[
ein
].
element
.
type
==
ElementType
.
FISH
)
{
// if (this.lattices[ein].element.type == ElementType.FISH) {
this
.
lattices
[
ein
].
element
.
nextFishState
();
// this.lattices[ein].element.nextFishState();
}
// }
//加分
// //加分
if
(
Tool
.
judgeHasScore
(
this
.
lattices
[
ein
].
element
))
{
// if (Tool.judgeHasScore(this.lattices[ein].element)) {
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
[
"1"
],
Tool
.
getPositionByIndex
(
ein
))
// this.pushScoreAni(baseScore * this.effectContinuityTimes * effectBaseTimes["1"], Tool.getPositionByIndex(ein))
// }
// }
// }
// }
var
elimitarr
=
this
.
getEliVerPassCannoStone
(
lat
.
row
,
col
);
for
(
var
j1
=
0
;
j1
<
elimitarr
.
length
;
j1
++
){
var
jelidx
=
elimitarr
[
j1
];
var
jlat
=
this
.
lattices
[
jelidx
];
if
(
this
.
eliminatedElements
.
indexOf
(
jelidx
)
==-
1
&&
effectIndexs
.
indexOf
(
jelidx
)
==-
1
){
this
.
eliminatedElements
.
push
(
jelidx
);
if
(
jlat
.
element
.
type
==
ElementType
.
FISH
){
jlat
.
element
.
nextFishState
();
}
}
if
(
Tool
.
judgeHasScore
(
jlat
.
element
)){
this
.
pushScoreAni
(
baseScore
*
this
.
effectContinuityTimes
*
effectBaseTimes
[
"1"
],
Tool
.
getPositionByIndex
(
jelidx
));
}
}
}
}
}
}
...
@@ -3283,7 +3722,26 @@ export default class MainScene extends Scene {
...
@@ -3283,7 +3722,26 @@ export default class MainScene extends Scene {
//播放动效
//播放动效
this
.
playAni
(
RecoverName
.
ROCK_ANI
,
Tool
.
getPositionByIndex
(
index
))
this
.
playAni
(
RecoverName
.
ROCK_ANI
,
Tool
.
getPositionByIndex
(
index
))
}
}
/**
* 炮台石头的动效
*/
removeCannoBlock
(
index
:
number
){
this
.
removeOperation
(
index
);
//炮台石头的动效
var
blockmv
=
movieClips
[
"cannoblock"
];
if
(
blockmv
){
console
.
log
(
"播放炮台石头的动效"
);
var
blpos
=
Tool
.
getPositionByIndex
(
index
);
var
bwpos
=
this
.
elementContainer
.
localToGlobal
(
blpos
[
0
],
blpos
[
1
]);
var
blockwid
=
112
;
var
blockhei
=
97
;
blockmv
.
x
=
bwpos
.
x
-
blockwid
-
5
;
blockmv
.
y
=
bwpos
.
y
-
35
;
this
.
addChild
(
blockmv
);
// blockmv.gotoAndStop(1);
blockmv
.
gotoAndPlay
(
1
,
1
);
}
}
/**
/**
* 果冻的移除,包括动效
* 果冻的移除,包括动效
* @param index
* @param index
...
@@ -3360,6 +3818,7 @@ export default class MainScene extends Scene {
...
@@ -3360,6 +3818,7 @@ export default class MainScene extends Scene {
if
(
!
this
.
lattices
[
index
]
||
!
this
.
lattices
[
index
].
element
)
return
null
if
(
!
this
.
lattices
[
index
]
||
!
this
.
lattices
[
index
].
element
)
return
null
//先赋值指向
//先赋值指向
let
ele
=
this
.
lattices
[
index
].
element
;
let
ele
=
this
.
lattices
[
index
].
element
;
//添加进emptys
//添加进emptys
this
.
emptys
.
push
(
index
)
this
.
emptys
.
push
(
index
)
//从容器移除
//从容器移除
...
@@ -3369,6 +3828,29 @@ export default class MainScene extends Scene {
...
@@ -3369,6 +3828,29 @@ export default class MainScene extends Scene {
//置空格子的element,
//置空格子的element,
this
.
lattices
[
index
].
element
=
null
;
this
.
lattices
[
index
].
element
=
null
;
//返回下,有地方要用
//返回下,有地方要用
//炮台充能
// console.log("消除元素类型",eletype,eleffectype);
for
(
let
p
=
0
;
p
<
this
.
cannoArr
.
length
;
p
++
){
let
pcannoidx
=
this
.
cannoArr
[
p
].
idx
;
var
isnext
=
Tool
.
checkNebByidx
(
pcannoidx
,
index
);
if
(
isnext
&&
Tool
.
judgeChosen
(
ele
)){
var
pcannoele
=
this
.
cannoArr
[
p
].
ele
;
var
lastpcannostatnum
:
number
=
pcannoele
.
_cannoStat
pcannoele
.
addOneCannoStat
();
var
newpcannostatnum
:
number
=
pcannoele
.
_cannoStat
if
(
newpcannostatnum
>
lastpcannostatnum
){
// console.log('炮台充能------'+p,lastpcannostatnum,newpcannostatnum);
this
.
selectPlayCannoEffect
(
p
,
"cannolight"
);
}
var
pcannostat
=
pcannoele
.
checkCannoStat
();
if
(
pcannostat
){
if
(
this
.
readyCannoArr
.
indexOf
(
p
)
==-
1
){
this
.
readyCannoArr
.
push
(
p
);
}
}
}
}
return
ele
return
ele
}
}
...
...
egret/src/mainScene/doSandAI.ts
View file @
f1902476
...
@@ -16,7 +16,7 @@ export default async (thisObj: MainScene) => {
...
@@ -16,7 +16,7 @@ export default async (thisObj: MainScene) => {
const
sandLattices
=
thisObj
.
lattices
.
filter
(
lattice
=>
{
const
sandLattices
=
thisObj
.
lattices
.
filter
(
lattice
=>
{
return
lattice
.
sand
;
return
lattice
.
sand
;
});
});
console
.
log
(
sandLattices
);
//
console.log(sandLattices);
//map promise
//map promise
//先判断是否能跳动,目前都能跳
//先判断是否能跳动,目前都能跳
const
promiseList
:
Promise
<
any
>
[]
=
[];
const
promiseList
:
Promise
<
any
>
[]
=
[];
...
...
egret/src/something/Tool.ts
View file @
f1902476
...
@@ -2,13 +2,14 @@ import { Element } from "./class/Element";
...
@@ -2,13 +2,14 @@ import { Element } from "./class/Element";
import
{
Lattice
}
from
"./class/Lattice"
;
import
{
Lattice
}
from
"./class/Lattice"
;
import
{
RectMask
}
from
"./class/RectMask"
;
import
{
RectMask
}
from
"./class/RectMask"
;
import
{
EffectType
}
from
"./enum/EffectType"
;
import
{
EffectType
}
from
"./enum/EffectType"
;
import
{
ElementType
,
FiveBaseElementTypes
}
from
"./enum/ElementType"
;
import
{
ElementType
,
FiveBaseElementTypes
,
forwardDirection
}
from
"./enum/ElementType"
;
import
{
RecoverName
}
from
"./enum/RecoverName"
;
import
{
RecoverName
}
from
"./enum/RecoverName"
;
import
{
StateType
}
from
"./enum/StateType"
;
import
{
StateType
}
from
"./enum/StateType"
;
import
{
FallType
}
from
"./interface/FallAniData"
;
import
{
FallType
}
from
"./interface/FallAniData"
;
import
{
GenerateLatData
}
from
"./interface/GenerateLatData"
;
import
{
GenerateLatData
}
from
"./interface/GenerateLatData"
;
import
{
Pool
}
from
"./Pool"
;
import
{
Pool
}
from
"./Pool"
;
import
HoneyPotElement
from
"./class/HoneyPotElement"
;
import
HoneyPotElement
from
"./class/HoneyPotElement"
;
import
{
ElementConfigType
}
from
"./enum/ElementConfigType"
;
//两种,0无棒棒糖,1有
//两种,0无棒棒糖,1有
const
offsetYTwo
:
number
[]
=
[];
const
offsetYTwo
:
number
[]
=
[];
...
@@ -230,6 +231,21 @@ export class Tool {
...
@@ -230,6 +231,21 @@ export class Tool {
}
}
return
false
return
false
}
}
/**
* 根据idx判断相邻
* @param a
* @param b
*/
public
static
checkNebByidx
(
a
:
number
,
b
:
number
){
var
arc
=
this
.
indexToRc
(
a
);
var
brc
=
this
.
indexToRc
(
b
);
if
(
Math
.
abs
(
arc
[
0
]
-
brc
[
0
])
==
1
&&
Math
.
abs
(
arc
[
1
]
-
brc
[
1
])
==
0
)
{
return
true
}
else
if
(
Math
.
abs
(
arc
[
0
]
-
brc
[
0
])
==
0
&&
Math
.
abs
(
arc
[
1
]
-
brc
[
1
])
==
1
)
{
return
true
}
return
false
}
/**
/**
* 数组中插入一个数值,按顺序的
* 数组中插入一个数值,按顺序的
...
@@ -281,8 +297,10 @@ export class Tool {
...
@@ -281,8 +297,10 @@ export class Tool {
lat
.
element
.
type
==
ElementType
.
JELLY_MONSTER
||
lat
.
element
.
type
==
ElementType
.
JELLY_MONSTER
||
lat
.
element
.
type
==
ElementType
.
FIREWORKS_SHOOTER
||
lat
.
element
.
type
==
ElementType
.
FIREWORKS_SHOOTER
||
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
lat
.
element
.
type
==
ElementType
.
CANNO
||
lat
.
element
.
type
==
ElementType
.
CANNO_BLOCK
)
{
)
{
return
false
return
false
}
}
...
@@ -344,7 +362,9 @@ export class Tool {
...
@@ -344,7 +362,9 @@ export class Tool {
//上方元素为冰淇淋
//上方元素为冰淇淋
else
if
(
lat
.
element
.
type
==
ElementType
.
LOLLIPOP
||
else
if
(
lat
.
element
.
type
==
ElementType
.
LOLLIPOP
||
lat
.
element
.
type
==
ElementType
.
JELLY_MONSTER
||
lat
.
element
.
type
==
ElementType
.
JELLY_MONSTER
||
lat
.
element
.
type
==
ElementType
.
FIREWORKS_SHOOTER
lat
.
element
.
type
==
ElementType
.
FIREWORKS_SHOOTER
||
lat
.
element
.
type
==
ElementType
.
CANNO
||
lat
.
element
.
type
==
ElementType
.
CANNO_BLOCK
)
{
)
{
return
false
return
false
}
}
...
@@ -353,6 +373,21 @@ export class Tool {
...
@@ -353,6 +373,21 @@ export class Tool {
return
true
return
true
}
}
}
}
/**
* 判断是否是炮台石头
* @param lat
*/
public
static
judgeIscannoBlock
(
lat
:
Lattice
){
if
(
!
lat
||!
lat
.
element
){
return
false
;
}
else
if
(
lat
.
element
.
type
==
ElementType
.
CANNO_BLOCK
){
return
true
;
}
else
{
return
false
;
}
}
/**
/**
* 判断格子上是基础元素,包括各种状态的
* 判断格子上是基础元素,包括各种状态的
...
@@ -428,7 +463,9 @@ export class Tool {
...
@@ -428,7 +463,9 @@ export class Tool {
ele
.
type
==
ElementType
.
FIREWORKS_SHOOTER
||
ele
.
type
==
ElementType
.
FIREWORKS_SHOOTER
||
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
||
ele
.
type
==
ElementType
.
CANNO
||
ele
.
type
==
ElementType
.
CANNO_BLOCK
)
{
)
{
return
false
;
return
false
;
}
}
...
@@ -454,7 +491,9 @@ export class Tool {
...
@@ -454,7 +491,9 @@ export class Tool {
ele
.
hasState
(
StateType
.
HAIRBALLGREY
)
||
ele
.
hasState
(
StateType
.
HAIRBALLGREY
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
||
ele
.
type
==
ElementType
.
CANNO
||
ele
.
type
==
ElementType
.
CANNO_BLOCK
)
{
)
{
return
false
;
return
false
;
}
}
...
@@ -474,7 +513,9 @@ export class Tool {
...
@@ -474,7 +513,9 @@ export class Tool {
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
monster
||
ele
.
monster
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
||
ele
.
type
==
ElementType
.
CANNO
||
ele
.
type
==
ElementType
.
CANNO_BLOCK
)
{
)
{
return
false
;
return
false
;
}
}
...
@@ -860,7 +901,6 @@ export class Tool {
...
@@ -860,7 +901,6 @@ export class Tool {
}
}
return
Tool
.
randomT
(
arr
);
return
Tool
.
randomT
(
arr
);
}
}
/**
/**
* 根据关卡的地图数据generateLats
* 根据关卡的地图数据generateLats
*
*
...
@@ -1177,4 +1217,51 @@ export class Tool {
...
@@ -1177,4 +1217,51 @@ export class Tool {
}
}
return
outArr
return
outArr
}
}
/**
* 判断是否是炮台
* @param type
*/
public
static
IsCanno
(
type
:
ElementConfigType
){
if
(
type
==
ElementConfigType
.
CANNO_DIR_TOP
||
type
==
ElementConfigType
.
CANNO_DIR_BOTTOM
||
type
==
ElementConfigType
.
CANNO_DIR_LEFT
||
type
==
ElementConfigType
.
CANNO_DIR_RIGHT
){
return
true
;
}
return
false
;
}
public
static
getCannoDir
(
type
:
ElementConfigType
){
if
(
type
==
ElementConfigType
.
CANNO_DIR_TOP
){
return
forwardDirection
.
up
;
}
else
if
(
type
==
ElementConfigType
.
CANNO_DIR_BOTTOM
){
return
forwardDirection
.
down
;
}
else
if
(
type
==
ElementConfigType
.
CANNO_DIR_LEFT
){
return
forwardDirection
.
left
;
}
else
if
(
type
==
ElementConfigType
.
CANNO_DIR_RIGHT
){
return
forwardDirection
.
right
;
}
else
{
console
.
error
(
"未定义跑跳"
);
}
}
//炮台的旋转朝向
public
static
getCannoRoaByDir
(
cannodir
:
forwardDirection
){
var
roaidx
:
number
;
if
(
cannodir
==
forwardDirection
.
left
){
roaidx
=
0
;
}
else
if
(
cannodir
==
forwardDirection
.
up
){
roaidx
=
1
;
}
else
if
(
cannodir
==
forwardDirection
.
right
){
roaidx
=
2
;
}
else
if
(
cannodir
==
forwardDirection
.
down
){
roaidx
=
3
;
}
var
roanum
=
[
-
90
,
0
,
90
,
180
][
roaidx
];
return
roanum
;
}
}
}
\ No newline at end of file
egret/src/something/chapters/Chapter14.ts
View file @
f1902476
...
@@ -4,7 +4,17 @@ import { ElementType } from "../enum/ElementType";
...
@@ -4,7 +4,17 @@ import { ElementType } from "../enum/ElementType";
export
const
Chapters14
:
ChapterData
[]
=
[
export
const
Chapters14
:
ChapterData
[]
=
[
//301
//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
}]
}
},
{
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
,
41
,
1
,
1
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
1
,
1
,
41
,
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
,
50
,
20
,
30
,
10
,
40
,
0
,
0
,
0
,
0
,
30
,
30
,
50
,
50
,
40
,
0
,
0
,
0
,
0
,
20
,
20
,
30
,
50
,
10
,
0
,
0
,
0
,
20
,
20
,
40
,
30
,
10
,
10
,
20
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
50
,
50
,
30
,
20
,
40
,
0
,
0
,
0
,
0
,
30
,
30
,
50
,
40
,
30
,
0
,
0
,
0
,
20
,
20
,
30
,
10
,
40
,
20
,
20
,
0
,
0
,
0
,
0
,
20
,
10
,
20
,
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
//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
}]
}
},
{
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
//303
...
@@ -64,7 +74,8 @@ export const Chapters14: ChapterData[] = [
...
@@ -64,7 +74,8 @@ export const Chapters14: ChapterData[] = [
//330
//330
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
299
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
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
,
6
,
1
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
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
],
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
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
},
{
index
:
21
,
type
:
null
},
{
index
:
22
,
type
:
null
},
{
index
:
23
,
type
:
null
},
{
index
:
37
,
type
:
null
},
{
index
:
43
,
type
:
null
},
{
index
:
54
,
type
:
null
},
{
index
:
55
,
type
:
null
},
{
index
:
61
,
type
:
null
},
{
index
:
62
,
type
:
null
}]
}
},
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
299
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
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
,
6
,
1
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
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
],
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
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
},
{
index
:
21
,
type
:
null
},
{
index
:
22
,
type
:
null
},
{
index
:
23
,
type
:
null
},
{
index
:
37
,
type
:
null
},
{
index
:
43
,
type
:
null
},
{
index
:
54
,
type
:
null
},
{
index
:
55
,
type
:
null
},
{
index
:
61
,
type
:
null
},
{
index
:
62
,
type
:
null
}]
}
},
//331
//331
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
27
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
22
,
count
:
30
},
{
type
:
24
,
count
:
30
},
{
type
:
25
,
count
:
30
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
],
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
}]
}
},
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
27
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
22
,
count
:
30
},
{
type
:
24
,
count
:
30
},
{
type
:
25
,
count
:
30
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
13
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
],
baseElements
:
[
40
,
40
,
30
,
50
,
50
,
30
,
10
,
50
,
40
,
0
,
10
,
10
,
40
,
50
,
30
,
10
,
40
,
0
,
0
,
30
,
30
,
40
,
30
,
10
,
40
,
40
,
0
,
0
,
40
,
50
,
50
,
30
,
30
,
10
,
10
,
0
,
30
,
30
,
10
,
30
,
10
,
50
,
30
,
30
,
40
,
30
,
50
,
50
,
40
,
10
,
10
,
40
,
40
,
10
,
0
,
40
,
30
,
10
,
30
,
40
,
30
,
50
,
0
,
0
,
50
,
50
,
10
,
40
,
40
,
10
,
10
,
0
,
0
,
10
,
30
,
50
,
30
,
50
,
30
,
10
,
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
}]
}
},
//332
//332
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
81
}]
},
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
,
6
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
3
,
6
,
61
,
3
,
61
,
6
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
6
,
3
,
3
,
3
,
3
,
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
,
1
,
1
,
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
,
4
,
1
,
4
,
1
,
2
,
1
,
2
,
5
,
2
,
5
,
1
,
5
,
2
,
5
,
2
,
2
,
4
,
5
,
4
,
5
,
4
,
5
,
4
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
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
:
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
}]
}
},
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
81
}]
},
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
,
6
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
3
,
6
,
61
,
3
,
61
,
6
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
6
,
3
,
3
,
3
,
3
,
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
,
1
,
1
,
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
,
4
,
1
,
4
,
1
,
2
,
1
,
2
,
5
,
2
,
5
,
1
,
5
,
2
,
5
,
2
,
2
,
4
,
5
,
4
,
5
,
4
,
5
,
4
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
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
:
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
}]
}
},
//333
//333
...
...
egret/src/something/chapters/Chapter16.ts
View file @
f1902476
...
@@ -37,23 +37,23 @@ export const Chapters16: ChapterData[] = [
...
@@ -37,23 +37,23 @@ export const Chapters16: ChapterData[] = [
//406
//406
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
26
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
45
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
26
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
45
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
3
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
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
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
1
,
3
,
3
,
3
,
3
,
3
,
1
,
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
,
15
,
1
,
1
,
1
,
15
,
1
,
1
,
1
,
15
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
15
,
15
,
15
,
1
,
1
,
1
,
1
,
15
,
15
,
15
,
15
,
15
,
15
,
15
,
1
],
baseElements
:
[
0
,
1
,
3
,
3
,
3
,
3
,
3
,
1
,
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
,
15
,
1
,
1
,
1
,
15
,
1
,
1
,
1
,
15
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
15
,
15
,
15
,
1
,
1
,
1
,
1
,
15
,
15
,
15
,
15
,
15
,
15
,
15
,
1
],
baseElements
:
[
0
,
0
,
0
,
0
,
10
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
10
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
10
,
50
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
10
,
50
,
0
,
0
,
0
,
0
,
0
,
0
,
40
,
30
,
10
,
50
,
0
,
0
,
0
,
0
,
0
,
40
,
30
,
10
,
50
,
0
,
0
,
0
,
0
,
0
,
50
,
10
,
30
,
30
,
0
,
0
,
0
,
0
,
0
,
50
,
10
,
30
,
30
,
0
,
0
,
0
,
0
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
:
4
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
20
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
28
,
type
:
null
},
{
index
:
34
,
type
:
null
},
{
index
:
36
,
type
:
null
},
{
index
:
44
,
type
:
null
}
,
{
index
:
73
,
type
:
null
},
{
index
:
79
,
type
:
null
}]
}
},
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[
{
index
:
4
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
20
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
28
,
type
:
null
},
{
index
:
34
,
type
:
null
},
{
index
:
36
,
type
:
null
},
{
index
:
44
,
type
:
null
}
,
{
index
:
73
,
type
:
null
},
{
index
:
79
,
type
:
null
}]
}
},
//407
//407
{
baseElementTypes
:
[
0
,
1
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
21
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
0
,
count
:
168
},
{
type
:
1
,
count
:
188
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
4
,
41
,
4
,
41
,
4
,
41
,
4
,
41
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[
[
20
,
38
],
[
38
,
56
],
[
24
,
42
],
[
40
,
60
]
],
elements
:
[
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
,
1
,
1
,
1
,
14
,
1
,
1
,
1
,
2
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
1
,
14
,
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
,
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
}
]
}
},
{
baseElementTypes
:
[
0
,
1
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
21
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
0
,
count
:
168
},
{
type
:
1
,
count
:
188
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
4
,
41
,
4
,
41
,
4
,
41
,
4
,
41
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[
[
20
,
38
],
[
38
,
56
],
[
24
,
42
],
[
40
,
60
]
],
elements
:
[
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
,
1
,
1
,
1
,
14
,
1
,
1
,
1
,
2
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
1
,
14
,
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
,
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
}
]
}
},
//408
//408
...
...
egret/src/something/chapters/Chapter17.ts
View file @
f1902476
...
@@ -3,15 +3,24 @@ import { ChapterData } from "../interface/ChapterData";
...
@@ -3,15 +3,24 @@ import { ChapterData } from "../interface/ChapterData";
export
const
Chapters17
:
ChapterData
[]
=
[
export
const
Chapters17
:
ChapterData
[]
=
[
//426
//426
{
baseElementTypes
:
[
0
,
1
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
5
,
count
:
22
},
{
type
:
34
,
count
:
25
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
1
,
0
,
4
,
0
,
1
,
1
,
1
,
0
,
4
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[
[
19
,
37
],
[
25
,
43
]
],
elements
:
[
{
baseElementTypes
:
[
0
,
1
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
5
,
count
:
22
},
{
type
:
34
,
count
:
25
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
1
,
0
,
4
,
0
,
1
,
1
,
1
,
0
,
4
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[
[
19
,
37
],
[
25
,
43
]
],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
16
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
16
,
16
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
16
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
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
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
16
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
16
,
1
,
1
,
2
,
2
,
16
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
16
,
16
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
16
,
2
,
2
,
2
,
2
,
1
,
2
,
2
,
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
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
9
,
type
:
null
},
{
index
:
17
,
type
:
null
},
{
index
:
19
,
type
:
null
},
{
index
:
25
,
type
:
null
},
{
index
:
29
,
type
:
null
},
{
index
:
33
,
type
:
null
},
{
index
:
45
,
type
:
null
},
{
index
:
53
,
type
:
null
}
]
}
},
2
,
2
,
2
,
2
,
1
,
2
,
2
,
2
,
2
],
baseElements
:
[
0
,
0
,
0
,
10
,
50
,
50
,
0
,
0
,
0
,
0
,
0
,
0
,
50
,
50
,
40
,
0
,
0
,
0
,
0
,
0
,
0
,
20
,
20
,
10
,
0
,
0
,
0
,
0
,
0
,
50
,
40
,
50
,
10
,
10
,
0
,
0
,
0
,
0
,
10
,
10
,
50
,
40
,
50
,
0
,
0
,
0
,
0
,
20
,
10
,
40
,
10
,
50
,
0
,
0
,
0
,
0
,
50
,
50
,
0
,
10
,
40
,
0
,
0
,
0
,
0
,
0
,
10
,
10
,
20
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
20
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
9
,
type
:
null
},
{
index
:
17
,
type
:
null
},
{
index
:
19
,
type
:
null
},
{
index
:
25
,
type
:
null
},
{
index
:
29
,
type
:
null
},
{
index
:
33
,
type
:
null
},
{
index
:
45
,
type
:
null
},
{
index
:
53
,
type
:
null
}
]
}
},
//427
//427
{
baseElementTypes
:
[
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
24
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
5
,
count
:
14
},
{
type
:
34
,
count
:
10
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
],
connectedLats
:
[],
elements
:
[
{
baseElementTypes
:
[
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
24
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
5
,
count
:
14
},
{
type
:
34
,
count
:
10
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
...
...
egret/src/something/chapters/Chapter18.ts
View file @
f1902476
...
@@ -9,7 +9,7 @@ export const Chapters18: ChapterData[] = [
...
@@ -9,7 +9,7 @@ export const Chapters18: ChapterData[] = [
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
31
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
22
,
count
:
20
},
{
type
:
23
,
count
:
20
},
{
type
:
24
,
count
:
20
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
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
,
1
,
1
,
12
,
1
,
1
,
13
,
13
,
13
,
13
,
13
,
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
:
22
,
type
:
null
},
{
index
:
23
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
25
,
type
:
null
}
]
}
},
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
31
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
22
,
count
:
20
},
{
type
:
23
,
count
:
20
},
{
type
:
24
,
count
:
20
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
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
,
1
,
1
,
12
,
1
,
1
,
13
,
13
,
13
,
13
,
13
,
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
:
22
,
type
:
null
},
{
index
:
23
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
25
,
type
:
null
}
]
}
},
//453
//453
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
10
,
stepCount
:
22
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
36
,
count
:
24
},
{
type
:
1
,
count
:
188
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
10
,
stepCount
:
22
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
36
,
count
:
24
},
{
type
:
1
,
count
:
188
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
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
,
4
,
1
,
4
,
1
,
4
,
1
,
4
,
4
,
1
,
4
,
1
,
4
,
1
,
4
,
1
,
4
,
...
@@ -17,7 +17,8 @@ export const Chapters18: ChapterData[] = [
...
@@ -17,7 +17,8 @@ export const Chapters18: ChapterData[] = [
1
,
1
,
7
,
7
,
1
,
7
,
7
,
1
,
1
,
1
,
1
,
7
,
7
,
1
,
7
,
7
,
1
,
1
,
1
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
1
,
1
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
1
,
1
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
1
,
1
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
1
,
0
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
0
],
connectedLats
:
[],
elements
:
[
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
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
12
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
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
}
]
}
},
0
,
1
,
7
,
7
,
7
,
7
,
7
,
1
,
0
],
connectedLats
:
[],
elements
:
[
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
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
12
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
1
],
baseElements
:
[
20
,
30
,
20
,
20
,
10
,
20
,
30
,
10
,
10
,
10
,
20
,
10
,
10
,
30
,
10
,
40
,
30
,
20
,
40
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
20
,
0
,
0
,
0
,
20
,
0
,
40
,
0
,
0
,
0
,
30
,
0
,
30
,
40
,
40
,
30
,
40
,
0
,
20
,
30
,
0
,
0
,
40
,
0
,
40
,
20
,
0
,
20
,
20
,
0
,
40
,
10
,
30
,
10
,
30
,
0
,
40
,
40
,
0
,
40
,
10
,
10
,
20
,
30
,
0
,
20
,
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
}
]
}
},
//454
//454
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
6
,
count
:
9
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
],
connectedLats
:
[
[
49
,
67
],
[
50
,
68
],
[
51
,
69
],
[
52
,
70
],
[
76
,
18
],
[
77
,
19
],
[
78
,
20
],
[
79
,
21
]
],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
12
,
12
,
12
,
12
,
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
:
[
72
,
73
,
74
,
75
],
generateLats
:
[
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
}
]
}
},
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
6
,
count
:
9
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
],
connectedLats
:
[
[
49
,
67
],
[
50
,
68
],
[
51
,
69
],
[
52
,
70
],
[
76
,
18
],
[
77
,
19
],
[
78
,
20
],
[
79
,
21
]
],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
12
,
12
,
12
,
12
,
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
:
[
72
,
73
,
74
,
75
],
generateLats
:
[
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
}
]
}
},
//455
//455
...
...
egret/src/something/chapters/Chapter20 copy.ts
deleted
100644 → 0
View file @
45610744
import
{
ChapterData
}
from
"../interface/ChapterData"
;
//501-525
export
const
Chapters20
:
ChapterData
[]
=
[
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
27
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
3
,
count
:
98
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
1
],
connectedLats
:
[],
conveyor
:
[[
2
,
65
]],
conveyorConnectedLats
:
[[
65
,
2
]],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
12
,
1
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
1
,
4
,
1
,
2
,
1
,
2
,
1
,
4
,
1
,
1
,
4
,
12
,
2
,
12
,
2
,
12
,
4
,
1
,
1
,
1
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
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
:
0
,
type
:
null
},
{
index
:
2
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
8
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
16
,
type
:
null
}]
}
}
]
\ No newline at end of file
egret/src/something/chapters/Chapter20.ts
View file @
f1902476
...
@@ -4,7 +4,8 @@ import { ElementType } from "../enum/ElementType";
...
@@ -4,7 +4,8 @@ import { ElementType } from "../enum/ElementType";
//501-525
//501-525
export
const
Chapters20
:
ChapterData
[]
=
[
export
const
Chapters20
:
ChapterData
[]
=
[
//501
//501
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
44
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
],
connectedLats
:
[],
conveyor
:
[
[
27
,
35
],
[
53
,
45
]
],
conveyorConnectedLats
:
[
[
35
,
27
],
[
45
,
53
]
],
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
,
4
,
4
,
4
,
4
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
12
,
1
,
1
,
12
,
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
}
]
}
},
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
44
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
],
connectedLats
:
[],
conveyor
:
[
[
27
,
35
],
[
53
,
45
]
],
conveyorConnectedLats
:
[
[
35
,
27
],
[
45
,
53
]
],
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
,
4
,
4
,
4
,
4
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
12
,
1
,
1
,
12
,
1
,
1
,
12
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
baseElements
:
[
0
,
30
,
40
,
30
,
20
,
20
,
40
,
10
,
0
,
0
,
20
,
50
,
40
,
30
,
20
,
30
,
10
,
0
,
50
,
50
,
40
,
10
,
20
,
10
,
30
,
50
,
50
,
50
,
40
,
50
,
30
,
50
,
20
,
10
,
30
,
40
,
0
,
40
,
10
,
50
,
30
,
20
,
20
,
10
,
0
,
0
,
30
,
30
,
10
,
0
,
50
,
10
,
20
,
20
,
0
,
30
,
10
,
40
,
50
,
30
,
20
,
30
,
0
,
0
,
20
,
50
,
0
,
10
,
40
,
0
,
50
,
20
,
0
,
30
,
10
,
30
,
30
,
40
,
30
,
30
,
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
}
]
}
},
//502
//502
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
29
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
55
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
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
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
],
connectedLats
:
[
[
72
,
0
],
[
73
,
1
],
[
74
,
2
],
[
75
,
3
],
[
76
,
4
],
[
77
,
5
],
[
78
,
6
],
[
79
,
7
],
[
80
,
8
]
],
conveyor
:
[],
conveyorConnectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
1
,
1
,
1
,
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
,
14
,
4
,
1
,
4
,
14
,
4
,
1
,
1
,
1
,
4
,
1
,
4
,
1
,
4
,
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
:
45
,
type
:
null
},
{
index
:
46
,
type
:
null
},
{
index
:
47
,
type
:
null
},
{
index
:
48
,
type
:
null
},
{
index
:
49
,
type
:
null
},
{
index
:
50
,
type
:
null
},
{
index
:
51
,
type
:
null
},
{
index
:
52
,
type
:
null
},
{
index
:
53
,
type
:
null
}
]
}
},
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
29
,
passTarget
:
{
type
:
1
,
elements
:
[
{
type
:
9
,
count
:
55
}
]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
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
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
],
connectedLats
:
[
[
72
,
0
],
[
73
,
1
],
[
74
,
2
],
[
75
,
3
],
[
76
,
4
],
[
77
,
5
],
[
78
,
6
],
[
79
,
7
],
[
80
,
8
]
],
conveyor
:
[],
conveyorConnectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
15
,
1
,
1
,
1
,
1
,
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
,
14
,
4
,
1
,
4
,
14
,
4
,
1
,
1
,
1
,
4
,
1
,
4
,
1
,
4
,
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
:
45
,
type
:
null
},
{
index
:
46
,
type
:
null
},
{
index
:
47
,
type
:
null
},
{
index
:
48
,
type
:
null
},
{
index
:
49
,
type
:
null
},
{
index
:
50
,
type
:
null
},
{
index
:
51
,
type
:
null
},
{
index
:
52
,
type
:
null
},
{
index
:
53
,
type
:
null
}
]
}
},
//503
//503
...
...
egret/src/something/chapters/Chapter22.ts
View file @
f1902476
import
{
ChapterData
}
from
"../interface/ChapterData"
;
import
{
ChapterData
}
from
"../interface/ChapterData"
;
import
{
PassType
}
from
"../enum/PassType"
;
import
{
ElementType
}
from
"../enum/ElementType"
;
//551-575
//551-575
export
const
Chapters22
:
ChapterData
[]
=
[
export
const
Chapters22
:
ChapterData
[]
=
[
//551
{
baseElementTypes
:
[
0
,
2
,
3
,
4
,
1
],
bubbleProbability
:
0
,
stepCount
:
35
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
22
,
count
:
20
},
{
type
:
24
,
count
:
20
},
{
type
:
26
,
count
:
20
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
1
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[],
conveyor
:
[],
conveyorConnectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
13
,
22
,
1
,
22
,
13
,
1
,
1
,
1
,
1
,
22
,
13
,
1
,
13
,
22
,
1
,
1
,
1
,
1
,
22
,
22
,
22
,
22
,
22
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
18
,
18
,
18
,
18
,
18
,
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
,
14
,
11
,
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
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
},
{
index
:
11
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
13
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
15
,
type
:
null
},
{
index
:
46
,
type
:
null
},
{
index
:
47
,
type
:
null
},
{
index
:
48
,
type
:
null
},
{
index
:
49
,
type
:
null
},
{
index
:
50
,
type
:
null
},
{
index
:
51
,
type
:
null
},
{
index
:
52
,
type
:
null
}]
}
}
]
]
egret/src/something/chapters/getChapter.ts
View file @
f1902476
...
@@ -69,7 +69,7 @@ chapters.forEach((chapter,index) => {
...
@@ -69,7 +69,7 @@ chapters.forEach((chapter,index) => {
*/
*/
export
function
getChapterData
(
index
:
number
):
ChapterData
{
export
function
getChapterData
(
index
:
number
):
ChapterData
{
//没有数据就返回第一关数据
//没有数据就返回第一关数据
return
chapters
[
index
]
||
chapters
[
1
];
return
chapters
[
index
]
||
chapters
[
55
1
];
}
}
var
a
=
{
var
a
=
{
...
...
egret/src/something/class/Element.ts
View file @
f1902476
...
@@ -13,7 +13,7 @@ import { createCandyDis3Ani } from "../anis/candy/createCandyDis3Ani";
...
@@ -13,7 +13,7 @@ import { createCandyDis3Ani } from "../anis/candy/createCandyDis3Ani";
import
{
createCandyDis4Ani
}
from
"../anis/candy/createCandyDis4Ani"
;
import
{
createCandyDis4Ani
}
from
"../anis/candy/createCandyDis4Ani"
;
import
{
createCandySubAni
}
from
"../anis/candy/createCandySubAni"
;
import
{
createCandySubAni
}
from
"../anis/candy/createCandySubAni"
;
import
{
EffectType
}
from
"../enum/EffectType"
;
import
{
EffectType
}
from
"../enum/EffectType"
;
import
{
CandyBaseElementType
,
ElementType
,
FiveBaseElementTypes
,
transElementRes
}
from
"../enum/ElementType"
;
import
{
CandyBaseElementType
,
ElementType
,
FiveBaseElementTypes
,
transElementRes
,
forwardDirection
}
from
"../enum/ElementType"
;
import
{
RecoverName
}
from
"../enum/RecoverName"
;
import
{
RecoverName
}
from
"../enum/RecoverName"
;
import
{
stateDatas
,
StateType
}
from
"../enum/StateType"
;
import
{
stateDatas
,
StateType
}
from
"../enum/StateType"
;
import
{
ExplosiveBgAni
}
from
"../periodAni/ExplosiveBgAni"
;
import
{
ExplosiveBgAni
}
from
"../periodAni/ExplosiveBgAni"
;
...
@@ -30,16 +30,33 @@ import { Monster } from "./Monster";
...
@@ -30,16 +30,33 @@ import { Monster } from "./Monster";
import
{
State
}
from
"./State"
;
import
{
State
}
from
"./State"
;
import
wait
from
"../../../libs/new_tc/wait"
;
import
wait
from
"../../../libs/new_tc/wait"
;
import
{
Fish
}
from
"./Fish"
;
import
{
Fish
}
from
"./Fish"
;
import
MainScene
from
"../../mainScene/MainScene"
;
/**
/**
* 考虑到底继承白鹭的啥Component还是Container
* 考虑到底继承白鹭的啥Component还是Container
* 坐标原点需要坐落在格子的中心点
* 坐标原点需要坐落在格子的中心点
* 最好到时按,底图,动效,气泡,笼子,毛球,进行分层,如果多个状态要共存时,必须分层,到时气泡的动画,要写再自己的层里
* 最好到时按,底图,动效,气泡,笼子,毛球,进行分层,如果多个状态要共存时,必须分层,到时气泡的动画,要写再自己的层里
*/
*/
//加载器
let
svgaParser
;
export
class
Element
extends
eui
.
Component
{
export
class
Element
extends
eui
.
Component
{
private
_fishState
=
0
;
private
_fishState
=
0
;
private
_isNeb
:
boolean
;
//是否
private
_isNeb
:
boolean
;
//是否
get
isNeb
()
{
return
this
.
_isNeb
}
get
isNeb
()
{
return
this
.
_isNeb
}
fishCanEliFlag
:
boolean
;
fishCanEliFlag
:
boolean
;
cannoMoveClip
:
any
;
// cannoCnClip:any;
// cannoStat:number[] = [1,71,131,191,241,361];
/**
* 1--初始
* 71--一格能量
* 131--两格
* 191--三格
* 351--开始蓄力
* 441--开始发射,
* 481--结束
*/
//尝试设置碰撞状态,如果之前被特效集中,那么可以设置碰撞状态。碰撞状态之后可以准备消除。
//尝试设置碰撞状态,如果之前被特效集中,那么可以设置碰撞状态。碰撞状态之后可以准备消除。
setFishNebFlag
()
{
setFishNebFlag
()
{
if
(
this
.
_fishState
>
0
)
{
if
(
this
.
_fishState
>
0
)
{
...
@@ -188,6 +205,83 @@ export class Element extends eui.Component {
...
@@ -188,6 +205,83 @@ export class Element extends eui.Component {
this
.
addCandyStandbyAni
();
this
.
addCandyStandbyAni
();
}
}
_cannoDir
:
forwardDirection
;
_cannoStat
:
number
=
0
;
cannoAmnStat
:
number
=
0
;
mainScene
:
MainScene
;
resetToCannoView
(
cannodir
:
forwardDirection
,
mainscene
:
MainScene
){
this
.
_cannoDir
=
cannodir
;
this
.
resetCannoStat
();
this
.
mainScene
=
mainscene
;
var
roanum
=
Tool
.
getCannoRoaByDir
(
cannodir
);
this
.
cannobox
.
rotation
=
roanum
;
}
changeShowCannoStat
(){
this
.
cannolab
.
text
=
this
.
_cannoStat
+
""
;
// this.changeMvPlay(this._cannoStat);
}
changeMvPlay
(
_stat
:
number
){
if
(
this
.
cannoMoveClip
){
var
endframe
:
number
;
var
curframe
:
number
=
this
.
cannoMoveClip
.
currentFrame
;
if
(
curframe
>=
351
){
if
(
_stat
==
3
||
_stat
==
2
){
return
;
}
}
if
(
_stat
==
0
){
curframe
=
0
;
endframe
=
1
;
}
else
if
(
_stat
==
1
){
curframe
=
61
;
endframe
=
71
;
}
else
if
(
_stat
==
2
){
curframe
=
121
endframe
=
131
;
}
else
if
(
_stat
==
3
){
curframe
=
181
;
endframe
=
191
;
}
else
if
(
_stat
==
4
){
curframe
=
351
;
endframe
=
481
;
}
// console.log("ele播放大炮动画",curframe,endframe,_stat);
// this.cannoMoveClip.gotoAndPlay(curframe,true);
this
.
stopFrame
=
endframe
;
this
.
cannoMoveClip
.
gotoAndPlay
(
curframe
,
1
);
}
}
/**
* 炮台能否发射
*/
checkCannoStat
(){
if
(
this
.
_cannoStat
==
3
){
return
true
;
}
return
false
;
}
/**
* 炮台发射
*/
fireCanno
(){
// console.error("ele播放蓄力动画-----",this.index,this.cannoMoveClip.currentFrame);
this
.
changeMvPlay
(
4
);
}
resetCannoStat
(){
this
.
_cannoStat
=
0
;
this
.
changeShowCannoStat
();
this
.
changeMvPlay
(
this
.
_cannoStat
);
}
addOneCannoStat
(){
this
.
_cannoStat
+=
1
;
if
(
this
.
_cannoStat
>
3
){
this
.
_cannoStat
=
3
;
}
else
{
//充能动画
// this.cannoCnClip.gotoAndPlay(1,true);
}
this
.
changeShowCannoStat
();
}
playCandyDieAni
()
{
playCandyDieAni
()
{
var
p
=
Tool
.
getPositionByIndex
(
this
.
index
);
var
p
=
Tool
.
getPositionByIndex
(
this
.
index
);
createCandyDieBgAni
(
p
[
0
],
p
[
1
],
this
.
stage
);
createCandyDieBgAni
(
p
[
0
],
p
[
1
],
this
.
stage
);
...
@@ -255,6 +349,9 @@ export class Element extends eui.Component {
...
@@ -255,6 +349,9 @@ export class Element extends eui.Component {
* 显示的图片,直接改source,"ele"+type
* 显示的图片,直接改source,"ele"+type
*/
*/
protected
showImage
:
eui
.
Image
;
protected
showImage
:
eui
.
Image
;
protected
cannobox
:
eui
.
Group
;
cannoboxwid
:
number
=
116
;
cannoboxhei
:
number
=
116
;
temEffectType
:
EffectType
=
null
;
temEffectType
:
EffectType
=
null
;
/**
/**
...
@@ -358,6 +455,8 @@ export class Element extends eui.Component {
...
@@ -358,6 +455,8 @@ export class Element extends eui.Component {
*/
*/
private
states
:
State
[]
=
[]
private
states
:
State
[]
=
[]
//模拟炮台发射情况
protected
cannolab
:
eui
.
Label
;
/**
/**
*
*
* @param type 只应该是基础元素和特殊元素
* @param type 只应该是基础元素和特殊元素
...
@@ -366,8 +465,29 @@ export class Element extends eui.Component {
...
@@ -366,8 +465,29 @@ export class Element extends eui.Component {
super
();
super
();
this
.
_type
=
type
;
this
.
_type
=
type
;
this
.
showImage
=
new
eui
.
Image
();
this
.
showImage
=
new
eui
.
Image
();
this
.
changeSource
(
"ele"
+
this
.
type
+
"_png"
);
this
.
changeSource
(
"ele"
+
this
.
type
+
"_png"
);
this
.
addChild
(
this
.
showImage
);
this
.
addChild
(
this
.
showImage
);
this
.
cannobox
=
new
eui
.
Group
();
this
.
cannobox
.
width
=
this
.
cannoboxwid
;
this
.
cannobox
.
height
=
this
.
cannoboxhei
;
this
.
cannobox
.
anchorOffsetX
=
this
.
cannoboxwid
/
2
;
this
.
cannobox
.
anchorOffsetY
=
this
.
cannoboxhei
/
2
;
this
.
addChild
(
this
.
cannobox
);
this
.
cannolab
=
new
eui
.
Label
();
this
.
cannolab
.
size
=
30
;
this
.
cannolab
.
textColor
=
0xff0000
;
this
.
cannolab
.
x
=
0
;
this
.
cannolab
.
y
=
0
;
this
.
addChild
(
this
.
cannolab
);
this
.
cannobox
.
visible
=
this
.
cannolab
.
visible
=
type
==
ElementType
.
CANNO
;
this
.
touchEnabled
=
this
.
showImage
.
visible
=
type
!=
ElementType
.
CANNO
;
this
.
cannolab
.
visible
=
false
;
//鸡蛋
//鸡蛋
if
(
type
==
ElementType
.
CHICKEN_EGG
)
{
if
(
type
==
ElementType
.
CHICKEN_EGG
)
{
this
.
chickenEgg
=
Pool
.
takeOut
(
RecoverName
.
CHICKEN_EGG
)
this
.
chickenEgg
=
Pool
.
takeOut
(
RecoverName
.
CHICKEN_EGG
)
...
@@ -389,8 +509,63 @@ export class Element extends eui.Component {
...
@@ -389,8 +509,63 @@ export class Element extends eui.Component {
}
}
this
.
addChild
(
this
.
festivalEle
)
this
.
addChild
(
this
.
festivalEle
)
}
}
this
.
createCanno
();
}
}
//添加炮台
createCanno
(){
if
(
this
.
type
==
ElementType
.
CANNO
){
if
(
this
.
cannoMoveClip
){
return
;
}
if
(
!
svgaParser
)
svgaParser
=
new
window
[
"SVGA"
].
Parser
();
var
svgas
=
[
"canno1"
]
//,"cannofire","cannoparticle","cannolight"];
for
(
let
i
=
0
;
i
<
svgas
.
length
;
i
++
){
let
mvname
=
svgas
[
i
];
svgaParser
.
load
(
resPath
+
'resource/assets/svgas/'
+
mvname
+
'.svga'
,(
videoItem
)
=>
{
if
(
mvname
==
"canno1"
){
this
.
cannoMoveClip
=
new
window
[
"SVGA"
].
EgretMovieClip
(
videoItem
);
// this.cannoMoveClip.lockStep = true;
var
mvwidth
=
82
;
var
mvheight
=
132
;
this
.
cannoMoveClip
.
x
=
(
this
.
cannoboxwid
-
mvwidth
)
/
2
;
this
.
cannoMoveClip
.
y
=
-
mvheight
/
4
;
this
.
cannobox
.
addChild
(
this
.
cannoMoveClip
);
this
.
cannoMoveClip
.
gotoAndStop
(
1
);
this
.
cannoMoveClip
.
addEventListener
(
egret
.
Event
.
ENTER_FRAME
,
this
.
toFrameAni
,
this
);
}
});
}
}
}
stopFrame
:
number
;
/**
* 炮台动画停止
*/
toFrameAni
(){
var
curframe
=
this
.
cannoMoveClip
.
currentFrame
;
if
(
curframe
==
441
){
//发射光柱
this
.
mainScene
.
selectPlayCannoFire
(
this
.
index
);
}
if
(
curframe
>=
this
.
stopFrame
){
if
(
this
.
stopFrame
==
481
){
this
.
cannoMoveClip
.
gotoAndStop
(
1
);
return
;
// console.log("炮台发射完毕");
}
this
.
cannoMoveClip
.
gotoAndStop
(
this
.
stopFrame
-
1
);
}
}
// /**
// * 光圈充能动画,现放在mainscene
// */
// addOnePower(){
// console.log("一次光圈充能");
// this.cannoCnClip.gotoAndStop(1);
// }
/**
/**
* 替换资源时,同时修改
* 替换资源时,同时修改
* @param source
* @param source
...
@@ -398,7 +573,7 @@ export class Element extends eui.Component {
...
@@ -398,7 +573,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
;
}
if
(
!
texture
)
{
return
console
.
error
(
"未找到纹理"
,
source
,
this
.
type
)
;
}
this
.
showImage
.
texture
=
texture
this
.
showImage
.
texture
=
texture
this
.
showImage
.
x
=
-
texture
.
textureWidth
/
2
;
this
.
showImage
.
x
=
-
texture
.
textureWidth
/
2
;
...
@@ -429,6 +604,10 @@ export class Element extends eui.Component {
...
@@ -429,6 +604,10 @@ export class Element extends eui.Component {
egret
.
Tween
.
removeTweens
(
this
.
showImage
);
egret
.
Tween
.
removeTweens
(
this
.
showImage
);
//类型重置,showImage修改
//类型重置,showImage修改
this
.
_type
=
type
;
this
.
_type
=
type
;
this
.
cannobox
.
visible
=
this
.
cannolab
.
visible
=
type
==
ElementType
.
CANNO
;
this
.
showImage
.
visible
=
type
!=
ElementType
.
CANNO
;
this
.
cannolab
.
visible
=
false
;
this
.
changeSource
(
"ele"
+
type
+
"_png"
);
this
.
changeSource
(
"ele"
+
type
+
"_png"
);
//特效重置
//特效重置
this
.
effectType
=
null
;
this
.
effectType
=
null
;
...
...
egret/src/something/enum/ElementConfigType.ts
View file @
f1902476
...
@@ -67,4 +67,11 @@ export enum ElementConfigType {
...
@@ -67,4 +67,11 @@ export enum ElementConfigType {
FISH
=
15
,
FISH
=
15
,
HONEY_POT
=
16
,
HONEY_POT
=
16
,
FLOWER
=
17
,
FLOWER
=
17
,
/** 大炮 */
CANNO_DIR_TOP
=
18
,
CANNO_DIR_BOTTOM
=
19
,
CANNO_DIR_LEFT
=
20
,
CANNO_DIR_RIGHT
=
21
,
/** 大炮石头 */
CANNO_BLOCK
=
22
,
}
}
\ No newline at end of file
egret/src/something/enum/ElementType.ts
View file @
f1902476
...
@@ -30,34 +30,36 @@ export enum ElementType {
...
@@ -30,34 +30,36 @@ export enum ElementType {
FESTIVALELE_BIG
,
//节日元素大中间一个13
FESTIVALELE_BIG
,
//节日元素大中间一个13
FESTIVALELE_SMALL
,
//节日元素飞溅的小元素14
FESTIVALELE_SMALL
,
//节日元素飞溅的小元素14
CANDY_RABBIT
,
//兔子
CANDY_RABBIT
,
//兔子15
CANDY_CHICKEN
,
//鸟
CANDY_CHICKEN
,
//鸟16
CANDY_CATTLE
,
//牛
CANDY_CATTLE
,
//牛17
CANDY_LION
,
//狮子
CANDY_LION
,
//狮子18
CANDY_PIG
,
//猪
CANDY_PIG
,
//猪19
MONSTER_JELLY1
,
MONSTER_JELLY1
,
//20
JELLY_MONSTER
,
JELLY_MONSTER
,
//21
FIREWORKS_RABBIT
,
//烟花目标元素,下同
FIREWORKS_RABBIT
,
//烟花目标元素,下同22
FIREWORKS_CHICKEN
,
FIREWORKS_CHICKEN
,
//23
FIREWORKS_CATTLE
,
FIREWORKS_CATTLE
,
//24
FIREWORKS_LION
,
FIREWORKS_LION
,
//25
FIREWORKS_PIG
,
FIREWORKS_PIG
,
//26
FIREWORKS_SHOOTER
,
//烟花
FIREWORKS_SHOOTER
,
//烟花27
MONSTER_RABBIT
,
//独眼怪
MONSTER_RABBIT
,
//独眼怪28
MONSTER_CHICKEN
,
MONSTER_CHICKEN
,
//29
MONSTER_CATTLE
,
MONSTER_CATTLE
,
//30
MONSTER_LION
,
MONSTER_LION
,
//31
MONSTER_PIG
,
MONSTER_PIG
,
//32
FISH
,
//气鼓鱼
FISH
,
//气鼓鱼33
HONEY
,
// 蜂蜜
HONEY
,
// 蜂蜜34
HONEY_POT
,
//蜂蜜罐
HONEY_POT
,
//蜂蜜罐35
SAND
,
SAND
,
//36
FLOWER
,
FLOWER
,
//37
CANNO
,
//38
CANNO_BLOCK
,
//39
}
}
export
const
isMonsterEle
=
(
t
:
ElementType
)
=>
{
export
const
isMonsterEle
=
(
t
:
ElementType
)
=>
{
...
@@ -88,6 +90,12 @@ export enum MonsterBaseElementType {
...
@@ -88,6 +90,12 @@ export enum MonsterBaseElementType {
}
}
export
enum
forwardDirection
{
left
=
"left"
,
up
=
"up"
,
right
=
"right"
,
down
=
"down"
,
}
export
const
fireworksTypeMap
:
any
=
{}
export
const
fireworksTypeMap
:
any
=
{}
fireworksTypeMap
[
ElementType
.
RABBIT
]
=
ElementType
.
FIREWORKS_RABBIT
;
fireworksTypeMap
[
ElementType
.
RABBIT
]
=
ElementType
.
FIREWORKS_RABBIT
;
fireworksTypeMap
[
ElementType
.
CHICKEN
]
=
ElementType
.
FIREWORKS_CHICKEN
;
fireworksTypeMap
[
ElementType
.
CHICKEN
]
=
ElementType
.
FIREWORKS_CHICKEN
;
...
@@ -151,6 +159,13 @@ export const monsterElementMap = {
...
@@ -151,6 +159,13 @@ export const monsterElementMap = {
"5"
:
ElementType
.
PIG
,
"5"
:
ElementType
.
PIG
,
}
}
export
const
connoDirection
=
{
"1"
:
forwardDirection
.
left
,
"2"
:
forwardDirection
.
up
,
"3"
:
forwardDirection
.
right
,
"4"
:
forwardDirection
.
down
,
}
export
const
elementMonsterResMap
=
{
export
const
elementMonsterResMap
=
{
"0"
:
ElementType
.
MONSTER_RABBIT
,
"0"
:
ElementType
.
MONSTER_RABBIT
,
"1"
:
ElementType
.
MONSTER_CHICKEN
,
"1"
:
ElementType
.
MONSTER_CHICKEN
,
...
...
egret/src/something/interface/MapData.ts
View file @
f1902476
import
{
GenerateLatData
}
from
"./GenerateLatData"
;
import
{
GenerateLatData
}
from
"./GenerateLatData"
;
import
{
LatticeType
}
from
"../enum/LatticeType"
;
import
{
LatticeType
}
from
"../enum/LatticeType"
;
import
{
ElementConfigType
}
from
"../enum/ElementConfigType"
;
/**
/**
* 地图数据接口
* 地图数据接口
* 包括地图格子,和地图上的特殊元素,生成口,联通口
* 包括地图格子,和地图上的特殊元素,生成口,联通口
*/
*/
export
interface
MapData
{
export
interface
MapData
{
/**
* 传送带
*/
conveyor
?:
number
[][];
conveyor
?:
number
[][];
conveyorConnectedLats
?:
number
[][];
conveyorConnectedLats
?:
number
[][];
/**
/**
...
@@ -42,7 +46,7 @@ export interface MapData {
...
@@ -42,7 +46,7 @@ export interface MapData {
* 9褐色毛球 特效消除,分裂
* 9褐色毛球 特效消除,分裂
* 10黑色毛球 两次消除,一次眩晕,
* 10黑色毛球 两次消除,一次眩晕,
*/
*/
elements
?:
number
[];
elements
?:
ElementConfigType
[];
/**
/**
* 9*9的格子,不修改写null或[]
* 9*9的格子,不修改写null或[]
* 十位是基础元素类型,对应数字减1就是基础元素类型
* 十位是基础元素类型,对应数字减1就是基础元素类型
...
...
egret/src/something/uis/GameGuide.ts
View file @
f1902476
...
@@ -68,6 +68,9 @@ export class GameGuide extends egret.DisplayObjectContainer {
...
@@ -68,6 +68,9 @@ export class GameGuide extends egret.DisplayObjectContainer {
if
(
this
.
thisObj
.
chapter
==
101
&&
step
==
0
)
{
if
(
this
.
thisObj
.
chapter
==
101
&&
step
==
0
)
{
this
.
msg
.
y
+=
80
;
this
.
msg
.
y
+=
80
;
}
}
if
(
this
.
thisObj
.
chapter
==
406
)
{
this
.
msg
.
y
+=
80
;
}
this
.
stepCount
--
;
this
.
stepCount
--
;
}
}
...
@@ -383,6 +386,36 @@ const chapterFuns = {
...
@@ -383,6 +386,36 @@ const chapterFuns = {
"每走三步都会翻转的石门!
\n
在石门开启的时候赶快消除吧~"
"每走三步都会翻转的石门!
\n
在石门开启的时候赶快消除吧~"
]
]
},
},
301
:{
stepCount
:
1
,
showIndexs
:
[
[
64
,
65
,
66
,
75
],
],
hideIndexs
:
[
[
64
,
65
],
],
handIndexs
:
[
[
66
,
75
],
],
msg
:
[
"每操作一步,怪兽都会吐毒液
\n
消除毒液的回合不会再产生毒液"
]
},
331
:{
stepCount
:
1
,
showIndexs
:
[
[
64
,
65
,
66
,
75
],
],
hideIndexs
:
[
[
64
,
65
],
],
handIndexs
:
[
[
66
,
75
],
],
msg
:
[
"在烟花附近消除,就会释放美丽的烟花哦~"
]
},
377
:{
377
:{
stepCount
:
1
,
stepCount
:
1
,
showIndexs
:
[
showIndexs
:
[
...
@@ -397,6 +430,66 @@ const chapterFuns = {
...
@@ -397,6 +430,66 @@ const chapterFuns = {
msg
:
[
msg
:
[
"独眼仔被相同颜色的元素消除4次
\n
就能激活哦~"
"独眼仔被相同颜色的元素消除4次
\n
就能激活哦~"
]
]
},
406
:{
stepCount
:
1
,
showIndexs
:
[
[
23
,
24
,
32
,
41
],
],
hideIndexs
:
[
[
32
,
41
],
],
handIndexs
:
[
[
23
,
24
],
],
msg
:
[
"使用特效击中气鼓鱼,膨胀起来在周围消除一次即可引爆气鼓鱼"
],
},
426
:{
stepCount
:
1
,
showIndexs
:
[
[
59
,
68
,
67
,
66
],
],
hideIndexs
:
[
[
67
,
66
],
],
handIndexs
:
[
[
59
,
68
],
],
msg
:
[
"在蜜罐旁消除三次即可打开并释放蜂蜜
\n
然后消除被蜂蜜黏住的小动物吧~"
],
},
453
:{
stepCount
:
1
,
showIndexs
:
[
[
59
,
68
,
67
,
66
],
],
hideIndexs
:
[
[
67
,
66
],
],
handIndexs
:
[
[
59
,
68
],
],
msg
:
[
"流沙每回合都会向四方随机移动,消除流沙上的小动物可以收集流沙"
],
},
501
:{
stepCount
:
1
,
showIndexs
:
[
[
42
,
51
,
52
,
53
],
],
hideIndexs
:
[
[
52
,
53
],
],
handIndexs
:
[
[
42
,
51
],
],
msg
:
[
"每回合,传送带会带着它上面的动物向指定方向移动一格"
]
}
}
}
}
...
...
mock/happyclear/homemax.json
View file @
f1902476
...
@@ -2763,8 +2763,132 @@
...
@@ -2763,8 +2763,132 @@
"levelNum"
:
550
,
"levelNum"
:
550
,
"maxScore"
:
47440
,
"maxScore"
:
47440
,
"stars"
:
1
"stars"
:
1
},
{
"levelNum"
:
551
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
552
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
553
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
554
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
555
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
556
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
557
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
558
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
559
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
560
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
561
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
562
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
563
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
564
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
565
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
566
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
567
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
568
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
569
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
570
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
571
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
572
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
573
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
574
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
575
,
"maxScore"
:
47440
,
"stars"
:
1
}
}
],
],
"remainProp"
:
[
"remainProp"
:
[
{
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment