This commit is contained in:
2025-05-17 17:54:53 +08:00
parent 3cf57b0fd2
commit d51c122d57
8 changed files with 423 additions and 5 deletions

View 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"
}
]
}
]
}
]
}
]
}

View File

@@ -0,0 +1,3 @@
{
"uuid": "942e288c-58da-4b15-83bf-7541d7ad8294"
}

View File

@@ -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",

View File

@@ -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)
} }
} }

View File

@@ -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
View 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 {}
}

View File

@@ -0,0 +1,3 @@
{
"uuid": "87bad4d3-bede-442e-914d-d7bcdc85f0d1"
}

View File

@@ -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;