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
7f8e3a65
Commit
7f8e3a65
authored
Oct 23, 2019
by
wjf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
l
parent
02610ea8
Changes
10
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
507 additions
and
340 deletions
+507
-340
MainScene.ts
egret/src/mainScene/MainScene.ts
+217
-283
StartPanel.ts
egret/src/panels/StartPanel.ts
+6
-10
ChaptersOri.ts
egret/src/something/ChaptersOri.ts
+4
-17
Tool.ts
egret/src/something/Tool.ts
+50
-18
Chapter1.ts
egret/src/something/chapters/Chapter1.ts
+125
-0
Chapter2.ts
egret/src/something/chapters/Chapter2.ts
+38
-0
getChapter.ts
egret/src/something/chapters/getChapter.ts
+18
-0
FallELeType.ts
egret/src/something/enum/FallELeType.ts
+12
-0
GenerateLatData.ts
egret/src/something/interface/GenerateLatData.ts
+27
-0
MapData.ts
egret/src/something/interface/MapData.ts
+10
-12
No files found.
egret/src/mainScene/MainScene.ts
View file @
7f8e3a65
This diff is collapsed.
Click to expand it.
egret/src/panels/StartPanel.ts
View file @
7f8e3a65
...
...
@@ -13,12 +13,12 @@ import { iswx } from "../iswx";
import
PropType
from
"../PropType"
;
import
setGlow
from
"../setGlow"
;
import
{
showShare
}
from
"../shareCtrl"
;
import
{
Chapters
}
from
"../something/Chapters"
;
import
{
ElementType
}
from
"../something/enum/ElementType"
;
import
{
PassType
}
from
"../something/enum/PassType"
;
import
TargetItemRenderer
from
"./TargetItemRenderer"
;
import
{
addRankFriendList
}
from
"../mapScene/RankFriendList"
;
import
{
addAdComp
}
from
"./BoxPanel"
;
import
{
getChapterData
}
from
"../something/chapters/getChapter"
;
export
default
class
StartPanel
extends
Panel
{
static
currlevel
;
...
...
@@ -39,28 +39,24 @@ export default class StartPanel extends Panel {
this
[
'levelTxt'
].
text
=
`第
${
data
}
关`
;
this
.
_level
=
data
;
let
mapDataIndex
=
data
;
if
(
data
>=
56
&&
data
<=
70
)
{
//循环36到50
mapDataIndex
=
data
-
20
}
this
[
'targetGroup'
].
visible
=
false
;
this
[
'scoreGroup'
].
visible
=
false
;
const
levelType
=
Chapters
[
mapDataIndex
]
.
passTarget
.
type
;
const
levelType
=
getChapterData
(
mapDataIndex
)
.
passTarget
.
type
;
if
(
levelType
==
PassType
.
ELEMENT_TARGET
)
{
this
[
'targetGroup'
].
visible
=
true
;
// this['targetTxt'].text = '在规定步数内\n消除足够数量目标';
this
.
list
.
itemRenderer
=
TargetItemRenderer
;
const
ac
=
new
eui
.
ArrayCollection
(
Chapters
[
mapDataIndex
]
.
passTarget
.
elements
);
const
ac
=
new
eui
.
ArrayCollection
(
getChapterData
(
mapDataIndex
)
.
passTarget
.
elements
);
this
.
list
.
dataProvider
=
ac
;
const
elements
=
Chapters
[
mapDataIndex
]
.
passTarget
.
elements
;
const
elements
=
getChapterData
(
mapDataIndex
)
.
passTarget
.
elements
;
if
(
elements
.
length
==
1
&&
elements
[
0
].
type
==
ElementType
.
LOLLIPOP
)
this
[
'tips'
].
text
=
'在指定步数内将目标元素移至最底部'
;
}
else
if
(
levelType
==
PassType
.
SCORE_TARGET
)
{
this
[
'scoreGroup'
].
visible
=
true
;
this
[
'targetScoreTxt'
].
text
=
`
${
Chapters
[
mapDataIndex
]
.
passTarget
.
score
}
`
;
// this['targetTxt'].text = `在规定步数内\n分数达到${
Chapters[mapDataIndex]
.passTarget.score}分`;
this
[
'targetScoreTxt'
].
text
=
`
${
getChapterData
(
mapDataIndex
)
.
passTarget
.
score
}
`
;
// this['targetTxt'].text = `在规定步数内\n分数达到${
getChapterData(mapDataIndex)
.passTarget.score}分`;
}
const
prop2Nums
=
getPropNums
(
PropType
.
BOOM
);
...
...
egret/src/something/Chapters.ts
→
egret/src/something/Chapters
Ori
.ts
View file @
7f8e3a65
...
...
@@ -8,9 +8,10 @@ import { ElementType } from "./enum/ElementType";
// const Vigenere = CipherJS.Vigenere;
// Vigenere.encrypt('MY SECRET MESSAGE', 'MY SECRET KEY')
export
const
Chapters
:
ChapterData
[]
=
[
/**
* 副本,备用120关数据
*/
export
const
ChaptersOri
:
any
[]
=
[
//第0关为空吧,
null
,
//第一关
...
...
@@ -28,20 +29,6 @@ export const Chapters: ChapterData[] = [
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
],
generateLats
:
[
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
],
paths
:
[
{
indexs
:
[
"0_l_u"
,
"8_r_u"
,
"80_r_d"
,
"72_l_d"
,
"63_l_u"
,
"63_r_u"
,
"54_r_u"
,
"54_l_u"
],
holes
:
[
{
indexs
:
[
"50_l_u"
,
"50_l_d"
,
"50_r_d"
,
"50_r_u"
],
},
{
indexs
:
[
"48_l_u"
,
"48_l_d"
,
"48_r_d"
,
"48_r_u"
],
}
]
}
],
// connectedLats: [[27, 45], [28, 46], [29, 47]]
},
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
effectInitProbability
:
0.1
,
...
...
egret/src/something/Tool.ts
View file @
7f8e3a65
...
...
@@ -8,6 +8,7 @@ import { Pool } from "./Pool";
import
{
RecoverName
}
from
"./enum/RecoverName"
;
import
{
RectMask
}
from
"./class/RectMask"
;
import
{
FallType
}
from
"./interface/FallAniData"
;
import
{
GenerateLatData
}
from
"./interface/GenerateLatData"
;
export
class
Tool
{
/**
...
...
@@ -685,25 +686,39 @@ export class Tool {
/**
* 根据关卡的地图数据generateLats
*
设置每列最上面的格子为生成口,
*
* @param lattices
* @param generateLats [0,1,1,1,1,1,1,1,0]
*/
public
static
setGenerateLats
(
lattices
:
Lattice
[],
generateLats
:
number
[])
{
var
indexs
=
[]
for
(
var
m
=
0
;
m
<
Tool
.
colNum
;
m
++
)
{
//找每列第一个元素
for
(
var
g
=
0
;
g
<
Tool
.
rowNum
;
g
++
)
{
var
index
=
Tool
.
colNum
*
g
+
m
;
//如果格子存在,并且该列g的数据为1;
if
(
lattices
[
index
]
&&
generateLats
[
m
])
{
* @param generateLats
* @return 数组,索引就是列数,每个元素是该列的生成口数据
*/
public
static
setGenerateLats
(
lattices
:
Lattice
[],
generateLats
:
GenerateLatData
[]):
GenerateLatData
[][]
{
var
arr
:
GenerateLatData
[][]
=
[];
for
(
var
i
=
0
;
i
<
generateLats
.
length
;
i
++
)
{
var
generateLat
:
GenerateLatData
=
generateLats
[
i
];
var
index
=
generateLat
.
index
;
if
(
!
lattices
[
index
])
continue
lattices
[
index
].
isGenerate
=
true
;
indexs
[
m
]
=
index
;
break
}
}
var
rc
=
this
.
indexToRc
(
index
);
//确实属于哪一列
var
col
=
rc
[
1
];
if
(
!
arr
[
col
])
arr
[
col
]
=
[];
arr
[
col
].
push
(
generateLat
);
}
return
indexs
return
arr
// var indexs = [];
// for (var m = 0; m < Tool.colNum; m++) {
// //找每列第一个元素
// for (var g = 0; g < Tool.rowNum; g++) {
// var index = Tool.colNum * g + m;
// //如果格子存在,并且该列g的数据为1;
// if (lattices[index] && generateLats[m]) {
// lattices[index].isGenerate = true;
// indexs[m] = index;
// break
// }
// }
// }
// return indexs
}
/**
* 将9*9都转化成01格子
...
...
@@ -821,6 +836,23 @@ export class Tool {
}
return
false
;
}
/**
* 十位是基础元素类型,对应数字减1就是基础元素类型
* 个位是特效类型(0表示无特效),对应数字减1就是特效类型
* @param num
* @return [] 0下标是元素类型,1下标是特效类型
*/
public
static
praseEleNumber
(
num
)
{
//解析num;
var
arr
:
number
[]
=
this
.
returnTO
(
num
);
//基础类型,没有就是null,有就-1,对ElementType对应
var
baseType
=
arr
[
1
]
?
arr
[
1
]
-
1
:
null
;
//不是基础类型
if
(
baseType
>
4
)
baseType
=
null
;
//特效类型
var
effectType
=
arr
[
0
]
?
arr
[
0
]
-
1
:
null
;
return
[
baseType
,
effectType
];
}
/**
* 从数组移除一个元素
...
...
@@ -879,7 +911,7 @@ export class Tool {
}
/**
* 返回个十百等,0是个位
* 返回个十百等,0是个位
,1是十位,依次
* 78[ 8, 7]
* 789[ 9, 8, 7]
* @param num 整数
...
...
egret/src/something/chapters/Chapter1.ts
0 → 100644
View file @
7f8e3a65
import
{
ChapterData
}
from
"../interface/ChapterData"
;
import
{
PassType
}
from
"../enum/PassType"
;
import
{
ElementType
}
from
"../enum/ElementType"
;
/**
* 1到20关数据
*/
export
const
Chapters1
:
ChapterData
[]
=
[
//第0关为空吧,
null
,
//1
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
effectInitProbability
:
0
,
stepCount
:
25
,
passTarget
:
{
type
:
PassType
.
ELEMENT_TARGET
,
elements
:
[
{
type
:
ElementType
.
CHICKEN
,
count
:
45
,
},
],
},
starScores
:
[
4000
,
8000
,
12000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
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
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
],
generateLats
:
[
{
index
:
11
,
type
:
0
,
cus
:
[]
},
{
index
:
15
,
type
:
0
,
cus
:
[]
},
],
// connectedLats: [[0, 18], [1, 19], [2, 20]],
elements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
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
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
20
,
0
,
0
,
0
,
20
,
0
,
0
,
0
,
20
,
10
,
20
,
0
,
20
,
10
,
20
,
0
,
20
,
10
,
20
,
10
,
20
,
10
,
20
,
10
,
20
,
20
,
10
,
20
,
20
,
10
,
20
,
20
,
10
,
20
,
0
,
20
,
10
,
20
,
10
,
20
,
10
,
20
,
0
,
0
,
0
,
20
,
10
,
20
,
10
,
20
,
0
,
0
,
0
,
0
,
0
,
20
,
10
,
20
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
20
,
0
,
0
,
0
,
0
,
],
// recycles: [70, 71, 72, 73]
},
},
//2
{
baseElementTypes
:
[
0
,
1
,
2
,
3
],
effectInitProbability
:
0
,
stepCount
:
6
,
passTarget
:
{
type
:
PassType
.
ELEMENT_TARGET
,
elements
:
[
{
type
:
ElementType
.
ICE
,
count
:
26
,
},
],
},
starScores
:
[
4000
,
8000
,
12000
],
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
0
,
2
,
2
,
2
,
2
,
0
,
2
,
2
,
2
,
2
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
2
,
2
,
0
,
0
,
0
,
1
,
1
,
0
,
1
,
2
,
2
,
1
,
0
,
1
,
2
,
2
,
1
,
0
,
2
,
2
,
0
,
0
,
0
,
2
,
2
,
0
,
2
,
2
,
2
,
2
,
0
,
2
,
2
,
2
,
2
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
],
generateLats
:
[
// { index: 11, type: 0, cus: [] },
// { index: 15, type: 0, cus: [] },
],
// connectedLats: [[0, 18], [1, 19], [2, 20]],
elements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
0
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
],
baseElements
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
10
,
10
,
0
,
0
,
0
,
10
,
20
,
0
,
20
,
20
,
10
,
20
,
0
,
10
,
20
,
10
,
20
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
40
,
30
,
0
,
0
,
0
,
10
,
30
,
0
,
10
,
30
,
40
,
20
,
0
,
20
,
30
,
40
,
10
,
0
,
40
,
30
,
0
,
0
,
0
,
40
,
30
,
0
,
20
,
20
,
10
,
10
,
0
,
20
,
40
,
20
,
10
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
],
// recycles: [70, 71, 72, 73]
},
},
]
\ No newline at end of file
egret/src/something/chapters/Chapter2.ts
0 → 100644
View file @
7f8e3a65
import
{
ChapterData
}
from
"../interface/ChapterData"
;
import
{
PassType
}
from
"../enum/PassType"
;
import
{
ElementType
}
from
"../enum/ElementType"
;
/**
* 21到40关数据
*/
export
const
Chapters2
:
ChapterData
[]
=
[
//21
{
map
:
{
lattices
:
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
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
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
],
// generateLats: ,
connectedLats
:
[],
elements
:
[
]
},
baseElementTypes
:
[
0
,
1
,
2
,
3
,
4
],
effectInitProbability
:
0.1
,
stepCount
:
30
,
passTarget
:
{
type
:
PassType
.
SCORE_TARGET
,
score
:
6000
,
},
starScores
:
[
2000
,
4000
,
6000
]
},
]
\ No newline at end of file
egret/src/something/chapters/getChapter.ts
0 → 100644
View file @
7f8e3a65
import
{
Chapters1
}
from
"./Chapter1"
;
import
{
Chapters2
}
from
"./Chapter2"
;
import
{
ChapterData
}
from
"../interface/ChapterData"
;
//所有的关卡
const
chapters
:
ChapterData
[]
=
[].
concat
(
Chapters1
,
// Chapters2,
)
/**
* 获取关卡数据,返回关卡数据
* 以后每添加20关,添加一个文件,上面concat一个文件
* @param index 关数 从1开始
*/
export
function
getChapterData
(
index
:
number
)
{
//没有数据就返回第一关数据
return
chapters
[
index
]
||
chapters
[
1
];
}
\ No newline at end of file
egret/src/something/enum/FallELeType.ts
0 → 100644
View file @
7f8e3a65
/**
* 掉落元素类型
*/
export
enum
FallEleType
{
RANELE
=
0
,
//随机元素无特效
RANEFF
,
//随机元素加随机特效
RABBIT
,
//兔子 下面的顺序和ElementType前5保持一致,不要随便修改
CHICKEN
,
//鸡
CATTLE
,
//牛
LION
,
//狮子
PIG
,
//猪
}
\ No newline at end of file
egret/src/something/interface/GenerateLatData.ts
0 → 100644
View file @
7f8e3a65
import
{
FallEleType
}
from
"../enum/FallELeType"
;
/**
* 格子生成口数据格式
*/
export
interface
GenerateLatData
{
/**
* 生成口的索引
*/
index
:
number
;
/**
* 掉落元素类型
*/
type
:
FallEleType
/**
* 自定义掉落元素
* 十位是基础元素类型,对应数字减1就是基础元素类型
* 个位是特效类型(0表示无特效),对应数字减1就是特效类型
* 10
* 11
* 12
* 13
* 14
*/
cus
:
number
[];
}
\ No newline at end of file
egret/src/something/interface/MapData.ts
View file @
7f8e3a65
import
{
PathData
}
from
"./Path
Data"
;
import
{
GenerateLatData
}
from
"./GenerateLat
Data"
;
/**
* 地图数据接口
...
...
@@ -17,11 +17,9 @@ export interface MapData {
lattices
:
number
[];
/**
* 能生成元素的格子索引
* 代表每列的第一个格子是否是生成口
* 长度9,
* 例子[0,0,0,1,1,1,0,0,0];
*
*/
generateLats
:
number
[];
generateLats
?:
GenerateLatData
[];
/**
* 一维格子数组,步长9,
* 9*9
...
...
@@ -34,7 +32,7 @@ export interface MapData {
* 5果冻
* 6鸡蛋
*/
elements
?:
number
[];
elements
?:
number
[];
/**
* 9*9的格子
* 十位是基础元素类型,对应数字减1就是基础元素类型
...
...
@@ -45,12 +43,7 @@ export interface MapData {
* 13
* 14
*/
baseElements
?:
number
[];
/**
* 路径的索引
* 暂时不需要了
*/
paths
?:
PathData
[]
baseElements
?:
number
[];
/**
* 再考虑
* 元素为两个索引的数组[8,9],第一个元素为up,第二个元素为down
...
...
@@ -58,4 +51,9 @@ export interface MapData {
*/
connectedLats
?:
any
[];
/**
* 棒棒糖回收口
*
*/
recycles
?:
number
[];
}
\ No newline at end of file
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