Compare commits
	
		
			4 Commits
		
	
	
		
			51fe897ae7
			...
			55c4fcd9ae
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 55c4fcd9ae | ||
|   | 591f398085 | ||
|   | 389887202b | ||
|   | 64fc88d1bb | 
| @@ -0,0 +1,2 @@ | ||||
| [InternetShortcut] | ||||
| URL=https://docs.cocos.com/creator/manual/en/scripting/setup.html#custom-script-template | ||||
							
								
								
									
										1
									
								
								.creator/default-meta.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | ||||
| {} | ||||
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,4 @@ | ||||
| library | ||||
| temp | ||||
| build | ||||
| node_modules | ||||
							
								
								
									
										38
									
								
								.prettierrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,38 @@ | ||||
| { | ||||
|    "printWidth": 120, | ||||
|    "tabWidth": 4, | ||||
|    "useTabs": false, | ||||
|    "semi": true, | ||||
|    "singleQuote": false, | ||||
|    "quoteProps": "consistent", | ||||
|    "jsxSingleQuote": false, | ||||
|    "trailingComma": "all", | ||||
|    "bracketSpacing": true, | ||||
|    "bracketSameLine": false, | ||||
|    "arrowParens": "always", | ||||
|    "proseWrap": "always", | ||||
|    "endOfLine": "lf", | ||||
|    "htmlWhitespaceSensitivity": "css", | ||||
|    "vueIndentScriptAndStyle": false, | ||||
|  | ||||
|    "jsxBracketSameLine": false, | ||||
|  | ||||
|    "overrides": [ | ||||
|       { | ||||
|          "files": "*.json", | ||||
|          "options": { | ||||
|             "printWidth": 80, | ||||
|             "tabWidth": 2, | ||||
|             "singleQuote": false | ||||
|          } | ||||
|       }, | ||||
|       { | ||||
|          "files": ["*.md", "*.mdx"], | ||||
|          "options": { | ||||
|             "printWidth": 80, | ||||
|             "proseWrap": "never", | ||||
|             "embeddedLanguageFormatting": "off" | ||||
|          } | ||||
|       } | ||||
|    ] | ||||
| } | ||||
							
								
								
									
										7
									
								
								README.md
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,7 @@ | ||||
| # UI 案例 | ||||
|  | ||||
| 一个漂亮的闯关类 UI 模板,包含商店、背包等常见游戏 UI 界面。 | ||||
|  | ||||
| ## Screenshots | ||||
|  | ||||
| <img width="319" alt="ui-image" src="https://user-images.githubusercontent.com/32630749/158115467-5bf10b77-c5e1-464a-8703-0f368fc29110.png"> | ||||
							
								
								
									
										11
									
								
								assets/configs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "33558479-c4d2-4151-95ca-52ee0914ea78", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "isBundle": true | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "f7c4440c-c8da-402d-b2fb-9e8608fa3dca", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "c20136b0-1489-4c36-b935-aecc9c99eaa9", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/Beans.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| /** | ||||
|  * 自动生成的Bean类型定义 | ||||
|  * 请勿手动修改此文件 | ||||
|  * 生成时间: 2025-10-13T13:51:42.231Z | ||||
|  */ | ||||
|  | ||||
| import { ConfigParseUtils } from "./ConfigParseUtils"; | ||||
|  | ||||
| // 没有找到Bean定义 | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/Beans.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "793d74d0-b0fc-446a-a36e-7ea0476da99a", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										257
									
								
								assets/configs/generated/core/ConfigParseUtils.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,257 @@ | ||||
|  | ||||
| import { Vec2, Vec3, Vec4, Color, Size, Rect, Quat, Mat4 } from 'cc'; | ||||
|  | ||||
| import LogUtils from '@max-studio/core/utils/LogUtils'; | ||||
|  | ||||
| /** | ||||
|  * 配置表解析工具类 | ||||
|  * 提供通用的数据类型解析函数 | ||||
|  *  | ||||
|  * ⚠️ 此文件由配置表生成器自动生成,请勿手动修改! | ||||
|  * 如需修改,请编辑 configs/plugins/ConfigTableGenerator.ts 中的 generateConfigParseUtils 方法 | ||||
|  */ | ||||
| export class ConfigParseUtils { | ||||
|     /** | ||||
|      * 解析Vec2类型 | ||||
|      */ | ||||
|     public static parseVec2(value: any): Vec2 { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Vec2(parts[0] || 0, parts[1] || 0); | ||||
|         } | ||||
|         return new Vec2(0, 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Vec3类型 | ||||
|      */ | ||||
|     public static parseVec3(value: any): Vec3 { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Vec3(parts[0] || 0, parts[1] || 0, parts[2] || 0); | ||||
|         } | ||||
|         return new Vec3(0, 0, 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Vec4类型 | ||||
|      */ | ||||
|     public static parseVec4(value: any): Vec4 { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Vec4(parts[0] || 0, parts[1] || 0, parts[2] || 0, parts[3] || 0); | ||||
|         } | ||||
|         return new Vec4(0, 0, 0, 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Color类型 | ||||
|      */ | ||||
|     public static parseColor(value: any): Color { | ||||
|         if (typeof value === 'string') { | ||||
|             if (value.startsWith('#')) { | ||||
|                 // 十六进制颜色 | ||||
|                 const hex = value.slice(1); | ||||
|                 const r = Number.parseInt(hex.substring(0, 2), 16); | ||||
|                 const g = Number.parseInt(hex.substring(2, 4), 16); | ||||
|                 const b = Number.parseInt(hex.substring(4, 6), 16); | ||||
|                 const a = hex.length > 6 ? Number.parseInt(hex.substring(6, 8), 16) : 255; | ||||
|                 return new Color(r, g, b, a); | ||||
|             } else { | ||||
|                 // 逗号分隔的RGBA值 | ||||
|                 const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|                 return new Color(parts[0] || 0, parts[1] || 0, parts[2] || 0, parts[3] !== undefined ? parts[3] : 255); | ||||
|             } | ||||
|         } | ||||
|         return new Color(0, 0, 0, 255); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Size类型 | ||||
|      */ | ||||
|     public static parseSize(value: any): Size { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Size(parts[0] || 0, parts[1] || 0); | ||||
|         } | ||||
|         return new Size(0, 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Rect类型 | ||||
|      */ | ||||
|     public static parseRect(value: any): Rect { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Rect(parts[0] || 0, parts[1] || 0, parts[2] || 0, parts[3] || 0); | ||||
|         } | ||||
|         return new Rect(0, 0, 0, 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Quat类型 | ||||
|      */ | ||||
|     public static parseQuat(value: any): Quat { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             return new Quat(parts[0] || 0, parts[1] || 0, parts[2] || 0, parts[3] !== undefined ? parts[3] : 1); | ||||
|         } | ||||
|         return new Quat(0, 0, 0, 1); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析Mat4类型 | ||||
|      */ | ||||
|     public static parseMat4(value: any): Mat4 { | ||||
|         if (typeof value === 'string') { | ||||
|             const parts = value.split(',').map(v => Number.parseFloat(v.trim()) || 0); | ||||
|             const mat = new Mat4(); | ||||
|             try { | ||||
|                 mat.set( | ||||
|                     parts[0], parts[1], parts[2], parts[3], | ||||
|                     parts[4], parts[5], parts[6], parts[7], | ||||
|                     parts[8], parts[9], parts[10], parts[11], | ||||
|                     parts[12], parts[13], parts[14], parts[15] | ||||
|                 ); | ||||
|             } catch (err) { | ||||
|                 LogUtils.error('ConfigParseUtils', '解析Mat4失败:', err); | ||||
|             } | ||||
|             return mat; | ||||
|         } | ||||
|         return new Mat4(); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析布尔值 | ||||
|      */ | ||||
|     static parseBoolean(value: any): boolean { | ||||
|         if (typeof value === 'boolean') { | ||||
|             return value; | ||||
|         } | ||||
|         if (typeof value === 'string') { | ||||
|             const lowerValue = value.toLowerCase(); | ||||
|             return lowerValue === 'true' || lowerValue === '1' || lowerValue === 'yes'; | ||||
|         } | ||||
|         if (typeof value === 'number') { | ||||
|             return value !== 0; | ||||
|         } | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析整数 | ||||
|      */ | ||||
|     public static parseInt(value: string | number): number { | ||||
|         if (typeof value === 'number') return Math.floor(value); | ||||
|         if (typeof value === 'string') return Number.parseInt(value.trim()) || 0; | ||||
|         return 0; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析浮点数 | ||||
|      */ | ||||
|     static parseFloat(value: any): number { | ||||
|         return Number.parseFloat(value) || 0; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析字符串 | ||||
|      */ | ||||
|     static parseString(value: any): string { | ||||
|         return String(value || ''); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析字符串数组 | ||||
|      */ | ||||
|     static parseStringArray(value: any): string[] { | ||||
|         if (Array.isArray(value)) { | ||||
|             return value.map(item => String(item || '')); | ||||
|         } | ||||
|         if (typeof value === 'string') { | ||||
|             return value.split(',').map(item => item.trim()).filter(item => item.length > 0); | ||||
|         } | ||||
|         return []; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 解析数字数组 | ||||
|      */ | ||||
|     static parseNumberArray(value: any): number[] { | ||||
|         if (Array.isArray(value)) { | ||||
|             return value.map(item => Number.parseFloat(item) || 0); | ||||
|         } | ||||
|         if (typeof value === 'string') { | ||||
|             return value.split(',').map(item => Number.parseFloat(item.trim()) || 0); | ||||
|         } | ||||
|         return []; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 深度冻结对象,确保所有嵌套属性都不可修改 | ||||
|      */ | ||||
|     public static deepFreeze<T>(obj: T): T { | ||||
|         if (obj === null || typeof obj !== 'object') { | ||||
|             return obj; | ||||
|         } | ||||
|  | ||||
|         // 检查是否为 ArrayBuffer views 或其他不可冻结的对象 | ||||
|         if (ArrayBuffer.isView(obj) || obj instanceof ArrayBuffer) { | ||||
|             return obj; | ||||
|         } | ||||
|  | ||||
|         // 检查是否为 Date、RegExp 等内置对象 | ||||
|         if (obj instanceof Date || obj instanceof RegExp) { | ||||
|             return obj; | ||||
|         } | ||||
|  | ||||
|         try { | ||||
|             // 递归冻结所有属性(先冻结子对象) | ||||
|             Object.getOwnPropertyNames(obj).forEach(prop => { | ||||
|                 const value = (obj as any)[prop]; | ||||
|                 if (value !== null && typeof value === 'object') { | ||||
|                     this.deepFreeze(value); | ||||
|                 } | ||||
|             }); | ||||
|              | ||||
|             // 最后冻结对象本身 | ||||
|             Object.freeze(obj); | ||||
|              | ||||
|             // 对于数组,还需要防止索引赋值 | ||||
|             if (Array.isArray(obj)) { | ||||
|                 Object.seal(obj); | ||||
|             } | ||||
|         } catch (err) { | ||||
|             // 如果冻结失败,记录警告但不中断程序 | ||||
|             LogUtils.warn('ConfigParseUtils', '无法冻结对象:', obj, err); | ||||
|         } | ||||
|  | ||||
|         return obj; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 创建配置数据的只读代理,提供更好的错误提示 | ||||
|      */ | ||||
|     public static createReadonlyProxy<T extends object>(obj: T, configName: string = '配置数据'): T { | ||||
|         return new Proxy(obj, { | ||||
|             set(target, property, value) { | ||||
|                 const errorMsg = `❌ 禁止修改${configName}的属性 "${String(property)}"!配置数据在运行时应保持不可变。`; | ||||
|                 LogUtils.error('ConfigParseUtils', errorMsg); | ||||
|                 throw new Error(errorMsg); | ||||
|             }, | ||||
|             defineProperty(target, property, descriptor) { | ||||
|                 const errorMsg = `❌ 禁止定义${configName}的属性 "${String(property)}"!配置数据在运行时应保持不可变。`; | ||||
|                 LogUtils.error('ConfigParseUtils', errorMsg); | ||||
|                 throw new Error(errorMsg); | ||||
|             }, | ||||
|             deleteProperty(target, property) { | ||||
|                 const errorMsg = `❌ 禁止删除${configName}的属性 "${String(property)}"!配置数据在运行时应保持不可变。`; | ||||
|                 LogUtils.error('ConfigParseUtils', errorMsg); | ||||
|                 throw new Error(errorMsg); | ||||
|             } | ||||
|         }); | ||||
|     } | ||||
| } | ||||
|  | ||||
| // 导出便捷的解析函数 | ||||
| export const { parseVec2, parseVec3, parseVec4, parseColor, parseSize, parseRect, parseQuat, parseMat4, parseBoolean, parseInt, parseFloat, parseString, parseStringArray, parseNumberArray, deepFreeze, createReadonlyProxy } = ConfigParseUtils; | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/ConfigParseUtils.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "e6350dd1-e9ea-4a64-9823-a20c6bf82990", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										16
									
								
								assets/configs/generated/core/Enums.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,16 @@ | ||||
| /** | ||||
|  * 自动生成的枚举类型定义 | ||||
|  * 请勿手动修改此文件 | ||||
|  * 生成时间: 2025-10-13T13:51:42.230Z | ||||
|  */ | ||||
|  | ||||
| export enum DressSourceType { | ||||
|     /** 无 */ | ||||
|     NONE = 0, | ||||
|     /** 插槽 */ | ||||
|     SLOT = 1, | ||||
|     /** 挂点静态图 */ | ||||
|     SOCKET_TEX = 2, | ||||
|     /** 挂点动画 */ | ||||
|     SOCKET_SPINE = 3 | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/Enums.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "e46d8a30-83a4-4635-951a-84486ebeec96", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										166
									
								
								assets/configs/generated/core/PetConfigData.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,166 @@ | ||||
|  | ||||
|  | ||||
|  | ||||
| import { Color } from 'cc'; | ||||
|  | ||||
|  | ||||
|  | ||||
| import { ConfigParseUtils } from './ConfigParseUtils'; | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * PetConfig数据结构 | ||||
|  */ | ||||
| export class PetConfigData { | ||||
|  | ||||
|     private _id: number; | ||||
|  | ||||
|     private _key: string; | ||||
|  | ||||
|     private _bundle: string; | ||||
|  | ||||
|     private _path: string; | ||||
|  | ||||
|     private _name: string; | ||||
|  | ||||
|     private _color: Color; | ||||
|  | ||||
|     private _desc: string; | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** id */ | ||||
|  | ||||
|     public get id(): number { | ||||
|  | ||||
|         return this._id; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** key */ | ||||
|  | ||||
|     public get key(): string { | ||||
|  | ||||
|         return this._key; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** bundle */ | ||||
|  | ||||
|     public get bundle(): string { | ||||
|  | ||||
|         return this._bundle; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 资源路径 */ | ||||
|  | ||||
|     public get path(): string { | ||||
|  | ||||
|         return this._path; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 宠物名称 */ | ||||
|  | ||||
|     public get name(): string { | ||||
|  | ||||
|         return this._name; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 颜色 */ | ||||
|  | ||||
|     public get color(): Color { | ||||
|  | ||||
|         return ConfigParseUtils.createReadonlyProxy(ConfigParseUtils.deepFreeze(this._color), '颜色'); | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 描述 */ | ||||
|  | ||||
|     public get desc(): string { | ||||
|  | ||||
|         return this._desc; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|     public constructor( | ||||
|  | ||||
|         id: number, | ||||
|  | ||||
|         key: string, | ||||
|  | ||||
|         bundle: string, | ||||
|  | ||||
|         path: string, | ||||
|  | ||||
|         name: string, | ||||
|  | ||||
|         color: Color, | ||||
|  | ||||
|         desc: string | ||||
|  | ||||
|     ) { | ||||
|  | ||||
|         this._id = id; | ||||
|  | ||||
|         this._key = key; | ||||
|  | ||||
|         this._bundle = bundle; | ||||
|  | ||||
|         this._path = path; | ||||
|  | ||||
|         this._name = name; | ||||
|  | ||||
|         this._color = color; | ||||
|  | ||||
|         this._desc = desc; | ||||
|  | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * 解析配置数据 | ||||
|  */ | ||||
| export function parsePetConfigData(data: any): PetConfigData { | ||||
|     return new PetConfigData( | ||||
|  | ||||
|         ConfigParseUtils.parseInt(data.id), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.key), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.bundle), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.path), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.name), | ||||
|  | ||||
|         ConfigParseUtils.parseColor(data.color), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.desc) | ||||
|  | ||||
|     ); | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/PetConfigData.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "0b58225d-8d7f-429c-af23-1548e8acb583", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										88
									
								
								assets/configs/generated/core/PetConfigManager.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,88 @@ | ||||
| import { JsonAsset } from "cc"; | ||||
|  | ||||
| import { ResManager } from "@max-studio/core/res/ResManager"; | ||||
| import { singleton, Singleton } from "@max-studio/core/Singleton"; | ||||
| import LogUtils from "@max-studio/core/utils/LogUtils"; | ||||
|  | ||||
| import { ConfigParseUtils } from "./ConfigParseUtils"; | ||||
| import { PetConfigData, parsePetConfigData } from "./PetConfigData"; | ||||
|  | ||||
| /** | ||||
|  * PetConfig配置管理器 | ||||
|  * | ||||
|  * ⚠️ 此文件由配置表生成器自动生成,请勿手动修改! | ||||
|  * 如需修改,请编辑对应的Excel配置文件,然后重新生成 | ||||
|  */ | ||||
| @singleton() | ||||
| export class PetConfigManager extends Singleton { | ||||
|     private configList: readonly PetConfigData[] = []; | ||||
|     private configMap = new Map<number, PetConfigData>(); | ||||
|     private isLoaded = false; | ||||
|  | ||||
|     protected async onInit(): Promise<void> { | ||||
|         await this.loadConfig(); | ||||
|     } | ||||
|  | ||||
|     private async loadConfig(): Promise<void> { | ||||
|         try { | ||||
|             const asset = await ResManager.getInstance().loadAsset<JsonAsset>( | ||||
|                 "generated/data/PetConfig", | ||||
|                 JsonAsset, | ||||
|                 "configs", | ||||
|             ); | ||||
|             this.parseConfig(<any>asset.json); | ||||
|             this.isLoaded = true; | ||||
|         } catch (err) { | ||||
|             LogUtils.error( | ||||
|                 "PetConfigManager", | ||||
|                 "加载  PetConfig  配置失败:", | ||||
|                 err, | ||||
|             ); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private parseConfig(data: any[]): void { | ||||
|         this.configList = Object.freeze( | ||||
|             data.map((item) => { | ||||
|                 const config = parsePetConfigData(item); | ||||
|                 const frozenConfig = ConfigParseUtils.deepFreeze(config); | ||||
|                 return ConfigParseUtils.createReadonlyProxy( | ||||
|                     frozenConfig, | ||||
|                     "PetConfigData配置", | ||||
|                 ); | ||||
|             }), | ||||
|         ); | ||||
|         this.configMap.clear(); | ||||
|         for (const config of this.configList) { | ||||
|             this.configMap.set(config.id, config); | ||||
|         } | ||||
|         // 深度冻结配置映射,防止运行时修改 | ||||
|         ConfigParseUtils.deepFreeze(this.configMap); | ||||
|     } | ||||
|  | ||||
|     public getConfig(id: number): PetConfigData | null { | ||||
|         if (!this.isLoaded) { | ||||
|             LogUtils.warn( | ||||
|                 "PetConfigManager", | ||||
|                 "PetConfig 配置尚未加载完成,请等待加载完成", | ||||
|             ); | ||||
|             return null; | ||||
|         } | ||||
|         return this.configMap.get(id) || null; | ||||
|     } | ||||
|  | ||||
|     public getAllConfigs(): PetConfigData[] { | ||||
|         if (!this.isLoaded) { | ||||
|             LogUtils.warn( | ||||
|                 "PetConfigManager", | ||||
|                 "PetConfig 配置尚未加载完成,请等待加载完成", | ||||
|             ); | ||||
|             return []; | ||||
|         } | ||||
|         return [...this.configList]; | ||||
|     } | ||||
|  | ||||
|     public isConfigLoaded(): boolean { | ||||
|         return this.isLoaded; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/PetConfigManager.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "a2093a8e-f81a-4bf2-a7a8-6bb20c02484c", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										130
									
								
								assets/configs/generated/core/PetPartConfigData.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,130 @@ | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| import { ConfigParseUtils } from './ConfigParseUtils'; | ||||
|  | ||||
|  | ||||
|  | ||||
| import { DressSourceType } from './Enums'; | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * PetPartConfig数据结构 | ||||
|  */ | ||||
| export class PetPartConfigData { | ||||
|  | ||||
|     private _id: number; | ||||
|  | ||||
|     private _name: string; | ||||
|  | ||||
|     private _bundle: string; | ||||
|  | ||||
|     private _path: string; | ||||
|  | ||||
|     private _sourceType: DressSourceType; | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** id */ | ||||
|  | ||||
|     public get id(): number { | ||||
|  | ||||
|         return this._id; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 装扮名称 */ | ||||
|  | ||||
|     public get name(): string { | ||||
|  | ||||
|         return this._name; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** bundle */ | ||||
|  | ||||
|     public get bundle(): string { | ||||
|  | ||||
|         return this._bundle; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 资源路径 */ | ||||
|  | ||||
|     public get path(): string { | ||||
|  | ||||
|         return this._path; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** 资源类型 */ | ||||
|  | ||||
|     public get sourceType(): DressSourceType { | ||||
|  | ||||
|         return this._sourceType; | ||||
|  | ||||
|     } | ||||
|  | ||||
|  | ||||
|     public constructor( | ||||
|  | ||||
|         id: number, | ||||
|  | ||||
|         name: string, | ||||
|  | ||||
|         bundle: string, | ||||
|  | ||||
|         path: string, | ||||
|  | ||||
|         sourceType: DressSourceType | ||||
|  | ||||
|     ) { | ||||
|  | ||||
|         this._id = id; | ||||
|  | ||||
|         this._name = name; | ||||
|  | ||||
|         this._bundle = bundle; | ||||
|  | ||||
|         this._path = path; | ||||
|  | ||||
|         this._sourceType = sourceType; | ||||
|  | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * 解析配置数据 | ||||
|  */ | ||||
| export function parsePetPartConfigData(data: any): PetPartConfigData { | ||||
|     return new PetPartConfigData( | ||||
|  | ||||
|         ConfigParseUtils.parseInt(data.id), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.name), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.bundle), | ||||
|  | ||||
|         ConfigParseUtils.parseString(data.path), | ||||
|  | ||||
|         data.sourceType as DressSourceType | ||||
|  | ||||
|     ); | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/configs/generated/core/PetPartConfigData.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "eb6f0ae1-9c7b-4d26-a8b1-b96d2e65631f", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										88
									
								
								assets/configs/generated/core/PetPartConfigManager.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,88 @@ | ||||
| import { JsonAsset } from "cc"; | ||||
|  | ||||
| import { ResManager } from "@max-studio/core/res/ResManager"; | ||||
| import { singleton, Singleton } from "@max-studio/core/Singleton"; | ||||
| import LogUtils from "@max-studio/core/utils/LogUtils"; | ||||
|  | ||||
| import { ConfigParseUtils } from "./ConfigParseUtils"; | ||||
| import { PetPartConfigData, parsePetPartConfigData } from "./PetPartConfigData"; | ||||
|  | ||||
| /** | ||||
|  * PetPartConfig配置管理器 | ||||
|  * | ||||
|  * ⚠️ 此文件由配置表生成器自动生成,请勿手动修改! | ||||
|  * 如需修改,请编辑对应的Excel配置文件,然后重新生成 | ||||
|  */ | ||||
| @singleton() | ||||
| export class PetPartConfigManager extends Singleton { | ||||
|     private configList: readonly PetPartConfigData[] = []; | ||||
|     private configMap = new Map<number, PetPartConfigData>(); | ||||
|     private isLoaded = false; | ||||
|  | ||||
|     protected async onInit(): Promise<void> { | ||||
|         await this.loadConfig(); | ||||
|     } | ||||
|  | ||||
|     private async loadConfig(): Promise<void> { | ||||
|         try { | ||||
|             const asset = await ResManager.getInstance().loadAsset<JsonAsset>( | ||||
|                 "generated/data/PetPartConfig", | ||||
|                 JsonAsset, | ||||
|                 "configs", | ||||
|             ); | ||||
|             this.parseConfig(<any>asset.json); | ||||
|             this.isLoaded = true; | ||||
|         } catch (err) { | ||||
|             LogUtils.error( | ||||
|                 "PetPartConfigManager", | ||||
|                 "加载  PetPartConfig  配置失败:", | ||||
|                 err, | ||||
|             ); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private parseConfig(data: any[]): void { | ||||
|         this.configList = Object.freeze( | ||||
|             data.map((item) => { | ||||
|                 const config = parsePetPartConfigData(item); | ||||
|                 const frozenConfig = ConfigParseUtils.deepFreeze(config); | ||||
|                 return ConfigParseUtils.createReadonlyProxy( | ||||
|                     frozenConfig, | ||||
|                     "PetPartConfigData配置", | ||||
|                 ); | ||||
|             }), | ||||
|         ); | ||||
|         this.configMap.clear(); | ||||
|         for (const config of this.configList) { | ||||
|             this.configMap.set(config.id, config); | ||||
|         } | ||||
|         // 深度冻结配置映射,防止运行时修改 | ||||
|         ConfigParseUtils.deepFreeze(this.configMap); | ||||
|     } | ||||
|  | ||||
|     public getConfig(id: number): PetPartConfigData | null { | ||||
|         if (!this.isLoaded) { | ||||
|             LogUtils.warn( | ||||
|                 "PetPartConfigManager", | ||||
|                 "PetPartConfig 配置尚未加载完成,请等待加载完成", | ||||
|             ); | ||||
|             return null; | ||||
|         } | ||||
|         return this.configMap.get(id) || null; | ||||
|     } | ||||
|  | ||||
|     public getAllConfigs(): PetPartConfigData[] { | ||||
|         if (!this.isLoaded) { | ||||
|             LogUtils.warn( | ||||
|                 "PetPartConfigManager", | ||||
|                 "PetPartConfig 配置尚未加载完成,请等待加载完成", | ||||
|             ); | ||||
|             return []; | ||||
|         } | ||||
|         return [...this.configList]; | ||||
|     } | ||||
|  | ||||
|     public isConfigLoaded(): boolean { | ||||
|         return this.isLoaded; | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "de6a1d46-109e-47ff-bb2a-f9b9f1241e30", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										11
									
								
								assets/configs/generated/data.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "b1244b32-aba4-4cbf-b889-ab355071147c", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "bundleName": "config-data" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										186
									
								
								assets/configs/generated/data/PetConfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,186 @@ | ||||
| [ | ||||
|   { | ||||
|     "id": 1001, | ||||
|     "key": "chenghuang", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "ChengHuang", | ||||
|     "color": "#00000000" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1002, | ||||
|     "key": "dangkang", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "DangKang", | ||||
|     "color": "#00000000" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1003, | ||||
|     "key": "shuoshu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "ShuoShu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1004, | ||||
|     "key": "jiuwei", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "JiuWei", | ||||
|     "name": "精卫" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1005, | ||||
|     "key": "qiongqi", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "QiongQi", | ||||
|     "name": "穷奇" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1006, | ||||
|     "key": "tiangou", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "TianGou" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1007, | ||||
|     "key": "xiangliu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "XiangLiu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1008, | ||||
|     "key": "lili", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "LiLi" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1009, | ||||
|     "key": "yugong", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "YuGong" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1010, | ||||
|     "key": "yutu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "YuTu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1011, | ||||
|     "key": "zhurong", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "ZhuRong" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1012, | ||||
|     "key": "changyou", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Changyou" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1013, | ||||
|     "key": "dijiang", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Dijiang" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1014, | ||||
|     "key": "jili", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Jili" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1015, | ||||
|     "key": "shusi", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Shusi" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1016, | ||||
|     "key": "wanv", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Wanv" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1017, | ||||
|     "key": "xuangui", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Xuangui" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1018, | ||||
|     "key": "yingyu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Yingyu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1019, | ||||
|     "key": "yunque", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "Yunque" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1020, | ||||
|     "key": "pangding", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "PangDing" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1021, | ||||
|     "key": "shanyuan", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "ShanYuan" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1022, | ||||
|     "key": "zhuyin", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "ZhuYin" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1023, | ||||
|     "key": "yingwu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "YingWu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1024, | ||||
|     "key": "linghu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "LingHu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1025, | ||||
|     "key": "bailuwang", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "BaiLuWang" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1026, | ||||
|     "key": "xuanwu", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "XuanWu" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1027, | ||||
|     "key": "fengyou", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "FengYou" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1028, | ||||
|     "key": "nianshou", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "NianShou" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1029, | ||||
|     "key": "fenghuang", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "FengHuang" | ||||
|   }, | ||||
|   { | ||||
|     "id": 1030, | ||||
|     "key": "touzishe", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "TouZiShe" | ||||
|   } | ||||
| ] | ||||
							
								
								
									
										11
									
								
								assets/configs/generated/data/PetConfig.json.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "2.0.1", | ||||
|   "importer": "json", | ||||
|   "imported": true, | ||||
|   "uuid": "8a6207a1-9fdc-4802-8675-7024480c1f31", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										399
									
								
								assets/configs/generated/data/PetPartConfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,399 @@ | ||||
| [ | ||||
|   { | ||||
|     "id": 20001, | ||||
|     "name": "舞狮套装", | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20002, | ||||
|     "name": "可爱熊套装", | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20003, | ||||
|     "name": "格格套装", | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20004, | ||||
|     "name": "关二爷套装", | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20501, | ||||
|     "name": "舞狮玲珑球", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_20501", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20502, | ||||
|     "name": "舞狮帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_20502", | ||||
|     "sourceType": "4" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20503, | ||||
|     "name": "无", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20504, | ||||
|     "name": "舞狮领带", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_20504", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20506, | ||||
|     "name": "可爱熊挎包", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_20506", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20507, | ||||
|     "name": "可爱熊头饰", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_20507", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20508, | ||||
|     "name": "可爱熊面饰", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_20508", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20509, | ||||
|     "name": "可爱熊围兜", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_20509", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20511, | ||||
|     "name": "关公盾牌", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_20511", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20512, | ||||
|     "name": "关公帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_20512", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20513, | ||||
|     "name": "关公眉毛", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_20513", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20514, | ||||
|     "name": "关公胡须", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_20514", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20515, | ||||
|     "name": "青龙刀", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "yanyuedao", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20516, | ||||
|     "name": "格格扇子", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_20516", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20517, | ||||
|     "name": "格格帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_20517", | ||||
|     "sourceType": "4" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20518, | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20519, | ||||
|     "name": "格格围巾", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_20519", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 20520, | ||||
|     "bundle": "pet-spine", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21001, | ||||
|     "name": "公文背包", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21002, | ||||
|     "name": "旅行背包(蓝)", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21001", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21003, | ||||
|     "name": "旅行背包(动画)", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21001", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21004, | ||||
|     "name": "睡眠抱枕", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21004", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21005, | ||||
|     "name": "手枪配饰", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21005", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21006, | ||||
|     "name": "游侠钱袋", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21006", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 21007, | ||||
|     "name": "熊猫挎包", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "bag_21007", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22001, | ||||
|     "name": "魔术帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22002, | ||||
|     "name": "魔术帽(变色)", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22001", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22003, | ||||
|     "name": "魔术帽(动画)", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22001", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22004, | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22001", | ||||
|     "sourceType": "2" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22005, | ||||
|     "name": "制服帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22006", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22006, | ||||
|     "name": "休闲帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22003", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 22007, | ||||
|     "name": "牛仔帽", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "hat_22007", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23001, | ||||
|     "name": "太阳镜(粉)", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23002, | ||||
|     "name": "简框眼镜", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23002", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23003, | ||||
|     "name": "墨镜", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23003", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23004, | ||||
|     "name": "圆框饰品", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23004", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23005, | ||||
|     "name": "爱心镜框", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23005", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23006, | ||||
|     "name": "竹子墨镜", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23006", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23007, | ||||
|     "name": "睡眠面罩", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23007", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23008, | ||||
|     "name": "搞怪眼镜", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23008", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23009, | ||||
|     "name": "游侠眼饰", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23009", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23010, | ||||
|     "name": "爱心镜框2", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23005", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23011, | ||||
|     "name": "墨镜2", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23003", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 23012, | ||||
|     "name": "粉色眼镜2", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "eye_23001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24001, | ||||
|     "name": "粉蝴蝶结", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24001", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24002, | ||||
|     "name": "紫蝴蝶结", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24002", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24003, | ||||
|     "name": "制服领结", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24004", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24004, | ||||
|     "name": "熊猫领结", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24003", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24005, | ||||
|     "name": "制服领带", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24005", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24006, | ||||
|     "name": "金项链", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24006", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 24007, | ||||
|     "name": "牛仔围巾", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tie_24007", | ||||
|     "sourceType": "1" | ||||
|   }, | ||||
|   { | ||||
|     "id": 25001, | ||||
|     "name": "闪闪糖葫芦", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "tanghulu", | ||||
|     "sourceType": "0" | ||||
|   }, | ||||
|   { | ||||
|     "id": 25002, | ||||
|     "name": "青龙刀", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "yanyuedao", | ||||
|     "sourceType": "3" | ||||
|   }, | ||||
|   { | ||||
|     "id": 25003, | ||||
|     "name": "爱心信件", | ||||
|     "bundle": "pet-spine", | ||||
|     "path": "qingshu", | ||||
|     "sourceType": "0" | ||||
|   } | ||||
| ] | ||||
							
								
								
									
										11
									
								
								assets/configs/generated/data/PetPartConfig.json.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "2.0.1", | ||||
|   "importer": "json", | ||||
|   "imported": true, | ||||
|   "uuid": "2dfc8295-5211-42cf-85cb-64addd429a7e", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										11
									
								
								assets/games.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "b3e5cd5c-89d0-4df6-a9f7-9d33026a7c02", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "isBundle": true | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/atlas.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "36f0951d-0b77-4728-bebc-c8192f0c8185", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/atlas/rewards.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "1f979c16-7cc3-4786-b607-b82b0591dcc9", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_ax.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 25 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_ax.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "a562f181-3b53-4777-802d-5dce3b1cac21", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "a562f181-3b53-4777-802d-5dce3b1cac21@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_ax", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "a562f181-3b53-4777-802d-5dce3b1cac21", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "a562f181-3b53-4777-802d-5dce3b1cac21@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_ax", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 216, | ||||
|         "height": 211, | ||||
|         "rawWidth": 216, | ||||
|         "rawHeight": 211, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -108, | ||||
|             -105.5, | ||||
|             0, | ||||
|             108, | ||||
|             -105.5, | ||||
|             0, | ||||
|             -108, | ||||
|             105.5, | ||||
|             0, | ||||
|             108, | ||||
|             105.5, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             211, | ||||
|             216, | ||||
|             211, | ||||
|             0, | ||||
|             0, | ||||
|             216, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -108, | ||||
|             -105.5, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             108, | ||||
|             105.5, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "a562f181-3b53-4777-802d-5dce3b1cac21@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "a562f181-3b53-4777-802d-5dce3b1cac21@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_book.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 26 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_book.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "fb18880a-860d-4b65-a202-b5f628d89b13", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "fb18880a-860d-4b65-a202-b5f628d89b13@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_book", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "fb18880a-860d-4b65-a202-b5f628d89b13", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "fb18880a-860d-4b65-a202-b5f628d89b13@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_book", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 215, | ||||
|         "height": 209, | ||||
|         "rawWidth": 215, | ||||
|         "rawHeight": 209, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -107.5, | ||||
|             -104.5, | ||||
|             0, | ||||
|             107.5, | ||||
|             -104.5, | ||||
|             0, | ||||
|             -107.5, | ||||
|             104.5, | ||||
|             0, | ||||
|             107.5, | ||||
|             104.5, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             209, | ||||
|             215, | ||||
|             209, | ||||
|             0, | ||||
|             0, | ||||
|             215, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -107.5, | ||||
|             -104.5, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             107.5, | ||||
|             104.5, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "fb18880a-860d-4b65-a202-b5f628d89b13@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "fb18880a-860d-4b65-a202-b5f628d89b13@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_clover.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 31 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_clover.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "ccee92f9-8e71-4d88-b335-48eb76c53172", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "ccee92f9-8e71-4d88-b335-48eb76c53172@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_clover", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "ccee92f9-8e71-4d88-b335-48eb76c53172", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "ccee92f9-8e71-4d88-b335-48eb76c53172@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_clover", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 191, | ||||
|         "height": 210, | ||||
|         "rawWidth": 191, | ||||
|         "rawHeight": 210, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -95.5, | ||||
|             -105, | ||||
|             0, | ||||
|             95.5, | ||||
|             -105, | ||||
|             0, | ||||
|             -95.5, | ||||
|             105, | ||||
|             0, | ||||
|             95.5, | ||||
|             105, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             210, | ||||
|             191, | ||||
|             210, | ||||
|             0, | ||||
|             0, | ||||
|             191, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -95.5, | ||||
|             -105, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             95.5, | ||||
|             105, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "ccee92f9-8e71-4d88-b335-48eb76c53172@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "ccee92f9-8e71-4d88-b335-48eb76c53172@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_gem.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 19 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_gem.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_gem", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_gem", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 247, | ||||
|         "height": 196, | ||||
|         "rawWidth": 247, | ||||
|         "rawHeight": 196, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -123.5, | ||||
|             -98, | ||||
|             0, | ||||
|             123.5, | ||||
|             -98, | ||||
|             0, | ||||
|             -123.5, | ||||
|             98, | ||||
|             0, | ||||
|             123.5, | ||||
|             98, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             196, | ||||
|             247, | ||||
|             196, | ||||
|             0, | ||||
|             0, | ||||
|             247, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -123.5, | ||||
|             -98, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             123.5, | ||||
|             98, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "7691c8f3-3ca8-4a3b-882a-dfc7b2402ef7@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_glove.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 23 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_glove.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "7c4eee6e-2941-493b-a0ee-772463486f39", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "7c4eee6e-2941-493b-a0ee-772463486f39@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_glove", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "7c4eee6e-2941-493b-a0ee-772463486f39", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "7c4eee6e-2941-493b-a0ee-772463486f39@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_glove", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 196, | ||||
|         "height": 195, | ||||
|         "rawWidth": 196, | ||||
|         "rawHeight": 195, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -98, | ||||
|             -97.5, | ||||
|             0, | ||||
|             98, | ||||
|             -97.5, | ||||
|             0, | ||||
|             -98, | ||||
|             97.5, | ||||
|             0, | ||||
|             98, | ||||
|             97.5, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             195, | ||||
|             196, | ||||
|             195, | ||||
|             0, | ||||
|             0, | ||||
|             196, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -98, | ||||
|             -97.5, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             98, | ||||
|             97.5, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "7c4eee6e-2941-493b-a0ee-772463486f39@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "7c4eee6e-2941-493b-a0ee-772463486f39@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_gold.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 21 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_gold.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "b8625559-dd62-4c66-96aa-abcc7a69f567", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "b8625559-dd62-4c66-96aa-abcc7a69f567@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_gold", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "b8625559-dd62-4c66-96aa-abcc7a69f567", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "b8625559-dd62-4c66-96aa-abcc7a69f567@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_gold", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 256, | ||||
|         "height": 189, | ||||
|         "rawWidth": 256, | ||||
|         "rawHeight": 189, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -128, | ||||
|             -94.5, | ||||
|             0, | ||||
|             128, | ||||
|             -94.5, | ||||
|             0, | ||||
|             -128, | ||||
|             94.5, | ||||
|             0, | ||||
|             128, | ||||
|             94.5, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             189, | ||||
|             256, | ||||
|             189, | ||||
|             0, | ||||
|             0, | ||||
|             256, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -128, | ||||
|             -94.5, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             128, | ||||
|             94.5, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "b8625559-dd62-4c66-96aa-abcc7a69f567@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "b8625559-dd62-4c66-96aa-abcc7a69f567@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_rune.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 22 KiB | 
							
								
								
									
										134
									
								
								assets/games/atlas/rewards/Icon_Reward_Pass_rune.png.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,134 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "8188705e-b03f-4224-944c-aa443ba8e198", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "8188705e-b03f-4224-944c-aa443ba8e198@6c48a", | ||||
|       "displayName": "Icon_Reward_Pass_rune", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "clamp-to-edge", | ||||
|         "wrapModeT": "clamp-to-edge", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "8188705e-b03f-4224-944c-aa443ba8e198", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "f9941": { | ||||
|       "importer": "sprite-frame", | ||||
|       "uuid": "8188705e-b03f-4224-944c-aa443ba8e198@f9941", | ||||
|       "displayName": "Icon_Reward_Pass_rune", | ||||
|       "id": "f9941", | ||||
|       "name": "spriteFrame", | ||||
|       "userData": { | ||||
|         "trimThreshold": 1, | ||||
|         "rotated": false, | ||||
|         "offsetX": 0, | ||||
|         "offsetY": 0, | ||||
|         "trimX": 0, | ||||
|         "trimY": 0, | ||||
|         "width": 217, | ||||
|         "height": 213, | ||||
|         "rawWidth": 217, | ||||
|         "rawHeight": 213, | ||||
|         "borderTop": 0, | ||||
|         "borderBottom": 0, | ||||
|         "borderLeft": 0, | ||||
|         "borderRight": 0, | ||||
|         "packable": true, | ||||
|         "pixelsToUnit": 100, | ||||
|         "pivotX": 0.5, | ||||
|         "pivotY": 0.5, | ||||
|         "meshType": 0, | ||||
|         "vertices": { | ||||
|           "rawPosition": [ | ||||
|             -108.5, | ||||
|             -106.5, | ||||
|             0, | ||||
|             108.5, | ||||
|             -106.5, | ||||
|             0, | ||||
|             -108.5, | ||||
|             106.5, | ||||
|             0, | ||||
|             108.5, | ||||
|             106.5, | ||||
|             0 | ||||
|           ], | ||||
|           "indexes": [ | ||||
|             0, | ||||
|             1, | ||||
|             2, | ||||
|             2, | ||||
|             1, | ||||
|             3 | ||||
|           ], | ||||
|           "uv": [ | ||||
|             0, | ||||
|             213, | ||||
|             217, | ||||
|             213, | ||||
|             0, | ||||
|             0, | ||||
|             217, | ||||
|             0 | ||||
|           ], | ||||
|           "nuv": [ | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             0, | ||||
|             0, | ||||
|             1, | ||||
|             1, | ||||
|             1 | ||||
|           ], | ||||
|           "minPos": [ | ||||
|             -108.5, | ||||
|             -106.5, | ||||
|             0 | ||||
|           ], | ||||
|           "maxPos": [ | ||||
|             108.5, | ||||
|             106.5, | ||||
|             0 | ||||
|           ] | ||||
|         }, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "8188705e-b03f-4224-944c-aa443ba8e198@6c48a", | ||||
|         "atlasUuid": "", | ||||
|         "trimType": "auto" | ||||
|       }, | ||||
|       "ver": "1.0.12", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "sprite-frame", | ||||
|     "hasAlpha": true, | ||||
|     "fixAlphaTransparencyArtifacts": false, | ||||
|     "redirect": "8188705e-b03f-4224-944c-aa443ba8e198@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										3
									
								
								assets/games/atlas/rewards/auto-atlas.pac
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,3 @@ | ||||
| { | ||||
|     "__type__": "cc.SpriteAtlas" | ||||
| } | ||||
							
								
								
									
										36
									
								
								assets/games/atlas/rewards/auto-atlas.pac.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | ||||
| { | ||||
|   "ver": "1.0.8", | ||||
|   "importer": "auto-atlas", | ||||
|   "imported": true, | ||||
|   "uuid": "35330028-a50f-4ff1-ba32-5a0e04e3bbf2", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "maxWidth": 1024, | ||||
|     "maxHeight": 1024, | ||||
|     "padding": 2, | ||||
|     "allowRotation": true, | ||||
|     "forceSquared": false, | ||||
|     "powerOfTwo": false, | ||||
|     "algorithm": "MaxRects", | ||||
|     "format": "png", | ||||
|     "quality": 80, | ||||
|     "contourBleed": true, | ||||
|     "paddingBleed": true, | ||||
|     "filterUnused": false, | ||||
|     "removeTextureInBundle": false, | ||||
|     "removeImageInBundle": false, | ||||
|     "removeSpriteAtlasInBundle": false, | ||||
|     "compressSettings": {}, | ||||
|     "textureSetting": { | ||||
|       "wrapModeS": "repeat", | ||||
|       "wrapModeT": "repeat", | ||||
|       "minfilter": "linear", | ||||
|       "magfilter": "linear", | ||||
|       "mipfilter": "none", | ||||
|       "anisotropy": 0 | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/prefabs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "a49f7c60-2ec3-427a-8219-ae3f0886182d", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/prefabs/currency.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "95d180a6-c186-4180-b0fe-29815b9b8b7c", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										1942
									
								
								assets/games/prefabs/currency/CurrencyContainer.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										13
									
								
								assets/games/prefabs/currency/CurrencyContainer.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "60f72a13-68d6-4351-97aa-e8318e375dda", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "CurrencyContainer" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										632
									
								
								assets/games/prefabs/currency/CurrencyItem.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,632 @@ | ||||
| [ | ||||
|   { | ||||
|     "__type__": "cc.Prefab", | ||||
|     "_name": "CurrencyItem", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_native": "", | ||||
|     "data": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "optimizationPolicy": 0, | ||||
|     "persistent": false | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "CurrencyItem", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": null, | ||||
|     "_children": [ | ||||
|       { | ||||
|         "__id__": 2 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 8 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 14 | ||||
|       } | ||||
|     ], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 20 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 22 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 24 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 26 | ||||
|     }, | ||||
|     "_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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "AddBtn", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 3 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 5 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 7 | ||||
|     }, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": -47.279998779296875, | ||||
|       "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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 4 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 49, | ||||
|       "height": 53 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "a2GgxdOy5KS7fwb8O+MJyL" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Sprite", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 6 | ||||
|     }, | ||||
|     "_customMaterial": null, | ||||
|     "_srcBlendFactor": 2, | ||||
|     "_dstBlendFactor": 4, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 255, | ||||
|       "b": 255, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_spriteFrame": { | ||||
|       "__uuid__": "8056567a-7bb5-4d3e-b5f1-df94774d273d@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": "9dfTYmKOZASbUwU1XtzELz" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "7epLlueXRLJJ0LsZ991hOv", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null, | ||||
|     "nestedPrefabInstanceRoots": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "ValueLabel", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 9 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 11 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 13 | ||||
|     }, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 10, | ||||
|       "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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 8 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 10 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 46.55999755859375, | ||||
|       "height": 50.4 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "09wKAKnbBB+5lZqBGPJIvn" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Label", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 8 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 12 | ||||
|     }, | ||||
|     "_customMaterial": null, | ||||
|     "_srcBlendFactor": 2, | ||||
|     "_dstBlendFactor": 4, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 255, | ||||
|       "b": 255, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_string": "20", | ||||
|     "_horizontalAlign": 1, | ||||
|     "_verticalAlign": 1, | ||||
|     "_actualFontSize": 40, | ||||
|     "_fontSize": 40, | ||||
|     "_fontFamily": "Arial", | ||||
|     "_lineHeight": 40, | ||||
|     "_overflow": 0, | ||||
|     "_enableWrapText": true, | ||||
|     "_font": { | ||||
|       "__uuid__": "1e4ba4a2-7090-4e7b-8479-72285e08cdeb", | ||||
|       "__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": "44zvc167VCRKo7OrwxzXs0" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "1djLQFnGBH/bp9kcIVVJtl", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null, | ||||
|     "nestedPrefabInstanceRoots": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "Icon", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 15 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 17 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 19 | ||||
|     }, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 75, | ||||
|       "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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 14 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 16 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 68, | ||||
|       "height": 91 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "61L4FvqltGmJkxCozXtvXb" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Sprite", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 14 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 18 | ||||
|     }, | ||||
|     "_customMaterial": null, | ||||
|     "_srcBlendFactor": 2, | ||||
|     "_dstBlendFactor": 4, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 255, | ||||
|       "b": 255, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_spriteFrame": { | ||||
|       "__uuid__": "d4766020-e395-41f8-96d1-605e73caecc8@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": "67KlomGiZGkoxxMddz6UMZ" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "83DdlgppxDqZ9HTy1Ld1x+", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null, | ||||
|     "nestedPrefabInstanceRoots": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 21 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 163.55999755859375, | ||||
|       "height": 64 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "3dtCsSiNNH9I7OHE0LXe8z" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Sprite", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 23 | ||||
|     }, | ||||
|     "_customMaterial": null, | ||||
|     "_srcBlendFactor": 2, | ||||
|     "_dstBlendFactor": 4, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 4, | ||||
|       "g": 33, | ||||
|       "b": 30, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_spriteFrame": { | ||||
|       "__uuid__": "edc626d3-77ee-4880-b707-da79f9dd6d97@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": "9a33L6+C1ITahVCBb3AYxx" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Layout", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 25 | ||||
|     }, | ||||
|     "_resizeMode": 1, | ||||
|     "_layoutType": 1, | ||||
|     "_cellSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 40, | ||||
|       "height": 40 | ||||
|     }, | ||||
|     "_startAxis": 0, | ||||
|     "_paddingLeft": 10, | ||||
|     "_paddingRight": -50, | ||||
|     "_paddingTop": 0, | ||||
|     "_paddingBottom": 0, | ||||
|     "_spacingX": 20, | ||||
|     "_spacingY": 0, | ||||
|     "_verticalDirection": 1, | ||||
|     "_horizontalDirection": 0, | ||||
|     "_constraint": 0, | ||||
|     "_constraintNum": 2, | ||||
|     "_affectedByScale": false, | ||||
|     "_isAlign": false, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "d3QJZHxpBK0bRpdCfcnjsv" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "21S4TQDzROJK1npIOgoF+m", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null | ||||
|   } | ||||
| ] | ||||
							
								
								
									
										13
									
								
								assets/games/prefabs/currency/CurrencyItem.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "334b6dda-3905-424e-bea3-5c56d3c51efe", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "CurrencyItem" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/prefabs/redDot.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "6e6fdb82-af61-4574-bae8-f29c78b8eb4d", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/prefabs/uis.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "a2524a27-9d0d-465c-a1bd-01b4229c3ef1", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										2477
									
								
								assets/games/prefabs/uis/CommonDialogBox.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										13
									
								
								assets/games/prefabs/uis/CommonDialogBox.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "b7a6cbd2-b13b-4eb9-9608-3d53c816315a", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "CommonDialogBox" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										486
									
								
								assets/games/prefabs/uis/CommonToast.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,486 @@ | ||||
| [ | ||||
|   { | ||||
|     "__type__": "cc.Prefab", | ||||
|     "_name": "CommonToast", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_native": "", | ||||
|     "data": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "optimizationPolicy": 0, | ||||
|     "persistent": false | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "CommonToast", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": null, | ||||
|     "_children": [ | ||||
|       { | ||||
|         "__id__": 2 | ||||
|       } | ||||
|     ], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 16 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 18 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 20 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 22 | ||||
|     }, | ||||
|     "_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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "Container", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [ | ||||
|       { | ||||
|         "__id__": 3 | ||||
|       } | ||||
|     ], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 9 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 11 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 13 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 15 | ||||
|     }, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 930, | ||||
|       "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": 33554432, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "Content", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 4 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 6 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": { | ||||
|       "__id__": 8 | ||||
|     }, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": -73, | ||||
|       "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": 33554432, | ||||
|     "_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": 2460, | ||||
|       "height": 66.78 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "78F/C0LzlIZprU8L6fH1uZ" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.RichText", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 3 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 7 | ||||
|     }, | ||||
|     "_lineHeight": 53, | ||||
|     "_string": "", | ||||
|     "_horizontalAlign": 1, | ||||
|     "_verticalAlign": 1, | ||||
|     "_fontSize": 53, | ||||
|     "_fontColor": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 255, | ||||
|       "b": 255, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_maxWidth": 2460, | ||||
|     "_fontFamily": "Arial", | ||||
|     "_font": { | ||||
|       "__uuid__": "1e4ba4a2-7090-4e7b-8479-72285e08cdeb", | ||||
|       "__expectedType__": "cc.TTFFont" | ||||
|     }, | ||||
|     "_isSystemFontUsed": false, | ||||
|     "_userDefinedFont": { | ||||
|       "__uuid__": "1e4ba4a2-7090-4e7b-8479-72285e08cdeb", | ||||
|       "__expectedType__": "cc.TTFFont" | ||||
|     }, | ||||
|     "_cacheMode": 0, | ||||
|     "_imageAtlas": { | ||||
|       "__uuid__": "35330028-a50f-4ff1-ba32-5a0e04e3bbf2", | ||||
|       "__expectedType__": "cc.SpriteAtlas" | ||||
|     }, | ||||
|     "_handleTouchEvent": false, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "c309HMP+5FiLw2COQEShKP" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "95YqJo5jVJmKTQCV9sNJ8Q", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null, | ||||
|     "nestedPrefabInstanceRoots": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 10 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 2560, | ||||
|       "height": 183 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 1 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "6bie7ttBVMh60blIUo01g6" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Widget", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 12 | ||||
|     }, | ||||
|     "_alignFlags": 40, | ||||
|     "_target": null, | ||||
|     "_left": 0, | ||||
|     "_right": 0, | ||||
|     "_top": -210, | ||||
|     "_bottom": 0, | ||||
|     "_horizontalCenter": 0, | ||||
|     "_verticalCenter": 0, | ||||
|     "_isAbsLeft": true, | ||||
|     "_isAbsRight": false, | ||||
|     "_isAbsTop": true, | ||||
|     "_isAbsBottom": true, | ||||
|     "_isAbsHorizontalCenter": true, | ||||
|     "_isAbsVerticalCenter": true, | ||||
|     "_originalWidth": 100, | ||||
|     "_originalHeight": 0, | ||||
|     "_alignMode": 2, | ||||
|     "_lockFlags": 0, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "c8KBjUN7hMC69oIfCgH/Eb" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Sprite", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 14 | ||||
|     }, | ||||
|     "_customMaterial": null, | ||||
|     "_srcBlendFactor": 2, | ||||
|     "_dstBlendFactor": 4, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 255, | ||||
|       "b": 255, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_spriteFrame": { | ||||
|       "__uuid__": "536e0b99-f1b2-4e59-ab32-8c4e67fbbf4d@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": "d4FnpitvxIcbRI9Nl01P7E" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "6fL3o6XlpH97wbcQQkpg3Z", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null, | ||||
|     "nestedPrefabInstanceRoots": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.UITransform", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 17 | ||||
|     }, | ||||
|     "_contentSize": { | ||||
|       "__type__": "cc.Size", | ||||
|       "width": 2560, | ||||
|       "height": 1440 | ||||
|     }, | ||||
|     "_anchorPoint": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 0.5, | ||||
|       "y": 0.5 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "71asNAIwtAZq4DKjJ3k5YZ" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Widget", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 19 | ||||
|     }, | ||||
|     "_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": "edAc3cfJNCQJd0XDh0poPz" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "3c532HQfoBBi78q+sTYBpzr", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": { | ||||
|       "__id__": 21 | ||||
|     }, | ||||
|     "contentLabel": { | ||||
|       "__id__": 6 | ||||
|     }, | ||||
|     "containerNode": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_id": "" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.CompPrefabInfo", | ||||
|     "fileId": "81f1XJM0JOWb0fH0GVh+PM" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "asset": { | ||||
|       "__id__": 0 | ||||
|     }, | ||||
|     "fileId": "", | ||||
|     "instance": null, | ||||
|     "targetOverrides": [] | ||||
|   } | ||||
| ] | ||||
							
								
								
									
										13
									
								
								assets/games/prefabs/uis/CommonToast.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "f3d8831c-1525-4b2c-84b3-8f7d1910095f", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "CommonToast" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										10567
									
								
								assets/games/prefabs/uis/MainUI.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										13
									
								
								assets/games/prefabs/uis/MainUI.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "f5d33adb-6500-4a57-a4f7-e887749e98cd", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "MainUI" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										2636
									
								
								assets/games/prefabs/uis/ShopUI.prefab
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										13
									
								
								assets/games/prefabs/uis/ShopUI.prefab.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "prefab", | ||||
|   "imported": true, | ||||
|   "uuid": "be15b5af-c87d-4d9a-9faa-954318e815a6", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "syncNodeName": "ShopUI" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "e530c886-01d1-4780-a154-940c11ebc245", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/currency.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "99123257-14dc-48cf-a23c-a1155cd6dd44", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										64
									
								
								assets/games/scripts/currency/CurrencyManager.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,64 @@ | ||||
| import { _decorator } from "cc"; | ||||
|  | ||||
| import { EventManager } from "@max-studio/core/event/EventManager"; | ||||
| import { Singleton } from "@max-studio/core/Singleton"; | ||||
| import LogUtils from "@max-studio/core/utils/LogUtils"; | ||||
|  | ||||
| import { CurrencyEventMessage, CurrencyType } from "./Types"; | ||||
|  | ||||
| const { ccclass, property } = _decorator; | ||||
|  | ||||
| @ccclass("CurrencyManager") | ||||
| export class CurrencyManager extends Singleton { | ||||
|     private currencyValues: Record<CurrencyType, number> = {} as Record<CurrencyType, number>; | ||||
|  | ||||
|     /** 获取货币值 */ | ||||
|     public getCurrencyValue(type: CurrencyType): number { | ||||
|         return this.currencyValues[type] || 0; | ||||
|     } | ||||
|  | ||||
|     /** 设置货币值 */ | ||||
|     public setCurrencyValue(type: CurrencyType, value: number, isNotify: boolean = true) { | ||||
|         this.currencyValues[type] = value; | ||||
|         if (isNotify) { | ||||
|             EventManager.getInstance().emit(CurrencyEventMessage.CURRENCY_VALUE_CHANGED, type, value); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** 格式化货币显示 */ | ||||
|     public formatCurrencyDisplay(type: CurrencyType, value?: number): string { | ||||
|         const amount = value ?? this.getCurrencyValue(type); | ||||
|  | ||||
|         // 根据货币类型返回不同的格式 | ||||
|         if (amount >= 1000000) { | ||||
|             return `${(amount / 1000000).toFixed(1)}M`; | ||||
|         } else if (amount >= 1000) { | ||||
|             return `${(amount / 1000).toFixed(1)}K`; | ||||
|         } | ||||
|  | ||||
|         return amount.toString(); | ||||
|     } | ||||
|  | ||||
|     /** 检查货币是否足够 */ | ||||
|     public isCurrencyEnough(type: CurrencyType, amount: number): boolean { | ||||
|         return this.getCurrencyValue(type) >= amount; | ||||
|     } | ||||
|  | ||||
|     /** 消耗货币 */ | ||||
|     public consumeCurrency(type: CurrencyType, amount: number, isNotify: boolean = true): boolean { | ||||
|         if (amount <= 0) { | ||||
|             LogUtils.warn(`[CurrencyManager] 消耗货币数量必须大于0: ${amount}`); | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         if (!this.isCurrencyEnough(type, amount)) { | ||||
|             LogUtils.warn(`[CurrencyManager] 货币不足: ${type}, 需要: ${amount}, 当前: ${this.getCurrencyValue(type)}`); | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         const currentValue = this.getCurrencyValue(type); | ||||
|         const newValue = currentValue - amount; | ||||
|         this.setCurrencyValue(type, newValue, isNotify); | ||||
|         return true; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/currency/CurrencyManager.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "0474457b-c003-444f-b68b-9279920ba444", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/currency/Types.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| export enum CurrencyType { | ||||
|     ENERGY = "energy", | ||||
|     GEM = "gem", | ||||
|     GOLD = "gold", | ||||
| } | ||||
|  | ||||
| export enum CurrencyEventMessage { | ||||
|     CURRENCY_VALUE_CHANGED = 'currency_value_changed', | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/currency/Types.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "4eb1626b-f4b8-4566-b197-30c135c7e3a8", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/currency/components.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "ea4b3885-21a2-4076-8162-00bd5ee2c090", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										46
									
								
								assets/games/scripts/currency/components/CurrencyItem.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,46 @@ | ||||
| import { _decorator, Component, Enum, Label } from "cc"; | ||||
|  | ||||
| import { EventManager } from "@max-studio/core/event/EventManager"; | ||||
| import UIManager from "@max-studio/core/ui/UIManager"; | ||||
| import LogUtils from "@max-studio/core/utils/LogUtils"; | ||||
|  | ||||
| import { ShopUI } from "../../uis/ShopUI"; | ||||
| import { CurrencyManager } from "../CurrencyManager"; | ||||
| import { CurrencyEventMessage, CurrencyType } from "../Types"; | ||||
| import { onEvent } from "@max-studio/core/decorators"; | ||||
|  | ||||
| const { ccclass, property } = _decorator; | ||||
|  | ||||
| @ccclass("CurrencyItem") | ||||
| export class CurrencyItem extends Component { | ||||
|     @property({ type: Enum(CurrencyType) }) | ||||
|     public type: CurrencyType = CurrencyType.ENERGY; | ||||
|  | ||||
|     @property(Label) | ||||
|     public label: Label = null!; | ||||
|  | ||||
|     protected onLoad(): void { | ||||
|         this.node.onClick(this.onGotoCurrencyShop, this); | ||||
|     } | ||||
|  | ||||
|     private onGotoCurrencyShop() { | ||||
|         LogUtils.log("点击了货币商店:", this.type); | ||||
|         void UIManager.getInstance().openUI(ShopUI, this.type); | ||||
|     } | ||||
|  | ||||
|     @onEvent(CurrencyEventMessage.CURRENCY_VALUE_CHANGED) | ||||
|     private onCurrencyValueChanged(type: CurrencyType, value: number) { | ||||
|         if (type !== this.type) { | ||||
|             return; | ||||
|         } | ||||
|         this.label.string = CurrencyManager.getInstance().formatCurrencyDisplay(this.type, value); | ||||
|     } | ||||
|  | ||||
|     protected onDestroy(): void { | ||||
|         EventManager.getInstance().off(CurrencyEventMessage.CURRENCY_VALUE_CHANGED, this.onCurrencyValueChanged, this); | ||||
|     } | ||||
|  | ||||
|     protected start(): void { | ||||
|         this.label.string = CurrencyManager.getInstance().formatCurrencyDisplay(this.type); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "8840c2d8-d822-482c-b68f-2a88cd9c8e72", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/uis.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "64114bf3-6b22-4ea3-b229-87984f6eb045", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										153
									
								
								assets/games/scripts/uis/CommonDialogBox.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,153 @@ | ||||
| import BasePopup from "@max-studio/core/ui/BasePopup"; | ||||
| import { uiConfig, UIType } from "@max-studio/core/ui/UIDecorator"; | ||||
| import UIManager from "@max-studio/core/ui/UIManager"; | ||||
| import { IDialogBoxOptions } from "assets/scripts/DialogBox"; | ||||
| import { Vec3 } from "cc"; | ||||
| import { Button } from "cc"; | ||||
| import { tween } from "cc"; | ||||
| import { Label } from "cc"; | ||||
| import { _decorator, Node } from "cc"; | ||||
| const { ccclass, property } = _decorator; | ||||
|  | ||||
| /** | ||||
|  * 基础对话框组件 | ||||
|  */ | ||||
| @uiConfig({ | ||||
|     bundle: "games", | ||||
|     prefab: "prefabs/uis/CommonDialogBox", | ||||
|     isMulti: true, | ||||
|     isCache: true, | ||||
|     type: UIType.POPUP, | ||||
| }) | ||||
| @ccclass("CommonDialogBox") | ||||
| export class CommonDialogBox extends BasePopup { | ||||
|     @property(Label) | ||||
|     titleLabel: Label = null!; | ||||
|  | ||||
|     @property(Node) | ||||
|     contentRoot: Node = null!; | ||||
|  | ||||
|     @property(Label) | ||||
|     contentLabel: Label = null!; | ||||
|  | ||||
|     @property(Button) | ||||
|     confirmBtn: Button = null!; | ||||
|  | ||||
|     @property(Label) | ||||
|     confirmBtnLabel: Label = null!; | ||||
|  | ||||
|     @property(Button) | ||||
|     cancelBtn: Button = null!; | ||||
|  | ||||
|     @property(Label) | ||||
|     cancelBtnLabel: Label = null!; | ||||
|  | ||||
|     @property(Button) | ||||
|     closeBtn: Button = null!; | ||||
|  | ||||
|     // 回调函数 | ||||
|     private onConfirmCallback: (() => void) | null = null; | ||||
|     private onCancelCallback: (() => void) | null = null; | ||||
|  | ||||
|     protected onLoad(): void { | ||||
|         // 绑定按钮事件 | ||||
|         if (this.confirmBtn) { | ||||
|             this.confirmBtn.node.on(Button.EventType.CLICK, this.onConfirmClick, this); | ||||
|         } | ||||
|  | ||||
|         if (this.cancelBtn) { | ||||
|             this.cancelBtn.node.on(Button.EventType.CLICK, this.onCancelClick, this); | ||||
|         } | ||||
|  | ||||
|         if (this.closeBtn) { | ||||
|             this.closeBtn.node.on(Button.EventType.CLICK, this.onCloseClick, this); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 确定按钮点击事件 | ||||
|      */ | ||||
|     private onConfirmClick(): void { | ||||
|         // 执行回调 | ||||
|         if (this.onConfirmCallback) { | ||||
|             this.onConfirmCallback(); | ||||
|         } | ||||
|  | ||||
|         // 隐藏对话框 | ||||
|         void UIManager.getInstance().closeUI(this); | ||||
|     } | ||||
|  | ||||
|     async onShow(options: IDialogBoxOptions = {}) { | ||||
|         this.contentRoot.scale = Vec3.ZERO; | ||||
|         tween(this.contentRoot).to(0.3, { scale: Vec3.ONE }, { easing: "backOut" }).start(); | ||||
|  | ||||
|         const { | ||||
|             title = "提示", | ||||
|             content = "", | ||||
|             onConfirm, | ||||
|             onCancel, | ||||
|             confirmText = "确定", | ||||
|             cancelText = "取消", | ||||
|             showCancel = true, | ||||
|             hideClose = false, | ||||
|         } = options; | ||||
|  | ||||
|         // 设置标题和内容 | ||||
|         if (this.titleLabel) { | ||||
|             this.titleLabel.string = title; | ||||
|         } | ||||
|         if (this.contentLabel) { | ||||
|             this.contentLabel.string = content; | ||||
|         } | ||||
|  | ||||
|         // 设置按钮文本 | ||||
|         if (this.confirmBtnLabel) { | ||||
|             this.confirmBtnLabel.string = confirmText; | ||||
|         } | ||||
|         if (this.cancelBtnLabel) { | ||||
|             this.cancelBtnLabel.string = cancelText; | ||||
|         } | ||||
|  | ||||
|         // 控制取消按钮显示状态 | ||||
|         if (this.cancelBtn) { | ||||
|             this.cancelBtn.node.active = showCancel; | ||||
|         } | ||||
|  | ||||
|         if (this.closeBtn) { | ||||
|             this.closeBtn.node.active = !hideClose; | ||||
|         } | ||||
|  | ||||
|         // 保存回调函数 | ||||
|         this.onConfirmCallback = onConfirm || null; | ||||
|         this.onCancelCallback = onCancel || null; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 取消按钮点击事件 | ||||
|      */ | ||||
|     private onCancelClick(): void { | ||||
|         // 执行回调 | ||||
|         if (this.onCancelCallback) { | ||||
|             this.onCancelCallback(); | ||||
|         } | ||||
|  | ||||
|         // 隐藏对话框 | ||||
|         void UIManager.getInstance().closeUI(this); | ||||
|     } | ||||
|  | ||||
|     private onCloseClick(): void { | ||||
|         // 隐藏对话框 | ||||
|         void UIManager.getInstance().closeUI(this); | ||||
|     } | ||||
|  | ||||
|     async onHide(): Promise<void> { | ||||
|         return new Promise((resolve) => { | ||||
|             tween(this.contentRoot) | ||||
|                 .to(0.2, { scale: new Vec3(0.8, 0.8, 0.8) }, { easing: "quadIn" }) | ||||
|                 .call(() => { | ||||
|                     resolve(); | ||||
|                 }) | ||||
|                 .start(); | ||||
|         }); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/uis/CommonDialogBox.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "ee46f250-e044-478d-91ea-70023cf1ce2e", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										77
									
								
								assets/games/scripts/uis/CommonToast.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,77 @@ | ||||
| import BaseToast from "@max-studio/core/ui/BaseToast"; | ||||
| import { uiConfig, UIType } from "@max-studio/core/ui/UIDecorator"; | ||||
| import UIManager from "@max-studio/core/ui/UIManager"; | ||||
| import { SpriteAtlas, tween, Vec3, UITransform } from "cc"; | ||||
| import { RichText } from "cc"; | ||||
| import { _decorator, Component, Node } from "cc"; | ||||
| const { ccclass, property } = _decorator; | ||||
|  | ||||
| @uiConfig({ | ||||
|     prefab: "prefabs/uis/CommonToast", | ||||
|     bundle: "games", | ||||
|     type: UIType.TOAST, | ||||
|     isMulti: true, | ||||
|     isCache: true, | ||||
| }) | ||||
| @ccclass("CommonToast") | ||||
| export class CommonToast extends BaseToast { | ||||
|     @property(RichText) | ||||
|     private contentLabel: RichText; | ||||
|  | ||||
|     @property(Node) | ||||
|     private containerNode: Node; | ||||
|  | ||||
|     async onShow(tip: string, atlas: SpriteAtlas): Promise<void> { | ||||
|         if (atlas) { | ||||
|             this.contentLabel.imageAtlas = atlas; | ||||
|         } | ||||
|         this.contentLabel.string = tip; | ||||
|  | ||||
|         // 播放滑入动画 | ||||
|         this.playSlideInAnimation(); | ||||
|  | ||||
|         // 显示3秒后自动滑出 | ||||
|         this.scheduleOnce(() => { | ||||
|             this.playSlideOutAnimation(); | ||||
|         }, 2); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 播放滑入动画 | ||||
|      */ | ||||
|     private playSlideInAnimation() { | ||||
|         this.containerNode.setPosition(0, 930, 0); | ||||
|  | ||||
|         // 播放滑入动画 | ||||
|         tween(this.containerNode) | ||||
|             .to( | ||||
|                 0.5, | ||||
|                 { position: new Vec3(0, 720, 0) }, | ||||
|                 { | ||||
|                     easing: "backOut", | ||||
|                 }, | ||||
|             ) | ||||
|             .start(); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 播放滑出动画 | ||||
|      */ | ||||
|     private playSlideOutAnimation() { | ||||
|         // 滑出到屏幕顶部外面 | ||||
|         const endY = 930; | ||||
|  | ||||
|         tween(this.containerNode) | ||||
|             .to( | ||||
|                 0.3, | ||||
|                 { position: new Vec3(0, endY, 0) }, | ||||
|                 { | ||||
|                     easing: "backIn", | ||||
|                 }, | ||||
|             ) | ||||
|             .call(() => { | ||||
|                 UIManager.getInstance().closeUI(this); | ||||
|             }) | ||||
|             .start(); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/uis/CommonToast.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "3c5321d0-7e80-418b-bf2a-fac4d8069ceb", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										22
									
								
								assets/games/scripts/uis/MainUI.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,22 @@ | ||||
| import { _decorator } from "cc"; | ||||
|  | ||||
| import BaseLayer from "@max-studio/core/ui/BaseLayer"; | ||||
| import { uiConfig, UIType } from "@max-studio/core/ui/UIDecorator"; | ||||
| import UIManager from "@max-studio/core/ui/UIManager"; | ||||
| import { CommonDialogBox } from "./CommonDialogBox"; | ||||
| import { CommonToast } from "./CommonToast"; | ||||
| import { ResManager } from "@max-studio/core/res/ResManager"; | ||||
| import { SpriteAtlas } from "cc"; | ||||
|  | ||||
| const { ccclass, property, menu } = _decorator; | ||||
|  | ||||
| @ccclass("MainUI") | ||||
| @uiConfig({ | ||||
|     prefab: "prefabs/uis/MainUI", | ||||
|     bundle: "games", | ||||
|     isCache: false, | ||||
| }) | ||||
| @menu("max/ui/MainUI") | ||||
| export class MainUI extends BaseLayer { | ||||
|     async onShow(...args: any[]) {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/uis/MainUI.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "66960106-0303-42e3-9866-7750a922851b", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										23
									
								
								assets/games/scripts/uis/ShopUI.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,23 @@ | ||||
| import { _decorator } from "cc"; | ||||
|  | ||||
| import BaseLayer from "@max-studio/core/ui/BaseLayer"; | ||||
| import { uiConfig, UIType } from "@max-studio/core/ui/UIDecorator"; | ||||
|  | ||||
| const { ccclass, property, menu } = _decorator; | ||||
|  | ||||
| @ccclass("ShopUI") | ||||
| @uiConfig({ | ||||
|     prefab: "prefabs/uis/ShopUI", | ||||
|     bundle: "games", | ||||
|     type: UIType.NORMAL, | ||||
|     isMulti: false, | ||||
|     isCache: false, | ||||
| }) | ||||
| @menu("max/ui/ShopUI") | ||||
| export class ShopUI extends BaseLayer { | ||||
|     protected onLoad(): void { | ||||
|         // ProtoDefinitions.pkg1.User | ||||
|         let user = new ProtoDefinitions.pkg1.User(); | ||||
|         console.log(user, ProtoDefinitions.pkg1.User.encode(user)); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/games/scripts/uis/ShopUI.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "2c244a4a-c1be-4ed6-a768-4e60bfc0a520", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										11
									
								
								assets/hall.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "c0c06945-eefe-49ec-9f1d-0c76c564976e", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": { | ||||
|     "isBundle": true | ||||
|   } | ||||
| } | ||||
							
								
								
									
										501
									
								
								assets/hall/Hall.scene
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,501 @@ | ||||
| [ | ||||
|   { | ||||
|     "__type__": "cc.SceneAsset", | ||||
|     "_name": "Hall", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_native": "", | ||||
|     "scene": { | ||||
|       "__id__": 1 | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Scene", | ||||
|     "_name": "Hall", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": null, | ||||
|     "_children": [ | ||||
|       { | ||||
|         "__id__": 2 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 5 | ||||
|       }, | ||||
|       { | ||||
|         "__id__": 7 | ||||
|       } | ||||
|     ], | ||||
|     "_active": true, | ||||
|     "_components": [], | ||||
|     "_prefab": { | ||||
|       "__id__": 9 | ||||
|     }, | ||||
|     "_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 | ||||
|     }, | ||||
|     "autoReleaseAssets": false, | ||||
|     "_globals": { | ||||
|       "__id__": 10 | ||||
|     }, | ||||
|     "_id": "1ab32afb-adf3-4cbd-9c3e-b36fbd67c554" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "Main Light", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 3 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": null, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_lrot": { | ||||
|       "__type__": "cc.Quat", | ||||
|       "x": -0.06397656665577071, | ||||
|       "y": -0.44608233363525845, | ||||
|       "z": -0.8239028751062036, | ||||
|       "w": -0.3436591377065261 | ||||
|     }, | ||||
|     "_lscale": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 1, | ||||
|       "y": 1, | ||||
|       "z": 1 | ||||
|     }, | ||||
|     "_mobility": 0, | ||||
|     "_layer": 1073741824, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": -117.894, | ||||
|       "y": -194.909, | ||||
|       "z": 38.562 | ||||
|     }, | ||||
|     "_id": "c0y6F5f+pAvI805TdmxIjx" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.DirectionalLight", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 2 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": null, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 255, | ||||
|       "g": 250, | ||||
|       "b": 240, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_useColorTemperature": false, | ||||
|     "_colorTemperature": 6550, | ||||
|     "_staticSettings": { | ||||
|       "__id__": 4 | ||||
|     }, | ||||
|     "_visibility": -325058561, | ||||
|     "_illuminanceHDR": 65000, | ||||
|     "_illuminance": 65000, | ||||
|     "_illuminanceLDR": 1.6927083333333335, | ||||
|     "_shadowEnabled": true, | ||||
|     "_shadowPcf": 2, | ||||
|     "_shadowBias": 0.00001, | ||||
|     "_shadowNormalBias": 0, | ||||
|     "_shadowSaturation": 1, | ||||
|     "_shadowDistance": 50, | ||||
|     "_shadowInvisibleOcclusionRange": 200, | ||||
|     "_csmLevel": 4, | ||||
|     "_csmLayerLambda": 0.75, | ||||
|     "_csmOptimizationMode": 2, | ||||
|     "_csmAdvancedOptions": false, | ||||
|     "_csmLayersTransition": false, | ||||
|     "_csmTransitionRange": 0.05, | ||||
|     "_shadowFixedArea": false, | ||||
|     "_shadowNear": 0.1, | ||||
|     "_shadowFar": 10, | ||||
|     "_shadowOrthoSize": 5, | ||||
|     "_id": "597uMYCbhEtJQc0ffJlcgA" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.StaticLightSettings", | ||||
|     "_baked": false, | ||||
|     "_editorOnly": false, | ||||
|     "_castShadow": true | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "Main Camera", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 6 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": null, | ||||
|     "_lpos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 8.47, | ||||
|       "z": 50 | ||||
|     }, | ||||
|     "_lrot": { | ||||
|       "__type__": "cc.Quat", | ||||
|       "x": -0.3007057995042731, | ||||
|       "y": 0, | ||||
|       "z": 0, | ||||
|       "w": 0.9537169507482269 | ||||
|     }, | ||||
|     "_lscale": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 1, | ||||
|       "y": 1, | ||||
|       "z": 1 | ||||
|     }, | ||||
|     "_mobility": 0, | ||||
|     "_layer": 1073741824, | ||||
|     "_euler": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": -35, | ||||
|       "y": 0, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_id": "c9DMICJLFO5IeO07EPon7U" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Camera", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 5 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": null, | ||||
|     "_projection": 1, | ||||
|     "_priority": 0, | ||||
|     "_fov": 45, | ||||
|     "_fovAxis": 0, | ||||
|     "_orthoHeight": 10, | ||||
|     "_near": 1, | ||||
|     "_far": 1000, | ||||
|     "_color": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 51, | ||||
|       "g": 51, | ||||
|       "b": 51, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_depth": 1, | ||||
|     "_stencil": 0, | ||||
|     "_clearFlags": 0, | ||||
|     "_rect": { | ||||
|       "__type__": "cc.Rect", | ||||
|       "x": 0, | ||||
|       "y": 0, | ||||
|       "width": 1, | ||||
|       "height": 1 | ||||
|     }, | ||||
|     "_aperture": 19, | ||||
|     "_shutter": 7, | ||||
|     "_iso": 0, | ||||
|     "_screenScale": 1, | ||||
|     "_visibility": 33554432, | ||||
|     "_targetTexture": null, | ||||
|     "_postProcess": null, | ||||
|     "_usePostProcess": false, | ||||
|     "_cameraType": -1, | ||||
|     "_trackingType": 0, | ||||
|     "_id": "7dWQTpwS5LrIHnc1zAPUtf" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.Node", | ||||
|     "_name": "GameEntry", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "_parent": { | ||||
|       "__id__": 1 | ||||
|     }, | ||||
|     "_children": [], | ||||
|     "_active": true, | ||||
|     "_components": [ | ||||
|       { | ||||
|         "__id__": 8 | ||||
|       } | ||||
|     ], | ||||
|     "_prefab": null, | ||||
|     "_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": "86FsqzPMpEH6IwDjDNNt9g" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "85841+9u4VN74WFOE5j4CYc", | ||||
|     "_name": "", | ||||
|     "_objFlags": 0, | ||||
|     "__editorExtras__": {}, | ||||
|     "node": { | ||||
|       "__id__": 7 | ||||
|     }, | ||||
|     "_enabled": true, | ||||
|     "__prefab": null, | ||||
|     "_id": "b3Dmh5odNIQrWnUk9G7ddg" | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PrefabInfo", | ||||
|     "root": null, | ||||
|     "asset": null, | ||||
|     "fileId": "1ab32afb-adf3-4cbd-9c3e-b36fbd67c554", | ||||
|     "instance": null, | ||||
|     "targetOverrides": null | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.SceneGlobals", | ||||
|     "ambient": { | ||||
|       "__id__": 11 | ||||
|     }, | ||||
|     "shadows": { | ||||
|       "__id__": 12 | ||||
|     }, | ||||
|     "_skybox": { | ||||
|       "__id__": 13 | ||||
|     }, | ||||
|     "fog": { | ||||
|       "__id__": 14 | ||||
|     }, | ||||
|     "octree": { | ||||
|       "__id__": 15 | ||||
|     }, | ||||
|     "skin": { | ||||
|       "__id__": 16 | ||||
|     }, | ||||
|     "lightProbeInfo": { | ||||
|       "__id__": 17 | ||||
|     }, | ||||
|     "postSettings": { | ||||
|       "__id__": 18 | ||||
|     }, | ||||
|     "bakedWithStationaryMainLight": false, | ||||
|     "bakedWithHighpLightmap": false | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.AmbientInfo", | ||||
|     "_skyColorHDR": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.2, | ||||
|       "y": 0.5, | ||||
|       "z": 0.8, | ||||
|       "w": 0.520833125 | ||||
|     }, | ||||
|     "_skyColor": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.2, | ||||
|       "y": 0.5, | ||||
|       "z": 0.8, | ||||
|       "w": 0.520833125 | ||||
|     }, | ||||
|     "_skyIllumHDR": 20000, | ||||
|     "_skyIllum": 20000, | ||||
|     "_groundAlbedoHDR": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.2, | ||||
|       "y": 0.2, | ||||
|       "z": 0.2, | ||||
|       "w": 1 | ||||
|     }, | ||||
|     "_groundAlbedo": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.2, | ||||
|       "y": 0.2, | ||||
|       "z": 0.2, | ||||
|       "w": 1 | ||||
|     }, | ||||
|     "_skyColorLDR": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.452588, | ||||
|       "y": 0.607642, | ||||
|       "z": 0.755699, | ||||
|       "w": 0 | ||||
|     }, | ||||
|     "_skyIllumLDR": 0.8, | ||||
|     "_groundAlbedoLDR": { | ||||
|       "__type__": "cc.Vec4", | ||||
|       "x": 0.618555, | ||||
|       "y": 0.577848, | ||||
|       "z": 0.544564, | ||||
|       "w": 0 | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.ShadowsInfo", | ||||
|     "_enabled": false, | ||||
|     "_type": 1, | ||||
|     "_normal": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 0, | ||||
|       "y": 1, | ||||
|       "z": 0 | ||||
|     }, | ||||
|     "_distance": 0, | ||||
|     "_planeBias": 1, | ||||
|     "_shadowColor": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 76, | ||||
|       "g": 76, | ||||
|       "b": 76, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_maxReceived": 4, | ||||
|     "_size": { | ||||
|       "__type__": "cc.Vec2", | ||||
|       "x": 2048, | ||||
|       "y": 2048 | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.SkyboxInfo", | ||||
|     "_envLightingType": 0, | ||||
|     "_envmapHDR": { | ||||
|       "__uuid__": "d032ac98-05e1-4090-88bb-eb640dcb5fc1@b47c0", | ||||
|       "__expectedType__": "cc.TextureCube" | ||||
|     }, | ||||
|     "_envmap": { | ||||
|       "__uuid__": "d032ac98-05e1-4090-88bb-eb640dcb5fc1@b47c0", | ||||
|       "__expectedType__": "cc.TextureCube" | ||||
|     }, | ||||
|     "_envmapLDR": null, | ||||
|     "_diffuseMapHDR": null, | ||||
|     "_diffuseMapLDR": null, | ||||
|     "_enabled": true, | ||||
|     "_useHDR": true, | ||||
|     "_editableMaterial": null, | ||||
|     "_reflectionHDR": null, | ||||
|     "_reflectionLDR": null, | ||||
|     "_rotationAngle": 0 | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.FogInfo", | ||||
|     "_type": 0, | ||||
|     "_fogColor": { | ||||
|       "__type__": "cc.Color", | ||||
|       "r": 200, | ||||
|       "g": 200, | ||||
|       "b": 200, | ||||
|       "a": 255 | ||||
|     }, | ||||
|     "_enabled": false, | ||||
|     "_fogDensity": 0.3, | ||||
|     "_fogStart": 0.5, | ||||
|     "_fogEnd": 300, | ||||
|     "_fogAtten": 5, | ||||
|     "_fogTop": 1.5, | ||||
|     "_fogRange": 1.2, | ||||
|     "_accurate": false | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.OctreeInfo", | ||||
|     "_enabled": false, | ||||
|     "_minPos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": -1024, | ||||
|       "y": -1024, | ||||
|       "z": -1024 | ||||
|     }, | ||||
|     "_maxPos": { | ||||
|       "__type__": "cc.Vec3", | ||||
|       "x": 1024, | ||||
|       "y": 1024, | ||||
|       "z": 1024 | ||||
|     }, | ||||
|     "_depth": 8 | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.SkinInfo", | ||||
|     "_enabled": false, | ||||
|     "_blurRadius": 0.01, | ||||
|     "_sssIntensity": 3 | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.LightProbeInfo", | ||||
|     "_giScale": 1, | ||||
|     "_giSamples": 1024, | ||||
|     "_bounces": 2, | ||||
|     "_reduceRinging": 0, | ||||
|     "_showProbe": true, | ||||
|     "_showWireframe": true, | ||||
|     "_showConvex": false, | ||||
|     "_data": null, | ||||
|     "_lightProbeSphereVolume": 1 | ||||
|   }, | ||||
|   { | ||||
|     "__type__": "cc.PostSettingsInfo", | ||||
|     "_toneMappingType": 0 | ||||
|   } | ||||
| ] | ||||
							
								
								
									
										11
									
								
								assets/hall/Hall.scene.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.1.50", | ||||
|   "importer": "scene", | ||||
|   "imported": true, | ||||
|   "uuid": "1ab32afb-adf3-4cbd-9c3e-b36fbd67c554", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/hall/res.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "896a1ee6-f396-4a9c-beaf-2499dc5c765e", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										99
									
								
								assets/hall/res/cube.mtl
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,99 @@ | ||||
| { | ||||
|   "__type__": "cc.Material", | ||||
|   "_name": "", | ||||
|   "_objFlags": 0, | ||||
|   "__editorExtras__": {}, | ||||
|   "_native": "", | ||||
|   "_effectAsset": { | ||||
|     "__uuid__": "c8f66d17-351a-48da-a12c-0212d28575c4", | ||||
|     "__expectedType__": "cc.EffectAsset" | ||||
|   }, | ||||
|   "_techIdx": 0, | ||||
|   "_defines": [ | ||||
|     { | ||||
|       "USE_ALBEDO_MAP": true | ||||
|     }, | ||||
|     {}, | ||||
|     {}, | ||||
|     {}, | ||||
|     {}, | ||||
|     {} | ||||
|   ], | ||||
|   "_states": [ | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "rasterizerState": {}, | ||||
|       "depthStencilState": {}, | ||||
|       "blendState": { | ||||
|         "targets": [ | ||||
|           {} | ||||
|         ] | ||||
|       } | ||||
|     } | ||||
|   ], | ||||
|   "_props": [ | ||||
|     { | ||||
|       "mainTexture": { | ||||
|         "__uuid__": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2@6c48a", | ||||
|         "__expectedType__": "cc.Texture2D" | ||||
|       }, | ||||
|       "pbrMap": { | ||||
|         "__uuid__": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2@6c48a", | ||||
|         "__expectedType__": "cc.Texture2D" | ||||
|       }, | ||||
|       "emissiveMap": { | ||||
|         "__uuid__": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2@6c48a", | ||||
|         "__expectedType__": "cc.Texture2D" | ||||
|       } | ||||
|     }, | ||||
|     {}, | ||||
|     {}, | ||||
|     {}, | ||||
|     {}, | ||||
|     {} | ||||
|   ] | ||||
| } | ||||
							
								
								
									
										11
									
								
								assets/hall/res/cube.mtl.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | ||||
| { | ||||
|   "ver": "1.0.21", | ||||
|   "importer": "material", | ||||
|   "imported": true, | ||||
|   "uuid": "64ad5bee-a543-4c1a-8268-82033828e6ef", | ||||
|   "files": [ | ||||
|     ".json" | ||||
|   ], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/hall/res/hw_dixing.png
									
									
									
									
									
										Executable file
									
								
							
							
						
						| After Width: | Height: | Size: 1022 KiB | 
							
								
								
									
										42
									
								
								assets/hall/res/hw_dixing.png.meta
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2@6c48a", | ||||
|       "displayName": "hw_dixing", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "texture", | ||||
|     "fixAlphaTransparencyArtifacts": true, | ||||
|     "hasAlpha": false, | ||||
|     "redirect": "fa270d2b-8dc0-4cb3-ad92-7f26fd3f6dd2@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/hall/res/hw_dixing_02.png
									
									
									
									
									
										Executable file
									
								
							
							
						
						| After Width: | Height: | Size: 1.1 MiB | 
							
								
								
									
										42
									
								
								assets/hall/res/hw_dixing_02.png.meta
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "814b320f-2ea3-49f4-8262-e9c7f81a3fc9", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "814b320f-2ea3-49f4-8262-e9c7f81a3fc9@6c48a", | ||||
|       "displayName": "hw_dixing_02", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "814b320f-2ea3-49f4-8262-e9c7f81a3fc9", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "texture", | ||||
|     "fixAlphaTransparencyArtifacts": true, | ||||
|     "hasAlpha": false, | ||||
|     "redirect": "814b320f-2ea3-49f4-8262-e9c7f81a3fc9@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/hall/res/hw_peijing_01.png
									
									
									
									
									
										Executable file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 MiB | 
							
								
								
									
										42
									
								
								assets/hall/res/hw_peijing_01.png.meta
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "b267810d-8f1c-40a6-a8d0-33bb7fd33d96", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "b267810d-8f1c-40a6-a8d0-33bb7fd33d96@6c48a", | ||||
|       "displayName": "hw_peijing_01", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "b267810d-8f1c-40a6-a8d0-33bb7fd33d96", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "texture", | ||||
|     "fixAlphaTransparencyArtifacts": true, | ||||
|     "hasAlpha": false, | ||||
|     "redirect": "b267810d-8f1c-40a6-a8d0-33bb7fd33d96@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/hall/res/hw_peijing_02.png
									
									
									
									
									
										Executable file
									
								
							
							
						
						| After Width: | Height: | Size: 1.6 MiB | 
							
								
								
									
										42
									
								
								assets/hall/res/hw_peijing_02.png.meta
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | ||||
| { | ||||
|   "ver": "1.0.27", | ||||
|   "importer": "image", | ||||
|   "imported": true, | ||||
|   "uuid": "077558ab-d6b9-4afc-97a8-b56357c8b6b6", | ||||
|   "files": [ | ||||
|     ".json", | ||||
|     ".png" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "6c48a": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "077558ab-d6b9-4afc-97a8-b56357c8b6b6@6c48a", | ||||
|       "displayName": "hw_peijing_02", | ||||
|       "id": "6c48a", | ||||
|       "name": "texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": true, | ||||
|         "imageUuidOrDatabaseUri": "077558ab-d6b9-4afc-97a8-b56357c8b6b6", | ||||
|         "visible": false | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "type": "texture", | ||||
|     "fixAlphaTransparencyArtifacts": true, | ||||
|     "hasAlpha": false, | ||||
|     "redirect": "077558ab-d6b9-4afc-97a8-b56357c8b6b6@6c48a" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/hall/res/map.fbx
									
									
									
									
									
										Executable file
									
								
							
							
						
						
							
								
								
									
										588
									
								
								assets/hall/res/map.fbx.meta
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,588 @@ | ||||
| { | ||||
|   "ver": "2.3.14", | ||||
|   "importer": "fbx", | ||||
|   "imported": true, | ||||
|   "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5", | ||||
|   "files": [ | ||||
|     "__original-animation-0.bin" | ||||
|   ], | ||||
|   "subMetas": { | ||||
|     "48941": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@48941", | ||||
|       "displayName": "", | ||||
|       "id": "48941", | ||||
|       "name": "hw_zhidao210_daolu_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 0, | ||||
|         "triangleCount": 1474 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "76792": { | ||||
|       "importer": "gltf-scene", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@76792", | ||||
|       "displayName": "", | ||||
|       "id": "76792", | ||||
|       "name": "map.prefab", | ||||
|       "userData": { | ||||
|         "gltfIndex": 0 | ||||
|       }, | ||||
|       "ver": "1.0.14", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "83307": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@83307", | ||||
|       "displayName": "", | ||||
|       "id": "83307", | ||||
|       "name": "hw_zhidao210_daolu_03.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 11, | ||||
|         "triangleCount": 1474 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "87397": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@87397", | ||||
|       "displayName": "", | ||||
|       "id": "87397", | ||||
|       "name": "hw_wandaoyou_daolu_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 9, | ||||
|         "triangleCount": 1201 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "98405": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@98405", | ||||
|       "displayName": "", | ||||
|       "id": "98405", | ||||
|       "name": "hw_zhidao210_peijing_04.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 1, | ||||
|         "triangleCount": 1714 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "186a9": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@186a9", | ||||
|       "displayName": "", | ||||
|       "id": "186a9", | ||||
|       "name": "hw_zhidao210_peijing_06.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 2, | ||||
|         "triangleCount": 1047 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "8720d": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@8720d", | ||||
|       "displayName": "", | ||||
|       "id": "8720d", | ||||
|       "name": "hw_zhidao210_peijing_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 3, | ||||
|         "triangleCount": 11426 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "a4b4d": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@a4b4d", | ||||
|       "displayName": "", | ||||
|       "id": "a4b4d", | ||||
|       "name": "hw_zhidao210_peijing_02.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 4, | ||||
|         "triangleCount": 4235 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "dfc00": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@dfc00", | ||||
|       "displayName": "", | ||||
|       "id": "dfc00", | ||||
|       "name": "hw_zhidao210_peijing_03.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 5, | ||||
|         "triangleCount": 8216 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "098b3": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@098b3", | ||||
|       "displayName": "", | ||||
|       "id": "098b3", | ||||
|       "name": "hw_zhidao210_peijing_05.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 6, | ||||
|         "triangleCount": 10711 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "00bc8": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@00bc8", | ||||
|       "displayName": "", | ||||
|       "id": "00bc8", | ||||
|       "name": "hw_wandaoyou_peijing_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 7, | ||||
|         "triangleCount": 9714 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "29c06": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@29c06", | ||||
|       "displayName": "", | ||||
|       "id": "29c06", | ||||
|       "name": "hw_wandaoyou_peijing_02.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 8, | ||||
|         "triangleCount": 5255 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "bf630": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@bf630", | ||||
|       "displayName": "", | ||||
|       "id": "bf630", | ||||
|       "name": "hw_zhidao210_daolu_02.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 10, | ||||
|         "triangleCount": 1474 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "5f401": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@5f401", | ||||
|       "displayName": "", | ||||
|       "id": "5f401", | ||||
|       "name": "hw_zhidao210_dimian_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 12, | ||||
|         "triangleCount": 325 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "9d61d": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@9d61d", | ||||
|       "displayName": "", | ||||
|       "id": "9d61d", | ||||
|       "name": "hw_wandaoyou_dimian_01.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 13, | ||||
|         "triangleCount": 402 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "052a8": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@052a8", | ||||
|       "displayName": "", | ||||
|       "id": "052a8", | ||||
|       "name": "hw_zhidao210_dimian_03.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 14, | ||||
|         "triangleCount": 309 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "c299f": { | ||||
|       "importer": "gltf-mesh", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@c299f", | ||||
|       "displayName": "", | ||||
|       "id": "c299f", | ||||
|       "name": "hw_zhidao210_dimian_02.mesh", | ||||
|       "userData": { | ||||
|         "gltfIndex": 15, | ||||
|         "triangleCount": 279 | ||||
|       }, | ||||
|       "ver": "1.1.1", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin", | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "73b7f": { | ||||
|       "importer": "gltf-animation", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@73b7f", | ||||
|       "displayName": "", | ||||
|       "id": "73b7f", | ||||
|       "name": "Take 001.animation", | ||||
|       "userData": { | ||||
|         "gltfIndex": 0, | ||||
|         "wrapMode": 2, | ||||
|         "sample": 30, | ||||
|         "span": { | ||||
|           "from": 0, | ||||
|           "to": 50 | ||||
|         }, | ||||
|         "events": [] | ||||
|       }, | ||||
|       "ver": "1.0.18", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".bin" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "6e70c": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@6e70c", | ||||
|       "displayName": "", | ||||
|       "id": "6e70c", | ||||
|       "name": "Map #1.texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": false, | ||||
|         "imageUuidOrDatabaseUri": "db://assets/hall/res/hw_dixing.png" | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "a1fca": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@a1fca", | ||||
|       "displayName": "", | ||||
|       "id": "a1fca", | ||||
|       "name": "Map #184.texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": false, | ||||
|         "imageUuidOrDatabaseUri": "db://assets/hall/res/hw_peijing_02.png" | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "bd2a9": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@bd2a9", | ||||
|       "displayName": "", | ||||
|       "id": "bd2a9", | ||||
|       "name": "Map #188.texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": false, | ||||
|         "imageUuidOrDatabaseUri": "db://assets/hall/res/hw_peijing_01.png" | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "bf47e": { | ||||
|       "importer": "texture", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@bf47e", | ||||
|       "displayName": "", | ||||
|       "id": "bf47e", | ||||
|       "name": "Map #182.texture", | ||||
|       "userData": { | ||||
|         "wrapModeS": "repeat", | ||||
|         "wrapModeT": "repeat", | ||||
|         "minfilter": "linear", | ||||
|         "magfilter": "linear", | ||||
|         "mipfilter": "none", | ||||
|         "anisotropy": 0, | ||||
|         "isUuid": false, | ||||
|         "imageUuidOrDatabaseUri": "db://assets/hall/res/hw_dixing_02.png" | ||||
|       }, | ||||
|       "ver": "1.0.22", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "fca34": { | ||||
|       "importer": "gltf-material", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@fca34", | ||||
|       "displayName": "", | ||||
|       "id": "fca34", | ||||
|       "name": "hw_dixing.material", | ||||
|       "userData": { | ||||
|         "gltfIndex": 0 | ||||
|       }, | ||||
|       "ver": "1.0.14", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "7d384": { | ||||
|       "importer": "gltf-material", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@7d384", | ||||
|       "displayName": "", | ||||
|       "id": "7d384", | ||||
|       "name": "hw_peijing_02.material", | ||||
|       "userData": { | ||||
|         "gltfIndex": 1 | ||||
|       }, | ||||
|       "ver": "1.0.14", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "fea7a": { | ||||
|       "importer": "gltf-material", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@fea7a", | ||||
|       "displayName": "", | ||||
|       "id": "fea7a", | ||||
|       "name": "hw_peijing_01.material", | ||||
|       "userData": { | ||||
|         "gltfIndex": 2 | ||||
|       }, | ||||
|       "ver": "1.0.14", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     }, | ||||
|     "e9de2": { | ||||
|       "importer": "gltf-material", | ||||
|       "uuid": "70e929d8-a531-44c9-a54c-f92a267631b5@e9de2", | ||||
|       "displayName": "", | ||||
|       "id": "e9de2", | ||||
|       "name": "hw_dixing_02.material", | ||||
|       "userData": { | ||||
|         "gltfIndex": 3 | ||||
|       }, | ||||
|       "ver": "1.0.14", | ||||
|       "imported": true, | ||||
|       "files": [ | ||||
|         ".json" | ||||
|       ], | ||||
|       "subMetas": {} | ||||
|     } | ||||
|   }, | ||||
|   "userData": { | ||||
|     "imageMetas": [ | ||||
|       { | ||||
|         "name": "Map #1", | ||||
|         "uri": "db://assets/hall/res/hw_dixing.png" | ||||
|       }, | ||||
|       { | ||||
|         "name": "Map #184", | ||||
|         "uri": "db://assets/hall/res/hw_peijing_02.png" | ||||
|       }, | ||||
|       { | ||||
|         "name": "Map #188", | ||||
|         "uri": "db://assets/hall/res/hw_peijing_01.png" | ||||
|       }, | ||||
|       { | ||||
|         "name": "Map #182", | ||||
|         "uri": "db://assets/hall/res/hw_dixing_02.png" | ||||
|       } | ||||
|     ], | ||||
|     "fbx": { | ||||
|       "smartMaterialEnabled": true, | ||||
|       "matchMeshNames": false | ||||
|     }, | ||||
|     "animationImportSettings": [ | ||||
|       { | ||||
|         "name": "Take 001", | ||||
|         "duration": 50, | ||||
|         "fps": 30, | ||||
|         "splits": [ | ||||
|           { | ||||
|             "name": "Take 001", | ||||
|             "from": 0, | ||||
|             "to": 50, | ||||
|             "wrapMode": 2, | ||||
|             "previousId": "73b7f" | ||||
|           } | ||||
|         ] | ||||
|       } | ||||
|     ], | ||||
|     "assetFinder": { | ||||
|       "meshes": [ | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@48941", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@98405", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@186a9", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@8720d", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@a4b4d", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@dfc00", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@098b3", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@00bc8", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@29c06", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@87397", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@bf630", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@83307", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@5f401", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@9d61d", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@052a8", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@c299f" | ||||
|       ], | ||||
|       "skeletons": [], | ||||
|       "textures": [ | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@6e70c", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@a1fca", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@bd2a9", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@bf47e" | ||||
|       ], | ||||
|       "materials": [ | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@fca34", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@7d384", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@fea7a", | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@e9de2" | ||||
|       ], | ||||
|       "scenes": [ | ||||
|         "70e929d8-a531-44c9-a54c-f92a267631b5@76792" | ||||
|       ] | ||||
|     }, | ||||
|     "lods": { | ||||
|       "enable": false, | ||||
|       "hasBuiltinLOD": false, | ||||
|       "options": [ | ||||
|         { | ||||
|           "screenRatio": 0.25, | ||||
|           "faceCount": 1 | ||||
|         }, | ||||
|         { | ||||
|           "screenRatio": 0.125, | ||||
|           "faceCount": 0.25 | ||||
|         }, | ||||
|         { | ||||
|           "screenRatio": 0.01, | ||||
|           "faceCount": 0.1 | ||||
|         } | ||||
|       ] | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/hall/scripts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "6be1cc46-6e9f-40f1-a5dd-fd0c73a89a32", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										19
									
								
								assets/hall/scripts/GameEntry.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | ||||
| /* eslint-disable no-console */ | ||||
| import { _decorator, Component, profiler } from "cc"; | ||||
|  | ||||
| import { SingletonRegistry } from "@max-studio/core/Singleton"; | ||||
| import UIManager from "@max-studio/core/ui/UIManager"; | ||||
| import { ResManager } from "@max-studio/core/res/ResManager"; | ||||
|  | ||||
| const { ccclass, property } = _decorator; | ||||
|  | ||||
| @ccclass("GameEntry") | ||||
| export class GameEntry extends Component { | ||||
|     protected async onLoad() { | ||||
|         await ResManager.getInstance().loadLocalBundle("games"); | ||||
|         await SingletonRegistry.initializeAutoInstances(); | ||||
|         void UIManager.getInstance().openUI("MainUI"); | ||||
|     } | ||||
|  | ||||
|     update(deltaTime: number) {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/hall/scripts/GameEntry.ts.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "4.0.24", | ||||
|   "importer": "typescript", | ||||
|   "imported": true, | ||||
|   "uuid": "85841fbd-bb85-4def-8585-384e63e0261c", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||
							
								
								
									
										9
									
								
								assets/loadable.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|   "ver": "1.2.0", | ||||
|   "importer": "directory", | ||||
|   "imported": true, | ||||
|   "uuid": "e79b69b5-bebc-4146-8805-26238923f7ff", | ||||
|   "files": [], | ||||
|   "subMetas": {}, | ||||
|   "userData": {} | ||||
| } | ||||