diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..88927d3 Binary files /dev/null and b/.DS_Store differ diff --git a/AGENTS.md b/AGENTS.md index f432cd6..d42b4f8 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -19,60 +19,7 @@ Git 历史采用 Conventional Commits,且摘要多为中文,例如 `feat: # Memory Context -# [mp-xieyingeng] recent context, 2026-04-24 9:39pm GMT+8 +# [mp-xieyingeng] recent context, 2026-04-26 3:57pm GMT+8 -Legend: 🎯session 🔴bugfix 🟣feature 🔄refactor ✅change 🔵discovery ⚖️decision 🚨security_alert 🔐security_note -Format: ID TIME TYPE TITLE -Fetch details: get_observations([IDs]) | Search: mem-search skill - -Stats: 45 obs (10,437t read) | 520,499t work | 98% savings - -### Apr 24, 2026 -101 8:46a 🟣 Live label display format updated to X/Y format -114 6:40p 🟣 Dynamic Input Layout Initialization in PageLevel Prefab -115 6:41p 🟣 Dynamic Punch Block Layout for PageLevel.prefab -116 " 🔵 Layout Component Configuration for Input and Punch Blocks -119 6:42p 🟣 Dynamic Input Blocks and Punch Layout System Implemented -121 " 🟣 PageLevel Prefab Updated with punchLayout Property -122 " 🔄 Cleanup After Dynamic Block Refactoring -124 " ✅ TypeScript Compilation Check in Progress -126 6:43p ✅ TypeScript Compilation Check Extended -127 " 🔄 Complete Diff of PageLevel.ts Dynamic Block System -128 " 🔵 PageLevel.prefab Changes Not Persisted -129 6:44p 🟣 PageLevel Prefab Correctly Updated with punchLayout -130 " ✅ TypeScript Compilation Blocked - Permission Required -133 6:45p 🔄 Extracted getPunchBlockLabel Helper Method -134 " 🔄 Template Node Hiding Logic Improved -136 6:48p ⚖️ TypeScript diagnostics disabled, using IDE/linter instead -138 " 🔄 PageLevel 输入方式从单框改为逐字格子 -139 " 🔄 谐音梗展示从 Label 改为动态 Block 节点 -140 " ✅ PageLevel.prefab 布局位置微调 -165 8:08p 🟣 PageLevel input layout simplified to single-character boxes with auto-distribution -167 8:09p 🔵 PageLevel.ts input block structure and callback stubs discovered -168 " 🟣 Auto-distribute characters across input boxes and auto-submit on completion implemented -169 " 🔴 PageLevel.ts node cleanup now calls removeFromParent before destroy -170 8:10p 🔄 PageLevel.ts full diff: single EditBox replaced with per-character block system -171 " 🔴 distributeInputText() wrapped in try/finally to guarantee flag reset -179 8:23p ✅ Game011_3.ttf font relocated from resources/ to dedicated fonts/ bundle directory -180 " 🟣 PageLoading.ts now loads fonts as a dynamic bundle after level data, before UI -181 " 🔄 AssetManager import switched to type-only import in PageLoading.ts -182 8:31p 🟣 PageLevel input UX improvement: full-string editing support -183 " 🟣 PageLevel input UX: full-string editing implemented -186 8:34p 🔴 PageLevel: clear input text on wrong answer -187 8:35p 🟣 PageLevel: delay pass modal to show punchline -189 8:36p 🔄 PageLevel: level completion reporting made fire-and-forget -191 8:45p 🔴 PageLevel: punchline block cleanup improved -192 8:46p 🟣 PageLevel.ts TitleLevel Label variable reserved -193 8:47p 🔵 PageLevel.ts level number tracking mechanism discovered -195 " 🟣 PageLevel.ts TitleLevel dynamic label update implemented -196 8:53p 🔵 PageLevel punchline not updated from enterLevel API -198 " 🔴 LevelDataManager updateLevelDetails now includes punchline -199 " 🔴 PageLevel punchline flow and empty state layout fixed -200 8:54p 🔴 LevelDataManager preserves existing punchline when enter returns null -203 9:06p 🟣 PageLevel.ts 新增图片描述标签绑定字段 -205 9:07p 🟣 PageLevel.ts 图片描述标签字段对接完成 -206 9:09p ✅ PageLevel.ts 回退图片描述标签字段命名 -208 9:11p 🟣 LevelDataManager 增加图片描述字段存储 - -Access 520k tokens of past work via get_observations([IDs]) or mem-search skill. +No previous sessions found. \ No newline at end of file diff --git a/assets/.DS_Store b/assets/.DS_Store new file mode 100644 index 0000000..9c94ff5 Binary files /dev/null and b/assets/.DS_Store differ diff --git a/assets/prefabs/PageLevel.ts b/assets/prefabs/PageLevel.ts index 9547cb0..d3c1cc1 100644 --- a/assets/prefabs/PageLevel.ts +++ b/assets/prefabs/PageLevel.ts @@ -5,11 +5,13 @@ import { StorageManager } from 'db://assets/scripts/utils/StorageManager'; import { StaminaManager } from 'db://assets/scripts/utils/StaminaManager'; import { WxSDK } from 'db://assets/scripts/utils/WxSDK'; import { LevelDataManager } from 'db://assets/scripts/utils/LevelDataManager'; +import { AuthManager } from 'db://assets/scripts/utils/AuthManager'; import { RuntimeLevelConfig } from 'db://assets/scripts/types/LevelTypes'; import { ToastManager } from 'db://assets/scripts/utils/ToastManager'; import { ShareManager } from 'db://assets/scripts/utils/ShareManager'; import { PassModal } from 'db://assets/prefabs/PassModal'; import { StaminaInfo } from 'db://assets/scripts/types/ApiTypes'; +import { AchievementTitleManager } from 'db://assets/scripts/utils/AchievementTitleManager'; const { ccclass, property } = _decorator; /** @@ -152,6 +154,9 @@ export class PageLevel extends BaseView { /** 通关弹窗实例 */ private _passModalNode: Node | null = null; + /** 本次通关弹窗使用的已通关数量 */ + private _passModalCompletedLevelCount: number | null = null; + /** 是否处于分享挑战模式 */ private _isShareMode: boolean = false; @@ -1149,15 +1154,25 @@ export class PageLevel extends BaseView { private reportLevelCompleted(levelId: string, timeSpent: number): void { if (!this._isShareMode) { // 标记关卡为已通关(本地缓存),通关上报并行执行,不阻塞包袱展示节奏 + const wasCompleted = LevelDataManager.instance.isLevelCompleted(this.currentLevelIndex); + if (!wasCompleted) { + AuthManager.instance.addCompletedLevelCount(); + } + this._passModalCompletedLevelCount = AuthManager.instance.completedLevelCount; LevelDataManager.instance.markLevelCompleted(this.currentLevelIndex); void StaminaManager.instance.completeLevel(levelId, timeSpent).then((result) => { if (result) { + if (!result.firstClear && !wasCompleted) { + AuthManager.instance.addCompletedLevelCount(-1); + this._passModalCompletedLevelCount = AuthManager.instance.completedLevelCount; + } console.log(`[PageLevel] 通关上报成功,首次通关: ${result.firstClear}`); } }); return; } + this._passModalCompletedLevelCount = null; // fire-and-forget: errors are logged inside reportLevelProgress void ShareManager.instance.reportLevelProgress(levelId, true, timeSpent); } @@ -1199,7 +1214,10 @@ export class PageLevel extends BaseView { // 获取 PassModal 组件并设置回调 const passModal = modalNode.getComponent(PassModal); if (passModal) { - passModal.setParams({ levelIndex: this.currentLevelIndex + 1 }); + passModal.setParams({ + levelIndex: this.currentLevelIndex + 1, + titleInfo: AchievementTitleManager.getTitleInfo(this._getPassModalCompletedLevelCount()) + }); passModal.setCallbacks({ onNextLevel: () => { this._closePassModal(); @@ -1218,6 +1236,10 @@ export class PageLevel extends BaseView { console.log('[PageLevel] 显示通关弹窗'); } + private _getPassModalCompletedLevelCount(): number { + return this._passModalCompletedLevelCount ?? AuthManager.instance.completedLevelCount; + } + /** * 关闭通关弹窗 */ diff --git a/assets/prefabs/PassModal.prefab b/assets/prefabs/PassModal.prefab index 5ccaa22..46865ff 100644 --- a/assets/prefabs/PassModal.prefab +++ b/assets/prefabs/PassModal.prefab @@ -28,32 +28,23 @@ "__id__": 18 }, { - "__id__": 26 - }, - { - "__id__": 32 - }, - { - "__id__": 38 - }, - { - "__id__": 54 + "__id__": 78 } ], "_active": true, "_components": [ { - "__id__": 70 + "__id__": 126 }, { - "__id__": 72 + "__id__": 128 }, { - "__id__": 74 + "__id__": 130 } ], "_prefab": { - "__id__": 76 + "__id__": 132 }, "_lpos": { "__type__": "cc.Vec3", @@ -182,13 +173,13 @@ "_dstBlendFactor": 4, "_color": { "__type__": "cc.Color", - "r": 236, - "g": 193, - "b": 162, + "r": 255, + "g": 255, + "b": 255, "a": 255 }, "_spriteFrame": { - "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__uuid__": "10047f2e-bf2c-46f0-ba98-6fc23cf7ea87@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, @@ -261,7 +252,7 @@ }, { "__type__": "cc.Node", - "_name": "Title", + "_name": "winBanner", "_objFlags": 0, "__editorExtras__": {}, "_parent": { @@ -285,8 +276,8 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": -169.899, - "y": 618.714, + "x": 0, + "y": 654, "z": 0 }, "_lrot": { @@ -298,8 +289,8 @@ }, "_lscale": { "__type__": "cc.Vec3", - "x": 1, - "y": 1, + "x": 0.7, + "y": 0.7, "z": 1 }, "_mobility": 0, @@ -326,8 +317,8 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 300, - "height": 75.6 + "width": 1131, + "height": 606 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -338,10 +329,10 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "6aZZXip+lKvrkP+3ufXo57" + "fileId": "53TS5jk8dJq7swejPSLC8t" }, { - "__type__": "cc.Label", + "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "__editorExtras__": {}, @@ -355,204 +346,6 @@ "_customMaterial": null, "_srcBlendFactor": 2, "_dstBlendFactor": 4, - "_color": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 - }, - "_string": "恭喜过关!", - "_horizontalAlign": 1, - "_verticalAlign": 1, - "_actualFontSize": 60, - "_fontSize": 60, - "_fontFamily": "Arial", - "_lineHeight": 60, - "_overflow": 0, - "_enableWrapText": true, - "_font": null, - "_isSystemFontUsed": true, - "_spacingX": 0, - "_isItalic": false, - "_isBold": false, - "_isUnderline": false, - "_underlineHeight": 2, - "_cacheMode": 0, - "_enableOutline": false, - "_outlineColor": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 - }, - "_outlineWidth": 2, - "_enableShadow": false, - "_shadowColor": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 - }, - "_shadowOffset": { - "__type__": "cc.Vec2", - "x": 2, - "y": 2 - }, - "_shadowBlur": 2, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "4bPFWyZpJA95VefJ1FerIw" - }, - { - "__type__": "cc.Widget", - "_name": "", - "_objFlags": 0, - "__editorExtras__": {}, - "node": { - "__id__": 10 - }, - "_enabled": true, - "__prefab": { - "__id__": 16 - }, - "_alignFlags": 0, - "_target": null, - "_left": 0, - "_right": 0, - "_top": 0, - "_bottom": 0, - "_horizontalCenter": 0, - "_verticalCenter": 0, - "_isAbsLeft": true, - "_isAbsRight": true, - "_isAbsTop": true, - "_isAbsBottom": true, - "_isAbsHorizontalCenter": true, - "_isAbsVerticalCenter": true, - "_originalWidth": 0, - "_originalHeight": 0, - "_alignMode": 2, - "_lockFlags": 0, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "66o2HImDpHAYV4he5tmiuX" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 1 - }, - "asset": { - "__id__": 0 - }, - "fileId": "9dwZrYU0RBEIWJB8enwRgc", - "instance": null, - "targetOverrides": null, - "nestedPrefabInstanceRoots": null - }, - { - "__type__": "cc.Node", - "_name": "IconLive", - "_objFlags": 0, - "__editorExtras__": {}, - "_parent": { - "__id__": 1 - }, - "_children": [], - "_active": true, - "_components": [ - { - "__id__": 19 - }, - { - "__id__": 21 - }, - { - "__id__": 23 - } - ], - "_prefab": { - "__id__": 25 - }, - "_lpos": { - "__type__": "cc.Vec3", - "x": 137.815, - "y": 619.585, - "z": 0 - }, - "_lrot": { - "__type__": "cc.Quat", - "x": 0, - "y": 0, - "z": 0, - "w": 1 - }, - "_lscale": { - "__type__": "cc.Vec3", - "x": 0.519, - "y": 0.519, - "z": 0.519 - }, - "_mobility": 0, - "_layer": 1073741824, - "_euler": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_id": "" - }, - { - "__type__": "cc.UITransform", - "_name": "", - "_objFlags": 0, - "__editorExtras__": {}, - "node": { - "__id__": 18 - }, - "_enabled": true, - "__prefab": { - "__id__": 20 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 183, - "height": 183 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "adCkwK7YVPc4TT13/9y+QJ" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "__editorExtras__": {}, - "node": { - "__id__": 18 - }, - "_enabled": true, - "__prefab": { - "__id__": 22 - }, - "_customMaterial": null, - "_srcBlendFactor": 2, - "_dstBlendFactor": 4, "_color": { "__type__": "cc.Color", "r": 255, @@ -561,7 +354,7 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "1007bacb-29be-45cf-8dca-916a1fe37ed0@f9941", + "__uuid__": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, @@ -581,7 +374,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "76AbognxxP1Khn01SIR39l" + "fileId": "86ksH6gxdCKrmt2q5oLd66" }, { "__type__": "cc.Widget", @@ -589,17 +382,17 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 18 + "__id__": 10 }, "_enabled": true, "__prefab": { - "__id__": 24 + "__id__": 16 }, - "_alignFlags": 0, + "_alignFlags": 1, "_target": null, "_left": 0, "_right": 0, - "_top": 0, + "_top": 213.89999999999998, "_bottom": 0, "_horizontalCenter": 0, "_verticalCenter": 0, @@ -617,7 +410,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "5cq10IWOJP070psEmWgOrO" + "fileId": "14byy2X51I5qjgLlPoX0Qr" }, { "__type__": "cc.PrefabInfo", @@ -627,36 +420,43 @@ "asset": { "__id__": 0 }, - "fileId": "b208eAXaNKQ76agOadOK/c", + "fileId": "6d7Kz8ywFL/qH6fCA8SpZq", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, { "__type__": "cc.Node", - "_name": "Label", + "_name": "Main", "_objFlags": 0, "__editorExtras__": {}, "_parent": { "__id__": 1 }, - "_children": [], + "_children": [ + { + "__id__": 19 + }, + { + "__id__": 25 + } + ], "_active": true, "_components": [ { - "__id__": 27 + "__id__": 73 }, { - "__id__": 29 + "__id__": 75 } ], "_prefab": { - "__id__": 31 + "__id__": 77 }, "_lpos": { "__type__": "cc.Vec3", - "x": 237.319, - "y": 622.262, + "x": 0, + "y": 188, "z": 0 }, "_lrot": { @@ -682,22 +482,72 @@ }, "_id": "" }, + { + "__type__": "cc.Node", + "_name": "1_0022_Layer-19", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 18 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 20 + }, + { + "__id__": 22 + } + ], + "_prefab": { + "__id__": 24 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.5, + "y": 0.5, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, { "__type__": "cc.UITransform", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 26 + "__id__": 19 }, "_enabled": true, "__prefab": { - "__id__": 28 + "__id__": 21 }, "_contentSize": { "__type__": "cc.Size", - "width": 57.0068359375, - "height": 63 + "width": 1297, + "height": 1004 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -708,75 +558,52 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "0740qRs3RNz5p57Y2m8zaF" + "fileId": "f96etSwpZDr5ClCjE/JErY" }, { - "__type__": "cc.Label", + "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 26 + "__id__": 19 }, "_enabled": true, "__prefab": { - "__id__": 30 + "__id__": 23 }, "_customMaterial": null, "_srcBlendFactor": 2, "_dstBlendFactor": 4, "_color": { "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, + "r": 255, + "g": 255, + "b": 255, "a": 255 }, - "_string": "+1", - "_horizontalAlign": 1, - "_verticalAlign": 1, - "_actualFontSize": 50, - "_fontSize": 50, - "_fontFamily": "Arial", - "_lineHeight": 50, - "_overflow": 0, - "_enableWrapText": true, - "_font": null, - "_isSystemFontUsed": true, - "_spacingX": 0, - "_isItalic": false, - "_isBold": false, - "_isUnderline": false, - "_underlineHeight": 2, - "_cacheMode": 0, - "_enableOutline": false, - "_outlineColor": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 + "_spriteFrame": { + "__uuid__": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400@f9941", + "__expectedType__": "cc.SpriteFrame" }, - "_outlineWidth": 2, - "_enableShadow": false, - "_shadowColor": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 - }, - "_shadowOffset": { + "_type": 0, + "_fillType": 0, + "_sizeMode": 1, + "_fillCenter": { "__type__": "cc.Vec2", - "x": 2, - "y": 2 + "x": 0, + "y": 0 }, - "_shadowBlur": 2, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, "_id": "" }, { "__type__": "cc.CompPrefabInfo", - "fileId": "ccytoLetVEXJJyquCLYWtO" + "fileId": "cfmv5hTIlJ1aKa5Bhrh85x" }, { "__type__": "cc.PrefabInfo", @@ -786,20 +613,87 @@ "asset": { "__id__": 0 }, - "fileId": "c7ywe7ClhHqqVjazViWu66", + "fileId": "6bnvw8/mlCs6YJG9FDQbHI", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, { "__type__": "cc.Node", - "_name": "test", + "_name": "TitlteLevel", "_objFlags": 0, "__editorExtras__": {}, "_parent": { - "__id__": 1 + "__id__": 18 }, - "_children": [], + "_children": [ + { + "__id__": 26 + }, + { + "__id__": 38 + }, + { + "__id__": 44 + }, + { + "__id__": 50 + }, + { + "__id__": 64 + } + ], + "_active": true, + "_components": [ + { + "__id__": 70 + } + ], + "_prefab": { + "__id__": 72 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -483.155, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Bg", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 27 + } + ], "_active": true, "_components": [ { @@ -815,7 +709,57 @@ "_lpos": { "__type__": "cc.Vec3", "x": 0, - "y": 127.633, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.7, + "y": 0.7, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Inner", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 26 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 28 + }, + { + "__id__": 30 + } + ], + "_prefab": { + "__id__": 32 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 6.289, "z": 0 }, "_lrot": { @@ -847,16 +791,16 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 32 + "__id__": 27 }, "_enabled": true, "__prefab": { - "__id__": 34 + "__id__": 29 }, "_contentSize": { "__type__": "cc.Size", - "width": 536, - "height": 548 + "width": 1150, + "height": 630 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -867,7 +811,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "55vTgXt4JP440c14d4n0yq" + "fileId": "fbvOONn6RHZo9REpvINGEa" }, { "__type__": "cc.Sprite", @@ -875,7 +819,93 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 32 + "__id__": 27 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "02687761-81ab-42cb-b552-0db291d9ddd5@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9do3BWT4NO76BCFgjGnufU" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "48A4T64nRG3a3NsMaixCu6", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1200, + "height": 700 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "49cXEjWi5OE7kmV6DywASz" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 26 }, "_enabled": true, "__prefab": { @@ -892,7 +922,143 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "d46acd4d-66e2-423b-8015-334ff99dd9f1@f9941", + "__uuid__": "5b988a03-f6a3-498f-b68d-d3b5786b1879@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e3ycOysLdJtoQReb2VoEiX" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e0QO2KAw1IqZ2pHsX/E7PI", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "iconCrown", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 39 + }, + { + "__id__": 41 + } + ], + "_prefab": { + "__id__": 43 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -176.293, + "y": 120.83, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.4, + "y": 0.4, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 38 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 323, + "height": 293 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "bafR0Qxp9AopkdcgjQ0dL/" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 38 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "62df15c5-20eb-4ab2-9b63-32bfbcce435b@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, @@ -912,7 +1078,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "70w6BIY/1P/5gDj3+7X1dC" + "fileId": "625VPIJFdCdbodDJbxVb4a" }, { "__type__": "cc.PrefabInfo", @@ -922,24 +1088,20 @@ "asset": { "__id__": 0 }, - "fileId": "e3EX+B9GlNO7GvWnGUS3Zz", + "fileId": "e19XXoC+dFNoJHAu2LERyE", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, { "__type__": "cc.Node", - "_name": "NextLevelButton", + "_name": "LevelLabel", "_objFlags": 0, "__editorExtras__": {}, "_parent": { - "__id__": 1 + "__id__": 25 }, - "_children": [ - { - "__id__": 39 - } - ], + "_children": [], "_active": true, "_components": [ { @@ -947,21 +1109,15 @@ }, { "__id__": 47 - }, - { - "__id__": 49 - }, - { - "__id__": 51 } ], "_prefab": { - "__id__": 53 + "__id__": 49 }, "_lpos": { "__type__": "cc.Vec3", - "x": 0, - "y": -355.718, + "x": 67.348, + "y": 114.888, "z": 0 }, "_lrot": { @@ -973,8 +1129,821 @@ }, "_lscale": { "__type__": "cc.Vec3", - "x": 1.931, - "y": 1.931, + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 44 + }, + "_enabled": true, + "__prefab": { + "__id__": 46 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 320, + "height": 100.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5m82FdP1IjICAynVqMeSj" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 44 + }, + "_enabled": true, + "__prefab": { + "__id__": 48 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 133, + "b": 0, + "a": 237 + }, + "_string": "冷场小白1级", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 80, + "_fontSize": 80, + "_fontFamily": "Arial", + "_lineHeight": 80, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": false, + "_outlineColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_outlineWidth": 2, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "87UvTZK2xCrauwPzAEXvcW" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f0XRSGPeNOnJpbeOSek6l4", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ProgressBar", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 51 + } + ], + "_active": true, + "_components": [ + { + "__id__": 57 + }, + { + "__id__": 59 + }, + { + "__id__": 61 + } + ], + "_prefab": { + "__id__": 63 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -28.804, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.5, + "y": 0.5, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Bar", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 50 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 52 + }, + { + "__id__": 54 + } + ], + "_prefab": { + "__id__": 56 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -469.666, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 51 + }, + "_enabled": true, + "__prefab": { + "__id__": 53 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 925, + "height": 121 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3cvkw56wNDH4B2o1hDVEgW" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 51 + }, + "_enabled": true, + "__prefab": { + "__id__": 55 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "929dfe4e-9eab-48f1-a87d-344d51f07402@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "911F8iibtGoLeJ/4Ms3lyc" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b8RqHcznJN9ZkoCRyRYBcd", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 50 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 966, + "height": 164 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e6um0VonZEYKWBd9Lvslex" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 50 + }, + "_enabled": true, + "__prefab": { + "__id__": 60 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "c55e385b-97b7-4aa1-8888-cfd101e68f77@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "5cqZUQXr5JIYGv9K4lO+jn" + }, + { + "__type__": "cc.ProgressBar", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 50 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_barSprite": { + "__id__": 54 + }, + "_mode": 0, + "_totalLength": 925, + "_progress": 0, + "_reverse": false, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6NC8UIO1A9btWhNPTv1Jc" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8fkraBWkVJ2YARFKJCvLCx", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ProgressLabel", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 65 + }, + { + "__id__": 67 + } + ], + "_prefab": { + "__id__": 69 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -142.619, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 64 + }, + "_enabled": true, + "__prefab": { + "__id__": 66 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 402.03125, + "height": 75.6 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b2aKZTGYlMhI6wsmNN04ui" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 64 + }, + "_enabled": true, + "__prefab": { + "__id__": 68 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 2, + "g": 46, + "b": 0, + "a": 255 + }, + "_string": "还差3题获得冷场小白2级", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 40, + "_fontSize": 40, + "_fontFamily": "Arial", + "_lineHeight": 60, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": false, + "_outlineColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_outlineWidth": 2, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "41/TdIwp9G6YHm0p+iDVhU" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "07Lu/V5KRJSbNym8GigBZD", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 25 + }, + "_enabled": true, + "__prefab": { + "__id__": 71 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d9cUWND6VAL4ZSCaUHegzY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e6WHqfIZBP5IxqNc9mH9Cw", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eGrnm/X5MY6yqCDJc7UDM" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 76 + }, + "_alignFlags": 1, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 842, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6cPatOr6FOaK/Q/CPeqqPG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "fb1frr899GUK+NG56I46nQ", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "BottomLayout", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 79 + }, + { + "__id__": 99 + } + ], + "_active": true, + "_components": [ + { + "__id__": 121 + }, + { + "__id__": 123 + } + ], + "_prefab": { + "__id__": 125 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -825.392, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "NextLevelButton", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 78 + }, + "_children": [ + { + "__id__": 80 + }, + { + "__id__": 86 + } + ], + "_active": true, + "_components": [ + { + "__id__": 92 + }, + { + "__id__": 94 + }, + { + "__id__": 96 + } + ], + "_prefab": { + "__id__": 98 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 130.29, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.6, + "y": 0.6, "z": 1.931 }, "_mobility": 0, @@ -993,25 +1962,25 @@ "_objFlags": 0, "__editorExtras__": {}, "_parent": { - "__id__": 38 + "__id__": 79 }, "_children": [], "_active": true, "_components": [ { - "__id__": 40 + "__id__": 81 }, { - "__id__": 42 + "__id__": 83 } ], "_prefab": { - "__id__": 44 + "__id__": 85 }, "_lpos": { "__type__": "cc.Vec3", - "x": -3.567, - "y": 2.675, + "x": -53.26, + "y": 5.505, "z": 0 }, "_lrot": { @@ -1043,16 +2012,16 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 39 + "__id__": 80 }, "_enabled": true, "__prefab": { - "__id__": 41 + "__id__": 82 }, "_contentSize": { "__type__": "cc.Size", - "width": 120, - "height": 50.4 + "width": 250, + "height": 136 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -1071,11 +2040,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 39 + "__id__": 80 }, "_enabled": true, "__prefab": { - "__id__": 43 + "__id__": 84 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -1087,32 +2056,35 @@ "b": 255, "a": 255 }, - "_string": "下一关", + "_string": "下一题", "_horizontalAlign": 1, "_verticalAlign": 1, - "_actualFontSize": 40, - "_fontSize": 40, + "_actualFontSize": 80, + "_fontSize": 80, "_fontFamily": "Arial", - "_lineHeight": 40, + "_lineHeight": 100, "_overflow": 0, "_enableWrapText": true, - "_font": null, - "_isSystemFontUsed": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, "_spacingX": 0, "_isItalic": false, - "_isBold": false, + "_isBold": true, "_isUnderline": false, "_underlineHeight": 2, "_cacheMode": 0, - "_enableOutline": false, + "_enableOutline": true, "_outlineColor": { "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, + "r": 179, + "g": 127, + "b": 1, "a": 255 }, - "_outlineWidth": 2, + "_outlineWidth": 5, "_enableShadow": false, "_shadowColor": { "__type__": "cc.Color", @@ -1146,22 +2118,158 @@ "targetOverrides": null, "nestedPrefabInstanceRoots": null }, + { + "__type__": "cc.Node", + "_name": "flatIconNext", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 79 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 87 + }, + { + "__id__": 89 + } + ], + "_prefab": { + "__id__": 91 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 166.74, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.2, + "y": 0.2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, { "__type__": "cc.UITransform", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 38 + "__id__": 86 }, "_enabled": true, "__prefab": { - "__id__": 46 + "__id__": 88 }, "_contentSize": { "__type__": "cc.Size", - "width": 306, - "height": 77 + "width": 375, + "height": 455 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "68H5/vUiFNvJ4qpb1cqcvR" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 86 + }, + "_enabled": true, + "__prefab": { + "__id__": 90 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 1, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4aSUfdWmlKLYWhoRYkSOTy" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "87VwfP7qZJEbfhRwQacMX+", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 79 + }, + "_enabled": true, + "__prefab": { + "__id__": 93 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 800, + "height": 234 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -1180,11 +2288,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 38 + "__id__": 79 }, "_enabled": true, "__prefab": { - "__id__": 48 + "__id__": 95 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -1197,12 +2305,12 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "e1267c1b-ceb0-4483-b36d-bc9cb4d2fd26@f9941", + "__uuid__": "ba58112d-788c-465d-a2f3-46b468026d03@f9941", "__expectedType__": "cc.SpriteFrame" }, - "_type": 0, + "_type": 1, "_fillType": 0, - "_sizeMode": 1, + "_sizeMode": 0, "_fillCenter": { "__type__": "cc.Vec2", "x": 0, @@ -1225,11 +2333,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 38 + "__id__": 79 }, "_enabled": true, "__prefab": { - "__id__": 50 + "__id__": 97 }, "clickEvents": [], "_interactable": true, @@ -1275,42 +2383,6 @@ "__type__": "cc.CompPrefabInfo", "fileId": "a6CBaO3IxAC7cOP/84NjPI" }, - { - "__type__": "cc.Widget", - "_name": "", - "_objFlags": 0, - "__editorExtras__": {}, - "node": { - "__id__": 38 - }, - "_enabled": true, - "__prefab": { - "__id__": 52 - }, - "_alignFlags": 4, - "_target": null, - "_left": 0, - "_right": 0, - "_top": 0, - "_bottom": 649.9385, - "_horizontalCenter": 0, - "_verticalCenter": 0, - "_isAbsLeft": true, - "_isAbsRight": true, - "_isAbsTop": true, - "_isAbsBottom": true, - "_isAbsHorizontalCenter": true, - "_isAbsVerticalCenter": true, - "_originalWidth": 0, - "_originalHeight": 0, - "_alignMode": 2, - "_lockFlags": 0, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "bf7jRdFgVArq5lB0wo9+tz" - }, { "__type__": "cc.PrefabInfo", "root": { @@ -1330,35 +2402,38 @@ "_objFlags": 0, "__editorExtras__": {}, "_parent": { - "__id__": 1 + "__id__": 78 }, "_children": [ { - "__id__": 55 + "__id__": 100 + }, + { + "__id__": 106 } ], "_active": true, "_components": [ { - "__id__": 61 + "__id__": 112 }, { - "__id__": 63 + "__id__": 114 }, { - "__id__": 65 + "__id__": 116 }, { - "__id__": 67 + "__id__": 118 } ], "_prefab": { - "__id__": 69 + "__id__": 120 }, "_lpos": { "__type__": "cc.Vec3", "x": 0, - "y": -569.771, + "y": -49.916, "z": 0 }, "_lrot": { @@ -1370,8 +2445,8 @@ }, "_lscale": { "__type__": "cc.Vec3", - "x": 1.931, - "y": 1.931, + "x": 0.6, + "y": 0.6, "z": 1.931 }, "_mobility": 0, @@ -1390,24 +2465,24 @@ "_objFlags": 0, "__editorExtras__": {}, "_parent": { - "__id__": 54 + "__id__": 99 }, "_children": [], "_active": true, "_components": [ { - "__id__": 56 + "__id__": 101 }, { - "__id__": 58 + "__id__": 103 } ], "_prefab": { - "__id__": 60 + "__id__": 105 }, "_lpos": { "__type__": "cc.Vec3", - "x": -3.567, + "x": 82.738, "y": 2.675, "z": 0 }, @@ -1440,16 +2515,16 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 55 + "__id__": 100 }, "_enabled": true, "__prefab": { - "__id__": 57 + "__id__": 102 }, "_contentSize": { "__type__": "cc.Size", - "width": 160, - "height": 50.4 + "width": 330, + "height": 136 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -1468,11 +2543,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 55 + "__id__": 100 }, "_enabled": true, "__prefab": { - "__id__": 59 + "__id__": 104 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -1484,32 +2559,35 @@ "b": 255, "a": 255 }, - "_string": "邀请好友", + "_string": "考考好友", "_horizontalAlign": 1, "_verticalAlign": 1, - "_actualFontSize": 40, - "_fontSize": 40, + "_actualFontSize": 80, + "_fontSize": 80, "_fontFamily": "Arial", - "_lineHeight": 40, + "_lineHeight": 100, "_overflow": 0, "_enableWrapText": true, - "_font": null, - "_isSystemFontUsed": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, "_spacingX": 0, "_isItalic": false, - "_isBold": false, + "_isBold": true, "_isUnderline": false, "_underlineHeight": 2, "_cacheMode": 0, - "_enableOutline": false, + "_enableOutline": true, "_outlineColor": { "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, + "r": 72, + "g": 158, + "b": 35, "a": 255 }, - "_outlineWidth": 2, + "_outlineWidth": 5, "_enableShadow": false, "_shadowColor": { "__type__": "cc.Color", @@ -1543,22 +2621,158 @@ "targetOverrides": null, "nestedPrefabInstanceRoots": null }, + { + "__type__": "cc.Node", + "_name": "flatIconShare", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 99 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 107 + }, + { + "__id__": 109 + } + ], + "_prefab": { + "__id__": 111 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -158.227, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.2, + "y": 0.2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, { "__type__": "cc.UITransform", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 54 + "__id__": 106 }, "_enabled": true, "__prefab": { - "__id__": 62 + "__id__": 108 }, "_contentSize": { "__type__": "cc.Size", - "width": 306, - "height": 77 + "width": 468, + "height": 490 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6eAwh4c9BJoZ6+CAgVqtha" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 106 + }, + "_enabled": true, + "__prefab": { + "__id__": 110 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b9bec232-3d37-48a0-9ca8-62aab6c4083b@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 1, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "fc1QGrlPxDv7+Ci9hxE5VC" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "76b9IsEpZFaJAZbihEwpAt", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 99 + }, + "_enabled": true, + "__prefab": { + "__id__": 113 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 800, + "height": 234 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -1577,11 +2791,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 54 + "__id__": 99 }, "_enabled": true, "__prefab": { - "__id__": 64 + "__id__": 115 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -1594,12 +2808,12 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "e1267c1b-ceb0-4483-b36d-bc9cb4d2fd26@f9941", + "__uuid__": "f87d228a-c520-499a-bf3a-e66cbb6def64@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, "_fillType": 0, - "_sizeMode": 1, + "_sizeMode": 0, "_fillCenter": { "__type__": "cc.Vec2", "x": 0, @@ -1622,11 +2836,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 54 + "__id__": 99 }, "_enabled": true, "__prefab": { - "__id__": 66 + "__id__": 117 }, "clickEvents": [], "_interactable": true, @@ -1678,18 +2892,18 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 54 + "__id__": 99 }, "_enabled": true, "__prefab": { - "__id__": 68 + "__id__": 119 }, "_alignFlags": 4, "_target": null, "_left": 0, "_right": 0, "_top": 0, - "_bottom": 435.8855000000001, + "_bottom": -70.116, "_horizontalCenter": 0, "_verticalCenter": 0, "_isAbsLeft": true, @@ -1721,6 +2935,83 @@ "targetOverrides": null, "nestedPrefabInstanceRoots": null }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 122 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a2VML3zTtJ3qwMphX9yETg" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 124 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 204.60799999999995, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0fJ0TP3ENLgZSWi7smEjVC" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "83PTCFRPtHLZMW+if9kviz", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, { "__type__": "cc.UITransform", "_name": "", @@ -1731,7 +3022,7 @@ }, "_enabled": true, "__prefab": { - "__id__": 71 + "__id__": 127 }, "_contentSize": { "__type__": "cc.Size", @@ -1759,7 +3050,7 @@ }, "_enabled": false, "__prefab": { - "__id__": 73 + "__id__": 129 }, "_alignFlags": 45, "_target": null, @@ -1795,16 +3086,38 @@ }, "_enabled": true, "__prefab": { - "__id__": 75 + "__id__": 131 }, + "animationNodes": [ + { + "__id__": 10 + }, + { + "__id__": 18 + }, + { + "__id__": 78 + } + ], + "backdropNode": { + "__id__": 2 + }, + "openAnimationEnabled": true, + "openAnimationDuration": 0.36, "nextLevelButton": { - "__id__": 38 + "__id__": 79 }, "shareButton": { - "__id__": 54 + "__id__": 99 }, - "tipLabel": { - "__id__": 29 + "titleLevelLabel": { + "__id__": 47 + }, + "titleProgressBar": { + "__id__": 61 + }, + "progressLabel": { + "__id__": 67 }, "successAudio": { "__uuid__": "45d1f0b7-d9d7-41d8-84b2-7abad9304148", @@ -1828,4 +3141,4 @@ "instance": null, "targetOverrides": null } -] \ No newline at end of file +] diff --git a/assets/prefabs/PassModal.ts b/assets/prefabs/PassModal.ts index a3efd9a..e775f0f 100644 --- a/assets/prefabs/PassModal.ts +++ b/assets/prefabs/PassModal.ts @@ -1,5 +1,5 @@ -import { _decorator, Node, Label, AudioClip, AudioSource, view, UITransform, Size } from 'cc'; -import { BaseView } from 'db://assets/scripts/core/BaseView'; +import { _decorator, Node, Label, AudioClip, AudioSource, view, UITransform, Size, ProgressBar } from 'cc'; +import { BaseModal } from 'db://assets/scripts/core/BaseModal'; import { WxSDK } from 'db://assets/scripts/utils/WxSDK'; const { ccclass, property } = _decorator; @@ -13,12 +13,23 @@ export interface PassModalCallbacks { onShare?: () => void; } +export interface PassModalTitleInfo { + titleText?: string; + nextTitleProgress?: number; + progressText?: string; +} + +interface PassModalParams { + levelIndex?: number; + titleInfo?: PassModalTitleInfo; +} + /** * 通关弹窗组件 - * 继承 BaseView,显示通关成功弹窗,提供"下一关"和"分享给好友"两个按钮 + * 继承 BaseModal,显示通关成功弹窗,提供"下一关"和"分享给好友"两个按钮 */ @ccclass('PassModal') -export class PassModal extends BaseView { +export class PassModal extends BaseModal { /** 静态常量:弹窗层级 */ public static readonly MODAL_Z_INDEX = 999; @@ -30,9 +41,17 @@ export class PassModal extends BaseView { @property(Node) shareButton: Node | null = null; - /** 提示Label(如 恭喜通关) */ + /** 称号文字 */ @property(Label) - tipLabel: Label | null = null; + titleLevelLabel: Label | null = null; + + /** 距离下一个称号的进度 */ + @property(ProgressBar) + titleProgressBar: ProgressBar | null = null; + + /** 进度提示文案 */ + @property(Label) + progressLabel: Label | null = null; /** 通关音效 */ @property(AudioClip) @@ -44,6 +63,21 @@ export class PassModal extends BaseView { /** 缓存的屏幕尺寸 */ private _screenSize: Size | null = null; + /** 称号展示数据 */ + private _titleInfo: PassModalTitleInfo = { + titleText: '冷场小白1级', + nextTitleProgress: 0, + progressText: '还差3题获得冷场小白2级' + }; + + setParams(params: PassModalParams): void { + super.setParams(params); + + if (params?.titleInfo) { + this.setTitleInfo(params.titleInfo); + } + } + /** * 设置回调函数 */ @@ -51,6 +85,17 @@ export class PassModal extends BaseView { this._callbacks = callbacks; } + /** + * 设置称号体系展示数据 + */ + setTitleInfo(titleInfo: PassModalTitleInfo): void { + this._titleInfo = { + ...this._titleInfo, + ...titleInfo + }; + this._updateTitleInfo(); + } + /** * 页面首次加载时调用 */ @@ -63,7 +108,9 @@ export class PassModal extends BaseView { * 页面每次显示时调用 */ onViewShow(): void { + super.onViewShow(); this._updateWidget(); + this._updateTitleInfo(); this._playSuccessSound(); } @@ -129,6 +176,34 @@ export class PassModal extends BaseView { } } + /** + * 更新称号体系核心变量 + */ + private _updateTitleInfo(): void { + if (this.titleLevelLabel && this._titleInfo.titleText !== undefined) { + this.titleLevelLabel.string = this._titleInfo.titleText; + } + + if (this.titleProgressBar && this._titleInfo.nextTitleProgress !== undefined) { + this.titleProgressBar.progress = this._normalizeProgress(this._titleInfo.nextTitleProgress); + } + + if (this.progressLabel && this._titleInfo.progressText !== undefined) { + this.progressLabel.string = this._titleInfo.progressText; + } + } + + /** + * 规范化进度值 + */ + private _normalizeProgress(progress: number): number { + if (!Number.isFinite(progress)) { + return 0; + } + + return Math.max(0, Math.min(1, progress)); + } + /** * 下一关按钮点击 */ diff --git a/assets/prefabs/TimeoutModal.prefab b/assets/prefabs/TimeoutModal.prefab new file mode 100644 index 0000000..9e10c60 --- /dev/null +++ b/assets/prefabs/TimeoutModal.prefab @@ -0,0 +1,2394 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "TimeoutModal", + "_objFlags": 0, + "__editorExtras__": {}, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "persistent": false + }, + { + "__type__": "cc.Node", + "_name": "TimeoutModal", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__id__": 98 + }, + { + "__id__": 100 + } + ], + "_prefab": { + "__id__": 102 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "dialogPanel", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 11 + }, + { + "__id__": 17 + }, + { + "__id__": 39 + }, + { + "__id__": 51 + }, + { + "__id__": 71 + } + ], + "_active": true, + "_components": [ + { + "__id__": 93 + }, + { + "__id__": 95 + } + ], + "_prefab": { + "__id__": 97 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.5, + "y": 0.5, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "closeBtn", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + } + ], + "_prefab": { + "__id__": 10 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 579.972, + "y": 799.106, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 180, + "height": 191 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "412r9fk2BHWpD2X1rSJkww" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "540f8b6d-7cad-47e8-abae-b941c9bdd900@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21B0+PZ41L+5bBN0giwudm" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_alignFlags": 33, + "_target": null, + "_left": 0, + "_right": 40.02800000000002, + "_top": 28.894000000000005, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e6kTdMyd1C3ZK6dQGDNQYb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d0mJX0WihMarx8vLwZSGe3", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "Title", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + } + ], + "_prefab": { + "__id__": 16 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 770, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 2, + "y": 2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 286, + "height": 94.2 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5/UQjcmRLo7HkiHyN74nh" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "时间耗尽", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 70, + "_fontSize": 70, + "_fontFamily": "Arial", + "_lineHeight": 70, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_outlineWidth": 3, + "_enableShadow": true, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 98 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 0, + "y": -8 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ceF3Bp32VCd4YbyHCYG7FU" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f9RaZl4+JJfL6r43DgdzBa", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ButtonShare", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 18 + }, + { + "__id__": 26 + } + ], + "_active": true, + "_components": [ + { + "__id__": 32 + }, + { + "__id__": 34 + }, + { + "__id__": 36 + } + ], + "_prefab": { + "__id__": 38 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -310, + "y": -392.466, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Label", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 17 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 19 + }, + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 56.06, + "y": 7.598, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 20 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 330, + "height": 136 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "87mx3WaFFFL4+v/+4i8Zx2" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "求助好友", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 80, + "_fontSize": 80, + "_fontFamily": "Arial", + "_lineHeight": 100, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 183, + "g": 125, + "b": 6, + "a": 255 + }, + "_outlineWidth": 5, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "490umEN6ZMiK0QtWULiZ/P" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 56.06, + "_verticalCenter": 7.598, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "afYvKsXjlBwqyR370Uq1ce" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5ej6tVa2pPSpmVfXv7Qfo+", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "flatIconHelp", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 17 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 27 + }, + { + "__id__": 29 + } + ], + "_prefab": { + "__id__": 31 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -178.884, + "y": 11.802, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.2, + "y": 0.2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 468, + "height": 468 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f8+0yZ4OlEvY3v+exZr07k" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 30 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "69f85753-6740-4686-ba40-5d2383292f39@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0afZkhTulNQ6uqBZayZLyP" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "51HTIu+SxET7OWjJCJYEMX", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 17 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 580, + "height": 234 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c4aNcq+lZDLLhgsEqWUklR" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 17 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "ba58112d-788c-465d-a2f3-46b468026d03@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ccrghFsT9MhKwmUxKh+xki" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 17 + }, + "_enabled": true, + "__prefab": { + "__id__": 37 + }, + "_opacity": 192, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7gu9ig4tNc4oEnw1gyXS4" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "77l3F+7/dE+b92gfIk9YLK", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "sphere", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 40 + } + ], + "_active": true, + "_components": [ + { + "__id__": 46 + }, + { + "__id__": 48 + } + ], + "_prefab": { + "__id__": 50 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 190.8499999999999, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 2, + "y": 2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "heart", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 41 + }, + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -3.349, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.4, + "y": 0.4, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 40 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 568, + "height": 630 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c2gj1BxsROHJO20cchgAtr" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 40 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "98c2d728-0c34-499f-9a80-8aada311204d@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fR64hN01DZbbmLQsFglfX" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "36nCxsXvpL07IHlCgf5qPs", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 39 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 350, + "height": 350 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0b94WSuwlHfqFNRchpwmM5" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 39 + }, + "_enabled": true, + "__prefab": { + "__id__": 49 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7a17df33-9d28-4272-9f3e-f336af8d4afb@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55O2cXx/FOlKsCFnViyN7H" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "fbCCd/NElI8r/gaodTgopa", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ButtonRestart", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 52 + }, + { + "__id__": 60 + } + ], + "_active": true, + "_components": [ + { + "__id__": 66 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 70 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -656.544, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Label", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 51 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 53 + }, + { + "__id__": 55 + }, + { + "__id__": 57 + } + ], + "_prefab": { + "__id__": 59 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 49.166, + "y": 7.598, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 52 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 330, + "height": 136 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "07Om9yQl1P4by8winCo7q6" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 52 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "再次挑战", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 80, + "_fontSize": 80, + "_fontFamily": "Arial", + "_lineHeight": 100, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 74, + "g": 153, + "b": 38, + "a": 255 + }, + "_outlineWidth": 5, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "08oOODjIdBArqOvl52H9zY" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 52 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 49.166, + "_verticalCenter": 7.598, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c9VG06aLpBn7CiKYL60otw" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "44A832YTdNPK9WNGuFDK8R", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "flatIconRestart", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 51 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 61 + }, + { + "__id__": 63 + } + ], + "_prefab": { + "__id__": 65 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -177.422, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.2, + "y": 0.2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 490, + "height": 492 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a1dAg52EtFPKa4fRIpZGBI" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "c24760c9-312a-4638-ae56-6422010d93d0@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "27pXgblcVNprkFVgxD9WQZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "4bkTOdFDZCE7Ns59xjZVpi", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 51 + }, + "_enabled": true, + "__prefab": { + "__id__": 67 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1200, + "height": 234 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "82lHU8voxE4r+0kyAVXF/M" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 51 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "f87d228a-c520-499a-bf3a-e66cbb6def64@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "deIXk3pwxOVqLs/mP5fa30" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "0f+Q+b/gNIOYet56zae/V5", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ButtonHome", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 72 + }, + { + "__id__": 80 + } + ], + "_active": true, + "_components": [ + { + "__id__": 86 + }, + { + "__id__": 88 + }, + { + "__id__": 90 + } + ], + "_prefab": { + "__id__": 92 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 310, + "y": -392.466, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Label", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 71 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 73 + }, + { + "__id__": 75 + }, + { + "__id__": 77 + } + ], + "_prefab": { + "__id__": 79 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 49.166, + "y": 7.598, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 330, + "height": 136 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e38bkgAEJGrbWi0E98XcpV" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 76 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "返回主页", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 80, + "_fontSize": 80, + "_fontFamily": "Arial", + "_lineHeight": 100, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 182, + "g": 81, + "b": 7, + "a": 255 + }, + "_outlineWidth": 5, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "eeO2apklFGHq6gXBchz1oT" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 78 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 49.166, + "_verticalCenter": 7.598, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f9hL9nm/tC+Ikjc7Sc/YLa" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "4c/tUfaHVJ1Kqp6GW/pjeG", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "flatIconHome", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 71 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 81 + }, + { + "__id__": 83 + } + ], + "_prefab": { + "__id__": 85 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -177.422, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.2, + "y": 0.2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 80 + }, + "_enabled": true, + "__prefab": { + "__id__": 82 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 427, + "height": 427 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5fRzDNGJPsKp178zaH+cN" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 80 + }, + "_enabled": true, + "__prefab": { + "__id__": 84 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8fsPGUEy9DmYr50iRq43o4" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "19seqoknxEL5Je6geBO4+Q", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 87 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 580, + "height": 234 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d12vosWhlH8rDfWaVTxoqp" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 89 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92lEygP3ZH8JtaolLfaRRF" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 91 + }, + "_opacity": 192, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "74REJyNs5N/poR72fDQT8g" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "99IWUc/+xNyJf3Ude8GgsI", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 94 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1420, + "height": 1847 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "cbghKsLQpLtYZP8mDTgn11" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 96 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "10f211a7-5580-4da3-94d2-2d285d63ac28@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "fe9hjaoTZOZLr/00McCFgI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a0jedATEhFaqJKhCFKlm8G", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 99 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1080, + "height": 2160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "61F6RIyuhAgbmtMPXXVPb6" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 101 + }, + "_alignFlags": 45, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 100, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a29RxiIzdCmb3+pvtytcYa" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c46/YsCPVOJYA4mWEpNYRx", + "instance": null, + "targetOverrides": null + } +] \ No newline at end of file diff --git a/assets/prefabs/TimeoutModal.prefab.meta b/assets/prefabs/TimeoutModal.prefab.meta new file mode 100644 index 0000000..de6303d --- /dev/null +++ b/assets/prefabs/TimeoutModal.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.50", + "importer": "prefab", + "imported": true, + "uuid": "e41c722f-f605-47f7-9ce4-abff0ed2020f", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "TimeoutModal" + } +} diff --git a/assets/prefabs/WrongModal.prefab b/assets/prefabs/WrongModal.prefab new file mode 100644 index 0000000..35c7c36 --- /dev/null +++ b/assets/prefabs/WrongModal.prefab @@ -0,0 +1,1449 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "WrongModal", + "_objFlags": 0, + "__editorExtras__": {}, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "persistent": false + }, + { + "__type__": "cc.Node", + "_name": "WrongModal", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__id__": 56 + }, + { + "__id__": 58 + } + ], + "_prefab": { + "__id__": 60 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "dialogPanel", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 11 + }, + { + "__id__": 17 + }, + { + "__id__": 23 + }, + { + "__id__": 39 + } + ], + "_active": true, + "_components": [ + { + "__id__": 51 + }, + { + "__id__": 53 + } + ], + "_prefab": { + "__id__": 55 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.5, + "y": 0.5, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "closeBtn", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + } + ], + "_prefab": { + "__id__": 10 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 579.972, + "y": 799.106, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 180, + "height": 191 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "412r9fk2BHWpD2X1rSJkww" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "540f8b6d-7cad-47e8-abae-b941c9bdd900@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21B0+PZ41L+5bBN0giwudm" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_alignFlags": 33, + "_target": null, + "_left": 0, + "_right": 40.02800000000002, + "_top": 28.894000000000005, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e6kTdMyd1C3ZK6dQGDNQYb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d0mJX0WihMarx8vLwZSGe3", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "Title", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + } + ], + "_prefab": { + "__id__": 16 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 770, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 2, + "y": 2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 286, + "height": 94.2 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5/UQjcmRLo7HkiHyN74nh" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "温馨提示", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 70, + "_fontSize": 70, + "_fontFamily": "Arial", + "_lineHeight": 70, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_outlineWidth": 3, + "_enableShadow": true, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 98 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 0, + "y": -8 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ceF3Bp32VCd4YbyHCYG7FU" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f9RaZl4+JJfL6r43DgdzBa", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "Content", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 18 + }, + { + "__id__": 20 + } + ], + "_prefab": { + "__id__": 22 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -302.5819999999999, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 2, + "y": 2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 17 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 450, + "height": 69.3 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "5box8ADDlF47qbQwm1zKq2" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 17 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 56, + "g": 78, + "b": 40, + "a": 255 + }, + "_string": "哎呀,再仔细想想看?", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 45, + "_fontSize": 45, + "_fontFamily": "Arial", + "_lineHeight": 55, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": false, + "_outlineColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_outlineWidth": 3, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 98 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 0, + "y": -8 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9866guoQRJ95i2Vh5qFC9z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "640uQ8mrJImr2TZQLmVrX4", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "ButtonHint", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 24 + } + ], + "_active": true, + "_components": [ + { + "__id__": 32 + }, + { + "__id__": 34 + }, + { + "__id__": 36 + } + ], + "_prefab": { + "__id__": 38 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -627.0459999999999, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Label", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 23 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + }, + { + "__id__": 29 + } + ], + "_prefab": { + "__id__": 31 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 7.598, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 330, + "height": 136 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "87mx3WaFFFL4+v/+4i8Zx2" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "继续挑战", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 80, + "_fontSize": 80, + "_fontFamily": "Arial", + "_lineHeight": 100, + "_overflow": 0, + "_enableWrapText": true, + "_font": { + "__uuid__": "fb4acba6-6bc7-4eb3-be34-8f2ac9823a80", + "__expectedType__": "cc.TTFFont" + }, + "_isSystemFontUsed": false, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 72, + "g": 158, + "b": 35, + "a": 255 + }, + "_outlineWidth": 5, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { + "__type__": "cc.Vec2", + "x": 2, + "y": 2 + }, + "_shadowBlur": 2, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "490umEN6ZMiK0QtWULiZ/P" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 30 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 7.598, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "afYvKsXjlBwqyR370Uq1ce" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5ej6tVa2pPSpmVfXv7Qfo+", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 23 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 800, + "height": 234 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c4aNcq+lZDLLhgsEqWUklR" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 23 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "f87d228a-c520-499a-bf3a-e66cbb6def64@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ccrghFsT9MhKwmUxKh+xki" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 23 + }, + "_enabled": true, + "__prefab": { + "__id__": 37 + }, + "_alignFlags": 12, + "_target": null, + "_left": 310, + "_right": 0, + "_top": 0, + "_bottom": 179.45400000000006, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "566NGbzlJOyLK5JELzf1Nj" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "77l3F+7/dE+b92gfIk9YLK", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "sphere", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 40 + } + ], + "_active": true, + "_components": [ + { + "__id__": 46 + }, + { + "__id__": 48 + } + ], + "_prefab": { + "__id__": 50 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 190.8499999999999, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 2, + "y": 2, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "heart", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 41 + }, + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -12.293, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 0.4, + "y": 0.4, + "z": 1 + }, + "_mobility": 0, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 40 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 618, + "height": 529 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c2gj1BxsROHJO20cchgAtr" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 40 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "83e4a585-2ca9-485a-8ed5-b8782eafcc54@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fR64hN01DZbbmLQsFglfX" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "36nCxsXvpL07IHlCgf5qPs", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 39 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 350, + "height": 350 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0b94WSuwlHfqFNRchpwmM5" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 39 + }, + "_enabled": true, + "__prefab": { + "__id__": 49 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7a17df33-9d28-4272-9f3e-f336af8d4afb@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55O2cXx/FOlKsCFnViyN7H" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "fbCCd/NElI8r/gaodTgopa", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1420, + "height": 1847 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "cbghKsLQpLtYZP8mDTgn11" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "10f211a7-5580-4da3-94d2-2d285d63ac28@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 1, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "fe9hjaoTZOZLr/00McCFgI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a0jedATEhFaqJKhCFKlm8G", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 57 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 1080, + "height": 2160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "61F6RIyuhAgbmtMPXXVPb6" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 59 + }, + "_alignFlags": 45, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 100, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a29RxiIzdCmb3+pvtytcYa" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c46/YsCPVOJYA4mWEpNYRx", + "instance": null, + "targetOverrides": null + } +] \ No newline at end of file diff --git a/assets/prefabs/WrongModal.prefab.meta b/assets/prefabs/WrongModal.prefab.meta new file mode 100644 index 0000000..fd1493b --- /dev/null +++ b/assets/prefabs/WrongModal.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.50", + "importer": "prefab", + "imported": true, + "uuid": "455c7845-d090-4cd9-aeb4-1f5cad616bb5", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "WrongModal" + } +} diff --git a/assets/resources/images/pageLevel/1_0022_Layer-19.png b/assets/resources/images/pageLevel/1_0022_Layer-19.png new file mode 100644 index 0000000..5039f77 Binary files /dev/null and b/assets/resources/images/pageLevel/1_0022_Layer-19.png differ diff --git a/assets/resources/images/pageLevel/1_0022_Layer-19.png.meta b/assets/resources/images/pageLevel/1_0022_Layer-19.png.meta new file mode 100644 index 0000000..f3b1f79 --- /dev/null +++ b/assets/resources/images/pageLevel/1_0022_Layer-19.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400@6c48a", + "displayName": "1_0022_Layer-19", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400@f9941", + "displayName": "1_0022_Layer-19", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 1297, + "height": 1004, + "rawWidth": 1297, + "rawHeight": 1004, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -648.5, + -502, + 0, + 648.5, + -502, + 0, + -648.5, + 502, + 0, + 648.5, + 502, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 1004, + 1297, + 1004, + 0, + 0, + 1297, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -648.5, + -502, + 0 + ], + "maxPos": [ + 648.5, + 502, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "3ef3f86f-bc1f-49b7-a50f-0e8683cd2400@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/ButtonGreen.png.meta b/assets/resources/images/pageLevel/ButtonGreen.png.meta index 756d2f0..61d1afd 100644 --- a/assets/resources/images/pageLevel/ButtonGreen.png.meta +++ b/assets/resources/images/pageLevel/ButtonGreen.png.meta @@ -51,8 +51,8 @@ "rawHeight": 235, "borderTop": 0, "borderBottom": 0, - "borderLeft": 0, - "borderRight": 0, + "borderLeft": 120, + "borderRight": 120, "packable": true, "pixelsToUnit": 100, "pivotX": 0.5, diff --git a/assets/resources/images/pageLevel/ButtonOrange.png b/assets/resources/images/pageLevel/ButtonOrange.png new file mode 100644 index 0000000..481c23f Binary files /dev/null and b/assets/resources/images/pageLevel/ButtonOrange.png differ diff --git a/assets/resources/images/pageLevel/ButtonOrange.png.meta b/assets/resources/images/pageLevel/ButtonOrange.png.meta new file mode 100644 index 0000000..6dcd1d7 --- /dev/null +++ b/assets/resources/images/pageLevel/ButtonOrange.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd@6c48a", + "displayName": "ButtonOrange", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd@f9941", + "displayName": "ButtonOrange", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": -0.5, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 665, + "height": 235, + "rawWidth": 666, + "rawHeight": 235, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -332.5, + -117.5, + 0, + 332.5, + -117.5, + 0, + -332.5, + 117.5, + 0, + 332.5, + 117.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 235, + 665, + 235, + 0, + 0, + 665, + 0 + ], + "nuv": [ + 0, + 0, + 0.9984984984984985, + 0, + 0, + 1, + 0.9984984984984985, + 1 + ], + "minPos": [ + -332.5, + -117.5, + 0 + ], + "maxPos": [ + 332.5, + 117.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "0366f161-d78c-43b1-b2cb-8d0666dd2fbd@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/clock.png b/assets/resources/images/pageLevel/clock.png new file mode 100644 index 0000000..f6c7924 Binary files /dev/null and b/assets/resources/images/pageLevel/clock.png differ diff --git a/assets/resources/images/pageLevel/test.png.meta b/assets/resources/images/pageLevel/clock.png.meta similarity index 70% rename from assets/resources/images/pageLevel/test.png.meta rename to assets/resources/images/pageLevel/clock.png.meta index 1fc95fb..2d41762 100644 --- a/assets/resources/images/pageLevel/test.png.meta +++ b/assets/resources/images/pageLevel/clock.png.meta @@ -2,7 +2,7 @@ "ver": "1.0.27", "importer": "image", "imported": true, - "uuid": "d46acd4d-66e2-423b-8015-334ff99dd9f1", + "uuid": "98c2d728-0c34-499f-9a80-8aada311204d", "files": [ ".json", ".png" @@ -10,14 +10,14 @@ "subMetas": { "6c48a": { "importer": "texture", - "uuid": "d46acd4d-66e2-423b-8015-334ff99dd9f1@6c48a", - "displayName": "test", + "uuid": "98c2d728-0c34-499f-9a80-8aada311204d@6c48a", + "displayName": "clock", "id": "6c48a", "name": "texture", "userData": { "wrapModeS": "clamp-to-edge", "wrapModeT": "clamp-to-edge", - "imageUuidOrDatabaseUri": "d46acd4d-66e2-423b-8015-334ff99dd9f1", + "imageUuidOrDatabaseUri": "98c2d728-0c34-499f-9a80-8aada311204d", "isUuid": true, "visible": false, "minfilter": "linear", @@ -34,8 +34,8 @@ }, "f9941": { "importer": "sprite-frame", - "uuid": "d46acd4d-66e2-423b-8015-334ff99dd9f1@f9941", - "displayName": "test", + "uuid": "98c2d728-0c34-499f-9a80-8aada311204d@f9941", + "displayName": "clock", "id": "f9941", "name": "spriteFrame", "userData": { @@ -45,10 +45,10 @@ "offsetY": 0, "trimX": 0, "trimY": 0, - "width": 536, - "height": 548, - "rawWidth": 536, - "rawHeight": 548, + "width": 568, + "height": 630, + "rawWidth": 568, + "rawHeight": 630, "borderTop": 0, "borderBottom": 0, "borderLeft": 0, @@ -60,17 +60,17 @@ "meshType": 0, "vertices": { "rawPosition": [ - -268, - -274, + -284, + -315, 0, - 268, - -274, + 284, + -315, 0, - -268, - 274, + -284, + 315, 0, - 268, - 274, + 284, + 315, 0 ], "indexes": [ @@ -83,12 +83,12 @@ ], "uv": [ 0, - 548, - 536, - 548, + 630, + 568, + 630, 0, 0, - 536, + 568, 0 ], "nuv": [ @@ -102,18 +102,18 @@ 1 ], "minPos": [ - -268, - -274, + -284, + -315, 0 ], "maxPos": [ - 268, - 274, + 284, + 315, 0 ] }, "isUuid": true, - "imageUuidOrDatabaseUri": "d46acd4d-66e2-423b-8015-334ff99dd9f1@6c48a", + "imageUuidOrDatabaseUri": "98c2d728-0c34-499f-9a80-8aada311204d@6c48a", "atlasUuid": "", "trimType": "auto" }, @@ -128,7 +128,7 @@ "userData": { "type": "sprite-frame", "fixAlphaTransparencyArtifacts": false, - "hasAlpha": false, - "redirect": "d46acd4d-66e2-423b-8015-334ff99dd9f1@6c48a" + "hasAlpha": true, + "redirect": "98c2d728-0c34-499f-9a80-8aada311204d@6c48a" } } diff --git a/assets/resources/images/pageLevel/closeBtn.png b/assets/resources/images/pageLevel/closeBtn.png new file mode 100644 index 0000000..a85dc6c Binary files /dev/null and b/assets/resources/images/pageLevel/closeBtn.png differ diff --git a/assets/resources/images/pageLevel/closeBtn.png.meta b/assets/resources/images/pageLevel/closeBtn.png.meta new file mode 100644 index 0000000..e68fa65 --- /dev/null +++ b/assets/resources/images/pageLevel/closeBtn.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "540f8b6d-7cad-47e8-abae-b941c9bdd900", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "540f8b6d-7cad-47e8-abae-b941c9bdd900@6c48a", + "displayName": "closeBtn", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "540f8b6d-7cad-47e8-abae-b941c9bdd900", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "540f8b6d-7cad-47e8-abae-b941c9bdd900@f9941", + "displayName": "closeBtn", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 180, + "height": 191, + "rawWidth": 180, + "rawHeight": 191, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -90, + -95.5, + 0, + 90, + -95.5, + 0, + -90, + 95.5, + 0, + 90, + 95.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 191, + 180, + 191, + 0, + 0, + 180, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -90, + -95.5, + 0 + ], + "maxPos": [ + 90, + 95.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "540f8b6d-7cad-47e8-abae-b941c9bdd900@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "540f8b6d-7cad-47e8-abae-b941c9bdd900@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/dialogPanel.png b/assets/resources/images/pageLevel/dialogPanel.png new file mode 100644 index 0000000..47a5940 Binary files /dev/null and b/assets/resources/images/pageLevel/dialogPanel.png differ diff --git a/assets/resources/images/pageLevel/dialogPanel.png.meta b/assets/resources/images/pageLevel/dialogPanel.png.meta new file mode 100644 index 0000000..2cc4433 --- /dev/null +++ b/assets/resources/images/pageLevel/dialogPanel.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "10f211a7-5580-4da3-94d2-2d285d63ac28", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "10f211a7-5580-4da3-94d2-2d285d63ac28@6c48a", + "displayName": "dialogPanel", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "10f211a7-5580-4da3-94d2-2d285d63ac28", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "10f211a7-5580-4da3-94d2-2d285d63ac28@f9941", + "displayName": "dialogPanel", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 2, + "trimX": 0, + "trimY": 0, + "width": 1420, + "height": 1845, + "rawWidth": 1420, + "rawHeight": 1849, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -710, + -922.5, + 0, + 710, + -922.5, + 0, + -710, + 922.5, + 0, + 710, + 922.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 1849, + 1420, + 1849, + 0, + 4, + 1420, + 4 + ], + "nuv": [ + 0, + 0.002163331530557058, + 1, + 0.002163331530557058, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -710, + -922.5, + 0 + ], + "maxPos": [ + 710, + 922.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "10f211a7-5580-4da3-94d2-2d285d63ac28@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "10f211a7-5580-4da3-94d2-2d285d63ac28@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/flatIconHelp.png b/assets/resources/images/pageLevel/flatIconHelp.png new file mode 100644 index 0000000..23d937e Binary files /dev/null and b/assets/resources/images/pageLevel/flatIconHelp.png differ diff --git a/assets/resources/images/pageLevel/flatIconHelp.png.meta b/assets/resources/images/pageLevel/flatIconHelp.png.meta new file mode 100644 index 0000000..9ccbc47 --- /dev/null +++ b/assets/resources/images/pageLevel/flatIconHelp.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "69f85753-6740-4686-ba40-5d2383292f39", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "69f85753-6740-4686-ba40-5d2383292f39@6c48a", + "displayName": "flatIconHelp", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "69f85753-6740-4686-ba40-5d2383292f39", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "69f85753-6740-4686-ba40-5d2383292f39@f9941", + "displayName": "flatIconHelp", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 468, + "height": 468, + "rawWidth": 468, + "rawHeight": 468, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -234, + -234, + 0, + 234, + -234, + 0, + -234, + 234, + 0, + 234, + 234, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 468, + 468, + 468, + 0, + 0, + 468, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -234, + -234, + 0 + ], + "maxPos": [ + 234, + 234, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "69f85753-6740-4686-ba40-5d2383292f39@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "69f85753-6740-4686-ba40-5d2383292f39@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/flatIconHome.png b/assets/resources/images/pageLevel/flatIconHome.png new file mode 100644 index 0000000..601cf3f Binary files /dev/null and b/assets/resources/images/pageLevel/flatIconHome.png differ diff --git a/assets/resources/images/pageLevel/flatIconHome.png.meta b/assets/resources/images/pageLevel/flatIconHome.png.meta new file mode 100644 index 0000000..2f5e12d --- /dev/null +++ b/assets/resources/images/pageLevel/flatIconHome.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9@6c48a", + "displayName": "flatIconHome", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9@f9941", + "displayName": "flatIconHome", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 427, + "height": 427, + "rawWidth": 427, + "rawHeight": 427, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -213.5, + -213.5, + 0, + 213.5, + -213.5, + 0, + -213.5, + 213.5, + 0, + 213.5, + 213.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 427, + 427, + 427, + 0, + 0, + 427, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -213.5, + -213.5, + 0 + ], + "maxPos": [ + 213.5, + 213.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "fb73de29-d734-4eb4-853d-8cbdbb18a9c9@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/flatIconNext.png b/assets/resources/images/pageLevel/flatIconNext.png new file mode 100644 index 0000000..1ae9086 Binary files /dev/null and b/assets/resources/images/pageLevel/flatIconNext.png differ diff --git a/assets/resources/images/pageLevel/flatIconNext.png.meta b/assets/resources/images/pageLevel/flatIconNext.png.meta new file mode 100644 index 0000000..fec4506 --- /dev/null +++ b/assets/resources/images/pageLevel/flatIconNext.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c@6c48a", + "displayName": "flatIconNext", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c@f9941", + "displayName": "flatIconNext", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 13.5, + "offsetY": -0.5, + "trimX": 82, + "trimY": 29, + "width": 375, + "height": 455, + "rawWidth": 512, + "rawHeight": 512, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -187.5, + -227.5, + 0, + 187.5, + -227.5, + 0, + -187.5, + 227.5, + 0, + 187.5, + 227.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 82, + 483, + 457, + 483, + 82, + 28, + 457, + 28 + ], + "nuv": [ + 0.16015625, + 0.0546875, + 0.892578125, + 0.0546875, + 0.16015625, + 0.943359375, + 0.892578125, + 0.943359375 + ], + "minPos": [ + -187.5, + -227.5, + 0 + ], + "maxPos": [ + 187.5, + 227.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "1c8a9e95-7b00-4e59-a0a2-72a4aa97c03c@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/flatIconRestart.png b/assets/resources/images/pageLevel/flatIconRestart.png new file mode 100644 index 0000000..578645c Binary files /dev/null and b/assets/resources/images/pageLevel/flatIconRestart.png differ diff --git a/assets/resources/images/pageLevel/flatIconRestart.png.meta b/assets/resources/images/pageLevel/flatIconRestart.png.meta new file mode 100644 index 0000000..889395a --- /dev/null +++ b/assets/resources/images/pageLevel/flatIconRestart.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "c24760c9-312a-4638-ae56-6422010d93d0", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "c24760c9-312a-4638-ae56-6422010d93d0@6c48a", + "displayName": "flatIconRestart", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "c24760c9-312a-4638-ae56-6422010d93d0", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "c24760c9-312a-4638-ae56-6422010d93d0@f9941", + "displayName": "flatIconRestart", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 490, + "height": 492, + "rawWidth": 490, + "rawHeight": 492, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -245, + -246, + 0, + 245, + -246, + 0, + -245, + 246, + 0, + 245, + 246, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 492, + 490, + 492, + 0, + 0, + 490, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -245, + -246, + 0 + ], + "maxPos": [ + 245, + 246, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "c24760c9-312a-4638-ae56-6422010d93d0@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "c24760c9-312a-4638-ae56-6422010d93d0@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/flatIconShare.png b/assets/resources/images/pageLevel/flatIconShare.png new file mode 100644 index 0000000..dab0f6a Binary files /dev/null and b/assets/resources/images/pageLevel/flatIconShare.png differ diff --git a/assets/resources/images/pageLevel/flatIconShare.png.meta b/assets/resources/images/pageLevel/flatIconShare.png.meta new file mode 100644 index 0000000..8c5c118 --- /dev/null +++ b/assets/resources/images/pageLevel/flatIconShare.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "b9bec232-3d37-48a0-9ca8-62aab6c4083b", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "b9bec232-3d37-48a0-9ca8-62aab6c4083b@6c48a", + "displayName": "flatIconShare", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "b9bec232-3d37-48a0-9ca8-62aab6c4083b", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "b9bec232-3d37-48a0-9ca8-62aab6c4083b@f9941", + "displayName": "flatIconShare", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 22, + "trimY": 11, + "width": 468, + "height": 490, + "rawWidth": 512, + "rawHeight": 512, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -234, + -245, + 0, + 234, + -245, + 0, + -234, + 245, + 0, + 234, + 245, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 22, + 501, + 490, + 501, + 22, + 11, + 490, + 11 + ], + "nuv": [ + 0.04296875, + 0.021484375, + 0.95703125, + 0.021484375, + 0.04296875, + 0.978515625, + 0.95703125, + 0.978515625 + ], + "minPos": [ + -234, + -245, + 0 + ], + "maxPos": [ + 234, + 245, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "b9bec232-3d37-48a0-9ca8-62aab6c4083b@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "b9bec232-3d37-48a0-9ca8-62aab6c4083b@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/heart.png b/assets/resources/images/pageLevel/heart.png new file mode 100644 index 0000000..74e5e4e Binary files /dev/null and b/assets/resources/images/pageLevel/heart.png differ diff --git a/assets/resources/images/pageLevel/heart.png.meta b/assets/resources/images/pageLevel/heart.png.meta new file mode 100644 index 0000000..a2d0095 --- /dev/null +++ b/assets/resources/images/pageLevel/heart.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "83e4a585-2ca9-485a-8ed5-b8782eafcc54", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "83e4a585-2ca9-485a-8ed5-b8782eafcc54@6c48a", + "displayName": "heart", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "83e4a585-2ca9-485a-8ed5-b8782eafcc54", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "83e4a585-2ca9-485a-8ed5-b8782eafcc54@f9941", + "displayName": "heart", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 618, + "height": 529, + "rawWidth": 618, + "rawHeight": 529, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -309, + -264.5, + 0, + 309, + -264.5, + 0, + -309, + 264.5, + 0, + 309, + 264.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 529, + 618, + 529, + 0, + 0, + 618, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -309, + -264.5, + 0 + ], + "maxPos": [ + 309, + 264.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "83e4a585-2ca9-485a-8ed5-b8782eafcc54@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "83e4a585-2ca9-485a-8ed5-b8782eafcc54@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/iconCrown.png b/assets/resources/images/pageLevel/iconCrown.png new file mode 100644 index 0000000..1f39a02 Binary files /dev/null and b/assets/resources/images/pageLevel/iconCrown.png differ diff --git a/assets/resources/images/pageLevel/iconCrown.png.meta b/assets/resources/images/pageLevel/iconCrown.png.meta new file mode 100644 index 0000000..5b3da61 --- /dev/null +++ b/assets/resources/images/pageLevel/iconCrown.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "62df15c5-20eb-4ab2-9b63-32bfbcce435b", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "62df15c5-20eb-4ab2-9b63-32bfbcce435b@6c48a", + "displayName": "iconCrown", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "62df15c5-20eb-4ab2-9b63-32bfbcce435b", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "62df15c5-20eb-4ab2-9b63-32bfbcce435b@f9941", + "displayName": "iconCrown", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0.5, + "offsetY": -3.5, + "trimX": 39, + "trimY": 57, + "width": 323, + "height": 293, + "rawWidth": 400, + "rawHeight": 400, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -161.5, + -146.5, + 0, + 161.5, + -146.5, + 0, + -161.5, + 146.5, + 0, + 161.5, + 146.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 39, + 343, + 362, + 343, + 39, + 50, + 362, + 50 + ], + "nuv": [ + 0.0975, + 0.125, + 0.905, + 0.125, + 0.0975, + 0.8575, + 0.905, + 0.8575 + ], + "minPos": [ + -161.5, + -146.5, + 0 + ], + "maxPos": [ + 161.5, + 146.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "62df15c5-20eb-4ab2-9b63-32bfbcce435b@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "62df15c5-20eb-4ab2-9b63-32bfbcce435b@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/progressBar.png b/assets/resources/images/pageLevel/progressBar.png new file mode 100644 index 0000000..53fefe3 Binary files /dev/null and b/assets/resources/images/pageLevel/progressBar.png differ diff --git a/assets/resources/images/pageLevel/progressBar.png.meta b/assets/resources/images/pageLevel/progressBar.png.meta new file mode 100644 index 0000000..88a44dd --- /dev/null +++ b/assets/resources/images/pageLevel/progressBar.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "929dfe4e-9eab-48f1-a87d-344d51f07402", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "929dfe4e-9eab-48f1-a87d-344d51f07402@6c48a", + "displayName": "progressBar", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "929dfe4e-9eab-48f1-a87d-344d51f07402", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "929dfe4e-9eab-48f1-a87d-344d51f07402@f9941", + "displayName": "progressBar", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 928, + "height": 121, + "rawWidth": 928, + "rawHeight": 121, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 120, + "borderRight": 120, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -464, + -60.5, + 0, + 464, + -60.5, + 0, + -464, + 60.5, + 0, + 464, + 60.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 121, + 928, + 121, + 0, + 0, + 928, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -464, + -60.5, + 0 + ], + "maxPos": [ + 464, + 60.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "929dfe4e-9eab-48f1-a87d-344d51f07402@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "929dfe4e-9eab-48f1-a87d-344d51f07402@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/progressBarBg.png b/assets/resources/images/pageLevel/progressBarBg.png new file mode 100644 index 0000000..3044dad Binary files /dev/null and b/assets/resources/images/pageLevel/progressBarBg.png differ diff --git a/assets/resources/images/pageLevel/progressBarBg.png.meta b/assets/resources/images/pageLevel/progressBarBg.png.meta new file mode 100644 index 0000000..1926e25 --- /dev/null +++ b/assets/resources/images/pageLevel/progressBarBg.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "c55e385b-97b7-4aa1-8888-cfd101e68f77", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "c55e385b-97b7-4aa1-8888-cfd101e68f77@6c48a", + "displayName": "progressBarBg", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "c55e385b-97b7-4aa1-8888-cfd101e68f77", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "c55e385b-97b7-4aa1-8888-cfd101e68f77@f9941", + "displayName": "progressBarBg", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0.5, + "trimX": 0, + "trimY": 0, + "width": 966, + "height": 163, + "rawWidth": 966, + "rawHeight": 164, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -483, + -81.5, + 0, + 483, + -81.5, + 0, + -483, + 81.5, + 0, + 483, + 81.5, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 164, + 966, + 164, + 0, + 1, + 966, + 1 + ], + "nuv": [ + 0, + 0.006097560975609756, + 1, + 0.006097560975609756, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -483, + -81.5, + 0 + ], + "maxPos": [ + 483, + 81.5, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "c55e385b-97b7-4aa1-8888-cfd101e68f77@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "c55e385b-97b7-4aa1-8888-cfd101e68f77@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/sphere.png b/assets/resources/images/pageLevel/sphere.png new file mode 100644 index 0000000..ce375ea Binary files /dev/null and b/assets/resources/images/pageLevel/sphere.png differ diff --git a/assets/resources/images/pageLevel/sphere.png.meta b/assets/resources/images/pageLevel/sphere.png.meta new file mode 100644 index 0000000..3c32264 --- /dev/null +++ b/assets/resources/images/pageLevel/sphere.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "7a17df33-9d28-4272-9f3e-f336af8d4afb", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "7a17df33-9d28-4272-9f3e-f336af8d4afb@6c48a", + "displayName": "sphere", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "7a17df33-9d28-4272-9f3e-f336af8d4afb", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "7a17df33-9d28-4272-9f3e-f336af8d4afb@f9941", + "displayName": "sphere", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 416, + "height": 416, + "rawWidth": 416, + "rawHeight": 416, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -208, + -208, + 0, + 208, + -208, + 0, + -208, + 208, + 0, + 208, + 208, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 416, + 416, + 416, + 0, + 0, + 416, + 0 + ], + "nuv": [ + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -208, + -208, + 0 + ], + "maxPos": [ + 208, + 208, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "7a17df33-9d28-4272-9f3e-f336af8d4afb@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "7a17df33-9d28-4272-9f3e-f336af8d4afb@6c48a" + } +} diff --git a/assets/resources/images/pageLevel/test.png b/assets/resources/images/pageLevel/test.png deleted file mode 100644 index d296ae1..0000000 Binary files a/assets/resources/images/pageLevel/test.png and /dev/null differ diff --git a/assets/resources/images/pageLevel/winBanner.png b/assets/resources/images/pageLevel/winBanner.png new file mode 100644 index 0000000..cd31b77 Binary files /dev/null and b/assets/resources/images/pageLevel/winBanner.png differ diff --git a/assets/resources/images/pageLevel/winBanner.png.meta b/assets/resources/images/pageLevel/winBanner.png.meta new file mode 100644 index 0000000..7d52aee --- /dev/null +++ b/assets/resources/images/pageLevel/winBanner.png.meta @@ -0,0 +1,134 @@ +{ + "ver": "1.0.27", + "importer": "image", + "imported": true, + "uuid": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a", + "files": [ + ".json", + ".png" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a@6c48a", + "displayName": "winBanner", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "clamp-to-edge", + "wrapModeT": "clamp-to-edge", + "imageUuidOrDatabaseUri": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a", + "isUuid": true, + "visible": false, + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0 + }, + "ver": "1.0.22", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a@f9941", + "displayName": "winBanner", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 3.5, + "trimX": 0, + "trimY": 0, + "width": 1131, + "height": 606, + "rawWidth": 1131, + "rawHeight": 613, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "pixelsToUnit": 100, + "pivotX": 0.5, + "pivotY": 0.5, + "meshType": 0, + "vertices": { + "rawPosition": [ + -565.5, + -303, + 0, + 565.5, + -303, + 0, + -565.5, + 303, + 0, + 565.5, + 303, + 0 + ], + "indexes": [ + 0, + 1, + 2, + 2, + 1, + 3 + ], + "uv": [ + 0, + 613, + 1131, + 613, + 0, + 7, + 1131, + 7 + ], + "nuv": [ + 0, + 0.011419249592169658, + 1, + 0.011419249592169658, + 0, + 1, + 1, + 1 + ], + "minPos": [ + -565.5, + -303, + 0 + ], + "maxPos": [ + 565.5, + 303, + 0 + ] + }, + "isUuid": true, + "imageUuidOrDatabaseUri": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a@6c48a", + "atlasUuid": "", + "trimType": "auto" + }, + "ver": "1.0.12", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "type": "sprite-frame", + "fixAlphaTransparencyArtifacts": false, + "hasAlpha": true, + "redirect": "4c29b5fc-64c2-4fbd-b220-a4388daebc0a@6c48a" + } +} diff --git a/assets/scripts/config/AchievementTitleConfig.ts b/assets/scripts/config/AchievementTitleConfig.ts new file mode 100644 index 0000000..001d5d5 --- /dev/null +++ b/assets/scripts/config/AchievementTitleConfig.ts @@ -0,0 +1,31 @@ +export interface AchievementTitleConfigItem { + readonly seriesName: string; + readonly levelName: string; + readonly clearsToNext: number; +} + +const createSeries = (seriesName: string, levelCount: number, clearsToNext: number): AchievementTitleConfigItem[] => { + return Array.from({ length: levelCount }, (_, index) => ({ + seriesName, + levelName: `${seriesName}${index + 1}级`, + clearsToNext + })); +}; + +export const ACHIEVEMENT_TITLE_CONFIG: readonly AchievementTitleConfigItem[] = [ + ...createSeries('冷场小白', 2, 3), + ...createSeries('尬笑学生', 2, 3), + ...createSeries('浅梗游民', 3, 4), + ...createSeries('热梗新秀', 6, 5), + ...createSeries('笑点刺客', 6, 5), + ...createSeries('爆梗高手', 8, 6), + ...createSeries('幽默大师', 10, 8), + ...createSeries('爆笑领主', 10, 8), + ...createSeries('梗王之王', 20, 8) +]; + +export const INFINITE_ACHIEVEMENT_TITLE = { + seriesName: '幽默始祖', + levelNamePrefix: '幽默始祖', + clearsToNext: 8 +} as const; diff --git a/assets/scripts/config/AchievementTitleConfig.ts.meta b/assets/scripts/config/AchievementTitleConfig.ts.meta new file mode 100644 index 0000000..37ddae6 --- /dev/null +++ b/assets/scripts/config/AchievementTitleConfig.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.24", + "importer": "typescript", + "imported": true, + "uuid": "eb65203d-ee3d-4169-806d-1de88d9702eb", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/assets/scripts/core/BaseModal.ts b/assets/scripts/core/BaseModal.ts new file mode 100644 index 0000000..8777ff7 --- /dev/null +++ b/assets/scripts/core/BaseModal.ts @@ -0,0 +1,102 @@ +import { _decorator, Node, Tween, UIOpacity, Vec3, tween } from 'cc'; +import { BaseView } from './BaseView'; +const { ccclass, property } = _decorator; + +@ccclass('BaseModal') +export class BaseModal extends BaseView { + @property([Node]) + protected animationNodes: Node[] = []; + + @property(Node) + protected backdropNode: Node | null = null; + + @property + protected openAnimationEnabled: boolean = true; + + @property + protected openAnimationDuration: number = 0.36; + + private readonly _originalScales: Map = new Map(); + + onViewShow(): void { + this.playOpenAnimation(); + } + + onViewHide(): void { + this.stopOpenAnimation(); + } + + protected playOpenAnimation(): void { + if (!this.openAnimationEnabled) { + return; + } + + this.playBackdropFadeIn(); + + const targets = this.getAnimationTargets(); + targets.forEach((target, index) => { + this.playBounceIn(target, index * 0.035); + }); + } + + protected stopOpenAnimation(): void { + this.getAnimationTargets().forEach((target) => { + Tween.stopAllByTarget(target); + }); + + const opacity = this.backdropNode?.getComponent(UIOpacity); + if (opacity) { + Tween.stopAllByTarget(opacity); + } + } + + private getAnimationTargets(): Node[] { + const configuredTargets = this.animationNodes.filter((node) => node?.isValid); + return configuredTargets.length > 0 ? configuredTargets : [this.node]; + } + + private getOriginalScale(target: Node): Vec3 { + const cachedScale = this._originalScales.get(target); + if (cachedScale) { + return cachedScale; + } + + const originalScale = target.scale.clone(); + this._originalScales.set(target, originalScale); + return originalScale; + } + + private playBounceIn(target: Node, delay: number): void { + const originalScale = this.getOriginalScale(target); + const startScale = this.multiplyScale(originalScale, 0.82); + const peakScale = this.multiplyScale(originalScale, 1.045); + + Tween.stopAllByTarget(target); + target.setScale(startScale); + + tween(target) + .delay(delay) + .to(this.openAnimationDuration * 0.58, { scale: peakScale }, { easing: 'backOut' }) + .to(this.openAnimationDuration * 0.24, { scale: this.multiplyScale(originalScale, 0.985) }, { easing: 'sineOut' }) + .to(this.openAnimationDuration * 0.18, { scale: originalScale }, { easing: 'sineOut' }) + .start(); + } + + private playBackdropFadeIn(): void { + if (!this.backdropNode?.isValid) { + return; + } + + const opacity = this.backdropNode.getComponent(UIOpacity) ?? this.backdropNode.addComponent(UIOpacity); + Tween.stopAllByTarget(opacity); + opacity.opacity = 0; + + tween(opacity) + .to(0.18, { opacity: 255 }, { easing: 'sineOut' }) + .start(); + } + + private multiplyScale(scale: Vec3, factor: number): Vec3 { + return new Vec3(scale.x * factor, scale.y * factor, scale.z); + } +} diff --git a/assets/scripts/core/BaseModal.ts.meta b/assets/scripts/core/BaseModal.ts.meta new file mode 100644 index 0000000..23cb694 --- /dev/null +++ b/assets/scripts/core/BaseModal.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.24", + "importer": "typescript", + "imported": true, + "uuid": "981df4d4-68c1-4651-aa5b-44633c119e93", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/assets/scripts/types/ApiTypes.ts b/assets/scripts/types/ApiTypes.ts index 1140369..1b633d7 100644 --- a/assets/scripts/types/ApiTypes.ts +++ b/assets/scripts/types/ApiTypes.ts @@ -44,6 +44,7 @@ export interface GameData { stamina: StaminaInfo; }; completedLevelIds: string[]; + completedLevelCount?: number; } /** 关卡列表项 */ diff --git a/assets/scripts/utils/AchievementTitleManager.ts b/assets/scripts/utils/AchievementTitleManager.ts new file mode 100644 index 0000000..dafbc04 --- /dev/null +++ b/assets/scripts/utils/AchievementTitleManager.ts @@ -0,0 +1,111 @@ +import { ACHIEVEMENT_TITLE_CONFIG, AchievementTitleConfigItem, INFINITE_ACHIEVEMENT_TITLE } from '../config/AchievementTitleConfig'; + +export interface AchievementTitleInfo { + readonly titleText: string; + readonly nextTitleText: string; + readonly nextTitleProgress: number; + readonly progressText: string; + readonly completedLevelCount: number; + readonly currentTitleStartCount: number; + readonly nextTitleRequiredCount: number; + readonly remainingToNextTitle: number; +} + +interface AchievementTitleStage { + readonly titleText: string; + readonly clearsToNext: number; + readonly startCount: number; +} + +export class AchievementTitleManager { + public static getTitleInfo(completedLevelCount: number): AchievementTitleInfo { + const safeCompletedCount = AchievementTitleManager.normalizeCompletedCount(completedLevelCount); + const stages = AchievementTitleManager.buildFiniteStages(); + const finiteResult = AchievementTitleManager.findFiniteStage(safeCompletedCount, stages); + + if (finiteResult) { + return AchievementTitleManager.createTitleInfo(safeCompletedCount, finiteResult.currentStage, finiteResult.nextStage); + } + + return AchievementTitleManager.createInfiniteTitleInfo(safeCompletedCount, stages[stages.length - 1]); + } + + private static normalizeCompletedCount(completedLevelCount: number): number { + if (!Number.isFinite(completedLevelCount) || completedLevelCount < 0) { + return 0; + } + + return Math.floor(completedLevelCount); + } + + private static buildFiniteStages(): AchievementTitleStage[] { + let startCount = 0; + + return ACHIEVEMENT_TITLE_CONFIG.map((item: AchievementTitleConfigItem) => { + const stage: AchievementTitleStage = { + titleText: item.levelName, + clearsToNext: item.clearsToNext, + startCount + }; + startCount += item.clearsToNext; + return stage; + }); + } + + private static findFiniteStage(completedLevelCount: number, stages: AchievementTitleStage[]): { currentStage: AchievementTitleStage; nextStage: AchievementTitleStage } | null { + for (let index = 0; index < stages.length; index++) { + const currentStage = stages[index]; + const nextStage = stages[index + 1] ?? { + titleText: `${INFINITE_ACHIEVEMENT_TITLE.levelNamePrefix}1级`, + clearsToNext: INFINITE_ACHIEVEMENT_TITLE.clearsToNext, + startCount: currentStage.startCount + currentStage.clearsToNext + }; + + if (completedLevelCount < nextStage.startCount) { + return { currentStage, nextStage }; + } + } + + return null; + } + + private static createInfiniteTitleInfo(completedLevelCount: number, lastFiniteStage: AchievementTitleStage): AchievementTitleInfo { + const infiniteStartCount = lastFiniteStage.startCount + lastFiniteStage.clearsToNext; + const completedAfterInfiniteStart = Math.max(0, completedLevelCount - infiniteStartCount); + const currentInfiniteLevel = Math.floor(completedAfterInfiniteStart / INFINITE_ACHIEVEMENT_TITLE.clearsToNext) + 1; + const currentStageStartCount = infiniteStartCount + (currentInfiniteLevel - 1) * INFINITE_ACHIEVEMENT_TITLE.clearsToNext; + const nextStage: AchievementTitleStage = { + titleText: `${INFINITE_ACHIEVEMENT_TITLE.levelNamePrefix}${currentInfiniteLevel + 1}级`, + clearsToNext: INFINITE_ACHIEVEMENT_TITLE.clearsToNext, + startCount: currentStageStartCount + INFINITE_ACHIEVEMENT_TITLE.clearsToNext + }; + + return AchievementTitleManager.createTitleInfo( + completedLevelCount, + { + titleText: `${INFINITE_ACHIEVEMENT_TITLE.levelNamePrefix}${currentInfiniteLevel}级`, + clearsToNext: INFINITE_ACHIEVEMENT_TITLE.clearsToNext, + startCount: currentStageStartCount + }, + nextStage + ); + } + + private static createTitleInfo(completedLevelCount: number, currentStage: AchievementTitleStage, nextStage: AchievementTitleStage): AchievementTitleInfo { + const interval = Math.max(1, nextStage.startCount - currentStage.startCount); + const completedInCurrentTitle = Math.max(0, completedLevelCount - currentStage.startCount); + const remainingToNextTitle = Math.max(0, nextStage.startCount - completedLevelCount); + const nextTitleProgress = Math.max(0, Math.min(1, completedInCurrentTitle / interval)); + + return { + titleText: currentStage.titleText, + nextTitleText: nextStage.titleText, + nextTitleProgress, + progressText: `还差${remainingToNextTitle}题获得${nextStage.titleText}`, + completedLevelCount, + currentTitleStartCount: currentStage.startCount, + nextTitleRequiredCount: nextStage.startCount, + remainingToNextTitle + }; + } +} diff --git a/assets/scripts/utils/AchievementTitleManager.ts.meta b/assets/scripts/utils/AchievementTitleManager.ts.meta new file mode 100644 index 0000000..1565a8c --- /dev/null +++ b/assets/scripts/utils/AchievementTitleManager.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.24", + "importer": "typescript", + "imported": true, + "uuid": "a97f1641-1123-4458-9fb5-3b3f74e314a9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/assets/scripts/utils/AuthManager.ts b/assets/scripts/utils/AuthManager.ts index c1f379a..ad6e090 100644 --- a/assets/scripts/utils/AuthManager.ts +++ b/assets/scripts/utils/AuthManager.ts @@ -15,6 +15,8 @@ export class AuthManager { private _isLoggedIn: boolean = false; /** 服务端返回的已完成关卡 ID(登录后暂存,等 LevelDataManager 就绪后同步) */ private _completedLevelIds: string[] = []; + /** 服务端返回的已完成关卡数量,用于称号体系计算 */ + private _completedLevelCount: number = 0; static get instance(): AuthManager { if (!this._instance) { @@ -37,6 +39,14 @@ export class AuthManager { return this._completedLevelIds; } + get completedLevelCount(): number { + return this._completedLevelCount; + } + + addCompletedLevelCount(delta: number = 1): void { + this._completedLevelCount = Math.max(0, this._completedLevelCount + delta); + } + /** * 初始化认证:尝试恢复 token 或执行微信登录 */ @@ -109,8 +119,9 @@ export class AuthManager { this._isLoggedIn = true; StorageManager.setStamina(gameData.user.stamina); this._completedLevelIds = gameData.completedLevelIds; + this._completedLevelCount = this._resolveCompletedLevelCount(gameData); - console.log(`[AuthManager] Token 验证成功,体力: ${gameData.user.stamina.current}/${gameData.user.stamina.max},已完成: ${this._completedLevelIds.length} 关`); + console.log(`[AuthManager] Token 验证成功,体力: ${gameData.user.stamina.current}/${gameData.user.stamina.max},已完成: ${this._completedLevelCount} 关`); return true; } @@ -121,6 +132,7 @@ export class AuthManager { const gameData = await this._fetchGameData(); if (gameData) { this._completedLevelIds = gameData.completedLevelIds; + this._completedLevelCount = this._resolveCompletedLevelCount(gameData); StorageManager.setStamina(gameData.user.stamina); } } @@ -140,4 +152,8 @@ export class AuthManager { return null; } } + + private _resolveCompletedLevelCount(gameData: GameData): number { + return gameData.completedLevelCount ?? gameData.completedLevelIds.length; + } }