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
54102687
Commit
54102687
authored
Dec 21, 2019
by
wildfirecode
Browse files
Options
Browse Files
Download
Plain Diff
1
parents
b18f63e5
4e4f00de
Changes
32
Show whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
1094 additions
and
70 deletions
+1094
-70
index.html
egret/index.html
+6
-4
MainBase.ts
egret/libs/new_wx/MainBase.ts
+6
-0
common_block.png
egret/resource/assets/common/common_block.png
+0
-0
common_block_bg_blue.png
egret/resource/assets/common/common_block_bg_blue.png
+0
-0
common_block_bg_red.png
egret/resource/assets/common/common_block_bg_red.png
+0
-0
common_block_bg_yellow.png
egret/resource/assets/common/common_block_bg_yellow.png
+0
-0
common_block_front.png
egret/resource/assets/common/common_block_front.png
+0
-0
default.res.json
egret/resource/default.res.json
+26
-1
MainScene.ts
egret/src/mainScene/MainScene.ts
+100
-60
map.md
egret/src/mainScene/map.md
+20
-0
readme.md
egret/src/mainScene/readme.md
+26
-0
Tool.ts
egret/src/something/Tool.ts
+9
-0
BaseBlock.ts
egret/src/something/block/BaseBlock.ts
+210
-0
Block.ts
egret/src/something/block/Block.ts
+12
-0
BlockDarkIce.ts
egret/src/something/block/BlockDarkIce.ts
+19
-0
BlockIce.ts
egret/src/something/block/BlockIce.ts
+19
-0
centerAnchor.ts
egret/src/something/block/centerAnchor.ts
+4
-0
genBlockDisplay.ts
egret/src/something/block/genBlockDisplay.ts
+27
-0
Chapter12.ts
egret/src/something/chapters/Chapter12.ts
+370
-0
Chapter13.ts
egret/src/something/chapters/Chapter13.ts
+88
-0
getChapter.ts
egret/src/something/chapters/getChapter.ts
+2
-0
Ice.ts
egret/src/something/class/Ice.ts
+2
-1
Lattice.ts
egret/src/something/class/Lattice.ts
+11
-1
ElementConfigType.ts
egret/src/something/enum/ElementConfigType.ts
+55
-0
LatticeType.ts
egret/src/something/enum/LatticeType.ts
+28
-0
RecoverName.ts
egret/src/something/enum/RecoverName.ts
+2
-0
StateType.ts
egret/src/something/enum/StateType.ts
+3
-0
MapData.ts
egret/src/something/interface/MapData.ts
+5
-1
ILattice.ts
egret/src/something/lattice/ILattice.ts
+3
-0
AiControl.ts
egret/src/something/logic/AiControl.ts
+1
-1
BlockLockState.ts
egret/src/something/states/BlockLockState.ts
+34
-0
home.json
mock/happyclear/home.json
+6
-1
No files found.
egret/index.html
View file @
54102687
...
...
@@ -132,11 +132,13 @@
{
nums
:
'0.36元'
,
type
:
'quan36'
}
];
// localStorage.clear();
window
[
'imgver'
]
=
'11112'
;
window
[
'total_level'
]
=
14
+
13
*
17
;
/// TODO 14 不能变 总数必须大于总的关卡数
window
[
'last_level'
]
=
225
;
//必须大于等于total_level ///TODO 标记最后一关,等于最后一关即可
// window['imgver'] = '11112';
// window['total_level'] = 14 + 13 * 17; /// TODO 14 不能变 总数必须大于总的关卡数
// window['last_level'] = 225;//必须大于等于total_level ///TODO 标记最后一关,等于最后一关即可
window
[
'imgver'
]
=
'11112'
window
[
'total_level'
]
=
18
+
13
*
18
;
window
[
'last_level'
]
=
250
;
//必须大于等于total_level
// localStorage.clear();
var
sharePic
=
document
.
getElementById
(
'pic'
);
sharePic
.
onclick
=
function
()
{
...
...
egret/libs/new_wx/MainBase.ts
View file @
54102687
...
...
@@ -250,6 +250,12 @@ export default class MainBase extends eui.UILayer {
RES
.
getResAsync
(
`inviterulepanel_json`
);
}
else
{
RES
.
getResAsync
(
'common_block_bg_yellow_png'
);
RES
.
getResAsync
(
'common_block_bg_blue_png'
);
RES
.
getResAsync
(
'common_block_bg_red_png'
);
RES
.
getResAsync
(
'common_block_png'
);
RES
.
getResAsync
(
'common_block_front_png'
);
RES
.
getResAsync
(
'mapredbagicom_png'
);
RES
.
getResAsync
(
'mapredbagicom2_png'
);
RES
.
getResAsync
(
'maplight2_png'
);
...
...
egret/resource/assets/common/common_block.png
0 → 100644
View file @
54102687
7.16 KB
egret/resource/assets/common/common_block_bg_blue.png
0 → 100644
View file @
54102687
2.7 KB
egret/resource/assets/common/common_block_bg_red.png
0 → 100644
View file @
54102687
2.67 KB
egret/resource/assets/common/common_block_bg_yellow.png
0 → 100644
View file @
54102687
2.69 KB
egret/resource/assets/common/common_block_front.png
0 → 100644
View file @
54102687
6.41 KB
egret/resource/default.res.json
View file @
54102687
...
...
@@ -81,7 +81,7 @@
"name"
:
"signprize"
},
{
"keys"
:
"turnnoprize再来一次2_png,toast_png,sharenums_png,sharenums_fnt,share_btn2_png,share_btn1_png,prizePanelbg_png,nums3_png,nums3_fnt,nums2_png,nums2_fnt,nums_png,nums_fnt,lightani_png,exchangebtn_png,cutTimeFont_png,cutTimeFont_fnt,common_yuanbao_png,common_prop3_png,common_prop2_png,common_prop1_png,common_prizelight_png,common_money_png,common_blood_png,common_adbg_png,commmon_okbtn1_png,closeCommonBtn_png,btn_png,alertbg_png,朋友圈中间分享蒙层1_jpg,按钮 副本 4_png,按钮 副本 3_png"
,
"keys"
:
"turnnoprize再来一次2_png,toast_png,sharenums_png,sharenums_fnt,share_btn2_png,share_btn1_png,prizePanelbg_png,nums3_png,nums3_fnt,nums2_png,nums2_fnt,nums_png,nums_fnt,lightani_png,exchangebtn_png,cutTimeFont_png,cutTimeFont_fnt,common_yuanbao_png,common_prop3_png,common_prop2_png,common_prop1_png,common_prizelight_png,common_money_png,common_blood_png,common_adbg_png,commmon_okbtn1_png,closeCommonBtn_png,btn_png,alertbg_png,朋友圈中间分享蒙层1_jpg,按钮 副本 4_png,按钮 副本 3_png
,common_block_png,common_block_front_png,common_block_bg_yellow_png,common_block_bg_red_png,common_block_bg_blue_png
"
,
"name"
:
"common"
},
{
...
...
@@ -3946,6 +3946,31 @@
"url"
:
"assets/redrainbg.jpg"
,
"type"
:
"image"
,
"name"
:
"redrainbg_jpg"
},
{
"url"
:
"assets/common/common_block_front.png"
,
"type"
:
"image"
,
"name"
:
"common_block_front_png"
},
{
"url"
:
"assets/common/common_block_bg_yellow.png"
,
"type"
:
"image"
,
"name"
:
"common_block_bg_yellow_png"
},
{
"url"
:
"assets/common/common_block_bg_red.png"
,
"type"
:
"image"
,
"name"
:
"common_block_bg_red_png"
},
{
"url"
:
"assets/common/common_block_bg_blue.png"
,
"type"
:
"image"
,
"name"
:
"common_block_bg_blue_png"
},
{
"url"
:
"assets/common/common_block.png"
,
"type"
:
"image"
,
"name"
:
"common_block_png"
}
]
}
\ No newline at end of file
egret/src/mainScene/MainScene.ts
View file @
54102687
import
getResPath
from
'../../libs/new_tc/getResPath'
;
import
wait
from
'../../libs/new_tc/wait'
;
import
Scene
from
'../../libs/new_wx/components/Scene'
;
import
PanelCtrl
from
'../../libs/new_wx/ctrls/panelCtrl'
;
import
SceneCtrl
from
'../../libs/new_wx/ctrls/sceneCtrl'
;
import
{
showToast
}
from
'../../libs/new_wx/ctrls/toastCtrl'
;
import
{
updateMainTimerAfterGetData
}
from
'../../libs/new_wx/MainBase'
;
import
{
ModuleTypes
}
from
'../../libs/new_wx/types/sceneTypes'
;
import
{
getPropNums
}
from
'../getHomeData'
;
import
{
getRedBombTimes
}
from
'../getRedBombAward'
;
import
{
getlogItem
}
from
'../Main'
;
import
{
getCacheKey
,
readCache
}
from
'../mapScene/GuideCon'
;
import
PropType
from
'../PropType'
;
import
{
BonusShootAni
,
stepPosition
}
from
'../something/anis/BonusShootAni'
;
import
{
BoomAni
}
from
'../something/anis/BoomAni'
;
import
{
CrossAni
}
from
'../something/anis/CrossAni'
;
import
{
EggBrokenAni
}
from
'../something/anis/EggBrokenAni'
;
import
{
EleDisAni
}
from
'../something/anis/EleDisAni'
;
import
{
EleDownAni
}
from
'../something/anis/EleDownAni'
;
import
{
EleMaskAni
}
from
'../something/anis/EleMaskAni'
;
import
{
FlyTargetAni
}
from
'../something/anis/FlyTargetAni'
;
import
{
HairballGreyDisAni
}
from
'../something/anis/HairballGreyDisAni'
;
import
{
HorizontalAni
}
from
'../something/anis/HorizontalAni'
;
import
{
IceAni
}
from
'../something/anis/IceAni'
;
import
{
JellyDisAni
}
from
'../something/anis/JellyDisAni'
;
import
{
MagicLionAni
}
from
'../something/anis/MagicLionAni'
;
import
{
MagicRotateAni
}
from
'../something/anis/MagicRotateAni'
;
import
{
RockAni
}
from
'../something/anis/RockAni'
;
import
{
ScoreAni
}
from
'../something/anis/ScoreAni'
;
import
{
StepAni
}
from
'../something/anis/StepAni'
;
import
{
ThreeCrossAni
}
from
'../something/anis/ThreeCrossAni'
;
import
{
VerticalAni
}
from
'../something/anis/VerticalAni'
;
import
{
FesRedBombShowAni
}
from
'../something/anisCall/FesRedBombShowAni'
;
import
{
RectsWaveAni
}
from
'../something/anisCall/RectsWaveAni'
;
import
BaseBlock
from
'../something/block/BaseBlock'
;
import
genBlockDisplay
from
'../something/block/genBlockDisplay'
;
import
{
getChapterData
}
from
'../something/chapters/getChapter'
;
import
{
Element
}
from
'../something/class/Element'
;
import
{
Ice
}
from
'../something/class/Ice'
;
import
{
Lattice
}
from
'../something/class/Lattice'
;
import
{
EffectType
}
from
'../something/enum/EffectType'
;
import
{
codeMsgs
,
ElementType
,
submitTran
,
FiveBaseElementTypes
}
from
'../something/enum/ElementType'
;
import
{
ElementConfigType
}
from
'../something/enum/ElementConfigType'
;
import
{
codeMsgs
,
ElementType
,
FiveBaseElementTypes
,
submitTran
}
from
'../something/enum/ElementType'
;
import
{
isIce
,
isSpecialLattice
}
from
'../something/enum/LatticeType'
;
import
{
PassType
}
from
'../something/enum/PassType'
;
import
{
RecoverName
}
from
'../something/enum/RecoverName'
;
import
{
StateType
}
from
'../something/enum/StateType'
;
import
{
ChapterData
}
from
'../something/interface/ChapterData'
;
import
{
ElementTargetData
}
from
'../something/interface/ElementTargetData'
;
import
{
FallAniData
,
FallType
}
from
'../something/interface/FallAniData'
;
import
{
GenerateLatData
}
from
'../something/interface/GenerateLatData'
;
import
{
MagicRotateData
}
from
'../something/interface/MagicRotateData'
;
import
{
drawBg
,
drawShape
,
generateMapBg
}
from
'../something/logic/aaa'
;
import
{
AiControl
,
fesELeSmallNum
}
from
'../something/logic/AiControl'
;
import
{
Pool
}
from
'../something/Pool'
;
import
{
HairballBlackState
}
from
'../something/states/HairballBlackState'
;
import
{
HairballBrownState
}
from
'../something/states/HairballBrownState'
;
import
{
Tool
}
from
'../something/Tool'
;
import
{
BonusTime
}
from
'../something/uis/BonusTime'
;
import
{
ChapterNum
}
from
'../something/uis/ChapterNum'
;
import
{
CurScoreNum
}
from
'../something/uis/CurScoreNum'
;
import
{
ElementTargets
}
from
'../something/uis/ElementTargets'
;
import
{
FestivalTarget
}
from
'../something/uis/FestivalTarget'
;
import
{
GameGuide
}
from
'../something/uis/GameGuide'
;
import
{
PropBtnCon
}
from
'../something/uis/PropBtnCon'
;
import
{
PropGuide
}
from
'../something/uis/PropGuide'
;
import
{
ScoreProgress
}
from
'../something/uis/ScoreProgress'
;
import
{
StepNumber
}
from
'../something/uis/StepNumber'
;
import
{
getBgOn
,
getSoundOn
,
playSound
,
SoundType
,
stopBg
,
toggleSound
}
from
'../soundCtrl'
;
import
{
playGameBg
,
toggleGameBg
}
from
'../soundCtrl2'
;
import
{
createData
}
from
'../startScene/StartScene'
;
import
{
DataManager
}
from
'../../libs/tw/manager/DataManager'
;
import
{
NetManager
}
from
'../../libs/tw/manager/NetManager'
;
import
{
readCache
,
getCacheKey
}
from
'../mapScene/GuideCon'
;
import
{
StepAni
}
from
'../something/anis/StepAni'
;
import
{
updateMainTimerAfterGetData
}
from
'../../libs/new_wx/MainBase'
;
import
wait
from
'../../libs/new_tc/wait'
;
import
{
AiControl
,
fesELeSmallNum
}
from
'../something/logic/AiControl'
;
import
{
JellyDisAni
}
from
'../something/anis/JellyDisAni'
;
import
{
EggBrokenAni
}
from
'../something/anis/EggBrokenAni'
;
import
{
FallAniData
,
FallType
}
from
'../something/interface/FallAniData'
;
import
{
EleMaskAni
}
from
'../something/anis/EleMaskAni'
;
import
{
getChapterData
}
from
'../something/chapters/getChapter'
;
import
{
GenerateLatData
}
from
'../something/interface/GenerateLatData'
;
import
{
StateType
}
from
'../something/enum/StateType'
;
import
{
HairballBlackState
}
from
'../something/states/HairballBlackState'
;
import
{
HairballGreyDisAni
}
from
'../something/anis/HairballGreyDisAni'
;
import
{
HairballBrownState
}
from
'../something/states/HairballBrownState'
;
import
{
EleDownAni
}
from
'../something/anis/EleDownAni'
;
import
{
GameGuide
}
from
'../something/uis/GameGuide'
;
import
{
PropBtnCon
}
from
'../something/uis/PropBtnCon'
;
import
{
ChapterNum
}
from
'../something/uis/ChapterNum'
;
import
{
CurScoreNum
}
from
'../something/uis/CurScoreNum'
;
import
{
FestivalTarget
}
from
'../something/uis/FestivalTarget'
;
import
getRedBombAward
,
{
getRedBombTimes
}
from
'../getRedBombAward'
;
import
{
FesRedBombShowAni
}
from
'../something/anisCall/FesRedBombShowAni'
;
import
{
RectsWaveAni
}
from
'../something/anisCall/RectsWaveAni'
;
import
Utils
from
'../Utils'
;
import
{
DataManager
}
from
'./../../libs/tw/manager/DataManager'
;
import
{
NetManager
}
from
'./../../libs/tw/manager/NetManager'
;
import
{
loadSvga
}
from
'../loadSvga'
;
import
Utils
from
'../Utils'
;
const
aniClass
=
{
"BoomAni"
:
BoomAni
,
...
...
@@ -544,19 +548,26 @@ export default class MainScene extends Scene {
}
else
{
this
.
lattices
[
i
].
reset
(
i
);
}
//冰块
if
(
latticesD
[
i
]
==
2
||
latticesD
[
i
]
==
3
)
{
if
(
isSpecialLattice
(
latticesD
[
i
]))
{
//冰块,石门等特殊地图格子配置
let
latticeDisplay
:
egret
.
DisplayObject
;
//冰块,石门等的显示对象
var
p
=
Tool
.
getPositionByIndex
(
i
);
if
(
isIce
(
latticesD
[
i
]))
{
let
ice
=
Pool
.
takeOut
(
RecoverName
.
ICE
);
if
(
!
ice
)
{
if
(
!
ice
)
{
ice
=
new
Ice
(
latticesD
[
i
]
-
1
);
}
else
{
ice
.
reset
(
latticesD
[
i
]
-
1
);
}
this
.
map
.
addChild
(
ice
)
;
latticeDisplay
=
ice
;
this
.
lattices
[
i
].
ice
=
ice
;
ice
.
x
=
p
[
0
];
ice
.
y
=
p
[
1
];
}
else
{
latticeDisplay
=
genBlockDisplay
(
latticesD
[
i
]);
this
.
lattices
[
i
].
block
=
latticeDisplay
as
BaseBlock
;
}
this
.
map
.
addChild
(
latticeDisplay
);
latticeDisplay
.
x
=
p
[
0
];
latticeDisplay
.
y
=
p
[
1
];
}
}
//生成口数据
...
...
@@ -612,16 +623,16 @@ export default class MainScene extends Scene {
var
p
=
Tool
.
getPositionByIndex
(
i
);
switch
(
elements
[
i
])
{
//如果为0记录空格
case
0
:
case
ElementConfigType
.
EMPTY
:
this
.
emptys
.
push
(
i
);
break
;
//基础元素,枷锁,气泡,灰色毛球,褐色毛球,黑色毛球
case
1
:
case
4
:
case
7
:
case
8
:
case
9
:
case
10
:
//基础元素,枷锁,气泡,灰色毛球,褐色毛球,黑色毛球
&& 石门锁,有条件的锁
case
ElementConfigType
.
BASE
:
case
ElementConfigType
.
LOCK
:
case
ElementConfigType
.
BUBBLE
:
case
ElementConfigType
.
HAIRBALLGREY
:
case
ElementConfigType
.
HAIRBALLBROWN
:
case
ElementConfigType
.
HAIRBALLBLACK
:
var
type
=
Tool
.
returnType
(
i
,
this
.
lattices
,
this
.
chapterData
.
baseElementTypes
);
let
ele
:
Element
=
Pool
.
takeOut
(
RecoverName
.
ELEMENT
);
if
(
!
ele
)
{
...
...
@@ -633,30 +644,30 @@ export default class MainScene extends Scene {
ele
.
y
=
p
[
1
];
this
.
elementContainer
.
addChild
(
ele
);
this
.
lattices
[
i
].
element
=
ele
;
if
(
elements
[
i
]
==
4
)
{
if
(
elements
[
i
]
==
ElementConfigType
.
LOCK
)
{
ele
.
setState
(
StateType
.
LOCK
,
true
)
}
//气泡
else
if
(
elements
[
i
]
==
7
)
{
else
if
(
elements
[
i
]
==
ElementConfigType
.
BUBBLE
)
{
//气泡要设定type
ele
.
setState
(
StateType
.
BUBBLE
,
true
,
type
)
}
//灰色毛球
else
if
(
elements
[
i
]
==
8
)
{
else
if
(
elements
[
i
]
==
ElementConfigType
.
HAIRBALLGREY
)
{
ele
.
setState
(
StateType
.
HAIRBALLGREY
,
true
)
}
//褐色毛球
else
if
(
elements
[
i
]
==
9
)
{
else
if
(
elements
[
i
]
==
ElementConfigType
.
HAIRBALLBROWN
)
{
ele
.
setState
(
StateType
.
HAIRBALLBROWN
,
true
)
}
//黑色毛球
else
if
(
elements
[
i
]
==
10
)
{
else
if
(
elements
[
i
]
==
ElementConfigType
.
HAIRBALLBLACK
)
{
ele
.
setState
(
StateType
.
HAIRBALLBLACK
,
true
)
}
break
;
//棒棒糖
case
3
:
case
ElementConfigType
.
LOLLIPOP
:
this
.
lollipopCount
++
;
let
lol
:
Element
=
Pool
.
takeOut
(
RecoverName
.
ELEMENT
);
if
(
!
lol
)
{
...
...
@@ -670,7 +681,7 @@ export default class MainScene extends Scene {
this
.
lattices
[
i
].
element
=
lol
;
break
;
//石头
case
2
:
case
ElementConfigType
.
ROCK
:
let
rock
:
Element
=
Pool
.
takeOut
(
RecoverName
.
ELEMENT
);
if
(
!
rock
)
{
rock
=
new
Element
(
ElementType
.
ROCK
)
...
...
@@ -683,7 +694,7 @@ export default class MainScene extends Scene {
this
.
lattices
[
i
].
element
=
rock
;
break
;
//果冻
case
5
:
case
ElementConfigType
.
JELLY
:
let
jelly
:
Element
=
Tool
.
getElement
(
ElementType
.
JELLY
)
jelly
.
x
=
p
[
0
];
jelly
.
y
=
p
[
1
];
...
...
@@ -691,7 +702,7 @@ export default class MainScene extends Scene {
this
.
lattices
[
i
].
element
=
jelly
;
break
;
//鸡蛋
case
6
:
case
ElementConfigType
.
CHICKEN_EGG
:
let
egg
:
Element
=
Tool
.
getElement
(
ElementType
.
CHICKEN_EGG
)
egg
.
x
=
p
[
0
];
egg
.
y
=
p
[
1
];
...
...
@@ -703,7 +714,6 @@ export default class MainScene extends Scene {
this
.
emptys
.
push
(
i
);
break
}
}
}
...
...
@@ -1000,6 +1010,7 @@ export default class MainScene extends Scene {
var
ele
=
e
.
target
.
parent
if
(
ele
instanceof
Element
&&
// ele.type != ElementType.ROCK &&
!
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
//石门无法消除
ele
.
type
!=
ElementType
.
LOLLIPOP
)
{
this
.
elementContainer
.
removeEventListener
(
egret
.
TouchEvent
.
TOUCH_BEGIN
,
fun
,
this
);
var
index
=
ele
.
index
;
...
...
@@ -1871,12 +1882,14 @@ export default class MainScene extends Scene {
/**
* 掉落完后的操作
*/
fallCallback
()
{
async
fallCallback
()
{
//掉落后有消除,执行消除
if
(
this
.
threeMatch
())
{
this
.
eliminate
()
return
}
//消除结束之后检查石门
await
this
.
checkAllBlock
();
//鸡蛋的ai操作,存在判断三消,毛球的ai,也一样,所以放前面,存在三消时都直接执行eliminate了。不执行后续的回调
AiControl
.
ins
.
eggMotion
(
this
,
()
=>
{
//后执行毛球跳动
...
...
@@ -1956,6 +1969,16 @@ export default class MainScene extends Scene {
})
}
checkAllBlock
()
{
// this.lattices.filter(item => item.block).forEach((item) => {
// item.block.nextState();
// });
return
Promise
.
all
(
this
.
lattices
.
filter
(
item
=>
item
.
block
).
map
((
item
)
=>
{
return
item
.
block
.
nextState
();
})
)
}
/**
* 果冻蔓延和气泡变色需要重新检查死图
*/
...
...
@@ -2202,6 +2225,9 @@ export default class MainScene extends Scene {
ele
.
setState
(
StateType
.
LOCK
,
false
);
//暂时笼子不算个数,算的话,改图片名称,列入ElementType的状态下
}
else
if
(
ele
.
hasState
(
StateType
.
BLOCK_LOCK
))
{
//这里不需要消除石门上的元素的状态,石门上的元素状态只由石门来修改
}
//有褐色毛球的,记录分裂激活
else
if
(
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
))
{
var
hairballBrownState
:
HairballBrownState
=
ele
.
getState
(
StateType
.
HAIRBALLBROWN
);
...
...
@@ -2756,8 +2782,9 @@ export default class MainScene extends Scene {
* @param lat
*/
iceBroken
(
lat
:
Lattice
)
{
if
(
lat
&&
lat
.
ice
)
{
var
ice
=
lat
.
ice
;
if
(
!
lat
)
return
;
if
(
lat
.
ice
)
{
//带冰的lattice
const
ice
=
lat
.
ice
;
ice
.
countNum
--
;
if
(
ice
.
countNum
==
0
)
{
this
.
map
.
removeChild
(
ice
);
...
...
@@ -2768,7 +2795,20 @@ export default class MainScene extends Scene {
}
else
{
ice
.
alpha
=
0.6
;
}
var
p
=
Tool
.
getPositionByIndex
(
lat
.
index
);
const
p
=
Tool
.
getPositionByIndex
(
lat
.
index
);
//动画
this
.
playAni
(
RecoverName
.
ICE_ANI
,
p
);
}
else
if
(
lat
.
block
&&
lat
.
block
.
ice
&&
lat
.
block
.
canIceBroken
)
{
//石门(可能带冰) && 石门反转了可以消除了
const
block
=
lat
.
block
;
block
.
iceCountNum
--
;
if
(
block
.
iceCountNum
==
0
)
{
block
.
ice
&&
block
.
ice
.
parent
&&
block
.
ice
.
parent
.
removeChild
(
block
.
ice
);
this
.
goElementTarget
(
ElementType
.
ICE
,
[
block
.
x
,
block
.
y
]);
block
.
ice
=
null
;
}
else
{
block
.
ice
.
alpha
=
0.6
;
}
const
p
=
Tool
.
getPositionByIndex
(
lat
.
index
);
//动画
this
.
playAni
(
RecoverName
.
ICE_ANI
,
p
);
}
...
...
egret/src/mainScene/map.md
0 → 100644
View file @
54102687
## 概念
-
lattices 地图背景格子
-
elements 元素配置
-
generateLats 能生成元素的格子
-
baseElements 默认填入的元素
-
baseElementTypes 基础元素类型
## Lattice
# 主类
-
initLattices();
# 数据
-
index 索引 0-80。最多一共81个地图格子
# 控制器
## class Lattice
## Element 元素
## class Element
\ No newline at end of file
egret/src/mainScene/readme.md
0 → 100644
View file @
54102687
# 地图
-
需要居中,比如最多9列表,8列的需要水平居中
# lattices 地图背景配置
-
0无格子
-
1普通格子
-
2浅冰块
-
3深冰块
-
4石门
-
5石门+浅冰块
-
6石门+深冰块
# elements
# 包
-
egret/src/something/chapters
# main scene 视图
-
exchangeElementAni() 播放交换动画动画。只要交换就会播放,不管是否可以消除。
-
simpleMatch() 判断是否可以消除
# main scene 数据
-
exchangeData() 视图交换之后需要交换数据
# mainscene 控制
-
eliminate() 消除方法。
\ No newline at end of file
egret/src/something/Tool.ts
View file @
54102687
...
...
@@ -272,6 +272,7 @@ export class Tool {
//上方元素为石头,或元素为锁定,或者是果冻,或者鸡蛋,或者大节日元素
else
if
(
lat
.
element
.
type
==
ElementType
.
ROCK
||
lat
.
element
.
hasState
(
StateType
.
LOCK
)
||
lat
.
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
lat
.
element
.
type
==
ElementType
.
JELLY
||
lat
.
element
.
type
==
ElementType
.
CHICKEN_EGG
||
lat
.
element
.
type
==
ElementType
.
FESTIVALELE_BIG
//||
...
...
@@ -295,6 +296,7 @@ export class Tool {
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBLACK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBROWN
)
&&
!
lat
.
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
lat
.
element
.
type
!=
ElementType
.
FESTIVALELE_SMALL
)
{
return
true
...
...
@@ -313,6 +315,7 @@ export class Tool {
lat
.
element
.
effectType
!=
EffectType
.
MAGICLION
&&
//特效不为魔力鸟
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
&&
//不带毛球, 下同
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBLACK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBROWN
)
)
{
return
true
...
...
@@ -361,6 +364,7 @@ export class Tool {
public
static
judgeUpsetMove
(
lat
:
Lattice
)
{
if
(
Tool
.
judgeBaseEle
(
lat
)
&&
//基础元素
!
lat
.
element
.
hasState
(
StateType
.
LOCK
)
&&
//不带锁
!
lat
.
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
&&
//不带毛球,下同
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBLACK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBROWN
)
...
...
@@ -380,6 +384,7 @@ export class Tool {
public
static
judgeSetFesEle
(
lat
:
Lattice
)
{
if
(
Tool
.
judgeBaseEle
(
lat
)
&&
//基础元素
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
&&
//不带毛球,下同
!
lat
.
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBLACK
)
&&
!
lat
.
element
.
hasState
(
StateType
.
HAIRBALLBROWN
)
)
{
...
...
@@ -399,6 +404,7 @@ export class Tool {
if
(
!
ele
||
ele
.
type
==
ElementType
.
ROCK
||
ele
.
hasState
(
StateType
.
LOCK
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
//石门盖住
ele
.
hasState
(
StateType
.
HAIRBALLGREY
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
||
...
...
@@ -427,6 +433,7 @@ export class Tool {
ele
.
type
==
ElementType
.
FESTIVALELE_SMALL
||
ele
.
hasState
(
StateType
.
LOCK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLGREY
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
)
{
...
...
@@ -444,6 +451,7 @@ export class Tool {
ele
.
effectType
!=
null
||
ele
.
hasState
(
StateType
.
LOCK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLGREY
)
||
ele
.
hasState
(
StateType
.
BLOCK_LOCK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBLACK
)
||
ele
.
hasState
(
StateType
.
HAIRBALLBROWN
)
)
{
...
...
@@ -712,6 +720,7 @@ export class Tool {
!
lattices
[
i
].
element
.
hasState
(
StateType
.
LOCK
)
&&
!
lattices
[
i
].
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
&&
!
lattices
[
i
].
element
.
hasState
(
StateType
.
HAIRBALLBLACK
)
&&
!
lattices
[
i
].
element
.
hasState
(
StateType
.
BLOCK_LOCK
)
&&
!
lattices
[
i
].
element
.
hasState
(
StateType
.
HAIRBALLGREY
)
)
{
var
type
=
lattices
[
i
].
element
.
type
;
...
...
egret/src/something/block/BaseBlock.ts
0 → 100644
View file @
54102687
import
centerAnchor
from
"./centerAnchor"
;
import
{
Element
}
from
"../class/Element"
;
import
{
StateType
}
from
"../enum/StateType"
;
export
default
class
BaseBlock
extends
egret
.
DisplayObjectContainer
{
constructor
(
state
)
{
super
();
this
.
_state
=
state
;
this
.
initUI
();
}
initUI
()
{
this
.
_block
=
new
egret
.
Bitmap
(
RES
.
getRes
(
'common_block_png'
));
this
.
_blockBgFront
=
new
egret
.
Bitmap
(
RES
.
getRes
(
'common_block_front_png'
));
this
.
_blockBgBlue
=
new
egret
.
Bitmap
(
RES
.
getRes
(
'common_block_bg_blue_png'
));
this
.
_blockBgRed
=
new
egret
.
Bitmap
(
RES
.
getRes
(
'common_block_bg_red_png'
));
this
.
_blockBgYellow
=
new
egret
.
Bitmap
(
RES
.
getRes
(
'common_block_bg_yellow_png'
));
this
.
addChild
(
this
.
_blockBgBlue
);
this
.
addChild
(
this
.
_blockBgRed
);
this
.
addChild
(
this
.
_blockBgYellow
);
this
.
addChild
(
this
.
_block
);
this
.
addChild
(
this
.
_blockBgFront
);
centerAnchor
(
this
.
_block
);
centerAnchor
(
this
.
_blockBgFront
);
centerAnchor
(
this
.
_blockBgBlue
);
centerAnchor
(
this
.
_blockBgRed
);
centerAnchor
(
this
.
_blockBgYellow
);
this
.
_blockBgRed
.
scaleX
=
this
.
_blockBgRed
.
scaleY
=
1.1
;
this
.
_blockBgBlue
.
scaleX
=
this
.
_blockBgBlue
.
scaleY
=
1.1
;
this
.
_blockBgYellow
.
scaleX
=
this
.
_blockBgYellow
.
scaleY
=
1.1
;
this
.
nextState
(
true
);
}
private
_element
:
Element
;
set
element
(
val
:
Element
)
{
if
(
this
.
_element
)
{
this
.
_element
.
setState
(
StateType
.
BLOCK_LOCK
,
false
);
this
.
_element
=
null
;
}
if
(
val
)
{
this
.
_element
=
val
;
this
.
updateElementState
();
//刚刚设置元素的时候
}
};
iceCountNum
?:
number
;
ice
:
egret
.
Bitmap
;
/**
* 石门反转了可以消除了
*/
get
canIceBroken
()
{
return
this
.
_state
>=
3
;
}
isLock
()
{
return
this
.
_state
<=
2
;
}
//状态0红门 1蓝门 2黄门 3红 4黄 5蓝
private
_state
=
-
1
;
private
_changing
=
false
;
async
nextState
(
first
=
false
)
{
//先改数据再改视图
this
.
_state
++
;
if
(
this
.
_state
>
5
)
this
.
_state
=
0
;
await
this
.
changeState
(
first
);
}
private
updateElementState
()
{
if
(
!
this
.
_element
)
return
;
if
(
this
.
_state
<=
2
)
{
this
.
_element
.
scaleX
=
0
;
this
.
_element
.
setState
(
StateType
.
BLOCK_LOCK
,
true
);
}
else
{
this
.
_element
.
scaleX
=
1
;
this
.
_element
.
setState
(
StateType
.
BLOCK_LOCK
,
false
);
}
}
playToFrontAni
()
{
return
new
Promise
((
r
)
=>
{
const
dur
=
300
;
this
.
_block
.
visible
=
true
;
this
.
_block
.
scaleX
=
1
;
egret
.
Tween
.
get
(
this
.
_block
).
to
({
scaleX
:
0
},
dur
).
call
(()
=>
{
this
.
_blockBgFront
.
visible
=
true
;
this
.
_blockBgFront
.
scaleX
=
0
;
if
(
this
.
ice
)
{
this
.
ice
.
visible
=
true
;
this
.
ice
.
scaleX
=
0
;
egret
.
Tween
.
get
(
this
.
ice
).
to
({
scaleX
:
1
},
dur
);
}
if
(
this
.
_element
)
{
this
.
_element
.
scaleX
=
0
;
egret
.
Tween
.
get
(
this
.
_element
).
to
({
scaleX
:
1
},
dur
);
}
egret
.
Tween
.
get
(
this
.
_blockBgFront
).
to
({
scaleX
:
1
},
dur
).
call
(()
=>
{
r
();
})
})
})
}
playToBackAni
()
{
return
new
Promise
((
r
)
=>
{
const
dur
=
300
;
this
.
_blockBgFront
.
visible
=
true
;
this
.
_blockBgFront
.
scaleX
=
1
;
egret
.
Tween
.
get
(
this
.
_blockBgFront
).
to
({
scaleX
:
0
},
dur
).
call
(()
=>
{
this
.
_block
.
visible
=
true
;
this
.
_block
.
scaleX
=
0
;
egret
.
Tween
.
get
(
this
.
_block
).
to
({
scaleX
:
1
},
dur
).
call
(()
=>
{
r
();
})
});
if
(
this
.
ice
)
{
this
.
ice
.
visible
=
true
;
this
.
ice
.
scaleX
=
1
;
egret
.
Tween
.
get
(
this
.
ice
).
to
({
scaleX
:
0
},
dur
);
}
if
(
this
.
_element
)
{
this
.
_element
.
scaleX
=
1
;
egret
.
Tween
.
get
(
this
.
_element
).
to
({
scaleX
:
0
},
dur
);
}
})
}
async
changeState
(
first
)
{
if
(
this
.
_changing
)
{
throw
new
Error
(
'正在更改状态中'
)
}
this
.
_changing
=
true
;
this
.
_block
.
visible
=
false
;
this
.
_blockBgFront
.
visible
=
false
;
this
.
_blockBgBlue
.
visible
=
false
;
this
.
_blockBgRed
.
visible
=
false
;
this
.
_blockBgYellow
.
visible
=
false
;
switch
(
this
.
_state
)
{
case
0
:
if
(
!
first
)
{
await
this
.
playToBackAni
();
this
.
updateElementState
();
this
.
_blockBgFront
.
visible
=
false
;
this
.
_blockBgFront
.
scaleX
=
1
;
}
else
{
this
.
_block
.
visible
=
true
;
}
this
.
_blockBgRed
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgRed
);
break
;
case
1
:
this
.
_block
.
visible
=
true
;
this
.
_blockBgYellow
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgYellow
);
break
;
case
2
:
this
.
_block
.
visible
=
true
;
this
.
_blockBgBlue
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgBlue
);
break
;
case
3
:
//翻转了
await
this
.
playToFrontAni
();
this
.
updateElementState
();
this
.
_block
.
visible
=
false
;
this
.
_block
.
scaleX
=
1
;
this
.
_blockBgRed
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgRed
);
break
;
case
4
:
//翻转了
this
.
_blockBgFront
.
visible
=
true
;
this
.
_blockBgYellow
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgYellow
);
break
;
case
5
:
//翻转了
this
.
_blockBgFront
.
visible
=
true
;
this
.
_blockBgBlue
.
visible
=
true
;
this
.
addAni
(
this
.
_blockBgBlue
);
break
;
default
:
break
;
}
this
.
_changing
=
false
;
}
_blockBgYellow
:
egret
.
Bitmap
;
_blockBgRed
:
egret
.
Bitmap
;
_blockBgBlue
:
egret
.
Bitmap
;
/**
* 未反转过来的背面
*/
_block
:
egret
.
Bitmap
;
/**
* 反转过来的正面
*/
_blockBgFront
:
egret
.
Bitmap
;
addAni
(
obj
)
{
egret
.
Tween
.
removeTweens
(
obj
);
const
dur
=
600
;
egret
.
Tween
.
get
(
obj
,
{
loop
:
true
}).
set
({
alpha
:
0
})
.
to
({
alpha
:
1
},
dur
).
to
({
alpha
:
0
},
dur
)
.
to
({
alpha
:
1
},
dur
).
to
({
alpha
:
0
},
dur
)
}
}
\ No newline at end of file
egret/src/something/block/Block.ts
0 → 100644
View file @
54102687
import
BaseBlock
from
"./BaseBlock"
;
import
centerAnchor
from
"./centerAnchor"
;
export
default
class
Block
extends
BaseBlock
{
initUI
()
{
super
.
initUI
();
}
}
\ No newline at end of file
egret/src/something/block/BlockDarkIce.ts
0 → 100644
View file @
54102687
import
{
ElementType
}
from
"../enum/ElementType"
;
import
BaseBlock
from
"./BaseBlock"
;
import
centerAnchor
from
"./centerAnchor"
;
export
default
class
BlockDarkIce
extends
BaseBlock
{
initUI
()
{
super
.
initUI
();
this
.
ice
=
new
egret
.
Bitmap
(
RES
.
getRes
(
"ele"
+
ElementType
.
ICE
+
"_png"
));
this
.
ice
.
alpha
=
1
;
this
.
addChild
(
this
.
ice
);
centerAnchor
(
this
.
ice
);
this
.
ice
.
visible
=
false
;
}
iceCountNum
=
2
;
}
\ No newline at end of file
egret/src/something/block/BlockIce.ts
0 → 100644
View file @
54102687
import
{
ElementType
}
from
"../enum/ElementType"
;
import
BaseBlock
from
"./BaseBlock"
;
import
centerAnchor
from
"./centerAnchor"
;
export
default
class
BlockIce
extends
BaseBlock
{
initUI
()
{
super
.
initUI
();
this
.
ice
=
new
egret
.
Bitmap
(
RES
.
getRes
(
"ele"
+
ElementType
.
ICE
+
"_png"
));
this
.
ice
.
alpha
=
0.6
;
this
.
addChild
(
this
.
ice
);
centerAnchor
(
this
.
ice
);
this
.
ice
.
visible
=
false
;
}
iceCountNum
=
1
;
}
\ No newline at end of file
egret/src/something/block/centerAnchor.ts
0 → 100644
View file @
54102687
export
default
(
d
:
egret
.
DisplayObject
)
=>
{
d
.
anchorOffsetX
=
d
.
width
/
2
;
d
.
anchorOffsetY
=
d
.
height
/
2
;
}
\ No newline at end of file
egret/src/something/block/genBlockDisplay.ts
0 → 100644
View file @
54102687
import
{
LatticeType
}
from
"../enum/LatticeType"
;
import
Block
from
"./Block"
;
import
BlockDarkIce
from
"./BlockDarkIce"
;
import
BlockIce
from
"./BlockIce"
;
export
default
(
type
:
LatticeType
)
=>
{
const
typestr
=
type
+
''
;
let
_state
=
-
1
;
if
(
typestr
.
length
==
2
)
{
//是门开
const
arr
=
typestr
.
split
(
''
);
type
=
parseInt
(
arr
[
0
]);
// _state=-1;
_state
=
2
;
}
switch
(
type
)
{
case
LatticeType
.
BlOCK
:
return
new
Block
(
_state
);
case
LatticeType
.
BLOCK_AND_ICE
:
return
new
BlockIce
(
_state
);
case
LatticeType
.
BLOCK_AND_DARK_ICE
:
return
new
BlockDarkIce
(
_state
);
default
:
break
;
}
return
null
}
egret/src/something/chapters/Chapter12.ts
View file @
54102687
...
...
@@ -260,5 +260,375 @@ export const Chapters12: ChapterData[] = [
{
index
:
32
,
type
:
0
},
]
}
},
//226
{
baseElementTypes
:
[
4
,
3
,
2
,
0
,
1
],
bubbleProbability
:
0
,
stepCount
:
28
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
29
}]
},
starScores
:
[
12000
,
18000
,
22000
],
map
:
{
lattices
:
[
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
2
,
0
,
2
,
3
,
41
,
1
,
41
,
3
,
2
,
0
,
0
,
0
,
3
,
1
,
1
,
1
,
3
,
0
,
0
,
0
,
2
,
41
,
3
,
3
,
3
,
41
,
2
,
0
,
2
,
1
,
1
,
3
,
0
,
3
,
1
,
1
,
2
,
2
,
1
,
1
,
3
,
3
,
3
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
],
connectedLats
:
[[
18
,
54
],
[
28
,
46
],
[
13
,
31
],
[
49
,
67
],
[
34
,
52
],
[
26
,
62
]],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
0
,
type
:
null
},
{
index
:
1
,
type
:
null
},
{
index
:
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
}]
}
},
//227
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
41
}]
},
starScores
:
[
5000
,
11000
,
21000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
3
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
3
,
3
,
3
,
1
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
1
,
3
,
3
,
3
,
3
,
3
,
1
,
0
,
0
,
1
,
3
,
3
,
3
,
3
,
3
,
1
,
0
,
1
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
1
,
3
,
3
,
3
,
61
,
3
,
6
,
3
,
3
,
3
,
3
,
3
,
61
,
0
,
0
,
0
,
6
,
3
,
3
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
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
,
7
,
7
,
7
,
1
,
1
,
1
,
1
,
1
,
1
,
7
,
4
,
7
,
1
,
1
,
1
,
1
,
1
,
2
,
4
,
4
,
4
,
2
,
1
,
1
,
1
,
2
,
5
,
5
,
5
,
5
,
5
,
2
,
1
,
7
,
7
,
7
,
1
,
1
,
1
,
7
,
7
,
7
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
4
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
20
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
37
,
type
:
null
},
{
index
:
43
,
type
:
null
},
{
index
:
54
,
type
:
null
},
{
index
:
62
,
type
:
null
}]
}
},
//228
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
33
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
33
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
0
,
3
,
1
,
2
,
2
,
0
,
2
,
2
,
1
,
3
,
3
,
1
,
2
,
0
,
1
,
0
,
2
,
1
,
3
,
3
,
1
,
1
,
2
,
0
,
2
,
1
,
1
,
3
,
61
,
1
,
1
,
2
,
52
,
2
,
1
,
1
,
61
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
0
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
0
],
connectedLats
:
[[
20
,
38
],
[
22
,
40
],
[
30
,
48
]],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
7
,
1
,
1
,
1
,
1
,
1
,
7
,
1
,
2
,
7
,
1
,
1
,
1
,
1
,
1
,
7
,
2
,
2
,
7
,
1
,
1
,
8
,
1
,
1
,
7
,
2
,
2
,
7
,
1
,
1
,
1
,
1
,
1
,
7
,
2
,
2
,
7
,
1
,
1
,
2
,
1
,
1
,
7
,
2
,
2
,
7
,
1
,
1
,
1
,
1
,
1
,
7
,
2
,
2
,
7
,
1
,
1
,
1
,
1
,
1
,
7
,
2
,
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
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
16
,
type
:
null
},
{
index
:
18
,
type
:
null
},
{
index
:
26
,
type
:
null
}]
}
},
//229
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
6
,
count
:
5
}]
},
starScores
:
[
6000
,
12000
,
21000
],
map
:
{
lattices
:
[
0
,
0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
41
,
1
,
41
,
1
,
4
,
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
],
connectedLats
:
[[
12
,
30
],
[
14
,
32
]],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
1
,
6
,
1
,
6
,
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
,
7
,
7
,
7
,
7
,
7
,
7
,
7
,
7
,
7
,
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
:
[
54
,
62
,
64
,
70
,
74
,
75
,
76
,
77
,
78
],
generateLats
:
[{
index
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
16
,
type
:
null
},
{
index
:
18
,
type
:
null
},
{
index
:
26
,
type
:
null
}]
}
},
//230
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
50
},
{
type
:
9
,
count
:
62
}]
},
starScores
:
[
5000
,
11000
,
22000
],
map
:
{
lattices
:
[
0
,
3
,
3
,
0
,
0
,
0
,
3
,
3
,
0
,
0
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
41
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
4
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
41
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
4
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
3
,
3
,
41
,
3
,
3
,
0
,
0
],
connectedLats
:
[],
elements
:
[
1
,
2
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
6
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
6
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
6
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
6
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
2
,
1
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
2
,
2
,
6
,
2
,
2
,
1
,
1
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
1
,
type
:
null
},
{
index
:
2
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
18
,
type
:
null
},
{
index
:
22
,
type
:
null
},
{
index
:
26
,
type
:
null
}]
}
},
//231
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
23
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
50
},
{
type
:
5
,
count
:
14
}]
},
starScores
:
[
6000
,
12000
,
21000
],
map
:
{
lattices
:
[
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
41
,
1
,
41
,
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
1
,
1
,
4
,
4
,
4
,
4
,
4
,
1
,
1
,
5
,
4
,
4
,
4
,
2
,
4
,
4
,
4
,
5
,
5
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
5
,
5
,
4
,
6
,
6
,
6
,
6
,
6
,
4
,
5
,
5
,
2
,
7
,
7
,
7
,
7
,
7
,
2
,
5
,
5
,
4
,
7
,
7
,
7
,
7
,
7
,
4
,
5
,
5
,
2
,
7
,
7
,
7
,
7
,
7
,
2
,
5
,
5
,
4
,
2
,
2
,
2
,
2
,
2
,
4
,
5
,
5
,
2
,
7
,
7
,
7
,
7
,
7
,
2
,
5
],
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
:
9
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
11
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
13
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
15
,
type
:
null
},
{
index
:
16
,
type
:
null
},
{
index
:
17
,
type
:
null
},
{
index
:
20
,
type
:
null
},
{
index
:
21
,
type
:
null
},
{
index
:
22
,
type
:
null
},
{
index
:
23
,
type
:
null
},
{
index
:
24
,
type
:
null
},
{
index
:
38
,
type
:
null
},
{
index
:
39
,
type
:
null
},
{
index
:
40
,
type
:
null
},
{
index
:
41
,
type
:
null
},
{
index
:
42
,
type
:
null
}]
}
},
//232
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
26
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
6
,
count
:
3
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
4
,
1
,
1
,
1
,
41
,
1
,
41
,
1
,
4
,
1
,
4
,
1
,
41
,
1
,
41
,
1
,
1
,
1
,
4
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
41
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
0
,
0
,
0
,
2
,
0
,
0
,
0
,
2
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
5
,
5
,
2
,
5
,
5
,
5
,
2
,
5
,
5
,
5
,
2
,
2
,
2
,
5
,
2
,
2
,
2
,
5
],
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
}]
}
},
//233
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
46
}]
},
starScores
:
[
6000
,
12000
,
21000
],
map
:
{
lattices
:
[
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
6
,
1
,
1
,
3
,
3
,
3
,
3
,
3
,
6
,
1
,
1
,
1
,
1
,
3
,
3
,
3
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
61
,
3
,
3
,
3
,
1
,
1
,
1
,
1
,
61
,
3
,
3
,
3
,
3
,
3
,
1
,
1
,
61
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
4
,
2
,
1
,
2
,
2
,
1
,
1
,
1
,
4
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
4
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
4
,
1
,
1
,
1
,
2
,
2
,
1
,
2
,
4
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
2
,
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
,
53
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
43
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
33
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
13
,
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
}]
}
},
//234
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
30
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
66
},
{
type
:
5
,
count
:
19
}]
},
starScores
:
[
6000
,
12000
,
21000
],
map
:
{
lattices
:
[
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
,
1
,
1
,
1
,
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
,
41
,
41
,
41
,
41
,
41
,
41
,
41
,
0
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
5
,
5
,
5
,
2
,
1
,
1
,
1
,
2
,
5
,
5
,
5
,
5
,
5
,
2
,
1
,
2
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
2
,
1
,
6
,
6
,
6
,
6
,
6
,
6
,
6
,
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
}]
}
},
//235
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
30
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
45
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
0
,
0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
4
,
1
,
4
,
1
,
1
,
1
,
0
,
1
,
4
,
1
,
0
,
1
,
4
,
1
,
0
,
1
,
1
,
1
,
4
,
1
,
4
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
4
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
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
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
6
,
1
,
1
,
1
,
2
,
1
,
2
,
1
,
6
,
1
,
6
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
6
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
2
,
1
,
1
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
13
,
type
:
null
},
{
index
:
16
,
type
:
null
},
{
index
:
18
,
type
:
null
},
{
index
:
26
,
type
:
null
}]
}
},
//236
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
30
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
43
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
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
,
61
,
61
,
61
,
61
,
0
,
6
,
6
,
6
,
6
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
],
connectedLats
:
[[
54
,
5
],
[
64
,
6
],
[
74
,
7
],
[
75
,
17
],
[
22
,
76
]],
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
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
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
:
9
,
type
:
null
}]
}
},
//237
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
28
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
40
}]
},
starScores
:
[
6000
,
12000
,
21000
],
map
:
{
lattices
:
[
41
,
41
,
41
,
41
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
4
,
4
,
4
,
4
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
3
,
3
,
3
,
3
,
1
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
1
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
1
,
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
,
4
,
5
,
4
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
4
,
5
,
4
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
4
,
5
,
4
,
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
:
14
,
type
:
null
},
{
index
:
15
,
type
:
null
},
{
index
:
16
,
type
:
null
},
{
index
:
17
,
type
:
null
}]
}
},
//238
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
34
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
43
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
3
,
3
,
3
,
3
,
3
,
5
,
2
,
2
,
2
,
3
,
3
,
3
,
3
,
3
,
5
,
2
,
2
,
2
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
4
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
1
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
2
,
2
,
0
,
2
,
2
,
2
,
0
,
0
],
connectedLats
:
[[
56
,
6
],
[
57
,
7
],
[
58
,
8
],
[
15
,
33
],
[
17
,
53
],
[
42
,
73
],
[
62
,
74
]],
elements
:
[
1
,
1
,
1
,
1
,
1
,
2
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
2
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
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
,
21
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
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
}]
}
},
//239
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
27
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
55
},
{
type
:
2
,
count
:
40
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
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
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
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
],
connectedLats
:
[],
elements
:
[
5
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
5
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
5
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
],
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
}]
}
},
//240
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
26
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
81
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
61
,
61
,
3
,
6
,
6
,
6
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
6
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
61
,
3
,
3
,
3
,
3
,
3
,
6
,
3
,
3
,
61
,
61
,
61
,
3
,
6
,
6
,
6
,
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
,
2
,
2
,
2
,
1
,
2
,
2
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
2
,
2
,
1
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
],
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
}]
}
}
]
\ No newline at end of file
egret/src/something/chapters/Chapter13.ts
0 → 100644
View file @
54102687
import
{
ChapterData
}
from
"../interface/ChapterData"
;
/**
* 241到260关数据
*/
export
const
Chapters13
:
ChapterData
[]
=
[
//241
{
baseElementTypes
:
[
0
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
24
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
63
},
{
type
:
3
,
count
:
75
},
{
type
:
2
,
count
:
75
}]
},
starScores
:
[
7000
,
14000
,
28000
],
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
,
0
,
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
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
],
connectedLats
:
[[
20
,
38
],
[
30
,
48
],
[
31
,
58
],
[
32
,
50
],
[
25
,
43
]],
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
,
2
,
2
,
2
,
2
,
2
,
1
,
1
,
1
,
1
,
2
,
6
,
1
,
6
,
2
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
6
,
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
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
}]
}
},
//242
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
30
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
26
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
1
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
3
,
1
,
1
,
6
,
1
,
1
,
3
,
1
,
3
,
1
,
3
,
6
,
1
,
6
,
3
,
1
,
3
,
1
,
3
,
1
,
1
,
6
,
1
,
1
,
3
,
1
,
3
,
3
,
1
,
1
,
3
,
1
,
1
,
3
,
3
,
0
,
1
,
61
,
61
,
1
,
61
,
61
,
1
,
0
,
0
,
0
,
1
,
1
,
3
,
1
,
1
,
0
,
0
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
7
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
2
,
7
,
2
,
2
,
7
,
2
,
2
,
7
,
2
,
5
,
2
,
7
,
5
,
2
,
5
,
7
,
2
,
5
,
2
,
2
,
7
,
5
,
2
,
5
,
7
,
2
,
2
,
1
,
5
,
2
,
2
,
7
,
2
,
2
,
5
,
1
,
1
,
1
,
5
,
5
,
2
,
5
,
5
,
1
,
1
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
0
,
type
:
null
},
{
index
:
1
,
type
:
null
},
{
index
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
}]
}
},
//243
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
27
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
59
}]
},
starScores
:
[
5000
,
12000
,
21000
],
map
:
{
lattices
:
[
3
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
3
,
3
,
2
,
1
,
2
,
6
,
2
,
1
,
2
,
3
,
3
,
1
,
2
,
1
,
6
,
1
,
2
,
1
,
3
,
3
,
2
,
1
,
2
,
6
,
2
,
1
,
2
,
3
,
3
,
61
,
61
,
61
,
3
,
61
,
61
,
61
,
3
,
3
,
2
,
1
,
2
,
6
,
2
,
1
,
2
,
3
,
3
,
1
,
2
,
1
,
6
,
1
,
2
,
1
,
3
,
3
,
2
,
1
,
2
,
6
,
2
,
1
,
2
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
],
connectedLats
:
[],
elements
:
[
2
,
4
,
4
,
4
,
2
,
4
,
4
,
4
,
2
,
2
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
1
,
2
,
2
,
2
,
0
,
0
,
0
,
2
,
0
,
0
,
0
,
2
,
2
,
0
,
0
,
0
,
2
,
0
,
0
,
0
,
2
,
2
,
0
,
0
,
0
,
2
,
0
,
0
,
0
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
],
baseElements
:
[
0
,
2
,
2
,
2
,
0
,
2
,
2
,
2
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
recycles
:
[],
generateLats
:
[{
index
:
1
,
type
:
null
},
{
index
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
},
{
index
:
10
,
type
:
null
},
{
index
:
11
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
},
{
index
:
15
,
type
:
null
},
{
index
:
16
,
type
:
null
}]
}
},
//244
{
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
31
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
6
,
count
:
4
}]
},
starScores
:
[
6000
,
15000
,
21000
],
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
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
:
[[
27
,
45
],
[
28
,
46
],
[
29
,
47
],
[
30
,
48
],
[
31
,
49
],
[
32
,
50
],
[
33
,
51
],
[
34
,
52
],
[
35
,
53
],
[],
[]],
elements
:
[
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
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
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
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
,
76
,
77
,
78
,
79
,
80
],
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
}]
}
},
//245
{
baseElementTypes
:
[
1
,
2
,
3
,
4
],
bubbleProbability
:
10
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
32
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
3
,
0
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
0
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
0
,
1
,
1
,
3
,
3
,
3
,
1
,
1
,
3
,
3
,
1
,
1
,
3
,
1
,
3
,
1
,
1
,
3
,
3
,
1
,
1
,
3
,
3
,
3
,
1
,
1
,
0
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
3
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
0
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
0
,
3
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
8
,
8
,
8
,
1
,
6
,
1
,
1
,
1
,
1
,
8
,
1
,
8
,
1
,
1
,
1
,
1
,
6
,
1
,
8
,
8
,
8
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
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
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
6
,
type
:
null
},
{
index
:
7
,
type
:
null
},
{
index
:
8
,
type
:
null
}]
}
},
//246
{
baseElementTypes
:
[
4
,
3
,
2
,
1
],
bubbleProbability
:
10
,
stepCount
:
25
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
1
,
count
:
160
},
{
type
:
5
,
count
:
13
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
1
,
6
,
1
,
8
,
1
,
2
,
1
,
4
,
1
,
1
,
1
,
4
,
1
,
2
,
2
,
1
,
1
,
6
,
1
,
2
,
8
,
1
,
2
,
2
,
1
,
6
,
1
,
1
,
1
,
2
,
1
,
2
,
2
,
1
,
4
,
8
,
1
,
8
,
4
,
1
,
2
,
2
,
1
,
2
,
1
,
4
,
1
,
6
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
6
,
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
:
2
,
type
:
null
},
{
index
:
3
,
type
:
null
},
{
index
:
4
,
type
:
null
},
{
index
:
5
,
type
:
null
},
{
index
:
6
,
type
:
null
}]
}
},
//247
{
baseElementTypes
:
[
2
,
0
,
4
,
3
],
bubbleProbability
:
10
,
stepCount
:
24
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
52
}]
},
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
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
0
,
0
,
0
,
3
,
3
,
3
,
3
,
3
,
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
],
connectedLats
:
[[
10
,
55
],
[
11
,
29
],
[
12
,
30
],
[
13
,
31
],
[
14
,
32
],
[
15
,
33
],
[
16
,
61
],
[
38
,
56
],
[
39
,
57
],
[
40
,
58
],
[
41
,
59
],
[
42
,
60
]],
elements
:
[
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
2
,
2
,
1
,
1
,
1
,
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
:
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
}]
}
},
//248
{
baseElementTypes
:
[
2
,
0
,
4
,
3
],
bubbleProbability
:
10
,
stepCount
:
34
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
77
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
7
,
4
,
4
,
4
,
4
,
4
,
7
,
1
,
1
,
7
,
4
,
8
,
1
,
8
,
4
,
7
,
1
,
1
,
7
,
4
,
1
,
1
,
1
,
4
,
7
,
1
,
1
,
7
,
4
,
8
,
1
,
8
,
4
,
7
,
1
,
1
,
7
,
4
,
4
,
4
,
4
,
4
,
7
,
1
,
1
,
7
,
7
,
1
,
5
,
1
,
7
,
7
,
1
,
1
,
7
,
7
,
1
,
5
,
1
,
7
,
7
,
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
,
30
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
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
}]
}
},
//249
{
baseElementTypes
:
[
0
,
1
,
3
,
4
],
bubbleProbability
:
0
,
stepCount
:
32
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
9
,
count
:
67
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
6
,
3
,
3
,
6
,
3
,
6
,
3
,
3
,
6
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
0
,
3
,
0
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
0
],
connectedLats
:
[],
elements
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
1
,
2
,
1
,
2
,
1
,
1
,
2
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
1
,
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
:
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
}]
}
},
//250
{
baseElementTypes
:
[
0
,
2
,
4
,
3
],
bubbleProbability
:
0
,
stepCount
:
22
,
passTarget
:
{
type
:
1
,
elements
:
[{
type
:
6
,
count
:
7
}]
},
starScores
:
[
15000
,
20000
,
25000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
0
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
1
,
1
,
1
,
1
,
3
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
],
connectedLats
:
[[
30
,
18
],
[
31
,
19
],
[
32
,
20
],
[
63
,
33
],
[
64
,
34
],
[
65
,
35
],
[
44
,
59
],
[
52
,
58
],
[
60
,
57
]],
elements
:
[
1
,
1
,
1
,
1
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
5
,
5
,
1
,
1
,
1
,
5
,
5
,
5
,
5
,
5
,
5
,
1
,
1
,
1
,
5
,
1
,
5
,
1
,
1
,
1
,
5
,
5
,
5
,
5
,
5
,
5
,
1
,
1
,
1
,
5
,
5
,
5
,
5
,
5
,
5
,
1
,
1
,
1
,
5
,
5
,
1
,
5
,
1
,
5
,
5
,
5
,
5
,
5
,
1
,
1
,
5
,
5
,
5
,
5
,
1
,
5
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
5
,
5
,
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
,
14
,
14
,
14
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
:
[
44
,
52
,
60
],
generateLats
:
[{
index
:
4
,
type
:
null
},
{
index
:
12
,
type
:
null
},
{
index
:
14
,
type
:
null
}]
}
}
]
\ No newline at end of file
egret/src/something/chapters/getChapter.ts
View file @
54102687
...
...
@@ -14,6 +14,7 @@ import { PassTargetData } from "../interface/PassTargetData";
import
{
PassType
}
from
"../enum/PassType"
;
import
{
submitTran
}
from
"../enum/ElementType"
;
import
{
Chapters12
}
from
"./Chapter12"
;
import
{
Chapters13
}
from
"./Chapter13"
;
//所有的关卡
const
chapters
:
ChapterData
[]
=
[].
concat
(
...
...
@@ -29,6 +30,7 @@ const chapters: ChapterData[] = [].concat(
Chapters10
,
Chapters11
,
Chapters12
,
Chapters13
,
)
/**
* 获取关卡数据,返回关卡数据
...
...
egret/src/something/class/Ice.ts
View file @
54102687
import
{
ElementType
}
from
"../enum/ElementType"
;
import
ILattice
from
"../lattice/ILattice"
;
export
class
Ice
extends
egret
.
Bitmap
{
/**
...
...
egret/src/something/class/Lattice.ts
View file @
54102687
import
BaseBlock
from
"../block/BaseBlock"
;
import
{
Tool
}
from
"../Tool"
;
import
{
Element
}
from
"./Element"
;
import
{
Ice
}
from
"./Ice"
;
import
{
Tool
}
from
"../Tool"
;
/**
* 位置信息直接用一个二维数组记录,然后用row,col取
...
...
@@ -12,6 +13,11 @@ export class Lattice {
* 上面的冰块,是加在背景图上的
*/
ice
:
Ice
;
/**
* 石门,冰石门,深冰石门
*/
block
:
BaseBlock
;
/**
* 上面的元素(null,消除元素,石头,冰激凌等),
*/
...
...
@@ -29,6 +35,9 @@ export class Lattice {
value
.
column
=
this
.
column
;
}
this
.
_element
=
value
if
(
this
.
block
)
{
this
.
block
.
element
=
this
.
_element
;
}
}
/**
* 索引
...
...
@@ -67,6 +76,7 @@ export class Lattice {
this
.
column
=
rc
[
1
];
//重置属性,后面自行赋值
this
.
ice
=
null
;
this
.
block
=
null
;
this
.
element
=
null
;
this
.
up
=
null
;
this
.
down
=
null
;
...
...
egret/src/something/enum/ElementConfigType.ts
0 → 100644
View file @
54102687
/**
* 元素格子配置,需要和地图格子做区分
*/
export
enum
ElementConfigType
{
/**
* 空元素格
*/
EMPTY
=
0
,
/**
* 基础元素
*/
BASE
=
1
,
/**
* 石头
*/
ROCK
=
2
,
/**
* 棒棒糖
*/
LOLLIPOP
=
3
,
/**
* 枷锁
*/
LOCK
=
4
,
/**
* JELLY
*/
JELLY
=
5
,
/**
* CHICKEN_EGG
*/
CHICKEN_EGG
=
6
,
/**
* 气泡
*/
BUBBLE
=
7
,
/**
* 灰色毛球
*/
HAIRBALLGREY
=
8
,
/**
* 褐色毛球
*/
HAIRBALLBROWN
=
9
,
/**
* 黑色毛球
*/
HAIRBALLBLACK
=
10
,
// /**
// * 石门。石门正面的时候,无法消除。不是锁,锁可以被打破。
// */
// BLOCK_LOCK=11,
}
\ No newline at end of file
egret/src/something/enum/LatticeType.ts
0 → 100644
View file @
54102687
/**
* 地图格子配置,需要和元素格子做区分
*/
export
enum
LatticeType
{
EMPTY
=
0
,
NORMAL
=
1
,
ICE
=
2
,
DARK_ICE
=
3
,
BlOCK
=
4
,
//会持续存在,无法像冰块一样被消除,但是上方可以存在元素。只是展示的时候
BLOCK_AND_ICE
=
5
,
BLOCK_AND_DARK_ICE
=
6
}
// * 0无格子
// * 1普通格子
// * 2浅冰块
// * 3深冰块
// * 4石门
// * 5石门+浅冰块
// * 6石门+深冰块
export
const
isSpecialLattice
=
(
type
:
LatticeType
)
=>
{
return
type
!=
LatticeType
.
EMPTY
&&
type
!=
LatticeType
.
NORMAL
;
}
export
const
isIce
=
(
type
:
LatticeType
)
=>
{
return
type
==
LatticeType
.
ICE
||
type
==
LatticeType
.
DARK_ICE
}
\ No newline at end of file
egret/src/something/enum/RecoverName.ts
View file @
54102687
...
...
@@ -67,4 +67,6 @@ export enum RecoverName {
HAIRBALLBLACK_STATE
=
"HairballBlackState"
,
HAIRBALLBROWN_STATE
=
"HairballBrownState"
,
BLOCK_STATE
=
"BLOCK_STATE"
,
}
\ No newline at end of file
egret/src/something/enum/StateType.ts
View file @
54102687
...
...
@@ -4,6 +4,7 @@ import { LockState } from "../states/LockState";
import
{
HairballGreyState
}
from
"../states/HairballGreyState"
;
import
{
HairballBrownState
}
from
"../states/HairballBrownState"
;
import
{
HairballBlackState
}
from
"../states/HairballBlackState"
;
import
{
BlockLockState
}
from
"../states/BlockLockState"
;
/**
* 状态类型
...
...
@@ -14,6 +15,7 @@ export enum StateType {
HAIRBALLGREY
,
//灰色毛球 ,一次就消除
HAIRBALLBROWN
,
//褐色毛球 ,只能特效消除
HAIRBALLBLACK
,
//黑色毛球 ,两次消除,一次闭眼
BLOCK_LOCK
,
//石门盖住状态
}
...
...
@@ -24,4 +26,5 @@ export const stateDatas: { recoverName: RecoverName, className: any }[] = [
{
recoverName
:
RecoverName
.
HAIRBALLGREY_STATE
,
className
:
HairballGreyState
},
{
recoverName
:
RecoverName
.
HAIRBALLBROWN_STATE
,
className
:
HairballBrownState
},
{
recoverName
:
RecoverName
.
HAIRBALLBLACK_STATE
,
className
:
HairballBlackState
},
{
recoverName
:
RecoverName
.
BLOCK_STATE
,
className
:
BlockLockState
},
]
\ No newline at end of file
egret/src/something/interface/MapData.ts
View file @
54102687
import
{
GenerateLatData
}
from
"./GenerateLatData"
;
import
{
LatticeType
}
from
"../enum/LatticeType"
;
/**
* 地图数据接口
...
...
@@ -13,8 +14,11 @@ export interface MapData {
* 1普通格子
* 2浅冰块
* 3深冰块
* 4石门
* 5石门+浅冰块
* 6石门+深冰块
*/
lattices
:
number
[];
lattices
:
LatticeType
[];
/**
* 能生成元素的格子索引
*
...
...
egret/src/something/lattice/ILattice.ts
0 → 100644
View file @
54102687
export
default
interface
ILattice
{
reset
(
n
:
number
);
}
\ No newline at end of file
egret/src/something/logic/AiControl.ts
View file @
54102687
...
...
@@ -382,7 +382,7 @@ export class AiControl {
for
(
var
i
=
0
;
i
<
thisObj
.
lattices
.
length
;
i
++
)
{
var
lat
=
thisObj
.
lattices
[
i
];
//是基础元素,有气泡状态
if
(
Tool
.
judgeBaseEle
(
lat
)
&&
lat
.
element
.
hasState
(
StateType
.
BUBBLE
))
{
if
(
Tool
.
judgeBaseEle
(
lat
)
&&
lat
.
element
.
hasState
(
StateType
.
BUBBLE
)
&&
(
!
lat
.
block
||
!
lat
.
block
.
isLock
())
)
{
indexs
.
push
(
i
);
}
}
...
...
egret/src/something/states/BlockLockState.ts
0 → 100644
View file @
54102687
import
{
State
}
from
"../class/State"
;
import
{
Pool
}
from
"../Pool"
;
import
{
RecoverName
}
from
"../enum/RecoverName"
;
/**
* 石门锁住的状态比较特殊,他没有视图,是无形的
* 和lock有区别的,lock可以用消除来解除,石门锁不行
*/
export
class
BlockLockState
extends
State
{
// private showImage: egret.Bitmap;
constructor
()
{
super
();
// var texture: egret.Texture = RES.getRes("lockVine_png")
// this.showImage = new egret.Bitmap(texture);
// this.addChild(this.showImage);
// this.showImage.x = -texture.textureWidth / 2;
// this.showImage.y = -texture.textureHeight / 2
}
reset
()
{
// this.alpha = 1;
}
//要不要把动画放在这里,这种移除动效最好统一外面,常驻动效才
recover
()
{
// egret.Tween.get(this)
// .to({ alpha: 0 }, 750)
// .call(() => {
// if (this.parent) this.parent.removeChild(this);
// Pool.recover(RecoverName.LOCK_STATE, this);
// })
}
}
mock/happyclear/home.json
View file @
54102687
...
...
@@ -4,7 +4,7 @@
"desc"
:
"OK"
,
"timestamp"
:
1566885811031
,
"data"
:
{
"wealth"
:
0
,
"wealth"
:
796
0
,
"totalStars"
:
145
,
"levels"
:
[
{
...
...
@@ -1131,6 +1131,11 @@
"levelNum"
:
225
,
"maxScore"
:
47440
,
"stars"
:
1
},
{
"levelNum"
:
226
,
"maxScore"
:
47440
,
"stars"
:
1
}
],
"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