难度UI
This commit is contained in:
375
assets/resources/Difficulty.lh
Normal file
375
assets/resources/Difficulty.lh
Normal file
@@ -0,0 +1,375 @@
|
|||||||
|
{
|
||||||
|
"_$ver": 1,
|
||||||
|
"_$id": "zala0uui",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Difficulty",
|
||||||
|
"width": 1080,
|
||||||
|
"height": 1920,
|
||||||
|
"_mouseState": 2,
|
||||||
|
"left": 0,
|
||||||
|
"right": 0,
|
||||||
|
"top": 0,
|
||||||
|
"bottom": 0,
|
||||||
|
"_$comp": [
|
||||||
|
{
|
||||||
|
"_$type": "87bad4d3-bede-442e-914d-d7bcdc85f0d1",
|
||||||
|
"scriptPath": "../src/views/Difficulty.ts",
|
||||||
|
"obj_items": {
|
||||||
|
"_$ref": "34t1dkio"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "jzxgx41i",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "offset",
|
||||||
|
"y": 560,
|
||||||
|
"width": 1080,
|
||||||
|
"height": 1360,
|
||||||
|
"_mouseState": 2,
|
||||||
|
"left": 0,
|
||||||
|
"right": 0,
|
||||||
|
"bottom": 0,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "bd1s5tvm",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "bg",
|
||||||
|
"width": 1080,
|
||||||
|
"height": 1360,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 20,
|
||||||
|
"rt": 20,
|
||||||
|
"lb": 0,
|
||||||
|
"rb": 0,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "rgba(245, 247, 251, 1)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "e5l16p86",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"x": 90,
|
||||||
|
"y": 48,
|
||||||
|
"width": 900,
|
||||||
|
"height": 180,
|
||||||
|
"centerX": 0,
|
||||||
|
"text": "New Game",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"bold": true,
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0",
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "5xwrtg57",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box",
|
||||||
|
"x": 410,
|
||||||
|
"y": -36,
|
||||||
|
"width": 80,
|
||||||
|
"height": 20,
|
||||||
|
"centerX": 0,
|
||||||
|
"centerY": -116,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "wk9lt59j",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 80,
|
||||||
|
"height": 12,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 6,
|
||||||
|
"rt": 6,
|
||||||
|
"lb": 6,
|
||||||
|
"rb": 6,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "rgba(211, 213, 219, 1)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "34t1dkio",
|
||||||
|
"_$type": "VBox",
|
||||||
|
"name": "items",
|
||||||
|
"y": 300,
|
||||||
|
"width": 1080,
|
||||||
|
"height": 1128,
|
||||||
|
"_mouseState": 2,
|
||||||
|
"bottom": -68,
|
||||||
|
"centerX": 0,
|
||||||
|
"space": 50,
|
||||||
|
"align": "center",
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "rxv162yy",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box(1)",
|
||||||
|
"x": 72,
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "590euu2q",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 10,
|
||||||
|
"rt": 10,
|
||||||
|
"lb": 10,
|
||||||
|
"rb": 10,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "36r7vd4n",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"width": 900,
|
||||||
|
"height": 144,
|
||||||
|
"centerX": -18,
|
||||||
|
"centerY": 0,
|
||||||
|
"text": "Easy",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "0q6t2588",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box(2)",
|
||||||
|
"x": 72,
|
||||||
|
"y": 194,
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "yjk1xq2a",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 10,
|
||||||
|
"rt": 10,
|
||||||
|
"lb": 10,
|
||||||
|
"rb": 10,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "ctexrl7w",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"width": 900,
|
||||||
|
"height": 144,
|
||||||
|
"centerX": -18,
|
||||||
|
"centerY": 0,
|
||||||
|
"text": "Medium",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "j3ml4g8s",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box(3)",
|
||||||
|
"x": 72,
|
||||||
|
"y": 388,
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "nfk6pjgd",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 10,
|
||||||
|
"rt": 10,
|
||||||
|
"lb": 10,
|
||||||
|
"rb": 10,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "yk78vemi",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"width": 900,
|
||||||
|
"height": 144,
|
||||||
|
"centerX": -18,
|
||||||
|
"centerY": 0,
|
||||||
|
"text": "Hard",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "e4epdrmw",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box(4)",
|
||||||
|
"x": 72,
|
||||||
|
"y": 582,
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "nogfpbyx",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 10,
|
||||||
|
"rt": 10,
|
||||||
|
"lb": 10,
|
||||||
|
"rb": 10,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "83aiwvdd",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"width": 900,
|
||||||
|
"height": 144,
|
||||||
|
"centerX": -18,
|
||||||
|
"centerY": 0,
|
||||||
|
"text": "Expert",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "a2kjyumo",
|
||||||
|
"_$type": "Box",
|
||||||
|
"name": "Box(5)",
|
||||||
|
"x": 72,
|
||||||
|
"y": 776,
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_$child": [
|
||||||
|
{
|
||||||
|
"_$id": "2unm1bxx",
|
||||||
|
"_$type": "Sprite",
|
||||||
|
"name": "Sprite",
|
||||||
|
"width": 936,
|
||||||
|
"height": 144,
|
||||||
|
"_gcmds": [
|
||||||
|
{
|
||||||
|
"_$type": "DrawRoundRectCmd",
|
||||||
|
"x": 0,
|
||||||
|
"y": 0,
|
||||||
|
"width": 1,
|
||||||
|
"height": 1,
|
||||||
|
"lt": 10,
|
||||||
|
"rt": 10,
|
||||||
|
"lb": 10,
|
||||||
|
"rb": 10,
|
||||||
|
"percent": true,
|
||||||
|
"lineWidth": 1,
|
||||||
|
"fillColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_$id": "p36e2q6t",
|
||||||
|
"_$type": "Label",
|
||||||
|
"name": "Label",
|
||||||
|
"width": 900,
|
||||||
|
"height": 144,
|
||||||
|
"centerX": -18,
|
||||||
|
"centerY": 0,
|
||||||
|
"text": "Extreme",
|
||||||
|
"fontSize": 80,
|
||||||
|
"color": "rgba(45, 49, 56, 1)",
|
||||||
|
"align": "center",
|
||||||
|
"valign": "middle",
|
||||||
|
"padding": "0,0,0,0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
3
assets/resources/Difficulty.lh.meta
Normal file
3
assets/resources/Difficulty.lh.meta
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"uuid": "942e288c-58da-4b15-83bf-7541d7ad8294"
|
||||||
|
}
|
||||||
@@ -168,7 +168,7 @@
|
|||||||
"height": 60,
|
"height": 60,
|
||||||
"centerX": 0,
|
"centerX": 0,
|
||||||
"centerY": -550,
|
"centerY": -550,
|
||||||
"text": "难度",
|
"text": "easy",
|
||||||
"fontSize": 30,
|
"fontSize": 30,
|
||||||
"color": "rgba(123, 129, 140, 1)",
|
"color": "rgba(123, 129, 140, 1)",
|
||||||
"align": "center",
|
"align": "center",
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ export class StorageManager {
|
|||||||
this.stageMap.set(stageID, dataStage)
|
this.stageMap.set(stageID, dataStage)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dataStage = createDataStage(config.DIFFICULTY_TYPE.Easy)
|
dataStage = createDataStage("first", "", config.DIFFICULTY_TYPE.Easy)
|
||||||
this.stageMap.set(stageID, dataStage)
|
this.stageMap.set(stageID, dataStage)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,8 @@ export interface DataUndo {
|
|||||||
|
|
||||||
//关卡数据
|
//关卡数据
|
||||||
export interface DataStage {
|
export interface DataStage {
|
||||||
|
id: string,
|
||||||
|
name: string,
|
||||||
difficulty: number,
|
difficulty: number,
|
||||||
mistake?: number,
|
mistake?: number,
|
||||||
duration?: number,
|
duration?: number,
|
||||||
@@ -26,8 +28,8 @@ export interface DataStage {
|
|||||||
blocks?: Array<DataBlock>,
|
blocks?: Array<DataBlock>,
|
||||||
undos?: Array<DataUndo>,
|
undos?: Array<DataUndo>,
|
||||||
}
|
}
|
||||||
export function createDataStage(difficulty: number): DataStage {
|
export function createDataStage(id: string, name: string, difficulty: number): DataStage {
|
||||||
var data: DataStage = {difficulty: difficulty}
|
var data: DataStage = {id: id, name: name, difficulty: difficulty}
|
||||||
data.mistake = 0
|
data.mistake = 0
|
||||||
data.duration = 0
|
data.duration = 0
|
||||||
data.note_open = false
|
data.note_open = false
|
||||||
|
|||||||
35
src/views/Difficulty.ts
Normal file
35
src/views/Difficulty.ts
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
const { regClass, property } = Laya;
|
||||||
|
|
||||||
|
@regClass()
|
||||||
|
export class Difficulty extends Laya.Script {
|
||||||
|
declare owner : Laya.Box;
|
||||||
|
|
||||||
|
|
||||||
|
@property(Laya.Box)
|
||||||
|
public obj_items: Laya.Box;
|
||||||
|
private items: Array<Laya.Box> = new Array()
|
||||||
|
|
||||||
|
//组件被激活后执行,此时所有节点和组件均已创建完毕,此方法只执行一次
|
||||||
|
//onAwake(): void {}
|
||||||
|
|
||||||
|
//组件被启用后执行,例如节点被添加到舞台后
|
||||||
|
//onEnable(): void {}
|
||||||
|
|
||||||
|
//组件被禁用时执行,例如从节点从舞台移除后
|
||||||
|
//onDisable(): void {}
|
||||||
|
|
||||||
|
//第一次执行update之前执行,只会执行一次
|
||||||
|
//onStart(): void {}
|
||||||
|
|
||||||
|
//手动调用节点销毁时执行
|
||||||
|
//onDestroy(): void {}
|
||||||
|
|
||||||
|
//每帧更新时执行,尽量不要在这里写大循环逻辑或者使用getComponent方法
|
||||||
|
//onUpdate(): void {}
|
||||||
|
|
||||||
|
//每帧更新时执行,在update之后执行,尽量不要在这里写大循环逻辑或者使用getComponent方法
|
||||||
|
//onLateUpdate(): void {}
|
||||||
|
|
||||||
|
//鼠标点击后执行。与交互相关的还有onMouseDown等十多个函数,具体请参阅文档。
|
||||||
|
//onMouseClick(): void {}
|
||||||
|
}
|
||||||
3
src/views/Difficulty.ts.meta
Normal file
3
src/views/Difficulty.ts.meta
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"uuid": "87bad4d3-bede-442e-914d-d7bcdc85f0d1"
|
||||||
|
}
|
||||||
@@ -4,7 +4,7 @@ import { Block } from "./Block";
|
|||||||
import { Candy } from "./Candy";
|
import { Candy } from "./Candy";
|
||||||
import { DOStage } from "../models/DOStage";
|
import { DOStage } from "../models/DOStage";
|
||||||
import { config } from "../constants/config";
|
import { config } from "../constants/config";
|
||||||
import { DataUndo } from "../types/global";
|
|
||||||
|
|
||||||
const { regClass, property } = Laya;
|
const { regClass, property } = Laya;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user