diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3efffbf --- /dev/null +++ b/.gitignore @@ -0,0 +1,27 @@ + +#/////////////////////////// +# Cocos Creator 3D Project +#/////////////////////////// +build/ +library/ +local/ +native +temp/ + +#////////////////////////// +# NPM +#////////////////////////// +node_modules/ + +#////////////////////////// +# VSCode +#////////////////////////// +.vscode/ + +#////////////////////////// +# WebStorm +#////////////////////////// +.idea/ + +.gradle/ +*.iml \ No newline at end of file diff --git a/README.cn.md b/README.cn.md new file mode 100644 index 0000000..a338d70 --- /dev/null +++ b/README.cn.md @@ -0,0 +1,288 @@ +# cx-cocos +**一个基于cocos creator3.1.1的应用App和游戏开发框架** + +关键词:cocos creator、应用开发、App开发、游戏开发、跨平台、框架 + + cocos creator是一个开源的游戏开发引擎,在游戏开发方面,拥有大量开发者。然而在应用App方面,却少有人使用,cx-cocos的出现,填补了cocos creator在应用App开发上的空白。 + + 使用cx-cocos,你可以轻松愉快地开发出一个跨平台应用App,包括ios、mac、android、web等,当然你也可以使用cx-cocos开发游戏,这是一个高效简洁的开发框架,极大提升开发者的效率。 + +**本说明文档包括以下内容:** +- cx-cocos主要功能 +- cx-cocos结构和原理 +- 如何运行demo app +- 如何使用cx-cocos开始一个自己的项目 +- 问题和技术支持 + + +## 1. 主要功能 +**cx-cocos的主要功能包括以下内容:** +- 应用App的核心UI交互 +- 页面和组件访问、资源访问、远程服务访问 +- 与原生代码的交互 +- 真正的启动屏 +- 热更新 + + +### 1.1 应用App的核心UI交互 +---- + cx-cocos在页面的显示与交互细节上,与iOS原生App有着相似的体验, + 包括页面的进入退出与手势、提示弹窗、ScrollView、Loading等待、选择器等等。 + cx3-demo是一个demo,建议你从它入手,了解cx-cocos。 + +- **屏幕适配:** 通常情况下,应用App是宽度适应(fitWidth)、高度随着屏幕高度自动铺满。cx-cocos提供了一个“最小设计宽/高度”的配置,即使在浏览器或Pad上,App也能按最佳的方式显示界面——你只需按你的设计尺寸来设计UI。 + +- **刘海屏适配:** 对于iphoneX等屏幕,通过添加cx.safearea脚本,可自动调节标题栏、内容层、底部导航栏的高度和位置。 + +- **界面进入与退出:** 动画进入与退出、手势划动退出、上一页面随动、阴影效果、响应android返回键。 + +- **对话框:** Alert提示框、Confirm确认框。框架还提供了一种Hint动画文字提示,你可以多点击几次试试。 + +- **选择器:** 框架提供了1栏或多栏的选择器,你可以轻松地实现年月日选择、年月选择、文字或对象列表选择。 + +- **ScrollView:** 扩展了下拉刷新、上滑增量添加数据的能力。 + +- **PageView:** 扩展了定时自动下一页、循环播放、点击回调的能力。 + +- **等待动画:** 可以在页面正中或任意控件内显示Loading动画,并且有延时显示能力,这在查询数据时非常实用,比如0.5秒后还没有返回数据,才显示Loading动画。 + +- **原生视图:** 原生UI在cocos UI中显示,并且随着ScrollView滚动或窗体滑动;原生UI遮罩能力,例如对话弹框、标题栏在原生UI之上显示,不被遮挡。 + + +### 1.2 页面和组件访问、资源访问、远程服务访问 +---- + 操作UI组件在应用开发中非常频繁,cx-cocos提供了便捷的方式对组件进行访问和操作。 + +| UI常用方法 | 说明 | +| ---- | ---- | +| cx.sw | 适配后的屏幕宽度 | +| cx.sh | 适配后的屏幕高度 | +| cx.gn(pageOrNode, nodeName) | 获取场景树中的节点 | +| setTouchCallback(page, callback, ...params) | 给Node添加点击事件 | +| cx.hint(content) | 显示提示 | +| cx.alert(content, callback?, labelOK?) | 显示对话窗 | +| cx.confrm(content, callback?, labelOK?, labelCancel?) | 显示确认窗 | +| cx.showLoading(page, parentNode, delayShowSeconds?) | 显示等待动画 | +| cx.removeLoading(parentNode) | 移除等待动画 | +| cx.addPage(parentNode, prefabName, scripts?, callbackOrParams, runAction?) | 添加一个页面 | +| cx.showPage(prefabName, scripts?, callbackOrParams) | 添加一个页面(动画进入) | +| cx.closePage(pageOrSender) | 关闭本页面 | +| | | + +**示例代码:** +```typescript +var lblTitle: Node = cx.gn(this, "lblTitle"); //获取场景树中的名称为lblTitle的节点 + +//给lblTitle添加一个点击事件 +lblTitle.setTouchCallback(this, this.myClick); + +//你也可以定义回调时的参数: +lblTitle.setTouchCallback(this, this.myClick, 1, "a", {tip:"任意类型和数量的参数"}); + +myClick(sender, p1, p2, p3) +{ + //sender = lblTitle + //p1 = 1 + //p2 = "a" + //p3 = {remark:"任意类型和数量的参数"} +} + +cx.showPage("ui/pageChild"); //显示ui/pageChild.prefab +cx.hint("cx.hint(content)"); +cx.alert("cx.alert(content, callback, labelOk)"); +cx.confirm("cx.confirm(content, callback, labelOk, labelCancel)", cx.hint); +cx.showLoading(this); +cx.removeLoading(this); +cx.closePage(this); + +//给scrollView添加增量新增数据能力 +cx.script.scrollView.initDeltaInsert(this, "view", this.queryData); + +//给scrollView添加下拉刷新能力 +cx.script.scrollView.initDropRefresh(this, "view", this.refreshData); + +//给PageView添加自动循环滚动能力 +cx.script.pageView.initAutoScroll(this, "viewBanner", 2, true, this.onBannerClick); +```` + +| 资源常用方法 | 说明 | +| ---- | ---- | +| cx.setImageFromRes(spriteOrNode, prefab, sizeMode?, callback?) | 给节点设置图片(从resources) | +| cx.setImageFromBundle(spriteOrNode, prefab, sizeMode?, callback?) | 给节点设置图片(从bundle) | +| cx.setImageFromRemote(spriteOrNode, url, localPath?, sizeMode?, callback?) | 给节点设置图片(从远程url,存储至本地localPath,并优先从localPath加载图片) | +| cx.loadBundleRes(prefab, callback?) | 加载1个或多个prefab | +| | | + + +| 远程访问常用方法 | 说明 | +| ---- | ---- | +| cx.call(url, callback?, context?) | 调用服务端服务(call方式) | +| cx.post(url, data?, callback?, context?) | 调用服务端服务(post方式) | +| cx.upload(url, filePath, callback?) | 调用服务端服务,上传文件 | +| cx.setCommonHeaders(headers: string[]) | 设置http请求的默认headers | +| cx.loadFile(url, localPath?, callback?) | 从url加载文件,存储至本地并优先从本地加载 | +| cx.loadAsset(url: string, callback?) | 从url加载Asset | +| | | + + +| utils常用方法 | 说明 | +| ---- | ---- | +| cx.utils.xxx | cx.func中定义了常用的工具方法,如时间等,具体参见cx.d.ts | +| | | + + +### 1.3 与原生代码的交互 +---- + cx-cocos提供了一个cxnative原生类,通过它可以方便地与原生代码、第三方SDK交互。 + 与iOS/mac的交互是通过jsb/c++ ———— 避免了苹果审核风险 + 与android的交互是通过jsb.reflection + + * 可参照demo中的SystemIntf编写你自己的原生类 + +**原生类的定义:** +iOS/mac:在jsIntf.cpp中定义你的类名和处理类,类继承自cxDefine.h中的NativeIntfClass +android:在jsIntf.java中定义你的类名和处理类 + +- 在JavaScript/TypeScript中调用原生方法: +```typescript +cx.native.ins("className").call("functionName", [...params], callback); +```` + +- 在iOS/mac中调用JS方法: +```c++ +this->callback(int, string); +```` + +- 在android中调用JS方法: +```java +NativeIntf.callJs("className", int, string); +```` + + +### 1.4 真正的启动屏 +---- + cocos creator提供了一个定时长的启动画面,你无法在首页渲染完成后再移除画面,也无法提前移除。并且它只能在加载cc.js之后显示,而不是在App真正启动时。 + cx-cocos针对iOS/mac和Android,提供了原生的启动画面处理,你可以在App启动时显示,在任意时刻移除。 + +iOS/mac启动屏实现代码:见demo中的AppController.mm +android启动屏实现代码:见demo中的CocosActivity.java + +```typescript +// ios/Mac: LaunchImage.png +// android: lanuch_image.png +// 移除启动屏,如果你在config.ts中配置了自动移除,那么不需要执行这句,cx会在开始页(startPage)加入场景时自动调用 +cx.removeLaunchImage(); +```` + + +### 1.5 热更新 +---- + cx-cocos在执行main.js之前执行热更新。 + cx-cocos提供了一个update.js工具用于生成热更新需要的manifest文件,执行命令为: + $ node update.js -v 1.0 + * 在执行之前,你需要将update.js中的更新地址替换为你的服务器地址。 + +****实现原理:见demo中的boot.js*** + + +## 2. cx-cocos结构和原理 + +>**cx-framework目录结构:** +- **cocos3-libs:** 这里是从creator构建项目中提取的引擎libs,我们把它独立出来,所有项目就只需要assets + - **cocos-libcc:** cocos android jar,你的android工程需要依赖它 + - **cocos-libso:** cocos android so,编译生成libcocos.so的工程,android需要这个.so + - **cocos3-ios.xcodeproj:** 编译生成libcocos3 iOS.a的工程,iOS需要这个.a + - **cocos3-mac.xcodeproj:** 编译生成libcocos3 Mac.a的工程,mac需要这个.a +- **cx:** cx-cocos的ts代码,你的creator工程需要它,请拷贝到你项目中的assets目录,或在assets目录中建立链接cx链接到它,链接命令:ln -s ../../cx-framework3.1/cx cx + - **core:** cx-cocos框架实现类 + - **prefab:** cx-cocos内置的预制资源 + - **scripts:** cx-cocos内置的组件脚本 + - **template:** cx-cocos提供的组件模板,在设计页面时可以使用它 +- **cx-native:** 负责原生交互,你的iOS/mac工程需要它,android不需要(它已经在libcocos.so中) +- **cx.d.ts:** cx-cocos的TypeScript声明文件 + + +>**demo的目录结构:** +- **project:** 原生工程都在这里了(并非creator构建生成的工程) + - **assets: 注意,** 它来源于cocos构建发布,你可以创建iOS、mac、android任意一种构建,将生成的assets拷贝到这里,建议你在这里建立一个assets链接,链接到你构建生成的assets目录,这样在每次重新构建后就不需再拷贝assets,链接命令:ln -s 路径 assets + - **boot:** 启动js和热更新manifest文件 + - **cxdemo.android:** demo android studio工程 + - **cxdemo.ios:** demo iOS/mac工程 + - **statics:** 一些仅供原生使用的静态资源 + - **update.js:** 生成热更新文件的脚本 +- **其他目录:** cocos creator生成的目录 + + +>**cx-cocos设计结构** +- 在ts层面,cx-cocos包括: + - cx: 常用变量、常用方法、UI方法 + - cx.native: 与原生交互相关 + - cx.picker: 选择器相关 + - cx.res: 资源处理相关 + - cx.script: 组件扩展功能脚本,例如为ScrollView扩展下拉刷新能力 + - cx.serv: 服务交互相关 + - cx.sys: 系统环境和配置相关 +- 在原生层面,cx-cocos包括: + - cxnative: 原生JSB接口类,对应于cx.native的实现 + - sysIntf: 内置的系统原生类,用于获取包名、环境等 + - maskIntf:内置的遮罩原生类,用于给原生UI添加遮罩 + +>**cx-cocos运行机制** +- app启动首先加载boot.js,处理热更新,然后加载assets的main.js、cc.js等 +- app加载cc.js后,加载项目js,cx作为项目的一部分被加载,cx作为全局对象存储于window.cx +- 在你的组件脚本中,你不需要import cx-cocos的任何脚本,因为它是全局的,直接使用就可以 +- **整个app只有一个场景,所有页面都是预制资源** + - 在主场景中有一个根节点RootNode,负责滑动事件、android返回键的处理 + - 你在config.ts中定义的startPage,在主场景启动时,被addPage到RootNode中 + - 其他页面你可以通过addPage或showPage方法显示,默认会运行与页面同名的脚本(可在该方法的参数中指定加载的脚本) + - 通过addPage或showPage方法显示的页面,它们的parent都是RootNode + - 在addPage或showPage方法回调参数中,你可以向子页面传递参数或控制子页面 + - 如果页面定义了onChildPageClosed方法,那么子页面在关闭时,会触发这个方法 + - 你可以自定义页面进入和退出时的动画 +- cx-cocos定义和实现了通用的原生交互方式 + - 通过cx.native.ins("名称").call("方法", [...参数], 回调方法)调用原生方法 + - 分别在iOS的jsIntf-ios.mm、android的jsIntf.java定义你自己的“名称”处理类 + + +## 3 如何运行demo app +1. 安装cocos creator 3.1.1 +2. 确保cx-framework3.1和cx3-demo在同一目录下 +3. iOS/mac环境:在xcode中打开cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj,运行 +4. android环境:在android studio中打开cx3-demo/project/cxdemo.android,运行 +```typescript +* 在iOS/mac、android上编译或运行demo,你可以不需要打开cocos creator +* android的video遮罩暂未完成(技术困难,如果你有好的实现方式,请告诉我) +``` + + +## 4 如何使用cx-cocos开始一个自己的项目 +1. 使用cocos creator3.1.1创建一个项目,与cx-framework3.1在同一目录下 +```typescript +* 建议你使用cocos creator3.1.1 (2021.06.01发布) +* 如果你使用的是creator3.1.0,可能需要重新编译cx-framework3.1中.so和.a + 重新编译前,可使用vscode编辑器,查找3.1.1,全部替换成3.1.0 +* 如果你使用的是creator3.0.x,那么cx-framework3.1中的libs工程不适用,你需要从creator构建生成的项目中,提取cocos2d(支持3.0.x的框架我并未上传至git,如有需要请联系我) +``` +2. 拷贝cx3-demo中的tsconfig.json文件和project目录到你的项目目录下 +```typescript +* 拷贝tsconfig.json的目的仅仅是因为——它定义了cx.d.ts的引用,你也可以不拷贝而自行定义: +"compilerOptions": {"types": ["../cx-framework3.1/cx"]} +``` +3. 根据自己的需要,修改project目录内的工程的内容 +4. creator项目设置 + - 项目数据 + - 设计宽度:750 + - 设计高度:1334 + - 适配屏幕宽度:是 + - 适配屏幕高度:否 + - 功能裁剪: + - 去掉3D + - 去掉2D中的:2D物理系统、2D相交检测算法、2D粒子系统、Tiled地图、Spine动画 +5. creator构建发布设置: + - 发布路径:不要填写成project,那会弄乱你的project目录,建议设置为native或build + - MD5缓存:不要勾选 + - 替换插屏:**勾选,并且最小显示时间设置为0** + - 屏幕方向(Orientation):只勾选portrait + + +## 5 问题和技术支持 diff --git a/README.md b/README.md index 612e583..69d5b60 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,291 @@ +todo: Waiting for English translation + # cx-cocos -App development framework based on cocos creator3.1.0 +**一个基于cocos creator3.1.1的应用App和游戏开发框架** + +关键词:cocos creator、应用开发、App开发、游戏开发、跨平台、框架 + + cocos creator是一个开源的游戏开发引擎,在游戏开发方面,拥有大量开发者。然而在应用App方面,却少有人使用,cx-cocos的出现,填补了cocos creator在应用App开发上的空白。 + + 使用cx-cocos,你可以轻松愉快地开发出一个跨平台应用App,包括ios、mac、android、web等,当然你也可以使用cx-cocos开发游戏,这是一个高效简洁的开发框架,极大提升开发者的效率。 + +**本说明文档包括以下内容:** +- cx-cocos主要功能 +- cx-cocos结构和原理 +- 如何运行demo app +- 如何使用cx-cocos开始一个自己的项目 +- 问题和技术支持 + + +## 1. 主要功能 +**cx-cocos的主要功能包括以下内容:** +- 应用App的核心UI交互 +- 页面和组件访问、资源访问、远程服务访问 +- 与原生代码的交互 +- 真正的启动屏 +- 热更新 + + +### 1.1 应用App的核心UI交互 +---- + cx-cocos在页面的显示与交互细节上,与iOS原生App有着相似的体验, + 包括页面的进入退出与手势、提示弹窗、ScrollView、Loading等待、选择器等等。 + cx3-demo是一个demo,建议你从它入手,了解cx-cocos。 + +- **屏幕适配:** 通常情况下,应用App是宽度适应(fitWidth)、高度随着屏幕高度自动铺满。cx-cocos提供了一个“最小设计宽/高度”的配置,即使在浏览器或Pad上,App也能按最佳的方式显示界面——你只需按你的设计尺寸来设计UI。 + +- **刘海屏适配:** 对于iphoneX等屏幕,通过添加cx.safearea脚本,可自动调节标题栏、内容层、底部导航栏的高度和位置。 + +- **界面进入与退出:** 动画进入与退出、手势划动退出、上一页面随动、阴影效果、响应android返回键。 + +- **对话框:** Alert提示框、Confirm确认框。框架还提供了一种Hint动画文字提示,你可以多点击几次试试。 + +- **选择器:** 框架提供了1栏或多栏的选择器,你可以轻松地实现年月日选择、年月选择、文字或对象列表选择。 + +- **ScrollView:** 扩展了下拉刷新、上滑增量添加数据的能力。 + +- **PageView:** 扩展了定时自动下一页、循环播放、点击回调的能力。 + +- **等待动画:** 可以在页面正中或任意控件内显示Loading动画,并且有延时显示能力,这在查询数据时非常实用,比如0.5秒后还没有返回数据,才显示Loading动画。 + +- **原生视图:** 原生UI在cocos UI中显示,并且随着ScrollView滚动或窗体滑动;原生UI遮罩能力,例如对话弹框、标题栏在原生UI之上显示,不被遮挡。 + + +### 1.2 页面和组件访问、资源访问、远程服务访问 +---- + 操作UI组件在应用开发中非常频繁,cx-cocos提供了便捷的方式对组件进行访问和操作。 + +| UI常用方法 | 说明 | +| ---- | ---- | +| cx.sw | 适配后的屏幕宽度 | +| cx.sh | 适配后的屏幕高度 | +| cx.gn(pageOrNode, nodeName) | 获取场景树中的节点 | +| setTouchCallback(page, callback, ...params) | 给Node添加点击事件 | +| cx.hint(content) | 显示提示 | +| cx.alert(content, callback?, labelOK?) | 显示对话窗 | +| cx.confrm(content, callback?, labelOK?, labelCancel?) | 显示确认窗 | +| cx.showLoading(page, parentNode, delayShowSeconds?) | 显示等待动画 | +| cx.removeLoading(parentNode) | 移除等待动画 | +| cx.addPage(parentNode, prefabName, scripts?, callbackOrParams, runAction?) | 添加一个页面 | +| cx.showPage(prefabName, scripts?, callbackOrParams) | 添加一个页面(动画进入) | +| cx.closePage(pageOrSender) | 关闭本页面 | +| | | + +**示例代码:** +```typescript +var lblTitle: Node = cx.gn(this, "lblTitle"); //获取场景树中的名称为lblTitle的节点 + +//给lblTitle添加一个点击事件 +lblTitle.setTouchCallback(this, this.myClick); + +//你也可以定义回调时的参数: +lblTitle.setTouchCallback(this, this.myClick, 1, "a", {tip:"任意类型和数量的参数"}); + +myClick(sender, p1, p2, p3) +{ + //sender = lblTitle + //p1 = 1 + //p2 = "a" + //p3 = {remark:"任意类型和数量的参数"} +} + +cx.showPage("ui/pageChild"); //显示ui/pageChild.prefab +cx.hint("cx.hint(content)"); +cx.alert("cx.alert(content, callback, labelOk)"); +cx.confirm("cx.confirm(content, callback, labelOk, labelCancel)", cx.hint); +cx.showLoading(this); +cx.removeLoading(this); +cx.closePage(this); + +//给scrollView添加增量新增数据能力 +cx.script.scrollView.initDeltaInsert(this, "view", this.queryData); + +//给scrollView添加下拉刷新能力 +cx.script.scrollView.initDropRefresh(this, "view", this.refreshData); + +//给PageView添加自动循环滚动能力 +cx.script.pageView.initAutoScroll(this, "viewBanner", 2, true, this.onBannerClick); +```` + +| 资源常用方法 | 说明 | +| ---- | ---- | +| cx.setImageFromRes(spriteOrNode, prefab, sizeMode?, callback?) | 给节点设置图片(从resources) | +| cx.setImageFromBundle(spriteOrNode, prefab, sizeMode?, callback?) | 给节点设置图片(从bundle) | +| cx.setImageFromRemote(spriteOrNode, url, localPath?, sizeMode?, callback?) | 给节点设置图片(从远程url,存储至本地localPath,并优先从localPath加载图片) | +| cx.loadBundleRes(prefab, callback?) | 加载1个或多个prefab | +| | | + + +| 远程访问常用方法 | 说明 | +| ---- | ---- | +| cx.call(url, callback?, context?) | 调用服务端服务(call方式) | +| cx.post(url, data?, callback?, context?) | 调用服务端服务(post方式) | +| cx.upload(url, filePath, callback?) | 调用服务端服务,上传文件 | +| cx.setCommonHeaders(headers: string[]) | 设置http请求的默认headers | +| cx.loadFile(url, localPath?, callback?) | 从url加载文件,存储至本地并优先从本地加载 | +| cx.loadAsset(url: string, callback?) | 从url加载Asset | +| | | + + +| utils常用方法 | 说明 | +| ---- | ---- | +| cx.utils.xxx | cx.func中定义了常用的工具方法,如时间等,具体参见cx.d.ts | +| | | + + +### 1.3 与原生代码的交互 +---- + cx-cocos提供了一个cxnative原生类,通过它可以方便地与原生代码、第三方SDK交互。 + 与iOS/mac的交互是通过jsb/c++ ———— 避免了苹果审核风险 + 与android的交互是通过jsb.reflection + + * 可参照demo中的SystemIntf编写你自己的原生类 + +**原生类的定义:** +iOS/mac:在jsIntf.cpp中定义你的类名和处理类,类继承自cxDefine.h中的NativeIntfClass +android:在jsIntf.java中定义你的类名和处理类 + +- 在JavaScript/TypeScript中调用原生方法: +```typescript +cx.native.ins("className").call("functionName", [...params], callback); +```` + +- 在iOS/mac中调用JS方法: +```c++ +this->callback(int, string); +```` + +- 在android中调用JS方法: +```java +NativeIntf.callJs("className", int, string); +```` + + +### 1.4 真正的启动屏 +---- + cocos creator提供了一个定时长的启动画面,你无法在首页渲染完成后再移除画面,也无法提前移除。并且它只能在加载cc.js之后显示,而不是在App真正启动时。 + cx-cocos针对iOS/mac和Android,提供了原生的启动画面处理,你可以在App启动时显示,在任意时刻移除。 + +iOS/mac启动屏实现代码:见demo中的AppController.mm +android启动屏实现代码:见demo中的CocosActivity.java + +```typescript +// ios/Mac: LaunchImage.png +// android: lanuch_image.png +// 移除启动屏,如果你在config.ts中配置了自动移除,那么不需要执行这句,cx会在开始页(startPage)加入场景时自动调用 +cx.removeLaunchImage(); +```` + + +### 1.5 热更新 +---- + cx-cocos在执行main.js之前执行热更新。 + cx-cocos提供了一个update.js工具用于生成热更新需要的manifest文件,执行命令为: + $ node update.js -v 1.0 + * 在执行之前,你需要将update.js中的更新地址替换为你的服务器地址。 + +****实现原理:见demo中的boot.js*** + + +## 2. cx-cocos结构和原理 + +>**cx-framework目录结构:** +- **cocos3-libs:** 这里是从creator构建项目中提取的引擎libs,我们把它独立出来,所有项目就只需要assets + - **cocos-libcc:** cocos android jar,你的android工程需要依赖它 + - **cocos-libso:** cocos android so,编译生成libcocos.so的工程,android需要这个.so + - **cocos3-ios.xcodeproj:** 编译生成libcocos3 iOS.a的工程,iOS需要这个.a + - **cocos3-mac.xcodeproj:** 编译生成libcocos3 Mac.a的工程,mac需要这个.a +- **cx:** cx-cocos的ts代码,你的creator工程需要它,请拷贝到你项目中的assets目录,或在assets目录中建立链接cx链接到它,链接命令:ln -s ../../cx-framework3.1/cx cx + - **core:** cx-cocos框架实现类 + - **prefab:** cx-cocos内置的预制资源 + - **scripts:** cx-cocos内置的组件脚本 + - **template:** cx-cocos提供的组件模板,在设计页面时可以使用它 +- **cx-native:** 负责原生交互,你的iOS/mac工程需要它,android不需要(它已经在libcocos.so中) +- **cx.d.ts:** cx-cocos的TypeScript声明文件 + + +>**demo的目录结构:** +- **project:** 原生工程都在这里了(并非creator构建生成的工程) + - **assets: 注意,** 它来源于cocos构建发布,你可以创建iOS、mac、android任意一种构建,将生成的assets拷贝到这里,建议你在这里建立一个assets链接,链接到你构建生成的assets目录,这样在每次重新构建后就不需再拷贝assets,链接命令:ln -s 路径 assets + - **boot:** 启动js和热更新manifest文件 + - **cxdemo.android:** demo android studio工程 + - **cxdemo.ios:** demo iOS/mac工程 + - **statics:** 一些仅供原生使用的静态资源 + - **update.js:** 生成热更新文件的脚本 +- **其他目录:** cocos creator生成的目录 + + +>**cx-cocos设计结构** +- 在ts层面,cx-cocos包括: + - cx: 常用变量、常用方法、UI方法 + - cx.native: 与原生交互相关 + - cx.picker: 选择器相关 + - cx.res: 资源处理相关 + - cx.script: 组件扩展功能脚本,例如为ScrollView扩展下拉刷新能力 + - cx.serv: 服务交互相关 + - cx.sys: 系统环境和配置相关 +- 在原生层面,cx-cocos包括: + - cxnative: 原生JSB接口类,对应于cx.native的实现 + - sysIntf: 内置的系统原生类,用于获取包名、环境等 + - maskIntf:内置的遮罩原生类,用于给原生UI添加遮罩 + +>**cx-cocos运行机制** +- app启动首先加载boot.js,处理热更新,然后加载assets的main.js、cc.js等 +- app加载cc.js后,加载项目js,cx作为项目的一部分被加载,cx作为全局对象存储于window.cx +- 在你的组件脚本中,你不需要import cx-cocos的任何脚本,因为它是全局的,直接使用就可以 +- **整个app只有一个场景,所有页面都是预制资源** + - 在主场景中有一个根节点RootNode,负责滑动事件、android返回键的处理 + - 你在config.ts中定义的startPage,在主场景启动时,被addPage到RootNode中 + - 其他页面你可以通过addPage或showPage方法显示,默认会运行与页面同名的脚本(可在该方法的参数中指定加载的脚本) + - 通过addPage或showPage方法显示的页面,它们的parent都是RootNode + - 在addPage或showPage方法回调参数中,你可以向子页面传递参数或控制子页面 + - 如果页面定义了onChildPageClosed方法,那么子页面在关闭时,会触发这个方法 + - 你可以自定义页面进入和退出时的动画 +- cx-cocos定义和实现了通用的原生交互方式 + - 通过cx.native.ins("名称").call("方法", [...参数], 回调方法)调用原生方法 + - 分别在iOS的jsIntf-ios.mm、android的jsIntf.java定义你自己的“名称”处理类 + + +## 3 如何运行demo app +1. 安装cocos creator 3.1.1 +2. 确保cx-framework3.1和cx3-demo在同一目录下 +3. iOS/mac环境:在xcode中打开cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj,运行 +4. android环境:在android studio中打开cx3-demo/project/cxdemo.android,运行 +```typescript +* 在iOS/mac、android上编译或运行demo,你可以不需要打开cocos creator +* android的video遮罩暂未完成(技术困难,如果你有好的实现方式,请告诉我) +``` + + +## 4 如何使用cx-cocos开始一个自己的项目 +1. 使用cocos creator3.1.1创建一个项目,与cx-framework3.1在同一目录下 +```typescript +* 建议你使用cocos creator3.1.1 (2021.06.01发布) +* 如果你使用的是creator3.1.0,可能需要重新编译cx-framework3.1中.so和.a + 重新编译前,可使用vscode编辑器,查找3.1.1,全部替换成3.1.0 +* 如果你使用的是creator3.0.x,那么cx-framework3.1中的libs工程不适用,你需要从creator构建生成的项目中,提取cocos2d(支持3.0.x的框架我并未上传至git,如有需要请联系我) +``` +2. 拷贝cx3-demo中的tsconfig.json文件和project目录到你的项目目录下 +```typescript +* 拷贝tsconfig.json的目的仅仅是因为——它定义了cx.d.ts的引用,你也可以不拷贝而自行定义: +"compilerOptions": {"types": ["../cx-framework3.1/cx"]} +``` +3. 根据自己的需要,修改project目录内的工程的内容 +4. creator项目设置 + - 项目数据 + - 设计宽度:750 + - 设计高度:1334 + - 适配屏幕宽度:是 + - 适配屏幕高度:否 + - 功能裁剪: + - 去掉3D + - 去掉2D中的:2D物理系统、2D相交检测算法、2D粒子系统、Tiled地图、Spine动画 +5. creator构建发布设置: + - 发布路径:不要填写成project,那会弄乱你的project目录,建议设置为native或build + - MD5缓存:不要勾选 + - 替换插屏:**勾选,并且最小显示时间设置为0** + - 屏幕方向(Orientation):只勾选portrait + + +## 5 问题和技术支持 + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.pbxproj b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.pbxproj new file mode 100644 index 0000000..28b9c4a --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.pbxproj @@ -0,0 +1,3232 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 46916E54264CD4B0000C7B53 /* AudioEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C3473FC72D4445959D385235 /* AudioEngine.cpp */; }; + 46916E55264CD4B0000C7B53 /* AudioCache.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5576971E1DA4B87A6A8E5FF /* AudioCache.mm */; }; + 46916E56264CD4B0000C7B53 /* AudioDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 60572206A6064C93924B972D /* AudioDecoder.mm */; }; + 46916E57264CD4B0000C7B53 /* AudioEngine-inl.mm in Sources */ = {isa = PBXBuildFile; fileRef = B8437033FDF748AF86CFE936 /* AudioEngine-inl.mm */; }; + 46916E58264CD4B0000C7B53 /* AudioPlayer.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB0787D169484EA594A71278 /* AudioPlayer.mm */; }; + 46916E59264CD4B0000C7B53 /* AutoreleasePool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC4576FD5A5947A482C0C055 /* AutoreleasePool.cpp */; }; + 46916E5A264CD4B0000C7B53 /* Data.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2433F97C19145C4BC9C4409 /* Data.cpp */; }; + 46916E5B264CD4B0000C7B53 /* Log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9239E07143C4C5DAF1F9254 /* Log.cpp */; }; + 46916E5C264CD4B0000C7B53 /* Ref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CAD5488EFD7445FBBD6918AB /* Ref.cpp */; }; + 46916E5D264CD4B0000C7B53 /* Scheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AE81D16E098D4859964635E7 /* Scheduler.cpp */; }; + 46916E5E264CD4B0000C7B53 /* StringHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 990C85AB6F964DD88D7AA9D4 /* StringHandle.cpp */; }; + 46916E5F264CD4B0000C7B53 /* StringUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36CC7CDE38514CC5A596D5BD /* StringUtil.cpp */; }; + 46916E60264CD4B0000C7B53 /* ThreadPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF786668B2634D4D8A6C0CBF /* ThreadPool.cpp */; }; + 46916E61264CD4B0000C7B53 /* UTF8.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C4EB3ED6BD524BD0A78ABEED /* UTF8.cpp */; }; + 46916E62264CD4B0000C7B53 /* Utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D7E76A2295045C68672DE12 /* Utils.cpp */; }; + 46916E63264CD4B0000C7B53 /* Value.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 230D3A277316486EACBE409D /* Value.cpp */; }; + 46916E64264CD4B0000C7B53 /* ZipUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D554808A995B4F599991D4AF /* ZipUtils.cpp */; }; + 46916E65264CD4B0000C7B53 /* astc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A99006AD0CE2475998277204 /* astc.cpp */; }; + 46916E66264CD4B0000C7B53 /* base64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C9A8131692A4872BD9F900B /* base64.cpp */; }; + 46916E67264CD4B0000C7B53 /* csscolorparser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 495D39772DF945D8B449F246 /* csscolorparser.cpp */; }; + 46916E68264CD4B0000C7B53 /* etc1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 42F05FDC21E9406A91CD6D55 /* etc1.cpp */; }; + 46916E69264CD4B0000C7B53 /* etc2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09ED723A3FF945218563E653 /* etc2.cpp */; }; + 46916E6A264CD4B0000C7B53 /* TFJobGraph.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2EB4130BBA2461BB31666E6 /* TFJobGraph.cpp */; }; + 46916E6B264CD4B0000C7B53 /* TFJobSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E42BCD67BD5D4820850A2A9D /* TFJobSystem.cpp */; }; + 46916E6C264CD4B0000C7B53 /* AllocatedObj.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CCC4E6183C734752B2F0C79B /* AllocatedObj.cpp */; }; + 46916E6D264CD4B0000C7B53 /* JeAlloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E18B38DDAB2452898319BF2 /* JeAlloc.cpp */; }; + 46916E6E264CD4B0000C7B53 /* MemTracker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 780AA2CC68DA4767AE7A7ED4 /* MemTracker.cpp */; }; + 46916E6F264CD4B0000C7B53 /* Memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E18C365ECD84080AE61633E /* Memory.cpp */; }; + 46916E70264CD4B0000C7B53 /* NedPooling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E08C62B7C2A4D438BF319C1 /* NedPooling.cpp */; }; + 46916E71264CD4B0000C7B53 /* ConditionVariable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 157CE4FD1ED34A4ABB609302 /* ConditionVariable.cpp */; }; + 46916E72264CD4B0000C7B53 /* MessageQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A70B328F099943EB9B941798 /* MessageQueue.cpp */; }; + 46916E73264CD4B0000C7B53 /* Semaphore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 05B85AE9BE88458483380E6E /* Semaphore.cpp */; }; + 46916E74264CD4B0000C7B53 /* ThreadPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BE41298908E425CA56EA0D9 /* ThreadPool.cpp */; }; + 46916E75264CD4B0000C7B53 /* ThreadSafeLinearAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1029EECBAFF545A399A8B4F8 /* ThreadSafeLinearAllocator.cpp */; }; + 46916E76264CD4B0000C7B53 /* jsb_audio_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2103ED08543E4AA0AA79A577 /* jsb_audio_auto.cpp */; }; + 46916E77264CD4B0000C7B53 /* jsb_cocos_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A724B7BB4C764059B09C9D3B /* jsb_cocos_auto.cpp */; }; + 46916E78264CD4B0000C7B53 /* jsb_dragonbones_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B12C64C329F4E7E9DE8F8FA /* jsb_dragonbones_auto.cpp */; }; + 46916E79264CD4B0000C7B53 /* jsb_editor_support_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D2DD4EA3B1498A887573EE /* jsb_editor_support_auto.cpp */; }; + 46916E7A264CD4B0000C7B53 /* jsb_extension_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9972FB4CC27B4952861F1491 /* jsb_extension_auto.cpp */; }; + 46916E7B264CD4B0000C7B53 /* jsb_gfx_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9BE2B396D28E4577BF82B8DB /* jsb_gfx_auto.cpp */; }; + 46916E7C264CD4B0000C7B53 /* jsb_network_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F71E786B7D34137853EF773 /* jsb_network_auto.cpp */; }; + 46916E7D264CD4B0000C7B53 /* jsb_pipeline_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21524CC012CF47C1ADE811D8 /* jsb_pipeline_auto.cpp */; }; + 46916E7E264CD4B0000C7B53 /* jsb_video_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4DF32B8FC274D3C9629D643 /* jsb_video_auto.cpp */; }; + 46916E7F264CD4B0000C7B53 /* jsb_webview_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 008C800BC4A24A7BBE700178 /* jsb_webview_auto.cpp */; }; + 46916E80264CD4B0000C7B53 /* BufferAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EAAF83FB72DD4F83A568CEC4 /* BufferAllocator.cpp */; }; + 46916E81264CD4B0000C7B53 /* BufferPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D67FE7EF57645C8B7F32B9D /* BufferPool.cpp */; }; + 46916E82264CD4B0000C7B53 /* ObjectPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 23610B379C0F4CDD80418247 /* ObjectPool.cpp */; }; + 46916E83264CD4B0000C7B53 /* jsb_dop.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 074A03517A98458DBB5BF896 /* jsb_dop.cpp */; }; + 46916E84264CD4B0000C7B53 /* EventDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3B249B0EE5FD4C6E8EB901AE /* EventDispatcher.cpp */; }; + 46916E85264CD4B0000C7B53 /* HandleObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6003F87A6A5F4A919F251F01 /* HandleObject.cpp */; }; + 46916E86264CD4B0000C7B53 /* MappingUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 25C857C5341B49E68E484BBA /* MappingUtils.cpp */; }; + 46916E87264CD4B0000C7B53 /* RefCounter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AF6398971784A3EB9B90004 /* RefCounter.cpp */; }; + 46916E88264CD4B0000C7B53 /* State.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4FCF7B206314416584846C13 /* State.cpp */; }; + 46916E89264CD4B0000C7B53 /* Value.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB425C23A99A441F85EA19B5 /* Value.cpp */; }; + 46916E8A264CD4B0000C7B53 /* config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22A34CA60C484F9BB439A7B1 /* config.cpp */; }; + 46916E8B264CD4B0000C7B53 /* Class.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7242BB79FCF146808A0DD7BF /* Class.cpp */; }; + 46916E8C264CD4B0000C7B53 /* Object.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 76E63E9819E04C899ABD05F3 /* Object.cpp */; }; + 46916E8D264CD4B0000C7B53 /* ObjectWrap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB98EBF520C74708A2543A83 /* ObjectWrap.cpp */; }; + 46916E8E264CD4B0000C7B53 /* ScriptEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C2986B2F93B4B078AA1B2FF /* ScriptEngine.cpp */; }; + 46916E8F264CD4B0000C7B53 /* Utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 543B4E5A68D6494C96B06038 /* Utils.cpp */; }; + 46916E90264CD4B0000C7B53 /* SHA1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F3AF47508B44272A7F0AFA7 /* SHA1.cpp */; }; + 46916E91264CD4B0000C7B53 /* env.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6481EB0B7BD8498CA4934CA3 /* env.cpp */; }; + 46916E92264CD4B0000C7B53 /* http_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = E55F7610FB284ADE80D44EF9 /* http_parser.c */; }; + 46916E93264CD4B0000C7B53 /* inspector_agent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC69AF6CAC1E4C7F82239CEC /* inspector_agent.cpp */; }; + 46916E94264CD4B0000C7B53 /* inspector_io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2ABC50A40A44E49AD383F5D /* inspector_io.cpp */; }; + 46916E95264CD4B0000C7B53 /* inspector_socket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7ACD8AB1F6F8446EA5664A88 /* inspector_socket.cpp */; }; + 46916E96264CD4B0000C7B53 /* inspector_socket_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 968512EAF221492389D52233 /* inspector_socket_server.cpp */; }; + 46916E97264CD4B0000C7B53 /* node.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 819F0BD3C3754CEDA18CD6D9 /* node.cpp */; }; + 46916E98264CD4B0000C7B53 /* node_debug_options.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D78EF58CD1024F35A07F1FCA /* node_debug_options.cpp */; }; + 46916E99264CD4B0000C7B53 /* util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F1D082FEF4164E81B0563713 /* util.cpp */; }; + 46916E9A264CD4B0000C7B53 /* JavaScriptObjCBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 69227C0C0FD2430BA0419274 /* JavaScriptObjCBridge.mm */; }; + 46916E9B264CD4B0000C7B53 /* jsb_classtype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84F9387623614AB780AE7116 /* jsb_classtype.cpp */; }; + 46916E9C264CD4B0000C7B53 /* jsb_cocos_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D53BF6C0B4C45BC8E88802B /* jsb_cocos_manual.cpp */; }; + 46916E9D264CD4B0000C7B53 /* jsb_conversions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B474B46BBB224CADA1FE171B /* jsb_conversions.cpp */; }; + 46916E9E264CD4B0000C7B53 /* jsb_dragonbones_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9757F33650CB4411820E3FBC /* jsb_dragonbones_manual.cpp */; }; + 46916E9F264CD4B0000C7B53 /* jsb_gfx_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F9D4F5B38BEC44668268EF7B /* jsb_gfx_manual.cpp */; }; + 46916EA0264CD4B0000C7B53 /* jsb_global.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 081D14196F204C699C131E49 /* jsb_global.cpp */; }; + 46916EA1264CD4B0000C7B53 /* jsb_global_init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8746D4997A034CCA9B73FA65 /* jsb_global_init.cpp */; }; + 46916EA2264CD4B0000C7B53 /* jsb_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3BFC607B68A046AB99499D02 /* jsb_helper.cpp */; }; + 46916EA3264CD4B0000C7B53 /* jsb_network_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D9C72F52CE254F5D99FEEAFB /* jsb_network_manual.cpp */; }; + 46916EA4264CD4B0000C7B53 /* jsb_pipeline_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 54B0ABAD950E42C580584355 /* jsb_pipeline_manual.cpp */; }; + 46916EA5264CD4B0000C7B53 /* jsb_platfrom_apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 17672CC4041747BBA4AA6DFD /* jsb_platfrom_apple.mm */; }; + 46916EA6264CD4B0000C7B53 /* jsb_socketio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F4BBE9613414B7CBB8E6DE4 /* jsb_socketio.cpp */; }; + 46916EA7264CD4B0000C7B53 /* jsb_websocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C369A28DB8C74706A82452DA /* jsb_websocket.cpp */; }; + 46916EA8264CD4B0000C7B53 /* jsb_xmlhttprequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5095379B1F0D49529AF38AEB /* jsb_xmlhttprequest.cpp */; }; + 46916EA9264CD4B0000C7B53 /* IOBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87FA5E46D49A4EE4A77F2544 /* IOBuffer.cpp */; }; + 46916EAA264CD4B0000C7B53 /* IOTypedArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97B4BB89B11D482E815D782E /* IOTypedArray.cpp */; }; + 46916EAB264CD4B0000C7B53 /* MeshBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC8D3FA59225416DAA4C642C /* MeshBuffer.cpp */; }; + 46916EAC264CD4B0000C7B53 /* MiddlewareManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABDCDE6921ED42F8A25EC85E /* MiddlewareManager.cpp */; }; + 46916EAD264CD4B0000C7B53 /* SharedBufferManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E6A5FCFE3DDB426DBD29C015 /* SharedBufferManager.cpp */; }; + 46916EAE264CD4B0000C7B53 /* TypedArrayPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DE05142D06E64C82A7E5202E /* TypedArrayPool.cpp */; }; + 46916EAF264CD4B0000C7B53 /* ArmatureCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F7FFFDA071E4E16BAF60ABB /* ArmatureCache.cpp */; }; + 46916EB0264CD4B0000C7B53 /* ArmatureCacheMgr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 227F3F1A7BA04AB991A0775E /* ArmatureCacheMgr.cpp */; }; + 46916EB1264CD4B0000C7B53 /* CCArmatureCacheDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 19F8CA68856F4B558049D2F3 /* CCArmatureCacheDisplay.cpp */; }; + 46916EB2264CD4B0000C7B53 /* CCArmatureDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DCF4C1C097A4EE4911121DF /* CCArmatureDisplay.cpp */; }; + 46916EB3264CD4B0000C7B53 /* CCFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB565196464F4440B66E44B6 /* CCFactory.cpp */; }; + 46916EB4264CD4B0000C7B53 /* CCSlot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82C118FE008F4D22A9109768 /* CCSlot.cpp */; }; + 46916EB5264CD4B0000C7B53 /* CCTextureAtlasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CA1E7552A71B4C5FB1EB94BC /* CCTextureAtlasData.cpp */; }; + 46916EB6264CD4B0000C7B53 /* Animation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBC6F8CB21B4409086C23179 /* Animation.cpp */; }; + 46916EB7264CD4B0000C7B53 /* AnimationState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D72F9F1A2CDD455BBB59E7CB /* AnimationState.cpp */; }; + 46916EB8264CD4B0000C7B53 /* BaseTimelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 99673F5A7B2E4A9A97173EAE /* BaseTimelineState.cpp */; }; + 46916EB9264CD4B0000C7B53 /* TimelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2457A84FC0304219942203FD /* TimelineState.cpp */; }; + 46916EBA264CD4B0000C7B53 /* WorldClock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF00B05D083048C5B5A7CDF0 /* WorldClock.cpp */; }; + 46916EBB264CD4B0000C7B53 /* Armature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 042B1BE2B0D04DE5994E319E /* Armature.cpp */; }; + 46916EBC264CD4B0000C7B53 /* Bone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA7040B0BE7C49CC9E1F1503 /* Bone.cpp */; }; + 46916EBD264CD4B0000C7B53 /* Constraint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F913818CD883456BA90A9A2D /* Constraint.cpp */; }; + 46916EBE264CD4B0000C7B53 /* DeformVertices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1709E5FEE584462992582F4C /* DeformVertices.cpp */; }; + 46916EBF264CD4B0000C7B53 /* Slot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3D69820BB35B4A8B957BFDAA /* Slot.cpp */; }; + 46916EC0264CD4B0000C7B53 /* TransformObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CAC49A1BEBCE4463BC97E147 /* TransformObject.cpp */; }; + 46916EC1264CD4B0000C7B53 /* BaseObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 779B83DE4F6C4E9FA6233FA6 /* BaseObject.cpp */; }; + 46916EC2264CD4B0000C7B53 /* DragonBones.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B641AA6C9704DE8B6450B6E /* DragonBones.cpp */; }; + 46916EC3264CD4B0000C7B53 /* EventObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30AA69A4E561414A8CE0DD96 /* EventObject.cpp */; }; + 46916EC4264CD4B0000C7B53 /* BaseFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A8025F2584FF88379D29D /* BaseFactory.cpp */; }; + 46916EC5264CD4B0000C7B53 /* Point.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A0A2FF5240A488EA6DA7C0B /* Point.cpp */; }; + 46916EC6264CD4B0000C7B53 /* Transform.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74602AD0E04841C0B5953770 /* Transform.cpp */; }; + 46916EC7264CD4B0000C7B53 /* AnimationConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6F52B3AD3A2B4F4D9A23C3C2 /* AnimationConfig.cpp */; }; + 46916EC8264CD4B0000C7B53 /* AnimationData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7980DBB9BDC4F6682E1C3CA /* AnimationData.cpp */; }; + 46916EC9264CD4B0000C7B53 /* ArmatureData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6E2A691669E145D2A6171D79 /* ArmatureData.cpp */; }; + 46916ECA264CD4B0000C7B53 /* BoundingBoxData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 881E5DA6F6704358ACA4AD9C /* BoundingBoxData.cpp */; }; + 46916ECB264CD4B0000C7B53 /* CanvasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEA1174A596C46C390C439C3 /* CanvasData.cpp */; }; + 46916ECC264CD4B0000C7B53 /* ConstraintData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39FC62C6354E40AEA557EC6B /* ConstraintData.cpp */; }; + 46916ECD264CD4B0000C7B53 /* DisplayData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B232B22F689E4099B65A1565 /* DisplayData.cpp */; }; + 46916ECE264CD4B0000C7B53 /* DragonBonesData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 079EBEF6133D4B5CBAFD29A4 /* DragonBonesData.cpp */; }; + 46916ECF264CD4B0000C7B53 /* SkinData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC9552FD88DA4752B4EBF1D3 /* SkinData.cpp */; }; + 46916ED0264CD4B0000C7B53 /* TextureAtlasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8642E86EE4B04495B088081D /* TextureAtlasData.cpp */; }; + 46916ED1264CD4B0000C7B53 /* UserData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 821D878CC26E4CA6B3BBD788 /* UserData.cpp */; }; + 46916ED2264CD4B0000C7B53 /* BinaryDataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C55C9B7811B47ECBBD1A616 /* BinaryDataParser.cpp */; }; + 46916ED3264CD4B0000C7B53 /* DataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 360EDC7E95ED4047BCC0D427 /* DataParser.cpp */; }; + 46916ED4264CD4B0000C7B53 /* JSONDataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6712E681F1C4CB2BBE875F7 /* JSONDataParser.cpp */; }; + 46916ED5264CD4B0000C7B53 /* middleware-adapter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E47106F49E594EE5832E91C7 /* middleware-adapter.cpp */; }; + 46916ED6264CD4B0000C7B53 /* Geometry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7419D0DB0AF4119A6C265CB /* Geometry.cpp */; }; + 46916ED7264CD4B0000C7B53 /* Mat3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB613C43F85481883362D90 /* Mat3.cpp */; }; + 46916ED8264CD4B0000C7B53 /* Mat4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 559BCBB88088439A90C5119C /* Mat4.cpp */; }; + 46916ED9264CD4B0000C7B53 /* Math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 75157609C1944EEEB4AA6BB6 /* Math.cpp */; }; + 46916EDA264CD4B0000C7B53 /* MathUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB9B1D8D7A504CCB8E898EDF /* MathUtil.cpp */; }; + 46916EDB264CD4B0000C7B53 /* Quaternion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 758DAAFD1DD44862B27F3BB7 /* Quaternion.cpp */; }; + 46916EDC264CD4B0000C7B53 /* Vec2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D48B771F3B1B4F22BA25E9D9 /* Vec2.cpp */; }; + 46916EDD264CD4B0000C7B53 /* Vec3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09536B6590D24F58AFD1307A /* Vec3.cpp */; }; + 46916EDE264CD4B0000C7B53 /* Vec4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6C6E001B76B474A9705A1D9 /* Vec4.cpp */; }; + 46916EDF264CD4B0000C7B53 /* Vertex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 095F37C87BF44E5EB4421A09 /* Vertex.cpp */; }; + 46916EE0264CD4B0000C7B53 /* Downloader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF0192C790814847893B4182 /* Downloader.cpp */; }; + 46916EE1264CD4B0000C7B53 /* DownloaderImpl-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 99245B6BA27641CA95538F23 /* DownloaderImpl-apple.mm */; }; + 46916EE2264CD4B0000C7B53 /* HttpAsynConnection-apple.m in Sources */ = {isa = PBXBuildFile; fileRef = 795D206746D64CFA92F096B2 /* HttpAsynConnection-apple.m */; }; + 46916EE3264CD4B0000C7B53 /* HttpClient-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = B8EB0FF6028544AA8146EE8E /* HttpClient-apple.mm */; }; + 46916EE4264CD4B0000C7B53 /* HttpCookie.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0EEE197625AF4CAB88B844C1 /* HttpCookie.cpp */; }; + 46916EE5264CD4B0000C7B53 /* SocketIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22BB6DA02A14457BADE5E2D5 /* SocketIO.cpp */; }; + 46916EE6264CD4B0000C7B53 /* Uri.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BD4E79B12E049F18A3B5081 /* Uri.cpp */; }; + 46916EE7264CD4B0000C7B53 /* WebSocket-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD3B9717C889497D948999FD /* WebSocket-apple.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916EE8264CD4B0000C7B53 /* Application.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 487AFC006C584B149A58BFB1 /* Application.cpp */; }; + 46916EE9264CD4B0000C7B53 /* FileUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2740F716A1A747429E08DE39 /* FileUtils.cpp */; }; + 46916EEA264CD4B0000C7B53 /* Image.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D4391FFF967A434999A02B4E /* Image.cpp */; }; + 46916EEB264CD4B0000C7B53 /* SAXParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD125DE95A3A4236BCF23603 /* SAXParser.cpp */; }; + 46916EEC264CD4B0000C7B53 /* CanvasRenderingContext2D-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 949ADC1027B54A7A878EBDC2 /* CanvasRenderingContext2D-apple.mm */; }; + 46916EED264CD4B0000C7B53 /* Device-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1FF6128A03347E3AC758DD5 /* Device-apple.mm */; }; + 46916EEE264CD4B0000C7B53 /* FileUtils-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7EF25FD6ADE04547911B1B87 /* FileUtils-apple.mm */; }; + 46916EEF264CD4B0000C7B53 /* Application-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = DCBAD4713BF545E8A537E6EF /* Application-ios.mm */; }; + 46916EF0264CD4B0000C7B53 /* Device-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = B6CD38366B5642579E0D12AE /* Device-ios.mm */; }; + 46916EF1264CD4B0000C7B53 /* Reachability.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5358216808F0434CB780AB35 /* Reachability.cpp */; }; + 46916EF2264CD4B0000C7B53 /* View.mm in Sources */ = {isa = PBXBuildFile; fileRef = AEC2480E09404C44B1048D43 /* View.mm */; }; + 46916EF3264CD4B0000C7B53 /* DevicePass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C9E836CE146E428EBF82A3D0 /* DevicePass.cpp */; }; + 46916EF4264CD4B0000C7B53 /* DevicePassResourceTable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97D2945E0A754E58968086E2 /* DevicePassResourceTable.cpp */; }; + 46916EF5264CD4B0000C7B53 /* FrameGraph.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E642F9895DB04C0FBDA7CC2F /* FrameGraph.cpp */; }; + 46916EF6264CD4B0000C7B53 /* PassInsertPointManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC1793E166B94DDDB4563ED3 /* PassInsertPointManager.cpp */; }; + 46916EF7264CD4B0000C7B53 /* PassNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 658FC936FC9A45C795A1ED68 /* PassNode.cpp */; }; + 46916EF8264CD4B0000C7B53 /* PassNodeBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABDCBF397712469B997CACE6 /* PassNodeBuilder.cpp */; }; + 46916EF9264CD4B0000C7B53 /* VirtualResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB4C2BF922E5420FB0FCAB65 /* VirtualResource.cpp */; }; + 46916EFA264CD4B0000C7B53 /* BufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B098DAA9E20E4CFC9A113125 /* BufferAgent.cpp */; }; + 46916EFB264CD4B0000C7B53 /* CommandBufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D3C6AD992A0043498D83E33B /* CommandBufferAgent.cpp */; }; + 46916EFC264CD4B0000C7B53 /* DescriptorSetAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 986A5D3C8D5D47F382627E7A /* DescriptorSetAgent.cpp */; }; + 46916EFD264CD4B0000C7B53 /* DescriptorSetLayoutAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 04DB759CCCF044C689F94A67 /* DescriptorSetLayoutAgent.cpp */; }; + 46916EFE264CD4B0000C7B53 /* DeviceAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 55EBDBCBE2BB4EBAB420E61F /* DeviceAgent.cpp */; }; + 46916EFF264CD4B0000C7B53 /* FramebufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 774EF60923D34922BD7AEF2D /* FramebufferAgent.cpp */; }; + 46916F00264CD4B0000C7B53 /* InputAssemblerAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B0135429A32A43AC87A12B30 /* InputAssemblerAgent.cpp */; }; + 46916F01264CD4B0000C7B53 /* PipelineLayoutAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A165F068649348BB96C238BD /* PipelineLayoutAgent.cpp */; }; + 46916F02264CD4B0000C7B53 /* PipelineStateAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 66491A081DCD4EC8A9F01809 /* PipelineStateAgent.cpp */; }; + 46916F03264CD4B0000C7B53 /* QueueAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F9BABEBB70694C7CBFF0AA83 /* QueueAgent.cpp */; }; + 46916F04264CD4B0000C7B53 /* RenderPassAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6A321309C844A5BBDF385A /* RenderPassAgent.cpp */; }; + 46916F05264CD4B0000C7B53 /* SamplerAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB16F6021E96452FA72FCAC0 /* SamplerAgent.cpp */; }; + 46916F06264CD4B0000C7B53 /* ShaderAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D7228E4142CA4088842D684E /* ShaderAgent.cpp */; }; + 46916F07264CD4B0000C7B53 /* TextureAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74FAC6AE469F4D30A07AF015 /* TextureAgent.cpp */; }; + 46916F08264CD4B0000C7B53 /* GFXBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45792904B9B749C8A1C1A078 /* GFXBuffer.cpp */; }; + 46916F09264CD4B0000C7B53 /* GFXCommandBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0362BDC6636C4C5DA68299F0 /* GFXCommandBuffer.cpp */; }; + 46916F0A264CD4B0000C7B53 /* GFXContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147F80851F5A4168AB385380 /* GFXContext.cpp */; }; + 46916F0B264CD4B0000C7B53 /* GFXDef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E5977DABF19437F976B32A5 /* GFXDef.cpp */; }; + 46916F0C264CD4B0000C7B53 /* GFXDescriptorSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687E164A178846CDB76CE413 /* GFXDescriptorSet.cpp */; }; + 46916F0D264CD4B0000C7B53 /* GFXDescriptorSetLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F972151764DC4C52A94DD70B /* GFXDescriptorSetLayout.cpp */; }; + 46916F0E264CD4B0000C7B53 /* GFXDevice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBD1316354424935A627AAAC /* GFXDevice.cpp */; }; + 46916F0F264CD4B0000C7B53 /* GFXFramebuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D612CBE16B6A4517A6B81099 /* GFXFramebuffer.cpp */; }; + 46916F10264CD4B0000C7B53 /* GFXGlobalBarrier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F3C0A688DF7F4FCFA4F469F4 /* GFXGlobalBarrier.cpp */; }; + 46916F11264CD4B0000C7B53 /* GFXInputAssembler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C9A37B4D3CF240909B89B7CA /* GFXInputAssembler.cpp */; }; + 46916F12264CD4B0000C7B53 /* GFXObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 850113D269B647A59F16E144 /* GFXObject.cpp */; }; + 46916F13264CD4B0000C7B53 /* GFXPipelineLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E87FBBB29F0741C69EE7F6A6 /* GFXPipelineLayout.cpp */; }; + 46916F14264CD4B0000C7B53 /* GFXPipelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7533DA1F16044805BD3FCB68 /* GFXPipelineState.cpp */; }; + 46916F15264CD4B0000C7B53 /* GFXQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 856E1C8D7DBA4B2795223229 /* GFXQueue.cpp */; }; + 46916F16264CD4B0000C7B53 /* GFXRenderPass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C3A92DD763D4CB8AB200BAF /* GFXRenderPass.cpp */; }; + 46916F17264CD4B0000C7B53 /* GFXSampler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 63FBA71905704626831CF249 /* GFXSampler.cpp */; }; + 46916F18264CD4B0000C7B53 /* GFXShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5778400E13594F26A71929A6 /* GFXShader.cpp */; }; + 46916F19264CD4B0000C7B53 /* GFXTexture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 98655128708C4A75A43AC6D6 /* GFXTexture.cpp */; }; + 46916F1A264CD4B0000C7B53 /* GFXTextureBarrier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 376674892D404F5993BBC3DF /* GFXTextureBarrier.cpp */; }; + 46916F1B264CD4B0000C7B53 /* EmptyBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 66D41D4A0A1147D5A4FF8EEF /* EmptyBuffer.cpp */; }; + 46916F1C264CD4B0000C7B53 /* EmptyCommandBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A77AAD2EED544CC80FEEF65 /* EmptyCommandBuffer.cpp */; }; + 46916F1D264CD4B0000C7B53 /* EmptyContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6E40E62666D43AB85E72CCB /* EmptyContext.cpp */; }; + 46916F1E264CD4B0000C7B53 /* EmptyDescriptorSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01DEACB312714541BEBA4B3D /* EmptyDescriptorSet.cpp */; }; + 46916F1F264CD4B0000C7B53 /* EmptyDescriptorSetLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E3FD6B612334F0690887169 /* EmptyDescriptorSetLayout.cpp */; }; + 46916F20264CD4B0000C7B53 /* EmptyDevice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22DDDE98FBAC43B6B93572C5 /* EmptyDevice.cpp */; }; + 46916F21264CD4B0000C7B53 /* EmptyFramebuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A321F2085709480CA4ADAD6A /* EmptyFramebuffer.cpp */; }; + 46916F22264CD4B0000C7B53 /* EmptyInputAssembler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9DA8230BDE784DA69A015CE8 /* EmptyInputAssembler.cpp */; }; + 46916F23264CD4B0000C7B53 /* EmptyPipelineLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2BE389EF443E4010900B925B /* EmptyPipelineLayout.cpp */; }; + 46916F24264CD4B0000C7B53 /* EmptyPipelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 224C285287644D1ABFF6F727 /* EmptyPipelineState.cpp */; }; + 46916F25264CD4B0000C7B53 /* EmptyQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 592A69261DC74597A3E90D84 /* EmptyQueue.cpp */; }; + 46916F26264CD4B0000C7B53 /* EmptyRenderPass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E4CC6E973574A37AFE6492F /* EmptyRenderPass.cpp */; }; + 46916F27264CD4B0000C7B53 /* EmptySampler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F76A536D799A4ED2BB621312 /* EmptySampler.cpp */; }; + 46916F28264CD4B0000C7B53 /* EmptyShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF91400FEA0F4E14BC77E2CE /* EmptyShader.cpp */; }; + 46916F29264CD4B0000C7B53 /* EmptyTexture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50ED2D1BCAB04297B54357EA /* EmptyTexture.cpp */; }; + 46916F2A264CD4B0000C7B53 /* MTLBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = DBC8942CE8D4472A9D7757BA /* MTLBuffer.mm */; }; + 46916F2B264CD4B0000C7B53 /* MTLCommandBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 104F57C091D0471B97574C36 /* MTLCommandBuffer.mm */; }; + 46916F2C264CD4B0000C7B53 /* MTLContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34227D6F1A26422AB93668ED /* MTLContext.mm */; }; + 46916F2D264CD4B0000C7B53 /* MTLDescriptorSet.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FA9FCE61AFF43FE96A4E163 /* MTLDescriptorSet.mm */; }; + 46916F2E264CD4B0000C7B53 /* MTLDescriptorSetLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0E3AB6787D3D4080BD3225DA /* MTLDescriptorSetLayout.mm */; }; + 46916F2F264CD4B0000C7B53 /* MTLDevice.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7D66AAF0BE8E4C73B0F2966A /* MTLDevice.mm */; }; + 46916F30264CD4B0000C7B53 /* MTLFramebuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = DD9B48C88F6F465BB64481AD /* MTLFramebuffer.mm */; }; + 46916F31264CD4B0000C7B53 /* MTLInputAssembler.mm in Sources */ = {isa = PBXBuildFile; fileRef = FEBCF155937C4B3F9DF486CE /* MTLInputAssembler.mm */; }; + 46916F32264CD4B0000C7B53 /* MTLPipelineLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13176147B6DC4127889AC238 /* MTLPipelineLayout.mm */; }; + 46916F33264CD4B0000C7B53 /* MTLPipelineState.mm in Sources */ = {isa = PBXBuildFile; fileRef = FC9B97F690734A62BF55248D /* MTLPipelineState.mm */; }; + 46916F34264CD4B0000C7B53 /* MTLQueue.mm in Sources */ = {isa = PBXBuildFile; fileRef = DB3B27588FF2469AA47714AD /* MTLQueue.mm */; }; + 46916F35264CD4B0000C7B53 /* MTLRenderPass.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC57D69DF0C2491EA7FCAB73 /* MTLRenderPass.mm */; }; + 46916F36264CD4B0000C7B53 /* MTLSampler.mm in Sources */ = {isa = PBXBuildFile; fileRef = E535C3972B9C417CB11DEBA6 /* MTLSampler.mm */; }; + 46916F37264CD4B0000C7B53 /* MTLShader.mm in Sources */ = {isa = PBXBuildFile; fileRef = BE0EFE82E90B4193A465B6EC /* MTLShader.mm */; }; + 46916F38264CD4B0000C7B53 /* MTLStd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F4B6F75D9F4FAEBBCD3FBA /* MTLStd.cpp */; }; + 46916F39264CD4B0000C7B53 /* MTLTexture.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8D28BC027A184C5386F49923 /* MTLTexture.mm */; }; + 46916F3A264CD4B0000C7B53 /* MTLUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = 06EE73C34C9F4719B2E91616 /* MTLUtils.mm */; }; + 46916F3B264CD4B0000C7B53 /* BufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92D6188F2C224B30B05759A6 /* BufferValidator.cpp */; }; + 46916F3C264CD4B0000C7B53 /* CommandBufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82EC8A9D43BC4F12AD339110 /* CommandBufferValidator.cpp */; }; + 46916F3D264CD4B0000C7B53 /* DescriptorSetLayoutValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AC4AED46C3144D0B512DD10 /* DescriptorSetLayoutValidator.cpp */; }; + 46916F3E264CD4B0000C7B53 /* DescriptorSetValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09FD7E1EF6504909ABBAD1B5 /* DescriptorSetValidator.cpp */; }; + 46916F3F264CD4B0000C7B53 /* DeviceValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B54110CD0974F6EB1AF22B1 /* DeviceValidator.cpp */; }; + 46916F40264CD4B0000C7B53 /* FramebufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 90CCFBC5797F4F1CAB0AD0AC /* FramebufferValidator.cpp */; }; + 46916F41264CD4B0000C7B53 /* InputAssemblerValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DAB98F1091464BBCBBE53DEB /* InputAssemblerValidator.cpp */; }; + 46916F42264CD4B0000C7B53 /* PipelineLayoutValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1772CAD6B3784A11BA0DD448 /* PipelineLayoutValidator.cpp */; }; + 46916F43264CD4B0000C7B53 /* PipelineStateValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3D72907B06DB4B69BB50A814 /* PipelineStateValidator.cpp */; }; + 46916F44264CD4B0000C7B53 /* QueueValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2250BD95C6B431DACBA93F0 /* QueueValidator.cpp */; }; + 46916F45264CD4B0000C7B53 /* RenderPassValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4FC6F4725369477E97F61E3D /* RenderPassValidator.cpp */; }; + 46916F46264CD4B0000C7B53 /* SamplerValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 03E155E884444515ABF33A9B /* SamplerValidator.cpp */; }; + 46916F47264CD4B0000C7B53 /* ShaderValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F49DC3AB115046D98920A6B0 /* ShaderValidator.cpp */; }; + 46916F48264CD4B0000C7B53 /* TextureValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5865778B447C43DA88F1359C /* TextureValidator.cpp */; }; + 46916F49264CD4B0000C7B53 /* ValidationUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5539B36349B3420ABDA60E6B /* ValidationUtils.cpp */; }; + 46916F4A264CD4B0000C7B53 /* BatchedBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34CE0229CF85402DAE2627E5 /* BatchedBuffer.cpp */; }; + 46916F4B264CD4B0000C7B53 /* Define.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F375A3F6DB6E4038ABEA4AE7 /* Define.cpp */; }; + 46916F4C264CD4B0000C7B53 /* InstancedBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7FE69EE25E134E28A2610679 /* InstancedBuffer.cpp */; }; + 46916F4D264CD4B0000C7B53 /* PipelineSceneData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87ADD8C3583449BFB6FA6BC2 /* PipelineSceneData.cpp */; }; + 46916F4E264CD4B0000C7B53 /* PipelineStateManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A2D78EB738C44D40AB63F2F3 /* PipelineStateManager.cpp */; }; + 46916F4F264CD4B0000C7B53 /* PipelineUBO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FA820062345342BAA94D42A4 /* PipelineUBO.cpp */; }; + 46916F50264CD4B0000C7B53 /* PlanarShadowQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 19D82D7BA61B4581A2CC2182 /* PlanarShadowQueue.cpp */; }; + 46916F51264CD4B0000C7B53 /* RenderAdditiveLightQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91EB3026B8AA4764A4BF66FE /* RenderAdditiveLightQueue.cpp */; }; + 46916F52264CD4B0000C7B53 /* RenderBatchedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D05DA49C416646B1AF047424 /* RenderBatchedQueue.cpp */; }; + 46916F53264CD4B0000C7B53 /* RenderFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2B85F245DA547DF9966C9F0 /* RenderFlow.cpp */; }; + 46916F54264CD4B0000C7B53 /* RenderInstancedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 789F4A9479424097A9E7376B /* RenderInstancedQueue.cpp */; }; + 46916F55264CD4B0000C7B53 /* RenderPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A440C767E9E84AF7B9D754A0 /* RenderPipeline.cpp */; }; + 46916F56264CD4B0000C7B53 /* RenderQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14FAF6AA891F4E14A353D798 /* RenderQueue.cpp */; }; + 46916F57264CD4B0000C7B53 /* RenderStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CB55A69416F4719B9EE96C2 /* RenderStage.cpp */; }; + 46916F58264CD4B0000C7B53 /* SceneCulling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FA5DBF177ACA4099B4C72136 /* SceneCulling.cpp */; }; + 46916F59264CD4B0000C7B53 /* ShadowMapBatchedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F3FD75DDCAC43F98FAB537F /* ShadowMapBatchedQueue.cpp */; }; + 46916F5A264CD4B0000C7B53 /* DeferredPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 59195BEFCF734E4CB51F8A1A /* DeferredPipeline.cpp */; }; + 46916F5B264CD4B0000C7B53 /* GbufferFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 148C07CC129C4D66B32096EB /* GbufferFlow.cpp */; }; + 46916F5C264CD4B0000C7B53 /* GbufferStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0131C17DF4A744EBBC61CE41 /* GbufferStage.cpp */; }; + 46916F5D264CD4B0000C7B53 /* LightingFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BF7DFA649BE4F0B9CF0C360 /* LightingFlow.cpp */; }; + 46916F5E264CD4B0000C7B53 /* LightingStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C97F4AE295474A239236ADEB /* LightingStage.cpp */; }; + 46916F5F264CD4B0000C7B53 /* PostprocessStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9D361600626140DBA9DC8680 /* PostprocessStage.cpp */; }; + 46916F60264CD4B0000C7B53 /* ForwardFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 53FC1C6FE58343F987B633AC /* ForwardFlow.cpp */; }; + 46916F61264CD4B0000C7B53 /* ForwardPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7954A82CBA4A481FB5253813 /* ForwardPipeline.cpp */; }; + 46916F62264CD4B0000C7B53 /* ForwardStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2EB567D82469413FAACCD8E6 /* ForwardStage.cpp */; }; + 46916F63264CD4B0000C7B53 /* UIPhase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B38E749E92CF40549DCDFA87 /* UIPhase.cpp */; }; + 46916F64264CD4B0000C7B53 /* DefineMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0404566A51F4F13B56E0DAE /* DefineMap.cpp */; }; + 46916F65264CD4B0000C7B53 /* SharedMemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D171186431BA40DB9E1B4ADE /* SharedMemory.cpp */; }; + 46916F66264CD4B0000C7B53 /* ShadowFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0697AAC9BF3840B38AF5EF75 /* ShadowFlow.cpp */; }; + 46916F67264CD4B0000C7B53 /* ShadowStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 56C796B70ADC454F8E00FB65 /* ShadowStage.cpp */; }; + 46916F68264CD4B0000C7B53 /* LocalStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 454B35A47A1A4DBBAEF9E8FC /* LocalStorage.cpp */; }; + 46916F69264CD4B0000C7B53 /* EditBox-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = F0C0271A5FF44D29A948F9C9 /* EditBox-ios.mm */; }; + 46916F6A264CD4B0000C7B53 /* VideoPlayer-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0A66882495F441E7B4D29298 /* VideoPlayer-ios.mm */; }; + 46916F6B264CD4B0000C7B53 /* WebViewImpl-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = D8F4D2BE6FC6452D9ED5C162 /* WebViewImpl-ios.mm */; }; + 46916F6C264CD4B0000C7B53 /* AssetsManagerEx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 58C83251AEF3414DAF51A139 /* AssetsManagerEx.cpp */; }; + 46916F6D264CD4B0000C7B53 /* AsyncTaskPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 052379BBBFB04CAEB829CF69 /* AsyncTaskPool.cpp */; }; + 46916F6E264CD4B0000C7B53 /* EventAssetsManagerEx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D3C3B49116574D498CCA88A7 /* EventAssetsManagerEx.cpp */; }; + 46916F6F264CD4B0000C7B53 /* Manifest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF66D3C7502A498097716036 /* Manifest.cpp */; }; + 46916F70264CD4B0000C7B53 /* ConvertUTF.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C1771135D2549FBBCFA076D /* ConvertUTF.c */; }; + 46916F71264CD4B0000C7B53 /* ConvertUTFWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6543D445E3DD4BF0B024B7F6 /* ConvertUTFWrapper.cpp */; }; + 46916F72264CD4B0000C7B53 /* SRDelegateController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22DCBA4584614CD0949830A8 /* SRDelegateController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F73264CD4B0000C7B53 /* SRIOConsumer.m in Sources */ = {isa = PBXBuildFile; fileRef = 6C03E24FB221471B914C4226 /* SRIOConsumer.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F74264CD4B0000C7B53 /* SRIOConsumerPool.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FD41F4191114F109832A956 /* SRIOConsumerPool.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F75264CD4B0000C7B53 /* SRProxyConnect.m in Sources */ = {isa = PBXBuildFile; fileRef = EC2F35FDB75140A4B0781D32 /* SRProxyConnect.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F76264CD4B0000C7B53 /* SRRunLoopThread.m in Sources */ = {isa = PBXBuildFile; fileRef = B53BFD33D3004B428BEAC63D /* SRRunLoopThread.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F77264CD4B0000C7B53 /* SRConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 01B0B28EF3D546A1B688CA7B /* SRConstants.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F78264CD4B0000C7B53 /* SRPinningSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = 402738C854A141119D07250F /* SRPinningSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F79264CD4B0000C7B53 /* SRError.m in Sources */ = {isa = PBXBuildFile; fileRef = 4A1E0271FBE042D3BF388C9D /* SRError.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7A264CD4B0000C7B53 /* SRHTTPConnectMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = A791A59BE42D4EF78365806E /* SRHTTPConnectMessage.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7B264CD4B0000C7B53 /* SRHash.m in Sources */ = {isa = PBXBuildFile; fileRef = 88129FD5D4154316953CF807 /* SRHash.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7C264CD4B0000C7B53 /* SRLog.m in Sources */ = {isa = PBXBuildFile; fileRef = B8455FC4C661433991140849 /* SRLog.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7D264CD4B0000C7B53 /* SRMutex.m in Sources */ = {isa = PBXBuildFile; fileRef = F85B54E8D4B94A0AB985D31E /* SRMutex.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7E264CD4B0000C7B53 /* SRRandom.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A031C290BC744488CADC1DB /* SRRandom.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F7F264CD4B0000C7B53 /* SRSIMDHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = 7071756CA5BA4549AE65A4C5 /* SRSIMDHelpers.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F80264CD4B0000C7B53 /* SRURLUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = CBF41DAC0DF34181996DE411 /* SRURLUtilities.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F81264CD4B0000C7B53 /* NSRunLoop+SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C406BBC54E45248FD90A27 /* NSRunLoop+SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F82264CD4B0000C7B53 /* NSURLRequest+SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = B6CEFE9E50BA46139312F970 /* NSURLRequest+SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F83264CD4B0000C7B53 /* SRSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = ECCA8D3A14BD4BAAA9BDED1C /* SRSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F84264CD4B0000C7B53 /* SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 853ECC8B6E8D40BCB83DE2F6 /* SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46916F85264CD4B0000C7B53 /* tinyxml2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4BF4F15E4A943FE880EF3DB /* tinyxml2.cpp */; }; + 46916F86264CD4B0000C7B53 /* tommy.c in Sources */ = {isa = PBXBuildFile; fileRef = AE5EF6EB20144A8890151F5D /* tommy.c */; }; + 46916F87264CD4B0000C7B53 /* ioapi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F687B8E509D547958DFB7E54 /* ioapi.cpp */; }; + 46916F88264CD4B0000C7B53 /* ioapi_mem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB0832C2F844287A34B2611 /* ioapi_mem.cpp */; }; + 46916F89264CD4B0000C7B53 /* unzip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC2008C6204D48C692796559 /* unzip.cpp */; }; + 46916F8A264CD4B0000C7B53 /* xxtea.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 959E0CBDA63349EC860DE007 /* xxtea.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 0001629B6D6242F7B684AA7C /* MTLInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLInputAssembler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + 001904DF1DAC44B18E68A3C7 /* Log.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Log.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Log.h"; sourceTree = SOURCE_ROOT; }; + 007A8025F2584FF88379D29D /* BaseFactory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseFactory.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/factory/BaseFactory.cpp"; sourceTree = SOURCE_ROOT; }; + 008C800BC4A24A7BBE700178 /* jsb_webview_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_webview_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_webview_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 0131C17DF4A744EBBC61CE41 /* GbufferStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GbufferStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferStage.cpp"; sourceTree = SOURCE_ROOT; }; + 01B0B28EF3D546A1B688CA7B /* SRConstants.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRConstants.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/SRConstants.m"; sourceTree = SOURCE_ROOT; }; + 01B6FF5D94D342AAB0013578 /* GFXFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXFramebuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + 01DEACB312714541BEBA4B3D /* EmptyDescriptorSet.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDescriptorSet.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSet.cpp"; sourceTree = SOURCE_ROOT; }; + 025F9198E1BA4FBEB9F12C38 /* GFXDeviceManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDeviceManager.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/GFXDeviceManager.h"; sourceTree = SOURCE_ROOT; }; + 0334621EFEE84272B3D895CE /* SceneCulling.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SceneCulling.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/SceneCulling.h"; sourceTree = SOURCE_ROOT; }; + 0362BDC6636C4C5DA68299F0 /* GFXCommandBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXCommandBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXCommandBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 03C0CA93650449CE90D19490 /* Mat3.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Mat3.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat3.h"; sourceTree = SOURCE_ROOT; }; + 03E155E884444515ABF33A9B /* SamplerValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SamplerValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/SamplerValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 042B1BE2B0D04DE5994E319E /* Armature.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Armature.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Armature.cpp"; sourceTree = SOURCE_ROOT; }; + 0446BA8778914605B5CDBACB /* ScriptEngine.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ScriptEngine.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ScriptEngine.h"; sourceTree = SOURCE_ROOT; }; + 0462917385F8479D93776330 /* SRError.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRError.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRError.h"; sourceTree = SOURCE_ROOT; }; + 04818C27463F4D90A4EB5947 /* Memory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Memory.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/Memory.h"; sourceTree = SOURCE_ROOT; }; + 04DB759CCCF044C689F94A67 /* DescriptorSetLayoutAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetLayoutAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetLayoutAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 052379BBBFB04CAEB829CF69 /* AsyncTaskPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AsyncTaskPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AsyncTaskPool.cpp"; sourceTree = SOURCE_ROOT; }; + 05B85AE9BE88458483380E6E /* Semaphore.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Semaphore.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Semaphore.cpp"; sourceTree = SOURCE_ROOT; }; + 0697AAC9BF3840B38AF5EF75 /* ShadowFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowFlow.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 06EE73C34C9F4719B2E91616 /* MTLUtils.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLUtils.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLUtils.mm"; sourceTree = SOURCE_ROOT; }; + 072230CAF223483386609010 /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Object.h"; sourceTree = SOURCE_ROOT; }; + 072F0C4000DA4F6DB46B7585 /* jsb_websocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_websocket.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_websocket.h"; sourceTree = SOURCE_ROOT; }; + 074A03517A98458DBB5BF896 /* jsb_dop.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dop.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/jsb_dop.cpp"; sourceTree = SOURCE_ROOT; }; + 078CBB3AD2EF407BAD6648A0 /* PostprocessStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PostprocessStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/PostprocessStage.h"; sourceTree = SOURCE_ROOT; }; + 079EBEF6133D4B5CBAFD29A4 /* DragonBonesData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DragonBonesData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DragonBonesData.cpp"; sourceTree = SOURCE_ROOT; }; + 07D35AD4B354453E964736F2 /* MTLBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLBuffer.h"; sourceTree = SOURCE_ROOT; }; + 07F553A7A1974D81973B4E80 /* RenderTargetAttachment.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderTargetAttachment.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/RenderTargetAttachment.h"; sourceTree = SOURCE_ROOT; }; + 081D14196F204C699C131E49 /* jsb_global.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_global.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global.cpp"; sourceTree = SOURCE_ROOT; }; + 094565FA29F8463687A3E5FE /* SRPinningSecurityPolicy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRPinningSecurityPolicy.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security/SRPinningSecurityPolicy.h"; sourceTree = SOURCE_ROOT; }; + 09536B6590D24F58AFD1307A /* Vec3.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec3.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.cpp"; sourceTree = SOURCE_ROOT; }; + 095F37C87BF44E5EB4421A09 /* Vertex.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vertex.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vertex.cpp"; sourceTree = SOURCE_ROOT; }; + 09ED723A3FF945218563E653 /* etc2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = etc2.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc2.cpp"; sourceTree = SOURCE_ROOT; }; + 09FD7E1EF6504909ABBAD1B5 /* DescriptorSetValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 0A100726E7984DEFA1A0F87E /* MTLPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLPipelineLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + 0A66882495F441E7B4D29298 /* VideoPlayer-ios.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "VideoPlayer-ios.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/videoplayer/VideoPlayer-ios.mm"; sourceTree = SOURCE_ROOT; }; + 0AAD01779AC34533966D9FA4 /* LinearAllocatorPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LinearAllocatorPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/LinearAllocatorPool.h"; sourceTree = SOURCE_ROOT; }; + 0AB36B27236E4048845B43A3 /* ThreadSafeCounter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadSafeCounter.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeCounter.h"; sourceTree = SOURCE_ROOT; }; + 0D3A6753C6694D89BE3EB6FB /* NedPooling.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = NedPooling.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/NedPooling.h"; sourceTree = SOURCE_ROOT; }; + 0DA074F19CF140BDA00DE2D0 /* jsb_socketio.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_socketio.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_socketio.h"; sourceTree = SOURCE_ROOT; }; + 0E08C62B7C2A4D438BF319C1 /* NedPooling.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = NedPooling.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/NedPooling.cpp"; sourceTree = SOURCE_ROOT; }; + 0E3AB6787D3D4080BD3225DA /* MTLDescriptorSetLayout.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDescriptorSetLayout.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSetLayout.mm"; sourceTree = SOURCE_ROOT; }; + 0EEE197625AF4CAB88B844C1 /* HttpCookie.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = HttpCookie.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpCookie.cpp"; sourceTree = SOURCE_ROOT; }; + 0F9CCF1F9C1A4AD79CDE4EDD /* GFXTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXTexture.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTexture.h"; sourceTree = SOURCE_ROOT; }; + 0FA9FCE61AFF43FE96A4E163 /* MTLDescriptorSet.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDescriptorSet.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSet.mm"; sourceTree = SOURCE_ROOT; }; + 1029EECBAFF545A399A8B4F8 /* ThreadSafeLinearAllocator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadSafeLinearAllocator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeLinearAllocator.cpp"; sourceTree = SOURCE_ROOT; }; + 104F57C091D0471B97574C36 /* MTLCommandBuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLCommandBuffer.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandBuffer.mm"; sourceTree = SOURCE_ROOT; }; + 105A9F467E584851B94046B9 /* StringPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringPool.h"; sourceTree = SOURCE_ROOT; }; + 11D866CAB44E41809B7177FB /* ConstraintData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConstraintData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ConstraintData.h"; sourceTree = SOURCE_ROOT; }; + 12112767F4A0410085A6D156 /* PipelineLayoutAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineLayoutAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineLayoutAgent.h"; sourceTree = SOURCE_ROOT; }; + 12C61A42E0DB43308523AB0E /* ExtensionMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ExtensionMacros.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/ExtensionMacros.h"; sourceTree = SOURCE_ROOT; }; + 13176147B6DC4127889AC238 /* MTLPipelineLayout.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLPipelineLayout.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineLayout.mm"; sourceTree = SOURCE_ROOT; }; + 13408FB823F24E3E8B7C8D5C /* NSRunLoop+SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSRunLoop+SRWebSocket.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSRunLoop+SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + 1351298570AB41AFB7C7C963 /* HandleObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HandleObject.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/HandleObject.h"; sourceTree = SOURCE_ROOT; }; + 13B0567434084F98937DA9CC /* GFXBase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXBase.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBase.h"; sourceTree = SOURCE_ROOT; }; + 13D23465464D466196CD81DD /* RenderPassValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPassValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/RenderPassValidator.h"; sourceTree = SOURCE_ROOT; }; + 13DA61346DE84AE880EEB9B4 /* util-inl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "util-inl.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util-inl.h"; sourceTree = SOURCE_ROOT; }; + 1455C1C29F9C4BA58F1647E7 /* GbufferFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GbufferFlow.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferFlow.h"; sourceTree = SOURCE_ROOT; }; + 147F80851F5A4168AB385380 /* GFXContext.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXContext.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXContext.cpp"; sourceTree = SOURCE_ROOT; }; + 148C07CC129C4D66B32096EB /* GbufferFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GbufferFlow.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 14FAF6AA891F4E14A353D798 /* RenderQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 1514D12F13544EE4AF15638B /* Define.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Define.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/Define.h"; sourceTree = SOURCE_ROOT; }; + 157CE4FD1ED34A4ABB609302 /* ConditionVariable.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConditionVariable.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ConditionVariable.cpp"; sourceTree = SOURCE_ROOT; }; + 1709E5FEE584462992582F4C /* DeformVertices.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeformVertices.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/DeformVertices.cpp"; sourceTree = SOURCE_ROOT; }; + 17672CC4041747BBA4AA6DFD /* jsb_platfrom_apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = jsb_platfrom_apple.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_platfrom_apple.mm"; sourceTree = SOURCE_ROOT; }; + 1772CAD6B3784A11BA0DD448 /* PipelineLayoutValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineLayoutValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineLayoutValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 18851B7DA82041458F2E02E1 /* ioapi_mem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ioapi_mem.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi_mem.h"; sourceTree = SOURCE_ROOT; }; + 1971BD44DFB747F18D2AFBFE /* Uri.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Uri.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Uri.h"; sourceTree = SOURCE_ROOT; }; + 1995C96964D34369A1886FC0 /* Resource.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Resource.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Resource.h"; sourceTree = SOURCE_ROOT; }; + 19D82D7BA61B4581A2CC2182 /* PlanarShadowQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PlanarShadowQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PlanarShadowQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 19F8CA68856F4B558049D2F3 /* CCArmatureCacheDisplay.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCArmatureCacheDisplay.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureCacheDisplay.cpp"; sourceTree = SOURCE_ROOT; }; + 1A0A2FF5240A488EA6DA7C0B /* Point.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Point.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Point.cpp"; sourceTree = SOURCE_ROOT; }; + 1A6466302C08481992B56CCC /* MathUtil.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MathUtil.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.h"; sourceTree = SOURCE_ROOT; }; + 1A77AAD2EED544CC80FEEF65 /* EmptyCommandBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyCommandBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyCommandBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 1AB0832C2F844287A34B2611 /* ioapi_mem.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ioapi_mem.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi_mem.cpp"; sourceTree = SOURCE_ROOT; }; + 1AC6C8A4376B4C6F9261FDDD /* jsb_editor_support_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_editor_support_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_editor_support_auto.h"; sourceTree = SOURCE_ROOT; }; + 1B10D709651D46C29B5BE0D3 /* jsb_pipeline_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_pipeline_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_pipeline_auto.h"; sourceTree = SOURCE_ROOT; }; + 1B210B3BC7374148AE438929 /* ForwardPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardPipeline.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardPipeline.h"; sourceTree = SOURCE_ROOT; }; + 1BA85B11485A4FE1A451758C /* jsb_webview_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_webview_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_webview_auto.h"; sourceTree = SOURCE_ROOT; }; + 1BFE8F08EB324977BCF357C3 /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Object.h"; sourceTree = SOURCE_ROOT; }; + 1C2F614575294BA1ABE66E37 /* GFXDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDevice.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDevice.h"; sourceTree = SOURCE_ROOT; }; + 1CB016F0CDDE4D41A5C3AE2F /* SRHTTPConnectMessage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRHTTPConnectMessage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHTTPConnectMessage.h"; sourceTree = SOURCE_ROOT; }; + 1D36F7B2998E4371B58734B1 /* EmptyShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyShader.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyShader.h"; sourceTree = SOURCE_ROOT; }; + 1D82121F8F6A45EABF938BAE /* v8_inspector_protocol_json.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = v8_inspector_protocol_json.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/v8_inspector_protocol_json.h"; sourceTree = SOURCE_ROOT; }; + 1DC46032F64F4ABB9CF7DAD4 /* Rectangle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Rectangle.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Rectangle.h"; sourceTree = SOURCE_ROOT; }; + 1DC771E7182641418EBD474D /* IndexHandle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IndexHandle.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/IndexHandle.h"; sourceTree = SOURCE_ROOT; }; + 1E2B7E0824464C6BA5499ACE /* PassNodeBuilder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassNodeBuilder.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNodeBuilder.h"; sourceTree = SOURCE_ROOT; }; + 1E402B43920A401E9E3128F6 /* MTLDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDevice.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDevice.h"; sourceTree = SOURCE_ROOT; }; + 1E96313E0D304CDABCF11FE5 /* SeApi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SeApi.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/SeApi.h"; sourceTree = SOURCE_ROOT; }; + 1F2BBF387A734127B527E2B4 /* DragonBonesHeaders.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBonesHeaders.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/DragonBonesHeaders.h"; sourceTree = SOURCE_ROOT; }; + 1F471894CACF4A4D85AD71AA /* UTF8.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UTF8.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/UTF8.h"; sourceTree = SOURCE_ROOT; }; + 1F7FFFDA071E4E16BAF60ABB /* ArmatureCache.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureCache.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCache.cpp"; sourceTree = SOURCE_ROOT; }; + 1F8E0888106D43409E96B354 /* CanvasRenderingContext2D.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CanvasRenderingContext2D.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/CanvasRenderingContext2D.h"; sourceTree = SOURCE_ROOT; }; + 1FA3E6C1394147CAB737BBA3 /* unzip.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = unzip.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/unzip.h"; sourceTree = SOURCE_ROOT; }; + 2103ED08543E4AA0AA79A577 /* jsb_audio_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_audio_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_audio_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 21524CC012CF47C1ADE811D8 /* jsb_pipeline_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_pipeline_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_pipeline_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 21D2DD4EA3B1498A887573EE /* jsb_editor_support_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_editor_support_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_editor_support_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 224C285287644D1ABFF6F727 /* EmptyPipelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyPipelineState.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 227F3F1A7BA04AB991A0775E /* ArmatureCacheMgr.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureCacheMgr.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCacheMgr.cpp"; sourceTree = SOURCE_ROOT; }; + 22A34CA60C484F9BB439A7B1 /* config.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = config.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/config.cpp"; sourceTree = SOURCE_ROOT; }; + 22BB6DA02A14457BADE5E2D5 /* SocketIO.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SocketIO.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/SocketIO.cpp"; sourceTree = SOURCE_ROOT; }; + 22D86707ACF54B919C5C934A /* CachedArray.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CachedArray.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/CachedArray.h"; sourceTree = SOURCE_ROOT; }; + 22DCBA4584614CD0949830A8 /* SRDelegateController.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRDelegateController.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate/SRDelegateController.m"; sourceTree = SOURCE_ROOT; }; + 22DDDE98FBAC43B6B93572C5 /* EmptyDevice.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDevice.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDevice.cpp"; sourceTree = SOURCE_ROOT; }; + 22EEA1C5940F44C0A04B57BF /* AllocatedObj.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AllocatedObj.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/AllocatedObj.h"; sourceTree = SOURCE_ROOT; }; + 230D3A277316486EACBE409D /* Value.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Value.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Value.cpp"; sourceTree = SOURCE_ROOT; }; + 23610B379C0F4CDD80418247 /* ObjectPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ObjectPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/ObjectPool.cpp"; sourceTree = SOURCE_ROOT; }; + 2384B6037B074E1EA14680AA /* MTLCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLCommandBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + 23E6AD912B16403CA22C00EE /* ColorTransform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ColorTransform.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/ColorTransform.h"; sourceTree = SOURCE_ROOT; }; + 2457A84FC0304219942203FD /* TimelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TimelineState.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/TimelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 24B9D1FA2BE34F6091A7B3DF /* jsb_conversions.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_conversions.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_conversions.h"; sourceTree = SOURCE_ROOT; }; + 24C406BBC54E45248FD90A27 /* NSRunLoop+SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "NSRunLoop+SRWebSocket.m"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSRunLoop+SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + 25C857C5341B49E68E484BBA /* MappingUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MappingUtils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/MappingUtils.cpp"; sourceTree = SOURCE_ROOT; }; + 26FF5E874A324D388A779022 /* Vec3.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec3.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.inl"; sourceTree = SOURCE_ROOT; }; + 2740F716A1A747429E08DE39 /* FileUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FileUtils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/FileUtils.cpp"; sourceTree = SOURCE_ROOT; }; + 278C5984EE3C4B5DA95D2131 /* EventAssetsManagerEx.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventAssetsManagerEx.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/EventAssetsManagerEx.h"; sourceTree = SOURCE_ROOT; }; + 27B058C731BD4A19931F2727 /* DragonBones.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBones.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/DragonBones.h"; sourceTree = SOURCE_ROOT; }; + 28874AFEB794444FBED7AB21 /* TransformObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TransformObject.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/TransformObject.h"; sourceTree = SOURCE_ROOT; }; + 29CD76E50ECB428B8FFD6258 /* StlAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StlAlloc.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/StlAlloc.h"; sourceTree = SOURCE_ROOT; }; + 2A031C290BC744488CADC1DB /* SRRandom.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRRandom.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRRandom.m"; sourceTree = SOURCE_ROOT; }; + 2A31AF56455549DE9DCAD48D /* GbufferStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GbufferStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferStage.h"; sourceTree = SOURCE_ROOT; }; + 2A4F424EF5B046DDA0463481 /* MTLComputeCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLComputeCommandEncoder.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLComputeCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; + 2AD9B2A199144DA7ADA6EFE2 /* jsb_xmlhttprequest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_xmlhttprequest.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_xmlhttprequest.h"; sourceTree = SOURCE_ROOT; }; + 2B567741C0A94DBF87F95FCB /* PipelineStateAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineStateAgent.h"; sourceTree = SOURCE_ROOT; }; + 2BE389EF443E4010900B925B /* EmptyPipelineLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyPipelineLayout.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineLayout.cpp"; sourceTree = SOURCE_ROOT; }; + 2C8C1AA620BB4950A768D0F6 /* Bone.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Bone.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Bone.h"; sourceTree = SOURCE_ROOT; }; + 2C8E633DFB1142EABD92FAF3 /* tinyxml2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = tinyxml2.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tinyxml2/tinyxml2.h"; sourceTree = SOURCE_ROOT; }; + 2D67FE7EF57645C8B7F32B9D /* BufferPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferPool.cpp"; sourceTree = SOURCE_ROOT; }; + 2E18C365ECD84080AE61633E /* Memory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Memory.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/Memory.cpp"; sourceTree = SOURCE_ROOT; }; + 2E4B120BF1D3494BB67BB66A /* SRConstants.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRConstants.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/SRConstants.h"; sourceTree = SOURCE_ROOT; }; + 2EB567D82469413FAACCD8E6 /* ForwardStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardStage.cpp"; sourceTree = SOURCE_ROOT; }; + 2F71E786B7D34137853EF773 /* jsb_network_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_network_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_network_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 2FC2EB4FEE33483D94B9CE43 /* crypt.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = crypt.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/crypt.h"; sourceTree = SOURCE_ROOT; }; + 30AA69A4E561414A8CE0DD96 /* EventObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventObject.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/EventObject.cpp"; sourceTree = SOURCE_ROOT; }; + 30C0404948584B7F8FFB4468 /* ObjectPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ObjectPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/ObjectPool.h"; sourceTree = SOURCE_ROOT; }; + 325B28C9239642568DE7ADCA /* MTLQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLQueue.h"; sourceTree = SOURCE_ROOT; }; + 330BFD20DEEB45ACB88459E5 /* DownloaderImpl-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "DownloaderImpl-apple.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl-apple.h"; sourceTree = SOURCE_ROOT; }; + 3399572D3C7B4D299974D852 /* SRRunLoopThread.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRRunLoopThread.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop/SRRunLoopThread.h"; sourceTree = SOURCE_ROOT; }; + 340F7D703E8040559284AFCC /* EmptyCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyCommandBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + 34227D6F1A26422AB93668ED /* MTLContext.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLContext.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLContext.mm"; sourceTree = SOURCE_ROOT; }; + 3472AAEE39554C0393DE9CCB /* Class.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Class.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Class.h"; sourceTree = SOURCE_ROOT; }; + 34812BFDD4324677A080F5E8 /* Math.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Math.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Math.h"; sourceTree = SOURCE_ROOT; }; + 34CE0229CF85402DAE2627E5 /* BatchedBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BatchedBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/BatchedBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 357DC658FC844DAE8D9D063D /* SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRWebSocket.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + 360EDC7E95ED4047BCC0D427 /* DataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DataParser.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/DataParser.cpp"; sourceTree = SOURCE_ROOT; }; + 36CC7CDE38514CC5A596D5BD /* StringUtil.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = StringUtil.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringUtil.cpp"; sourceTree = SOURCE_ROOT; }; + 376674892D404F5993BBC3DF /* GFXTextureBarrier.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXTextureBarrier.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTextureBarrier.cpp"; sourceTree = SOURCE_ROOT; }; + 38226DC98FD74467B2803891 /* ShadowMapBatchedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowMapBatchedQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/ShadowMapBatchedQueue.h"; sourceTree = SOURCE_ROOT; }; + 38B9874AD43240C589DB23BB /* inspector_agent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_agent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_agent.h"; sourceTree = SOURCE_ROOT; }; + 3962B3CA885A4678A0C1727F /* IOTypedArray.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IOTypedArray.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOTypedArray.h"; sourceTree = SOURCE_ROOT; }; + 39C8CA4F339B4D498F9ED838 /* EventDispatcher.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventDispatcher.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/EventDispatcher.h"; sourceTree = SOURCE_ROOT; }; + 39FC62C6354E40AEA557EC6B /* ConstraintData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConstraintData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ConstraintData.cpp"; sourceTree = SOURCE_ROOT; }; + 3A714D0E04EE442F800A4509 /* Vec4.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec4.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.inl"; sourceTree = SOURCE_ROOT; }; + 3B249B0EE5FD4C6E8EB901AE /* EventDispatcher.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventDispatcher.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/EventDispatcher.cpp"; sourceTree = SOURCE_ROOT; }; + 3BFC607B68A046AB99499D02 /* jsb_helper.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_helper.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_helper.cpp"; sourceTree = SOURCE_ROOT; }; + 3C2986B2F93B4B078AA1B2FF /* ScriptEngine.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ScriptEngine.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ScriptEngine.cpp"; sourceTree = SOURCE_ROOT; }; + 3CB55A69416F4719B9EE96C2 /* RenderStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderStage.cpp"; sourceTree = SOURCE_ROOT; }; + 3D260513407440BC940A9F02 /* Base.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Base.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Base.h"; sourceTree = SOURCE_ROOT; }; + 3D69820BB35B4A8B957BFDAA /* Slot.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Slot.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Slot.cpp"; sourceTree = SOURCE_ROOT; }; + 3D72907B06DB4B69BB50A814 /* PipelineStateValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineStateValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 3E4CC6E973574A37AFE6492F /* EmptyRenderPass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyRenderPass.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyRenderPass.cpp"; sourceTree = SOURCE_ROOT; }; + 3E818410BA2C485284F856C2 /* QueueValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = QueueValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/QueueValidator.h"; sourceTree = SOURCE_ROOT; }; + 3EC7ABB719D84E3BB42E8E49 /* Value.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Value.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Value.h"; sourceTree = SOURCE_ROOT; }; + 3ECBE59E0414464D9DF193B0 /* SamplerValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SamplerValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/SamplerValidator.h"; sourceTree = SOURCE_ROOT; }; + 3ED8FA86AD804A9D81A508E5 /* SRSIMDHelpers.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRSIMDHelpers.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRSIMDHelpers.h"; sourceTree = SOURCE_ROOT; }; + 3F14CE59E4DA4D9E86D47B01 /* ResourceEntry.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceEntry.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceEntry.h"; sourceTree = SOURCE_ROOT; }; + 3F32E831424847D68D933F27 /* InputAssemblerAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InputAssemblerAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/InputAssemblerAgent.h"; sourceTree = SOURCE_ROOT; }; + 3F3AF47508B44272A7F0AFA7 /* SHA1.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SHA1.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/SHA1.cpp"; sourceTree = SOURCE_ROOT; }; + 3F853D91E8524CE5A5BB0F6E /* BaseFactory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseFactory.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/factory/BaseFactory.h"; sourceTree = SOURCE_ROOT; }; + 3FB0430A4AA44F539A1E69E2 /* ArmatureCache.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureCache.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCache.h"; sourceTree = SOURCE_ROOT; }; + 3FB79E1DEEF44F3EBFEBB258 /* DragonBonesData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBonesData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DragonBonesData.h"; sourceTree = SOURCE_ROOT; }; + 402738C854A141119D07250F /* SRPinningSecurityPolicy.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRPinningSecurityPolicy.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m"; sourceTree = SOURCE_ROOT; }; + 40ADF0E6CB464EDBB17654CB /* DevicePassResourceTable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DevicePassResourceTable.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePassResourceTable.h"; sourceTree = SOURCE_ROOT; }; + 412D2421984B4458BC8F91F6 /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Object.h"; sourceTree = SOURCE_ROOT; }; + 4183438CEC25406698C40824 /* ThreadPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ThreadPool.h"; sourceTree = SOURCE_ROOT; }; + 423D31770E314853968CDABA /* DisplayData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DisplayData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DisplayData.h"; sourceTree = SOURCE_ROOT; }; + 42F05FDC21E9406A91CD6D55 /* etc1.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = etc1.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc1.cpp"; sourceTree = SOURCE_ROOT; }; + 43095A2CF0BF4BD39C240EC2 /* tommy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = tommy.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tommyds/tommy.h"; sourceTree = SOURCE_ROOT; }; + 430EC481CED34271AA5800EA /* Slot.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Slot.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Slot.h"; sourceTree = SOURCE_ROOT; }; + 43E6DD7043234FFF85023303 /* StringUtil.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringUtil.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringUtil.h"; sourceTree = SOURCE_ROOT; }; + 4483765E8D6B45D4931FAF4E /* SRDelegateController.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRDelegateController.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate/SRDelegateController.h"; sourceTree = SOURCE_ROOT; }; + 44A349B97C364923AB86804E /* MathBase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MathBase.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathBase.h"; sourceTree = SOURCE_ROOT; }; + 44BFA47B39CF4192A3934CAF /* MeshBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MeshBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MeshBuffer.h"; sourceTree = SOURCE_ROOT; }; + 44F0CECC659D48BBB14BC7B9 /* BufferAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferAllocator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferAllocator.h"; sourceTree = SOURCE_ROOT; }; + 45480837FA1344F8B631E668 /* jsb_helper.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_helper.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_helper.h"; sourceTree = SOURCE_ROOT; }; + 454B35A47A1A4DBBAEF9E8FC /* LocalStorage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LocalStorage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/storage/local-storage/LocalStorage.cpp"; sourceTree = SOURCE_ROOT; }; + 45792904B9B749C8A1C1A078 /* GFXBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 45F56B7385284DD388588ECC /* BufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/BufferValidator.h"; sourceTree = SOURCE_ROOT; }; + 46916F90264CD4B0000C7B53 /* libcocos3 iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libcocos3 iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 46BAAD6D9C4A4E8185372CB1 /* MTLSampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLSampler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSampler.h"; sourceTree = SOURCE_ROOT; }; + 47030E10F2AE4854B4AF18D7 /* FileUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FileUtils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/FileUtils.h"; sourceTree = SOURCE_ROOT; }; + 47B75E5C731848198FC22DC0 /* CommandBufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CommandBufferAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/CommandBufferAgent.h"; sourceTree = SOURCE_ROOT; }; + 48716DC37274465881352B84 /* Vec2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec2.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.h"; sourceTree = SOURCE_ROOT; }; + 487AFC006C584B149A58BFB1 /* Application.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Application.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Application.cpp"; sourceTree = SOURCE_ROOT; }; + 48AA7ABD0C064A0A9DB85860 /* ioapi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ioapi.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi.h"; sourceTree = SOURCE_ROOT; }; + 494EA44BE2FE4DFCAB58F00F /* MTLRenderCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLRenderCommandEncoder.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; + 495D39772DF945D8B449F246 /* csscolorparser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = csscolorparser.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/csscolorparser.cpp"; sourceTree = SOURCE_ROOT; }; + 499F105AD92C44A7B26FD675 /* TFJobSystem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TFJobSystem.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobSystem.h"; sourceTree = SOURCE_ROOT; }; + 49C5B85A45374751B900A004 /* MTLSemaphore.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLSemaphore.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSemaphore.h"; sourceTree = SOURCE_ROOT; }; + 4A005C8830C54D589DCAC48B /* InputAssemblerValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InputAssemblerValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/InputAssemblerValidator.h"; sourceTree = SOURCE_ROOT; }; + 4A1E0271FBE042D3BF388C9D /* SRError.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRError.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRError.m"; sourceTree = SOURCE_ROOT; }; + 4A7DECC75A584009955CC41C /* Mat4.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Mat4.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.inl"; sourceTree = SOURCE_ROOT; }; + 4AC50A178FD74C8E95785087 /* ShadowStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowStage.h"; sourceTree = SOURCE_ROOT; }; + 4AEBC90587254D8AA5F66703 /* Config.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Config.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Config.h"; sourceTree = SOURCE_ROOT; }; + 4B00FE707B144B5993433B28 /* CCArmatureDisplay.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCArmatureDisplay.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureDisplay.h"; sourceTree = SOURCE_ROOT; }; + 4BD4E79B12E049F18A3B5081 /* Uri.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Uri.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Uri.cpp"; sourceTree = SOURCE_ROOT; }; + 4BF7DFA649BE4F0B9CF0C360 /* LightingFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LightingFlow.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 4C13FFF271C5493B9A21D918 /* VirtualResource.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = VirtualResource.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/VirtualResource.h"; sourceTree = SOURCE_ROOT; }; + 4C55C9B7811B47ECBBD1A616 /* BinaryDataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BinaryDataParser.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/BinaryDataParser.cpp"; sourceTree = SOURCE_ROOT; }; + 4C7A24AAAD814F479EAA6D11 /* DevicePass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DevicePass.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePass.h"; sourceTree = SOURCE_ROOT; }; + 4D7E52AB07484997A641F248 /* HelperMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HelperMacros.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/HelperMacros.h"; sourceTree = SOURCE_ROOT; }; + 4D88DFC46E5D4E9693FC352D /* GFXDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDescriptorSet.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + 4E18B38DDAB2452898319BF2 /* JeAlloc.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = JeAlloc.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/JeAlloc.cpp"; sourceTree = SOURCE_ROOT; }; + 4E5977DABF19437F976B32A5 /* GFXDef.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDef.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef.cpp"; sourceTree = SOURCE_ROOT; }; + 4E947A7702324AA4833D1871 /* HttpCookie.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpCookie.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpCookie.h"; sourceTree = SOURCE_ROOT; }; + 4E97D59B711A4FAC994CDB38 /* GFXObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXObject.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXObject.h"; sourceTree = SOURCE_ROOT; }; + 4EBB3259FBE1427B8B5D160A /* MTLShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLShader.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLShader.h"; sourceTree = SOURCE_ROOT; }; + 4FC6F4725369477E97F61E3D /* RenderPassValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPassValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/RenderPassValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 4FCF7B206314416584846C13 /* State.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = State.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/State.cpp"; sourceTree = SOURCE_ROOT; }; + 4FE99ABE93184009847E9048 /* LightingStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LightingStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingStage.h"; sourceTree = SOURCE_ROOT; }; + 4FFE8C17C9854FEC8C022A36 /* RenderBatchedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderBatchedQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderBatchedQueue.h"; sourceTree = SOURCE_ROOT; }; + 50190325D99A4F22996E806C /* AssetsManagerEx.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AssetsManagerEx.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AssetsManagerEx.h"; sourceTree = SOURCE_ROOT; }; + 50582ACA58DC4E60A89D7A0A /* EmptyFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyFramebuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + 5068DA30496F4FB5BE2BA835 /* BoundingBoxData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BoundingBoxData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/BoundingBoxData.h"; sourceTree = SOURCE_ROOT; }; + 5085E9A4EAD24884984D7314 /* Event.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Event.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Event.h"; sourceTree = SOURCE_ROOT; }; + 5095379B1F0D49529AF38AEB /* jsb_xmlhttprequest.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_xmlhttprequest.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_xmlhttprequest.cpp"; sourceTree = SOURCE_ROOT; }; + 509A8A423D334B9CB49DC01A /* AudioEngine.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioEngine.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/include/AudioEngine.h"; sourceTree = SOURCE_ROOT; }; + 50ED2D1BCAB04297B54357EA /* EmptyTexture.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyTexture.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyTexture.cpp"; sourceTree = SOURCE_ROOT; }; + 51A0EA8290554031930BE2AE /* MathUtilNeon.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilNeon.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilNeon.inl"; sourceTree = SOURCE_ROOT; }; + 51C1940396BF4CB39A456B6C /* ArmatureData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ArmatureData.h"; sourceTree = SOURCE_ROOT; }; + 522A0179EEEB4FA5AFAFEB26 /* GFXMTL.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXMTL.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/GFXMTL.h"; sourceTree = SOURCE_ROOT; }; + 5358216808F0434CB780AB35 /* Reachability.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Reachability.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Reachability.cpp"; sourceTree = SOURCE_ROOT; }; + 53FC1C6FE58343F987B633AC /* ForwardFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardFlow.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 543B4E5A68D6494C96B06038 /* Utils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Utils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Utils.cpp"; sourceTree = SOURCE_ROOT; }; + 54A906EF1DBE4BACB9192CD9 /* GFXDef-common.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "GFXDef-common.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef-common.h"; sourceTree = SOURCE_ROOT; }; + 54B0ABAD950E42C580584355 /* jsb_pipeline_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_pipeline_manual.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_pipeline_manual.cpp"; sourceTree = SOURCE_ROOT; }; + 5539B36349B3420ABDA60E6B /* ValidationUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ValidationUtils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ValidationUtils.cpp"; sourceTree = SOURCE_ROOT; }; + 556E097DDF0C4B7FBDBF8F54 /* IOBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IOBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOBuffer.h"; sourceTree = SOURCE_ROOT; }; + 559BCBB88088439A90C5119C /* Mat4.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Mat4.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.cpp"; sourceTree = SOURCE_ROOT; }; + 55EBDBCBE2BB4EBAB420E61F /* DeviceAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeviceAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DeviceAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 56C796B70ADC454F8E00FB65 /* ShadowStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowStage.cpp"; sourceTree = SOURCE_ROOT; }; + 5778400E13594F26A71929A6 /* GFXShader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXShader.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXShader.cpp"; sourceTree = SOURCE_ROOT; }; + 57EB84A013414482B6272DF9 /* Handle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Handle.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Handle.h"; sourceTree = SOURCE_ROOT; }; + 5841B42195A44D35A3E8457F /* astc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = astc.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/astc.h"; sourceTree = SOURCE_ROOT; }; + 5865778B447C43DA88F1359C /* TextureValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/TextureValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 58C83251AEF3414DAF51A139 /* AssetsManagerEx.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AssetsManagerEx.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AssetsManagerEx.cpp"; sourceTree = SOURCE_ROOT; }; + 5912E47B9DFF4697AD6712F4 /* SharedBufferManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SharedBufferManager.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/SharedBufferManager.h"; sourceTree = SOURCE_ROOT; }; + 59195BEFCF734E4CB51F8A1A /* DeferredPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeferredPipeline.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/DeferredPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + 592A69261DC74597A3E90D84 /* EmptyQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 5A37C1CDF2714ADB9D725D83 /* Matrix.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Matrix.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Matrix.h"; sourceTree = SOURCE_ROOT; }; + 5ACBD708237E4DFFA68D29A2 /* base64.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = base64.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/base64.h"; sourceTree = SOURCE_ROOT; }; + 5AF6398971784A3EB9B90004 /* RefCounter.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RefCounter.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/RefCounter.cpp"; sourceTree = SOURCE_ROOT; }; + 5B0BBDD3B1D946E28044B576 /* Downloader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Downloader.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Downloader.h"; sourceTree = SOURCE_ROOT; }; + 5B528B6C88D744DFA3D42A4C /* jsb_video_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_video_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_video_auto.h"; sourceTree = SOURCE_ROOT; }; + 5BABDC8C3B1E4BDB99C95BEB /* SocketIO.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SocketIO.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/SocketIO.h"; sourceTree = SOURCE_ROOT; }; + 5BD7D51E6929438C9F35263A /* WorldClock.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = WorldClock.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/WorldClock.h"; sourceTree = SOURCE_ROOT; }; + 5BF292ECA9144F22A5D228E9 /* WebViewImpl-android.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "WebViewImpl-android.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/webview/WebViewImpl-android.h"; sourceTree = SOURCE_ROOT; }; + 5C1771135D2549FBBCFA076D /* ConvertUTF.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = ConvertUTF.c; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTF.c"; sourceTree = SOURCE_ROOT; }; + 5C3A92DD763D4CB8AB200BAF /* GFXRenderPass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXRenderPass.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXRenderPass.cpp"; sourceTree = SOURCE_ROOT; }; + 5CB613C43F85481883362D90 /* Mat3.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Mat3.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat3.cpp"; sourceTree = SOURCE_ROOT; }; + 5D04FEFC960B4271888A417E /* CCDragonBonesHeaders.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCDragonBonesHeaders.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCDragonBonesHeaders.h"; sourceTree = SOURCE_ROOT; }; + 5D48AFFBDBB64BB3AF528386 /* jsb_dop.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dop.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/jsb_dop.h"; sourceTree = SOURCE_ROOT; }; + 5D537EBC69D24DE7A47FCD2D /* jsb_cocos_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_cocos_manual.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_cocos_manual.h"; sourceTree = SOURCE_ROOT; }; + 5D72D0D566174437AD83545B /* EmptyQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyQueue.h"; sourceTree = SOURCE_ROOT; }; + 5DCAADDDD9944A408DE601EA /* FramebufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FramebufferAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/FramebufferAgent.h"; sourceTree = SOURCE_ROOT; }; + 5DCF4C1C097A4EE4911121DF /* CCArmatureDisplay.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCArmatureDisplay.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureDisplay.cpp"; sourceTree = SOURCE_ROOT; }; + 5E29468F8CFF4EBA8A8CEBB3 /* SRURLUtilities.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRURLUtilities.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRURLUtilities.h"; sourceTree = SOURCE_ROOT; }; + 5E44C8139DEE40F2A670FBAC /* EmptyDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDevice.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDevice.h"; sourceTree = SOURCE_ROOT; }; + 5EC02676FAA84F32BFE965A6 /* AutoreleasePool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AutoreleasePool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/AutoreleasePool.h"; sourceTree = SOURCE_ROOT; }; + 5F4BBE9613414B7CBB8E6DE4 /* jsb_socketio.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_socketio.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_socketio.cpp"; sourceTree = SOURCE_ROOT; }; + 5F55C629BC2142C09612BF69 /* Device.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Device.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Device.h"; sourceTree = SOURCE_ROOT; }; + 5F56E276D7524C7BB243B367 /* WebView-inl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "WebView-inl.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/webview/WebView-inl.h"; sourceTree = SOURCE_ROOT; }; + 5F6A321309C844A5BBDF385A /* RenderPassAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPassAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/RenderPassAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 5F6B22D9CB4F47CFBA9C232E /* PassNode.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassNode.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNode.h"; sourceTree = SOURCE_ROOT; }; + 5FCC53B243034D15B7A7FEDB /* LightingFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LightingFlow.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingFlow.h"; sourceTree = SOURCE_ROOT; }; + 5FD41F4191114F109832A956 /* SRIOConsumerPool.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRIOConsumerPool.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumerPool.m"; sourceTree = SOURCE_ROOT; }; + 6003F87A6A5F4A919F251F01 /* HandleObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = HandleObject.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/HandleObject.cpp"; sourceTree = SOURCE_ROOT; }; + 60572206A6064C93924B972D /* AudioDecoder.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioDecoder.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioDecoder.mm"; sourceTree = SOURCE_ROOT; }; + 612256E9A30D470EBD12FAAD /* AnimationState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/AnimationState.h"; sourceTree = SOURCE_ROOT; }; + 617129610D25417585040F24 /* node_mutex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node_mutex.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_mutex.h"; sourceTree = SOURCE_ROOT; }; + 63F0E46044A34F9189FD0E89 /* Image.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Image.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Image.h"; sourceTree = SOURCE_ROOT; }; + 63FBA71905704626831CF249 /* GFXSampler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXSampler.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXSampler.cpp"; sourceTree = SOURCE_ROOT; }; + 6481EB0B7BD8498CA4934CA3 /* env.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = env.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/env.cpp"; sourceTree = SOURCE_ROOT; }; + 64895710F4DE4C769D3B4F93 /* AudioMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioMacros.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioMacros.h"; sourceTree = SOURCE_ROOT; }; + 653EA69820934FAB8CF1A2AA /* DescriptorSetAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetAgent.h"; sourceTree = SOURCE_ROOT; }; + 6543D445E3DD4BF0B024B7F6 /* ConvertUTFWrapper.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConvertUTFWrapper.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTFWrapper.cpp"; sourceTree = SOURCE_ROOT; }; + 658FC936FC9A45C795A1ED68 /* PassNode.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassNode.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNode.cpp"; sourceTree = SOURCE_ROOT; }; + 65B65DEE9A7244BF9546EEC2 /* TextureValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/TextureValidator.h"; sourceTree = SOURCE_ROOT; }; + 66491A081DCD4EC8A9F01809 /* PipelineStateAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineStateAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 66D41D4A0A1147D5A4FF8EEF /* EmptyBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 671AEDBFE6554709B374A708 /* EventObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventObject.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/EventObject.h"; sourceTree = SOURCE_ROOT; }; + 6786A2AF5D1541DCB7749E54 /* EmptyContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyContext.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyContext.h"; sourceTree = SOURCE_ROOT; }; + 67A07AA0B3E04A6FBC9B1794 /* View.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = View.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/View.h"; sourceTree = SOURCE_ROOT; }; + 687E164A178846CDB76CE413 /* GFXDescriptorSet.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDescriptorSet.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSet.cpp"; sourceTree = SOURCE_ROOT; }; + 69227C0C0FD2430BA0419274 /* JavaScriptObjCBridge.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = JavaScriptObjCBridge.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/JavaScriptObjCBridge.mm"; sourceTree = SOURCE_ROOT; }; + 6A8FCE2A0F1E4F20B0576354 /* UIPhase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UIPhase.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/UIPhase.h"; sourceTree = SOURCE_ROOT; }; + 6C03E24FB221471B914C4226 /* SRIOConsumer.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRIOConsumer.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumer.m"; sourceTree = SOURCE_ROOT; }; + 6C605F0F61DD4D418982B749 /* PipelineUBO.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineUBO.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineUBO.h"; sourceTree = SOURCE_ROOT; }; + 6C9A8131692A4872BD9F900B /* base64.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = base64.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/base64.cpp"; sourceTree = SOURCE_ROOT; }; + 6D53BF6C0B4C45BC8E88802B /* jsb_cocos_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_cocos_manual.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_cocos_manual.cpp"; sourceTree = SOURCE_ROOT; }; + 6D5E2A3C59AF4956B1E56442 /* RenderStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderStage.h"; sourceTree = SOURCE_ROOT; }; + 6D7E76A2295045C68672DE12 /* Utils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Utils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Utils.cpp"; sourceTree = SOURCE_ROOT; }; + 6E1EFA03538540F6A72AFDBF /* NSURLRequest+SRWebSocketPrivate.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSURLRequest+SRWebSocketPrivate.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/NSURLRequest+SRWebSocketPrivate.h"; sourceTree = SOURCE_ROOT; }; + 6E2A691669E145D2A6171D79 /* ArmatureData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ArmatureData.cpp"; sourceTree = SOURCE_ROOT; }; + 6E4C3A9AE78C4DE4BECED032 /* Random.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Random.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Random.h"; sourceTree = SOURCE_ROOT; }; + 6E7E9D6DD00E4B059C614AB4 /* EmptyDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDescriptorSetLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + 6F52B3AD3A2B4F4D9A23C3C2 /* AnimationConfig.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationConfig.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationConfig.cpp"; sourceTree = SOURCE_ROOT; }; + 6F65F147D7A84EC58EF9BF18 /* MessageQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MessageQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/MessageQueue.h"; sourceTree = SOURCE_ROOT; }; + 701FBB803CA345909670C563 /* BinaryDataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BinaryDataParser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/BinaryDataParser.h"; sourceTree = SOURCE_ROOT; }; + 706CB58F26B148489A7B3080 /* csscolorparser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = csscolorparser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/csscolorparser.h"; sourceTree = SOURCE_ROOT; }; + 7071756CA5BA4549AE65A4C5 /* SRSIMDHelpers.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRSIMDHelpers.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRSIMDHelpers.m"; sourceTree = SOURCE_ROOT; }; + 71A05362916242C98ACDAA9A /* DescriptorSetLayoutAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetLayoutAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetLayoutAgent.h"; sourceTree = SOURCE_ROOT; }; + 71EB60B97F9243CC80AE0E07 /* GFXContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXContext.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXContext.h"; sourceTree = SOURCE_ROOT; }; + 7242BB79FCF146808A0DD7BF /* Class.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Class.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Class.cpp"; sourceTree = SOURCE_ROOT; }; + 72FE0C6F85EC42E094808D67 /* ThreadSafeLinearAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadSafeLinearAllocator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeLinearAllocator.h"; sourceTree = SOURCE_ROOT; }; + 72FEAC9B24734B1CA615F30D /* AsyncTaskPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AsyncTaskPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AsyncTaskPool.h"; sourceTree = SOURCE_ROOT; }; + 7325FC8B8FAA4246B0F70811 /* JobSystem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JobSystem.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/JobSystem.h"; sourceTree = SOURCE_ROOT; }; + 74583647D77A4A89BB885093 /* node.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node.h"; sourceTree = SOURCE_ROOT; }; + 74602AD0E04841C0B5953770 /* Transform.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Transform.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Transform.cpp"; sourceTree = SOURCE_ROOT; }; + 74FAC6AE469F4D30A07AF015 /* TextureAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/TextureAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 75157609C1944EEEB4AA6BB6 /* Math.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Math.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Math.cpp"; sourceTree = SOURCE_ROOT; }; + 7533DA1F16044805BD3FCB68 /* GFXPipelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXPipelineState.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 758DAAFD1DD44862B27F3BB7 /* Quaternion.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Quaternion.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.cpp"; sourceTree = SOURCE_ROOT; }; + 76D268400B0247A58A15155F /* SRLog.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRLog.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRLog.h"; sourceTree = SOURCE_ROOT; }; + 76D5922F0C9D445084D9960E /* DescriptorSetValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetValidator.h"; sourceTree = SOURCE_ROOT; }; + 76E63E9819E04C899ABD05F3 /* Object.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Object.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Object.cpp"; sourceTree = SOURCE_ROOT; }; + 772D02A0A0844D239C9AD58E /* NSRunLoop+SRWebSocketPrivate.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSRunLoop+SRWebSocketPrivate.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/NSRunLoop+SRWebSocketPrivate.h"; sourceTree = SOURCE_ROOT; }; + 7734B58E4EAB40A7976F88C4 /* Vec3.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec3.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.h"; sourceTree = SOURCE_ROOT; }; + 774EF60923D34922BD7AEF2D /* FramebufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FramebufferAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/FramebufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 778486A7BEFC4CE893A5722C /* HttpAsynConnection-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "HttpAsynConnection-apple.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpAsynConnection-apple.h"; sourceTree = SOURCE_ROOT; }; + 779B83DE4F6C4E9FA6233FA6 /* BaseObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseObject.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/BaseObject.cpp"; sourceTree = SOURCE_ROOT; }; + 780AA2CC68DA4767AE7A7ED4 /* MemTracker.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MemTracker.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemTracker.cpp"; sourceTree = SOURCE_ROOT; }; + 789F4A9479424097A9E7376B /* RenderInstancedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderInstancedQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderInstancedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 78C9AC56C2AC4409ABB0C026 /* JSONDataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JSONDataParser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/JSONDataParser.h"; sourceTree = SOURCE_ROOT; }; + 7954A82CBA4A481FB5253813 /* ForwardPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardPipeline.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + 79556DAA7D934040A55ACADE /* MemTracker.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MemTracker.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemTracker.h"; sourceTree = SOURCE_ROOT; }; + 79597A5708E14B10B51319DF /* jsb_platform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_platform.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_platform.h"; sourceTree = SOURCE_ROOT; }; + 795D206746D64CFA92F096B2 /* HttpAsynConnection-apple.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "HttpAsynConnection-apple.m"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpAsynConnection-apple.m"; sourceTree = SOURCE_ROOT; }; + 7A1A0233DF3045238B0A5905 /* RenderFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderFlow.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderFlow.h"; sourceTree = SOURCE_ROOT; }; + 7AA5E1D3BC6B49EFB515A532 /* SRHash.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRHash.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHash.h"; sourceTree = SOURCE_ROOT; }; + 7AC4AED46C3144D0B512DD10 /* DescriptorSetLayoutValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetLayoutValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetLayoutValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 7ACD8AB1F6F8446EA5664A88 /* inspector_socket.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_socket.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket.cpp"; sourceTree = SOURCE_ROOT; }; + 7B9B5BD010E24B288FABFB06 /* jsb_global.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_global.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global.h"; sourceTree = SOURCE_ROOT; }; + 7BD22223F33348AA88C2F542 /* EmptyInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyInputAssembler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + 7C6D50AE163C440BB3F58F5F /* StdAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StdAlloc.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/StdAlloc.h"; sourceTree = SOURCE_ROOT; }; + 7C90C16F7CE342C483D15A95 /* ShadowFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowFlow.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowFlow.h"; sourceTree = SOURCE_ROOT; }; + 7CAC5AF5AD164791851C63F6 /* RenderInstancedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderInstancedQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderInstancedQueue.h"; sourceTree = SOURCE_ROOT; }; + 7D664A9912FB492EAF56C24E /* MTLGPUObjects.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLGPUObjects.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLGPUObjects.h"; sourceTree = SOURCE_ROOT; }; + 7D66AAF0BE8E4C73B0F2966A /* MTLDevice.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDevice.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDevice.mm"; sourceTree = SOURCE_ROOT; }; + 7D72EA34351C4684B7FC45B8 /* CCArmatureCacheDisplay.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCArmatureCacheDisplay.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureCacheDisplay.h"; sourceTree = SOURCE_ROOT; }; + 7DB29489816B466B8DCCEFC8 /* RenderPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPipeline.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderPipeline.h"; sourceTree = SOURCE_ROOT; }; + 7DCBFC568654489089C14FBD /* jsb_cocos_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_cocos_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_cocos_auto.h"; sourceTree = SOURCE_ROOT; }; + 7DE0B66640994E65882BA275 /* EmptySampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptySampler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptySampler.h"; sourceTree = SOURCE_ROOT; }; + 7E3ADBA537814882AA198D3D /* GFXDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDescriptorSetLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + 7E88CE134DD842AB9FE18150 /* MappingUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MappingUtils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/MappingUtils.h"; sourceTree = SOURCE_ROOT; }; + 7EF25FD6ADE04547911B1B87 /* FileUtils-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "FileUtils-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/FileUtils-apple.mm"; sourceTree = SOURCE_ROOT; }; + 7F190A03641042A99503265C /* CustomEventTypes.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CustomEventTypes.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/CustomEventTypes.h"; sourceTree = SOURCE_ROOT; }; + 7FE69EE25E134E28A2610679 /* InstancedBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InstancedBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/InstancedBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 8066F8DF8A344BA0B44B18DC /* SRMutex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRMutex.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRMutex.h"; sourceTree = SOURCE_ROOT; }; + 81323059F3134439A96CC94A /* MTLPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLPipelineState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineState.h"; sourceTree = SOURCE_ROOT; }; + 819F0BD3C3754CEDA18CD6D9 /* node.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = node.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node.cpp"; sourceTree = SOURCE_ROOT; }; + 821D878CC26E4CA6B3BBD788 /* UserData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UserData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/UserData.cpp"; sourceTree = SOURCE_ROOT; }; + 8296E9CA4B2D48FBA400E96C /* GFXShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXShader.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXShader.h"; sourceTree = SOURCE_ROOT; }; + 82C118FE008F4D22A9109768 /* CCSlot.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCSlot.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCSlot.cpp"; sourceTree = SOURCE_ROOT; }; + 82EC8A9D43BC4F12AD339110 /* CommandBufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CommandBufferValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/CommandBufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 82F7C6EA1442466D8848B3F7 /* Macros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Macros.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Macros.h"; sourceTree = SOURCE_ROOT; }; + 8466EB4AA8BF4C4380011214 /* IAnimatable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IAnimatable.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/IAnimatable.h"; sourceTree = SOURCE_ROOT; }; + 8472BF0F696940C7809B3796 /* ShaderValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShaderValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ShaderValidator.h"; sourceTree = SOURCE_ROOT; }; + 84A654CFABE1491EA6CA08DA /* jsb_classtype.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_classtype.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_classtype.h"; sourceTree = SOURCE_ROOT; }; + 84F9387623614AB780AE7116 /* jsb_classtype.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_classtype.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_classtype.cpp"; sourceTree = SOURCE_ROOT; }; + 850113D269B647A59F16E144 /* GFXObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXObject.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXObject.cpp"; sourceTree = SOURCE_ROOT; }; + 851DDE2029F84B0CAABECECA /* BufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/BufferAgent.h"; sourceTree = SOURCE_ROOT; }; + 853ECC8B6E8D40BCB83DE2F6 /* SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRWebSocket.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + 856E1C8D7DBA4B2795223229 /* GFXQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 858A6F5B1561439AACEE6403 /* Application.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Application.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Application.h"; sourceTree = SOURCE_ROOT; }; + 860ECBECB969435595A45E12 /* MTLTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLTexture.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLTexture.h"; sourceTree = SOURCE_ROOT; }; + 8642E86EE4B04495B088081D /* TextureAtlasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureAtlasData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/TextureAtlasData.cpp"; sourceTree = SOURCE_ROOT; }; + 86EB79E1F62A44E8A084B6A7 /* DeviceValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeviceValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DeviceValidator.h"; sourceTree = SOURCE_ROOT; }; + 86FF40BA76484DCFB4507334 /* TextureAtlasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureAtlasData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/TextureAtlasData.h"; sourceTree = SOURCE_ROOT; }; + 8746D4997A034CCA9B73FA65 /* jsb_global_init.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_global_init.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global_init.cpp"; sourceTree = SOURCE_ROOT; }; + 875D66B4DF994778B09826D4 /* BatchedBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BatchedBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/BatchedBuffer.h"; sourceTree = SOURCE_ROOT; }; + 87ADD8C3583449BFB6FA6BC2 /* PipelineSceneData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineSceneData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineSceneData.cpp"; sourceTree = SOURCE_ROOT; }; + 87F38A46B0E2414EACD96F0A /* PipelineStateManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateManager.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineStateManager.h"; sourceTree = SOURCE_ROOT; }; + 87FA5E46D49A4EE4A77F2544 /* IOBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = IOBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 88129FD5D4154316953CF807 /* SRHash.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRHash.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHash.m"; sourceTree = SOURCE_ROOT; }; + 881E5DA6F6704358ACA4AD9C /* BoundingBoxData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BoundingBoxData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/BoundingBoxData.cpp"; sourceTree = SOURCE_ROOT; }; + 8874A676867E4F5C8C48EB1F /* SRIOConsumer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRIOConsumer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumer.h"; sourceTree = SOURCE_ROOT; }; + 88B4B03204484ADC9B72DBD2 /* Armature.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Armature.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Armature.h"; sourceTree = SOURCE_ROOT; }; + 88C5232C49664C2197D64DD5 /* Export.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Export.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/include/Export.h"; sourceTree = SOURCE_ROOT; }; + 8930082B41C945B78B7487CD /* Quaternion.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Quaternion.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.h"; sourceTree = SOURCE_ROOT; }; + 898F7A998444498D8AFA4D4D /* AnimationData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationData.h"; sourceTree = SOURCE_ROOT; }; + 89D3D5CC3BCA430AA848B6C2 /* Point.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Point.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Point.h"; sourceTree = SOURCE_ROOT; }; + 8B12C64C329F4E7E9DE8F8FA /* jsb_dragonbones_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dragonbones_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_dragonbones_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 8B641AA6C9704DE8B6450B6E /* DragonBones.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DragonBones.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/DragonBones.cpp"; sourceTree = SOURCE_ROOT; }; + 8B750611598048ACBD50CA72 /* Vector.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vector.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Vector.h"; sourceTree = SOURCE_ROOT; }; + 8B92887B334E4974B3B74B4E /* GFXQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXQueue.h"; sourceTree = SOURCE_ROOT; }; + 8BAE33D947DC4F30B93AE20E /* Reachability.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Reachability.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Reachability.h"; sourceTree = SOURCE_ROOT; }; + 8BE41298908E425CA56EA0D9 /* ThreadPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadPool.cpp"; sourceTree = SOURCE_ROOT; }; + 8BF76C9023BF4192824C9117 /* ArmatureCacheMgr.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureCacheMgr.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCacheMgr.h"; sourceTree = SOURCE_ROOT; }; + 8C515DB7360F440CB19C0661 /* RenderAdditiveLightQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderAdditiveLightQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderAdditiveLightQueue.h"; sourceTree = SOURCE_ROOT; }; + 8D2128A109A940FFB615489F /* Quaternion.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Quaternion.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.inl"; sourceTree = SOURCE_ROOT; }; + 8D28BC027A184C5386F49923 /* MTLTexture.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLTexture.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLTexture.mm"; sourceTree = SOURCE_ROOT; }; + 8D2C7437C77548E68F212AED /* SAXParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SAXParser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/SAXParser.h"; sourceTree = SOURCE_ROOT; }; + 8D2DB8D354A141E0B787E6D3 /* etc1.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = etc1.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc1.h"; sourceTree = SOURCE_ROOT; }; + 8D67B1DC965040C098FDF259 /* ForwardStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardStage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardStage.h"; sourceTree = SOURCE_ROOT; }; + 8DDE727401034C509D86AB1C /* DeferredPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeferredPipeline.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/DeferredPipeline.h"; sourceTree = SOURCE_ROOT; }; + 8F3FD75DDCAC43F98FAB537F /* ShadowMapBatchedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowMapBatchedQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/ShadowMapBatchedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 8F7D96ADCC644B09BE23044C /* GFXTextureBarrier.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXTextureBarrier.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTextureBarrier.h"; sourceTree = SOURCE_ROOT; }; + 90CCFBC5797F4F1CAB0AD0AC /* FramebufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FramebufferValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/FramebufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 90CE29B44C0C4A91B5C4E4AD /* Utils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Utils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Utils.h"; sourceTree = SOURCE_ROOT; }; + 90F2857C0ADD4DF3941F6A13 /* jsb_gfx_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_gfx_manual.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_gfx_manual.h"; sourceTree = SOURCE_ROOT; }; + 912B543094C8450BB845B83D /* WebView.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = WebView.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/webview/WebView.h"; sourceTree = SOURCE_ROOT; }; + 91AE76F0F07949D5BC957931 /* jsb_extension_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_extension_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_extension_auto.h"; sourceTree = SOURCE_ROOT; }; + 91EB3026B8AA4764A4BF66FE /* RenderAdditiveLightQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderAdditiveLightQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderAdditiveLightQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 92D28D61F02043B087CBC923 /* node_debug_options.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node_debug_options.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_debug_options.h"; sourceTree = SOURCE_ROOT; }; + 92D6188F2C224B30B05759A6 /* BufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/BufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 931EEBBC76024477ABC702B5 /* MTLContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLContext.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLContext.h"; sourceTree = SOURCE_ROOT; }; + 93F4B6F75D9F4FAEBBCD3FBA /* MTLStd.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MTLStd.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLStd.cpp"; sourceTree = SOURCE_ROOT; }; + 949ADC1027B54A7A878EBDC2 /* CanvasRenderingContext2D-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "CanvasRenderingContext2D-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/CanvasRenderingContext2D-apple.mm"; sourceTree = SOURCE_ROOT; }; + 9568F744A3EA48898D7C8A70 /* DefineMap.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DefineMap.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/DefineMap.h"; sourceTree = SOURCE_ROOT; }; + 959E0CBDA63349EC860DE007 /* xxtea.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = xxtea.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/xxtea/xxtea.cpp"; sourceTree = SOURCE_ROOT; }; + 95D61C118DE44B6EAC8A57A0 /* jsb_network_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_network_manual.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_network_manual.h"; sourceTree = SOURCE_ROOT; }; + 960F68C8767145F0A2F96803 /* PipelineStateValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineStateValidator.h"; sourceTree = SOURCE_ROOT; }; + 968512EAF221492389D52233 /* inspector_socket_server.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_socket_server.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket_server.cpp"; sourceTree = SOURCE_ROOT; }; + 9757F33650CB4411820E3FBC /* jsb_dragonbones_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dragonbones_manual.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_dragonbones_manual.cpp"; sourceTree = SOURCE_ROOT; }; + 97B4BB89B11D482E815D782E /* IOTypedArray.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = IOTypedArray.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOTypedArray.cpp"; sourceTree = SOURCE_ROOT; }; + 97D2945E0A754E58968086E2 /* DevicePassResourceTable.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DevicePassResourceTable.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePassResourceTable.cpp"; sourceTree = SOURCE_ROOT; }; + 98655128708C4A75A43AC6D6 /* GFXTexture.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXTexture.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTexture.cpp"; sourceTree = SOURCE_ROOT; }; + 986A5D3C8D5D47F382627E7A /* DescriptorSetAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 990C85AB6F964DD88D7AA9D4 /* StringHandle.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = StringHandle.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringHandle.cpp"; sourceTree = SOURCE_ROOT; }; + 99245B6BA27641CA95538F23 /* DownloaderImpl-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "DownloaderImpl-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl-apple.mm"; sourceTree = SOURCE_ROOT; }; + 99673F5A7B2E4A9A97173EAE /* BaseTimelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseTimelineState.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/BaseTimelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 9972FB4CC27B4952861F1491 /* jsb_extension_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_extension_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_extension_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 99D8C1CAECA4456D9898C5D9 /* EmptyPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyPipelineState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineState.h"; sourceTree = SOURCE_ROOT; }; + 99F44F09D43645788D38B153 /* AnimationConfig.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationConfig.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationConfig.h"; sourceTree = SOURCE_ROOT; }; + 9B37D92667D949B99C233353 /* EmptyBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyBuffer.h"; sourceTree = SOURCE_ROOT; }; + 9B54110CD0974F6EB1AF22B1 /* DeviceValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeviceValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DeviceValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 9B9346E05723495AB355AF47 /* GFXBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBuffer.h"; sourceTree = SOURCE_ROOT; }; + 9BE2B396D28E4577BF82B8DB /* jsb_gfx_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_gfx_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_gfx_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 9C24E27A749243E383FF2E56 /* Utils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Utils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Utils.h"; sourceTree = SOURCE_ROOT; }; + 9CEBE9CECEF84115977FF919 /* ThreadPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadPool.h"; sourceTree = SOURCE_ROOT; }; + 9D361600626140DBA9DC8680 /* PostprocessStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PostprocessStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/PostprocessStage.cpp"; sourceTree = SOURCE_ROOT; }; + 9D75FAA7C8074005BDB5E840 /* ConditionVariable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConditionVariable.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ConditionVariable.h"; sourceTree = SOURCE_ROOT; }; + 9DA8230BDE784DA69A015CE8 /* EmptyInputAssembler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyInputAssembler.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyInputAssembler.cpp"; sourceTree = SOURCE_ROOT; }; + 9E3FD6B612334F0690887169 /* EmptyDescriptorSetLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDescriptorSetLayout.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSetLayout.cpp"; sourceTree = SOURCE_ROOT; }; + 9EE601069D0C4BEF8FE6F6FA /* ResourceAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceAllocator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceAllocator.h"; sourceTree = SOURCE_ROOT; }; + A01E6DA5400844C0909763B5 /* AudioDecoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioDecoder.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioDecoder.h"; sourceTree = SOURCE_ROOT; }; + A0ED7DEF22D04492B1B33332 /* Constraint.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Constraint.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Constraint.h"; sourceTree = SOURCE_ROOT; }; + A165F068649348BB96C238BD /* PipelineLayoutAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineLayoutAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineLayoutAgent.cpp"; sourceTree = SOURCE_ROOT; }; + A1FF6128A03347E3AC758DD5 /* Device-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Device-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/Device-apple.mm"; sourceTree = SOURCE_ROOT; }; + A2D78EB738C44D40AB63F2F3 /* PipelineStateManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateManager.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineStateManager.cpp"; sourceTree = SOURCE_ROOT; }; + A321F2085709480CA4ADAD6A /* EmptyFramebuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyFramebuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyFramebuffer.cpp"; sourceTree = SOURCE_ROOT; }; + A3F7660698A249ABABEF45FE /* RenderPassAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPassAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/RenderPassAgent.h"; sourceTree = SOURCE_ROOT; }; + A440C767E9E84AF7B9D754A0 /* RenderPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPipeline.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + A4DF32B8FC274D3C9629D643 /* jsb_video_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_video_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_video_auto.cpp"; sourceTree = SOURCE_ROOT; }; + A55027CBF8C24420B2BDCF20 /* MTLDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDescriptorSet.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + A5576971E1DA4B87A6A8E5FF /* AudioCache.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioCache.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioCache.mm"; sourceTree = SOURCE_ROOT; }; + A6DEFC3C13A8488084C24DDB /* SeApi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SeApi.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/SeApi.h"; sourceTree = SOURCE_ROOT; }; + A70B328F099943EB9B941798 /* MessageQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MessageQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/MessageQueue.cpp"; sourceTree = SOURCE_ROOT; }; + A716437DFDA9408BB3128BA3 /* Data.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Data.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Data.h"; sourceTree = SOURCE_ROOT; }; + A724B7BB4C764059B09C9D3B /* jsb_cocos_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_cocos_auto.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_cocos_auto.cpp"; sourceTree = SOURCE_ROOT; }; + A75B7072D1F54347A6F3D6C3 /* Manifest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Manifest.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/Manifest.h"; sourceTree = SOURCE_ROOT; }; + A769C2372C4F4FACB0A24FE8 /* EmptyRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyRenderPass.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyRenderPass.h"; sourceTree = SOURCE_ROOT; }; + A791A59BE42D4EF78365806E /* SRHTTPConnectMessage.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRHTTPConnectMessage.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHTTPConnectMessage.m"; sourceTree = SOURCE_ROOT; }; + A79CF5E534D94322A7EAF49D /* Value.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Value.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Value.h"; sourceTree = SOURCE_ROOT; }; + A7A728D66FBA4464A53555B2 /* MTLCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLCommandEncoder.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; + A801CA88F7294F3E95D17787 /* Device-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "Device-apple.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/Device-apple.h"; sourceTree = SOURCE_ROOT; }; + A92426B7694B4BAFBB8D0534 /* QueueAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = QueueAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/QueueAgent.h"; sourceTree = SOURCE_ROOT; }; + A99006AD0CE2475998277204 /* astc.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = astc.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/astc.cpp"; sourceTree = SOURCE_ROOT; }; + AA7E8FE4F4FD436A992F8032 /* TFJobGraph.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TFJobGraph.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobGraph.h"; sourceTree = SOURCE_ROOT; }; + AB0787D169484EA594A71278 /* AudioPlayer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioPlayer.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioPlayer.mm"; sourceTree = SOURCE_ROOT; }; + AB1DDADCA51B479C92CB74D9 /* PoolType.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PoolType.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/PoolType.h"; sourceTree = SOURCE_ROOT; }; + AB425C23A99A441F85EA19B5 /* Value.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Value.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Value.cpp"; sourceTree = SOURCE_ROOT; }; + AB98EBF520C74708A2543A83 /* ObjectWrap.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ObjectWrap.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ObjectWrap.cpp"; sourceTree = SOURCE_ROOT; }; + ABB0DA5B11BB4CB2AFE1DADC /* Animation.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Animation.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/Animation.h"; sourceTree = SOURCE_ROOT; }; + ABDCBF397712469B997CACE6 /* PassNodeBuilder.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassNodeBuilder.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNodeBuilder.cpp"; sourceTree = SOURCE_ROOT; }; + ABDCDE6921ED42F8A25EC85E /* MiddlewareManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MiddlewareManager.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareManager.cpp"; sourceTree = SOURCE_ROOT; }; + AC9CDB6FDC9F48419A2483D3 /* HttpClient.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpClient.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpClient.h"; sourceTree = SOURCE_ROOT; }; + AD089C8092634AFF8CDB555E /* Vec4.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec4.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.h"; sourceTree = SOURCE_ROOT; }; + AD158F8A5C5041D8BDC1A36F /* State.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = State.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/State.h"; sourceTree = SOURCE_ROOT; }; + ADDB399296B54BE9903944AF /* DeviceAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeviceAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DeviceAgent.h"; sourceTree = SOURCE_ROOT; }; + AE5EF6EB20144A8890151F5D /* tommy.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = tommy.c; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tommyds/tommy.c"; sourceTree = SOURCE_ROOT; }; + AE81D16E098D4859964635E7 /* Scheduler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Scheduler.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Scheduler.cpp"; sourceTree = SOURCE_ROOT; }; + AEC2480E09404C44B1048D43 /* View.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = View.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/View.mm"; sourceTree = SOURCE_ROOT; }; + AF505C0C6B184BC1BA3B32A3 /* MathUtilNeon64.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilNeon64.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilNeon64.inl"; sourceTree = SOURCE_ROOT; }; + AF66D3C7502A498097716036 /* Manifest.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Manifest.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/Manifest.cpp"; sourceTree = SOURCE_ROOT; }; + AF91400FEA0F4E14BC77E2CE /* EmptyShader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyShader.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyShader.cpp"; sourceTree = SOURCE_ROOT; }; + B00AF955F4B04FDF8258A99D /* HttpResponse.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpResponse.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpResponse.h"; sourceTree = SOURCE_ROOT; }; + B0135429A32A43AC87A12B30 /* InputAssemblerAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InputAssemblerAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/InputAssemblerAgent.cpp"; sourceTree = SOURCE_ROOT; }; + B04D8CE65A7B4FC6AF92638D /* MTLUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLUtils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLUtils.h"; sourceTree = SOURCE_ROOT; }; + B098DAA9E20E4CFC9A113125 /* BufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/BufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + B1F3ACE557F24CC18839760F /* SRProxyConnect.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRProxyConnect.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy/SRProxyConnect.h"; sourceTree = SOURCE_ROOT; }; + B232B22F689E4099B65A1565 /* DisplayData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DisplayData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DisplayData.cpp"; sourceTree = SOURCE_ROOT; }; + B2EB4130BBA2461BB31666E6 /* TFJobGraph.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TFJobGraph.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobGraph.cpp"; sourceTree = SOURCE_ROOT; }; + B373A1C7612443EFBCB7C00F /* ResourceNode.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceNode.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceNode.h"; sourceTree = SOURCE_ROOT; }; + B38E749E92CF40549DCDFA87 /* UIPhase.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UIPhase.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/UIPhase.cpp"; sourceTree = SOURCE_ROOT; }; + B474B46BBB224CADA1FE171B /* jsb_conversions.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_conversions.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_conversions.cpp"; sourceTree = SOURCE_ROOT; }; + B4AFC7E5AFE344A292FD12DB /* MiddlewareMacro.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MiddlewareMacro.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareMacro.h"; sourceTree = SOURCE_ROOT; }; + B4D6C873BF7E4317AEC5B28B /* Transform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Transform.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Transform.h"; sourceTree = SOURCE_ROOT; }; + B4F780EA183F4320A5130E18 /* MathUtil.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtil.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.inl"; sourceTree = SOURCE_ROOT; }; + B51AD5C56A8E4E0082A1C0B2 /* DeformVertices.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeformVertices.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/DeformVertices.h"; sourceTree = SOURCE_ROOT; }; + B53BFD33D3004B428BEAC63D /* SRRunLoopThread.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRRunLoopThread.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop/SRRunLoopThread.m"; sourceTree = SOURCE_ROOT; }; + B53C262D0D3F477AA036B898 /* MTLRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLRenderPass.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderPass.h"; sourceTree = SOURCE_ROOT; }; + B57AE1F6E94A40679397724D /* TimelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TimelineState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/TimelineState.h"; sourceTree = SOURCE_ROOT; }; + B5E01AAC1CA5415F9C544294 /* LocalStorage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LocalStorage.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/storage/local-storage/LocalStorage.h"; sourceTree = SOURCE_ROOT; }; + B63672917F42457CBC15E9F0 /* Semaphore.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Semaphore.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Semaphore.h"; sourceTree = SOURCE_ROOT; }; + B6CD38366B5642579E0D12AE /* Device-ios.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Device-ios.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Device-ios.mm"; sourceTree = SOURCE_ROOT; }; + B6CEFE9E50BA46139312F970 /* NSURLRequest+SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "NSURLRequest+SRWebSocket.m"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSURLRequest+SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + B6E40E62666D43AB85E72CCB /* EmptyContext.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyContext.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyContext.cpp"; sourceTree = SOURCE_ROOT; }; + B70C30160FD94DF6AACFCC29 /* EmptyPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyPipelineLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + B726B374C5254C81B9E9F18D /* VideoPlayer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = VideoPlayer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/videoplayer/VideoPlayer.h"; sourceTree = SOURCE_ROOT; }; + B733AFEC82334AFE994EEFEF /* JeAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JeAlloc.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/JeAlloc.h"; sourceTree = SOURCE_ROOT; }; + B765E4405FE4443DB584E7FB /* Ref.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Ref.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Ref.h"; sourceTree = SOURCE_ROOT; }; + B8437033FDF748AF86CFE936 /* AudioEngine-inl.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "AudioEngine-inl.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioEngine-inl.mm"; sourceTree = SOURCE_ROOT; }; + B8455FC4C661433991140849 /* SRLog.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRLog.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRLog.m"; sourceTree = SOURCE_ROOT; }; + B8BE11EE8A724986B7F65571 /* CallbackPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CallbackPass.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/CallbackPass.h"; sourceTree = SOURCE_ROOT; }; + B8EB0FF6028544AA8146EE8E /* HttpClient-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "HttpClient-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpClient-apple.mm"; sourceTree = SOURCE_ROOT; }; + B9F3BC333003425490D08CD0 /* MTLConfig.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLConfig.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLConfig.h"; sourceTree = SOURCE_ROOT; }; + BA7A40DAE8674038A24B3575 /* TypeDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TypeDef.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/TypeDef.h"; sourceTree = SOURCE_ROOT; }; + BAC8D97E705E4BA3B1F510BA /* Mat4.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Mat4.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.h"; sourceTree = SOURCE_ROOT; }; + BB89CFE0F11C404E8DB4254B /* DataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DataParser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/DataParser.h"; sourceTree = SOURCE_ROOT; }; + BB9CBD82386D429D8C91E57C /* BaseTimelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseTimelineState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/BaseTimelineState.h"; sourceTree = SOURCE_ROOT; }; + BBDE8B26BF774048BDF9A289 /* GFXRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXRenderPass.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXRenderPass.h"; sourceTree = SOURCE_ROOT; }; + BBF64CA78F254C6A9EE1A0DF /* jsb_network_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_network_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_network_auto.h"; sourceTree = SOURCE_ROOT; }; + BC1793E166B94DDDB4563ED3 /* PassInsertPointManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassInsertPointManager.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassInsertPointManager.cpp"; sourceTree = SOURCE_ROOT; }; + BC57D69DF0C2491EA7FCAB73 /* MTLRenderPass.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLRenderPass.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderPass.mm"; sourceTree = SOURCE_ROOT; }; + BC5E0FA64DF74CCB99F33EA1 /* jsb_module_register.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_module_register.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_module_register.h"; sourceTree = SOURCE_ROOT; }; + BE0EFE82E90B4193A465B6EC /* MTLShader.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLShader.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLShader.mm"; sourceTree = SOURCE_ROOT; }; + BEA1174A596C46C390C439C3 /* CanvasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CanvasData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/CanvasData.cpp"; sourceTree = SOURCE_ROOT; }; + BF0192C790814847893B4182 /* Downloader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Downloader.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Downloader.cpp"; sourceTree = SOURCE_ROOT; }; + BF786668B2634D4D8A6C0CBF /* ThreadPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ThreadPool.cpp"; sourceTree = SOURCE_ROOT; }; + BF7ED01DD94F46BFB47E4965 /* xxtea.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = xxtea.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/xxtea/xxtea.h"; sourceTree = SOURCE_ROOT; }; + C2250BD95C6B431DACBA93F0 /* QueueValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = QueueValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/QueueValidator.cpp"; sourceTree = SOURCE_ROOT; }; + C2433F97C19145C4BC9C4409 /* Data.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Data.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Data.cpp"; sourceTree = SOURCE_ROOT; }; + C2ABC50A40A44E49AD383F5D /* inspector_io.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_io.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_io.cpp"; sourceTree = SOURCE_ROOT; }; + C2B06F4FF20541389787A787 /* ZipUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ZipUtils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ZipUtils.h"; sourceTree = SOURCE_ROOT; }; + C2B85F245DA547DF9966C9F0 /* RenderFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderFlow.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderFlow.cpp"; sourceTree = SOURCE_ROOT; }; + C3473FC72D4445959D385235 /* AudioEngine.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AudioEngine.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/AudioEngine.cpp"; sourceTree = SOURCE_ROOT; }; + C369A28DB8C74706A82452DA /* jsb_websocket.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_websocket.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_websocket.cpp"; sourceTree = SOURCE_ROOT; }; + C3C7DA8BD43B45D0A76BFB20 /* TextureAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/TextureAgent.h"; sourceTree = SOURCE_ROOT; }; + C3D40370AA8C4BCF9DFA117A /* util.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = util.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util.h"; sourceTree = SOURCE_ROOT; }; + C42D92F6B5A44E65B7F7597E /* CoreStd.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CoreStd.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/CoreStd.h"; sourceTree = SOURCE_ROOT; }; + C4EB3ED6BD524BD0A78ABEED /* UTF8.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UTF8.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/UTF8.cpp"; sourceTree = SOURCE_ROOT; }; + C508C71ABAAB42D28764931C /* MTLFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLFramebuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + C50DFB26B518427BB35CD9FC /* IArmatureProxy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IArmatureProxy.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/IArmatureProxy.h"; sourceTree = SOURCE_ROOT; }; + C5521A2E77724FB4A81EE3B3 /* NSURLRequest+SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSURLRequest+SRWebSocket.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSURLRequest+SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + C5BC51C8172B4090BED8504A /* cocos-ext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "cocos-ext.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/cocos-ext.h"; sourceTree = SOURCE_ROOT; }; + C6E9F5CE1B6D4D519CDE42FB /* ForwardFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardFlow.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardFlow.h"; sourceTree = SOURCE_ROOT; }; + C700567893364573B250D290 /* MathUtilSSE.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilSSE.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilSSE.inl"; sourceTree = SOURCE_ROOT; }; + C7980DBB9BDC4F6682E1C3CA /* AnimationData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationData.cpp"; sourceTree = SOURCE_ROOT; }; + C7AA3241010246A78855BD9B /* SRSecurityPolicy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRSecurityPolicy.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRSecurityPolicy.h"; sourceTree = SOURCE_ROOT; }; + C8837A06DA64422F9E078441 /* RenderQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderQueue.h"; sourceTree = SOURCE_ROOT; }; + C8F01D3E8989408B962F61DC /* inspector_io.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_io.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_io.h"; sourceTree = SOURCE_ROOT; }; + C97F4AE295474A239236ADEB /* LightingStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LightingStage.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingStage.cpp"; sourceTree = SOURCE_ROOT; }; + C9A37B4D3CF240909B89B7CA /* GFXInputAssembler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXInputAssembler.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXInputAssembler.cpp"; sourceTree = SOURCE_ROOT; }; + C9BCE720705A4E1CB6316DA0 /* WebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = WebSocket.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/WebSocket.h"; sourceTree = SOURCE_ROOT; }; + C9E836CE146E428EBF82A3D0 /* DevicePass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DevicePass.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePass.cpp"; sourceTree = SOURCE_ROOT; }; + CA1E7552A71B4C5FB1EB94BC /* CCTextureAtlasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCTextureAtlasData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCTextureAtlasData.cpp"; sourceTree = SOURCE_ROOT; }; + CAC49A1BEBCE4463BC97E147 /* TransformObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TransformObject.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/TransformObject.cpp"; sourceTree = SOURCE_ROOT; }; + CAD5488EFD7445FBBD6918AB /* Ref.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Ref.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Ref.cpp"; sourceTree = SOURCE_ROOT; }; + CB16F6021E96452FA72FCAC0 /* SamplerAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SamplerAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/SamplerAgent.cpp"; sourceTree = SOURCE_ROOT; }; + CBF41DAC0DF34181996DE411 /* SRURLUtilities.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRURLUtilities.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRURLUtilities.m"; sourceTree = SOURCE_ROOT; }; + CC13977548F245158BF7B6AE /* SamplerAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SamplerAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/SamplerAgent.h"; sourceTree = SOURCE_ROOT; }; + CC818714EFBA423CBA1AE639 /* EditBox.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EditBox.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/edit-box/EditBox.h"; sourceTree = SOURCE_ROOT; }; + CCC4E6183C734752B2F0C79B /* AllocatedObj.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AllocatedObj.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/AllocatedObj.cpp"; sourceTree = SOURCE_ROOT; }; + CCC57D534E964FD79D5D31D3 /* FramebufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FramebufferValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/FramebufferValidator.h"; sourceTree = SOURCE_ROOT; }; + CD3B9717C889497D948999FD /* WebSocket-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "WebSocket-apple.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/WebSocket-apple.mm"; sourceTree = SOURCE_ROOT; }; + CD9298C020054023AECD57CC /* Vec2.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec2.inl; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.inl"; sourceTree = SOURCE_ROOT; }; + CDC55E997A49470C8BCF5650 /* StringHandle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringHandle.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringHandle.h"; sourceTree = SOURCE_ROOT; }; + CFAC548543C8499C928ADA5D /* jsb_gfx_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_gfx_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_gfx_auto.h"; sourceTree = SOURCE_ROOT; }; + CFD253AF27B04DC1B8002860 /* CCTextureAtlasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCTextureAtlasData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCTextureAtlasData.h"; sourceTree = SOURCE_ROOT; }; + CFF2DD0647F948008DAAADB4 /* JavaScriptObjCBridge.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JavaScriptObjCBridge.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/JavaScriptObjCBridge.h"; sourceTree = SOURCE_ROOT; }; + D02CA1B5B4BD403CB745D5B7 /* BaseObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseObject.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/BaseObject.h"; sourceTree = SOURCE_ROOT; }; + D0404566A51F4F13B56E0DAE /* DefineMap.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DefineMap.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/DefineMap.cpp"; sourceTree = SOURCE_ROOT; }; + D05DA49C416646B1AF047424 /* RenderBatchedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderBatchedQueue.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderBatchedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + D0709EA5CA2B4BFA995F2227 /* base64.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = base64.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/base64.h"; sourceTree = SOURCE_ROOT; }; + D10CC4E0E0EA443E89F21C74 /* PlanarShadowQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PlanarShadowQueue.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PlanarShadowQueue.h"; sourceTree = SOURCE_ROOT; }; + D171186431BA40DB9E1B4ADE /* SharedMemory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SharedMemory.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/SharedMemory.cpp"; sourceTree = SOURCE_ROOT; }; + D1740ABB9D7D4324B9C191FA /* AudioEngine-inl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "AudioEngine-inl.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioEngine-inl.h"; sourceTree = SOURCE_ROOT; }; + D19D389BCF3B4992AA0462A4 /* ExtensionExport.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ExtensionExport.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/ExtensionExport.h"; sourceTree = SOURCE_ROOT; }; + D20D536864394AEB85C4DFA7 /* MiddlewareManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MiddlewareManager.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareManager.h"; sourceTree = SOURCE_ROOT; }; + D3C3B49116574D498CCA88A7 /* EventAssetsManagerEx.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventAssetsManagerEx.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/EventAssetsManagerEx.cpp"; sourceTree = SOURCE_ROOT; }; + D3C6AD992A0043498D83E33B /* CommandBufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CommandBufferAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/CommandBufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + D4391FFF967A434999A02B4E /* Image.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Image.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Image.cpp"; sourceTree = SOURCE_ROOT; }; + D45CCCBD4CF5421A89096B39 /* jsb_audio_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_audio_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_audio_auto.h"; sourceTree = SOURCE_ROOT; }; + D48B771F3B1B4F22BA25E9D9 /* Vec2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec2.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.cpp"; sourceTree = SOURCE_ROOT; }; + D49FCA0D7FEE41D69BE868A4 /* SRIOConsumerPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRIOConsumerPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumerPool.h"; sourceTree = SOURCE_ROOT; }; + D54E7ADB1D6741479EFD39B7 /* Geometry.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Geometry.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Geometry.h"; sourceTree = SOURCE_ROOT; }; + D554808A995B4F599991D4AF /* ZipUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ZipUtils.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ZipUtils.cpp"; sourceTree = SOURCE_ROOT; }; + D58C733EDF6243EC94930987 /* SkinData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SkinData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/SkinData.h"; sourceTree = SOURCE_ROOT; }; + D59B6798F55B467C85580662 /* FileUtils-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "FileUtils-apple.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/FileUtils-apple.h"; sourceTree = SOURCE_ROOT; }; + D5C52C1F9A5641EA8813097B /* PassInsertPointManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassInsertPointManager.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassInsertPointManager.h"; sourceTree = SOURCE_ROOT; }; + D612CBE16B6A4517A6B81099 /* GFXFramebuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXFramebuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXFramebuffer.cpp"; sourceTree = SOURCE_ROOT; }; + D6914951E68C4E078C076C91 /* middleware-adapter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "middleware-adapter.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/middleware-adapter.h"; sourceTree = SOURCE_ROOT; }; + D6A916BDAE714AF5A6DD1439 /* IEventDispatcher.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IEventDispatcher.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/IEventDispatcher.h"; sourceTree = SOURCE_ROOT; }; + D6B4A01870E24BFB9892C179 /* ConvertUTF.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConvertUTF.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTF.h"; sourceTree = SOURCE_ROOT; }; + D70A9DC872B1426B8E4C84BF /* ShaderAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShaderAgent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/ShaderAgent.h"; sourceTree = SOURCE_ROOT; }; + D7228E4142CA4088842D684E /* ShaderAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShaderAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/ShaderAgent.cpp"; sourceTree = SOURCE_ROOT; }; + D72F9F1A2CDD455BBB59E7CB /* AnimationState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationState.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/AnimationState.cpp"; sourceTree = SOURCE_ROOT; }; + D76C9D8EE59E4A4DB1FE55E1 /* TypedArrayPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TypedArrayPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/TypedArrayPool.h"; sourceTree = SOURCE_ROOT; }; + D78EF58CD1024F35A07F1FCA /* node_debug_options.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = node_debug_options.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_debug_options.cpp"; sourceTree = SOURCE_ROOT; }; + D7A7E07DB73E4F9E83720300 /* SHA1.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SHA1.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/SHA1.h"; sourceTree = SOURCE_ROOT; }; + D7CAEFD15AC2485EA06EF3FD /* SocketRocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SocketRocket.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SocketRocket.h"; sourceTree = SOURCE_ROOT; }; + D7F7F58A35A14247A5CB9DEF /* CanvasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CanvasData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/CanvasData.h"; sourceTree = SOURCE_ROOT; }; + D8F4D2BE6FC6452D9ED5C162 /* WebViewImpl-ios.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "WebViewImpl-ios.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/webview/WebViewImpl-ios.mm"; sourceTree = SOURCE_ROOT; }; + D92D171ABFDF453EBDAFDD14 /* inspector_socket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_socket.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket.h"; sourceTree = SOURCE_ROOT; }; + D93443B9373C45CBB607D695 /* Map.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Map.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Map.h"; sourceTree = SOURCE_ROOT; }; + D98EA49260B345FB96AC2D3E /* etc2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = etc2.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc2.h"; sourceTree = SOURCE_ROOT; }; + D9C72F52CE254F5D99FEEAFB /* jsb_network_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_network_manual.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_network_manual.cpp"; sourceTree = SOURCE_ROOT; }; + DA7040B0BE7C49CC9E1F1503 /* Bone.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Bone.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Bone.cpp"; sourceTree = SOURCE_ROOT; }; + DAA3D36D545444A5BB8EF525 /* MTLDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDescriptorSetLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + DAB98F1091464BBCBBE53DEB /* InputAssemblerValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InputAssemblerValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/InputAssemblerValidator.cpp"; sourceTree = SOURCE_ROOT; }; + DB3B27588FF2469AA47714AD /* MTLQueue.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLQueue.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLQueue.mm"; sourceTree = SOURCE_ROOT; }; + DB565196464F4440B66E44B6 /* CCFactory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCFactory.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCFactory.cpp"; sourceTree = SOURCE_ROOT; }; + DBC6F8CB21B4409086C23179 /* Animation.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Animation.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/Animation.cpp"; sourceTree = SOURCE_ROOT; }; + DBC8942CE8D4472A9D7757BA /* MTLBuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLBuffer.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLBuffer.mm"; sourceTree = SOURCE_ROOT; }; + DBD1316354424935A627AAAC /* GFXDevice.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDevice.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDevice.cpp"; sourceTree = SOURCE_ROOT; }; + DBEC9752A8AD4228951E08B0 /* ObjectWrap.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ObjectWrap.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ObjectWrap.h"; sourceTree = SOURCE_ROOT; }; + DC69AF6CAC1E4C7F82239CEC /* inspector_agent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_agent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_agent.cpp"; sourceTree = SOURCE_ROOT; }; + DC9552FD88DA4752B4EBF1D3 /* SkinData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SkinData.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/SkinData.cpp"; sourceTree = SOURCE_ROOT; }; + DCBAD4713BF545E8A537E6EF /* Application-ios.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Application-ios.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Application-ios.mm"; sourceTree = SOURCE_ROOT; }; + DD125DE95A3A4236BCF23603 /* SAXParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SAXParser.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/SAXParser.cpp"; sourceTree = SOURCE_ROOT; }; + DD9B48C88F6F465BB64481AD /* MTLFramebuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLFramebuffer.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLFramebuffer.mm"; sourceTree = SOURCE_ROOT; }; + DE05142D06E64C82A7E5202E /* TypedArrayPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TypedArrayPool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/TypedArrayPool.cpp"; sourceTree = SOURCE_ROOT; }; + DE706C4554064C048C8B3848 /* Scheduler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Scheduler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Scheduler.h"; sourceTree = SOURCE_ROOT; }; + DF93BD3BD93A4605A2696894 /* GFXPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXPipelineState.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineState.h"; sourceTree = SOURCE_ROOT; }; + E0714435A613465EBAA2E7A7 /* GFXCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXCommandBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + E1ED583E735A49E0BC4699C9 /* Blackboard.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Blackboard.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Blackboard.h"; sourceTree = SOURCE_ROOT; }; + E2237E2CF79E473BA4A8AD2C /* MemDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MemDef.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemDef.h"; sourceTree = SOURCE_ROOT; }; + E37040DBE095420D9968530A /* PipelineSceneData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineSceneData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineSceneData.h"; sourceTree = SOURCE_ROOT; }; + E37FF05702984EE28F40FF7D /* RefCounter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RefCounter.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/RefCounter.h"; sourceTree = SOURCE_ROOT; }; + E4115169CF1D4EEAAC77FD85 /* jsb_dragonbones_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dragonbones_manual.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_dragonbones_manual.h"; sourceTree = SOURCE_ROOT; }; + E42BCD67BD5D4820850A2A9D /* TFJobSystem.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TFJobSystem.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobSystem.cpp"; sourceTree = SOURCE_ROOT; }; + E47106F49E594EE5832E91C7 /* middleware-adapter.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = "middleware-adapter.cpp"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/middleware-adapter.cpp"; sourceTree = SOURCE_ROOT; }; + E47E71DA540948EBBD09BDCB /* SharedMemory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SharedMemory.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/SharedMemory.h"; sourceTree = SOURCE_ROOT; }; + E535C3972B9C417CB11DEBA6 /* MTLSampler.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLSampler.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSampler.mm"; sourceTree = SOURCE_ROOT; }; + E55B412E575A40C9ADBB3FC4 /* AudioCache.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioCache.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioCache.h"; sourceTree = SOURCE_ROOT; }; + E55F7610FB284ADE80D44EF9 /* http_parser.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = http_parser.c; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/http_parser.c"; sourceTree = SOURCE_ROOT; }; + E57EB196F8404497892D42BC /* EmptyTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyTexture.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyTexture.h"; sourceTree = SOURCE_ROOT; }; + E5C5F10D1C18425ABFB4B49D /* HttpRequest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpRequest.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpRequest.h"; sourceTree = SOURCE_ROOT; }; + E642F9895DB04C0FBDA7CC2F /* FrameGraph.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FrameGraph.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/FrameGraph.cpp"; sourceTree = SOURCE_ROOT; }; + E6A5FCFE3DDB426DBD29C015 /* SharedBufferManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SharedBufferManager.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/SharedBufferManager.cpp"; sourceTree = SOURCE_ROOT; }; + E7419D0DB0AF4119A6C265CB /* Geometry.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Geometry.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Geometry.cpp"; sourceTree = SOURCE_ROOT; }; + E8219C72DF554CDEB4B4A862 /* FrameGraph.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FrameGraph.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/FrameGraph.h"; sourceTree = SOURCE_ROOT; }; + E828FD4C48074C849F907BB6 /* WebViewImpl-ios.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "WebViewImpl-ios.h"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/webview/WebViewImpl-ios.h"; sourceTree = SOURCE_ROOT; }; + E87FBBB29F0741C69EE7F6A6 /* GFXPipelineLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXPipelineLayout.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineLayout.cpp"; sourceTree = SOURCE_ROOT; }; + E903BE0DFDEF4307BDB4E7A1 /* SRRandom.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRRandom.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRRandom.h"; sourceTree = SOURCE_ROOT; }; + E9239E07143C4C5DAF1F9254 /* Log.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Log.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Log.cpp"; sourceTree = SOURCE_ROOT; }; + EAAF83FB72DD4F83A568CEC4 /* BufferAllocator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferAllocator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferAllocator.cpp"; sourceTree = SOURCE_ROOT; }; + EB9B1D8D7A504CCB8E898EDF /* MathUtil.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MathUtil.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.cpp"; sourceTree = SOURCE_ROOT; }; + EC2008C6204D48C692796559 /* unzip.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = unzip.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/unzip.cpp"; sourceTree = SOURCE_ROOT; }; + EC2F35FDB75140A4B0781D32 /* SRProxyConnect.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRProxyConnect.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy/SRProxyConnect.m"; sourceTree = SOURCE_ROOT; }; + EC4576FD5A5947A482C0C055 /* AutoreleasePool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AutoreleasePool.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/AutoreleasePool.cpp"; sourceTree = SOURCE_ROOT; }; + EC5254C839F7446D8C55F807 /* GFXDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDef.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef.h"; sourceTree = SOURCE_ROOT; }; + EC595D0634204C02B6109B49 /* MTLStd.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLStd.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLStd.h"; sourceTree = SOURCE_ROOT; }; + EC8D3F2500754DEAAFFA7938 /* jsb_pipeline_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_pipeline_manual.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_pipeline_manual.h"; sourceTree = SOURCE_ROOT; }; + ECA223749E634D4CAB73DC7D /* EmptyDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDescriptorSet.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + ECCA8D3A14BD4BAAA9BDED1C /* SRSecurityPolicy.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRSecurityPolicy.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRSecurityPolicy.m"; sourceTree = SOURCE_ROOT; }; + ECF2DA3F310C49619E01900D /* StdC.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StdC.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/StdC.h"; sourceTree = SOURCE_ROOT; }; + EEF059266BF04BD8AE3BC02C /* http_parser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = http_parser.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/http_parser.h"; sourceTree = SOURCE_ROOT; }; + EF00B05D083048C5B5A7CDF0 /* WorldClock.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = WorldClock.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/WorldClock.cpp"; sourceTree = SOURCE_ROOT; }; + EF664DD893DD4B6D9DC155B2 /* AudioPlayer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioPlayer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioPlayer.h"; sourceTree = SOURCE_ROOT; }; + EFFDFBABA56C4058B2AE6C1F /* env.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = env.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/env.h"; sourceTree = SOURCE_ROOT; }; + F01C3AE277AA4981956259FF /* jsb_dragonbones_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dragonbones_auto.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_dragonbones_auto.h"; sourceTree = SOURCE_ROOT; }; + F0C0271A5FF44D29A948F9C9 /* EditBox-ios.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "EditBox-ios.mm"; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/edit-box/EditBox-ios.mm"; sourceTree = SOURCE_ROOT; }; + F129D6CC70184749B9B2B0E4 /* CCSlot.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCSlot.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCSlot.h"; sourceTree = SOURCE_ROOT; }; + F1D082FEF4164E81B0563713 /* util.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = util.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util.cpp"; sourceTree = SOURCE_ROOT; }; + F227443F8D47475CB9FA907B /* jsb_global_init.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_global_init.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global_init.h"; sourceTree = SOURCE_ROOT; }; + F2E41C32F01544A6838DA5E9 /* GFXPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXPipelineLayout.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + F375A3F6DB6E4038ABEA4AE7 /* Define.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Define.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/Define.cpp"; sourceTree = SOURCE_ROOT; }; + F3C0A688DF7F4FCFA4F469F4 /* GFXGlobalBarrier.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXGlobalBarrier.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXGlobalBarrier.cpp"; sourceTree = SOURCE_ROOT; }; + F457ED55A7134429AF75E0E3 /* Agent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Agent.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Agent.h"; sourceTree = SOURCE_ROOT; }; + F49DC3AB115046D98920A6B0 /* ShaderValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShaderValidator.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ShaderValidator.cpp"; sourceTree = SOURCE_ROOT; }; + F4BF4F15E4A943FE880EF3DB /* tinyxml2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = tinyxml2.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tinyxml2/tinyxml2.cpp"; sourceTree = SOURCE_ROOT; }; + F6712E681F1C4CB2BBE875F7 /* JSONDataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = JSONDataParser.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/JSONDataParser.cpp"; sourceTree = SOURCE_ROOT; }; + F687B8E509D547958DFB7E54 /* ioapi.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ioapi.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi.cpp"; sourceTree = SOURCE_ROOT; }; + F6C6E001B76B474A9705A1D9 /* Vec4.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec4.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.cpp"; sourceTree = SOURCE_ROOT; }; + F6F0165DBA4B4CAB80D3AE5D /* Vertex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vertex.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vertex.h"; sourceTree = SOURCE_ROOT; }; + F716DDEB33C8494EA729EB65 /* GFXSampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXSampler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXSampler.h"; sourceTree = SOURCE_ROOT; }; + F76A536D799A4ED2BB621312 /* EmptySampler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptySampler.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptySampler.cpp"; sourceTree = SOURCE_ROOT; }; + F85B54E8D4B94A0AB985D31E /* SRMutex.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRMutex.m; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRMutex.m"; sourceTree = SOURCE_ROOT; }; + F89434B3428B4A8A9DC94D7B /* config.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = config.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/config.h"; sourceTree = SOURCE_ROOT; }; + F8A347B1164D425CA29DDCD4 /* PipelineLayoutValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineLayoutValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineLayoutValidator.h"; sourceTree = SOURCE_ROOT; }; + F8CBC4F9C0D9417B8D154832 /* CCFactory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCFactory.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCFactory.h"; sourceTree = SOURCE_ROOT; }; + F913818CD883456BA90A9A2D /* Constraint.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Constraint.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Constraint.cpp"; sourceTree = SOURCE_ROOT; }; + F972151764DC4C52A94DD70B /* GFXDescriptorSetLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDescriptorSetLayout.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSetLayout.cpp"; sourceTree = SOURCE_ROOT; }; + F9BABEBB70694C7CBFF0AA83 /* QueueAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = QueueAgent.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/QueueAgent.cpp"; sourceTree = SOURCE_ROOT; }; + F9D4F5B38BEC44668268EF7B /* jsb_gfx_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_gfx_manual.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_gfx_manual.cpp"; sourceTree = SOURCE_ROOT; }; + F9EB7C0F0965404DA7B7A505 /* DownloaderImpl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DownloaderImpl.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl.h"; sourceTree = SOURCE_ROOT; }; + FA5DBF177ACA4099B4C72136 /* SceneCulling.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SceneCulling.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/SceneCulling.cpp"; sourceTree = SOURCE_ROOT; }; + FA820062345342BAA94D42A4 /* PipelineUBO.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineUBO.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineUBO.cpp"; sourceTree = SOURCE_ROOT; }; + FB25CB87C0784D33A1912ED5 /* InstancedBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InstancedBuffer.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/InstancedBuffer.h"; sourceTree = SOURCE_ROOT; }; + FB4C2BF922E5420FB0FCAB65 /* VirtualResource.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = VirtualResource.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/VirtualResource.cpp"; sourceTree = SOURCE_ROOT; }; + FB99F0DAB46A4DDF93000155 /* DescriptorSetLayoutValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetLayoutValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetLayoutValidator.h"; sourceTree = SOURCE_ROOT; }; + FC3C396AB09641C8A2FAECF2 /* ValidationUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ValidationUtils.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ValidationUtils.h"; sourceTree = SOURCE_ROOT; }; + FC8D3FA59225416DAA4C642C /* MeshBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MeshBuffer.cpp; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MeshBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + FC9B97F690734A62BF55248D /* MTLPipelineState.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLPipelineState.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineState.mm"; sourceTree = SOURCE_ROOT; }; + FCC7C790C52947CCBD2D46C7 /* BufferPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferPool.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferPool.h"; sourceTree = SOURCE_ROOT; }; + FD7E7AAA8B064B3EBA928BE0 /* GFXInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXInputAssembler.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + FDECFC196B4E4ED0867449A1 /* UserData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UserData.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/UserData.h"; sourceTree = SOURCE_ROOT; }; + FEBCF155937C4B3F9DF486CE /* MTLInputAssembler.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLInputAssembler.mm; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLInputAssembler.mm"; sourceTree = SOURCE_ROOT; }; + FEC4096B1477418498F8BAC3 /* GFXGlobalBarrier.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXGlobalBarrier.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXGlobalBarrier.h"; sourceTree = SOURCE_ROOT; }; + FF2C4BC3DE724565BDEB6383 /* CommandBufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CommandBufferValidator.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/CommandBufferValidator.h"; sourceTree = SOURCE_ROOT; }; + FF565A2155444B948E51804E /* inspector_socket_server.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_socket_server.h; path = "../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket_server.h"; sourceTree = SOURCE_ROOT; }; +/* End PBXFileReference section */ + +/* Begin PBXGroup section */ + 061B022282B244E09EFBE2A4 /* armature */ = { + isa = PBXGroup; + children = ( + 042B1BE2B0D04DE5994E319E /* Armature.cpp */, + 88B4B03204484ADC9B72DBD2 /* Armature.h */, + DA7040B0BE7C49CC9E1F1503 /* Bone.cpp */, + 2C8C1AA620BB4950A768D0F6 /* Bone.h */, + F913818CD883456BA90A9A2D /* Constraint.cpp */, + A0ED7DEF22D04492B1B33332 /* Constraint.h */, + 1709E5FEE584462992582F4C /* DeformVertices.cpp */, + B51AD5C56A8E4E0082A1C0B2 /* DeformVertices.h */, + C50DFB26B518427BB35CD9FC /* IArmatureProxy.h */, + 3D69820BB35B4A8B957BFDAA /* Slot.cpp */, + 430EC481CED34271AA5800EA /* Slot.h */, + CAC49A1BEBCE4463BC97E147 /* TransformObject.cpp */, + 28874AFEB794444FBED7AB21 /* TransformObject.h */, + ); + name = armature; + sourceTree = ""; + }; + 0809B5ED5C114EBABC8CD2A9 /* Internal */ = { + isa = PBXGroup; + children = ( + 4F0156980C0541C4A9FF3197 /* Proxy */, + D7BDC9CFB22044A8A778CF4E /* RunLoop */, + EC2B91147F454A7CA3332387 /* Security */, + A41555FF45474D97BCB2719B /* Delegate */, + FCD4EED36E914E73819D8B51 /* Utilities */, + B7F91C84F5EC483D9EC7708F /* IOConsumer */, + 772D02A0A0844D239C9AD58E /* NSRunLoop+SRWebSocketPrivate.h */, + 6E1EFA03538540F6A72AFDBF /* NSURLRequest+SRWebSocketPrivate.h */, + 2E4B120BF1D3494BB67BB66A /* SRConstants.h */, + 01B0B28EF3D546A1B688CA7B /* SRConstants.m */, + ); + name = Internal; + sourceTree = ""; + }; + 0EE1405198564DA1BD2B2895 = { + isa = PBXGroup; + children = ( + 93442989C3EA4B10BA031139 /* cocos2d */, + D1F5BB3AADAC4B328E1C852B /* Products */, + ); + sourceTree = ""; + }; + 127AE8CB63864214A8336BD2 /* threading */ = { + isa = PBXGroup; + children = ( + 157CE4FD1ED34A4ABB609302 /* ConditionVariable.cpp */, + 9D75FAA7C8074005BDB5E840 /* ConditionVariable.h */, + 5085E9A4EAD24884984D7314 /* Event.h */, + A70B328F099943EB9B941798 /* MessageQueue.cpp */, + 6F65F147D7A84EC58EF9BF18 /* MessageQueue.h */, + 05B85AE9BE88458483380E6E /* Semaphore.cpp */, + B63672917F42457CBC15E9F0 /* Semaphore.h */, + 8BE41298908E425CA56EA0D9 /* ThreadPool.cpp */, + 9CEBE9CECEF84115977FF919 /* ThreadPool.h */, + 0AB36B27236E4048845B43A3 /* ThreadSafeCounter.h */, + 1029EECBAFF545A399A8B4F8 /* ThreadSafeLinearAllocator.cpp */, + 72FE0C6F85EC42E094808D67 /* ThreadSafeLinearAllocator.h */, + ); + name = threading; + sourceTree = ""; + }; + 140E6AE467804D9FB89A27F0 /* cocos */ = { + isa = PBXGroup; + children = ( + 8BBE0DC4278D47BABB04BFFC /* audio */, + E64CF4F9ECCC4610ACCE3315 /* base */, + AA000399C0B24C3F94A6B6F0 /* math */, + 5582D46ABE70483890A94FC9 /* network */, + F84F47954CEC4622BD076898 /* platform */, + D14DAAECC4DF49B08CBF0813 /* renderer */, + 923384F242F34C5088B0D1D8 /* bindings */, + 777EEF518B3145A6A6B31682 /* editor-support */, + 1FD7C6229A254F2D99B131A5 /* storage */, + 545C9085A5514DF2A72C62DE /* ui */, + ); + name = cocos; + sourceTree = ""; + }; + 1789062CF11E4147BA86DCAC /* SocketRocket */ = { + isa = PBXGroup; + children = ( + 0809B5ED5C114EBABC8CD2A9 /* Internal */, + 13408FB823F24E3E8B7C8D5C /* NSRunLoop+SRWebSocket.h */, + 24C406BBC54E45248FD90A27 /* NSRunLoop+SRWebSocket.m */, + C5521A2E77724FB4A81EE3B3 /* NSURLRequest+SRWebSocket.h */, + B6CEFE9E50BA46139312F970 /* NSURLRequest+SRWebSocket.m */, + C7AA3241010246A78855BD9B /* SRSecurityPolicy.h */, + ECCA8D3A14BD4BAAA9BDED1C /* SRSecurityPolicy.m */, + 357DC658FC844DAE8D9D063D /* SRWebSocket.h */, + 853ECC8B6E8D40BCB83DE2F6 /* SRWebSocket.m */, + D7CAEFD15AC2485EA06EF3FD /* SocketRocket.h */, + ); + name = SocketRocket; + sourceTree = ""; + }; + 199113A4A7B74E62A64B7F25 /* tommyds */ = { + isa = PBXGroup; + children = ( + AE5EF6EB20144A8890151F5D /* tommy.c */, + 43095A2CF0BF4BD39C240EC2 /* tommy.h */, + ); + name = tommyds; + sourceTree = ""; + }; + 1FD7C6229A254F2D99B131A5 /* storage */ = { + isa = PBXGroup; + children = ( + DA989ED0BFB6440CBD00FB78 /* local-storage */, + ); + name = storage; + sourceTree = ""; + }; + 2EBCFDC511354994880489AC /* auto */ = { + isa = PBXGroup; + children = ( + 2103ED08543E4AA0AA79A577 /* jsb_audio_auto.cpp */, + D45CCCBD4CF5421A89096B39 /* jsb_audio_auto.h */, + A724B7BB4C764059B09C9D3B /* jsb_cocos_auto.cpp */, + 7DCBFC568654489089C14FBD /* jsb_cocos_auto.h */, + 8B12C64C329F4E7E9DE8F8FA /* jsb_dragonbones_auto.cpp */, + F01C3AE277AA4981956259FF /* jsb_dragonbones_auto.h */, + 21D2DD4EA3B1498A887573EE /* jsb_editor_support_auto.cpp */, + 1AC6C8A4376B4C6F9261FDDD /* jsb_editor_support_auto.h */, + 9972FB4CC27B4952861F1491 /* jsb_extension_auto.cpp */, + 91AE76F0F07949D5BC957931 /* jsb_extension_auto.h */, + 9BE2B396D28E4577BF82B8DB /* jsb_gfx_auto.cpp */, + CFAC548543C8499C928ADA5D /* jsb_gfx_auto.h */, + 2F71E786B7D34137853EF773 /* jsb_network_auto.cpp */, + BBF64CA78F254C6A9EE1A0DF /* jsb_network_auto.h */, + 21524CC012CF47C1ADE811D8 /* jsb_pipeline_auto.cpp */, + 1B10D709651D46C29B5BE0D3 /* jsb_pipeline_auto.h */, + A4DF32B8FC274D3C9629D643 /* jsb_video_auto.cpp */, + 5B528B6C88D744DFA3D42A4C /* jsb_video_auto.h */, + 008C800BC4A24A7BBE700178 /* jsb_webview_auto.cpp */, + 1BA85B11485A4FE1A451758C /* jsb_webview_auto.h */, + ); + name = auto; + sourceTree = ""; + }; + 35FEC3924F94496EB59750F1 /* xxtea */ = { + isa = PBXGroup; + children = ( + 959E0CBDA63349EC860DE007 /* xxtea.cpp */, + BF7ED01DD94F46BFB47E4965 /* xxtea.h */, + ); + name = xxtea; + sourceTree = ""; + }; + 391AE2B919104AA8B709D972 /* job-system */ = { + isa = PBXGroup; + children = ( + B10ED16F538248F59927D93D /* job-system-taskflow */, + 7325FC8B8FAA4246B0F70811 /* JobSystem.h */, + ); + name = "job-system"; + sourceTree = ""; + }; + 3B0769ED9BE3419D90F4D483 /* videoplayer */ = { + isa = PBXGroup; + children = ( + 0A66882495F441E7B4D29298 /* VideoPlayer-ios.mm */, + B726B374C5254C81B9E9F18D /* VideoPlayer.h */, + ); + name = videoplayer; + sourceTree = ""; + }; + 3C407CB4B0474242A367F930 /* frame-graph */ = { + isa = PBXGroup; + children = ( + E1ED583E735A49E0BC4699C9 /* Blackboard.h */, + B8BE11EE8A724986B7F65571 /* CallbackPass.h */, + C9E836CE146E428EBF82A3D0 /* DevicePass.cpp */, + 4C7A24AAAD814F479EAA6D11 /* DevicePass.h */, + 97D2945E0A754E58968086E2 /* DevicePassResourceTable.cpp */, + 40ADF0E6CB464EDBB17654CB /* DevicePassResourceTable.h */, + E642F9895DB04C0FBDA7CC2F /* FrameGraph.cpp */, + E8219C72DF554CDEB4B4A862 /* FrameGraph.h */, + 57EB84A013414482B6272DF9 /* Handle.h */, + BC1793E166B94DDDB4563ED3 /* PassInsertPointManager.cpp */, + D5C52C1F9A5641EA8813097B /* PassInsertPointManager.h */, + 658FC936FC9A45C795A1ED68 /* PassNode.cpp */, + 5F6B22D9CB4F47CFBA9C232E /* PassNode.h */, + ABDCBF397712469B997CACE6 /* PassNodeBuilder.cpp */, + 1E2B7E0824464C6BA5499ACE /* PassNodeBuilder.h */, + 07F553A7A1974D81973B4E80 /* RenderTargetAttachment.h */, + 1995C96964D34369A1886FC0 /* Resource.h */, + 9EE601069D0C4BEF8FE6F6FA /* ResourceAllocator.h */, + 3F14CE59E4DA4D9E86D47B01 /* ResourceEntry.h */, + B373A1C7612443EFBCB7C00F /* ResourceNode.h */, + FB4C2BF922E5420FB0FCAB65 /* VirtualResource.cpp */, + 4C13FFF271C5493B9A21D918 /* VirtualResource.h */, + ); + name = "frame-graph"; + sourceTree = ""; + }; + 460B41F8EF6F462C80A882FC /* extensions */ = { + isa = PBXGroup; + children = ( + E60EEB46B4DB4930B1168D19 /* assets-manager */, + D19D389BCF3B4992AA0462A4 /* ExtensionExport.h */, + 12C61A42E0DB43308523AB0E /* ExtensionMacros.h */, + C5BC51C8172B4090BED8504A /* cocos-ext.h */, + ); + name = extensions; + sourceTree = ""; + }; + 4F0156980C0541C4A9FF3197 /* Proxy */ = { + isa = PBXGroup; + children = ( + B1F3ACE557F24CC18839760F /* SRProxyConnect.h */, + EC2F35FDB75140A4B0781D32 /* SRProxyConnect.m */, + ); + name = Proxy; + sourceTree = ""; + }; + 545C9085A5514DF2A72C62DE /* ui */ = { + isa = PBXGroup; + children = ( + 93BECFEAB9B7406C896C8F28 /* edit-box */, + 3B0769ED9BE3419D90F4D483 /* videoplayer */, + B5B483F17AF7437196437AD7 /* webview */, + ); + name = ui; + sourceTree = ""; + }; + 5582D46ABE70483890A94FC9 /* network */ = { + isa = PBXGroup; + children = ( + BF0192C790814847893B4182 /* Downloader.cpp */, + 5B0BBDD3B1D946E28044B576 /* Downloader.h */, + 330BFD20DEEB45ACB88459E5 /* DownloaderImpl-apple.h */, + 99245B6BA27641CA95538F23 /* DownloaderImpl-apple.mm */, + F9EB7C0F0965404DA7B7A505 /* DownloaderImpl.h */, + 778486A7BEFC4CE893A5722C /* HttpAsynConnection-apple.h */, + 795D206746D64CFA92F096B2 /* HttpAsynConnection-apple.m */, + B8EB0FF6028544AA8146EE8E /* HttpClient-apple.mm */, + AC9CDB6FDC9F48419A2483D3 /* HttpClient.h */, + 0EEE197625AF4CAB88B844C1 /* HttpCookie.cpp */, + 4E947A7702324AA4833D1871 /* HttpCookie.h */, + E5C5F10D1C18425ABFB4B49D /* HttpRequest.h */, + B00AF955F4B04FDF8258A99D /* HttpResponse.h */, + 22BB6DA02A14457BADE5E2D5 /* SocketIO.cpp */, + 5BABDC8C3B1E4BDB99C95BEB /* SocketIO.h */, + 4BD4E79B12E049F18A3B5081 /* Uri.cpp */, + 1971BD44DFB747F18D2AFBFE /* Uri.h */, + CD3B9717C889497D948999FD /* WebSocket-apple.mm */, + C9BCE720705A4E1CB6316DA0 /* WebSocket.h */, + ); + name = network; + sourceTree = ""; + }; + 57EF4E638F7B44618A010C30 /* v8 */ = { + isa = PBXGroup; + children = ( + B88783A19D1B4F7CB0114D7C /* debugger */, + 3D260513407440BC940A9F02 /* Base.h */, + 7242BB79FCF146808A0DD7BF /* Class.cpp */, + 3472AAEE39554C0393DE9CCB /* Class.h */, + 4D7E52AB07484997A641F248 /* HelperMacros.h */, + 76E63E9819E04C899ABD05F3 /* Object.cpp */, + 072230CAF223483386609010 /* Object.h */, + AB98EBF520C74708A2543A83 /* ObjectWrap.cpp */, + DBEC9752A8AD4228951E08B0 /* ObjectWrap.h */, + 3C2986B2F93B4B078AA1B2FF /* ScriptEngine.cpp */, + 0446BA8778914605B5CDBACB /* ScriptEngine.h */, + 1E96313E0D304CDABCF11FE5 /* SeApi.h */, + 543B4E5A68D6494C96B06038 /* Utils.cpp */, + 90CE29B44C0C4A91B5C4E4AD /* Utils.h */, + ); + name = v8; + sourceTree = ""; + }; + 5BB594354BE34149ACFEEE96 /* core */ = { + isa = PBXGroup; + children = ( + 779B83DE4F6C4E9FA6233FA6 /* BaseObject.cpp */, + D02CA1B5B4BD403CB745D5B7 /* BaseObject.h */, + 8B641AA6C9704DE8B6450B6E /* DragonBones.cpp */, + 27B058C731BD4A19931F2727 /* DragonBones.h */, + ); + name = core; + sourceTree = ""; + }; + 5D3B661D4C1E47C6A42D792E /* ios */ = { + isa = PBXGroup; + children = ( + DCBAD4713BF545E8A537E6EF /* Application-ios.mm */, + B6CD38366B5642579E0D12AE /* Device-ios.mm */, + 5358216808F0434CB780AB35 /* Reachability.cpp */, + 8BAE33D947DC4F30B93AE20E /* Reachability.h */, + 67A07AA0B3E04A6FBC9B1794 /* View.h */, + AEC2480E09404C44B1048D43 /* View.mm */, + ); + name = ios; + sourceTree = ""; + }; + 60011A58976542778085B08B /* deferred */ = { + isa = PBXGroup; + children = ( + 59195BEFCF734E4CB51F8A1A /* DeferredPipeline.cpp */, + 8DDE727401034C509D86AB1C /* DeferredPipeline.h */, + 148C07CC129C4D66B32096EB /* GbufferFlow.cpp */, + 1455C1C29F9C4BA58F1647E7 /* GbufferFlow.h */, + 0131C17DF4A744EBBC61CE41 /* GbufferStage.cpp */, + 2A31AF56455549DE9DCAD48D /* GbufferStage.h */, + 4BF7DFA649BE4F0B9CF0C360 /* LightingFlow.cpp */, + 5FCC53B243034D15B7A7FEDB /* LightingFlow.h */, + C97F4AE295474A239236ADEB /* LightingStage.cpp */, + 4FE99ABE93184009847E9048 /* LightingStage.h */, + 9D361600626140DBA9DC8680 /* PostprocessStage.cpp */, + 078CBB3AD2EF407BAD6648A0 /* PostprocessStage.h */, + ); + name = deferred; + sourceTree = ""; + }; + 63A4C2AAABAC42E58B065CA4 /* event */ = { + isa = PBXGroup; + children = ( + 7F190A03641042A99503265C /* CustomEventTypes.h */, + 3B249B0EE5FD4C6E8EB901AE /* EventDispatcher.cpp */, + 39C8CA4F339B4D498F9ED838 /* EventDispatcher.h */, + ); + name = event; + sourceTree = ""; + }; + 6EDB483100A74909B9EFC325 /* dragonbones-creator-support */ = { + isa = PBXGroup; + children = ( + 1F7FFFDA071E4E16BAF60ABB /* ArmatureCache.cpp */, + 3FB0430A4AA44F539A1E69E2 /* ArmatureCache.h */, + 227F3F1A7BA04AB991A0775E /* ArmatureCacheMgr.cpp */, + 8BF76C9023BF4192824C9117 /* ArmatureCacheMgr.h */, + 19F8CA68856F4B558049D2F3 /* CCArmatureCacheDisplay.cpp */, + 7D72EA34351C4684B7FC45B8 /* CCArmatureCacheDisplay.h */, + 5DCF4C1C097A4EE4911121DF /* CCArmatureDisplay.cpp */, + 4B00FE707B144B5993433B28 /* CCArmatureDisplay.h */, + 5D04FEFC960B4271888A417E /* CCDragonBonesHeaders.h */, + DB565196464F4440B66E44B6 /* CCFactory.cpp */, + F8CBC4F9C0D9417B8D154832 /* CCFactory.h */, + 82C118FE008F4D22A9109768 /* CCSlot.cpp */, + F129D6CC70184749B9B2B0E4 /* CCSlot.h */, + CA1E7552A71B4C5FB1EB94BC /* CCTextureAtlasData.cpp */, + CFD253AF27B04DC1B8002860 /* CCTextureAtlasData.h */, + ); + name = "dragonbones-creator-support"; + sourceTree = ""; + }; + 737ADACA491142128E3B39E2 /* external */ = { + isa = PBXGroup; + children = ( + ECF0A52BAAD74E03817C34E7 /* sources */, + ); + name = external; + sourceTree = ""; + }; + 777EEF518B3145A6A6B31682 /* editor-support */ = { + isa = PBXGroup; + children = ( + AE2ACC9537D049DD99F0323C /* dragonbones */, + 6EDB483100A74909B9EFC325 /* dragonbones-creator-support */, + 87FA5E46D49A4EE4A77F2544 /* IOBuffer.cpp */, + 556E097DDF0C4B7FBDBF8F54 /* IOBuffer.h */, + 97B4BB89B11D482E815D782E /* IOTypedArray.cpp */, + 3962B3CA885A4678A0C1727F /* IOTypedArray.h */, + FC8D3FA59225416DAA4C642C /* MeshBuffer.cpp */, + 44BFA47B39CF4192A3934CAF /* MeshBuffer.h */, + B4AFC7E5AFE344A292FD12DB /* MiddlewareMacro.h */, + ABDCDE6921ED42F8A25EC85E /* MiddlewareManager.cpp */, + D20D536864394AEB85C4DFA7 /* MiddlewareManager.h */, + E6A5FCFE3DDB426DBD29C015 /* SharedBufferManager.cpp */, + 5912E47B9DFF4697AD6712F4 /* SharedBufferManager.h */, + DE05142D06E64C82A7E5202E /* TypedArrayPool.cpp */, + D76C9D8EE59E4A4DB1FE55E1 /* TypedArrayPool.h */, + E47106F49E594EE5832E91C7 /* middleware-adapter.cpp */, + D6914951E68C4E078C076C91 /* middleware-adapter.h */, + ); + name = "editor-support"; + sourceTree = ""; + }; + 7B037EA4DC6A43B2BAEA3269 /* geom */ = { + isa = PBXGroup; + children = ( + 23E6AD912B16403CA22C00EE /* ColorTransform.h */, + 5A37C1CDF2714ADB9D725D83 /* Matrix.h */, + 1A0A2FF5240A488EA6DA7C0B /* Point.cpp */, + 89D3D5CC3BCA430AA848B6C2 /* Point.h */, + 1DC46032F64F4ABB9CF7DAD4 /* Rectangle.h */, + 74602AD0E04841C0B5953770 /* Transform.cpp */, + B4D6C873BF7E4317AEC5B28B /* Transform.h */, + ); + name = geom; + sourceTree = ""; + }; + 80322628344D4498AC0E8D46 /* forward */ = { + isa = PBXGroup; + children = ( + 53FC1C6FE58343F987B633AC /* ForwardFlow.cpp */, + C6E9F5CE1B6D4D519CDE42FB /* ForwardFlow.h */, + 7954A82CBA4A481FB5253813 /* ForwardPipeline.cpp */, + 1B210B3BC7374148AE438929 /* ForwardPipeline.h */, + 2EB567D82469413FAACCD8E6 /* ForwardStage.cpp */, + 8D67B1DC965040C098FDF259 /* ForwardStage.h */, + B38E749E92CF40549DCDFA87 /* UIPhase.cpp */, + 6A8FCE2A0F1E4F20B0576354 /* UIPhase.h */, + ); + name = forward; + sourceTree = ""; + }; + 818FE8DCB42342C99184DCCC /* jswrapper */ = { + isa = PBXGroup; + children = ( + 57EF4E638F7B44618A010C30 /* v8 */, + 6003F87A6A5F4A919F251F01 /* HandleObject.cpp */, + 1351298570AB41AFB7C7C963 /* HandleObject.h */, + 25C857C5341B49E68E484BBA /* MappingUtils.cpp */, + 7E88CE134DD842AB9FE18150 /* MappingUtils.h */, + 1BFE8F08EB324977BCF357C3 /* Object.h */, + 5AF6398971784A3EB9B90004 /* RefCounter.cpp */, + E37FF05702984EE28F40FF7D /* RefCounter.h */, + A6DEFC3C13A8488084C24DDB /* SeApi.h */, + 4FCF7B206314416584846C13 /* State.cpp */, + AD158F8A5C5041D8BDC1A36F /* State.h */, + AB425C23A99A441F85EA19B5 /* Value.cpp */, + 3EC7ABB719D84E3BB42E8E49 /* Value.h */, + 22A34CA60C484F9BB439A7B1 /* config.cpp */, + F89434B3428B4A8A9DC94D7B /* config.h */, + ); + name = jswrapper; + sourceTree = ""; + }; + 8BBE0DC4278D47BABB04BFFC /* audio */ = { + isa = PBXGroup; + children = ( + CF6A6701587641BD93C9EDF9 /* include */, + E6CAE561802D4BD1991D56B4 /* apple */, + C3473FC72D4445959D385235 /* AudioEngine.cpp */, + ); + name = audio; + sourceTree = ""; + }; + 8CFC6608AD63444584D451D7 /* gfx-validator */ = { + isa = PBXGroup; + children = ( + 92D6188F2C224B30B05759A6 /* BufferValidator.cpp */, + 45F56B7385284DD388588ECC /* BufferValidator.h */, + 82EC8A9D43BC4F12AD339110 /* CommandBufferValidator.cpp */, + FF2C4BC3DE724565BDEB6383 /* CommandBufferValidator.h */, + 7AC4AED46C3144D0B512DD10 /* DescriptorSetLayoutValidator.cpp */, + FB99F0DAB46A4DDF93000155 /* DescriptorSetLayoutValidator.h */, + 09FD7E1EF6504909ABBAD1B5 /* DescriptorSetValidator.cpp */, + 76D5922F0C9D445084D9960E /* DescriptorSetValidator.h */, + 9B54110CD0974F6EB1AF22B1 /* DeviceValidator.cpp */, + 86EB79E1F62A44E8A084B6A7 /* DeviceValidator.h */, + 90CCFBC5797F4F1CAB0AD0AC /* FramebufferValidator.cpp */, + CCC57D534E964FD79D5D31D3 /* FramebufferValidator.h */, + DAB98F1091464BBCBBE53DEB /* InputAssemblerValidator.cpp */, + 4A005C8830C54D589DCAC48B /* InputAssemblerValidator.h */, + 1772CAD6B3784A11BA0DD448 /* PipelineLayoutValidator.cpp */, + F8A347B1164D425CA29DDCD4 /* PipelineLayoutValidator.h */, + 3D72907B06DB4B69BB50A814 /* PipelineStateValidator.cpp */, + 960F68C8767145F0A2F96803 /* PipelineStateValidator.h */, + C2250BD95C6B431DACBA93F0 /* QueueValidator.cpp */, + 3E818410BA2C485284F856C2 /* QueueValidator.h */, + 4FC6F4725369477E97F61E3D /* RenderPassValidator.cpp */, + 13D23465464D466196CD81DD /* RenderPassValidator.h */, + 03E155E884444515ABF33A9B /* SamplerValidator.cpp */, + 3ECBE59E0414464D9DF193B0 /* SamplerValidator.h */, + F49DC3AB115046D98920A6B0 /* ShaderValidator.cpp */, + 8472BF0F696940C7809B3796 /* ShaderValidator.h */, + 5865778B447C43DA88F1359C /* TextureValidator.cpp */, + 65B65DEE9A7244BF9546EEC2 /* TextureValidator.h */, + 5539B36349B3420ABDA60E6B /* ValidationUtils.cpp */, + FC3C396AB09641C8A2FAECF2 /* ValidationUtils.h */, + ); + name = "gfx-validator"; + sourceTree = ""; + }; + 8E6E1CEF348E46088FD0FFF5 /* animation */ = { + isa = PBXGroup; + children = ( + DBC6F8CB21B4409086C23179 /* Animation.cpp */, + ABB0DA5B11BB4CB2AFE1DADC /* Animation.h */, + D72F9F1A2CDD455BBB59E7CB /* AnimationState.cpp */, + 612256E9A30D470EBD12FAAD /* AnimationState.h */, + 99673F5A7B2E4A9A97173EAE /* BaseTimelineState.cpp */, + BB9CBD82386D429D8C91E57C /* BaseTimelineState.h */, + 8466EB4AA8BF4C4380011214 /* IAnimatable.h */, + 2457A84FC0304219942203FD /* TimelineState.cpp */, + B57AE1F6E94A40679397724D /* TimelineState.h */, + EF00B05D083048C5B5A7CDF0 /* WorldClock.cpp */, + 5BD7D51E6929438C9F35263A /* WorldClock.h */, + ); + name = animation; + sourceTree = ""; + }; + 923384F242F34C5088B0D1D8 /* bindings */ = { + isa = PBXGroup; + children = ( + C81CBEF32CA64C389678F23A /* dop */, + 2EBCFDC511354994880489AC /* auto */, + BFCFCD50D3AB44D6B2EC09D6 /* manual */, + 818FE8DCB42342C99184DCCC /* jswrapper */, + 63A4C2AAABAC42E58B065CA4 /* event */, + ); + name = bindings; + sourceTree = ""; + }; + 93442989C3EA4B10BA031139 /* cocos2d */ = { + isa = PBXGroup; + children = ( + F4BBAD8C13EE4514BF2D29AC /* Source Files */, + ); + name = cocos2d; + sourceTree = ""; + }; + 93BECFEAB9B7406C896C8F28 /* edit-box */ = { + isa = PBXGroup; + children = ( + F0C0271A5FF44D29A948F9C9 /* EditBox-ios.mm */, + CC818714EFBA423CBA1AE639 /* EditBox.h */, + ); + name = "edit-box"; + sourceTree = ""; + }; + 9403893E70164CB48AE36795 /* model */ = { + isa = PBXGroup; + children = ( + 6F52B3AD3A2B4F4D9A23C3C2 /* AnimationConfig.cpp */, + 99F44F09D43645788D38B153 /* AnimationConfig.h */, + C7980DBB9BDC4F6682E1C3CA /* AnimationData.cpp */, + 898F7A998444498D8AFA4D4D /* AnimationData.h */, + 6E2A691669E145D2A6171D79 /* ArmatureData.cpp */, + 51C1940396BF4CB39A456B6C /* ArmatureData.h */, + 881E5DA6F6704358ACA4AD9C /* BoundingBoxData.cpp */, + 5068DA30496F4FB5BE2BA835 /* BoundingBoxData.h */, + BEA1174A596C46C390C439C3 /* CanvasData.cpp */, + D7F7F58A35A14247A5CB9DEF /* CanvasData.h */, + 39FC62C6354E40AEA557EC6B /* ConstraintData.cpp */, + 11D866CAB44E41809B7177FB /* ConstraintData.h */, + B232B22F689E4099B65A1565 /* DisplayData.cpp */, + 423D31770E314853968CDABA /* DisplayData.h */, + 079EBEF6133D4B5CBAFD29A4 /* DragonBonesData.cpp */, + 3FB79E1DEEF44F3EBFEBB258 /* DragonBonesData.h */, + DC9552FD88DA4752B4EBF1D3 /* SkinData.cpp */, + D58C733EDF6243EC94930987 /* SkinData.h */, + 8642E86EE4B04495B088081D /* TextureAtlasData.cpp */, + 86FF40BA76484DCFB4507334 /* TextureAtlasData.h */, + 821D878CC26E4CA6B3BBD788 /* UserData.cpp */, + FDECFC196B4E4ED0867449A1 /* UserData.h */, + ); + name = model; + sourceTree = ""; + }; + 950EB08961A84EC49B069563 /* event */ = { + isa = PBXGroup; + children = ( + 30AA69A4E561414A8CE0DD96 /* EventObject.cpp */, + 671AEDBFE6554709B374A708 /* EventObject.h */, + D6A916BDAE714AF5A6DD1439 /* IEventDispatcher.h */, + ); + name = event; + sourceTree = ""; + }; + 973B9517943E4AE5932B8E86 /* apple */ = { + isa = PBXGroup; + children = ( + 949ADC1027B54A7A878EBDC2 /* CanvasRenderingContext2D-apple.mm */, + A801CA88F7294F3E95D17787 /* Device-apple.h */, + A1FF6128A03347E3AC758DD5 /* Device-apple.mm */, + D59B6798F55B467C85580662 /* FileUtils-apple.h */, + 7EF25FD6ADE04547911B1B87 /* FileUtils-apple.mm */, + ); + name = apple; + sourceTree = ""; + }; + 99ABD50F13924587A5CB2236 /* tinyxml2 */ = { + isa = PBXGroup; + children = ( + F4BF4F15E4A943FE880EF3DB /* tinyxml2.cpp */, + 2C8E633DFB1142EABD92FAF3 /* tinyxml2.h */, + ); + name = tinyxml2; + sourceTree = ""; + }; + A0B60524C3A64BC1A1AACD10 /* parser */ = { + isa = PBXGroup; + children = ( + 4C55C9B7811B47ECBBD1A616 /* BinaryDataParser.cpp */, + 701FBB803CA345909670C563 /* BinaryDataParser.h */, + 360EDC7E95ED4047BCC0D427 /* DataParser.cpp */, + BB89CFE0F11C404E8DB4254B /* DataParser.h */, + F6712E681F1C4CB2BBE875F7 /* JSONDataParser.cpp */, + 78C9AC56C2AC4409ABB0C026 /* JSONDataParser.h */, + ); + name = parser; + sourceTree = ""; + }; + A41555FF45474D97BCB2719B /* Delegate */ = { + isa = PBXGroup; + children = ( + 4483765E8D6B45D4931FAF4E /* SRDelegateController.h */, + 22DCBA4584614CD0949830A8 /* SRDelegateController.m */, + ); + name = Delegate; + sourceTree = ""; + }; + A9A87040680A433584EAF20C /* shadow */ = { + isa = PBXGroup; + children = ( + 0697AAC9BF3840B38AF5EF75 /* ShadowFlow.cpp */, + 7C90C16F7CE342C483D15A95 /* ShadowFlow.h */, + 56C796B70ADC454F8E00FB65 /* ShadowStage.cpp */, + 4AC50A178FD74C8E95785087 /* ShadowStage.h */, + ); + name = shadow; + sourceTree = ""; + }; + AA000399C0B24C3F94A6B6F0 /* math */ = { + isa = PBXGroup; + children = ( + E7419D0DB0AF4119A6C265CB /* Geometry.cpp */, + D54E7ADB1D6741479EFD39B7 /* Geometry.h */, + 5CB613C43F85481883362D90 /* Mat3.cpp */, + 03C0CA93650449CE90D19490 /* Mat3.h */, + 559BCBB88088439A90C5119C /* Mat4.cpp */, + BAC8D97E705E4BA3B1F510BA /* Mat4.h */, + 4A7DECC75A584009955CC41C /* Mat4.inl */, + 75157609C1944EEEB4AA6BB6 /* Math.cpp */, + 34812BFDD4324677A080F5E8 /* Math.h */, + 44A349B97C364923AB86804E /* MathBase.h */, + EB9B1D8D7A504CCB8E898EDF /* MathUtil.cpp */, + 1A6466302C08481992B56CCC /* MathUtil.h */, + B4F780EA183F4320A5130E18 /* MathUtil.inl */, + 51A0EA8290554031930BE2AE /* MathUtilNeon.inl */, + AF505C0C6B184BC1BA3B32A3 /* MathUtilNeon64.inl */, + C700567893364573B250D290 /* MathUtilSSE.inl */, + 758DAAFD1DD44862B27F3BB7 /* Quaternion.cpp */, + 8930082B41C945B78B7487CD /* Quaternion.h */, + 8D2128A109A940FFB615489F /* Quaternion.inl */, + D48B771F3B1B4F22BA25E9D9 /* Vec2.cpp */, + 48716DC37274465881352B84 /* Vec2.h */, + CD9298C020054023AECD57CC /* Vec2.inl */, + 09536B6590D24F58AFD1307A /* Vec3.cpp */, + 7734B58E4EAB40A7976F88C4 /* Vec3.h */, + 26FF5E874A324D388A779022 /* Vec3.inl */, + F6C6E001B76B474A9705A1D9 /* Vec4.cpp */, + AD089C8092634AFF8CDB555E /* Vec4.h */, + 3A714D0E04EE442F800A4509 /* Vec4.inl */, + 095F37C87BF44E5EB4421A09 /* Vertex.cpp */, + F6F0165DBA4B4CAB80D3AE5D /* Vertex.h */, + ); + name = math; + sourceTree = ""; + }; + AAC2F716305346038BDFBD62 /* gfx-base */ = { + isa = PBXGroup; + children = ( + 13B0567434084F98937DA9CC /* GFXBase.h */, + 45792904B9B749C8A1C1A078 /* GFXBuffer.cpp */, + 9B9346E05723495AB355AF47 /* GFXBuffer.h */, + 0362BDC6636C4C5DA68299F0 /* GFXCommandBuffer.cpp */, + E0714435A613465EBAA2E7A7 /* GFXCommandBuffer.h */, + 147F80851F5A4168AB385380 /* GFXContext.cpp */, + 71EB60B97F9243CC80AE0E07 /* GFXContext.h */, + 54A906EF1DBE4BACB9192CD9 /* GFXDef-common.h */, + 4E5977DABF19437F976B32A5 /* GFXDef.cpp */, + EC5254C839F7446D8C55F807 /* GFXDef.h */, + 687E164A178846CDB76CE413 /* GFXDescriptorSet.cpp */, + 4D88DFC46E5D4E9693FC352D /* GFXDescriptorSet.h */, + F972151764DC4C52A94DD70B /* GFXDescriptorSetLayout.cpp */, + 7E3ADBA537814882AA198D3D /* GFXDescriptorSetLayout.h */, + DBD1316354424935A627AAAC /* GFXDevice.cpp */, + 1C2F614575294BA1ABE66E37 /* GFXDevice.h */, + D612CBE16B6A4517A6B81099 /* GFXFramebuffer.cpp */, + 01B6FF5D94D342AAB0013578 /* GFXFramebuffer.h */, + F3C0A688DF7F4FCFA4F469F4 /* GFXGlobalBarrier.cpp */, + FEC4096B1477418498F8BAC3 /* GFXGlobalBarrier.h */, + C9A37B4D3CF240909B89B7CA /* GFXInputAssembler.cpp */, + FD7E7AAA8B064B3EBA928BE0 /* GFXInputAssembler.h */, + 850113D269B647A59F16E144 /* GFXObject.cpp */, + 4E97D59B711A4FAC994CDB38 /* GFXObject.h */, + E87FBBB29F0741C69EE7F6A6 /* GFXPipelineLayout.cpp */, + F2E41C32F01544A6838DA5E9 /* GFXPipelineLayout.h */, + 7533DA1F16044805BD3FCB68 /* GFXPipelineState.cpp */, + DF93BD3BD93A4605A2696894 /* GFXPipelineState.h */, + 856E1C8D7DBA4B2795223229 /* GFXQueue.cpp */, + 8B92887B334E4974B3B74B4E /* GFXQueue.h */, + 5C3A92DD763D4CB8AB200BAF /* GFXRenderPass.cpp */, + BBDE8B26BF774048BDF9A289 /* GFXRenderPass.h */, + 63FBA71905704626831CF249 /* GFXSampler.cpp */, + F716DDEB33C8494EA729EB65 /* GFXSampler.h */, + 5778400E13594F26A71929A6 /* GFXShader.cpp */, + 8296E9CA4B2D48FBA400E96C /* GFXShader.h */, + 98655128708C4A75A43AC6D6 /* GFXTexture.cpp */, + 0F9CCF1F9C1A4AD79CDE4EDD /* GFXTexture.h */, + 376674892D404F5993BBC3DF /* GFXTextureBarrier.cpp */, + 8F7D96ADCC644B09BE23044C /* GFXTextureBarrier.h */, + ); + name = "gfx-base"; + sourceTree = ""; + }; + AE2ACC9537D049DD99F0323C /* dragonbones */ = { + isa = PBXGroup; + children = ( + 8E6E1CEF348E46088FD0FFF5 /* animation */, + 061B022282B244E09EFBE2A4 /* armature */, + 5BB594354BE34149ACFEEE96 /* core */, + 950EB08961A84EC49B069563 /* event */, + FC2F9EF4B0B84C40BAA10D87 /* factory */, + 7B037EA4DC6A43B2BAEA3269 /* geom */, + 9403893E70164CB48AE36795 /* model */, + A0B60524C3A64BC1A1AACD10 /* parser */, + 1F2BBF387A734127B527E2B4 /* DragonBonesHeaders.h */, + ); + name = dragonbones; + sourceTree = ""; + }; + B10ED16F538248F59927D93D /* job-system-taskflow */ = { + isa = PBXGroup; + children = ( + B2EB4130BBA2461BB31666E6 /* TFJobGraph.cpp */, + AA7E8FE4F4FD436A992F8032 /* TFJobGraph.h */, + E42BCD67BD5D4820850A2A9D /* TFJobSystem.cpp */, + 499F105AD92C44A7B26FD675 /* TFJobSystem.h */, + ); + name = "job-system-taskflow"; + sourceTree = ""; + }; + B5B483F17AF7437196437AD7 /* webview */ = { + isa = PBXGroup; + children = ( + 5F56E276D7524C7BB243B367 /* WebView-inl.h */, + 912B543094C8450BB845B83D /* WebView.h */, + 5BF292ECA9144F22A5D228E9 /* WebViewImpl-android.h */, + E828FD4C48074C849F907BB6 /* WebViewImpl-ios.h */, + D8F4D2BE6FC6452D9ED5C162 /* WebViewImpl-ios.mm */, + ); + name = webview; + sourceTree = ""; + }; + B7F91C84F5EC483D9EC7708F /* IOConsumer */ = { + isa = PBXGroup; + children = ( + 8874A676867E4F5C8C48EB1F /* SRIOConsumer.h */, + 6C03E24FB221471B914C4226 /* SRIOConsumer.m */, + D49FCA0D7FEE41D69BE868A4 /* SRIOConsumerPool.h */, + 5FD41F4191114F109832A956 /* SRIOConsumerPool.m */, + ); + name = IOConsumer; + sourceTree = ""; + }; + B88783A19D1B4F7CB0114D7C /* debugger */ = { + isa = PBXGroup; + children = ( + 3F3AF47508B44272A7F0AFA7 /* SHA1.cpp */, + D7A7E07DB73E4F9E83720300 /* SHA1.h */, + 5ACBD708237E4DFFA68D29A2 /* base64.h */, + 6481EB0B7BD8498CA4934CA3 /* env.cpp */, + EFFDFBABA56C4058B2AE6C1F /* env.h */, + E55F7610FB284ADE80D44EF9 /* http_parser.c */, + EEF059266BF04BD8AE3BC02C /* http_parser.h */, + DC69AF6CAC1E4C7F82239CEC /* inspector_agent.cpp */, + 38B9874AD43240C589DB23BB /* inspector_agent.h */, + C2ABC50A40A44E49AD383F5D /* inspector_io.cpp */, + C8F01D3E8989408B962F61DC /* inspector_io.h */, + 7ACD8AB1F6F8446EA5664A88 /* inspector_socket.cpp */, + D92D171ABFDF453EBDAFDD14 /* inspector_socket.h */, + 968512EAF221492389D52233 /* inspector_socket_server.cpp */, + FF565A2155444B948E51804E /* inspector_socket_server.h */, + 819F0BD3C3754CEDA18CD6D9 /* node.cpp */, + 74583647D77A4A89BB885093 /* node.h */, + D78EF58CD1024F35A07F1FCA /* node_debug_options.cpp */, + 92D28D61F02043B087CBC923 /* node_debug_options.h */, + 617129610D25417585040F24 /* node_mutex.h */, + 13DA61346DE84AE880EEB9B4 /* util-inl.h */, + F1D082FEF4164E81B0563713 /* util.cpp */, + C3D40370AA8C4BCF9DFA117A /* util.h */, + 1D82121F8F6A45EABF938BAE /* v8_inspector_protocol_json.h */, + ); + name = debugger; + sourceTree = ""; + }; + BCE098E57CDA4332A40C21E6 /* memory */ = { + isa = PBXGroup; + children = ( + CCC4E6183C734752B2F0C79B /* AllocatedObj.cpp */, + 22EEA1C5940F44C0A04B57BF /* AllocatedObj.h */, + 4E18B38DDAB2452898319BF2 /* JeAlloc.cpp */, + B733AFEC82334AFE994EEFEF /* JeAlloc.h */, + E2237E2CF79E473BA4A8AD2C /* MemDef.h */, + 780AA2CC68DA4767AE7A7ED4 /* MemTracker.cpp */, + 79556DAA7D934040A55ACADE /* MemTracker.h */, + 2E18C365ECD84080AE61633E /* Memory.cpp */, + 04818C27463F4D90A4EB5947 /* Memory.h */, + 0E08C62B7C2A4D438BF319C1 /* NedPooling.cpp */, + 0D3A6753C6694D89BE3EB6FB /* NedPooling.h */, + 7C6D50AE163C440BB3F58F5F /* StdAlloc.h */, + 29CD76E50ECB428B8FFD6258 /* StlAlloc.h */, + ); + name = memory; + sourceTree = ""; + }; + BE2FB0DED4FC4E4DAC7BAA32 /* helper */ = { + isa = PBXGroup; + children = ( + D0404566A51F4F13B56E0DAE /* DefineMap.cpp */, + 9568F744A3EA48898D7C8A70 /* DefineMap.h */, + D171186431BA40DB9E1B4ADE /* SharedMemory.cpp */, + E47E71DA540948EBBD09BDCB /* SharedMemory.h */, + ); + name = helper; + sourceTree = ""; + }; + BFCFCD50D3AB44D6B2EC09D6 /* manual */ = { + isa = PBXGroup; + children = ( + CFF2DD0647F948008DAAADB4 /* JavaScriptObjCBridge.h */, + 69227C0C0FD2430BA0419274 /* JavaScriptObjCBridge.mm */, + 84F9387623614AB780AE7116 /* jsb_classtype.cpp */, + 84A654CFABE1491EA6CA08DA /* jsb_classtype.h */, + 6D53BF6C0B4C45BC8E88802B /* jsb_cocos_manual.cpp */, + 5D537EBC69D24DE7A47FCD2D /* jsb_cocos_manual.h */, + B474B46BBB224CADA1FE171B /* jsb_conversions.cpp */, + 24B9D1FA2BE34F6091A7B3DF /* jsb_conversions.h */, + 9757F33650CB4411820E3FBC /* jsb_dragonbones_manual.cpp */, + E4115169CF1D4EEAAC77FD85 /* jsb_dragonbones_manual.h */, + F9D4F5B38BEC44668268EF7B /* jsb_gfx_manual.cpp */, + 90F2857C0ADD4DF3941F6A13 /* jsb_gfx_manual.h */, + 081D14196F204C699C131E49 /* jsb_global.cpp */, + 7B9B5BD010E24B288FABFB06 /* jsb_global.h */, + 8746D4997A034CCA9B73FA65 /* jsb_global_init.cpp */, + F227443F8D47475CB9FA907B /* jsb_global_init.h */, + 3BFC607B68A046AB99499D02 /* jsb_helper.cpp */, + 45480837FA1344F8B631E668 /* jsb_helper.h */, + BC5E0FA64DF74CCB99F33EA1 /* jsb_module_register.h */, + D9C72F52CE254F5D99FEEAFB /* jsb_network_manual.cpp */, + 95D61C118DE44B6EAC8A57A0 /* jsb_network_manual.h */, + 54B0ABAD950E42C580584355 /* jsb_pipeline_manual.cpp */, + EC8D3F2500754DEAAFFA7938 /* jsb_pipeline_manual.h */, + 79597A5708E14B10B51319DF /* jsb_platform.h */, + 17672CC4041747BBA4AA6DFD /* jsb_platfrom_apple.mm */, + 5F4BBE9613414B7CBB8E6DE4 /* jsb_socketio.cpp */, + 0DA074F19CF140BDA00DE2D0 /* jsb_socketio.h */, + C369A28DB8C74706A82452DA /* jsb_websocket.cpp */, + 072F0C4000DA4F6DB46B7585 /* jsb_websocket.h */, + 5095379B1F0D49529AF38AEB /* jsb_xmlhttprequest.cpp */, + 2AD9B2A199144DA7ADA6EFE2 /* jsb_xmlhttprequest.h */, + ); + name = manual; + sourceTree = ""; + }; + C3302BDDF36D4067BAC7956C /* ConvertUTF */ = { + isa = PBXGroup; + children = ( + 5C1771135D2549FBBCFA076D /* ConvertUTF.c */, + D6B4A01870E24BFB9892C179 /* ConvertUTF.h */, + 6543D445E3DD4BF0B024B7F6 /* ConvertUTFWrapper.cpp */, + ); + name = ConvertUTF; + sourceTree = ""; + }; + C7A449815BF1464888347FA9 /* pipeline */ = { + isa = PBXGroup; + children = ( + 80322628344D4498AC0E8D46 /* forward */, + 60011A58976542778085B08B /* deferred */, + A9A87040680A433584EAF20C /* shadow */, + BE2FB0DED4FC4E4DAC7BAA32 /* helper */, + 34CE0229CF85402DAE2627E5 /* BatchedBuffer.cpp */, + 875D66B4DF994778B09826D4 /* BatchedBuffer.h */, + F375A3F6DB6E4038ABEA4AE7 /* Define.cpp */, + 1514D12F13544EE4AF15638B /* Define.h */, + 7FE69EE25E134E28A2610679 /* InstancedBuffer.cpp */, + FB25CB87C0784D33A1912ED5 /* InstancedBuffer.h */, + 87ADD8C3583449BFB6FA6BC2 /* PipelineSceneData.cpp */, + E37040DBE095420D9968530A /* PipelineSceneData.h */, + A2D78EB738C44D40AB63F2F3 /* PipelineStateManager.cpp */, + 87F38A46B0E2414EACD96F0A /* PipelineStateManager.h */, + FA820062345342BAA94D42A4 /* PipelineUBO.cpp */, + 6C605F0F61DD4D418982B749 /* PipelineUBO.h */, + 19D82D7BA61B4581A2CC2182 /* PlanarShadowQueue.cpp */, + D10CC4E0E0EA443E89F21C74 /* PlanarShadowQueue.h */, + 91EB3026B8AA4764A4BF66FE /* RenderAdditiveLightQueue.cpp */, + 8C515DB7360F440CB19C0661 /* RenderAdditiveLightQueue.h */, + D05DA49C416646B1AF047424 /* RenderBatchedQueue.cpp */, + 4FFE8C17C9854FEC8C022A36 /* RenderBatchedQueue.h */, + C2B85F245DA547DF9966C9F0 /* RenderFlow.cpp */, + 7A1A0233DF3045238B0A5905 /* RenderFlow.h */, + 789F4A9479424097A9E7376B /* RenderInstancedQueue.cpp */, + 7CAC5AF5AD164791851C63F6 /* RenderInstancedQueue.h */, + A440C767E9E84AF7B9D754A0 /* RenderPipeline.cpp */, + 7DB29489816B466B8DCCEFC8 /* RenderPipeline.h */, + 14FAF6AA891F4E14A353D798 /* RenderQueue.cpp */, + C8837A06DA64422F9E078441 /* RenderQueue.h */, + 3CB55A69416F4719B9EE96C2 /* RenderStage.cpp */, + 6D5E2A3C59AF4956B1E56442 /* RenderStage.h */, + FA5DBF177ACA4099B4C72136 /* SceneCulling.cpp */, + 0334621EFEE84272B3D895CE /* SceneCulling.h */, + 8F3FD75DDCAC43F98FAB537F /* ShadowMapBatchedQueue.cpp */, + 38226DC98FD74467B2803891 /* ShadowMapBatchedQueue.h */, + ); + name = pipeline; + sourceTree = ""; + }; + C81CBEF32CA64C389678F23A /* dop */ = { + isa = PBXGroup; + children = ( + EAAF83FB72DD4F83A568CEC4 /* BufferAllocator.cpp */, + 44F0CECC659D48BBB14BC7B9 /* BufferAllocator.h */, + 2D67FE7EF57645C8B7F32B9D /* BufferPool.cpp */, + FCC7C790C52947CCBD2D46C7 /* BufferPool.h */, + 23610B379C0F4CDD80418247 /* ObjectPool.cpp */, + 30C0404948584B7F8FFB4468 /* ObjectPool.h */, + AB1DDADCA51B479C92CB74D9 /* PoolType.h */, + 074A03517A98458DBB5BF896 /* jsb_dop.cpp */, + 5D48AFFBDBB64BB3AF528386 /* jsb_dop.h */, + ); + name = dop; + sourceTree = ""; + }; + CF6A6701587641BD93C9EDF9 /* include */ = { + isa = PBXGroup; + children = ( + 509A8A423D334B9CB49DC01A /* AudioEngine.h */, + 88C5232C49664C2197D64DD5 /* Export.h */, + ); + name = include; + sourceTree = ""; + }; + D0E667543F3A4AA9A4474A59 /* gfx-agent */ = { + isa = PBXGroup; + children = ( + B098DAA9E20E4CFC9A113125 /* BufferAgent.cpp */, + 851DDE2029F84B0CAABECECA /* BufferAgent.h */, + D3C6AD992A0043498D83E33B /* CommandBufferAgent.cpp */, + 47B75E5C731848198FC22DC0 /* CommandBufferAgent.h */, + 986A5D3C8D5D47F382627E7A /* DescriptorSetAgent.cpp */, + 653EA69820934FAB8CF1A2AA /* DescriptorSetAgent.h */, + 04DB759CCCF044C689F94A67 /* DescriptorSetLayoutAgent.cpp */, + 71A05362916242C98ACDAA9A /* DescriptorSetLayoutAgent.h */, + 55EBDBCBE2BB4EBAB420E61F /* DeviceAgent.cpp */, + ADDB399296B54BE9903944AF /* DeviceAgent.h */, + 774EF60923D34922BD7AEF2D /* FramebufferAgent.cpp */, + 5DCAADDDD9944A408DE601EA /* FramebufferAgent.h */, + B0135429A32A43AC87A12B30 /* InputAssemblerAgent.cpp */, + 3F32E831424847D68D933F27 /* InputAssemblerAgent.h */, + 0AAD01779AC34533966D9FA4 /* LinearAllocatorPool.h */, + A165F068649348BB96C238BD /* PipelineLayoutAgent.cpp */, + 12112767F4A0410085A6D156 /* PipelineLayoutAgent.h */, + 66491A081DCD4EC8A9F01809 /* PipelineStateAgent.cpp */, + 2B567741C0A94DBF87F95FCB /* PipelineStateAgent.h */, + F9BABEBB70694C7CBFF0AA83 /* QueueAgent.cpp */, + A92426B7694B4BAFBB8D0534 /* QueueAgent.h */, + 5F6A321309C844A5BBDF385A /* RenderPassAgent.cpp */, + A3F7660698A249ABABEF45FE /* RenderPassAgent.h */, + CB16F6021E96452FA72FCAC0 /* SamplerAgent.cpp */, + CC13977548F245158BF7B6AE /* SamplerAgent.h */, + D7228E4142CA4088842D684E /* ShaderAgent.cpp */, + D70A9DC872B1426B8E4C84BF /* ShaderAgent.h */, + 74FAC6AE469F4D30A07AF015 /* TextureAgent.cpp */, + C3C7DA8BD43B45D0A76BFB20 /* TextureAgent.h */, + ); + name = "gfx-agent"; + sourceTree = ""; + }; + D14DAAECC4DF49B08CBF0813 /* renderer */ = { + isa = PBXGroup; + children = ( + AAC2F716305346038BDFBD62 /* gfx-base */, + D0E667543F3A4AA9A4474A59 /* gfx-agent */, + 8CFC6608AD63444584D451D7 /* gfx-validator */, + D71E604087CF4673B27C738D /* gfx-empty */, + C7A449815BF1464888347FA9 /* pipeline */, + E026423BC17A48F89F4706D9 /* gfx-metal */, + 3C407CB4B0474242A367F930 /* frame-graph */, + 025F9198E1BA4FBEB9F12C38 /* GFXDeviceManager.h */, + ); + name = renderer; + sourceTree = ""; + }; + D1F5BB3AADAC4B328E1C852B /* Products */ = { + isa = PBXGroup; + children = ( + 46916F90264CD4B0000C7B53 /* libcocos3 iOS.a */, + ); + name = Products; + sourceTree = ""; + }; + D71E604087CF4673B27C738D /* gfx-empty */ = { + isa = PBXGroup; + children = ( + 66D41D4A0A1147D5A4FF8EEF /* EmptyBuffer.cpp */, + 9B37D92667D949B99C233353 /* EmptyBuffer.h */, + 1A77AAD2EED544CC80FEEF65 /* EmptyCommandBuffer.cpp */, + 340F7D703E8040559284AFCC /* EmptyCommandBuffer.h */, + B6E40E62666D43AB85E72CCB /* EmptyContext.cpp */, + 6786A2AF5D1541DCB7749E54 /* EmptyContext.h */, + 01DEACB312714541BEBA4B3D /* EmptyDescriptorSet.cpp */, + ECA223749E634D4CAB73DC7D /* EmptyDescriptorSet.h */, + 9E3FD6B612334F0690887169 /* EmptyDescriptorSetLayout.cpp */, + 6E7E9D6DD00E4B059C614AB4 /* EmptyDescriptorSetLayout.h */, + 22DDDE98FBAC43B6B93572C5 /* EmptyDevice.cpp */, + 5E44C8139DEE40F2A670FBAC /* EmptyDevice.h */, + A321F2085709480CA4ADAD6A /* EmptyFramebuffer.cpp */, + 50582ACA58DC4E60A89D7A0A /* EmptyFramebuffer.h */, + 9DA8230BDE784DA69A015CE8 /* EmptyInputAssembler.cpp */, + 7BD22223F33348AA88C2F542 /* EmptyInputAssembler.h */, + 2BE389EF443E4010900B925B /* EmptyPipelineLayout.cpp */, + B70C30160FD94DF6AACFCC29 /* EmptyPipelineLayout.h */, + 224C285287644D1ABFF6F727 /* EmptyPipelineState.cpp */, + 99D8C1CAECA4456D9898C5D9 /* EmptyPipelineState.h */, + 592A69261DC74597A3E90D84 /* EmptyQueue.cpp */, + 5D72D0D566174437AD83545B /* EmptyQueue.h */, + 3E4CC6E973574A37AFE6492F /* EmptyRenderPass.cpp */, + A769C2372C4F4FACB0A24FE8 /* EmptyRenderPass.h */, + F76A536D799A4ED2BB621312 /* EmptySampler.cpp */, + 7DE0B66640994E65882BA275 /* EmptySampler.h */, + AF91400FEA0F4E14BC77E2CE /* EmptyShader.cpp */, + 1D36F7B2998E4371B58734B1 /* EmptyShader.h */, + 50ED2D1BCAB04297B54357EA /* EmptyTexture.cpp */, + E57EB196F8404497892D42BC /* EmptyTexture.h */, + ); + name = "gfx-empty"; + sourceTree = ""; + }; + D7BDC9CFB22044A8A778CF4E /* RunLoop */ = { + isa = PBXGroup; + children = ( + 3399572D3C7B4D299974D852 /* SRRunLoopThread.h */, + B53BFD33D3004B428BEAC63D /* SRRunLoopThread.m */, + ); + name = RunLoop; + sourceTree = ""; + }; + DA989ED0BFB6440CBD00FB78 /* local-storage */ = { + isa = PBXGroup; + children = ( + 454B35A47A1A4DBBAEF9E8FC /* LocalStorage.cpp */, + B5E01AAC1CA5415F9C544294 /* LocalStorage.h */, + ); + name = "local-storage"; + sourceTree = ""; + }; + E026423BC17A48F89F4706D9 /* gfx-metal */ = { + isa = PBXGroup; + children = ( + 522A0179EEEB4FA5AFAFEB26 /* GFXMTL.h */, + 07D35AD4B354453E964736F2 /* MTLBuffer.h */, + DBC8942CE8D4472A9D7757BA /* MTLBuffer.mm */, + 2384B6037B074E1EA14680AA /* MTLCommandBuffer.h */, + 104F57C091D0471B97574C36 /* MTLCommandBuffer.mm */, + A7A728D66FBA4464A53555B2 /* MTLCommandEncoder.h */, + 2A4F424EF5B046DDA0463481 /* MTLComputeCommandEncoder.h */, + B9F3BC333003425490D08CD0 /* MTLConfig.h */, + 931EEBBC76024477ABC702B5 /* MTLContext.h */, + 34227D6F1A26422AB93668ED /* MTLContext.mm */, + A55027CBF8C24420B2BDCF20 /* MTLDescriptorSet.h */, + 0FA9FCE61AFF43FE96A4E163 /* MTLDescriptorSet.mm */, + DAA3D36D545444A5BB8EF525 /* MTLDescriptorSetLayout.h */, + 0E3AB6787D3D4080BD3225DA /* MTLDescriptorSetLayout.mm */, + 1E402B43920A401E9E3128F6 /* MTLDevice.h */, + 7D66AAF0BE8E4C73B0F2966A /* MTLDevice.mm */, + C508C71ABAAB42D28764931C /* MTLFramebuffer.h */, + DD9B48C88F6F465BB64481AD /* MTLFramebuffer.mm */, + 7D664A9912FB492EAF56C24E /* MTLGPUObjects.h */, + 0001629B6D6242F7B684AA7C /* MTLInputAssembler.h */, + FEBCF155937C4B3F9DF486CE /* MTLInputAssembler.mm */, + 0A100726E7984DEFA1A0F87E /* MTLPipelineLayout.h */, + 13176147B6DC4127889AC238 /* MTLPipelineLayout.mm */, + 81323059F3134439A96CC94A /* MTLPipelineState.h */, + FC9B97F690734A62BF55248D /* MTLPipelineState.mm */, + 325B28C9239642568DE7ADCA /* MTLQueue.h */, + DB3B27588FF2469AA47714AD /* MTLQueue.mm */, + 494EA44BE2FE4DFCAB58F00F /* MTLRenderCommandEncoder.h */, + B53C262D0D3F477AA036B898 /* MTLRenderPass.h */, + BC57D69DF0C2491EA7FCAB73 /* MTLRenderPass.mm */, + 46BAAD6D9C4A4E8185372CB1 /* MTLSampler.h */, + E535C3972B9C417CB11DEBA6 /* MTLSampler.mm */, + 49C5B85A45374751B900A004 /* MTLSemaphore.h */, + 4EBB3259FBE1427B8B5D160A /* MTLShader.h */, + BE0EFE82E90B4193A465B6EC /* MTLShader.mm */, + 93F4B6F75D9F4FAEBBCD3FBA /* MTLStd.cpp */, + EC595D0634204C02B6109B49 /* MTLStd.h */, + 860ECBECB969435595A45E12 /* MTLTexture.h */, + 8D28BC027A184C5386F49923 /* MTLTexture.mm */, + B04D8CE65A7B4FC6AF92638D /* MTLUtils.h */, + 06EE73C34C9F4719B2E91616 /* MTLUtils.mm */, + ); + name = "gfx-metal"; + sourceTree = ""; + }; + E60EEB46B4DB4930B1168D19 /* assets-manager */ = { + isa = PBXGroup; + children = ( + 58C83251AEF3414DAF51A139 /* AssetsManagerEx.cpp */, + 50190325D99A4F22996E806C /* AssetsManagerEx.h */, + 052379BBBFB04CAEB829CF69 /* AsyncTaskPool.cpp */, + 72FEAC9B24734B1CA615F30D /* AsyncTaskPool.h */, + D3C3B49116574D498CCA88A7 /* EventAssetsManagerEx.cpp */, + 278C5984EE3C4B5DA95D2131 /* EventAssetsManagerEx.h */, + AF66D3C7502A498097716036 /* Manifest.cpp */, + A75B7072D1F54347A6F3D6C3 /* Manifest.h */, + ); + name = "assets-manager"; + sourceTree = ""; + }; + E64CF4F9ECCC4610ACCE3315 /* base */ = { + isa = PBXGroup; + children = ( + BCE098E57CDA4332A40C21E6 /* memory */, + 127AE8CB63864214A8336BD2 /* threading */, + 391AE2B919104AA8B709D972 /* job-system */, + F457ED55A7134429AF75E0E3 /* Agent.h */, + EC4576FD5A5947A482C0C055 /* AutoreleasePool.cpp */, + 5EC02676FAA84F32BFE965A6 /* AutoreleasePool.h */, + 22D86707ACF54B919C5C934A /* CachedArray.h */, + 4AEBC90587254D8AA5F66703 /* Config.h */, + C42D92F6B5A44E65B7F7597E /* CoreStd.h */, + C2433F97C19145C4BC9C4409 /* Data.cpp */, + A716437DFDA9408BB3128BA3 /* Data.h */, + 1DC771E7182641418EBD474D /* IndexHandle.h */, + E9239E07143C4C5DAF1F9254 /* Log.cpp */, + 001904DF1DAC44B18E68A3C7 /* Log.h */, + 82F7C6EA1442466D8848B3F7 /* Macros.h */, + D93443B9373C45CBB607D695 /* Map.h */, + 412D2421984B4458BC8F91F6 /* Object.h */, + 6E4C3A9AE78C4DE4BECED032 /* Random.h */, + CAD5488EFD7445FBBD6918AB /* Ref.cpp */, + B765E4405FE4443DB584E7FB /* Ref.h */, + AE81D16E098D4859964635E7 /* Scheduler.cpp */, + DE706C4554064C048C8B3848 /* Scheduler.h */, + 990C85AB6F964DD88D7AA9D4 /* StringHandle.cpp */, + CDC55E997A49470C8BCF5650 /* StringHandle.h */, + 105A9F467E584851B94046B9 /* StringPool.h */, + 36CC7CDE38514CC5A596D5BD /* StringUtil.cpp */, + 43E6DD7043234FFF85023303 /* StringUtil.h */, + BF786668B2634D4D8A6C0CBF /* ThreadPool.cpp */, + 4183438CEC25406698C40824 /* ThreadPool.h */, + BA7A40DAE8674038A24B3575 /* TypeDef.h */, + C4EB3ED6BD524BD0A78ABEED /* UTF8.cpp */, + 1F471894CACF4A4D85AD71AA /* UTF8.h */, + 6D7E76A2295045C68672DE12 /* Utils.cpp */, + 9C24E27A749243E383FF2E56 /* Utils.h */, + 230D3A277316486EACBE409D /* Value.cpp */, + A79CF5E534D94322A7EAF49D /* Value.h */, + 8B750611598048ACBD50CA72 /* Vector.h */, + D554808A995B4F599991D4AF /* ZipUtils.cpp */, + C2B06F4FF20541389787A787 /* ZipUtils.h */, + A99006AD0CE2475998277204 /* astc.cpp */, + 5841B42195A44D35A3E8457F /* astc.h */, + 6C9A8131692A4872BD9F900B /* base64.cpp */, + D0709EA5CA2B4BFA995F2227 /* base64.h */, + 495D39772DF945D8B449F246 /* csscolorparser.cpp */, + 706CB58F26B148489A7B3080 /* csscolorparser.h */, + 42F05FDC21E9406A91CD6D55 /* etc1.cpp */, + 8D2DB8D354A141E0B787E6D3 /* etc1.h */, + 09ED723A3FF945218563E653 /* etc2.cpp */, + D98EA49260B345FB96AC2D3E /* etc2.h */, + ); + name = base; + sourceTree = ""; + }; + E6CAE561802D4BD1991D56B4 /* apple */ = { + isa = PBXGroup; + children = ( + E55B412E575A40C9ADBB3FC4 /* AudioCache.h */, + A5576971E1DA4B87A6A8E5FF /* AudioCache.mm */, + A01E6DA5400844C0909763B5 /* AudioDecoder.h */, + 60572206A6064C93924B972D /* AudioDecoder.mm */, + D1740ABB9D7D4324B9C191FA /* AudioEngine-inl.h */, + B8437033FDF748AF86CFE936 /* AudioEngine-inl.mm */, + 64895710F4DE4C769D3B4F93 /* AudioMacros.h */, + EF664DD893DD4B6D9DC155B2 /* AudioPlayer.h */, + AB0787D169484EA594A71278 /* AudioPlayer.mm */, + ); + name = apple; + sourceTree = ""; + }; + EC2B91147F454A7CA3332387 /* Security */ = { + isa = PBXGroup; + children = ( + 094565FA29F8463687A3E5FE /* SRPinningSecurityPolicy.h */, + 402738C854A141119D07250F /* SRPinningSecurityPolicy.m */, + ); + name = Security; + sourceTree = ""; + }; + ECF0A52BAAD74E03817C34E7 /* sources */ = { + isa = PBXGroup; + children = ( + 99ABD50F13924587A5CB2236 /* tinyxml2 */, + 35FEC3924F94496EB59750F1 /* xxtea */, + ED5908228BEE4E1FB95CFE91 /* unzip */, + C3302BDDF36D4067BAC7956C /* ConvertUTF */, + 199113A4A7B74E62A64B7F25 /* tommyds */, + 1789062CF11E4147BA86DCAC /* SocketRocket */, + ); + name = sources; + sourceTree = ""; + }; + ED5908228BEE4E1FB95CFE91 /* unzip */ = { + isa = PBXGroup; + children = ( + 2FC2EB4FEE33483D94B9CE43 /* crypt.h */, + F687B8E509D547958DFB7E54 /* ioapi.cpp */, + 48AA7ABD0C064A0A9DB85860 /* ioapi.h */, + 1AB0832C2F844287A34B2611 /* ioapi_mem.cpp */, + 18851B7DA82041458F2E02E1 /* ioapi_mem.h */, + EC2008C6204D48C692796559 /* unzip.cpp */, + 1FA3E6C1394147CAB737BBA3 /* unzip.h */, + ); + name = unzip; + sourceTree = ""; + }; + F4BBAD8C13EE4514BF2D29AC /* Source Files */ = { + isa = PBXGroup; + children = ( + 140E6AE467804D9FB89A27F0 /* cocos */, + 460B41F8EF6F462C80A882FC /* extensions */, + 737ADACA491142128E3B39E2 /* external */, + ); + name = "Source Files"; + sourceTree = ""; + }; + F84F47954CEC4622BD076898 /* platform */ = { + isa = PBXGroup; + children = ( + 973B9517943E4AE5932B8E86 /* apple */, + 5D3B661D4C1E47C6A42D792E /* ios */, + 487AFC006C584B149A58BFB1 /* Application.cpp */, + 858A6F5B1561439AACEE6403 /* Application.h */, + 1F8E0888106D43409E96B354 /* CanvasRenderingContext2D.h */, + 5F55C629BC2142C09612BF69 /* Device.h */, + 2740F716A1A747429E08DE39 /* FileUtils.cpp */, + 47030E10F2AE4854B4AF18D7 /* FileUtils.h */, + D4391FFF967A434999A02B4E /* Image.cpp */, + 63F0E46044A34F9189FD0E89 /* Image.h */, + DD125DE95A3A4236BCF23603 /* SAXParser.cpp */, + 8D2C7437C77548E68F212AED /* SAXParser.h */, + ECF2DA3F310C49619E01900D /* StdC.h */, + ); + name = platform; + sourceTree = ""; + }; + FC2F9EF4B0B84C40BAA10D87 /* factory */ = { + isa = PBXGroup; + children = ( + 007A8025F2584FF88379D29D /* BaseFactory.cpp */, + 3F853D91E8524CE5A5BB0F6E /* BaseFactory.h */, + ); + name = factory; + sourceTree = ""; + }; + FCD4EED36E914E73819D8B51 /* Utilities */ = { + isa = PBXGroup; + children = ( + 0462917385F8479D93776330 /* SRError.h */, + 4A1E0271FBE042D3BF388C9D /* SRError.m */, + 1CB016F0CDDE4D41A5C3AE2F /* SRHTTPConnectMessage.h */, + A791A59BE42D4EF78365806E /* SRHTTPConnectMessage.m */, + 7AA5E1D3BC6B49EFB515A532 /* SRHash.h */, + 88129FD5D4154316953CF807 /* SRHash.m */, + 76D268400B0247A58A15155F /* SRLog.h */, + B8455FC4C661433991140849 /* SRLog.m */, + 8066F8DF8A344BA0B44B18DC /* SRMutex.h */, + F85B54E8D4B94A0AB985D31E /* SRMutex.m */, + E903BE0DFDEF4307BDB4E7A1 /* SRRandom.h */, + 2A031C290BC744488CADC1DB /* SRRandom.m */, + 3ED8FA86AD804A9D81A508E5 /* SRSIMDHelpers.h */, + 7071756CA5BA4549AE65A4C5 /* SRSIMDHelpers.m */, + 5E29468F8CFF4EBA8A8CEBB3 /* SRURLUtilities.h */, + CBF41DAC0DF34181996DE411 /* SRURLUtilities.m */, + ); + name = Utilities; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 46916E52264CD4B0000C7B53 /* cocos3 iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 46916F8B264CD4B0000C7B53 /* Build configuration list for PBXNativeTarget "cocos3 iOS" */; + buildPhases = ( + 46916E53264CD4B0000C7B53 /* Sources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "cocos3 iOS"; + productName = cocos2d; + productReference = 46916F90264CD4B0000C7B53 /* libcocos3 iOS.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 8A32DCFBF82A404E8DD5982A /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1240; + }; + buildConfigurationList = 238A46ADB53B427B940BCEB1 /* Build configuration list for PBXProject "cocos3-ios" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 0EE1405198564DA1BD2B2895; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 46916E52264CD4B0000C7B53 /* cocos3 iOS */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 46916E53264CD4B0000C7B53 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 46916E54264CD4B0000C7B53 /* AudioEngine.cpp in Sources */, + 46916E55264CD4B0000C7B53 /* AudioCache.mm in Sources */, + 46916E56264CD4B0000C7B53 /* AudioDecoder.mm in Sources */, + 46916E57264CD4B0000C7B53 /* AudioEngine-inl.mm in Sources */, + 46916E58264CD4B0000C7B53 /* AudioPlayer.mm in Sources */, + 46916E59264CD4B0000C7B53 /* AutoreleasePool.cpp in Sources */, + 46916E5A264CD4B0000C7B53 /* Data.cpp in Sources */, + 46916E5B264CD4B0000C7B53 /* Log.cpp in Sources */, + 46916E5C264CD4B0000C7B53 /* Ref.cpp in Sources */, + 46916E5D264CD4B0000C7B53 /* Scheduler.cpp in Sources */, + 46916E5E264CD4B0000C7B53 /* StringHandle.cpp in Sources */, + 46916E5F264CD4B0000C7B53 /* StringUtil.cpp in Sources */, + 46916E60264CD4B0000C7B53 /* ThreadPool.cpp in Sources */, + 46916E61264CD4B0000C7B53 /* UTF8.cpp in Sources */, + 46916E62264CD4B0000C7B53 /* Utils.cpp in Sources */, + 46916E63264CD4B0000C7B53 /* Value.cpp in Sources */, + 46916E64264CD4B0000C7B53 /* ZipUtils.cpp in Sources */, + 46916E65264CD4B0000C7B53 /* astc.cpp in Sources */, + 46916E66264CD4B0000C7B53 /* base64.cpp in Sources */, + 46916E67264CD4B0000C7B53 /* csscolorparser.cpp in Sources */, + 46916E68264CD4B0000C7B53 /* etc1.cpp in Sources */, + 46916E69264CD4B0000C7B53 /* etc2.cpp in Sources */, + 46916E6A264CD4B0000C7B53 /* TFJobGraph.cpp in Sources */, + 46916E6B264CD4B0000C7B53 /* TFJobSystem.cpp in Sources */, + 46916E6C264CD4B0000C7B53 /* AllocatedObj.cpp in Sources */, + 46916E6D264CD4B0000C7B53 /* JeAlloc.cpp in Sources */, + 46916E6E264CD4B0000C7B53 /* MemTracker.cpp in Sources */, + 46916E6F264CD4B0000C7B53 /* Memory.cpp in Sources */, + 46916E70264CD4B0000C7B53 /* NedPooling.cpp in Sources */, + 46916E71264CD4B0000C7B53 /* ConditionVariable.cpp in Sources */, + 46916E72264CD4B0000C7B53 /* MessageQueue.cpp in Sources */, + 46916E73264CD4B0000C7B53 /* Semaphore.cpp in Sources */, + 46916E74264CD4B0000C7B53 /* ThreadPool.cpp in Sources */, + 46916E75264CD4B0000C7B53 /* ThreadSafeLinearAllocator.cpp in Sources */, + 46916E76264CD4B0000C7B53 /* jsb_audio_auto.cpp in Sources */, + 46916E77264CD4B0000C7B53 /* jsb_cocos_auto.cpp in Sources */, + 46916E78264CD4B0000C7B53 /* jsb_dragonbones_auto.cpp in Sources */, + 46916E79264CD4B0000C7B53 /* jsb_editor_support_auto.cpp in Sources */, + 46916E7A264CD4B0000C7B53 /* jsb_extension_auto.cpp in Sources */, + 46916E7B264CD4B0000C7B53 /* jsb_gfx_auto.cpp in Sources */, + 46916E7C264CD4B0000C7B53 /* jsb_network_auto.cpp in Sources */, + 46916E7D264CD4B0000C7B53 /* jsb_pipeline_auto.cpp in Sources */, + 46916E7E264CD4B0000C7B53 /* jsb_video_auto.cpp in Sources */, + 46916E7F264CD4B0000C7B53 /* jsb_webview_auto.cpp in Sources */, + 46916E80264CD4B0000C7B53 /* BufferAllocator.cpp in Sources */, + 46916E81264CD4B0000C7B53 /* BufferPool.cpp in Sources */, + 46916E82264CD4B0000C7B53 /* ObjectPool.cpp in Sources */, + 46916E83264CD4B0000C7B53 /* jsb_dop.cpp in Sources */, + 46916E84264CD4B0000C7B53 /* EventDispatcher.cpp in Sources */, + 46916E85264CD4B0000C7B53 /* HandleObject.cpp in Sources */, + 46916E86264CD4B0000C7B53 /* MappingUtils.cpp in Sources */, + 46916E87264CD4B0000C7B53 /* RefCounter.cpp in Sources */, + 46916E88264CD4B0000C7B53 /* State.cpp in Sources */, + 46916E89264CD4B0000C7B53 /* Value.cpp in Sources */, + 46916E8A264CD4B0000C7B53 /* config.cpp in Sources */, + 46916E8B264CD4B0000C7B53 /* Class.cpp in Sources */, + 46916E8C264CD4B0000C7B53 /* Object.cpp in Sources */, + 46916E8D264CD4B0000C7B53 /* ObjectWrap.cpp in Sources */, + 46916E8E264CD4B0000C7B53 /* ScriptEngine.cpp in Sources */, + 46916E8F264CD4B0000C7B53 /* Utils.cpp in Sources */, + 46916E90264CD4B0000C7B53 /* SHA1.cpp in Sources */, + 46916E91264CD4B0000C7B53 /* env.cpp in Sources */, + 46916E92264CD4B0000C7B53 /* http_parser.c in Sources */, + 46916E93264CD4B0000C7B53 /* inspector_agent.cpp in Sources */, + 46916E94264CD4B0000C7B53 /* inspector_io.cpp in Sources */, + 46916E95264CD4B0000C7B53 /* inspector_socket.cpp in Sources */, + 46916E96264CD4B0000C7B53 /* inspector_socket_server.cpp in Sources */, + 46916E97264CD4B0000C7B53 /* node.cpp in Sources */, + 46916E98264CD4B0000C7B53 /* node_debug_options.cpp in Sources */, + 46916E99264CD4B0000C7B53 /* util.cpp in Sources */, + 46916E9A264CD4B0000C7B53 /* JavaScriptObjCBridge.mm in Sources */, + 46916E9B264CD4B0000C7B53 /* jsb_classtype.cpp in Sources */, + 46916E9C264CD4B0000C7B53 /* jsb_cocos_manual.cpp in Sources */, + 46916E9D264CD4B0000C7B53 /* jsb_conversions.cpp in Sources */, + 46916E9E264CD4B0000C7B53 /* jsb_dragonbones_manual.cpp in Sources */, + 46916E9F264CD4B0000C7B53 /* jsb_gfx_manual.cpp in Sources */, + 46916EA0264CD4B0000C7B53 /* jsb_global.cpp in Sources */, + 46916EA1264CD4B0000C7B53 /* jsb_global_init.cpp in Sources */, + 46916EA2264CD4B0000C7B53 /* jsb_helper.cpp in Sources */, + 46916EA3264CD4B0000C7B53 /* jsb_network_manual.cpp in Sources */, + 46916EA4264CD4B0000C7B53 /* jsb_pipeline_manual.cpp in Sources */, + 46916EA5264CD4B0000C7B53 /* jsb_platfrom_apple.mm in Sources */, + 46916EA6264CD4B0000C7B53 /* jsb_socketio.cpp in Sources */, + 46916EA7264CD4B0000C7B53 /* jsb_websocket.cpp in Sources */, + 46916EA8264CD4B0000C7B53 /* jsb_xmlhttprequest.cpp in Sources */, + 46916EA9264CD4B0000C7B53 /* IOBuffer.cpp in Sources */, + 46916EAA264CD4B0000C7B53 /* IOTypedArray.cpp in Sources */, + 46916EAB264CD4B0000C7B53 /* MeshBuffer.cpp in Sources */, + 46916EAC264CD4B0000C7B53 /* MiddlewareManager.cpp in Sources */, + 46916EAD264CD4B0000C7B53 /* SharedBufferManager.cpp in Sources */, + 46916EAE264CD4B0000C7B53 /* TypedArrayPool.cpp in Sources */, + 46916EAF264CD4B0000C7B53 /* ArmatureCache.cpp in Sources */, + 46916EB0264CD4B0000C7B53 /* ArmatureCacheMgr.cpp in Sources */, + 46916EB1264CD4B0000C7B53 /* CCArmatureCacheDisplay.cpp in Sources */, + 46916EB2264CD4B0000C7B53 /* CCArmatureDisplay.cpp in Sources */, + 46916EB3264CD4B0000C7B53 /* CCFactory.cpp in Sources */, + 46916EB4264CD4B0000C7B53 /* CCSlot.cpp in Sources */, + 46916EB5264CD4B0000C7B53 /* CCTextureAtlasData.cpp in Sources */, + 46916EB6264CD4B0000C7B53 /* Animation.cpp in Sources */, + 46916EB7264CD4B0000C7B53 /* AnimationState.cpp in Sources */, + 46916EB8264CD4B0000C7B53 /* BaseTimelineState.cpp in Sources */, + 46916EB9264CD4B0000C7B53 /* TimelineState.cpp in Sources */, + 46916EBA264CD4B0000C7B53 /* WorldClock.cpp in Sources */, + 46916EBB264CD4B0000C7B53 /* Armature.cpp in Sources */, + 46916EBC264CD4B0000C7B53 /* Bone.cpp in Sources */, + 46916EBD264CD4B0000C7B53 /* Constraint.cpp in Sources */, + 46916EBE264CD4B0000C7B53 /* DeformVertices.cpp in Sources */, + 46916EBF264CD4B0000C7B53 /* Slot.cpp in Sources */, + 46916EC0264CD4B0000C7B53 /* TransformObject.cpp in Sources */, + 46916EC1264CD4B0000C7B53 /* BaseObject.cpp in Sources */, + 46916EC2264CD4B0000C7B53 /* DragonBones.cpp in Sources */, + 46916EC3264CD4B0000C7B53 /* EventObject.cpp in Sources */, + 46916EC4264CD4B0000C7B53 /* BaseFactory.cpp in Sources */, + 46916EC5264CD4B0000C7B53 /* Point.cpp in Sources */, + 46916EC6264CD4B0000C7B53 /* Transform.cpp in Sources */, + 46916EC7264CD4B0000C7B53 /* AnimationConfig.cpp in Sources */, + 46916EC8264CD4B0000C7B53 /* AnimationData.cpp in Sources */, + 46916EC9264CD4B0000C7B53 /* ArmatureData.cpp in Sources */, + 46916ECA264CD4B0000C7B53 /* BoundingBoxData.cpp in Sources */, + 46916ECB264CD4B0000C7B53 /* CanvasData.cpp in Sources */, + 46916ECC264CD4B0000C7B53 /* ConstraintData.cpp in Sources */, + 46916ECD264CD4B0000C7B53 /* DisplayData.cpp in Sources */, + 46916ECE264CD4B0000C7B53 /* DragonBonesData.cpp in Sources */, + 46916ECF264CD4B0000C7B53 /* SkinData.cpp in Sources */, + 46916ED0264CD4B0000C7B53 /* TextureAtlasData.cpp in Sources */, + 46916ED1264CD4B0000C7B53 /* UserData.cpp in Sources */, + 46916ED2264CD4B0000C7B53 /* BinaryDataParser.cpp in Sources */, + 46916ED3264CD4B0000C7B53 /* DataParser.cpp in Sources */, + 46916ED4264CD4B0000C7B53 /* JSONDataParser.cpp in Sources */, + 46916ED5264CD4B0000C7B53 /* middleware-adapter.cpp in Sources */, + 46916ED6264CD4B0000C7B53 /* Geometry.cpp in Sources */, + 46916ED7264CD4B0000C7B53 /* Mat3.cpp in Sources */, + 46916ED8264CD4B0000C7B53 /* Mat4.cpp in Sources */, + 46916ED9264CD4B0000C7B53 /* Math.cpp in Sources */, + 46916EDA264CD4B0000C7B53 /* MathUtil.cpp in Sources */, + 46916EDB264CD4B0000C7B53 /* Quaternion.cpp in Sources */, + 46916EDC264CD4B0000C7B53 /* Vec2.cpp in Sources */, + 46916EDD264CD4B0000C7B53 /* Vec3.cpp in Sources */, + 46916EDE264CD4B0000C7B53 /* Vec4.cpp in Sources */, + 46916EDF264CD4B0000C7B53 /* Vertex.cpp in Sources */, + 46916EE0264CD4B0000C7B53 /* Downloader.cpp in Sources */, + 46916EE1264CD4B0000C7B53 /* DownloaderImpl-apple.mm in Sources */, + 46916EE2264CD4B0000C7B53 /* HttpAsynConnection-apple.m in Sources */, + 46916EE3264CD4B0000C7B53 /* HttpClient-apple.mm in Sources */, + 46916EE4264CD4B0000C7B53 /* HttpCookie.cpp in Sources */, + 46916EE5264CD4B0000C7B53 /* SocketIO.cpp in Sources */, + 46916EE6264CD4B0000C7B53 /* Uri.cpp in Sources */, + 46916EE7264CD4B0000C7B53 /* WebSocket-apple.mm in Sources */, + 46916EE8264CD4B0000C7B53 /* Application.cpp in Sources */, + 46916EE9264CD4B0000C7B53 /* FileUtils.cpp in Sources */, + 46916EEA264CD4B0000C7B53 /* Image.cpp in Sources */, + 46916EEB264CD4B0000C7B53 /* SAXParser.cpp in Sources */, + 46916EEC264CD4B0000C7B53 /* CanvasRenderingContext2D-apple.mm in Sources */, + 46916EED264CD4B0000C7B53 /* Device-apple.mm in Sources */, + 46916EEE264CD4B0000C7B53 /* FileUtils-apple.mm in Sources */, + 46916EEF264CD4B0000C7B53 /* Application-ios.mm in Sources */, + 46916EF0264CD4B0000C7B53 /* Device-ios.mm in Sources */, + 46916EF1264CD4B0000C7B53 /* Reachability.cpp in Sources */, + 46916EF2264CD4B0000C7B53 /* View.mm in Sources */, + 46916EF3264CD4B0000C7B53 /* DevicePass.cpp in Sources */, + 46916EF4264CD4B0000C7B53 /* DevicePassResourceTable.cpp in Sources */, + 46916EF5264CD4B0000C7B53 /* FrameGraph.cpp in Sources */, + 46916EF6264CD4B0000C7B53 /* PassInsertPointManager.cpp in Sources */, + 46916EF7264CD4B0000C7B53 /* PassNode.cpp in Sources */, + 46916EF8264CD4B0000C7B53 /* PassNodeBuilder.cpp in Sources */, + 46916EF9264CD4B0000C7B53 /* VirtualResource.cpp in Sources */, + 46916EFA264CD4B0000C7B53 /* BufferAgent.cpp in Sources */, + 46916EFB264CD4B0000C7B53 /* CommandBufferAgent.cpp in Sources */, + 46916EFC264CD4B0000C7B53 /* DescriptorSetAgent.cpp in Sources */, + 46916EFD264CD4B0000C7B53 /* DescriptorSetLayoutAgent.cpp in Sources */, + 46916EFE264CD4B0000C7B53 /* DeviceAgent.cpp in Sources */, + 46916EFF264CD4B0000C7B53 /* FramebufferAgent.cpp in Sources */, + 46916F00264CD4B0000C7B53 /* InputAssemblerAgent.cpp in Sources */, + 46916F01264CD4B0000C7B53 /* PipelineLayoutAgent.cpp in Sources */, + 46916F02264CD4B0000C7B53 /* PipelineStateAgent.cpp in Sources */, + 46916F03264CD4B0000C7B53 /* QueueAgent.cpp in Sources */, + 46916F04264CD4B0000C7B53 /* RenderPassAgent.cpp in Sources */, + 46916F05264CD4B0000C7B53 /* SamplerAgent.cpp in Sources */, + 46916F06264CD4B0000C7B53 /* ShaderAgent.cpp in Sources */, + 46916F07264CD4B0000C7B53 /* TextureAgent.cpp in Sources */, + 46916F08264CD4B0000C7B53 /* GFXBuffer.cpp in Sources */, + 46916F09264CD4B0000C7B53 /* GFXCommandBuffer.cpp in Sources */, + 46916F0A264CD4B0000C7B53 /* GFXContext.cpp in Sources */, + 46916F0B264CD4B0000C7B53 /* GFXDef.cpp in Sources */, + 46916F0C264CD4B0000C7B53 /* GFXDescriptorSet.cpp in Sources */, + 46916F0D264CD4B0000C7B53 /* GFXDescriptorSetLayout.cpp in Sources */, + 46916F0E264CD4B0000C7B53 /* GFXDevice.cpp in Sources */, + 46916F0F264CD4B0000C7B53 /* GFXFramebuffer.cpp in Sources */, + 46916F10264CD4B0000C7B53 /* GFXGlobalBarrier.cpp in Sources */, + 46916F11264CD4B0000C7B53 /* GFXInputAssembler.cpp in Sources */, + 46916F12264CD4B0000C7B53 /* GFXObject.cpp in Sources */, + 46916F13264CD4B0000C7B53 /* GFXPipelineLayout.cpp in Sources */, + 46916F14264CD4B0000C7B53 /* GFXPipelineState.cpp in Sources */, + 46916F15264CD4B0000C7B53 /* GFXQueue.cpp in Sources */, + 46916F16264CD4B0000C7B53 /* GFXRenderPass.cpp in Sources */, + 46916F17264CD4B0000C7B53 /* GFXSampler.cpp in Sources */, + 46916F18264CD4B0000C7B53 /* GFXShader.cpp in Sources */, + 46916F19264CD4B0000C7B53 /* GFXTexture.cpp in Sources */, + 46916F1A264CD4B0000C7B53 /* GFXTextureBarrier.cpp in Sources */, + 46916F1B264CD4B0000C7B53 /* EmptyBuffer.cpp in Sources */, + 46916F1C264CD4B0000C7B53 /* EmptyCommandBuffer.cpp in Sources */, + 46916F1D264CD4B0000C7B53 /* EmptyContext.cpp in Sources */, + 46916F1E264CD4B0000C7B53 /* EmptyDescriptorSet.cpp in Sources */, + 46916F1F264CD4B0000C7B53 /* EmptyDescriptorSetLayout.cpp in Sources */, + 46916F20264CD4B0000C7B53 /* EmptyDevice.cpp in Sources */, + 46916F21264CD4B0000C7B53 /* EmptyFramebuffer.cpp in Sources */, + 46916F22264CD4B0000C7B53 /* EmptyInputAssembler.cpp in Sources */, + 46916F23264CD4B0000C7B53 /* EmptyPipelineLayout.cpp in Sources */, + 46916F24264CD4B0000C7B53 /* EmptyPipelineState.cpp in Sources */, + 46916F25264CD4B0000C7B53 /* EmptyQueue.cpp in Sources */, + 46916F26264CD4B0000C7B53 /* EmptyRenderPass.cpp in Sources */, + 46916F27264CD4B0000C7B53 /* EmptySampler.cpp in Sources */, + 46916F28264CD4B0000C7B53 /* EmptyShader.cpp in Sources */, + 46916F29264CD4B0000C7B53 /* EmptyTexture.cpp in Sources */, + 46916F2A264CD4B0000C7B53 /* MTLBuffer.mm in Sources */, + 46916F2B264CD4B0000C7B53 /* MTLCommandBuffer.mm in Sources */, + 46916F2C264CD4B0000C7B53 /* MTLContext.mm in Sources */, + 46916F2D264CD4B0000C7B53 /* MTLDescriptorSet.mm in Sources */, + 46916F2E264CD4B0000C7B53 /* MTLDescriptorSetLayout.mm in Sources */, + 46916F2F264CD4B0000C7B53 /* MTLDevice.mm in Sources */, + 46916F30264CD4B0000C7B53 /* MTLFramebuffer.mm in Sources */, + 46916F31264CD4B0000C7B53 /* MTLInputAssembler.mm in Sources */, + 46916F32264CD4B0000C7B53 /* MTLPipelineLayout.mm in Sources */, + 46916F33264CD4B0000C7B53 /* MTLPipelineState.mm in Sources */, + 46916F34264CD4B0000C7B53 /* MTLQueue.mm in Sources */, + 46916F35264CD4B0000C7B53 /* MTLRenderPass.mm in Sources */, + 46916F36264CD4B0000C7B53 /* MTLSampler.mm in Sources */, + 46916F37264CD4B0000C7B53 /* MTLShader.mm in Sources */, + 46916F38264CD4B0000C7B53 /* MTLStd.cpp in Sources */, + 46916F39264CD4B0000C7B53 /* MTLTexture.mm in Sources */, + 46916F3A264CD4B0000C7B53 /* MTLUtils.mm in Sources */, + 46916F3B264CD4B0000C7B53 /* BufferValidator.cpp in Sources */, + 46916F3C264CD4B0000C7B53 /* CommandBufferValidator.cpp in Sources */, + 46916F3D264CD4B0000C7B53 /* DescriptorSetLayoutValidator.cpp in Sources */, + 46916F3E264CD4B0000C7B53 /* DescriptorSetValidator.cpp in Sources */, + 46916F3F264CD4B0000C7B53 /* DeviceValidator.cpp in Sources */, + 46916F40264CD4B0000C7B53 /* FramebufferValidator.cpp in Sources */, + 46916F41264CD4B0000C7B53 /* InputAssemblerValidator.cpp in Sources */, + 46916F42264CD4B0000C7B53 /* PipelineLayoutValidator.cpp in Sources */, + 46916F43264CD4B0000C7B53 /* PipelineStateValidator.cpp in Sources */, + 46916F44264CD4B0000C7B53 /* QueueValidator.cpp in Sources */, + 46916F45264CD4B0000C7B53 /* RenderPassValidator.cpp in Sources */, + 46916F46264CD4B0000C7B53 /* SamplerValidator.cpp in Sources */, + 46916F47264CD4B0000C7B53 /* ShaderValidator.cpp in Sources */, + 46916F48264CD4B0000C7B53 /* TextureValidator.cpp in Sources */, + 46916F49264CD4B0000C7B53 /* ValidationUtils.cpp in Sources */, + 46916F4A264CD4B0000C7B53 /* BatchedBuffer.cpp in Sources */, + 46916F4B264CD4B0000C7B53 /* Define.cpp in Sources */, + 46916F4C264CD4B0000C7B53 /* InstancedBuffer.cpp in Sources */, + 46916F4D264CD4B0000C7B53 /* PipelineSceneData.cpp in Sources */, + 46916F4E264CD4B0000C7B53 /* PipelineStateManager.cpp in Sources */, + 46916F4F264CD4B0000C7B53 /* PipelineUBO.cpp in Sources */, + 46916F50264CD4B0000C7B53 /* PlanarShadowQueue.cpp in Sources */, + 46916F51264CD4B0000C7B53 /* RenderAdditiveLightQueue.cpp in Sources */, + 46916F52264CD4B0000C7B53 /* RenderBatchedQueue.cpp in Sources */, + 46916F53264CD4B0000C7B53 /* RenderFlow.cpp in Sources */, + 46916F54264CD4B0000C7B53 /* RenderInstancedQueue.cpp in Sources */, + 46916F55264CD4B0000C7B53 /* RenderPipeline.cpp in Sources */, + 46916F56264CD4B0000C7B53 /* RenderQueue.cpp in Sources */, + 46916F57264CD4B0000C7B53 /* RenderStage.cpp in Sources */, + 46916F58264CD4B0000C7B53 /* SceneCulling.cpp in Sources */, + 46916F59264CD4B0000C7B53 /* ShadowMapBatchedQueue.cpp in Sources */, + 46916F5A264CD4B0000C7B53 /* DeferredPipeline.cpp in Sources */, + 46916F5B264CD4B0000C7B53 /* GbufferFlow.cpp in Sources */, + 46916F5C264CD4B0000C7B53 /* GbufferStage.cpp in Sources */, + 46916F5D264CD4B0000C7B53 /* LightingFlow.cpp in Sources */, + 46916F5E264CD4B0000C7B53 /* LightingStage.cpp in Sources */, + 46916F5F264CD4B0000C7B53 /* PostprocessStage.cpp in Sources */, + 46916F60264CD4B0000C7B53 /* ForwardFlow.cpp in Sources */, + 46916F61264CD4B0000C7B53 /* ForwardPipeline.cpp in Sources */, + 46916F62264CD4B0000C7B53 /* ForwardStage.cpp in Sources */, + 46916F63264CD4B0000C7B53 /* UIPhase.cpp in Sources */, + 46916F64264CD4B0000C7B53 /* DefineMap.cpp in Sources */, + 46916F65264CD4B0000C7B53 /* SharedMemory.cpp in Sources */, + 46916F66264CD4B0000C7B53 /* ShadowFlow.cpp in Sources */, + 46916F67264CD4B0000C7B53 /* ShadowStage.cpp in Sources */, + 46916F68264CD4B0000C7B53 /* LocalStorage.cpp in Sources */, + 46916F69264CD4B0000C7B53 /* EditBox-ios.mm in Sources */, + 46916F6A264CD4B0000C7B53 /* VideoPlayer-ios.mm in Sources */, + 46916F6B264CD4B0000C7B53 /* WebViewImpl-ios.mm in Sources */, + 46916F6C264CD4B0000C7B53 /* AssetsManagerEx.cpp in Sources */, + 46916F6D264CD4B0000C7B53 /* AsyncTaskPool.cpp in Sources */, + 46916F6E264CD4B0000C7B53 /* EventAssetsManagerEx.cpp in Sources */, + 46916F6F264CD4B0000C7B53 /* Manifest.cpp in Sources */, + 46916F70264CD4B0000C7B53 /* ConvertUTF.c in Sources */, + 46916F71264CD4B0000C7B53 /* ConvertUTFWrapper.cpp in Sources */, + 46916F72264CD4B0000C7B53 /* SRDelegateController.m in Sources */, + 46916F73264CD4B0000C7B53 /* SRIOConsumer.m in Sources */, + 46916F74264CD4B0000C7B53 /* SRIOConsumerPool.m in Sources */, + 46916F75264CD4B0000C7B53 /* SRProxyConnect.m in Sources */, + 46916F76264CD4B0000C7B53 /* SRRunLoopThread.m in Sources */, + 46916F77264CD4B0000C7B53 /* SRConstants.m in Sources */, + 46916F78264CD4B0000C7B53 /* SRPinningSecurityPolicy.m in Sources */, + 46916F79264CD4B0000C7B53 /* SRError.m in Sources */, + 46916F7A264CD4B0000C7B53 /* SRHTTPConnectMessage.m in Sources */, + 46916F7B264CD4B0000C7B53 /* SRHash.m in Sources */, + 46916F7C264CD4B0000C7B53 /* SRLog.m in Sources */, + 46916F7D264CD4B0000C7B53 /* SRMutex.m in Sources */, + 46916F7E264CD4B0000C7B53 /* SRRandom.m in Sources */, + 46916F7F264CD4B0000C7B53 /* SRSIMDHelpers.m in Sources */, + 46916F80264CD4B0000C7B53 /* SRURLUtilities.m in Sources */, + 46916F81264CD4B0000C7B53 /* NSRunLoop+SRWebSocket.m in Sources */, + 46916F82264CD4B0000C7B53 /* NSURLRequest+SRWebSocket.m in Sources */, + 46916F83264CD4B0000C7B53 /* SRSecurityPolicy.m in Sources */, + 46916F84264CD4B0000C7B53 /* SRWebSocket.m in Sources */, + 46916F85264CD4B0000C7B53 /* tinyxml2.cpp in Sources */, + 46916F86264CD4B0000C7B53 /* tommy.c in Sources */, + 46916F87264CD4B0000C7B53 /* ioapi.cpp in Sources */, + 46916F88264CD4B0000C7B53 /* ioapi_mem.cpp in Sources */, + 46916F89264CD4B0000C7B53 /* unzip.cpp in Sources */, + 46916F8A264CD4B0000C7B53 /* xxtea.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 4629FCAE20EA4F3582FA9209 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = Debug; + }; + 46916F8C264CD4B0000C7B53 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + "'CC_DEBUG=1'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Debug; + }; + 46916F8D264CD4B0000C7B53 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Release; + }; + 46916F8E264CD4B0000C7B53 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = MinSizeRel; + }; + 46916F8F264CD4B0000C7B53 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 2; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = RelWithDebInfo; + }; + 960B6A7D91BA4E6F8ECBE4E1 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = RelWithDebInfo; + }; + B29E0856AAAD4875AEA75655 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = Release; + }; + B2D65E896245460E9FE81178 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = MinSizeRel; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 238A46ADB53B427B940BCEB1 /* Build configuration list for PBXProject "cocos3-ios" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4629FCAE20EA4F3582FA9209 /* Debug */, + B29E0856AAAD4875AEA75655 /* Release */, + B2D65E896245460E9FE81178 /* MinSizeRel */, + 960B6A7D91BA4E6F8ECBE4E1 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + 46916F8B264CD4B0000C7B53 /* Build configuration list for PBXNativeTarget "cocos3 iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 46916F8C264CD4B0000C7B53 /* Debug */, + 46916F8D264CD4B0000C7B53 /* Release */, + 46916F8E264CD4B0000C7B53 /* MinSizeRel */, + 46916F8F264CD4B0000C7B53 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; +/* End XCConfigurationList section */ + }; + rootObject = 8A32DCFBF82A404E8DD5982A /* Project object */; +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..a71645e --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..307a9da --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,12 @@ + + + + + BuildSystemType + Latest + DisableBuildSystemDeprecationWarning + + PreviewsEnabled + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..7294bc0 Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..cc7f183 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,22 @@ + + + + + BuildLocationStyle + UseAppPreferences + CustomBuildIntermediatesPath + cocos3.1-libs/Intermediates.noindex + CustomBuildLocationType + RelativeToDerivedData + CustomBuildProductsPath + cocos3.1-libs/Products + DerivedDataLocationStyle + Default + IssueFilterStyle + ShowActiveSchemeOnly + LiveSourceIssuesEnabled + + ShowSharedSchemesAutomaticallyEnabled + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcshareddata/xcschemes/cocos3 iOS.xcscheme b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcshareddata/xcschemes/cocos3 iOS.xcscheme new file mode 100644 index 0000000..73b75b2 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcshareddata/xcschemes/cocos3 iOS.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..0a74b5c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-ios.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,37 @@ + + + + + SchemeUserState + + cocos3 iOS.xcscheme_^#shared#^_ + + orderHint + 1 + + + SuppressBuildableAutocreation + + 46916BBC264CCEF4000C7B53 + + primary + + + 46916D11264CD362000C7B53 + + primary + + + 46916E52264CD4B0000C7B53 + + primary + + + C0436D9181584B92A7E37006 + + primary + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/AndroidManifest.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/AndroidManifest.xml new file mode 100644 index 0000000..f447f67 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/AndroidManifest.xml @@ -0,0 +1,4 @@ + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/build.gradle b/cx-framework3.1/cocos3-libs/cocos3-libcc/build.gradle new file mode 100644 index 0000000..d2cde21 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/build.gradle @@ -0,0 +1,33 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger() + + defaultConfig { + minSdkVersion PROP_MIN_SDK_VERSION + targetSdkVersion PROP_TARGET_SDK_VERSION + versionCode 1 + versionName "1.0" + } + + sourceSets.main { + aidl.srcDir "../java/src" + java.srcDir "../java/src" + manifest.srcFile "AndroidManifest.xml" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation fileTree(include: ['*.jar'], dir: '../java/libs') +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/com.android.vending.expansion.zipfile.jar b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/com.android.vending.expansion.zipfile.jar new file mode 100644 index 0000000..bbdeb8a Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/com.android.vending.expansion.zipfile.jar differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okhttp-3.12.7.jar b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okhttp-3.12.7.jar new file mode 100644 index 0000000..0eb8266 Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okhttp-3.12.7.jar differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okio-1.15.0.jar b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okio-1.15.0.jar new file mode 100644 index 0000000..4e0e47a Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-libcc/libs/okio-1.15.0.jar differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/proguard-rules.pro b/cx-framework3.1/cocos3-libs/cocos3-libcc/proguard-rules.pro new file mode 100644 index 0000000..6618e28 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/proguard-rules.pro @@ -0,0 +1,17 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in E:\developSoftware\Android\SDK/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_normal.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_normal.xml new file mode 100644 index 0000000..9baae3c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_normal.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_outline.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_outline.xml new file mode 100644 index 0000000..e8cc18c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/btn_outline.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/divider.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/divider.xml new file mode 100644 index 0000000..94530f8 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/divider.xml @@ -0,0 +1,9 @@ + + + + + + + \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_focus.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_focus.xml new file mode 100644 index 0000000..f2bbb96 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_focus.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_gray.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_gray.xml new file mode 100644 index 0000000..8cc2e2e --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_gray.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_normal.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_normal.xml new file mode 100644 index 0000000..ef54523 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_normal.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_selector.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_selector.xml new file mode 100644 index 0000000..5a64291 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/edit_selector.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/launch_image.png b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/launch_image.png new file mode 100644 index 0000000..f5b8bff Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/drawable/launch_image.png differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values-zh-rCN/strings.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values-zh-rCN/strings.xml new file mode 100644 index 0000000..200317c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values-zh-rCN/strings.xml @@ -0,0 +1,9 @@ + + + + 完成 + 下一个 + 搜索 + 前往 + 发送 + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/colors.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/colors.xml new file mode 100644 index 0000000..8130a91 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/colors.xml @@ -0,0 +1,27 @@ + + + + #00000000 + #ffffff + #f7f7f7 + #f0f0f0 + #d0d0d0 + #e0e0e0 + #000000 + #333333 + #444444 + #777777 + #999999 + #ff0000 + #e51300 + #ff6900 + #0000ff + #009ecf + #41a9b6 + #333b73 + #1d2241 + #00ff00 + #ffff00 + #fff000 + + \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/dimens.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/dimens.xml new file mode 100644 index 0000000..51938ca --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/dimens.xml @@ -0,0 +1,6 @@ + + + + 16sp + + \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/strings.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/strings.xml new file mode 100644 index 0000000..d2a347b --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/strings.xml @@ -0,0 +1,9 @@ + + + + Done + Next + Search + Go + Send + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/styles.xml b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/styles.xml new file mode 100644 index 0000000..14f556e --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CanvasRenderingContext2DImpl.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CanvasRenderingContext2DImpl.java new file mode 100644 index 0000000..ebf5780 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CanvasRenderingContext2DImpl.java @@ -0,0 +1,509 @@ +/**************************************************************************** + * Copyright (c) 2018 Xiamen Yaji Software Co., Ltd. + * + * http://www.cocos.com + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.Path; +import android.graphics.Typeface; +import android.os.Build; +import android.text.TextPaint; +import android.util.Log; + +import java.lang.ref.WeakReference; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.util.HashMap; + +public class CanvasRenderingContext2DImpl { + + private static final String TAG = "CanvasContext2D"; + + private static final int TEXT_ALIGN_LEFT = 0; + private static final int TEXT_ALIGN_CENTER = 1; + private static final int TEXT_ALIGN_RIGHT = 2; + + private static final int TEXT_BASELINE_TOP = 0; + private static final int TEXT_BASELINE_MIDDLE = 1; + private static final int TEXT_BASELINE_BOTTOM = 2; + private static final int TEXT_BASELINE_ALPHABETIC = 3; + + private static WeakReference sContext; + private TextPaint mTextPaint; + private Paint mLinePaint; + private Path mLinePath; + private Canvas mCanvas = new Canvas(); + private Bitmap mBitmap; + private int mTextAlign = TEXT_ALIGN_LEFT; + private int mTextBaseline = TEXT_BASELINE_BOTTOM; + private int mFillStyleR = 0; + private int mFillStyleG = 0; + private int mFillStyleB = 0; + private int mFillStyleA = 255; + + private int mStrokeStyleR = 0; + private int mStrokeStyleG = 0; + private int mStrokeStyleB = 0; + private int mStrokeStyleA = 255; + + private String mFontName = "Arial"; + private float mFontSize = 40.0f; + private float mLineWidth = 0.0f; + private static float _sApproximatingOblique = -0.25f;//please check paint api documentation + private boolean mIsBoldFont = false; + private boolean mIsItalicFont = false; + private boolean mIsObliqueFont = false; + private boolean mIsSmallCapsFontVariant = false; + private String mLineCap = "butt"; + private String mLineJoin = "miter"; + + private class Size { + Size(float w, float h) { + this.width = w; + this.height = h; + } + + Size() { + this.width = 0; + this.height = 0; + } + public float width; + public float height; + } + + private class Point { + Point(float x, float y) { + this.x = x; + this.y = y; + } + + Point() { + this.x = this.y = 0.0f; + } + + Point(Point pt) { + this.x = pt.x; + this.y = pt.y; + } + + void set(float x, float y) { + this.x = x; + this.y = y; + } + + public float x; + public float y; + } + + static void init(Context context) { + sContext = new WeakReference<>(context); + } + + static void destroy() { + sContext = null; + } + + private static HashMap sTypefaceCache = new HashMap<>(); + + // url is a full path started with '@assets/' + private static void loadTypeface(String familyName, String url) { + if (!sTypefaceCache.containsKey(familyName)) { + try { + Typeface typeface = null; + if (url.startsWith("/")) { + typeface = Typeface.createFromFile(url); + } else if (sContext.get() != null) { + final String prefix = "@assets/"; + if (url.startsWith(prefix)) { + url = url.substring(prefix.length()); + } + typeface = Typeface.createFromAsset(sContext.get().getAssets(), url); + } + + if (typeface != null) { + sTypefaceCache.put(familyName, typeface); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + // REFINE:: native should clear font cache before exiting game. + private static void clearTypefaceCache() { + sTypefaceCache.clear(); + } + + private static TextPaint newPaint(String fontName, int fontSize, boolean enableBold, boolean enableItalic, boolean obliqueFont, boolean smallCapsFontVariant) { + TextPaint paint = new TextPaint(); + paint.setTextSize(fontSize); + paint.setAntiAlias(true); + paint.setSubpixelText(true); + + String key = fontName; + if (enableBold) { + key += "-Bold"; + paint.setFakeBoldText(true); + } + if (enableItalic) { + key += "-Italic"; + } + + Typeface typeFace; + if (sTypefaceCache.containsKey(key)) { + typeFace = sTypefaceCache.get(key); + } else { + int style = Typeface.NORMAL; + if (enableBold && enableItalic) { + style = Typeface.BOLD_ITALIC; + } else if (enableBold) { + style = Typeface.BOLD; + } else if (enableItalic) { + style = Typeface.ITALIC; + } + typeFace = Typeface.create(fontName, style); + } + paint.setTypeface(typeFace); + if(obliqueFont) { + paint.setTextSkewX(_sApproximatingOblique); + } + if(smallCapsFontVariant && Build.VERSION.SDK_INT >= 21) { + CocosReflectionHelper.invokeInstanceMethod(paint, + "setFontFeatureSettings", + new Class[]{String.class}, + new Object[]{"smcp"}); + } + return paint; + } + + private CanvasRenderingContext2DImpl() { + // Log.d(TAG, "constructor"); + } + + private void recreateBuffer(float w, float h) { + // Log.d(TAG, "recreateBuffer:" + w + ", " + h); + if (mBitmap != null) { + mBitmap.recycle(); + } + mBitmap = Bitmap.createBitmap((int)Math.ceil(w), (int)Math.ceil(h), Bitmap.Config.ARGB_8888); + // FIXME: in MIX 2S, its API level is 28, but can not find invokeInstanceMethod. It seems + // devices may not obey the specification, so comment the codes. +// if (Build.VERSION.SDK_INT >= 19) { +// CocosReflectionHelper.invokeInstanceMethod(mBitmap, +// "setPremultiplied", +// new Class[]{Boolean.class}, +// new Object[]{Boolean.FALSE}); +// } + mCanvas.setBitmap(mBitmap); + } + + private void beginPath() { + if (mLinePath == null) { + mLinePath = new Path(); + } + mLinePath.reset(); + } + + private void closePath() { + mLinePath.close(); + } + + private void moveTo(float x, float y) { + mLinePath.moveTo(x, y); + } + + private void lineTo(float x, float y) { + mLinePath.lineTo(x, y); + } + + private void stroke() { + if (mLinePaint == null) { + mLinePaint = new Paint(); + mLinePaint.setAntiAlias(true); + } + + if(mLinePath == null) { + mLinePath = new Path(); + } + + mLinePaint.setARGB(mStrokeStyleA, mStrokeStyleR, mStrokeStyleG, mStrokeStyleB); + mLinePaint.setStyle(Paint.Style.STROKE); + mLinePaint.setStrokeWidth(mLineWidth); + this.setStrokeCap(mLinePaint); + this.setStrokeJoin(mLinePaint); + mCanvas.drawPath(mLinePath, mLinePaint); + } + + private void setStrokeCap(Paint paint) { + switch (mLineCap) { + case "butt": + paint.setStrokeCap(Paint.Cap.BUTT); + break; + case "round": + paint.setStrokeCap(Paint.Cap.ROUND); + break; + case "square": + paint.setStrokeCap(Paint.Cap.SQUARE); + break; + } + } + + private void setStrokeJoin(Paint paint) { + switch (mLineJoin) { + case "bevel": + paint.setStrokeJoin(Paint.Join.BEVEL); + break; + case "round": + paint.setStrokeJoin(Paint.Join.ROUND); + break; + case "miter": + paint.setStrokeJoin(Paint.Join.MITER); + break; + } + } + + private void fill() { + if (mLinePaint == null) { + mLinePaint = new Paint(); + } + + if(mLinePath == null) { + mLinePath = new Path(); + } + + mLinePaint.setARGB(mFillStyleA, mFillStyleR, mFillStyleG, mFillStyleB); + mLinePaint.setStyle(Paint.Style.FILL); + mCanvas.drawPath(mLinePath, mLinePaint); + // workaround: draw a hairline to cover the border + mLinePaint.setStrokeWidth(0); + this.setStrokeCap(mLinePaint); + this.setStrokeJoin(mLinePaint); + mLinePaint.setStyle(Paint.Style.STROKE); + mCanvas.drawPath(mLinePath, mLinePaint); + mLinePaint.setStrokeWidth(mLineWidth); + } + + private void setLineCap(String lineCap) { + mLineCap = lineCap; + } + + private void setLineJoin(String lineJoin) { + mLineJoin = lineJoin; + } + + private void saveContext() { + mCanvas.save(); + } + + private void restoreContext() { + // If there is no saved state, this method should do nothing. + if (mCanvas.getSaveCount() > 1){ + mCanvas.restore(); + } + } + + private void rect(float x, float y, float w, float h) { + // Log.d(TAG, "this: " + this + ", rect: " + x + ", " + y + ", " + w + ", " + h); + beginPath(); + moveTo(x, y); + lineTo(x, y + h); + lineTo(x + w, y + h); + lineTo(x + w, y); + closePath(); + } + + private void clearRect(float x, float y, float w, float h) { + // Log.d(TAG, "this: " + this + ", clearRect: " + x + ", " + y + ", " + w + ", " + h); + int clearSize = (int)(w * h); + int[] clearColor = new int[clearSize]; + for (int i = 0; i < clearSize; ++i) { + clearColor[i] = Color.TRANSPARENT; + } + mBitmap.setPixels(clearColor, 0, (int) w, (int) x, (int) y, (int) w, (int) h); + } + + private void createTextPaintIfNeeded() { + if (mTextPaint == null) { + mTextPaint = newPaint(mFontName, (int) mFontSize, mIsBoldFont, mIsItalicFont, mIsObliqueFont, mIsSmallCapsFontVariant); + } + } + + private void fillRect(float x, float y, float w, float h) { + // Log.d(TAG, "fillRect: " + x + ", " + y + ", " + ", " + w + ", " + h); + int pixelValue = (mFillStyleA & 0xff) << 24 | (mFillStyleR & 0xff) << 16 | (mFillStyleG & 0xff) << 8 | (mFillStyleB & 0xff); + int fillSize = (int)(w * h); + int[] fillColors = new int[fillSize]; + for (int i = 0; i < fillSize; ++i) { + fillColors[i] = pixelValue; + } + mBitmap.setPixels(fillColors, 0, (int) w, (int)x, (int)y, (int)w, (int)h); + } + + private void scaleX(TextPaint textPaint, String text, float maxWidth) { + if(maxWidth < Float.MIN_VALUE) return; + float measureWidth = this.measureText(text); + if((measureWidth - maxWidth) < Float.MIN_VALUE) return; + float scaleX = maxWidth/measureWidth; + textPaint.setTextScaleX(scaleX); + } + + private void fillText(String text, float x, float y, float maxWidth) { +// Log.d(TAG, "this: " + this + ", fillText: " + text + ", " + x + ", " + y + ", " + ", " + maxWidth); + createTextPaintIfNeeded(); + mTextPaint.setARGB(mFillStyleA, mFillStyleR, mFillStyleG, mFillStyleB); + mTextPaint.setStyle(Paint.Style.FILL); + scaleX(mTextPaint, text, maxWidth); + Point pt = convertDrawPoint(new Point(x, y), text); + mCanvas.drawText(text, pt.x, pt.y, mTextPaint); + } + + private void strokeText(String text, float x, float y, float maxWidth) { + // Log.d(TAG, "strokeText: " + text + ", " + x + ", " + y + ", " + ", " + maxWidth); + createTextPaintIfNeeded(); + mTextPaint.setARGB(mStrokeStyleA, mStrokeStyleR, mStrokeStyleG, mStrokeStyleB); + mTextPaint.setStyle(Paint.Style.STROKE); + mTextPaint.setStrokeWidth(mLineWidth); + scaleX(mTextPaint, text, maxWidth); + Point pt = convertDrawPoint(new Point(x, y), text); + mCanvas.drawText(text, pt.x, pt.y, mTextPaint); + } + + private float measureText(String text) { + createTextPaintIfNeeded(); + float ret = mTextPaint.measureText(text); + // Log.d(TAG, "measureText: " + text + ", return: " + ret); + return ret; + } + + private void updateFont(String fontName, float fontSize, boolean bold, boolean italic, boolean oblique, boolean smallCaps) { + // Log.d(TAG, "updateFont: " + fontName + ", " + fontSize); + mFontName = fontName; + mFontSize = fontSize; + mIsBoldFont = bold; + mIsItalicFont = italic; + mIsObliqueFont = oblique; + mIsSmallCapsFontVariant = smallCaps; + mTextPaint = null; // Reset paint to re-create paint object in createTextPaintIfNeeded + } + + private void setTextAlign(int align) { + // Log.d(TAG, "setTextAlign: " + align); + mTextAlign = align; + } + + private void setTextBaseline(int baseline) { + // Log.d(TAG, "setTextBaseline: " + baseline); + mTextBaseline = baseline; + } + + private void setFillStyle(float r, float g, float b, float a) { + // Log.d(TAG, "setFillStyle: " + r + ", " + g + ", " + b + ", " + a); + mFillStyleR = (int)(r * 255.0f); + mFillStyleG = (int)(g * 255.0f); + mFillStyleB = (int)(b * 255.0f); + mFillStyleA = (int)(a * 255.0f); + } + + private void setStrokeStyle(float r, float g, float b, float a) { + // Log.d(TAG, "setStrokeStyle: " + r + ", " + g + ", " + b + ", " + a); + mStrokeStyleR = (int)(r * 255.0f); + mStrokeStyleG = (int)(g * 255.0f); + mStrokeStyleB = (int)(b * 255.0f); + mStrokeStyleA = (int)(a * 255.0f); + } + + private void setLineWidth(float lineWidth) { + mLineWidth = lineWidth; + } + + private void _fillImageData(byte[] imageData, float imageWidth, float imageHeight, float offsetX, float offsetY) { + Log.d(TAG, "_fillImageData: "); + int fillSize = (int) (imageWidth * imageHeight); + int[] fillColors = new int[fillSize]; + int r, g, b, a; + for (int i = 0; i < fillSize; ++i) { + // imageData Pixel (RGBA) -> fillColors int (ARGB) + r = ((int)imageData[4 * i + 0]) & 0xff; + g = ((int)imageData[4 * i + 1]) & 0xff; + b = ((int)imageData[4 * i + 2]) & 0xff; + a = ((int)imageData[4 * i + 3]) & 0xff; + fillColors[i] = (a & 0xff) << 24 | (r & 0xff) << 16 | (g & 0xff) << 8 | (b & 0xff); + } + mBitmap.setPixels(fillColors, 0, (int) imageWidth, (int) offsetX, (int) offsetY, (int) imageWidth, (int) imageHeight); + } + + private Point convertDrawPoint(final Point point, String text) { + // The parameter 'point' is located at left-bottom position. + // Need to adjust 'point' according 'text align' & 'text base line'. + Point ret = new Point(point); + createTextPaintIfNeeded(); + Paint.FontMetrics fm = mTextPaint.getFontMetrics(); + float width = measureText(text); + + if (mTextAlign == TEXT_ALIGN_CENTER) + { + ret.x -= width / 2; + } + else if (mTextAlign == TEXT_ALIGN_RIGHT) + { + ret.x -= width; + } + + // Canvas.drawText accepts the y parameter as the baseline position, not the most bottom + if (mTextBaseline == TEXT_BASELINE_TOP) + { + ret.y += -fm.ascent; + } + else if (mTextBaseline == TEXT_BASELINE_MIDDLE) + { + ret.y += (fm.descent - fm.ascent) / 2 - fm.descent; + } + else if (mTextBaseline == TEXT_BASELINE_BOTTOM) + { + ret.y += -fm.descent; + } + + return ret; + } + + private byte[] getDataRef() { + // Log.d(TAG, "this: " + this + ", getDataRef ..."); + if (mBitmap != null) { + final int len = mBitmap.getWidth() * mBitmap.getHeight() * 4; + final byte[] pixels = new byte[len]; + final ByteBuffer buf = ByteBuffer.wrap(pixels); + buf.order(ByteOrder.nativeOrder()); + mBitmap.copyPixelsToBuffer(buf); + + return pixels; + } + + Log.e(TAG, "getDataRef return null"); + return null; + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosActivity.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosActivity.java new file mode 100644 index 0000000..6b56fda --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosActivity.java @@ -0,0 +1,331 @@ +/**************************************************************************** + * Copyright (c) 2020 Xiamen Yaji Software Co., Ltd. + * + * http://www.cocos.com + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.app.Activity; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.content.res.AssetManager; +import android.graphics.Color; +import android.media.AudioManager; +import android.os.Build; +import android.os.Bundle; +import android.view.KeyEvent; +import android.view.Surface; +import android.view.SurfaceHolder; +import android.view.View; +import android.view.ViewGroup; +import android.view.WindowManager; +import android.widget.FrameLayout; +import android.widget.ImageView; + +import java.io.File; +import java.lang.reflect.Field; + +public class CocosActivity extends Activity implements SurfaceHolder.Callback +{ + private boolean mDestroyed; + private SurfaceHolder mSurfaceHolder; + protected FrameLayout mFrameLayout; + private CocosSurfaceView mSurfaceView; + private CocosWebViewHelper mWebViewHelper = null; + private CocosVideoHelper mVideoHelper = null; + private CocosOrientationHelper mOrientationHelper = null; + + private boolean engineInit = false; + + private CocosKeyCodeHandler mKeyCodeHandler; + private CocosSensorHandler mSensorHandler; + + + private native void onCreateNative(Activity activity, AssetManager assetManager, String obbPath, int sdkVersion); + + private native void onSurfaceCreatedNative(Surface surface); + + private native void onSurfaceChangedNative(int width, int height); + + private native void onSurfaceDestroyNative(); + + private native void onPauseNative(); + + private native void onResumeNative(); + + private native void onStopNative(); + + private native void onStartNative(); + + private native void onLowMemoryNative(); + + private native void onWindowFocusChangedNative(boolean hasFocus); + + ////blank + public static CocosActivity app; + + public FrameLayout getFrameLayout() + { + return mFrameLayout; + } + + @Override + protected void onCreate(Bundle savedInstanceState) + { + super.onCreate(savedInstanceState); + + ////blank 显示启动图 + app = this; + ViewGroup.LayoutParams frameLayoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); + mFrameLayout = new FrameLayout(this); + mFrameLayout.setLayoutParams(frameLayoutParams); + setContentView(mFrameLayout); + ImageView imageView = new ImageView(this); + imageView.setBackgroundColor(Color.WHITE); + imageView.setTag("launchImage"); + mFrameLayout.addView(imageView, frameLayoutParams); + imageView.setImageResource(R.drawable.launch_image); + imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); + + GlobalObject.setActivity(this); + CocosHelper.registerBatteryLevelReceiver(this); + CocosHelper.init(this); + CanvasRenderingContext2DImpl.init(this); + onLoadNativeLibraries(); + this.setVolumeControlStream(AudioManager.STREAM_MUSIC); + getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING); + initView(); + onCreateNative(this, getAssets(), getAbsolutePath(getObbDir()), Build.VERSION.SDK_INT); + + mKeyCodeHandler = new CocosKeyCodeHandler(this); + mSensorHandler = new CocosSensorHandler(this); + + setImmersiveMode(); + + Utils.hideVirtualButton(); + + mOrientationHelper = new CocosOrientationHelper(this); + } + + private void setImmersiveMode() + { + WindowManager.LayoutParams lp = getWindow().getAttributes(); + try + { + Field field = lp.getClass().getField("layoutInDisplayCutoutMode"); + //Field constValue = lp.getClass().getDeclaredField("LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER"); + Field constValue = lp.getClass().getDeclaredField("LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES"); + field.setInt(lp, constValue.getInt(null)); + + // https://developer.android.com/training/system-ui/immersive + int flag = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE; + + flag |= View.class.getDeclaredField("SYSTEM_UI_FLAG_IMMERSIVE_STICKY").getInt(null); + View view = getWindow().getDecorView(); + view.setSystemUiVisibility(flag); + + } catch (NoSuchFieldException e) + { + e.printStackTrace(); + } catch (IllegalAccessException e) + { + e.printStackTrace(); + } + } + + private static String getAbsolutePath(File file) + { + return (file != null) ? file.getAbsolutePath() : null; + } + + protected void initView() + { + ////blank 改在create中初始化,以显示splash启动图 + /* + ViewGroup.LayoutParams frameLayoutParams = new ViewGroup.LayoutParams( + ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT); + mFrameLayout = new FrameLayout(this); + mFrameLayout.setLayoutParams(frameLayoutParams); + setContentView(mFrameLayout); + */ + + mSurfaceView = new CocosSurfaceView(this); + mSurfaceView.getHolder().addCallback(this); + + ////blank 加到最底层去,这样才能显示启动屏 + // mFrameLayout.addView(mSurfaceView); + mFrameLayout.addView(mSurfaceView, 0); + + if (mWebViewHelper == null) + { + mWebViewHelper = new CocosWebViewHelper(mFrameLayout); + } + + if (mVideoHelper == null) + { + mVideoHelper = new CocosVideoHelper(this, mFrameLayout); + } + } + + public CocosSurfaceView getSurfaceView() + { + return this.mSurfaceView; + } + + @Override + protected void onDestroy() + { + mDestroyed = true; + if (mSurfaceHolder != null) + { + onSurfaceDestroyNative(); + mSurfaceHolder = null; + } + super.onDestroy(); + } + + @Override + protected void onPause() + { + super.onPause(); + mSensorHandler.onPause(); + mOrientationHelper.onPause(); + onPauseNative(); + } + + @Override + protected void onResume() + { + super.onResume(); + mSensorHandler.onResume(); + mOrientationHelper.onResume(); + onResumeNative(); + } + + @Override + protected void onStop() + { + super.onStop(); + onStopNative(); + } + + @Override + protected void onStart() + { + super.onStart(); + onStartNative(); + } + + @Override + public void onLowMemory() + { + super.onLowMemory(); + if (!mDestroyed) + { + onLowMemoryNative(); + } + } + + @Override + public void onWindowFocusChanged(boolean hasFocus) + { + super.onWindowFocusChanged(hasFocus); + if (!mDestroyed) + { + onWindowFocusChangedNative(hasFocus); + } + } + + @Override + public void surfaceCreated(SurfaceHolder holder) + { + if (!mDestroyed) + { + mSurfaceHolder = holder; + onSurfaceCreatedNative(holder.getSurface()); + + engineInit = true; + } + } + + @Override + public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) + { + if (!mDestroyed) + { + mSurfaceHolder = holder; + onSurfaceChangedNative(width, height); + } + } + + @Override + public void surfaceDestroyed(SurfaceHolder holder) + { + mSurfaceHolder = null; + if (!mDestroyed) + { + onSurfaceDestroyNative(); + engineInit = false; + } + } + + private void onLoadNativeLibraries() + { + try + { + ApplicationInfo ai = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA); + Bundle bundle = ai.metaData; + String libName = bundle.getString("android.app.lib_name"); + System.loadLibrary(libName); + } catch (Exception e) + { + e.printStackTrace(); + } + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) + { + return mKeyCodeHandler.onKeyDown(keyCode, event) || super.onKeyDown(keyCode, event); + } + + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) + { + return mKeyCodeHandler.onKeyUp(keyCode, event) || super.onKeyUp(keyCode, event); + } + + ////blank + @Override + public void onBackPressed() + { + CocosHelper.runOnGameThread(new Runnable() + { + @Override + public void run() + { + CocosJavascriptJavaBridge.evalString("cx.rootNode.onBackPressed()"); + } + }); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosDownloader.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosDownloader.java new file mode 100644 index 0000000..575a80a --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosDownloader.java @@ -0,0 +1,370 @@ +/**************************************************************************** + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.util.Log; + +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; +import java.net.URI; +import java.net.URISyntaxException; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.Map; +import java.util.Queue; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.TimeUnit; + +// Rename package okhttp3 to org.cocos2dx.okhttp3 +// Github repo: https://github.com/PatriceJiang/okhttp/tree/cocos2dx-rename-3.12.x +// and https://github.com/PatriceJiang/okio/tree/cocos2dx-rename-1.15.0 +import org.cocos2dx.okhttp3.Call; +import org.cocos2dx.okhttp3.Callback; +import org.cocos2dx.okhttp3.OkHttpClient; +import org.cocos2dx.okhttp3.Request; +import org.cocos2dx.okhttp3.Response; + +public class CocosDownloader { + + private int _id; + private OkHttpClient _httpClient = null; + + private String _tempFileNameSuffix; + private int _countOfMaxProcessingTasks; + private ConcurrentHashMap _taskMap = new ConcurrentHashMap<>(); + private Queue _taskQueue = new LinkedList<>(); + private int _runningTaskCount = 0; + private static ConcurrentHashMap _resumingSupport = new ConcurrentHashMap<>(); + + private void onProgress(final int id, final long downloadBytes, final long downloadNow, final long downloadTotal) { + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeOnProgress(_id, id, downloadBytes, downloadNow, downloadTotal); + } + }); + } + + private void onFinish(final int id, final int errCode, final String errStr, final byte[] data) { + Call task =_taskMap.get(id); + if (null == task) return; + _taskMap.remove(id); + _runningTaskCount -= 1; + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeOnFinish(_id, id, errCode, errStr, data); + } + }); + runNextTaskIfExists(); + } + + public static CocosDownloader createDownloader(int id, int timeoutInSeconds, String tempFileSuffix, int maxProcessingTasks) { + CocosDownloader downloader = new CocosDownloader(); + downloader._id = id; + + if (timeoutInSeconds > 0) { + downloader._httpClient = new OkHttpClient().newBuilder() + .followRedirects(true) + .followSslRedirects(true) + .callTimeout(timeoutInSeconds, TimeUnit.SECONDS) + .build(); + } else { + downloader._httpClient = new OkHttpClient().newBuilder() + .followRedirects(true) + .followSslRedirects(true) + .build(); + } + + + downloader._tempFileNameSuffix = tempFileSuffix; + downloader._countOfMaxProcessingTasks = maxProcessingTasks; + return downloader; + } + + public static void createTask(final CocosDownloader downloader, int id_, String url_, String path_, String []header_) { + final int id = id_; + final String url = url_; + final String path = path_; + final String[] header = header_; + + Runnable taskRunnable = new Runnable() { + String domain = null; + String host = null; + File tempFile = null; + File finalFile = null; + long downloadStart = 0; + + @Override + public void run() { + Call task = null; + + do { + if (path.length() > 0) { + try { + URI uri = new URI(url); + domain = uri.getHost(); + } catch (URISyntaxException e) { + e.printStackTrace(); + break; + } catch (NullPointerException e) { + e.printStackTrace(); + break; + } + + // file task + tempFile = new File(path + downloader._tempFileNameSuffix); + if (tempFile.isDirectory()) break; + + File parent = tempFile.getParentFile(); + if (!parent.isDirectory() && !parent.mkdirs()) break; + + finalFile = new File(path); + if (finalFile.isDirectory()) break; + long fileLen = tempFile.length(); + + host = domain.startsWith("www.") ? domain.substring(4) : domain; + if (fileLen > 0) { + if (_resumingSupport.containsKey(host) && _resumingSupport.get(host)) { + downloadStart = fileLen; + } else { + // Remove previous downloaded context + try { + PrintWriter writer = new PrintWriter(tempFile); + writer.print(""); + writer.close(); + } + // Not found then nothing to do + catch (FileNotFoundException e) { + } + } + } + } + + final Request.Builder builder = new Request.Builder().url(url); + for (int i = 0; i < header.length / 2; i++) { + builder.addHeader(header[i * 2], header[(i * 2) + 1]); + } + if (downloadStart > 0) { + builder.addHeader("RANGE", "bytes=" + downloadStart + "-"); + } + + final Request request = builder.build(); + task = downloader._httpClient.newCall(request); + task.enqueue(new Callback() { + @Override + public void onFailure(Call call, IOException e) { + downloader.onFinish(id, 0, e.toString(), null); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + InputStream is = null; + byte[] buf = new byte[4096]; + FileOutputStream fos = null; + + try { + + if(!(response.code() >= 200 && response.code() <= 206)) { + // it is encourage to delete the tmp file when requested range not satisfiable. + if (response.code() == 416) { + File file = new File(path + downloader._tempFileNameSuffix); + if (file.exists() && file.isFile()) { + file.delete(); + } + } + downloader.onFinish(id, -2, response.message(), null); + return; + } + + long total = response.body().contentLength(); + if (path.length() > 0 && !_resumingSupport.containsKey(host)) { + if (total > 0) { + _resumingSupport.put(host, true); + } else { + _resumingSupport.put(host, false); + } + } + + long current = downloadStart; + is = response.body().byteStream(); + + if (path.length() > 0) { + if (downloadStart > 0) { + fos = new FileOutputStream(tempFile, true); + } else { + fos = new FileOutputStream(tempFile, false); + } + + int len; + while ((len = is.read(buf)) != -1) { + current += len; + fos.write(buf, 0, len); + downloader.onProgress(id, len, current, total); + } + fos.flush(); + + String errStr = null; + do { + // rename temp file to final file, if final file exist, remove it + if (finalFile.exists()) { + if (finalFile.isDirectory()) { + break; + } + if (!finalFile.delete()) { + errStr = "Can't remove old file:" + finalFile.getAbsolutePath(); + break; + } + } + tempFile.renameTo(finalFile); + } while (false); + + if (errStr == null) { + downloader.onFinish(id, 0, null, null); + downloader.runNextTaskIfExists(); + } + else + downloader.onFinish(id, 0, errStr, null); + } else { + // 非文件 + ByteArrayOutputStream buffer; + if(total > 0) { + buffer = new ByteArrayOutputStream((int) total); + } else { + buffer = new ByteArrayOutputStream(4096); + } + + int len; + while ((len = is.read(buf)) != -1) { + current += len; + buffer.write(buf, 0, len); + downloader.onProgress(id, len, current, total); + } + downloader.onFinish(id, 0, null, buffer.toByteArray()); + downloader.runNextTaskIfExists(); + } + } catch (IOException e) { + e.printStackTrace(); + downloader.onFinish(id, 0, e.toString(), null); + } finally { + try { + if (is != null) { + is.close(); + } + if (fos != null) { + fos.close(); + } + } catch (IOException e) { + Log.e("CocosDownloader", e.toString()); + } + } + } + }); + } while (false); + + if (null == task) { + final String errStr = "Can't create DownloadTask for " + url; + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + downloader.nativeOnFinish(downloader._id, id, 0, errStr, null); + } + }); + } else { + downloader._taskMap.put(id, task); + } + } + }; + downloader.enqueueTask(taskRunnable); + } + + public static void abort(final CocosDownloader downloader, final int id) { + GlobalObject.getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Iterator iter = downloader._taskMap.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = (Map.Entry) iter.next(); + Object key = entry.getKey(); + Call task = (Call) entry.getValue(); + if (null != task && Integer.parseInt(key.toString()) == id) { + task.cancel(); + downloader._taskMap.remove(id); + downloader.runNextTaskIfExists(); + break; + } + } + } + }); + } + + public static void cancelAllRequests(final CocosDownloader downloader) { + GlobalObject.getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + for (Object o : downloader._taskMap.entrySet()) { + Map.Entry entry = (Map.Entry) o; + Call task = (Call) entry.getValue(); + if (null != task) { + task.cancel(); + } + } + } + }); + } + + + private void enqueueTask(Runnable taskRunnable) { + synchronized (_taskQueue) { + if (_runningTaskCount < _countOfMaxProcessingTasks) { + GlobalObject.getActivity().runOnUiThread(taskRunnable); + _runningTaskCount++; + } else { + _taskQueue.add(taskRunnable); + } + } + } + + private void runNextTaskIfExists() { + synchronized (_taskQueue) { + while (_runningTaskCount < _countOfMaxProcessingTasks && + CocosDownloader.this._taskQueue.size() > 0) { + + Runnable taskRunnable = CocosDownloader.this._taskQueue.poll(); + GlobalObject.getActivity().runOnUiThread(taskRunnable); + _runningTaskCount += 1; + } + } + } + + native void nativeOnProgress(int id, int taskId, long dl, long dlnow, long dltotal); + native void nativeOnFinish(int id, int taskId, int errCode, String errStr, final byte[] data); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosEditBoxActivity.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosEditBoxActivity.java new file mode 100644 index 0000000..45691e5 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosEditBoxActivity.java @@ -0,0 +1,466 @@ +/**************************************************************************** +Copyright (c) 2010-2012 cocos2d-x.org +Copyright (c) 2013-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.Rect; +import android.graphics.drawable.Drawable; +import android.graphics.drawable.ShapeDrawable; +import android.graphics.drawable.StateListDrawable; +import android.graphics.drawable.shapes.RoundRectShape; +import android.os.Bundle; +import android.text.Editable; +import android.text.InputFilter; +import android.text.InputType; +import android.text.TextUtils; +import android.text.TextWatcher; +import android.util.Log; +import android.view.KeyEvent; +import android.view.View; +import android.view.ViewGroup; +import android.view.ViewTreeObserver; +import android.view.WindowManager; +import android.view.inputmethod.EditorInfo; +import android.view.inputmethod.InputMethodManager; +import android.widget.Button; +import android.widget.EditText; +import android.widget.RelativeLayout; +import android.widget.TextView; +import android.app.Activity; +import android.content.Intent; + +public class CocosEditBoxActivity extends Activity { + + // a color of dark green, was used for confirm button background + private static final int DARK_GREEN = Color.parseColor("#1fa014"); + private static final int DARK_GREEN_PRESS = Color.parseColor("#008e26"); + + private static CocosEditBoxActivity sThis = null; + private Cocos2dxEditText mEditText = null; + private Button mButton = null; + private String mButtonTitle = null; + private boolean mConfirmHold = true; + private RelativeLayout mButtonLayout = null; + private RelativeLayout.LayoutParams mButtonParams; + private int mEditTextID = 1; + private int mButtonLayoutID = 2; + + /*************************************************************************************** + Inner class. + **************************************************************************************/ + class Cocos2dxEditText extends EditText { + private final String TAG = "Cocos2dxEditBox"; + private boolean mIsMultiLine = false; + private TextWatcher mTextWatcher = null; + private Paint mPaint; + private int mLineColor = DARK_GREEN; + private float mLineWidth = 2f; + private boolean keyboardVisible = false; + private int mScreenHeight; + + public Cocos2dxEditText(Activity context){ + super(context); + //remove focus border + this.setBackground(null); + this.setTextColor(Color.BLACK); + mScreenHeight = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)). + getDefaultDisplay().getHeight(); + mPaint = new Paint(); + mPaint.setStrokeWidth(mLineWidth); + mPaint.setStyle(Paint.Style.FILL); + mPaint.setColor(mLineColor); + + mTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + + } + + @Override + public void afterTextChanged(Editable s) { + // Pass text to c++. + CocosEditBoxActivity.this.onKeyboardInput(s.toString()); + } + }; + registKeyboardVisible(); + } + + /*************************************************************************************** + Override functions. + **************************************************************************************/ + + @Override + protected void onDraw(Canvas canvas) { + // draw the underline + int padB = this.getPaddingBottom(); + canvas.drawLine(getScrollX(), this.getHeight() - padB / 2 - mLineWidth, + getScrollX() + this.getWidth(), + this.getHeight() - padB / 2 - mLineWidth, mPaint); + super.onDraw(canvas); + } + + /*************************************************************************************** + Public functions. + **************************************************************************************/ + + public void show(String defaultValue, int maxLength, boolean isMultiline, boolean confirmHold, String confirmType, String inputType) { + mIsMultiLine = isMultiline; + this.setFilters(new InputFilter[]{new InputFilter.LengthFilter(maxLength) }); + this.setText(defaultValue); + if (this.getText().length() >= defaultValue.length()) { + this.setSelection(defaultValue.length()); + } else { + this.setSelection(this.getText().length()); + } + this.setConfirmType(confirmType); + this.setInputType(inputType, mIsMultiLine); + this.setVisibility(View.VISIBLE); + + // Open soft keyboard manually. Should request focus to open soft keyboard. + this.requestFocus(); + + this.addListeners(); + } + + public void hide() { + mEditText.setVisibility(View.INVISIBLE); + this.removeListeners(); + } + + /*************************************************************************************** + Private functions. + **************************************************************************************/ + + private void setConfirmType(final String confirmType) { + if (confirmType.contentEquals("done")) { + this.setImeOptions(EditorInfo.IME_ACTION_DONE | EditorInfo.IME_FLAG_NO_EXTRACT_UI); + mButtonTitle = getResources().getString(R.string.done); + } else if (confirmType.contentEquals("next")) { + this.setImeOptions(EditorInfo.IME_ACTION_NEXT | EditorInfo.IME_FLAG_NO_EXTRACT_UI); + mButtonTitle = getResources().getString(R.string.next); + } else if (confirmType.contentEquals("search")) { + this.setImeOptions(EditorInfo.IME_ACTION_SEARCH | EditorInfo.IME_FLAG_NO_EXTRACT_UI); + mButtonTitle = getResources().getString(R.string.search); + } else if (confirmType.contentEquals("go")) { + this.setImeOptions(EditorInfo.IME_ACTION_GO | EditorInfo.IME_FLAG_NO_EXTRACT_UI); + mButtonTitle = getResources().getString(R.string.go); + } else if (confirmType.contentEquals("send")) { + this.setImeOptions(EditorInfo.IME_ACTION_SEND | EditorInfo.IME_FLAG_NO_EXTRACT_UI); + mButtonTitle = getResources().getString(R.string.send); + } else{ + mButtonTitle = null; + Log.e(TAG, "unknown confirm type " + confirmType); + } + } + + private void setInputType(final String inputType, boolean isMultiLine){ + if (inputType.contentEquals("text")) { + if (isMultiLine) + this.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE); + else + this.setInputType(InputType.TYPE_CLASS_TEXT); + } + else if (inputType.contentEquals("email")) + this.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); + else if (inputType.contentEquals("number")) + this.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_FLAG_SIGNED); + else if (inputType.contentEquals("phone")) + this.setInputType(InputType.TYPE_CLASS_PHONE); + else if (inputType.contentEquals("password")) + this.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); + else + Log.e(TAG, "unknown input type " + inputType); + } + + private void addListeners() { + + this.setOnEditorActionListener(new TextView.OnEditorActionListener() { + @Override + public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { + if (! mIsMultiLine) { + CocosEditBoxActivity.this.hide(); + } + + return false; // pass on to other listeners. + } + }); + + + this.addTextChangedListener(mTextWatcher); + } + + private void removeListeners() { + this.setOnEditorActionListener(null); + this.removeTextChangedListener(mTextWatcher); + } + + private void registKeyboardVisible() { + getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { + @Override + public void onGlobalLayout() { + Rect r = new Rect(); + getWindowVisibleDisplayFrame(r); + int heightDiff = getRootView().getHeight() - (r.bottom - r.top); + // if more than a quarter of the screen, its probably a keyboard + if (heightDiff > mScreenHeight/4) { + if (!keyboardVisible) { + keyboardVisible = true; + } + } else { + if (keyboardVisible) { + keyboardVisible = false; + CocosEditBoxActivity.this.hide(); + } + } + } + }); + } + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); + CocosEditBoxActivity.sThis = this; + + ViewGroup.LayoutParams frameLayoutParams = + new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT); + RelativeLayout frameLayout = new RelativeLayout(this); + frameLayout.setLayoutParams(frameLayoutParams); + setContentView(frameLayout); + + this.addItems(frameLayout); + + Bundle extras = getIntent().getExtras(); + show(extras.getString("defaultValue"), + extras.getInt("maxLength"), + extras.getBoolean("isMultiline"), + extras.getBoolean("confirmHold"), + extras.getString("confirmType"), + extras.getString("inputType")); + } + + /*************************************************************************************** + Public functions. + **************************************************************************************/ + + /*************************************************************************************** + Private functions. + **************************************************************************************/ + private void addItems(RelativeLayout layout) { + RelativeLayout myLayout = new RelativeLayout(this); + this.addEditText(myLayout); + this.addButton(myLayout); + + RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.WRAP_CONTENT); + layoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); + layout.addView(myLayout, layoutParams); + + //FXI ME: Is it needed? + // When touch area outside EditText and soft keyboard, then hide. +// layout.setOnTouchListener(new View.OnTouchListener() { +// @Override +// public boolean onTouch(View v, MotionEvent event) { +// Cocos2dxEditBox.this.hide(); +// return true; +// } +// +// }); + } + + private void addEditText(RelativeLayout layout) { + mEditText = new Cocos2dxEditText(this); + mEditText.setVisibility(View.INVISIBLE); + mEditText.setBackgroundColor(Color.WHITE); + mEditText.setId(mEditTextID); + RelativeLayout.LayoutParams editParams = new RelativeLayout.LayoutParams( + ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); + editParams.addRule(RelativeLayout.LEFT_OF, mButtonLayoutID); + layout.addView(mEditText, editParams); + } + + private void addButton(RelativeLayout layout) { + mButton = new Button(this); + mButtonParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + mButton.setTextColor(Color.WHITE); + mButton.setBackground(getRoundRectShape()); + mButtonLayout = new RelativeLayout(GlobalObject.getActivity()); + mButtonLayout.setBackgroundColor(Color.WHITE); + RelativeLayout.LayoutParams buttonLayoutParams = new RelativeLayout.LayoutParams( + ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + buttonLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); + buttonLayoutParams.addRule(RelativeLayout.ALIGN_BOTTOM, mEditTextID); + buttonLayoutParams.addRule(RelativeLayout.ALIGN_TOP, mEditTextID); + mButtonLayout.addView(mButton, mButtonParams); + mButtonLayout.setId(mButtonLayoutID); + layout.addView(mButtonLayout, buttonLayoutParams); + + mButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + CocosEditBoxActivity.this.onKeyboardConfirm(mEditText.getText().toString()); + + if (!CocosEditBoxActivity.this.mConfirmHold) + CocosEditBoxActivity.this.hide(); + } + }); + } + + private Drawable getRoundRectShape() { + int radius = 7; + float[] outerRadii = new float[]{radius, radius, radius, radius, radius, radius, radius, radius}; + RoundRectShape roundRectShape = new RoundRectShape(outerRadii, null, null); + ShapeDrawable shapeDrawableNormal = new ShapeDrawable(); + shapeDrawableNormal.setShape(roundRectShape); + shapeDrawableNormal.getPaint().setStyle(Paint.Style.FILL); + shapeDrawableNormal.getPaint().setColor(DARK_GREEN); + ShapeDrawable shapeDrawablePress = new ShapeDrawable(); + shapeDrawablePress.setShape(roundRectShape); + shapeDrawablePress.getPaint().setStyle(Paint.Style.FILL); + shapeDrawablePress.getPaint().setColor(DARK_GREEN_PRESS); + StateListDrawable drawable = new StateListDrawable(); + drawable.addState(new int[]{android.R.attr.state_pressed}, shapeDrawablePress); + drawable.addState(new int[]{}, shapeDrawableNormal); + return drawable; + } + + + private void hide() { + Utils.hideVirtualButton(); + this.closeKeyboard(); + finish(); + } + + public void show(String defaultValue, int maxLength, boolean isMultiline, boolean confirmHold, String confirmType, String inputType) { + mConfirmHold = confirmHold; + mEditText.show(defaultValue, maxLength, isMultiline, confirmHold, confirmType, inputType); + int editPaddingBottom = mEditText.getPaddingBottom(); + int editPadding = mEditText.getPaddingTop(); + mEditText.setPadding(editPadding, editPadding, editPadding, editPaddingBottom); + mButton.setText(mButtonTitle); + if (TextUtils.isEmpty(mButtonTitle)) { + mButton.setPadding(0, 0, 0, 0); + mButtonParams.setMargins(0, 0, 0, 0); + mButtonLayout.setVisibility(View.INVISIBLE); + } else { + int buttonTextPadding = mEditText.getPaddingBottom() / 2; + mButton.setPadding(editPadding, buttonTextPadding, editPadding, buttonTextPadding); + mButtonParams.setMargins(0, buttonTextPadding, 2, 0); + mButtonLayout.setVisibility(View.VISIBLE); + } + + this.openKeyboard(); + } + + private void closeKeyboard() { + InputMethodManager imm = (InputMethodManager) getSystemService(this.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0); + + this.onKeyboardComplete(mEditText.getText().toString()); + } + + private void openKeyboard() { + InputMethodManager imm = (InputMethodManager) getSystemService(this.INPUT_METHOD_SERVICE); + imm.showSoftInput(mEditText, InputMethodManager.SHOW_IMPLICIT); + } + + /*************************************************************************************** + Functions invoked by CPP. + **************************************************************************************/ + + private static void showNative(String defaultValue, int maxLength, boolean isMultiline, boolean confirmHold, String confirmType, String inputType) { + + GlobalObject.getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Intent i = new Intent(GlobalObject.getActivity(), CocosEditBoxActivity.class); + i.putExtra("defaultValue", defaultValue); + i.putExtra("maxLength", maxLength); + i.putExtra("isMultiline", isMultiline); + i.putExtra("confirmHold", confirmHold); + i.putExtra("confirmType", confirmType); + i.putExtra("inputType", inputType); + GlobalObject.getActivity().startActivity(i); + } + }); + } + + private static void hideNative() { + if (null != CocosEditBoxActivity.sThis) { + GlobalObject.getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + CocosEditBoxActivity.sThis.hide(); + } + }); + } + } + + /*************************************************************************************** + Native functions invoked by UI. + **************************************************************************************/ + private void onKeyboardInput(String text) { + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + CocosEditBoxActivity.onKeyboardInputNative(text); + } + }); + } + + private void onKeyboardComplete(String text) { + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + CocosEditBoxActivity.onKeyboardCompleteNative(text); + } + }); + } + + private void onKeyboardConfirm(String text) { + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + CocosEditBoxActivity.onKeyboardConfirmNative(text); + } + }); + } + + private static native void onKeyboardInputNative(String text); + private static native void onKeyboardCompleteNative(String text); + private static native void onKeyboardConfirmNative(String text); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHandler.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHandler.java new file mode 100644 index 0000000..1c37198 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHandler.java @@ -0,0 +1,105 @@ +/**************************************************************************** +Copyright (c) 2010-2013 cocos2d-x.org +Copyright (c) 2013-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.app.AlertDialog; +import android.content.DialogInterface; +import android.os.Handler; +import android.os.Message; +import android.app.Activity; + +import java.lang.ref.WeakReference; + +public class CocosHandler extends Handler { + // =========================================================== + // Constants + // =========================================================== + public final static int HANDLER_SHOW_DIALOG = 1; + + // =========================================================== + // Fields + // =========================================================== + private WeakReference mActivity; + + // =========================================================== + // Constructors + // =========================================================== + public CocosHandler(Activity activity) { + this.mActivity = new WeakReference(activity); + } + + // =========================================================== + // Getter & Setter + // =========================================================== + + // =========================================================== + // Methods for/from SuperClass/Interfaces + // =========================================================== + + // =========================================================== + // Methods + // =========================================================== + + public void handleMessage(Message msg) { + switch (msg.what) { + case CocosHandler.HANDLER_SHOW_DIALOG: + showDialog(msg); + break; + } + } + + private void showDialog(Message msg) { + Activity theActivity = this.mActivity.get(); + DialogMessage dialogMessage = (DialogMessage)msg.obj; + new AlertDialog.Builder(theActivity) + .setTitle(dialogMessage.title) + .setMessage(dialogMessage.message) + .setPositiveButton("Ok", + new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + // REFINE: Auto-generated method stub + + } + }).create().show(); + } + + // =========================================================== + // Inner and Anonymous Classes + // =========================================================== + + public static class DialogMessage { + public String title; + public String message; + + public DialogMessage(String title, String message) { + this.title = title; + this.message = message; + } + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHelper.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHelper.java new file mode 100644 index 0000000..be06db3 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHelper.java @@ -0,0 +1,349 @@ +/**************************************************************************** +Copyright (c) 2010-2012 cocos2d-x.org +Copyright (c) 2013-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.content.ClipData; +import android.content.ClipboardManager; +import android.app.Activity; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager.NameNotFoundException; +import android.content.res.AssetFileDescriptor; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.net.Uri; +import android.os.BatteryManager; +import android.os.Build; +import android.os.Environment; +import android.os.ParcelFileDescriptor; +import android.os.Vibrator; +import android.util.Log; +import android.view.Display; +import android.view.Surface; +import android.view.WindowInsets; +import android.view.WindowManager; + +import com.android.vending.expansion.zipfile.APKExpansionSupport; +import com.android.vending.expansion.zipfile.ZipResourceFile; + +import java.io.File; +import java.io.IOException; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Locale; + + +public class CocosHelper { + // =========================================================== + // Constants + // =========================================================== + private static final String TAG = CocosHelper.class.getSimpleName(); + + // =========================================================== + // Fields + // =========================================================== + + private static Activity sActivity; + private static Vibrator sVibrateService; + private static BatteryReceiver sBatteryReceiver = new BatteryReceiver(); + + public static final int NETWORK_TYPE_NONE = 0; + public static final int NETWORK_TYPE_LAN = 1; + public static final int NETWORK_TYPE_WWAN = 2; + + // The absolute path to the OBB if it exists. + private static String sObbFilePath = ""; + + // The OBB file + private static ZipResourceFile sOBBFile = null; + + private static List sTaskOnGameThread = Collections.synchronizedList(new ArrayList<>()); + + /** + * Battery receiver to getting battery level. + */ + static class BatteryReceiver extends BroadcastReceiver { + public float sBatteryLevel = 0.0f; + + @Override + public void onReceive(Context context, Intent intent) { + setBatteryLevelByIntent(intent); + } + + public void setBatteryLevelByIntent(Intent intent) { + if (null != intent) { + int current = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0); + int total = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 1); + float level = current * 1.0f / total; + // clamp to 0~1 + sBatteryLevel = Math.min(Math.max(level, 0.0f), 1.0f); + } + } + } + + static void registerBatteryLevelReceiver(Context context) { + Intent intent = context.registerReceiver(sBatteryReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); + sBatteryReceiver.setBatteryLevelByIntent(intent); + } + + static void unregisterBatteryLevelReceiver(Context context) { + context.unregisterReceiver(sBatteryReceiver); + } + + public static void runOnGameThread(final Runnable runnable) { + sTaskOnGameThread.add(runnable); + } + + static void flushTasksOnGameThread() { + while(sTaskOnGameThread.size() > 0) { + Runnable r = sTaskOnGameThread.remove(0); + if(r != null) { + r.run(); + } + } + } + + public static int getNetworkType() { + int status = NETWORK_TYPE_NONE; + NetworkInfo networkInfo; + try { + ConnectivityManager connMgr = (ConnectivityManager) sActivity.getSystemService(Context.CONNECTIVITY_SERVICE); + networkInfo = connMgr.getActiveNetworkInfo(); + } catch (Exception e) { + e.printStackTrace(); + return status; + } + if (networkInfo == null) { + return status; + } + int nType = networkInfo.getType(); + if (nType == ConnectivityManager.TYPE_MOBILE) { + status = NETWORK_TYPE_WWAN; + } else if (nType == ConnectivityManager.TYPE_WIFI) { + status = NETWORK_TYPE_LAN; + } + return status; + } + + // =========================================================== + // Constructors + // =========================================================== + + private static boolean sInited = false; + public static void init(final Activity activity) { + sActivity = activity; + if (!sInited) { + CocosHelper.sVibrateService = (Vibrator)activity.getSystemService(Context.VIBRATOR_SERVICE); + CocosHelper.initObbFilePath(); + CocosHelper.initializeOBBFile(); + + sInited = true; + } + } + + public static float getBatteryLevel() { return sBatteryReceiver.sBatteryLevel; } + public static String getObbFilePath() { return CocosHelper.sObbFilePath; } + public static String getWritablePath() { + return sActivity.getFilesDir().getAbsolutePath(); + } + public static String getCurrentLanguage() { + return Locale.getDefault().getLanguage(); + } + public static String getCurrentLanguageCode() { + return Locale.getDefault().toString(); + } + public static String getDeviceModel(){ + return Build.MODEL; + } + public static String getSystemVersion() { + return Build.VERSION.RELEASE; + } + + public static void vibrate(float duration) { + try { + if (sVibrateService != null && sVibrateService.hasVibrator()) { + if (android.os.Build.VERSION.SDK_INT >= 26) { + Class vibrationEffectClass = Class.forName("android.os.VibrationEffect"); + if(vibrationEffectClass != null) { + final int DEFAULT_AMPLITUDE = CocosReflectionHelper.getConstantValue(vibrationEffectClass, + "DEFAULT_AMPLITUDE"); + //VibrationEffect.createOneShot(long milliseconds, int amplitude) + final Method method = vibrationEffectClass.getMethod("createOneShot", + new Class[]{Long.TYPE, Integer.TYPE}); + Class type = method.getReturnType(); + + Object effect = method.invoke(vibrationEffectClass, + new Object[]{(long) (duration * 1000), DEFAULT_AMPLITUDE}); + //sVibrateService.vibrate(VibrationEffect effect); + CocosReflectionHelper.invokeInstanceMethod(sVibrateService,"vibrate", + new Class[]{type}, new Object[]{(effect)}); + } + } else { + sVibrateService.vibrate((long) (duration * 1000)); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static boolean openURL(String url) { + boolean ret = false; + try { + Intent i = new Intent(Intent.ACTION_VIEW); + i.setData(Uri.parse(url)); + sActivity.startActivity(i); + ret = true; + } catch (Exception e) { + } + return ret; + } + + public static void copyTextToClipboard(final String text){ + sActivity.runOnUiThread(new Runnable() { + @Override + public void run() { + ClipboardManager myClipboard = (ClipboardManager)sActivity.getSystemService(Context.CLIPBOARD_SERVICE); + ClipData myClip = ClipData.newPlainText("text", text); + myClipboard.setPrimaryClip(myClip); + } + }); + } + + public static long[] getObbAssetFileDescriptor(final String path) { + long[] array = new long[3]; + if (CocosHelper.sOBBFile != null) { + AssetFileDescriptor descriptor = CocosHelper.sOBBFile.getAssetFileDescriptor(path); + if (descriptor != null) { + try { + ParcelFileDescriptor parcel = descriptor.getParcelFileDescriptor(); + Method method = parcel.getClass().getMethod("getFd", new Class[] {}); + array[0] = (Integer)method.invoke(parcel); + array[1] = descriptor.getStartOffset(); + array[2] = descriptor.getLength(); + } catch (NoSuchMethodException e) { + Log.e(CocosHelper.TAG, "Accessing file descriptor directly from the OBB is only supported from Android 3.1 (API level 12) and above."); + } catch (IllegalAccessException e) { + Log.e(CocosHelper.TAG, e.toString()); + } catch (InvocationTargetException e) { + Log.e(CocosHelper.TAG, e.toString()); + } + } + } + return array; + } + + public static int getDeviceRotation() { + try { + Display display = ((WindowManager) sActivity.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); + return display.getRotation(); + } catch (NullPointerException e) { + e.printStackTrace(); + } + return Surface.ROTATION_0; + } + + // =========================================================== + // Private functions. + // =========================================================== + + // Initialize asset path: + // - absolute path to the OBB if it exists, + // - else empty string. + private static void initObbFilePath() { + int versionCode = 1; + final ApplicationInfo applicationInfo = sActivity.getApplicationInfo(); + try { + versionCode = CocosHelper.sActivity.getPackageManager().getPackageInfo(applicationInfo.packageName, 0).versionCode; + } catch (NameNotFoundException e) { + e.printStackTrace(); + } + String pathToOBB = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/obb/" + applicationInfo.packageName + "/main." + versionCode + "." + applicationInfo.packageName + ".obb"; + File obbFile = new File(pathToOBB); + if (obbFile.exists()) + CocosHelper.sObbFilePath = pathToOBB; + } + + private static void initializeOBBFile() { + int versionCode = 1; + final ApplicationInfo applicationInfo = sActivity.getApplicationInfo(); + try { + versionCode = sActivity.getPackageManager().getPackageInfo(applicationInfo.packageName, 0).versionCode; + } catch (NameNotFoundException e) { + e.printStackTrace(); + } + try { + CocosHelper.sOBBFile = APKExpansionSupport.getAPKExpansionZipFile(sActivity, versionCode, 0); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static float[] getSafeArea() { + if (android.os.Build.VERSION.SDK_INT >= 28) { + do { + Object windowInsectObj = GlobalObject.getActivity().getWindow().getDecorView().getRootWindowInsets(); + + if(windowInsectObj == null) break; + + Class windowInsets = WindowInsets.class; + try { + Method wiGetDisplayCutout = windowInsets.getMethod("getDisplayCutout"); + Object cutout = wiGetDisplayCutout.invoke(windowInsectObj); + + if(cutout == null) break; + + Class displayCutout = cutout.getClass(); + Method dcGetLeft = displayCutout.getMethod("getSafeInsetLeft"); + Method dcGetRight = displayCutout.getMethod("getSafeInsetRight"); + Method dcGetBottom = displayCutout.getMethod("getSafeInsetBottom"); + Method dcGetTop = displayCutout.getMethod("getSafeInsetTop"); + + if (dcGetLeft != null && dcGetRight != null && dcGetBottom != null && dcGetTop != null) { + int left = (Integer) dcGetLeft.invoke(cutout); + int right = (Integer) dcGetRight.invoke(cutout); + int top = (Integer) dcGetTop.invoke(cutout); + int bottom = (Integer) dcGetBottom.invoke(cutout); + return new float[]{top, left, bottom, right}; + } + } catch (NoSuchMethodException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } catch (InvocationTargetException e) { + e.printStackTrace(); + } + }while(false); + } + return new float[]{0,0,0,0}; + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHttpURLConnection.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHttpURLConnection.java new file mode 100644 index 0000000..ad4b77c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosHttpURLConnection.java @@ -0,0 +1,413 @@ +/**************************************************************************** +Copyright (c) 2010-2014 cocos2d-x.org +Copyright (c) 2014-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.util.Log; + +import java.io.BufferedInputStream; +import java.io.ByteArrayOutputStream; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.ProtocolException; +import java.net.URL; +import java.security.KeyStore; +import java.security.cert.Certificate; +import java.security.cert.CertificateFactory; +import java.security.cert.X509Certificate; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Map.Entry; +import java.util.zip.GZIPInputStream; +import java.util.zip.InflaterInputStream; + +import javax.net.ssl.HttpsURLConnection; +import javax.net.ssl.SSLContext; +import javax.net.ssl.TrustManagerFactory; + +public class CocosHttpURLConnection +{ + private static String TAG = "CocosHttpURLConnection"; + private static final String POST_METHOD = "POST" ; + private static final String PUT_METHOD = "PUT" ; + + static HttpURLConnection createHttpURLConnection(String linkURL) { + URL url; + HttpURLConnection urlConnection; + try { + url = new URL(linkURL); + urlConnection = (HttpURLConnection) url.openConnection(); + //Accept-Encoding + urlConnection.setRequestProperty("Accept-Encoding", "identity"); + urlConnection.setDoInput(true); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "createHttpURLConnection:" + e.toString()); + return null; + } + + return urlConnection; + } + + static void setReadAndConnectTimeout(HttpURLConnection urlConnection, int readMiliseconds, int connectMiliseconds) { + urlConnection.setReadTimeout(readMiliseconds); + urlConnection.setConnectTimeout(connectMiliseconds); + } + + static void setRequestMethod(HttpURLConnection urlConnection, String method){ + try { + urlConnection.setRequestMethod(method); + if(method.equalsIgnoreCase(POST_METHOD) || method.equalsIgnoreCase(PUT_METHOD)) { + urlConnection.setDoOutput(true); + } + } catch (ProtocolException e) { + Log.e(TAG, "setRequestMethod:" + e.toString()); + } + + } + + static void setVerifySSL(HttpURLConnection urlConnection, String sslFilename) { + if(!(urlConnection instanceof HttpsURLConnection)) + return; + + + HttpsURLConnection httpsURLConnection = (HttpsURLConnection)urlConnection; + + try { + InputStream caInput = null; + if (sslFilename.startsWith("/")) { + caInput = new BufferedInputStream(new FileInputStream(sslFilename)); + }else { + String assetString = "assets/"; + String assetsfilenameString = sslFilename.substring(assetString.length()); + caInput = new BufferedInputStream(GlobalObject.getActivity().getAssets().open(assetsfilenameString)); + } + + CertificateFactory cf = CertificateFactory.getInstance("X.509"); + Certificate ca; + ca = cf.generateCertificate(caInput); + System.out.println("ca=" + ((X509Certificate) ca).getSubjectDN()); + caInput.close(); + + // Create a KeyStore containing our trusted CAs + String keyStoreType = KeyStore.getDefaultType(); + KeyStore keyStore = KeyStore.getInstance(keyStoreType); + keyStore.load(null, null); + keyStore.setCertificateEntry("ca", ca); + + // Create a TrustManager that trusts the CAs in our KeyStore + String tmfAlgorithm = TrustManagerFactory.getDefaultAlgorithm(); + TrustManagerFactory tmf = TrustManagerFactory.getInstance(tmfAlgorithm); + tmf.init(keyStore); + + // Create an SSLContext that uses our TrustManager + SSLContext context = SSLContext.getInstance("TLS"); + context.init(null, tmf.getTrustManagers(), null); + + httpsURLConnection.setSSLSocketFactory(context.getSocketFactory()); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "setVerifySSL:" + e.toString()); + } + } + + //Add header + static void addRequestHeader(HttpURLConnection urlConnection, String key, String value) { + urlConnection.setRequestProperty(key, value); + } + + static int connect(HttpURLConnection http) { + int suc = 0; + + try { + http.connect(); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "connect" + e.toString()); + suc = 1; + } + + return suc; + } + + static void disconnect(HttpURLConnection http) { + http.disconnect(); + } + + static void sendRequest(HttpURLConnection http, byte[] byteArray) { + try { + OutputStream out = http.getOutputStream(); + if(null != byteArray) { + out.write(byteArray); + out.flush(); + } + out.close(); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "sendRequest:" + e.toString()); + } + } + + static String getResponseHeaders(HttpURLConnection http) { + Map> headers = http.getHeaderFields(); + if (null == headers) { + return null; + } + + String header = ""; + + for (Entry> entry: headers.entrySet()) { + String key = entry.getKey(); + if (null == key) { + header += listToString(entry.getValue(), ",") + "\n"; + } else { + header += key + ":" + listToString(entry.getValue(), ",") + "\n"; + } + } + + return header; + } + + static String getResponseHeaderByIdx(HttpURLConnection http, int idx) { + Map> headers = http.getHeaderFields(); + if (null == headers) { + return null; + } + + String header = null; + + int counter = 0; + for (Entry> entry: headers.entrySet()) { + if (counter == idx) { + String key = entry.getKey(); + if (null == key) { + header = listToString(entry.getValue(), ",") + "\n"; + } else { + header = key + ":" + listToString(entry.getValue(), ",") + "\n"; + } + break; + } + counter++; + } + + return header; + } + + static String getResponseHeaderByKey(HttpURLConnection http, String key) { + if (null == key) { + return null; + } + + Map> headers = http.getHeaderFields(); + if (null == headers) { + return null; + } + + String header = null; + + for (Entry> entry: headers.entrySet()) { + if (key.equalsIgnoreCase(entry.getKey())) { + if ("set-cookie".equalsIgnoreCase(key)) { + header = combinCookies(entry.getValue(), http.getURL().getHost()); + } else { + header = listToString(entry.getValue(), ","); + } + break; + } + } + + return header; + } + + static int getResponseHeaderByKeyInt(HttpURLConnection http, String key) { + String value = http.getHeaderField(key); + + if (null == value) { + return 0; + } else { + return Integer.parseInt(value); + } + } + + static byte[] getResponseContent(HttpURLConnection http) { + InputStream in; + try { + in = http.getInputStream(); + String contentEncoding = http.getContentEncoding(); + if (contentEncoding != null) { + if(contentEncoding.equalsIgnoreCase("gzip")){ + in = new GZIPInputStream(http.getInputStream()); //reads 2 bytes to determine GZIP stream! + } + else if(contentEncoding.equalsIgnoreCase("deflate")){ + in = new InflaterInputStream(http.getInputStream()); + } + } + } catch (IOException e) { + in = http.getErrorStream(); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "1 getResponseContent: " + e.toString()); + return null; + } + + try { + byte[] buffer = new byte[1024]; + int size = 0; + ByteArrayOutputStream bytestream = new ByteArrayOutputStream(); + while((size = in.read(buffer, 0 , 1024)) != -1) + { + bytestream.write(buffer, 0, size); + } + byte retbuffer[] = bytestream.toByteArray(); + bytestream.close(); + return retbuffer; + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "2 getResponseContent:" + e.toString()); + } + + return null; + } + + static int getResponseCode(HttpURLConnection http) { + int code = 0; + try { + code = http.getResponseCode(); + } catch (Exception e) { + e.printStackTrace(); + Log.e(TAG, "getResponseCode:" + e.toString()); + } + return code; + } + + static String getResponseMessage(HttpURLConnection http) { + String msg; + try { + msg = http.getResponseMessage(); + } catch (Exception e) { + e.printStackTrace(); + msg = e.toString(); + Log.e(TAG, "getResponseMessage: " + msg); + } + + return msg; + } + + public static String listToString(List list, String strInterVal) { + if (list == null) { + return null; + } + StringBuilder result = new StringBuilder(); + boolean flag = false; + for (String str : list) { + if (flag) { + result.append(strInterVal); + } + if (null == str) { + str = ""; + } + result.append(str); + flag = true; + } + return result.toString(); + } + + public static String combinCookies(List list, String hostDomain) { + StringBuilder sbCookies = new StringBuilder(); + String domain = hostDomain; + String tailmatch = "FALSE"; + String path = "/"; + String secure = "FALSE"; + String key = null; + String value = null; + String expires = null; + for (String str : list) { + String[] parts = str.split(";"); + for (String part : parts) { + int firstIndex = part.indexOf("="); + if (-1 == firstIndex) + continue; + + String[] item = {part.substring(0, firstIndex), part.substring(firstIndex + 1)}; + if ("expires".equalsIgnoreCase(item[0].trim())) { + expires = str2Seconds(item[1].trim()); + } else if("path".equalsIgnoreCase(item[0].trim())) { + path = item[1]; + } else if("secure".equalsIgnoreCase(item[0].trim())) { + secure = item[1]; + } else if("domain".equalsIgnoreCase(item[0].trim())) { + domain = item[1]; + } else if("version".equalsIgnoreCase(item[0].trim()) || "max-age".equalsIgnoreCase(item[0].trim())) { + //do nothing + } else { + key = item[0]; + value = item[1]; + } + } + + if (null == domain) { + domain = "none"; + } + + sbCookies.append(domain); + sbCookies.append('\t'); + sbCookies.append(tailmatch); //access + sbCookies.append('\t'); + sbCookies.append(path); //path + sbCookies.append('\t'); + sbCookies.append(secure); //secure + sbCookies.append('\t'); + sbCookies.append(expires); //expires + sbCookies.append("\t"); + sbCookies.append(key); //key + sbCookies.append("\t"); + sbCookies.append(value); //value + sbCookies.append('\n'); + } + + return sbCookies.toString(); + } + + private static String str2Seconds(String strTime) { + Calendar c = Calendar.getInstance(); + long milliseconds = 0; + + try { + c.setTime(new SimpleDateFormat("EEE, dd-MMM-yy hh:mm:ss zzz", Locale.US).parse(strTime)); + milliseconds = c.getTimeInMillis() / 1000; + } catch (ParseException e) { + Log.e(TAG, "str2Seconds: " + e.toString()); + } + + return Long.toString(milliseconds); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosJavascriptJavaBridge.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosJavascriptJavaBridge.java new file mode 100644 index 0000000..5415417 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosJavascriptJavaBridge.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2013-2016 Chukong Technologies Inc. + * Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +package com.cocos.lib; + +public class CocosJavascriptJavaBridge { + public static native int evalString(String value); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosKeyCodeHandler.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosKeyCodeHandler.java new file mode 100644 index 0000000..a27bf41 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosKeyCodeHandler.java @@ -0,0 +1,89 @@ +/**************************************************************************** + Copyright (c) 2010-2013 cocos2d-x.org + Copyright (c) 2013-2016 Chukong Technologies Inc. + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.view.KeyEvent; + +public class CocosKeyCodeHandler { + private CocosActivity mAct; + + public native void handleKeyDown(final int keyCode); + + public native void handleKeyUp(final int keyCode); + + public CocosKeyCodeHandler(CocosActivity act) { + mAct = act; + } + + public boolean onKeyDown(final int keyCode, final KeyEvent event) { + switch (keyCode) { + // blank js响应不到KEYCODE_BACK ? +// case KeyEvent.KEYCODE_BACK: +// CocosVideoHelper.mVideoHandler.sendEmptyMessage(CocosVideoHelper.KeyEventBack); + case KeyEvent.KEYCODE_MENU: + case KeyEvent.KEYCODE_DPAD_LEFT: + case KeyEvent.KEYCODE_DPAD_RIGHT: + case KeyEvent.KEYCODE_DPAD_UP: + case KeyEvent.KEYCODE_DPAD_DOWN: + case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE: + case KeyEvent.KEYCODE_DPAD_CENTER: + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleKeyDown(keyCode); + } + }); + return true; + default: + return false; + } + } + + public boolean onKeyUp(final int keyCode, KeyEvent event) { + switch (keyCode) { + // blank js响应不到KEYCODE_BACK ? +// case KeyEvent.KEYCODE_BACK: + case KeyEvent.KEYCODE_MENU: + case KeyEvent.KEYCODE_DPAD_LEFT: + case KeyEvent.KEYCODE_DPAD_RIGHT: + case KeyEvent.KEYCODE_DPAD_UP: + case KeyEvent.KEYCODE_DPAD_DOWN: + case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE: + case KeyEvent.KEYCODE_DPAD_CENTER: + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleKeyUp(keyCode); + } ////blank cocos bug, 原来写的是handleKeyDown(keyCode) + }); + return true; + default: + return false; + } + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosLocalStorage.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosLocalStorage.java new file mode 100644 index 0000000..7d699ef --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosLocalStorage.java @@ -0,0 +1,170 @@ +/**************************************************************************** +Copyright (c) 2013-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +****************************************************************************/ +package com.cocos.lib; + +import android.content.Context; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteOpenHelper; +import android.util.Log; + +public class CocosLocalStorage { + + private static final String TAG = "CocosLocalStorage"; + + private static String DATABASE_NAME = "jsb.sqlite"; + private static String TABLE_NAME = "data"; + private static final int DATABASE_VERSION = 1; + + private static DBOpenHelper mDatabaseOpenHelper = null; + private static SQLiteDatabase mDatabase = null; + + public static boolean init(String dbName, String tableName) { + if (GlobalObject.getActivity() != null) { + DATABASE_NAME = dbName; + TABLE_NAME = tableName; + mDatabaseOpenHelper = new DBOpenHelper(GlobalObject.getActivity()); + mDatabase = mDatabaseOpenHelper.getWritableDatabase(); + return true; + } + return false; + } + + public static void destroy() { + if (mDatabase != null) { + mDatabase.close(); + } + } + + public static void setItem(String key, String value) { + try { + String sql = "replace into "+TABLE_NAME+"(key,value)values(?,?)"; + mDatabase.execSQL(sql, new Object[] { key, value }); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static String getItem(String key) { + String ret = null; + try { + String sql = "select value from "+TABLE_NAME+" where key=?"; + Cursor c = mDatabase.rawQuery(sql, new String[]{key}); + while (c.moveToNext()) { + // only return the first value + if (ret != null) + { + Log.e(TAG, "The key contains more than one value."); + break; + } + ret = c.getString(c.getColumnIndex("value")); + } + c.close(); + } catch (Exception e) { + e.printStackTrace(); + } + return ret; + } + + public static void removeItem(String key) { + try { + String sql = "delete from "+TABLE_NAME+" where key=?"; + mDatabase.execSQL(sql, new Object[] {key}); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static void clear() { + try { + String sql = "delete from "+TABLE_NAME; + mDatabase.execSQL(sql); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static String getKey(int nIndex) { + String ret = null; + try { + int nCount = 0; + String sql = "select key from "+TABLE_NAME + " order by rowid asc"; + Cursor c = mDatabase.rawQuery(sql, null); + if(nIndex < 0 || nIndex >= c.getCount()) { + return null; + } + + while (c.moveToNext()) { + if(nCount == nIndex) { + ret = c.getString(c.getColumnIndex("key")); + break; + } + nCount++; + } + c.close(); + } catch (Exception e) { + e.printStackTrace(); + } + return ret; + } + + public static int getLength() { + int res = 0; + try { + String sql = "select count(*) as nums from "+TABLE_NAME; + Cursor c = mDatabase.rawQuery(sql, null); + if (c.moveToNext()){ + res = c.getInt(c.getColumnIndex("nums")); + } + c.close(); + } catch (Exception e) { + e.printStackTrace(); + } + return res; + } + + /** + * This creates/opens the database. + */ + private static class DBOpenHelper extends SQLiteOpenHelper { + + DBOpenHelper(Context context) { + super(context, DATABASE_NAME, null, DATABASE_VERSION); + } + + @Override + public void onCreate(SQLiteDatabase db) { + db.execSQL("CREATE TABLE IF NOT EXISTS "+TABLE_NAME+"(key TEXT PRIMARY KEY,value TEXT);"); + } + + @Override + public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { + Log.w(TAG, "Upgrading database from version " + oldVersion + " to " + + newVersion + ", which will destroy all old data"); + //db.execSQL("DROP TABLE IF EXISTS " + VIRTUAL_TABLE); + //onCreate(db); + } + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosNativeActivity.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosNativeActivity.java new file mode 100644 index 0000000..308aae5 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosNativeActivity.java @@ -0,0 +1,164 @@ +/**************************************************************************** +Copyright (c) 2010-2013 cocos2d-x.org +Copyright (c) 2013-2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.app.NativeActivity; +import android.media.AudioManager; +import android.os.Bundle; +import android.util.Log; +import android.widget.FrameLayout; +import android.view.ViewGroup; +import android.view.WindowManager; +import android.content.pm.PackageManager; +import android.content.pm.ApplicationInfo; + +public abstract class CocosNativeActivity extends NativeActivity { + // =========================================================== + // Constants + // =========================================================== + + private final static String TAG = CocosNativeActivity.class.getSimpleName(); + + // =========================================================== + // Fields + // =========================================================== + private boolean hasFocus = false; + private boolean paused = true; + + protected FrameLayout mFrameLayout = null; + + private CocosVideoHelper mVideoHelper = null; + private CocosWebViewHelper mWebViewHelper = null; + + // =========================================================== + // Override functions + // =========================================================== + + @Override + protected void onCreate(final Bundle savedInstanceState) { + Log.d(TAG, "CocosNativeActivity onCreate: " + this + ", savedInstanceState: " + savedInstanceState); + super.onCreate(savedInstanceState); + + // Workaround in https://stackoverflow.com/questions/16283079/re-launch-of-activity-on-home-button-but-only-the-first-time/16447508 + if (!isTaskRoot()) { + // Android launched another instance of the root activity into an existing task + // so just quietly finish and go away, dropping the user back into the activity + // at the top of the stack (ie: the last state of this task) + finish(); + Log.w(TAG, "[Workaround] Ignore the activity started from icon!"); + return; + } + + GlobalObject.setActivity(this); + Utils.hideVirtualButton(); + + CocosHelper.registerBatteryLevelReceiver(this); + // Load native library to enable invoke native API. + onLoadNativeLibraries(); + + CocosHelper.init(this); + CanvasRenderingContext2DImpl.init(this); + + + if (mFrameLayout == null) { + ViewGroup.LayoutParams frameLayoutParams = new ViewGroup.LayoutParams( + ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT); + mFrameLayout = new FrameLayout(this); + mFrameLayout.setLayoutParams(frameLayoutParams); + + // + setContentView(mFrameLayout); + } + + if (mVideoHelper == null) { + mVideoHelper = new CocosVideoHelper(this, mFrameLayout); + } + + if (mWebViewHelper == null) { + mWebViewHelper = new CocosWebViewHelper(mFrameLayout); + } + + this.setVolumeControlStream(AudioManager.STREAM_MUSIC); + getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING); + } + + @Override + protected void onResume() { + Log.d(TAG, "onResume()"); + paused = false; + super.onResume(); + Utils.hideVirtualButton(); + } + + @Override + public void onWindowFocusChanged(boolean hasFocus) { + Log.d(TAG, "onWindowFocusChanged() hasFocus=" + hasFocus); + super.onWindowFocusChanged(hasFocus); + + this.hasFocus = hasFocus; + resumeIfHasFocus(); + } + + @Override + protected void onPause() { + Log.d(TAG, "onPause()"); + paused = true; + super.onPause(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + + // Workaround in https://stackoverflow.com/questions/16283079/re-launch-of-activity-on-home-button-but-only-the-first-time/16447508 + if (!isTaskRoot()) { + return; + } + CocosHelper.unregisterBatteryLevelReceiver(this);; + CanvasRenderingContext2DImpl.destroy(); + } + + // =========================================================== + // Protected and private methods + // =========================================================== + protected void onLoadNativeLibraries() { + try { + ApplicationInfo ai = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA); + Bundle bundle = ai.metaData; + String libName = bundle.getString("android.app.lib_name"); + System.loadLibrary(libName); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private void resumeIfHasFocus() { + if(hasFocus && !paused) { + Utils.hideVirtualButton(); + } + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosOrientationHelper.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosOrientationHelper.java new file mode 100644 index 0000000..d4d09e4 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosOrientationHelper.java @@ -0,0 +1,62 @@ +/**************************************************************************** + * Copyright (c) 2020 Xiamen Yaji Software Co., Ltd. + * + * http://www.cocos.com + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.content.Context; +import android.view.OrientationEventListener; + +public class CocosOrientationHelper extends OrientationEventListener { + + private int mCurrentOrientation; + + public CocosOrientationHelper(Context context) { + super(context); + mCurrentOrientation = CocosHelper.getDeviceRotation(); + } + + public void onPause() { + this.disable(); + } + + public void onResume() { + this.enable(); + } + + @Override + public void onOrientationChanged(int orientation) { + int curOrientation = CocosHelper.getDeviceRotation(); + if (curOrientation != mCurrentOrientation) { + mCurrentOrientation = CocosHelper.getDeviceRotation(); + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeOnOrientationChanged(mCurrentOrientation); + } + }); + } + } + + private static native void nativeOnOrientationChanged(int rotation); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosReflectionHelper.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosReflectionHelper.java new file mode 100644 index 0000000..eef98e4 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosReflectionHelper.java @@ -0,0 +1,75 @@ +/**************************************************************************** +Copyright (c) 2016 cocos2d-x.org +Copyright (c) 2016 Chukong Technologies Inc. +Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.util.Log; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; + +public class CocosReflectionHelper { + public static T getConstantValue(final Class aClass, final String constantName) { + try { + return (T)aClass.getDeclaredField(constantName).get(null); + } catch (NoSuchFieldException e) { + Log.e("error", "can not find " + constantName + " in " + aClass.getName()); + } + catch (IllegalAccessException e) { + Log.e("error", constantName + " is not accessable"); + } + catch (IllegalArgumentException e) { + Log.e("error", "arguments error when get " + constantName); + } + catch (Exception e) { + Log.e("error", "can not get constant" + constantName); + } + + return null; + } + + public static T invokeInstanceMethod(final Object instance, final String methodName, + final Class[] parameterTypes, final Object[] parameters) { + + final Class aClass = instance.getClass(); + try { + final Method method = aClass.getMethod(methodName, parameterTypes); + return (T)method.invoke(instance, parameters); + } catch (NoSuchMethodException e) { + Log.e("error", "can not find " + methodName + " in " + aClass.getName()); + } + catch (IllegalAccessException e) { + Log.e("error", methodName + " is not accessible"); + } + catch (IllegalArgumentException e) { + Log.e("error", "arguments are error when invoking " + methodName); + } + catch (InvocationTargetException e) { + Log.e("error", "an exception was thrown by the invoked method when invoking " + methodName); + } + + return null; + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSensorHandler.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSensorHandler.java new file mode 100644 index 0000000..966f5a8 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSensorHandler.java @@ -0,0 +1,139 @@ +/**************************************************************************** + Copyright (c) 2010-2013 cocos2d-x.org + Copyright (c) 2013-2016 Chukong Technologies Inc. + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.content.Context; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; + +public class CocosSensorHandler implements SensorEventListener { + // =========================================================== + // Constants + // =========================================================== + + private static final String TAG = "CocosSensorHandler"; + private static CocosSensorHandler mSensorHandler; + + private final Context mContext; + private final SensorManager mSensorManager; + private final Sensor mAcceleration; + private final Sensor mAccelerationIncludingGravity; + private final Sensor mGyroscope; + private int mSamplingPeriodUs = SensorManager.SENSOR_DELAY_GAME; + + private static float[] sDeviceMotionValues = new float[9]; + + // =========================================================== + // Constructors + // =========================================================== + + public CocosSensorHandler(final Context context) { + mContext = context; + + mSensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE); + mAcceleration = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); + mAccelerationIncludingGravity = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION); + mGyroscope = mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE); + + mSensorHandler = this; + } + + // =========================================================== + // Getter & Setter + // =========================================================== + public void enable() { + mSensorManager.registerListener(this, mAcceleration, mSamplingPeriodUs); + mSensorManager.registerListener(this, mAccelerationIncludingGravity, mSamplingPeriodUs); + mSensorManager.registerListener(this, mGyroscope, mSamplingPeriodUs); + } + + public void disable() { + this.mSensorManager.unregisterListener(this); + } + + public void setInterval(float interval) { + if (android.os.Build.VERSION.SDK_INT >= 11) { + mSamplingPeriodUs = (int) (interval * 1000000); + } + disable(); + enable(); + } + + // =========================================================== + // Methods for/from SuperClass/Interfaces + // =========================================================== + @Override + public void onSensorChanged(final SensorEvent sensorEvent) { + int type = sensorEvent.sensor.getType(); + if (type == Sensor.TYPE_ACCELEROMETER) { + sDeviceMotionValues[0] = sensorEvent.values[0]; + sDeviceMotionValues[1] = sensorEvent.values[1]; + // Issue https://github.com/cocos-creator/2d-tasks/issues/2532 + // use negative event.acceleration.z to match iOS value + sDeviceMotionValues[2] = -sensorEvent.values[2]; + } else if (type == Sensor.TYPE_LINEAR_ACCELERATION) { + sDeviceMotionValues[3] = sensorEvent.values[0]; + sDeviceMotionValues[4] = sensorEvent.values[1]; + sDeviceMotionValues[5] = sensorEvent.values[2]; + } else if (type == Sensor.TYPE_GYROSCOPE) { + // The unit is rad/s, need to be converted to deg/s + sDeviceMotionValues[6] = (float) Math.toDegrees(sensorEvent.values[0]); + sDeviceMotionValues[7] = (float) Math.toDegrees(sensorEvent.values[1]); + sDeviceMotionValues[8] = (float) Math.toDegrees(sensorEvent.values[2]); + } + } + + @Override + public void onAccuracyChanged(final Sensor sensor, final int accuracy) { + } + + public void onPause() { + disable(); + } + + public void onResume() { + enable(); + } + + public static void setAccelerometerInterval(float interval) { + mSensorHandler.setInterval(interval); + } + + public static void setAccelerometerEnabled(boolean enabled) { + if (enabled) { + mSensorHandler.enable(); + } else { + mSensorHandler.disable(); + } + mSensorHandler.enable(); + } + + public static float[] getDeviceMotionValue() { + return sDeviceMotionValues; + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSurfaceView.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSurfaceView.java new file mode 100644 index 0000000..88a67df --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosSurfaceView.java @@ -0,0 +1,56 @@ +/**************************************************************************** + * Copyright (c) 2020 Xiamen Yaji Software Co., Ltd. + * + * http://www.cocos.com + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.content.Context; +import android.view.MotionEvent; +import android.view.SurfaceView; + +public class CocosSurfaceView extends SurfaceView { + private CocosTouchHandler mTouchHandler; + + public CocosSurfaceView(Context context) { + super(context); + mTouchHandler = new CocosTouchHandler(); + } + + private native void nativeOnSizeChanged(final int width, final int height); + + @Override + protected void onSizeChanged(int w, int h, int oldw, int oldh) { + super.onSizeChanged(w, h, oldw, oldh); + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeOnSizeChanged(w, h); + } + }); + } + + @Override + public boolean onTouchEvent(MotionEvent event) { + return mTouchHandler.onTouchEvent(event); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosTouchHandler.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosTouchHandler.java new file mode 100644 index 0000000..4e8953e --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosTouchHandler.java @@ -0,0 +1,181 @@ +/**************************************************************************** + Copyright (c) 2010-2013 cocos2d-x.org + Copyright (c) 2013-2016 Chukong Technologies Inc. + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.util.Log; +import android.view.MotionEvent; + +public class CocosTouchHandler { + public final static String TAG = "CocosTouchHandler"; + private boolean mStopHandleTouchAndKeyEvents = false; + + public CocosTouchHandler() { + + } + + boolean onTouchEvent(MotionEvent pMotionEvent) { + // these data are used in ACTION_MOVE and ACTION_CANCEL + final int pointerNumber = pMotionEvent.getPointerCount(); + final int[] ids = new int[pointerNumber]; + final float[] xs = new float[pointerNumber]; + final float[] ys = new float[pointerNumber]; + + for (int i = 0; i < pointerNumber; i++) { + ids[i] = pMotionEvent.getPointerId(i); + xs[i] = pMotionEvent.getX(i); + ys[i] = pMotionEvent.getY(i); + } + + switch (pMotionEvent.getAction() & MotionEvent.ACTION_MASK) { + case MotionEvent.ACTION_POINTER_DOWN: + if (mStopHandleTouchAndKeyEvents) { +// Cocos2dxEditBox.complete(); + return true; + } + + final int indexPointerDown = pMotionEvent.getAction() >> MotionEvent.ACTION_POINTER_INDEX_SHIFT; + final int idPointerDown = pMotionEvent.getPointerId(indexPointerDown); + final float xPointerDown = pMotionEvent.getX(indexPointerDown); + final float yPointerDown = pMotionEvent.getY(indexPointerDown); + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionDown(idPointerDown, xPointerDown, yPointerDown); + } + }); + break; + + case MotionEvent.ACTION_DOWN: + if (mStopHandleTouchAndKeyEvents) { +// Cocos2dxEditBox.complete(); + return true; + } + + // there are only one finger on the screen + final int idDown = pMotionEvent.getPointerId(0); + final float xDown = xs[0]; + final float yDown = ys[0]; + + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionDown(idDown, xDown, yDown); + } + }); + + break; + + case MotionEvent.ACTION_MOVE: + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionMove(ids, xs, ys); + } + }); + + break; + + case MotionEvent.ACTION_POINTER_UP: + final int indexPointUp = pMotionEvent.getAction() >> MotionEvent.ACTION_POINTER_INDEX_SHIFT; + final int idPointerUp = pMotionEvent.getPointerId(indexPointUp); + final float xPointerUp = pMotionEvent.getX(indexPointUp); + final float yPointerUp = pMotionEvent.getY(indexPointUp); + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionUp(idPointerUp, xPointerUp, yPointerUp); + } + }); + + break; + + case MotionEvent.ACTION_UP: + // there are only one finger on the screen + final int idUp = pMotionEvent.getPointerId(0); + final float xUp = xs[0]; + final float yUp = ys[0]; + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionUp(idUp, xUp, yUp); + } + }); + + break; + + case MotionEvent.ACTION_CANCEL: + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + handleActionCancel(ids, xs, ys); + } + }); + break; + } + + if (BuildConfig.DEBUG) { +// CocosTouchHandler.dumpMotionEvent(pMotionEvent); + } + return true; + } + + public void setStopHandleTouchAndKeyEvents(boolean value) { + mStopHandleTouchAndKeyEvents = value; + } + + private static void dumpMotionEvent(final MotionEvent event) { + final String names[] = {"DOWN", "UP", "MOVE", "CANCEL", "OUTSIDE", "POINTER_DOWN", "POINTER_UP", "7?", "8?", "9?"}; + final StringBuilder sb = new StringBuilder(); + final int action = event.getAction(); + final int actionCode = action & MotionEvent.ACTION_MASK; + sb.append("event ACTION_").append(names[actionCode]); + if (actionCode == MotionEvent.ACTION_POINTER_DOWN || actionCode == MotionEvent.ACTION_POINTER_UP) { + sb.append("(pid ").append(action >> MotionEvent.ACTION_POINTER_INDEX_SHIFT); + sb.append(")"); + } + sb.append("["); + for (int i = 0; i < event.getPointerCount(); i++) { + sb.append("#").append(i); + sb.append("(pid ").append(event.getPointerId(i)); + sb.append(")=").append((int) event.getX(i)); + sb.append(",").append((int) event.getY(i)); + if (i + 1 < event.getPointerCount()) { + sb.append(";"); + } + } + sb.append("]"); + Log.d(TAG, sb.toString()); + } + + native void handleActionDown(final int id, final float x, final float y); + + native void handleActionMove(final int[] ids, final float[] xPointerList, final float[] yPointerList); + + native void handleActionUp(final int id, final float x, final float y); + + native void handleActionCancel(final int[] ids, final float[] xPointerList, final float[] yPointerList); + +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoHelper.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoHelper.java new file mode 100644 index 0000000..e0f7f86 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoHelper.java @@ -0,0 +1,431 @@ +/**************************************************************************** +Copyright (c) 2014-2016 Chukong Technologies Inc. +Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd. + +http://www.cocos2d-x.org + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.graphics.Rect; +import android.os.Handler; +import android.os.Looper; +import android.os.Message; +import android.util.Log; +import android.util.SparseArray; +import android.view.View; +import android.widget.FrameLayout; +import android.app.Activity; + +import com.cocos.lib.CocosVideoView.OnVideoEventListener; + +import java.lang.ref.WeakReference; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.FutureTask; + +public class CocosVideoHelper { + + private FrameLayout mLayout = null; + private Activity mActivity = null; + private static SparseArray sVideoViews = null; + static VideoHandler mVideoHandler = null; + private static Handler sHandler = null; + + CocosVideoHelper(Activity activity, FrameLayout layout) + { + mActivity = activity; + mLayout = layout; + + mVideoHandler = new VideoHandler(this); + sVideoViews = new SparseArray(); + sHandler = new Handler(Looper.myLooper()); + } + + private static int videoTag = 0; + private final static int VideoTaskCreate = 0; + private final static int VideoTaskRemove = 1; + private final static int VideoTaskSetSource = 2; + private final static int VideoTaskSetRect = 3; + private final static int VideoTaskStart = 4; + private final static int VideoTaskPause = 5; + private final static int VideoTaskResume = 6; + private final static int VideoTaskStop = 7; + private final static int VideoTaskSeek = 8; + private final static int VideoTaskSetVisible = 9; + private final static int VideoTaskRestart = 10; + private final static int VideoTaskKeepRatio = 11; + private final static int VideoTaskFullScreen = 12; + private final static int VideoTaskSetVolume = 13; + + final static int KeyEventBack = 1000; + + static class VideoHandler extends Handler{ + WeakReference mReference; + + VideoHandler(CocosVideoHelper helper){ + mReference = new WeakReference(helper); + } + + @Override + public void handleMessage(Message msg) { + CocosVideoHelper helper = mReference.get(); + switch (msg.what) { + case VideoTaskCreate: { + helper._createVideoView(msg.arg1); + break; + } + case VideoTaskRemove: { + helper._removeVideoView(msg.arg1); + break; + } + case VideoTaskSetSource: { + helper._setVideoURL(msg.arg1, msg.arg2, (String)msg.obj); + break; + } + case VideoTaskStart: { + helper._startVideo(msg.arg1); + break; + } + case VideoTaskSetRect: { + Rect rect = (Rect)msg.obj; + helper._setVideoRect(msg.arg1, rect.left, rect.top, rect.right, rect.bottom); + break; + } + case VideoTaskFullScreen:{ + if (msg.arg2 == 1) { + helper._setFullScreenEnabled(msg.arg1, true); + } else { + helper._setFullScreenEnabled(msg.arg1, false); + } + break; + } + case VideoTaskPause: { + helper._pauseVideo(msg.arg1); + break; + } + + case VideoTaskStop: { + helper._stopVideo(msg.arg1); + break; + } + case VideoTaskSeek: { + helper._seekVideoTo(msg.arg1, msg.arg2); + break; + } + case VideoTaskSetVisible: { + if (msg.arg2 == 1) { + helper._setVideoVisible(msg.arg1, true); + } else { + helper._setVideoVisible(msg.arg1, false); + } + break; + } + case VideoTaskKeepRatio: { + if (msg.arg2 == 1) { + helper._setVideoKeepRatio(msg.arg1, true); + } else { + helper._setVideoKeepRatio(msg.arg1, false); + } + break; + } + case KeyEventBack: { + helper.onBackKeyEvent(); + break; + } + case VideoTaskSetVolume: { + float volume = (float) msg.arg2 / 10; + helper._setVolume(msg.arg1, volume); + break; + } + default: + break; + } + + super.handleMessage(msg); + } + } + + public static native void nativeExecuteVideoCallback(int index,int event); + + OnVideoEventListener videoEventListener = new OnVideoEventListener() { + + @Override + public void onVideoEvent(int tag,int event) { + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeExecuteVideoCallback(tag, event); + } + }); + } + }; + + public static int createVideoWidget() { + Message msg = new Message(); + msg.what = VideoTaskCreate; + msg.arg1 = videoTag; + mVideoHandler.sendMessage(msg); + + return videoTag++; + } + + private void _createVideoView(int index) { + CocosVideoView videoView = new CocosVideoView(mActivity,index); + sVideoViews.put(index, videoView); + FrameLayout.LayoutParams lParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.WRAP_CONTENT, + FrameLayout.LayoutParams.WRAP_CONTENT); + mLayout.addView(videoView, lParams); + + videoView.setZOrderOnTop(true); + videoView.setVideoViewEventListener(videoEventListener); + } + + public static void removeVideoWidget(int index){ + Message msg = new Message(); + msg.what = VideoTaskRemove; + msg.arg1 = index; + mVideoHandler.sendMessage(msg); + } + + private void _removeVideoView(int index) { + CocosVideoView view = sVideoViews.get(index); + if (view != null) { + view.stopPlayback(); + sVideoViews.remove(index); + mLayout.removeView(view); + } + } + + public static void setVideoUrl(int index, int videoSource, String videoUrl) { + Message msg = new Message(); + msg.what = VideoTaskSetSource; + msg.arg1 = index; + msg.arg2 = videoSource; + msg.obj = videoUrl; + mVideoHandler.sendMessage(msg); + } + + private void _setVideoURL(int index, int videoSource, String videoUrl) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + switch (videoSource) { + case 0: + videoView.setVideoFileName(videoUrl); + break; + case 1: + videoView.setVideoURL(videoUrl); + break; + default: + break; + } + } + } + + public static void setVideoRect(int index, int left, int top, int maxWidth, int maxHeight) { + Message msg = new Message(); + msg.what = VideoTaskSetRect; + msg.arg1 = index; + msg.obj = new Rect(left, top, maxWidth, maxHeight); + mVideoHandler.sendMessage(msg); + } + + private void _setVideoRect(int index, int left, int top, int maxWidth, int maxHeight) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.setVideoRect(left, top, maxWidth, maxHeight); + } + } + + public static void setFullScreenEnabled(int index, boolean enabled) { + Message msg = new Message(); + msg.what = VideoTaskFullScreen; + msg.arg1 = index; + if (enabled) { + msg.arg2 = 1; + } else { + msg.arg2 = 0; + } + mVideoHandler.sendMessage(msg); + } + + private void _setFullScreenEnabled(int index, boolean enabled) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.setFullScreenEnabled(enabled); + } + } + + private void onBackKeyEvent() { + int viewCount = sVideoViews.size(); + for (int i = 0; i < viewCount; i++) { + int key = sVideoViews.keyAt(i); + CocosVideoView videoView = sVideoViews.get(key); + if (videoView != null) { + videoView.setFullScreenEnabled(false); + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + nativeExecuteVideoCallback(key, KeyEventBack); + } + }); + } + } + } + + public static void startVideo(int index) { + Message msg = new Message(); + msg.what = VideoTaskStart; + msg.arg1 = index; + mVideoHandler.sendMessage(msg); + } + + private void _startVideo(int index) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.start(); + } + } + + public static void pauseVideo(int index) { + Message msg = new Message(); + msg.what = VideoTaskPause; + msg.arg1 = index; + mVideoHandler.sendMessage(msg); + } + + private void _pauseVideo(int index) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.pause(); + } + } + + public static void stopVideo(int index) { + Message msg = new Message(); + msg.what = VideoTaskStop; + msg.arg1 = index; + mVideoHandler.sendMessage(msg); + } + + private void _stopVideo(int index) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.stop(); + } + } + + public static void seekVideoTo(int index,int msec) { + Message msg = new Message(); + msg.what = VideoTaskSeek; + msg.arg1 = index; + msg.arg2 = msec; + mVideoHandler.sendMessage(msg); + } + + private void _seekVideoTo(int index,int msec) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.seekTo(msec); + } + } + + public static float getCurrentTime(final int index) { + CocosVideoView video = sVideoViews.get(index); + float currentPosition = -1; + if (video != null) { + currentPosition = video.getCurrentPosition() / 1000.0f; + } + return currentPosition; + } + + public static float getDuration(final int index) { + CocosVideoView video = sVideoViews.get(index); + float duration = -1; + if (video != null) { + duration = video.getDuration() / 1000.0f; + } + if (duration <= 0) { + Log.w("CocosVideoHelper", "Video player's duration is not ready to get now!"); + } + return duration; + } + + public static void setVideoVisible(int index, boolean visible) { + Message msg = new Message(); + msg.what = VideoTaskSetVisible; + msg.arg1 = index; + if (visible) { + msg.arg2 = 1; + } else { + msg.arg2 = 0; + } + + mVideoHandler.sendMessage(msg); + } + + private void _setVideoVisible(int index, boolean visible) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + if (visible) { + videoView.fixSize(); + videoView.setVisibility(View.VISIBLE); + } else { + videoView.setVisibility(View.INVISIBLE); + } + } + } + + public static void setVideoKeepRatioEnabled(int index, boolean enable) { + Message msg = new Message(); + msg.what = VideoTaskKeepRatio; + msg.arg1 = index; + if (enable) { + msg.arg2 = 1; + } else { + msg.arg2 = 0; + } + mVideoHandler.sendMessage(msg); + } + + private void _setVideoKeepRatio(int index, boolean enable) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.setKeepRatio(enable); + } + } + + private void _setVolume(final int index, final float volume) { + CocosVideoView videoView = sVideoViews.get(index); + if (videoView != null) { + videoView.setVolume(volume); + } + } + + public static void setVolume(final int index, final float volume) { + Message msg = new Message(); + msg.what = VideoTaskSetVolume; + msg.arg1 = index; + msg.arg2 = (int) (volume * 10); + mVideoHandler.sendMessage(msg); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoView.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoView.java new file mode 100644 index 0000000..a5fad59 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosVideoView.java @@ -0,0 +1,595 @@ +/* + * Copyright (C) 2006 The Android Open Source Project + * Copyright (c) 2014-2016 Chukong Technologies Inc. + * Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.cocos.lib; + +import android.annotation.TargetApi; +import android.app.AlertDialog; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.res.AssetFileDescriptor; +import android.content.res.Resources; +import android.media.AudioManager; +import android.media.MediaPlayer; +import android.net.Uri; +import android.os.Build; +import android.util.Log; +import android.view.MotionEvent; +import android.view.SurfaceHolder; +import android.view.SurfaceView; +import android.widget.FrameLayout; +import android.app.Activity; +import android.graphics.Point; + +import java.io.IOException; +import java.lang.reflect.Method; +import java.util.Map; + +public class CocosVideoView extends SurfaceView { + + // =========================================================== + // Internal classes and interfaces. + // =========================================================== + + public interface OnVideoEventListener { + void onVideoEvent(int tag,int event); + } + + private enum State { + IDLE, + ERROR, + INITIALIZED, + PREPARING, + PREPARED, + STARTED, + PAUSED, + STOPPED, + PLAYBACK_COMPLETED, + } + + // =========================================================== + // Constants + // =========================================================== + private static final String AssetResourceRoot = "@assets/"; + + // =========================================================== + // Fields + // =========================================================== + + private String TAG = "CocosVideoView"; + + private Uri mVideoUri; + private int mDuration; + private int mPosition; + + private State mCurrentState = State.IDLE; + + // All the stuff we need for playing and showing a video + private SurfaceHolder mSurfaceHolder = null; + private MediaPlayer mMediaPlayer = null; + private int mVideoWidth = 0; + private int mVideoHeight = 0; + + private OnVideoEventListener mOnVideoEventListener; + + // recording the seek position while preparing + private int mSeekWhenPrepared = 0; + + protected Activity mActivity = null; + + protected int mViewLeft = 0; + protected int mViewTop = 0; + protected int mViewWidth = 0; + protected int mViewHeight = 0; + + protected int mVisibleLeft = 0; + protected int mVisibleTop = 0; + protected int mVisibleWidth = 0; + protected int mVisibleHeight = 0; + + protected boolean mFullScreenEnabled = false; + + private boolean mIsAssetRouse = false; + private String mVideoFilePath = null; + + private int mViewTag = 0; + private boolean mKeepRatio = false; + private boolean mMetaUpdated = false; + + // MediaPlayer will be released when surface view is destroyed, so should record the position, + // and use it to play after MedialPlayer is created again. + private int mPositionBeforeRelease = 0; + + // =========================================================== + // Constructors + // =========================================================== + + public CocosVideoView(Activity activity, int tag) { + super(activity); + + mViewTag = tag; + mActivity = activity; + initVideoView(); + } + + // =========================================================== + // Getter & Setter + // =========================================================== + + public void setVideoRect(int left, int top, int maxWidth, int maxHeight) { + if (mViewLeft == left && mViewTop == top && mViewWidth == maxWidth && mViewHeight == maxHeight) + return; + + mViewLeft = left; + mViewTop = top; + mViewWidth = maxWidth; + mViewHeight = maxHeight; + + fixSize(mViewLeft, mViewTop, mViewWidth, mViewHeight); + } + + public void setFullScreenEnabled(boolean enabled) { + if (mFullScreenEnabled != enabled) { + mFullScreenEnabled = enabled; + fixSize(); + } + } + + public void setVolume (float volume) { + if (mMediaPlayer != null) { + mMediaPlayer.setVolume(volume, volume); + } + } + + public void setKeepRatio(boolean enabled) { + mKeepRatio = enabled; + fixSize(); + } + + public void setVideoURL(String url) { + mIsAssetRouse = false; + setVideoURI(Uri.parse(url), null); + } + + public void setVideoFileName(String path) { + if (path.startsWith(AssetResourceRoot)) { + path = path.substring(AssetResourceRoot.length()); + } + + if (path.startsWith("/")) { + mIsAssetRouse = false; + setVideoURI(Uri.parse(path),null); + } + else { + + mVideoFilePath = path; + mIsAssetRouse = true; + setVideoURI(Uri.parse(path), null); + } + } + + public int getCurrentPosition() { + if (! (mCurrentState == State.IDLE || + mCurrentState == State.ERROR || + mCurrentState == State.INITIALIZED || + mCurrentState == State.STOPPED || + mMediaPlayer == null) ) { + mPosition = mMediaPlayer.getCurrentPosition(); + } + return mPosition; + } + + public int getDuration() { + if (! (mCurrentState == State.IDLE || + mCurrentState == State.ERROR || + mCurrentState == State.INITIALIZED || + mCurrentState == State.STOPPED || + mMediaPlayer == null) ) { + mDuration = mMediaPlayer.getDuration(); + } + + return mDuration; + } + + /** + * Register a callback to be invoked when some video event triggered. + * + * @param l The callback that will be run + */ + public void setVideoViewEventListener(OnVideoEventListener l) + { + mOnVideoEventListener = l; + } + + // =========================================================== + // Overrides + // =========================================================== + + @Override + public void setVisibility(int visibility) { + super.setVisibility(visibility); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(mVisibleWidth, mVisibleHeight); + } + + @Override + public boolean onTouchEvent(MotionEvent event) { + if ((event.getAction() & MotionEvent.ACTION_MASK) == MotionEvent.ACTION_UP) { + this.sendEvent(EVENT_CLICKED); + } + return true; + } + + // =========================================================== + // Public functions + // =========================================================== + + public void stop() { + if (!(mCurrentState == State.IDLE || mCurrentState == State.INITIALIZED || mCurrentState == State.ERROR || mCurrentState == State.STOPPED) + && mMediaPlayer != null) { + mCurrentState = State.STOPPED; + mMediaPlayer.stop(); + this.sendEvent(EVENT_STOPPED); + + // after the video is stop, it shall prepare to be playable again + try { + mMediaPlayer.prepare(); + this.showFirstFrame(); + } catch (Exception ex) {} + } + } + + public void stopPlayback() { + this.release(); + } + + public void start() { + if ((mCurrentState == State.PREPARED || + mCurrentState == State.PAUSED || + mCurrentState == State.PLAYBACK_COMPLETED) && + mMediaPlayer != null) { + + mCurrentState = State.STARTED; + mMediaPlayer.start(); + this.sendEvent(EVENT_PLAYING); + } + } + + public void pause() { + if ((mCurrentState == State.STARTED || mCurrentState == State.PLAYBACK_COMPLETED) && + mMediaPlayer != null) { + mCurrentState = State.PAUSED; + mMediaPlayer.pause(); + this.sendEvent(EVENT_PAUSED); + } + } + + public void seekTo(int ms) { + if (mCurrentState == State.IDLE || mCurrentState == State.INITIALIZED || + mCurrentState == State.STOPPED || mCurrentState == State.ERROR || + mMediaPlayer == null) { + return; + } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + try { + Method seekTo = mMediaPlayer.getClass().getMethod("seekTo", long.class, int.class); + // The mode argument added in API level 26, 3 = MediaPlayer.SEEK_CLOSEST + // https://developer.android.com/reference/android/media/MediaPlayer#seekTo(int) + seekTo.invoke(mMediaPlayer, ms, 3); + } catch (Exception e) { + mMediaPlayer.seekTo(ms); + } + } + else { + mMediaPlayer.seekTo(ms); + } + } + + public void fixSize() { + if (mFullScreenEnabled) { + Point screenSize = new Point(); + mActivity.getWindowManager().getDefaultDisplay().getSize(screenSize); + fixSize(0, 0, screenSize.x, screenSize.y); + } else { + fixSize(mViewLeft, mViewTop, mViewWidth, mViewHeight); + } + } + + public void fixSize(int left, int top, int width, int height) { + if (mVideoWidth == 0 || mVideoHeight == 0) { + mVisibleLeft = left; + mVisibleTop = top; + mVisibleWidth = width; + mVisibleHeight = height; + } + else if (width != 0 && height != 0) { + if (mKeepRatio && !mFullScreenEnabled) { + if ( mVideoWidth * height > width * mVideoHeight ) { + mVisibleWidth = width; + mVisibleHeight = width * mVideoHeight / mVideoWidth; + } else if ( mVideoWidth * height < width * mVideoHeight ) { + mVisibleWidth = height * mVideoWidth / mVideoHeight; + mVisibleHeight = height; + } + mVisibleLeft = left + (width - mVisibleWidth) / 2; + mVisibleTop = top + (height - mVisibleHeight) / 2; + } else { + mVisibleLeft = left; + mVisibleTop = top; + mVisibleWidth = width; + mVisibleHeight = height; + } + } + else { + mVisibleLeft = left; + mVisibleTop = top; + mVisibleWidth = mVideoWidth; + mVisibleHeight = mVideoHeight; + } + + getHolder().setFixedSize(mVisibleWidth, mVisibleHeight); + + FrameLayout.LayoutParams lParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, + FrameLayout.LayoutParams.MATCH_PARENT); + lParams.leftMargin = mVisibleLeft; + lParams.topMargin = mVisibleTop; + setLayoutParams(lParams); + } + + public int resolveAdjustedSize(int desiredSize, int measureSpec) { + int result = desiredSize; + int specMode = MeasureSpec.getMode(measureSpec); + int specSize = MeasureSpec.getSize(measureSpec); + + switch (specMode) { + case MeasureSpec.UNSPECIFIED: + /* Parent says we can be as big as we want. Just don't be larger + * than max size imposed on ourselves. + */ + result = desiredSize; + break; + + case MeasureSpec.AT_MOST: + /* Parent says we can be as big as we want, up to specSize. + * Don't be larger than specSize, and don't be larger than + * the max size imposed on ourselves. + */ + result = Math.min(desiredSize, specSize); + break; + + case MeasureSpec.EXACTLY: + // No choice. Do what we are told. + result = specSize; + break; + } + + return result; + } + + // =========================================================== + // Private functions + // =========================================================== + + private void initVideoView() { + mVideoWidth = 0; + mVideoHeight = 0; + getHolder().addCallback(mSHCallback); + //Fix issue#11516:Can't play video on Android 2.3.x + getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); + setFocusable(true); + setFocusableInTouchMode(true); + mCurrentState = State.IDLE; + } + + /** + * @hide + */ + private void setVideoURI(Uri uri, Map headers) { + mVideoUri = uri; + mVideoWidth = 0; + mVideoHeight = 0; + } + + private void openVideo() { + if (mSurfaceHolder == null) { + // not ready for playback just yet, will try again later + return; + } + if (mIsAssetRouse) { + if(mVideoFilePath == null) + return; + } else if(mVideoUri == null) { + return; + } + + this.pausePlaybackService(); + + try { + mMediaPlayer = new MediaPlayer(); + mMediaPlayer.setOnPreparedListener(mPreparedListener); + mMediaPlayer.setOnCompletionListener(mCompletionListener); + mMediaPlayer.setOnErrorListener(mErrorListener); + mMediaPlayer.setDisplay(mSurfaceHolder); + mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); + mMediaPlayer.setScreenOnWhilePlaying(true); + + if (mIsAssetRouse) { + AssetFileDescriptor afd = mActivity.getAssets().openFd(mVideoFilePath); + mMediaPlayer.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength()); + } else { + mMediaPlayer.setDataSource(mVideoUri.toString()); + } + mCurrentState = State.INITIALIZED; + + + // Use Prepare() instead of PrepareAsync to make things easy. + mMediaPlayer.prepare(); + this.showFirstFrame(); + +// mMediaPlayer.prepareAsync(); + } catch (IOException ex) { + Log.w(TAG, "Unable to open content: " + mVideoUri, ex); + mCurrentState = State.ERROR; + mErrorListener.onError(mMediaPlayer, MediaPlayer.MEDIA_ERROR_UNKNOWN, 0); + return; + } catch (IllegalArgumentException ex) { + Log.w(TAG, "Unable to open content: " + mVideoUri, ex); + mCurrentState = State.ERROR; + mErrorListener.onError(mMediaPlayer, MediaPlayer.MEDIA_ERROR_UNKNOWN, 0); + return; + } + } + + MediaPlayer.OnPreparedListener mPreparedListener = new MediaPlayer.OnPreparedListener() { + public void onPrepared(MediaPlayer mp) { + mVideoWidth = mp.getVideoWidth(); + mVideoHeight = mp.getVideoHeight(); + + if (mVideoWidth != 0 && mVideoHeight != 0) { + fixSize(); + } + + if(!mMetaUpdated) { + CocosVideoView.this.sendEvent(EVENT_META_LOADED); + CocosVideoView.this.sendEvent(EVENT_READY_TO_PLAY); + mMetaUpdated = true; + } + + mCurrentState = State.PREPARED; + + if (mPositionBeforeRelease > 0) { + CocosVideoView.this.start(); + CocosVideoView.this.seekTo(mPositionBeforeRelease); + mPositionBeforeRelease = 0; + } + } + }; + + private MediaPlayer.OnCompletionListener mCompletionListener = + new MediaPlayer.OnCompletionListener() { + public void onCompletion(MediaPlayer mp) { + mCurrentState = State.PLAYBACK_COMPLETED; + CocosVideoView.this.sendEvent(EVENT_COMPLETED); + } + }; + + + private static final int EVENT_PLAYING = 0; + private static final int EVENT_PAUSED = 1; + private static final int EVENT_STOPPED = 2; + private static final int EVENT_COMPLETED = 3; + private static final int EVENT_META_LOADED = 4; + private static final int EVENT_CLICKED = 5; + private static final int EVENT_READY_TO_PLAY = 6; + + private MediaPlayer.OnErrorListener mErrorListener = + new MediaPlayer.OnErrorListener() { + public boolean onError(MediaPlayer mp, int framework_err, int impl_err) { + Log.d(TAG, "Error: " + framework_err + "," + impl_err); + mCurrentState = State.ERROR; + + /* Otherwise, pop up an error dialog so the user knows that + * something bad has happened. Only try and pop up the dialog + * if we're attached to a window. When we're going away and no + * longer have a window, don't bother showing the user an error. + */ + if (getWindowToken() != null) { + Resources r = mActivity.getResources(); + int messageId; + + if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) { + // messageId = com.android.internal.R.string.VideoView_error_text_invalid_progressive_playback; + messageId = r.getIdentifier("VideoView_error_text_invalid_progressive_playback", "string", "android"); + } else { + // messageId = com.android.internal.R.string.VideoView_error_text_unknown; + messageId = r.getIdentifier("VideoView_error_text_unknown", "string", "android"); + } + + int titleId = r.getIdentifier("VideoView_error_title", "string", "android"); + int buttonStringId = r.getIdentifier("VideoView_error_button", "string", "android"); + + new AlertDialog.Builder(mActivity) + .setTitle(r.getString(titleId)) + .setMessage(messageId) + .setPositiveButton(r.getString(buttonStringId), + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + /* If we get here, there is no onError listener, so + * at least inform them that the video is over. + */ + CocosVideoView.this.sendEvent(EVENT_COMPLETED); + } + }) + .setCancelable(false) + .show(); + } + return true; + } + }; + + SurfaceHolder.Callback mSHCallback = new SurfaceHolder.Callback() + { + public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) { + } + + public void surfaceCreated(SurfaceHolder holder) { + mSurfaceHolder = holder; + CocosVideoView.this.openVideo(); + } + + public void surfaceDestroyed(SurfaceHolder holder) { + // after we return from this we can't use the surface any more + mSurfaceHolder = null; + mPositionBeforeRelease = getCurrentPosition(); + CocosVideoView.this.release(); + } + }; + + /* + * release the media player in any state + */ + private void release() { + if (mMediaPlayer != null) { + mMediaPlayer.release(); + mMediaPlayer = null; + mCurrentState = State.IDLE; + } + } + + private void showFirstFrame() { + mMediaPlayer.seekTo(1); + } + + private void sendEvent(int event) { + if (this.mOnVideoEventListener != null) { + this.mOnVideoEventListener.onVideoEvent(this.mViewTag, event); + } + } + + // Tell the music playback service to pause + // REFINE: these constants need to be published somewhere in the framework. + private void pausePlaybackService() { + Intent i = new Intent("com.android.music.musicservicecommand"); + i.putExtra("command", "pause"); + mActivity.sendBroadcast(i); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebView.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebView.java new file mode 100755 index 0000000..59d4692 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebView.java @@ -0,0 +1,175 @@ +/**************************************************************************** + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +package com.cocos.lib; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.util.Log; +import android.webkit.WebChromeClient; +import android.webkit.WebView; +import android.webkit.WebViewClient; +import android.widget.FrameLayout; + +import java.lang.reflect.Method; +import java.net.URI; +import java.util.concurrent.CountDownLatch; + + class ShouldStartLoadingWorker implements Runnable { + private CountDownLatch mLatch; + private boolean[] mResult; + private final int mViewTag; + private final String mUrlString; + + ShouldStartLoadingWorker(CountDownLatch latch, boolean[] result, int viewTag, String urlString) { + this.mLatch = latch; + this.mResult = result; + this.mViewTag = viewTag; + this.mUrlString = urlString; + } + + @Override + public void run() { + this.mResult[0] = CocosWebViewHelper._shouldStartLoading(mViewTag, mUrlString); + this.mLatch.countDown(); // notify that result is ready + } + } + + public class CocosWebView extends WebView { + private static final String TAG = CocosWebViewHelper.class.getSimpleName(); + + private int mViewTag; + private String mJSScheme; + + public CocosWebView(Context context) { + this(context, -1); + } + + @SuppressLint("SetJavaScriptEnabled") + public CocosWebView(Context context, int viewTag) { + super(context); + this.mViewTag = viewTag; + this.mJSScheme = ""; + + this.setFocusable(true); + this.setFocusableInTouchMode(true); + + this.getSettings().setSupportZoom(false); + + this.getSettings().setDomStorageEnabled(true); + this.getSettings().setJavaScriptEnabled(true); + + // `searchBoxJavaBridge_` has big security risk. http://jvn.jp/en/jp/JVN53768697 + try { + Method method = this.getClass().getMethod("removeJavascriptInterface", new Class[]{String.class}); + method.invoke(this, "searchBoxJavaBridge_"); + } catch (Exception e) { + Log.d(TAG, "This API level do not support `removeJavascriptInterface`"); + } + + this.setWebViewClient(new Cocos2dxWebViewClient()); + this.setWebChromeClient(new WebChromeClient()); + } + + public void setJavascriptInterfaceScheme(String scheme) { + this.mJSScheme = scheme != null ? scheme : ""; + } + + public void setScalesPageToFit(boolean scalesPageToFit) { + this.getSettings().setSupportZoom(scalesPageToFit); + } + + class Cocos2dxWebViewClient extends WebViewClient { + @Override + public boolean shouldOverrideUrlLoading(WebView view, final String urlString) { + CocosActivity activity = (CocosActivity)GlobalObject.getActivity(); + + try { + URI uri = URI.create(urlString); + if (uri != null && uri.getScheme().equals(mJSScheme)) { + activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebViewHelper._onJsCallback(mViewTag, urlString); + } + }); + return true; + } + } catch (Exception e) { + Log.d(TAG, "Failed to create URI from url"); + } + + boolean[] result = new boolean[] { true }; + CountDownLatch latch = new CountDownLatch(1); + + // run worker on cocos thread + activity.runOnUiThread(new ShouldStartLoadingWorker(latch, result, mViewTag, urlString)); + + // wait for result from cocos thread + try { + latch.await(); + } catch (InterruptedException ex) { + Log.d(TAG, "'shouldOverrideUrlLoading' failed"); + } + + return result[0]; + } + + @Override + public void onPageFinished(WebView view, final String url) { + super.onPageFinished(view, url); + + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + CocosWebViewHelper._didFinishLoading(mViewTag, url); + } + }); + } + + @Override + public void onReceivedError(WebView view, int errorCode, String description, final String failingUrl) { + super.onReceivedError(view, errorCode, description, failingUrl); + + CocosHelper.runOnGameThread(new Runnable() { + @Override + public void run() { + CocosWebViewHelper._didFailLoading(mViewTag, failingUrl); + } + }); + } + } + + public void setWebViewRect(int left, int top, int maxWidth, int maxHeight) { + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.MATCH_PARENT, + FrameLayout.LayoutParams.MATCH_PARENT); + layoutParams.leftMargin = left; + layoutParams.topMargin = top; + layoutParams.width = maxWidth; + layoutParams.height = maxHeight; + this.setLayoutParams(layoutParams); + } + } diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebViewHelper.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebViewHelper.java new file mode 100755 index 0000000..0c5ab11 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/CocosWebViewHelper.java @@ -0,0 +1,312 @@ +/**************************************************************************** + Copyright (c) 2010-2011 cocos2d-x.org + Copyright (c) 2013-2016 Chukong Technologies Inc. + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.graphics.Color; +import android.os.Handler; +import android.os.Looper; +import android.util.SparseArray; +import android.view.View; +import android.webkit.WebView; +import android.widget.FrameLayout; +import android.widget.PopupWindow; + +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.FutureTask; + + +public class CocosWebViewHelper { + private static final String TAG = CocosWebViewHelper.class.getSimpleName(); + private static Handler sHandler; + private static CocosActivity sCocos2Activity; + private static PopupWindow sPopUp; + private static FrameLayout sLayout; + + private static SparseArray webViews; + private static int viewTag = 0; + + public CocosWebViewHelper(FrameLayout layout) { + + CocosWebViewHelper.sLayout = layout; + CocosWebViewHelper.sHandler = new Handler(Looper.myLooper()); + + CocosWebViewHelper.sCocos2Activity = (CocosActivity) GlobalObject.getActivity(); + CocosWebViewHelper.webViews = new SparseArray(); + } + + private static native boolean shouldStartLoading(int index, String message); + private static native void didFinishLoading(int index, String message); + private static native void didFailLoading(int index, String message); + private static native void onJsCallback(int index, String message); + + public static boolean _shouldStartLoading(int index, String message) { return !shouldStartLoading(index, message); } + public static void _didFinishLoading(int index, String message) { didFinishLoading(index, message); } + public static void _didFailLoading(int index, String message) { didFailLoading(index, message); } + public static void _onJsCallback(int index, String message) { onJsCallback(index, message); } + + public static int createWebView() { + final int index = viewTag; + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = new CocosWebView(sCocos2Activity, index); + FrameLayout.LayoutParams lParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.WRAP_CONTENT, + FrameLayout.LayoutParams.WRAP_CONTENT); + sLayout.addView(webView, lParams); + + webViews.put(index, webView); + } + }); + return viewTag++; + } + + public static void removeWebView(final int index) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webViews.remove(index); + sLayout.removeView(webView); + webView.destroy(); + webView = null; + } + } + }); + } + + public static void setVisible(final int index, final boolean visible) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.setVisibility(visible ? View.VISIBLE : View.GONE); + } + } + }); + } + + public static void setWebViewRect(final int index, final int left, final int top, final int maxWidth, final int maxHeight) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.setWebViewRect(left, top, maxWidth, maxHeight); + } + } + }); + } + + public static void setBackgroundTransparent(final int index, final boolean isTransparent) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.setBackgroundColor(isTransparent ? Color.TRANSPARENT : Color.WHITE); + webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null); + } + } + }); + } + + public static void setJavascriptInterfaceScheme(final int index, final String scheme) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.setJavascriptInterfaceScheme(scheme); + } + } + }); + } + + public static void loadData(final int index, final String data, final String mimeType, final String encoding, final String baseURL) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.loadDataWithBaseURL(baseURL, data, mimeType, encoding, null); + } + } + }); + } + + public static void loadHTMLString(final int index, final String data, final String baseUrl) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.loadDataWithBaseURL(baseUrl, data, null, null, null); + } + } + }); + } + + public static void loadUrl(final int index, final String url) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.loadUrl(url); + } + } + }); + } + + public static void loadFile(final int index, final String filePath) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.loadUrl(filePath); + } + } + }); + } + + public static void stopLoading(final int index) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.stopLoading(); + } + } + }); + + } + + public static void reload(final int index) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.reload(); + } + } + }); + } + + public static T callInMainThread(Callable call) throws ExecutionException, InterruptedException { + FutureTask task = new FutureTask(call); + sHandler.post(task); + return task.get(); + } + + public static boolean canGoBack(final int index) { + Callable callable = new Callable() { + @Override + public Boolean call() throws Exception { + CocosWebView webView = webViews.get(index); + return webView != null && webView.canGoBack(); + } + }; + try { + return callInMainThread(callable); + } catch (ExecutionException e) { + return false; + } catch (InterruptedException e) { + return false; + } + } + + public static boolean canGoForward(final int index) { + Callable callable = new Callable() { + @Override + public Boolean call() throws Exception { + CocosWebView webView = webViews.get(index); + return webView != null && webView.canGoForward(); + } + }; + try { + return callInMainThread(callable); + } catch (ExecutionException e) { + return false; + } catch (InterruptedException e) { + return false; + } + } + + public static void goBack(final int index) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.goBack(); + } + } + }); + } + + public static void goForward(final int index) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.goForward(); + } + } + }); + } + + public static void evaluateJS(final int index, final String js) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.loadUrl("javascript:" + js); + } + } + }); + } + + public static void setScalesPageToFit(final int index, final boolean scalesPageToFit) { + sCocos2Activity.runOnUiThread(new Runnable() { + @Override + public void run() { + CocosWebView webView = webViews.get(index); + if (webView != null) { + webView.setScalesPageToFit(scalesPageToFit); + } + } + }); + } +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/GlobalObject.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/GlobalObject.java new file mode 100644 index 0000000..17510d6 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/GlobalObject.java @@ -0,0 +1,38 @@ +/**************************************************************************** + Copyright (c) 2020 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.app.Activity; + +public class GlobalObject { + private static Activity sActivity = null; + + public static void setActivity(Activity activity) { + GlobalObject.sActivity = activity; + } + + public static Activity getActivity() { + return GlobalObject.sActivity; + } +} \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/Utils.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/Utils.java new file mode 100644 index 0000000..df5f9a7 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/com/cocos/lib/Utils.java @@ -0,0 +1,61 @@ +/**************************************************************************** + Copyright (c) 2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +package com.cocos.lib; + +import android.os.Build; +import android.view.View; + +public class Utils { + + public static void hideVirtualButton() { + if (Build.VERSION.SDK_INT >= 19 && + null != GlobalObject.getActivity()) { + // use reflection to remove dependence of API level + + Class viewClass = View.class; + final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION"); + final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN"); + final int SYSTEM_UI_FLAG_HIDE_NAVIGATION = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_HIDE_NAVIGATION"); + final int SYSTEM_UI_FLAG_FULLSCREEN = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_FULLSCREEN"); + final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_IMMERSIVE_STICKY"); + final int SYSTEM_UI_FLAG_LAYOUT_STABLE = CocosReflectionHelper.getConstantValue(viewClass, "SYSTEM_UI_FLAG_LAYOUT_STABLE"); + + // getWindow().getDecorView().setSystemUiVisibility(); + final Object[] parameters = new Object[]{SYSTEM_UI_FLAG_LAYOUT_STABLE + | SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar + | SYSTEM_UI_FLAG_FULLSCREEN // hide status bar + | SYSTEM_UI_FLAG_IMMERSIVE_STICKY}; + + ////blank 注释掉才可以全屏显示到状态栏 + /* + CocosReflectionHelper.invokeInstanceMethod(GlobalObject.getActivity().getWindow().getDecorView(), + "setSystemUiVisibility", + new Class[]{Integer.TYPE}, + parameters); + */ + } + } +} \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeIntf.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeIntf.java new file mode 100644 index 0000000..563af59 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeIntf.java @@ -0,0 +1,57 @@ +package cx; + +import com.cocos.lib.CocosHelper; +import com.cocos.lib.CocosJavascriptJavaBridge; + +import cx.mask.MaskIntf; +import cx.sys.SysIntf; + +public class NativeIntf +{ + public interface JsInterface + { + String call(NativeParams params); + } + + private static JsInterface jsInterface = null; + public static void setJsIntf(JsInterface jsInterface) + { + NativeIntf.jsInterface = jsInterface; + } + + public static String call(String classname, String fname, String params) + { + NativeParams nativeParams = new NativeParams(classname, fname, params.split("#@#")); + if (classname.equals("cx.sys")) + return SysIntf.ins().call(nativeParams); + + if (classname.equals("cx.mask")) + return MaskIntf.ins().call(nativeParams); + + if (jsInterface != null) + return jsInterface.call(nativeParams); + + return ""; + } + + public static void callJs(final String classname, final int v1, final String v2) + { + CocosHelper.runOnGameThread(new Runnable() + { + @Override + public void run() + { + CocosJavascriptJavaBridge.evalString("cx.native.androidCallback('" + classname + "'," + v1 + ",'" + v2 + "')"); + } + }); + } + +// CocosActivity.app.runOnUiThread(new Runnable() +// { +// @Override +// public void run() +// { +// +// } +// }); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeParams.java b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeParams.java new file mode 100644 index 0000000..65ac550 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libcc/src/cx/NativeParams.java @@ -0,0 +1,58 @@ +package cx; + +public class NativeParams +{ + public class NativeParam + { + private String param; + + public NativeParam(String param) + { + this.param = param; + } + + public String asString() + { + return param; + } + + public int asInt() + { + return Integer.parseInt(param); + } + + public float asFloat() + { + return Float.parseFloat(param); + } + + public boolean asBool() + { + return Boolean.parseBoolean(param); + } + } + + public String classname; + public String fname; + private String[] params; + public NativeParams(String classname, String fname, String[] params) + { + this.classname = classname; + this.fname = fname; + this.params = params; + } + + public NativeParam at(int index) + { + return new NativeParam(params[index]); + } + + @Override + public String toString() + { + String s = ""; + for (int i=0; i maskMap = new HashMap<>(); + public void createMask(String maskName, float rectX, float rectY, float rectW, float rectH) + { + if (!maskMap.containsKey(maskName)) + { + MaskView maskView = new MaskView(); + maskView.initFrame(Math.round(rectX), Math.round(rectY), Math.round(rectW), Math.round(rectH)); + maskMap.put(maskName, maskView); + } + } + + public void addNativeView(String maskName, View view, String viewTag, FrameLayout.LayoutParams params) + { + MaskView maskView = maskMap.get(maskName); + if (maskView != null) + { + view.setTag(viewTag); + maskView.contentView.addView(view, params); + } + } + + public boolean hasNativeView(String maskName, String viewTag) + { + MaskView maskView = maskMap.get(maskName); + if (maskView != null) + { + int count = maskView.contentView.getChildCount(); + for (int i=0; i + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/app/build.gradle b/cx-framework3.1/cocos3-libs/cocos3-libso/app/build.gradle new file mode 100644 index 0000000..a1763dd --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/app/build.gradle @@ -0,0 +1,81 @@ +apply plugin: 'com.android.application' + +RES_PATH = RES_PATH.replace("\\", "/") +COCOS_ENGINE_PATH = COCOS_ENGINE_PATH.replace("\\", "/") + +buildDir = "${RES_PATH}/build/$project.name" +android { + compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger() + buildToolsVersion PROP_BUILD_TOOLS_VERSION + // ndkPath PROP_NDK_PATH + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + defaultConfig { + applicationId APPLICATION_ID + minSdkVersion PROP_MIN_SDK_VERSION + targetSdkVersion PROP_TARGET_SDK_VERSION + versionCode 1 + versionName "1.0" + + externalNativeBuild { + cmake { + targets "cocos" + arguments "-DRES_DIR=${RES_PATH}", "-DCOCOS_X_PATH=${COCOS_ENGINE_PATH}", "-DANDROID_STL=c++_static", "-DANDROID_TOOLCHAIN=clang", "-DANDROID_ARM_NEON=TRUE", "-DANDROID_LD=gold" + cppFlags "-frtti -fexceptions -fsigned-char" + } + ndk { abiFilters PROP_APP_ABI.split(':') } + } + } + + externalNativeBuild { + cmake { + path "../engine/CMakeLists.txt" + buildStagingDirectory "${RES_PATH}/build" + } + } + + sourceSets.main { + manifest.srcFile "AndroidManifest.xml" + java.srcDirs "src" + jniLibs.srcDirs = ["libs"] + } + + signingConfigs { + release { + if (project.hasProperty("RELEASE_STORE_FILE")) { + storeFile file(RELEASE_STORE_FILE) + storePassword RELEASE_STORE_PASSWORD + keyAlias RELEASE_KEY_ALIAS + keyPassword RELEASE_KEY_PASSWORD + } + } + } + + buildTypes { + release { + debuggable false + jniDebuggable false + renderscriptDebuggable false + minifyEnabled true + shrinkResources true + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + if (project.hasProperty("RELEASE_STORE_FILE")) { + signingConfig signingConfigs.release + } + } + + debug { + debuggable true + jniDebuggable true + renderscriptDebuggable true + } + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar','*.aar']) +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/app/proguard-rules.pro b/cx-framework3.1/cocos3-libs/cocos3-libso/app/proguard-rules.pro new file mode 100644 index 0000000..6057463 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/app/proguard-rules.pro @@ -0,0 +1,40 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in E:\developSoftware\Android\SDK/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Proguard Cocos2d-x-lite for release +-keep public class com.cocos.** { *; } +-dontwarn com.cocos.** + +# Proguard Apache HTTP for release +-keep class org.apache.http.** { *; } +-dontwarn org.apache.http.** + +# Proguard okhttp for release +-keep class okhttp3.** { *; } +-dontwarn okhttp3.** + +-keep class okio.** { *; } +-dontwarn okio.** + +# Proguard Android Webivew for release. you can comment if you are not using a webview +-keep public class android.net.http.SslError +-keep public class android.webkit.WebViewClient + +-dontwarn android.webkit.WebView +-dontwarn android.net.http.SslError +-dontwarn android.webkit.WebViewClient diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/app/src/cx3/blank/so/AppActivity.java b/cx-framework3.1/cocos3-libs/cocos3-libso/app/src/cx3/blank/so/AppActivity.java new file mode 100755 index 0000000..7b7640b --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/app/src/cx3/blank/so/AppActivity.java @@ -0,0 +1,9 @@ +package cx3.blank.so; + + +import android.app.Activity; + +public class AppActivity extends Activity +{ + +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/build.gradle b/cx-framework3.1/cocos3-libs/cocos3-libso/build.gradle new file mode 100644 index 0000000..63ad57d --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/build.gradle @@ -0,0 +1,28 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + + repositories { + google() + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:3.2.0' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + jcenter() + + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/engine/CMakeLists.txt b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/CMakeLists.txt new file mode 100755 index 0000000..ae36c4c --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/CMakeLists.txt @@ -0,0 +1,53 @@ +cmake_minimum_required(VERSION 3.8) + +option(APP_NAME "Project Name" "cx3-so") +project(${APP_NAME} CXX) + +include(${CMAKE_CURRENT_LIST_DIR}/common/CMakeLists.txt) + + +set(LIB_NAME cocos) + +set(PROJ_SOURCES + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxCreator.h + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxCreator.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxDefine.h + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxIntf.h + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxIntf.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxJsb.hpp + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/cxJsb.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/Game.h + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/Game.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/jsb_module_register.cpp + ${CMAKE_CURRENT_LIST_DIR}/jni/main.cpp +) + +# -------------- SRART --------------- +# USED BY COCOS SERVICE, DON'T REMOVE! +if(EXISTS ${RES_DIR}/service.cmake) + set(SERVICE_NATIVE_DIR ${CMAKE_CURRENT_LIST_DIR}) + include(${RES_DIR}/service.cmake) +endif() +# -------------- END ---------------- + +#list(APPEND PROJ_SOURCES +# ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native/jsb_module_register.cpp +#) + +add_library(${LIB_NAME} SHARED ${PROJ_SOURCES}) + +# -------------- SRART --------------- +# USED BY COCOS SERVICE, DON'T REMOVE! +if(COMMAND service_insert_library) + service_insert_library() +endif() +# -------------- END ---------------- + +target_link_libraries(${LIB_NAME} + "-Wl,--whole-archive" cocos2d_jni "-Wl,--no-whole-archive" + cocos2d +) + +target_include_directories(${LIB_NAME} PRIVATE + ${CMAKE_CURRENT_LIST_DIR}/../../../cx-native +) diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/engine/build-cfg.json b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/build-cfg.json new file mode 100644 index 0000000..fb658e2 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/build-cfg.json @@ -0,0 +1,8 @@ +{ + "ndk_module_path" :[ + "${COCOS_ROOT}", + "${COCOS_ROOT}/cocos", + "${COCOS_ROOT}/external" + ], + "copy_resources": [] +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/engine/cfg.cmake b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/cfg.cmake new file mode 100644 index 0000000..5afe31b --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/cfg.cmake @@ -0,0 +1,13 @@ +set(CC_USE_GLES3 ON) +set(CC_USE_GLES2 ON) +set(APP_NAME cx3-so) +set(COCOS_X_PATH "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native") +set(CC_USE_VULKAN OFF) +set(USE_PHYSICS_PHYSX OFF) +set(USE_AUDIO ON) +set(USE_VIDEO ON) +set(USE_WEBVIEW ON) +set(USE_SPINE OFF) +set(USE_DRAGONBONES ON) +set(USE_JOB_SYSTEM_TBB ON) + diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/engine/common/CMakeLists.txt b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/common/CMakeLists.txt new file mode 100755 index 0000000..0af4ac6 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/common/CMakeLists.txt @@ -0,0 +1,64 @@ +enable_language(C ASM) + + +set(DEVELOPMENT_TEAM "" CACHE STRING "APPLE Developtment Team") +set(RES_DIR "" CACHE STRING "Resource path") +set(COCOS_X_PATH "" CACHE STRING "Path to cocos2d-x-lite/") + +set(TARGET_OSX_VERSION "10.14" CACHE STRING "Target MacOSX version" FORCE) +set(TARGET_IOS_VERSION "12.0" CACHE STRING "Target iOS version" FORCE) + +set(CMAKE_CXX_STANDARD 14) +option(USE_SE_V8 "Use V8 JavaScript Engine" ON) +option(USE_V8_DEBUGGER "Enable Chrome Remote inspector" OFF) +option(USE_SOCKET "Enable WebSocket & SocketIO" OFF) +option(USE_AUDIO "Enable Audio" ON) #Enable AudioEngine +option(USE_EDIT_BOX "Enable EditBox" ON) +option(USE_SE_JSC "Use JavaScriptCore on MacOSX/iOS" OFF) +option(USE_VIDEO "Enable VideoPlayer Component" ON) +option(USE_WEBVIEW "Enable WebView Component" ON) +option(USE_MIDDLEWARE "Enable Middleware" ON) +option(USE_DRAGONBONES "Enable Dragonbones" ON) +option(USE_SPINE "Enable Spine" OFF) +option(USE_WEBSOCKET_SERVER "Enable WebSocket Server" OFF) +option(USE_JOB_SYSTEM_TASKFLOW "Use taskflow as job system backend" OFF) +option(USE_JOB_SYSTEM_TBB "Use tbb as job system backend" OFF) +option(USE_PHYSICS_PHYSX "USE PhysX Physics" OFF) + +if(NOT RES_DIR) + message(FATAL_ERROR "RES_DIR is not set!") +endif() + +include(${RES_DIR}/engine/cfg.cmake) + +if(NOT COCOS_X_PATH) + message(FATAL_ERROR "COCOS_X_PATH is not set!") +endif() + +include(${COCOS_X_PATH}/CMakeLists.txt) + +set(ASSET_FILES) +macro(include_resources ARG_RES_ROOT) + foreach(res ${ARG_RES_ROOT}) + set(res_list) + if(NOT EXISTS ${res}) + continue() + endif() + + if(IS_DIRECTORY ${res}) + file(GLOB_RECURSE res_list "${res}/*") + else() + set(res_list ${res}) + endif() + foreach(res ${res_list}) + get_filename_component(res_abs ${res} ABSOLUTE) + file(RELATIVE_PATH res_rel ${ARG_RES_ROOT} ${res_abs}) + get_filename_component(res_dir ${res_rel} PATH) + set_source_files_properties(${res_abs} PROPERTIES + MACOSX_PACKAGE_LOCATION "Resources/${res_dir}/" + HEADER_FILE_ONLY 1 + ) + list(APPEND ASSET_FILES ${res_abs}) + endforeach() + endforeach() +endmacro() \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/engine/jni/main.cpp b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/jni/main.cpp new file mode 100644 index 0000000..df0090b --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/engine/jni/main.cpp @@ -0,0 +1,29 @@ +/**************************************************************************** + Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#include "Game.h" + +cc::Application *cocos_main(int width, int height) { + return new Game(width, height); +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/gradle.properties b/cx-framework3.1/cocos3-libs/cocos3-libso/gradle.properties new file mode 100644 index 0000000..643dbc0 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/gradle.properties @@ -0,0 +1,38 @@ +# Project-wide Gradle settings. + +android.injected.testOnly=false + +# Android SDK version that will be used as the compile project +PROP_COMPILE_SDK_VERSION=28 + +# Android SDK version that will be used as the earliest version of android this application can run on +PROP_MIN_SDK_VERSION=21 + +# Android SDK version that will be used as the latest version of android this application has been tested on +PROP_TARGET_SDK_VERSION=27 + +# Android Build Tools version that will be used as the compile project +PROP_BUILD_TOOLS_VERSION=28.0.2 + +PROP_NDK_PATH=/Users/blank/Library/Android/sdk/ndk-bundle + +# Cocos Engine Path +COCOS_ENGINE_PATH=/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native + +# Res path +RES_PATH=/Users/blank/ccapp3/cx-framework3.1/cocos3-libs/cocos3-libso + +# Application ID +APPLICATION_ID=cx3.blank.so + +# List of CPU Archtexture to build that application with +# Available architextures (armeabi-v7a | arm64-v8a | x86) +# To build for multiple architexture, use the `:` between them +# Example - PROP_APP_ABI=armeabi-v7a +#PROP_APP_ABI=armeabi-v7a:x86_64 +PROP_APP_ABI=armeabi-v7a + +RELEASE_STORE_FILE=/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/tools/keystore/debug.keystore +RELEASE_STORE_PASSWORD=123456 +RELEASE_KEY_ALIAS=debug_keystore +RELEASE_KEY_PASSWORD=123456 diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/gradle/wrapper/gradle-wrapper.properties b/cx-framework3.1/cocos3-libs/cocos3-libso/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..0693485 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Wed May 05 22:20:29 CST 2021 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-all.zip diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew b/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew new file mode 100755 index 0000000..91a7e26 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew.bat b/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/local.properties b/cx-framework3.1/cocos3-libs/cocos3-libso/local.properties new file mode 100644 index 0000000..aff5de6 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/local.properties @@ -0,0 +1,9 @@ +## This file must *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. +# +# Location of the SDK. This is only used by Gradle. +# For customization when using a Version Control System, please read the +# header note. +#Wed May 05 22:19:02 CST 2021 +ndk.dir=/Users/blank/Library/Android/sdk/ndk-bundle +sdk.dir=/Users/blank/Library/Android/sdk diff --git a/cx-framework3.1/cocos3-libs/cocos3-libso/settings.gradle b/cx-framework3.1/cocos3-libs/cocos3-libso/settings.gradle new file mode 100644 index 0000000..9d495b3 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-libso/settings.gradle @@ -0,0 +1 @@ +include ':app' \ No newline at end of file diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.pbxproj b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.pbxproj new file mode 100644 index 0000000..93a5bfc --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.pbxproj @@ -0,0 +1,3144 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 46916FCD264D6D28000C7B53 /* AudioEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C2BD9D17DC54083BE84F5C4 /* AudioEngine.cpp */; }; + 46916FCE264D6D28000C7B53 /* AudioCache.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13AF104A80CC41E1B4521C7E /* AudioCache.mm */; }; + 46916FCF264D6D28000C7B53 /* AudioDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = E59F3454BE254877B305529A /* AudioDecoder.mm */; }; + 46916FD0264D6D28000C7B53 /* AudioEngine-inl.mm in Sources */ = {isa = PBXBuildFile; fileRef = B3D61011F31F4EA692B07C79 /* AudioEngine-inl.mm */; }; + 46916FD1264D6D28000C7B53 /* AudioPlayer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EACCF3DF17742BBA74C7EB6 /* AudioPlayer.mm */; }; + 46916FD2264D6D28000C7B53 /* AutoreleasePool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF136ACDE85E4DEB8F9D27A5 /* AutoreleasePool.cpp */; }; + 46916FD3264D6D28000C7B53 /* Data.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E6FA686ED2E44BBBA587CE82 /* Data.cpp */; }; + 46916FD4264D6D28000C7B53 /* Log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1CC55749B6E4550836BD774 /* Log.cpp */; }; + 46916FD5264D6D28000C7B53 /* Ref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EAE7234460374B7985435647 /* Ref.cpp */; }; + 46916FD6264D6D28000C7B53 /* Scheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0EC89CB1179E4F50B3A384D9 /* Scheduler.cpp */; }; + 46916FD7264D6D28000C7B53 /* StringHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A7052F9B1FE447EB2603D35 /* StringHandle.cpp */; }; + 46916FD8264D6D28000C7B53 /* StringUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0A2F94AE92C9420E8FFDBDEE /* StringUtil.cpp */; }; + 46916FD9264D6D28000C7B53 /* ThreadPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EE24C0CEC7D944ED8A139AD6 /* ThreadPool.cpp */; }; + 46916FDA264D6D28000C7B53 /* UTF8.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEB86F39F64BF79F9F5543 /* UTF8.cpp */; }; + 46916FDB264D6D28000C7B53 /* Utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB8024EF9C37469094C18043 /* Utils.cpp */; }; + 46916FDC264D6D28000C7B53 /* Value.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FA96F552A07F451B8FCB57D2 /* Value.cpp */; }; + 46916FDD264D6D28000C7B53 /* ZipUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B9F8A677EC394588B72146D4 /* ZipUtils.cpp */; }; + 46916FDE264D6D28000C7B53 /* astc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 81B2E663DB1C4F1DB93D7BBE /* astc.cpp */; }; + 46916FDF264D6D28000C7B53 /* base64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6BB2E9055D384F288423BB90 /* base64.cpp */; }; + 46916FE0264D6D28000C7B53 /* csscolorparser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 54AFB302525148F89ADAEB33 /* csscolorparser.cpp */; }; + 46916FE1264D6D28000C7B53 /* etc1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86BBFCAE1F8647EB9FAA5013 /* etc1.cpp */; }; + 46916FE2264D6D28000C7B53 /* etc2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 488BFF5D6A744B5CAAB384DE /* etc2.cpp */; }; + 46916FE3264D6D28000C7B53 /* TFJobGraph.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2143B90C08084C1BB44F1690 /* TFJobGraph.cpp */; }; + 46916FE4264D6D28000C7B53 /* TFJobSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C215208357974DCA838959B5 /* TFJobSystem.cpp */; }; + 46916FE5264D6D28000C7B53 /* AllocatedObj.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE1A12B0BFC6490FB3AE21F6 /* AllocatedObj.cpp */; }; + 46916FE6264D6D28000C7B53 /* JeAlloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87B95658C4294035B5240384 /* JeAlloc.cpp */; }; + 46916FE7264D6D28000C7B53 /* MemTracker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 613D7DBB1776446BB2AADCDA /* MemTracker.cpp */; }; + 46916FE8264D6D28000C7B53 /* Memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0377FDB81C864D84B48D3254 /* Memory.cpp */; }; + 46916FE9264D6D28000C7B53 /* NedPooling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7ADDF7655AE0460092D03424 /* NedPooling.cpp */; }; + 46916FEA264D6D28000C7B53 /* ConditionVariable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37C6BFAD86CE43BB9CE6A9CA /* ConditionVariable.cpp */; }; + 46916FEB264D6D28000C7B53 /* MessageQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1971F55B06BC4737B297CFB4 /* MessageQueue.cpp */; }; + 46916FEC264D6D28000C7B53 /* Semaphore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0644A52A317B4853B85749CC /* Semaphore.cpp */; }; + 46916FED264D6D28000C7B53 /* ThreadPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5BE204889403465381A25149 /* ThreadPool.cpp */; }; + 46916FEE264D6D28000C7B53 /* ThreadSafeLinearAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DCBD998023F44DE80E3577F /* ThreadSafeLinearAllocator.cpp */; }; + 46916FEF264D6D28000C7B53 /* jsb_audio_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 55440363B0AE411097D0B679 /* jsb_audio_auto.cpp */; }; + 46916FF0264D6D28000C7B53 /* jsb_cocos_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2944CD06C86445EA334144D /* jsb_cocos_auto.cpp */; }; + 46916FF1264D6D28000C7B53 /* jsb_dragonbones_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69963309EFDE4533A8D61C06 /* jsb_dragonbones_auto.cpp */; }; + 46916FF2264D6D28000C7B53 /* jsb_editor_support_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4AB1D90B0FB4C168C883C26 /* jsb_editor_support_auto.cpp */; }; + 46916FF3264D6D28000C7B53 /* jsb_extension_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8197CCFD9E3142A1B04BD28A /* jsb_extension_auto.cpp */; }; + 46916FF4264D6D28000C7B53 /* jsb_gfx_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CABBAA0B836B4E8489CDE26C /* jsb_gfx_auto.cpp */; }; + 46916FF5264D6D28000C7B53 /* jsb_network_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 25B9140C5EA146798DE19DDD /* jsb_network_auto.cpp */; }; + 46916FF6264D6D28000C7B53 /* jsb_pipeline_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9DDA3DA8D9954DF193397578 /* jsb_pipeline_auto.cpp */; }; + 46916FF7264D6D28000C7B53 /* BufferAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A2AAD20710B9475CB23A27C3 /* BufferAllocator.cpp */; }; + 46916FF8264D6D28000C7B53 /* BufferPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BA13F05FB3BD4519A7A01177 /* BufferPool.cpp */; }; + 46916FF9264D6D28000C7B53 /* ObjectPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3B7EE2F93A944CB8AB72DC81 /* ObjectPool.cpp */; }; + 46916FFA264D6D28000C7B53 /* jsb_dop.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5229FBD2E6544BF3BFE03E49 /* jsb_dop.cpp */; }; + 46916FFB264D6D28000C7B53 /* EventDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 77A977EDC54243B082286350 /* EventDispatcher.cpp */; }; + 46916FFC264D6D28000C7B53 /* HandleObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CECD7511749347B79B81F271 /* HandleObject.cpp */; }; + 46916FFD264D6D28000C7B53 /* MappingUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 16106015E9114914B0EEB8AD /* MappingUtils.cpp */; }; + 46916FFE264D6D28000C7B53 /* RefCounter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FD1EA9E9BDF41F18C3138CF /* RefCounter.cpp */; }; + 46916FFF264D6D28000C7B53 /* State.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF2838695F93441F87F11ECA /* State.cpp */; }; + 46917000264D6D28000C7B53 /* Value.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57C647AFFA9A415B8B92CE90 /* Value.cpp */; }; + 46917001264D6D28000C7B53 /* config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E9BF7C9E4714555BCC89938 /* config.cpp */; }; + 46917002264D6D28000C7B53 /* Class.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0B4D59E8B87D4D1990096C28 /* Class.cpp */; }; + 46917003264D6D28000C7B53 /* Object.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B2DC8E2EE5D45D69323E3BE /* Object.cpp */; }; + 46917004264D6D28000C7B53 /* ObjectWrap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 521D34BFABED44F181AE246A /* ObjectWrap.cpp */; }; + 46917005264D6D28000C7B53 /* ScriptEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62F9018F28D24AE39E42A5A8 /* ScriptEngine.cpp */; }; + 46917006264D6D28000C7B53 /* Utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A929D5BE812B493BA5F0AC99 /* Utils.cpp */; }; + 46917007264D6D28000C7B53 /* SHA1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8AB33699ADEF4C128BC28567 /* SHA1.cpp */; }; + 46917008264D6D28000C7B53 /* env.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8594B32191844F78ADD10DA4 /* env.cpp */; }; + 46917009264D6D28000C7B53 /* http_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 94299E74017146BC8F5A386C /* http_parser.c */; }; + 4691700A264D6D28000C7B53 /* inspector_agent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9451C2F12EF1443FA21FFC26 /* inspector_agent.cpp */; }; + 4691700B264D6D28000C7B53 /* inspector_io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73F339D04B94AAE87DB6F59 /* inspector_io.cpp */; }; + 4691700C264D6D28000C7B53 /* inspector_socket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E70542EF63D9410CB6CC7BC7 /* inspector_socket.cpp */; }; + 4691700D264D6D28000C7B53 /* inspector_socket_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BCA32AB94F74E51BC64F404 /* inspector_socket_server.cpp */; }; + 4691700E264D6D28000C7B53 /* node.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE5D921C4FAB4AD78FAC9E06 /* node.cpp */; }; + 4691700F264D6D28000C7B53 /* node_debug_options.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 813087D6610D4219A8AFFA70 /* node_debug_options.cpp */; }; + 46917010264D6D28000C7B53 /* util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7FF914B06A22453289282E37 /* util.cpp */; }; + 46917011264D6D28000C7B53 /* JavaScriptObjCBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 02AE8736B96B4AA08DF2C4F4 /* JavaScriptObjCBridge.mm */; }; + 46917012264D6D28000C7B53 /* jsb_classtype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7853EC140F514482B00CCD24 /* jsb_classtype.cpp */; }; + 46917013264D6D28000C7B53 /* jsb_cocos_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1E0AC1DD73F499E927F55A5 /* jsb_cocos_manual.cpp */; }; + 46917014264D6D28000C7B53 /* jsb_conversions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D444D6D57CE4950B4F7D1FD /* jsb_conversions.cpp */; }; + 46917015264D6D28000C7B53 /* jsb_dragonbones_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D46D83A97BED4153AE5AF581 /* jsb_dragonbones_manual.cpp */; }; + 46917016264D6D28000C7B53 /* jsb_gfx_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D35456E2CD4F46D0A1EDA6CC /* jsb_gfx_manual.cpp */; }; + 46917017264D6D28000C7B53 /* jsb_global.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D37C89275E9344EB954E27A7 /* jsb_global.cpp */; }; + 46917018264D6D28000C7B53 /* jsb_global_init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 606A9A16A20A45219DB3C1BF /* jsb_global_init.cpp */; }; + 46917019264D6D28000C7B53 /* jsb_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4FDC8EAD25C349978E50B5A2 /* jsb_helper.cpp */; }; + 4691701A264D6D28000C7B53 /* jsb_network_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A0C6D715C7424EAB9711A843 /* jsb_network_manual.cpp */; }; + 4691701B264D6D28000C7B53 /* jsb_pipeline_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C1DE48C47BE4F088D0C3E8B /* jsb_pipeline_manual.cpp */; }; + 4691701C264D6D28000C7B53 /* jsb_platfrom_apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 02A6BA3FE12D42E58EA3D798 /* jsb_platfrom_apple.mm */; }; + 4691701D264D6D28000C7B53 /* jsb_socketio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 04430356222943D18EE78C92 /* jsb_socketio.cpp */; }; + 4691701E264D6D28000C7B53 /* jsb_websocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B385B8DB6D204688A287722A /* jsb_websocket.cpp */; }; + 4691701F264D6D28000C7B53 /* jsb_xmlhttprequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8AC1C445C27441E7BA2E9D66 /* jsb_xmlhttprequest.cpp */; }; + 46917020264D6D28000C7B53 /* IOBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F37461E693C4F46815BD89E /* IOBuffer.cpp */; }; + 46917021264D6D28000C7B53 /* IOTypedArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3B78CD35150840C897CACE17 /* IOTypedArray.cpp */; }; + 46917022264D6D28000C7B53 /* MeshBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 56E5659C2F394F2690FF4F7A /* MeshBuffer.cpp */; }; + 46917023264D6D28000C7B53 /* MiddlewareManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 25C489421B2944E29922A7B4 /* MiddlewareManager.cpp */; }; + 46917024264D6D28000C7B53 /* SharedBufferManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 75DBD9F5A3DE4B2CB605E65A /* SharedBufferManager.cpp */; }; + 46917025264D6D28000C7B53 /* TypedArrayPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BBF7963E5DF6497C9D241403 /* TypedArrayPool.cpp */; }; + 46917026264D6D28000C7B53 /* ArmatureCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94724F8724D643A2B1212FEA /* ArmatureCache.cpp */; }; + 46917027264D6D28000C7B53 /* ArmatureCacheMgr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C62E8FAB5E8D4EA4ABFE50F6 /* ArmatureCacheMgr.cpp */; }; + 46917028264D6D28000C7B53 /* CCArmatureCacheDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D75249FE36B4416BED23988 /* CCArmatureCacheDisplay.cpp */; }; + 46917029264D6D28000C7B53 /* CCArmatureDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 024277FC1637460AA463EA05 /* CCArmatureDisplay.cpp */; }; + 4691702A264D6D28000C7B53 /* CCFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F0F7DBACB8E4FEDBA28B114 /* CCFactory.cpp */; }; + 4691702B264D6D28000C7B53 /* CCSlot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8234754860C4001B4189E2D /* CCSlot.cpp */; }; + 4691702C264D6D28000C7B53 /* CCTextureAtlasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31ED601B25BB44BFA8CBB2C3 /* CCTextureAtlasData.cpp */; }; + 4691702D264D6D28000C7B53 /* Animation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F95CCAD78AA743FE8FE1F8BE /* Animation.cpp */; }; + 4691702E264D6D28000C7B53 /* AnimationState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 548CB94A88BA4D15AC63C20B /* AnimationState.cpp */; }; + 4691702F264D6D28000C7B53 /* BaseTimelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 656E583833BF467587ED2D00 /* BaseTimelineState.cpp */; }; + 46917030264D6D28000C7B53 /* TimelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A2427988B714BCFB1999DAC /* TimelineState.cpp */; }; + 46917031264D6D28000C7B53 /* WorldClock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 06F12FEE1A204189BFF14532 /* WorldClock.cpp */; }; + 46917032264D6D28000C7B53 /* Armature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F281A6830ADC4F1D905996EB /* Armature.cpp */; }; + 46917033264D6D28000C7B53 /* Bone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2ABB219C37A44BB99B17EA0A /* Bone.cpp */; }; + 46917034264D6D28000C7B53 /* Constraint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 347657FDC2B448B6A53F65C7 /* Constraint.cpp */; }; + 46917035264D6D28000C7B53 /* DeformVertices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 578B4E8A87AD49849B7F9A69 /* DeformVertices.cpp */; }; + 46917036264D6D28000C7B53 /* Slot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF783B87866D4250A9EC737B /* Slot.cpp */; }; + 46917037264D6D28000C7B53 /* TransformObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A29F30C6B85D4C4D85EC3A23 /* TransformObject.cpp */; }; + 46917038264D6D28000C7B53 /* BaseObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7E33C1A467148BF90EBB617 /* BaseObject.cpp */; }; + 46917039264D6D28000C7B53 /* DragonBones.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 68930C562EF143539A80BF16 /* DragonBones.cpp */; }; + 4691703A264D6D28000C7B53 /* EventObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 15F80389C1004308BE5C6131 /* EventObject.cpp */; }; + 4691703B264D6D28000C7B53 /* BaseFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E1D2186B059448590AA8A7A /* BaseFactory.cpp */; }; + 4691703C264D6D28000C7B53 /* Point.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0B620C61BE334A0E88203118 /* Point.cpp */; }; + 4691703D264D6D28000C7B53 /* Transform.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 42E5E1551DF34E41823EB8F9 /* Transform.cpp */; }; + 4691703E264D6D28000C7B53 /* AnimationConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4BD23B7313148A89FFB169A /* AnimationConfig.cpp */; }; + 4691703F264D6D28000C7B53 /* AnimationData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 846E9BED911647B791B3D12E /* AnimationData.cpp */; }; + 46917040264D6D28000C7B53 /* ArmatureData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D618B63812C4BD5BADBB3CF /* ArmatureData.cpp */; }; + 46917041264D6D28000C7B53 /* BoundingBoxData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83E26E50A7F64F67AF6F07E3 /* BoundingBoxData.cpp */; }; + 46917042264D6D28000C7B53 /* CanvasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 413E7BF65055408181181224 /* CanvasData.cpp */; }; + 46917043264D6D28000C7B53 /* ConstraintData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 202A2C3CA6D64098ADDA6D3A /* ConstraintData.cpp */; }; + 46917044264D6D28000C7B53 /* DisplayData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C8FF768800E42AFA57A891F /* DisplayData.cpp */; }; + 46917045264D6D28000C7B53 /* DragonBonesData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BD21E61B2D78436E8474768E /* DragonBonesData.cpp */; }; + 46917046264D6D28000C7B53 /* SkinData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F486D87013C24317969D6ED5 /* SkinData.cpp */; }; + 46917047264D6D28000C7B53 /* TextureAtlasData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 04E17EF37FCB40CEB3370999 /* TextureAtlasData.cpp */; }; + 46917048264D6D28000C7B53 /* UserData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2A09E13CDD7C4CA19550CF0E /* UserData.cpp */; }; + 46917049264D6D28000C7B53 /* BinaryDataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD7B7EC7C34E4B3FB05030A8 /* BinaryDataParser.cpp */; }; + 4691704A264D6D28000C7B53 /* DataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CF7A335095974FB5847D7E53 /* DataParser.cpp */; }; + 4691704B264D6D28000C7B53 /* JSONDataParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F279A7CE7B74DA5932FB457 /* JSONDataParser.cpp */; }; + 4691704C264D6D28000C7B53 /* middleware-adapter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9D17D5B0E424C53931B75AB /* middleware-adapter.cpp */; }; + 4691704D264D6D28000C7B53 /* Geometry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E6FD26C576BF4E25A3BC5896 /* Geometry.cpp */; }; + 4691704E264D6D28000C7B53 /* Mat3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97F0DBC3A2A44EAF88615524 /* Mat3.cpp */; }; + 4691704F264D6D28000C7B53 /* Mat4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F5948E0BC7E468DBB4EE069 /* Mat4.cpp */; }; + 46917050264D6D28000C7B53 /* Math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5B4DE3F212E4B0AA0E96705 /* Math.cpp */; }; + 46917051264D6D28000C7B53 /* MathUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCA99E4DD13346E8B8628D46 /* MathUtil.cpp */; }; + 46917052264D6D28000C7B53 /* Quaternion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7782C09D0EE543F5BDD3FCC4 /* Quaternion.cpp */; }; + 46917053264D6D28000C7B53 /* Vec2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94F5FBF534F4415E99153ED4 /* Vec2.cpp */; }; + 46917054264D6D28000C7B53 /* Vec3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A26614B46FC444928F788FAA /* Vec3.cpp */; }; + 46917055264D6D28000C7B53 /* Vec4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AABB86F0123842E284E08DB7 /* Vec4.cpp */; }; + 46917056264D6D28000C7B53 /* Vertex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5A3FE9F845364004AA54E621 /* Vertex.cpp */; }; + 46917057264D6D28000C7B53 /* Downloader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84A69596157D471A915F64CE /* Downloader.cpp */; }; + 46917058264D6D28000C7B53 /* DownloaderImpl-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 762130EAE40D409A9FB4D6B7 /* DownloaderImpl-apple.mm */; }; + 46917059264D6D28000C7B53 /* HttpAsynConnection-apple.m in Sources */ = {isa = PBXBuildFile; fileRef = ED5C236FD9694D2CAD48B5DB /* HttpAsynConnection-apple.m */; }; + 4691705A264D6D28000C7B53 /* HttpClient-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = ADE34B8C638240D8B58F5FD0 /* HttpClient-apple.mm */; }; + 4691705B264D6D28000C7B53 /* HttpClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2EE6655AFB964BD7BBB74EC1 /* HttpClient.cpp */; }; + 4691705C264D6D28000C7B53 /* HttpCookie.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC1F1BC5DC844E669EC863F0 /* HttpCookie.cpp */; }; + 4691705D264D6D28000C7B53 /* SocketIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E69E230D05EB487D9399986D /* SocketIO.cpp */; }; + 4691705E264D6D28000C7B53 /* Uri.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B2C4415CB7B4FA1800EF9C0 /* Uri.cpp */; }; + 4691705F264D6D28000C7B53 /* WebSocket-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5D8C6C0DDF504D6C960231FF /* WebSocket-apple.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 46917060264D6D28000C7B53 /* Application.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E59CDF40ACD54918A7EC982F /* Application.cpp */; }; + 46917061264D6D28000C7B53 /* FileUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 77628B2C58F54747B0C678CB /* FileUtils.cpp */; }; + 46917062264D6D28000C7B53 /* Image.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ED4CB35CA8064929B674D4C9 /* Image.cpp */; }; + 46917063264D6D28000C7B53 /* SAXParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EEAAC93E059B4F0492B81AF0 /* SAXParser.cpp */; }; + 46917064264D6D28000C7B53 /* CanvasRenderingContext2D-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 49773B760129421282877405 /* CanvasRenderingContext2D-apple.mm */; }; + 46917065264D6D28000C7B53 /* Device-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 18BCC86F0AE9428DB3ED423F /* Device-apple.mm */; }; + 46917066264D6D28000C7B53 /* FileUtils-apple.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8134416CD6624BBEBA5ADC72 /* FileUtils-apple.mm */; }; + 46917067264D6D28000C7B53 /* Reachability.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 277FC5C51FF247669EAD278C /* Reachability.cpp */; }; + 46917068264D6D28000C7B53 /* Application-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = CAE09518096F497EAEE09D48 /* Application-mac.mm */; }; + 46917069264D6D28000C7B53 /* Device-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 564980D312194BB09F91AA71 /* Device-mac.mm */; }; + 4691706A264D6D28000C7B53 /* KeyCodeHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD6B1608A33D40D99C68781B /* KeyCodeHelper.cpp */; }; + 4691706B264D6D28000C7B53 /* View.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986D2E8E779441E9A2F222D3 /* View.mm */; }; + 4691706C264D6D28000C7B53 /* DevicePass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D6CC97988D74337940FA6C3 /* DevicePass.cpp */; }; + 4691706D264D6D28000C7B53 /* DevicePassResourceTable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02E9D00B85674D56AF37178F /* DevicePassResourceTable.cpp */; }; + 4691706E264D6D28000C7B53 /* FrameGraph.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB229897E9D94497AA5311A9 /* FrameGraph.cpp */; }; + 4691706F264D6D28000C7B53 /* PassInsertPointManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6BDFC4DFD39542FCA892B23D /* PassInsertPointManager.cpp */; }; + 46917070264D6D28000C7B53 /* PassNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13A5FAD2BBBE41D281D70CA7 /* PassNode.cpp */; }; + 46917071264D6D28000C7B53 /* PassNodeBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AA2D0EBEC18441486413839 /* PassNodeBuilder.cpp */; }; + 46917072264D6D28000C7B53 /* VirtualResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4AC3FC1A4A124139BE94B075 /* VirtualResource.cpp */; }; + 46917073264D6D28000C7B53 /* BufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B05327E200A84F8492565F3D /* BufferAgent.cpp */; }; + 46917074264D6D28000C7B53 /* CommandBufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 851E6323A99E47D292E3622B /* CommandBufferAgent.cpp */; }; + 46917075264D6D28000C7B53 /* DescriptorSetAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2AAE1FD428544EC784A450FE /* DescriptorSetAgent.cpp */; }; + 46917076264D6D28000C7B53 /* DescriptorSetLayoutAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22426561742B40B981843758 /* DescriptorSetLayoutAgent.cpp */; }; + 46917077264D6D28000C7B53 /* DeviceAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B47B99973B074C89BBD68339 /* DeviceAgent.cpp */; }; + 46917078264D6D28000C7B53 /* FramebufferAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F3CC2DBF71654BB6A35B1082 /* FramebufferAgent.cpp */; }; + 46917079264D6D28000C7B53 /* InputAssemblerAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DABEAB147EE04718B3FB5B3C /* InputAssemblerAgent.cpp */; }; + 4691707A264D6D28000C7B53 /* PipelineLayoutAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E724CAB0C9234CA08F2EF7AF /* PipelineLayoutAgent.cpp */; }; + 4691707B264D6D28000C7B53 /* PipelineStateAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CFECAE679FD4C91A9488744 /* PipelineStateAgent.cpp */; }; + 4691707C264D6D28000C7B53 /* QueueAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0C95D2DB90CE4CFEA1643826 /* QueueAgent.cpp */; }; + 4691707D264D6D28000C7B53 /* RenderPassAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 17897DF9593441C8A3B98BC1 /* RenderPassAgent.cpp */; }; + 4691707E264D6D28000C7B53 /* SamplerAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02B580E073594BC48D1F7550 /* SamplerAgent.cpp */; }; + 4691707F264D6D28000C7B53 /* ShaderAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2559B057CBE4478ABCF490E8 /* ShaderAgent.cpp */; }; + 46917080264D6D28000C7B53 /* TextureAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8EEC2D04207F4D73AEA6B468 /* TextureAgent.cpp */; }; + 46917081264D6D28000C7B53 /* GFXBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E30850DBB57401A8D757251 /* GFXBuffer.cpp */; }; + 46917082264D6D28000C7B53 /* GFXCommandBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97EC016D44F2407A9B4078C6 /* GFXCommandBuffer.cpp */; }; + 46917083264D6D28000C7B53 /* GFXContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEF49CEECE14461B8FEC7486 /* GFXContext.cpp */; }; + 46917084264D6D28000C7B53 /* GFXDef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DEA1686939BE407AB54B6806 /* GFXDef.cpp */; }; + 46917085264D6D28000C7B53 /* GFXDescriptorSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D9E8B50D5D44BC69FE9261B /* GFXDescriptorSet.cpp */; }; + 46917086264D6D28000C7B53 /* GFXDescriptorSetLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C9D27E61002842B8A28CFBE8 /* GFXDescriptorSetLayout.cpp */; }; + 46917087264D6D28000C7B53 /* GFXDevice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9A77A31AAF3D4A33BAC4AD0D /* GFXDevice.cpp */; }; + 46917088264D6D28000C7B53 /* GFXFramebuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2666F24BB3D840BD8A2ED8F6 /* GFXFramebuffer.cpp */; }; + 46917089264D6D28000C7B53 /* GFXGlobalBarrier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D0B20D30A6F4ED481F56998 /* GFXGlobalBarrier.cpp */; }; + 4691708A264D6D28000C7B53 /* GFXInputAssembler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07A6DD5E083F48669C0BF911 /* GFXInputAssembler.cpp */; }; + 4691708B264D6D28000C7B53 /* GFXObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26FD76AE417F4209A8302DA9 /* GFXObject.cpp */; }; + 4691708C264D6D28000C7B53 /* GFXPipelineLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62F9810B4A1245F5ABEA2B18 /* GFXPipelineLayout.cpp */; }; + 4691708D264D6D28000C7B53 /* GFXPipelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE270B998E61433A9A4D215C /* GFXPipelineState.cpp */; }; + 4691708E264D6D28000C7B53 /* GFXQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5F3EF45908642C49823F75F /* GFXQueue.cpp */; }; + 4691708F264D6D28000C7B53 /* GFXRenderPass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 61342F1D0E354A97A9212EA3 /* GFXRenderPass.cpp */; }; + 46917090264D6D28000C7B53 /* GFXSampler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D5FB1F8395D4445BB993C196 /* GFXSampler.cpp */; }; + 46917091264D6D28000C7B53 /* GFXShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74EBAD385D674F0FB9730595 /* GFXShader.cpp */; }; + 46917092264D6D28000C7B53 /* GFXTexture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CD30C3F3B294B96AD8CD7A4 /* GFXTexture.cpp */; }; + 46917093264D6D28000C7B53 /* GFXTextureBarrier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D46A5F963DEB4FB4AFB53614 /* GFXTextureBarrier.cpp */; }; + 46917094264D6D28000C7B53 /* EmptyBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B31169E70174618B70BD1F3 /* EmptyBuffer.cpp */; }; + 46917095264D6D28000C7B53 /* EmptyCommandBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EE842E0F1B864364B5C321D2 /* EmptyCommandBuffer.cpp */; }; + 46917096264D6D28000C7B53 /* EmptyContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5053403BA2294A4A9FD8D9CA /* EmptyContext.cpp */; }; + 46917097264D6D28000C7B53 /* EmptyDescriptorSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A2809CF9C70D4DD0896559FE /* EmptyDescriptorSet.cpp */; }; + 46917098264D6D28000C7B53 /* EmptyDescriptorSetLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20C602DA27664CBA87990D42 /* EmptyDescriptorSetLayout.cpp */; }; + 46917099264D6D28000C7B53 /* EmptyDevice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43ABBC9380A8413AA4B8386E /* EmptyDevice.cpp */; }; + 4691709A264D6D28000C7B53 /* EmptyFramebuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D6CBC58A60704D60AB5C34A1 /* EmptyFramebuffer.cpp */; }; + 4691709B264D6D28000C7B53 /* EmptyInputAssembler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4124367C31047929B826251 /* EmptyInputAssembler.cpp */; }; + 4691709C264D6D28000C7B53 /* EmptyPipelineLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D59FCA6E9304460BB87859C /* EmptyPipelineLayout.cpp */; }; + 4691709D264D6D28000C7B53 /* EmptyPipelineState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4E2157065AF43CEB1A447FD /* EmptyPipelineState.cpp */; }; + 4691709E264D6D28000C7B53 /* EmptyQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0EC21A1B9D49435EBA5E21B6 /* EmptyQueue.cpp */; }; + 4691709F264D6D28000C7B53 /* EmptyRenderPass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 253400FC457E4A3FA272B995 /* EmptyRenderPass.cpp */; }; + 469170A0264D6D28000C7B53 /* EmptySampler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6FD88142D97D49D5A45BB428 /* EmptySampler.cpp */; }; + 469170A1264D6D28000C7B53 /* EmptyShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6ACED6FF8F9482C931B04D1 /* EmptyShader.cpp */; }; + 469170A2264D6D28000C7B53 /* EmptyTexture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 020365FF97B64799BEA2A98D /* EmptyTexture.cpp */; }; + 469170A3264D6D28000C7B53 /* MTLBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 38CC2072CD84422AB2E86089 /* MTLBuffer.mm */; }; + 469170A4264D6D28000C7B53 /* MTLCommandBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = D0EF4928EEDF471792AABED9 /* MTLCommandBuffer.mm */; }; + 469170A5264D6D28000C7B53 /* MTLContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC5E7A2CA69D49BF94017F2A /* MTLContext.mm */; }; + 469170A6264D6D28000C7B53 /* MTLDescriptorSet.mm in Sources */ = {isa = PBXBuildFile; fileRef = BE19B4A16E1E4F929F8F4D78 /* MTLDescriptorSet.mm */; }; + 469170A7264D6D28000C7B53 /* MTLDescriptorSetLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = F9BA6C2EF5FC458692419140 /* MTLDescriptorSetLayout.mm */; }; + 469170A8264D6D28000C7B53 /* MTLDevice.mm in Sources */ = {isa = PBXBuildFile; fileRef = AEB341EDBB1F46E8BCE6BF02 /* MTLDevice.mm */; }; + 469170A9264D6D28000C7B53 /* MTLFramebuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = F90A93EE72054E7A9B95E5A2 /* MTLFramebuffer.mm */; }; + 469170AA264D6D28000C7B53 /* MTLInputAssembler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6E56D2E5B18E4878B798CAC9 /* MTLInputAssembler.mm */; }; + 469170AB264D6D28000C7B53 /* MTLPipelineLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = ED46542641394DA19F741C45 /* MTLPipelineLayout.mm */; }; + 469170AC264D6D28000C7B53 /* MTLPipelineState.mm in Sources */ = {isa = PBXBuildFile; fileRef = E2C7751080C8453684BC1595 /* MTLPipelineState.mm */; }; + 469170AD264D6D28000C7B53 /* MTLQueue.mm in Sources */ = {isa = PBXBuildFile; fileRef = E642466FC2134E929EE69F2E /* MTLQueue.mm */; }; + 469170AE264D6D28000C7B53 /* MTLRenderPass.mm in Sources */ = {isa = PBXBuildFile; fileRef = DC35AFCF1A824AEAAEDF0D6F /* MTLRenderPass.mm */; }; + 469170AF264D6D28000C7B53 /* MTLSampler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 92008C7F89864AB6BF8E3019 /* MTLSampler.mm */; }; + 469170B0264D6D28000C7B53 /* MTLShader.mm in Sources */ = {isa = PBXBuildFile; fileRef = 82A85305C4F545339B6599D7 /* MTLShader.mm */; }; + 469170B1264D6D28000C7B53 /* MTLStd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ECA98000DC894587BA273736 /* MTLStd.cpp */; }; + 469170B2264D6D28000C7B53 /* MTLTexture.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2AFF1B7EC5304E17BAED8199 /* MTLTexture.mm */; }; + 469170B3264D6D28000C7B53 /* MTLUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = 33C15007D71E4AA39EB1AFC6 /* MTLUtils.mm */; }; + 469170B4264D6D28000C7B53 /* BufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 137096C5210445C3B916100A /* BufferValidator.cpp */; }; + 469170B5264D6D28000C7B53 /* CommandBufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBD537A61B69425881059098 /* CommandBufferValidator.cpp */; }; + 469170B6264D6D28000C7B53 /* DescriptorSetLayoutValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AC8C5624D37445C8AA55F4AA /* DescriptorSetLayoutValidator.cpp */; }; + 469170B7264D6D28000C7B53 /* DescriptorSetValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E6143790931544B19C4839BD /* DescriptorSetValidator.cpp */; }; + 469170B8264D6D28000C7B53 /* DeviceValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F3F739D5678D4B799591610F /* DeviceValidator.cpp */; }; + 469170B9264D6D28000C7B53 /* FramebufferValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C989896B8E234CBFBD73F200 /* FramebufferValidator.cpp */; }; + 469170BA264D6D28000C7B53 /* InputAssemblerValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E758DC5FDAC4687B7CF70CC /* InputAssemblerValidator.cpp */; }; + 469170BB264D6D28000C7B53 /* PipelineLayoutValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AFAEB31AE9248579325B140 /* PipelineLayoutValidator.cpp */; }; + 469170BC264D6D28000C7B53 /* PipelineStateValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 11009685AB9E42A7A95455E3 /* PipelineStateValidator.cpp */; }; + 469170BD264D6D28000C7B53 /* QueueValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F687ABAD26B142489CCB6B5C /* QueueValidator.cpp */; }; + 469170BE264D6D28000C7B53 /* RenderPassValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 056D6F48A10E40FFBCECD9A6 /* RenderPassValidator.cpp */; }; + 469170BF264D6D28000C7B53 /* SamplerValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 867F9D43F81544D38C324ECA /* SamplerValidator.cpp */; }; + 469170C0264D6D28000C7B53 /* ShaderValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B7DD605AD5B4BD1983F526F /* ShaderValidator.cpp */; }; + 469170C1264D6D28000C7B53 /* TextureValidator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F375D7EDA1E4DF890402A76 /* TextureValidator.cpp */; }; + 469170C2264D6D28000C7B53 /* ValidationUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C5B520E7670E48E8B38C6AFB /* ValidationUtils.cpp */; }; + 469170C3264D6D28000C7B53 /* BatchedBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F30E9D20F674581B8C0436F /* BatchedBuffer.cpp */; }; + 469170C4264D6D28000C7B53 /* Define.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7BFEBDA641FF4EC7A1AFB042 /* Define.cpp */; }; + 469170C5264D6D28000C7B53 /* InstancedBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E30A46242F124D52959A0EC5 /* InstancedBuffer.cpp */; }; + 469170C6264D6D28000C7B53 /* PipelineSceneData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B874ECECCA914333BF166B70 /* PipelineSceneData.cpp */; }; + 469170C7264D6D28000C7B53 /* PipelineStateManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01E54EF4D4CB47A0B6102640 /* PipelineStateManager.cpp */; }; + 469170C8264D6D28000C7B53 /* PipelineUBO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B99A013CC1504C6D8090CD0D /* PipelineUBO.cpp */; }; + 469170C9264D6D28000C7B53 /* PlanarShadowQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD1C36472E1342AD843577D0 /* PlanarShadowQueue.cpp */; }; + 469170CA264D6D28000C7B53 /* RenderAdditiveLightQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 60DC092BEAC54036806290E4 /* RenderAdditiveLightQueue.cpp */; }; + 469170CB264D6D28000C7B53 /* RenderBatchedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86AEA54407744091A80E3CAD /* RenderBatchedQueue.cpp */; }; + 469170CC264D6D28000C7B53 /* RenderFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C6F964182D64F7FB5A66FA5 /* RenderFlow.cpp */; }; + 469170CD264D6D28000C7B53 /* RenderInstancedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 175274620ACA47FC87449091 /* RenderInstancedQueue.cpp */; }; + 469170CE264D6D28000C7B53 /* RenderPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D5F8D75BA348FEBB994B01 /* RenderPipeline.cpp */; }; + 469170CF264D6D28000C7B53 /* RenderQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B035719B75B4A0D81A15DC8 /* RenderQueue.cpp */; }; + 469170D0264D6D28000C7B53 /* RenderStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D89872B1B2BA42A4A3EEBE74 /* RenderStage.cpp */; }; + 469170D1264D6D28000C7B53 /* SceneCulling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C66473274872428AB5F1C4E6 /* SceneCulling.cpp */; }; + 469170D2264D6D28000C7B53 /* ShadowMapBatchedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 534A2BB0C44D4AC7B4640575 /* ShadowMapBatchedQueue.cpp */; }; + 469170D3264D6D28000C7B53 /* DeferredPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 859B932CB0B145959C721991 /* DeferredPipeline.cpp */; }; + 469170D4264D6D28000C7B53 /* GbufferFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 815BF0F4DE09484A8DC269D0 /* GbufferFlow.cpp */; }; + 469170D5264D6D28000C7B53 /* GbufferStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D217A764EDE9479CBF523F8A /* GbufferStage.cpp */; }; + 469170D6264D6D28000C7B53 /* LightingFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39DE987514224C058E101FCB /* LightingFlow.cpp */; }; + 469170D7264D6D28000C7B53 /* LightingStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 68A6B5657EA249A59207C6CD /* LightingStage.cpp */; }; + 469170D8264D6D28000C7B53 /* PostprocessStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B04E760AE6AF44DFAC222735 /* PostprocessStage.cpp */; }; + 469170D9264D6D28000C7B53 /* ForwardFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3C53380905D442BB32EB959 /* ForwardFlow.cpp */; }; + 469170DA264D6D28000C7B53 /* ForwardPipeline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 555D0A21C34D49CD83931850 /* ForwardPipeline.cpp */; }; + 469170DB264D6D28000C7B53 /* ForwardStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B5AAFC2E842D455792FDD268 /* ForwardStage.cpp */; }; + 469170DC264D6D28000C7B53 /* UIPhase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F3CE4F3BD3224B15BDED93AB /* UIPhase.cpp */; }; + 469170DD264D6D28000C7B53 /* DefineMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70AE7646FDFD4358B8AC099B /* DefineMap.cpp */; }; + 469170DE264D6D28000C7B53 /* SharedMemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA8D47144502490F985D0A4C /* SharedMemory.cpp */; }; + 469170DF264D6D28000C7B53 /* ShadowFlow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F00AC16092F948FFA33E18BA /* ShadowFlow.cpp */; }; + 469170E0264D6D28000C7B53 /* ShadowStage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72B40C9741F04F13B6083A6C /* ShadowStage.cpp */; }; + 469170E1264D6D28000C7B53 /* LocalStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 666FF1BE2CEE4557B5EA04EA /* LocalStorage.cpp */; }; + 469170E2264D6D28000C7B53 /* EditBox-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9ACF46F1F89F4C43A76D5215 /* EditBox-mac.mm */; }; + 469170E3264D6D28000C7B53 /* AssetsManagerEx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8DB66FB18B5458CA9E9C92A /* AssetsManagerEx.cpp */; }; + 469170E4264D6D28000C7B53 /* AsyncTaskPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EA525DF896594BC3BA193113 /* AsyncTaskPool.cpp */; }; + 469170E5264D6D28000C7B53 /* EventAssetsManagerEx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7659E3BC6064639AAD64ADE /* EventAssetsManagerEx.cpp */; }; + 469170E6264D6D28000C7B53 /* Manifest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1470BFEBA57D46238D657C2B /* Manifest.cpp */; }; + 469170E7264D6D28000C7B53 /* ConvertUTF.c in Sources */ = {isa = PBXBuildFile; fileRef = 1D1883F0367D42A1A9896943 /* ConvertUTF.c */; }; + 469170E8264D6D28000C7B53 /* ConvertUTFWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AABDB9DC97C840A6953A15A2 /* ConvertUTFWrapper.cpp */; }; + 469170E9264D6D28000C7B53 /* SRDelegateController.m in Sources */ = {isa = PBXBuildFile; fileRef = 452F00A3CB8D47398B190D75 /* SRDelegateController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170EA264D6D28000C7B53 /* SRIOConsumer.m in Sources */ = {isa = PBXBuildFile; fileRef = 9626943E58844A3DA51CAB2B /* SRIOConsumer.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170EB264D6D28000C7B53 /* SRIOConsumerPool.m in Sources */ = {isa = PBXBuildFile; fileRef = EB3EE998A34943B4922E6495 /* SRIOConsumerPool.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170EC264D6D28000C7B53 /* SRProxyConnect.m in Sources */ = {isa = PBXBuildFile; fileRef = 58436CA0D6264F77A1B61060 /* SRProxyConnect.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170ED264D6D28000C7B53 /* SRRunLoopThread.m in Sources */ = {isa = PBXBuildFile; fileRef = 85E9F7E67BF847E8AFE26096 /* SRRunLoopThread.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170EE264D6D28000C7B53 /* SRConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 62EDDB4357764906A035868A /* SRConstants.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170EF264D6D28000C7B53 /* SRPinningSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = 83F2B458639C4928BC5CCB11 /* SRPinningSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F0264D6D28000C7B53 /* SRError.m in Sources */ = {isa = PBXBuildFile; fileRef = D344841A08C44082B584CFE9 /* SRError.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F1264D6D28000C7B53 /* SRHTTPConnectMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 5F6B8E090EFF468686068AAB /* SRHTTPConnectMessage.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F2264D6D28000C7B53 /* SRHash.m in Sources */ = {isa = PBXBuildFile; fileRef = FF920EBDB9A143A5B9C6D51C /* SRHash.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F3264D6D28000C7B53 /* SRLog.m in Sources */ = {isa = PBXBuildFile; fileRef = D1E149D25B174ABA8A8F5376 /* SRLog.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F4264D6D28000C7B53 /* SRMutex.m in Sources */ = {isa = PBXBuildFile; fileRef = FDEB8AC4EE984BF3AD627C12 /* SRMutex.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F5264D6D28000C7B53 /* SRRandom.m in Sources */ = {isa = PBXBuildFile; fileRef = 637E09F2BF00499391647607 /* SRRandom.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F6264D6D28000C7B53 /* SRSIMDHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = A0D6D477D5BF44B489675075 /* SRSIMDHelpers.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F7264D6D28000C7B53 /* SRURLUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 54A38D43E0AF42B38D7C70AE /* SRURLUtilities.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F8264D6D28000C7B53 /* NSRunLoop+SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = C0396C4017B44F5CBA3810B9 /* NSRunLoop+SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170F9264D6D28000C7B53 /* NSURLRequest+SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 56BF851511534048A709FA8D /* NSURLRequest+SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170FA264D6D28000C7B53 /* SRSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = AC4C9F86CA0C44FBAAC4EE8B /* SRSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170FB264D6D28000C7B53 /* SRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 908ADAC4E3F84009B0CED70F /* SRWebSocket.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 469170FC264D6D28000C7B53 /* tinyxml2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87E3B0DE8A5A4CC28476FD12 /* tinyxml2.cpp */; }; + 469170FD264D6D28000C7B53 /* tommy.c in Sources */ = {isa = PBXBuildFile; fileRef = 184431240FFC43909A60F5E7 /* tommy.c */; }; + 469170FE264D6D28000C7B53 /* ioapi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7DEED2DD4F34438C89E44603 /* ioapi.cpp */; }; + 469170FF264D6D28000C7B53 /* ioapi_mem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1E17BDD288C2404293D05399 /* ioapi_mem.cpp */; }; + 46917100264D6D28000C7B53 /* unzip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BB34238F94DF40A0A5679201 /* unzip.cpp */; }; + 46917101264D6D28000C7B53 /* xxtea.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D524DA425FB14ED78248D9E1 /* xxtea.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 00012061B0CB4886A3F0894E /* Vec4.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec4.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.h"; sourceTree = SOURCE_ROOT; }; + 00295C48DCB44BF4A2EA0730 /* jsb_cocos_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_cocos_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_cocos_auto.h"; sourceTree = SOURCE_ROOT; }; + 00EB8F9BF86F4C1AB3A0A956 /* http_parser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = http_parser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/http_parser.h"; sourceTree = SOURCE_ROOT; }; + 00F372E9A5E54738AB98AC7B /* JeAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JeAlloc.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/JeAlloc.h"; sourceTree = SOURCE_ROOT; }; + 00F388C3CE1741C6B67733D6 /* etc1.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = etc1.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc1.h"; sourceTree = SOURCE_ROOT; }; + 012B4CD605684F00BCCC6864 /* SAXParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SAXParser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/SAXParser.h"; sourceTree = SOURCE_ROOT; }; + 01E54EF4D4CB47A0B6102640 /* PipelineStateManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateManager.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineStateManager.cpp"; sourceTree = SOURCE_ROOT; }; + 01E5D8817C15421B93B52AE4 /* inspector_agent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_agent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_agent.h"; sourceTree = SOURCE_ROOT; }; + 01F92B962F2B48E2B493D7B2 /* AnimationState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/AnimationState.h"; sourceTree = SOURCE_ROOT; }; + 020365FF97B64799BEA2A98D /* EmptyTexture.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyTexture.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyTexture.cpp"; sourceTree = SOURCE_ROOT; }; + 0232D566903E49ED88C192DB /* InputAssemblerValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InputAssemblerValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/InputAssemblerValidator.h"; sourceTree = SOURCE_ROOT; }; + 024277FC1637460AA463EA05 /* CCArmatureDisplay.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCArmatureDisplay.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureDisplay.cpp"; sourceTree = SOURCE_ROOT; }; + 02A6BA3FE12D42E58EA3D798 /* jsb_platfrom_apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = jsb_platfrom_apple.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_platfrom_apple.mm"; sourceTree = SOURCE_ROOT; }; + 02AE8736B96B4AA08DF2C4F4 /* JavaScriptObjCBridge.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = JavaScriptObjCBridge.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/JavaScriptObjCBridge.mm"; sourceTree = SOURCE_ROOT; }; + 02B580E073594BC48D1F7550 /* SamplerAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SamplerAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/SamplerAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 02E9D00B85674D56AF37178F /* DevicePassResourceTable.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DevicePassResourceTable.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePassResourceTable.cpp"; sourceTree = SOURCE_ROOT; }; + 03161F790B304AA6A17E6725 /* SamplerValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SamplerValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/SamplerValidator.h"; sourceTree = SOURCE_ROOT; }; + 0377FDB81C864D84B48D3254 /* Memory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Memory.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/Memory.cpp"; sourceTree = SOURCE_ROOT; }; + 04430356222943D18EE78C92 /* jsb_socketio.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_socketio.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_socketio.cpp"; sourceTree = SOURCE_ROOT; }; + 045370334C0342FB93A58463 /* Device-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "Device-apple.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/Device-apple.h"; sourceTree = SOURCE_ROOT; }; + 04C39DB3CFBF413CBE98F1DF /* MTLSemaphore.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLSemaphore.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSemaphore.h"; sourceTree = SOURCE_ROOT; }; + 04E17EF37FCB40CEB3370999 /* TextureAtlasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureAtlasData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/TextureAtlasData.cpp"; sourceTree = SOURCE_ROOT; }; + 056D6F48A10E40FFBCECD9A6 /* RenderPassValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPassValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/RenderPassValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 0644A52A317B4853B85749CC /* Semaphore.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Semaphore.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Semaphore.cpp"; sourceTree = SOURCE_ROOT; }; + 06F12FEE1A204189BFF14532 /* WorldClock.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = WorldClock.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/WorldClock.cpp"; sourceTree = SOURCE_ROOT; }; + 07A6DD5E083F48669C0BF911 /* GFXInputAssembler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXInputAssembler.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXInputAssembler.cpp"; sourceTree = SOURCE_ROOT; }; + 093FC66F36FA48C09B91FC7E /* LightingFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LightingFlow.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingFlow.h"; sourceTree = SOURCE_ROOT; }; + 0A2F94AE92C9420E8FFDBDEE /* StringUtil.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = StringUtil.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringUtil.cpp"; sourceTree = SOURCE_ROOT; }; + 0AFA4AC5A11F4E4D9E70FE6A /* MTLBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLBuffer.h"; sourceTree = SOURCE_ROOT; }; + 0B4D59E8B87D4D1990096C28 /* Class.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Class.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Class.cpp"; sourceTree = SOURCE_ROOT; }; + 0B55096BD5004A3A99C3C367 /* util-inl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "util-inl.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util-inl.h"; sourceTree = SOURCE_ROOT; }; + 0B620C61BE334A0E88203118 /* Point.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Point.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Point.cpp"; sourceTree = SOURCE_ROOT; }; + 0C95D2DB90CE4CFEA1643826 /* QueueAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = QueueAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/QueueAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 0D54FD7C92B747639AF14390 /* GFXPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXPipelineState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineState.h"; sourceTree = SOURCE_ROOT; }; + 0D74082DEF4B44C1A00ED885 /* SharedBufferManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SharedBufferManager.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/SharedBufferManager.h"; sourceTree = SOURCE_ROOT; }; + 0D7C7DD7FBC84482A1D22940 /* Scheduler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Scheduler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Scheduler.h"; sourceTree = SOURCE_ROOT; }; + 0DA486B43CF24FEEAC38A339 /* AudioEngine.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioEngine.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/include/AudioEngine.h"; sourceTree = SOURCE_ROOT; }; + 0EC21A1B9D49435EBA5E21B6 /* EmptyQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 0EC89CB1179E4F50B3A384D9 /* Scheduler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Scheduler.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Scheduler.cpp"; sourceTree = SOURCE_ROOT; }; + 0F0F4EDD7D254A31B8EE35E2 /* GFXGlobalBarrier.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXGlobalBarrier.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXGlobalBarrier.h"; sourceTree = SOURCE_ROOT; }; + 0F375D7EDA1E4DF890402A76 /* TextureValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/TextureValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 0F83107429A84755B2BBFC59 /* AudioPlayer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioPlayer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioPlayer.h"; sourceTree = SOURCE_ROOT; }; + 0F966C47475745AA86996F43 /* Mat4.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Mat4.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.inl"; sourceTree = SOURCE_ROOT; }; + 0FD1EA9E9BDF41F18C3138CF /* RefCounter.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RefCounter.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/RefCounter.cpp"; sourceTree = SOURCE_ROOT; }; + 10F7E93FB0464171B26FDF1B /* jsb_helper.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_helper.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_helper.h"; sourceTree = SOURCE_ROOT; }; + 11009685AB9E42A7A95455E3 /* PipelineStateValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineStateValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 127A69EC35084C3DA80EA1C9 /* ZipUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ZipUtils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ZipUtils.h"; sourceTree = SOURCE_ROOT; }; + 1317E436DE4C46DAA8A80B1C /* EmptyContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyContext.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyContext.h"; sourceTree = SOURCE_ROOT; }; + 137096C5210445C3B916100A /* BufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/BufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 13A5FAD2BBBE41D281D70CA7 /* PassNode.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassNode.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNode.cpp"; sourceTree = SOURCE_ROOT; }; + 13AF104A80CC41E1B4521C7E /* AudioCache.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioCache.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioCache.mm"; sourceTree = SOURCE_ROOT; }; + 14343C77ADEF4162AEB763BA /* ColorTransform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ColorTransform.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/ColorTransform.h"; sourceTree = SOURCE_ROOT; }; + 1466AE4D17C74A99A549741E /* jsb_network_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_network_manual.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_network_manual.h"; sourceTree = SOURCE_ROOT; }; + 1470BFEBA57D46238D657C2B /* Manifest.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Manifest.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/Manifest.cpp"; sourceTree = SOURCE_ROOT; }; + 15F80389C1004308BE5C6131 /* EventObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventObject.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/EventObject.cpp"; sourceTree = SOURCE_ROOT; }; + 16106015E9114914B0EEB8AD /* MappingUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MappingUtils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/MappingUtils.cpp"; sourceTree = SOURCE_ROOT; }; + 16826C32FD9F4527A5C875FD /* jsb_xmlhttprequest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_xmlhttprequest.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_xmlhttprequest.h"; sourceTree = SOURCE_ROOT; }; + 168FFB16FBB04C3BAC5C9477 /* IOBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IOBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOBuffer.h"; sourceTree = SOURCE_ROOT; }; + 175274620ACA47FC87449091 /* RenderInstancedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderInstancedQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderInstancedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 176B0AE2807F4599BA5330D9 /* SRHash.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRHash.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHash.h"; sourceTree = SOURCE_ROOT; }; + 17897DF9593441C8A3B98BC1 /* RenderPassAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPassAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/RenderPassAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 181D5FC95515474A89BF29CE /* DevicePassResourceTable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DevicePassResourceTable.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePassResourceTable.h"; sourceTree = SOURCE_ROOT; }; + 184431240FFC43909A60F5E7 /* tommy.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = tommy.c; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tommyds/tommy.c"; sourceTree = SOURCE_ROOT; }; + 184E159F590843E592F46AA7 /* MiddlewareManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MiddlewareManager.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareManager.h"; sourceTree = SOURCE_ROOT; }; + 18BCC86F0AE9428DB3ED423F /* Device-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Device-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/Device-apple.mm"; sourceTree = SOURCE_ROOT; }; + 18F0EC080B304A4F88DF25B0 /* MTLUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLUtils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLUtils.h"; sourceTree = SOURCE_ROOT; }; + 1971F55B06BC4737B297CFB4 /* MessageQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MessageQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/MessageQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 19FD85E5A133413587C4921F /* SRHTTPConnectMessage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRHTTPConnectMessage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHTTPConnectMessage.h"; sourceTree = SOURCE_ROOT; }; + 1A1A080A919745E58E579FA9 /* SRRandom.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRRandom.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRRandom.h"; sourceTree = SOURCE_ROOT; }; + 1A910DEF13CE42F489E6A93B /* cocos-ext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "cocos-ext.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/cocos-ext.h"; sourceTree = SOURCE_ROOT; }; + 1C0BFC2621CF4FD4A367C5A8 /* ExtensionMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ExtensionMacros.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/ExtensionMacros.h"; sourceTree = SOURCE_ROOT; }; + 1C2BD9D17DC54083BE84F5C4 /* AudioEngine.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AudioEngine.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/AudioEngine.cpp"; sourceTree = SOURCE_ROOT; }; + 1CB05292539B438882B884D2 /* MTLDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDescriptorSetLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + 1CCA254B73484DE7B8E0BC5D /* CommandBufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CommandBufferAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/CommandBufferAgent.h"; sourceTree = SOURCE_ROOT; }; + 1D1883F0367D42A1A9896943 /* ConvertUTF.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = ConvertUTF.c; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTF.c"; sourceTree = SOURCE_ROOT; }; + 1D6CC97988D74337940FA6C3 /* DevicePass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DevicePass.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePass.cpp"; sourceTree = SOURCE_ROOT; }; + 1D7D35B28E4C4DC7AA370818 /* MemTracker.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MemTracker.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemTracker.h"; sourceTree = SOURCE_ROOT; }; + 1E147DB6312D4B8F8C01091D /* jsb_gfx_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_gfx_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_gfx_auto.h"; sourceTree = SOURCE_ROOT; }; + 1E17BDD288C2404293D05399 /* ioapi_mem.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ioapi_mem.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi_mem.cpp"; sourceTree = SOURCE_ROOT; }; + 1E914C51FD95417499E2C7AF /* DeviceAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeviceAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DeviceAgent.h"; sourceTree = SOURCE_ROOT; }; + 1F7064865E2B4F178140EC4F /* Vec2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec2.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.h"; sourceTree = SOURCE_ROOT; }; + 202A2C3CA6D64098ADDA6D3A /* ConstraintData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConstraintData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ConstraintData.cpp"; sourceTree = SOURCE_ROOT; }; + 20C602DA27664CBA87990D42 /* EmptyDescriptorSetLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDescriptorSetLayout.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSetLayout.cpp"; sourceTree = SOURCE_ROOT; }; + 20E1275EFE084670A1EC45F9 /* Quaternion.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Quaternion.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.h"; sourceTree = SOURCE_ROOT; }; + 2143B90C08084C1BB44F1690 /* TFJobGraph.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TFJobGraph.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobGraph.cpp"; sourceTree = SOURCE_ROOT; }; + 216436C240A94180B844A727 /* PipelineStateValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineStateValidator.h"; sourceTree = SOURCE_ROOT; }; + 21ADBBC5063540E087A06228 /* NSRunLoop+SRWebSocketPrivate.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSRunLoop+SRWebSocketPrivate.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/NSRunLoop+SRWebSocketPrivate.h"; sourceTree = SOURCE_ROOT; }; + 21C2FED0141440BE9BA4FD33 /* AudioDecoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioDecoder.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioDecoder.h"; sourceTree = SOURCE_ROOT; }; + 22426561742B40B981843758 /* DescriptorSetLayoutAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetLayoutAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetLayoutAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 226D4DF95E2C428F8D9D4D52 /* PlanarShadowQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PlanarShadowQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PlanarShadowQueue.h"; sourceTree = SOURCE_ROOT; }; + 22854E8935054D1299913341 /* HandleObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HandleObject.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/HandleObject.h"; sourceTree = SOURCE_ROOT; }; + 2285C5EE8DB044A096FDD2BD /* jsb_platform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_platform.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_platform.h"; sourceTree = SOURCE_ROOT; }; + 23D7A67527724738BA050617 /* PoolType.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PoolType.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/PoolType.h"; sourceTree = SOURCE_ROOT; }; + 23E7B5608E0C42FC84EE89D6 /* View.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = View.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/View.h"; sourceTree = SOURCE_ROOT; }; + 2506630CF4B848CB90874604 /* CallbackPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CallbackPass.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/CallbackPass.h"; sourceTree = SOURCE_ROOT; }; + 253400FC457E4A3FA272B995 /* EmptyRenderPass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyRenderPass.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyRenderPass.cpp"; sourceTree = SOURCE_ROOT; }; + 25596E8C9DAD43BBBEF8F1FF /* ValidationUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ValidationUtils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ValidationUtils.h"; sourceTree = SOURCE_ROOT; }; + 2559B057CBE4478ABCF490E8 /* ShaderAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShaderAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/ShaderAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 25B9140C5EA146798DE19DDD /* jsb_network_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_network_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_network_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 25BBBCF9C4B443CA8ABD45F0 /* MemDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MemDef.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemDef.h"; sourceTree = SOURCE_ROOT; }; + 25C489421B2944E29922A7B4 /* MiddlewareManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MiddlewareManager.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareManager.cpp"; sourceTree = SOURCE_ROOT; }; + 2666F24BB3D840BD8A2ED8F6 /* GFXFramebuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXFramebuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXFramebuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 26FD76AE417F4209A8302DA9 /* GFXObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXObject.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXObject.cpp"; sourceTree = SOURCE_ROOT; }; + 277FC5C51FF247669EAD278C /* Reachability.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Reachability.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Reachability.cpp"; sourceTree = SOURCE_ROOT; }; + 27C6D28419E74B38BEE16CA4 /* SRURLUtilities.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRURLUtilities.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRURLUtilities.h"; sourceTree = SOURCE_ROOT; }; + 2901476AD5824D03AA86EABB /* DefineMap.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DefineMap.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/DefineMap.h"; sourceTree = SOURCE_ROOT; }; + 29091C14DE014791ABE02B81 /* IOTypedArray.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IOTypedArray.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOTypedArray.h"; sourceTree = SOURCE_ROOT; }; + 294699D3F3D34A4496CA69CA /* BufferPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferPool.h"; sourceTree = SOURCE_ROOT; }; + 294BA990519149049CF8D1F7 /* CommandBufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CommandBufferValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/CommandBufferValidator.h"; sourceTree = SOURCE_ROOT; }; + 29C1E54F6AF64001B2857C53 /* CanvasRenderingContext2D.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CanvasRenderingContext2D.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/CanvasRenderingContext2D.h"; sourceTree = SOURCE_ROOT; }; + 2A09E13CDD7C4CA19550CF0E /* UserData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UserData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/UserData.cpp"; sourceTree = SOURCE_ROOT; }; + 2AAE1FD428544EC784A450FE /* DescriptorSetAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 2ABB219C37A44BB99B17EA0A /* Bone.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Bone.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Bone.cpp"; sourceTree = SOURCE_ROOT; }; + 2AFF1B7EC5304E17BAED8199 /* MTLTexture.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLTexture.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLTexture.mm"; sourceTree = SOURCE_ROOT; }; + 2D0A23688A7D401F967C5FBC /* DragonBonesHeaders.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBonesHeaders.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/DragonBonesHeaders.h"; sourceTree = SOURCE_ROOT; }; + 2D0B20D30A6F4ED481F56998 /* GFXGlobalBarrier.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXGlobalBarrier.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXGlobalBarrier.cpp"; sourceTree = SOURCE_ROOT; }; + 2D4A69B71412499A8F987378 /* JobSystem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JobSystem.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/JobSystem.h"; sourceTree = SOURCE_ROOT; }; + 2E3032331001487697F21C23 /* DragonBonesData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBonesData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DragonBonesData.h"; sourceTree = SOURCE_ROOT; }; + 2E9BF7C9E4714555BCC89938 /* config.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = config.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/config.cpp"; sourceTree = SOURCE_ROOT; }; + 2EACCF3DF17742BBA74C7EB6 /* AudioPlayer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioPlayer.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioPlayer.mm"; sourceTree = SOURCE_ROOT; }; + 2EE6655AFB964BD7BBB74EC1 /* HttpClient.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = HttpClient.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpClient.cpp"; sourceTree = SOURCE_ROOT; }; + 2F0F7DBACB8E4FEDBA28B114 /* CCFactory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCFactory.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCFactory.cpp"; sourceTree = SOURCE_ROOT; }; + 2F68889A8E064522A578C0DF /* HttpClient.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpClient.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpClient.h"; sourceTree = SOURCE_ROOT; }; + 30610A0FD5B744A4A28F4797 /* DeferredPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeferredPipeline.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/DeferredPipeline.h"; sourceTree = SOURCE_ROOT; }; + 313F904641C14FA69665DD7E /* HttpResponse.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpResponse.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpResponse.h"; sourceTree = SOURCE_ROOT; }; + 31ED601B25BB44BFA8CBB2C3 /* CCTextureAtlasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCTextureAtlasData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCTextureAtlasData.cpp"; sourceTree = SOURCE_ROOT; }; + 31F1EE7320254A3BB8A33F81 /* Class.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Class.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Class.h"; sourceTree = SOURCE_ROOT; }; + 31FE8AAC389643B9931E1DEE /* SRMutex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRMutex.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRMutex.h"; sourceTree = SOURCE_ROOT; }; + 338DD1EA5A7048F08B8FC0FB /* SocketIO.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SocketIO.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/SocketIO.h"; sourceTree = SOURCE_ROOT; }; + 33C15007D71E4AA39EB1AFC6 /* MTLUtils.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLUtils.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLUtils.mm"; sourceTree = SOURCE_ROOT; }; + 33DEAF87BA434130B07C86A1 /* GFXMTL.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXMTL.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/GFXMTL.h"; sourceTree = SOURCE_ROOT; }; + 347657FDC2B448B6A53F65C7 /* Constraint.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Constraint.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Constraint.cpp"; sourceTree = SOURCE_ROOT; }; + 3495199E2E6A40BFAECF9536 /* Quaternion.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Quaternion.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.inl"; sourceTree = SOURCE_ROOT; }; + 35188091FFA84FD6BFFD66A8 /* GFXDeviceManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDeviceManager.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/GFXDeviceManager.h"; sourceTree = SOURCE_ROOT; }; + 3557523872014DF5A9E31298 /* jsb_module_register.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_module_register.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_module_register.h"; sourceTree = SOURCE_ROOT; }; + 35618FCCDC4B4CF0A2541DF2 /* MTLDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDescriptorSet.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + 3691EE3019E141D5A4496823 /* TFJobGraph.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TFJobGraph.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobGraph.h"; sourceTree = SOURCE_ROOT; }; + 3716450A4F534407BD1AC111 /* PassInsertPointManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassInsertPointManager.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassInsertPointManager.h"; sourceTree = SOURCE_ROOT; }; + 37C6BFAD86CE43BB9CE6A9CA /* ConditionVariable.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConditionVariable.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ConditionVariable.cpp"; sourceTree = SOURCE_ROOT; }; + 3816CCEA58624DBA8A9F05C6 /* AudioCache.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioCache.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioCache.h"; sourceTree = SOURCE_ROOT; }; + 38BC6A4A36A746A181901867 /* ThreadPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ThreadPool.h"; sourceTree = SOURCE_ROOT; }; + 38CC2072CD84422AB2E86089 /* MTLBuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLBuffer.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLBuffer.mm"; sourceTree = SOURCE_ROOT; }; + 395E7D313EC14B8AB39B802C /* MTLQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLQueue.h"; sourceTree = SOURCE_ROOT; }; + 39A919A81CBA4578BBE6CDBA /* BatchedBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BatchedBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/BatchedBuffer.h"; sourceTree = SOURCE_ROOT; }; + 39CEC2C7929E4336B27A0782 /* RenderPassAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPassAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/RenderPassAgent.h"; sourceTree = SOURCE_ROOT; }; + 39DE987514224C058E101FCB /* LightingFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LightingFlow.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 3A4DA4CF1F6347A895D9DC28 /* EventAssetsManagerEx.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventAssetsManagerEx.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/EventAssetsManagerEx.h"; sourceTree = SOURCE_ROOT; }; + 3A5EC08101864D8982FCF32B /* KeyCodeHelper.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = KeyCodeHelper.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/KeyCodeHelper.h"; sourceTree = SOURCE_ROOT; }; + 3AA2D0EBEC18441486413839 /* PassNodeBuilder.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassNodeBuilder.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNodeBuilder.cpp"; sourceTree = SOURCE_ROOT; }; + 3AFAEB31AE9248579325B140 /* PipelineLayoutValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineLayoutValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineLayoutValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 3B78CD35150840C897CACE17 /* IOTypedArray.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = IOTypedArray.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOTypedArray.cpp"; sourceTree = SOURCE_ROOT; }; + 3B7EE2F93A944CB8AB72DC81 /* ObjectPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ObjectPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/ObjectPool.cpp"; sourceTree = SOURCE_ROOT; }; + 3B83C639AA9D4908AAE68170 /* ArmatureData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ArmatureData.h"; sourceTree = SOURCE_ROOT; }; + 3BF89C00986C4298A480AF85 /* GFXBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBuffer.h"; sourceTree = SOURCE_ROOT; }; + 3C433664365B4AA8ABA3B9E5 /* HttpAsynConnection-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "HttpAsynConnection-apple.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpAsynConnection-apple.h"; sourceTree = SOURCE_ROOT; }; + 3C845F39198947DCAD95BB7A /* MiddlewareMacro.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MiddlewareMacro.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MiddlewareMacro.h"; sourceTree = SOURCE_ROOT; }; + 3CF68C5C9D4F4B6DAD819E43 /* Mat3.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Mat3.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat3.h"; sourceTree = SOURCE_ROOT; }; + 3DDF76ECF0344FA09414829B /* jsb_global_init.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_global_init.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global_init.h"; sourceTree = SOURCE_ROOT; }; + 3E4F03949C8A4C7196BE2981 /* DownloaderImpl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DownloaderImpl.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl.h"; sourceTree = SOURCE_ROOT; }; + 3EE30782C63349CEB48EECA1 /* jsb_audio_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_audio_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_audio_auto.h"; sourceTree = SOURCE_ROOT; }; + 3F30E9D20F674581B8C0436F /* BatchedBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BatchedBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/BatchedBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 3F5948E0BC7E468DBB4EE069 /* Mat4.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Mat4.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.cpp"; sourceTree = SOURCE_ROOT; }; + 3FA3D89D53E44A8095D5EA56 /* CoreStd.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CoreStd.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/CoreStd.h"; sourceTree = SOURCE_ROOT; }; + 3FC940346387495982E83699 /* Geometry.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Geometry.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Geometry.h"; sourceTree = SOURCE_ROOT; }; + 4001F133D6174FDE96CFF0AE /* MeshBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MeshBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MeshBuffer.h"; sourceTree = SOURCE_ROOT; }; + 4041F57D51ED4C19AA1EFFA0 /* SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRWebSocket.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + 413E7BF65055408181181224 /* CanvasData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CanvasData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/CanvasData.cpp"; sourceTree = SOURCE_ROOT; }; + 41674608D1C64B3ABFDB091A /* ResourceEntry.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceEntry.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceEntry.h"; sourceTree = SOURCE_ROOT; }; + 41A528FCCBAE460DB607C953 /* BaseFactory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseFactory.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/factory/BaseFactory.h"; sourceTree = SOURCE_ROOT; }; + 42C132E8A57E40DCB2C0348C /* ioapi_mem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ioapi_mem.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi_mem.h"; sourceTree = SOURCE_ROOT; }; + 42E5E1551DF34E41823EB8F9 /* Transform.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Transform.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Transform.cpp"; sourceTree = SOURCE_ROOT; }; + 43ABBC9380A8413AA4B8386E /* EmptyDevice.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDevice.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDevice.cpp"; sourceTree = SOURCE_ROOT; }; + 44A6760E16134CA5A2B9D2BE /* AsyncTaskPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AsyncTaskPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AsyncTaskPool.h"; sourceTree = SOURCE_ROOT; }; + 44CEDB097E0C41D2960EB16C /* DisplayData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DisplayData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DisplayData.h"; sourceTree = SOURCE_ROOT; }; + 452F00A3CB8D47398B190D75 /* SRDelegateController.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRDelegateController.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate/SRDelegateController.m"; sourceTree = SOURCE_ROOT; }; + 45601CAA9F014ECCA4B6CA9B /* PassNode.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassNode.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNode.h"; sourceTree = SOURCE_ROOT; }; + 46049968B8C847B6882EEC81 /* AllocatedObj.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AllocatedObj.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/AllocatedObj.h"; sourceTree = SOURCE_ROOT; }; + 4637825F586442C38E2C0599 /* LinearAllocatorPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LinearAllocatorPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/LinearAllocatorPool.h"; sourceTree = SOURCE_ROOT; }; + 467AF02145854C6292FD4435 /* CCFactory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCFactory.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCFactory.h"; sourceTree = SOURCE_ROOT; }; + 46917107264D6D28000C7B53 /* libcocos3 Mac.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libcocos3 Mac.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 47EE51BDA06945D59300EEC9 /* jsb_editor_support_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_editor_support_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_editor_support_auto.h"; sourceTree = SOURCE_ROOT; }; + 488BFF5D6A744B5CAAB384DE /* etc2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = etc2.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc2.cpp"; sourceTree = SOURCE_ROOT; }; + 48D1FC5E1D58444C8F7B3E47 /* jsb_pipeline_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_pipeline_manual.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_pipeline_manual.h"; sourceTree = SOURCE_ROOT; }; + 49773B760129421282877405 /* CanvasRenderingContext2D-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "CanvasRenderingContext2D-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/CanvasRenderingContext2D-apple.mm"; sourceTree = SOURCE_ROOT; }; + 497F71C52A284E7EB792098B /* GFXShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXShader.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXShader.h"; sourceTree = SOURCE_ROOT; }; + 4AC3FC1A4A124139BE94B075 /* VirtualResource.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = VirtualResource.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/VirtualResource.cpp"; sourceTree = SOURCE_ROOT; }; + 4B035719B75B4A0D81A15DC8 /* RenderQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 4BB1C6806F094ABDADD9AAEE /* NSURLRequest+SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSURLRequest+SRWebSocket.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSURLRequest+SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + 4C32FE8C6F66440AAA6D3510 /* Ref.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Ref.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Ref.h"; sourceTree = SOURCE_ROOT; }; + 4C5B513665864920BCED20FE /* SeApi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SeApi.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/SeApi.h"; sourceTree = SOURCE_ROOT; }; + 4C62557D431D48E6BFE2DF72 /* ThreadPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadPool.h"; sourceTree = SOURCE_ROOT; }; + 4C6F964182D64F7FB5A66FA5 /* RenderFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderFlow.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 4C8FF768800E42AFA57A891F /* DisplayData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DisplayData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DisplayData.cpp"; sourceTree = SOURCE_ROOT; }; + 4CD30C3F3B294B96AD8CD7A4 /* GFXTexture.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXTexture.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTexture.cpp"; sourceTree = SOURCE_ROOT; }; + 4D59FCA6E9304460BB87859C /* EmptyPipelineLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyPipelineLayout.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineLayout.cpp"; sourceTree = SOURCE_ROOT; }; + 4D75249FE36B4416BED23988 /* CCArmatureCacheDisplay.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCArmatureCacheDisplay.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureCacheDisplay.cpp"; sourceTree = SOURCE_ROOT; }; + 4E1D2186B059448590AA8A7A /* BaseFactory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseFactory.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/factory/BaseFactory.cpp"; sourceTree = SOURCE_ROOT; }; + 4E913BC5C326483EA8CB3E4A /* xxtea.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = xxtea.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/xxtea/xxtea.h"; sourceTree = SOURCE_ROOT; }; + 4FDC8EAD25C349978E50B5A2 /* jsb_helper.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_helper.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_helper.cpp"; sourceTree = SOURCE_ROOT; }; + 5053403BA2294A4A9FD8D9CA /* EmptyContext.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyContext.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyContext.cpp"; sourceTree = SOURCE_ROOT; }; + 50C9DC9454AB4F82901DD5D6 /* FrameGraph.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FrameGraph.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/FrameGraph.h"; sourceTree = SOURCE_ROOT; }; + 50EEDB07F4414E27BD7C652E /* State.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = State.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/State.h"; sourceTree = SOURCE_ROOT; }; + 512A2DEAD12642AEBC430D30 /* InstancedBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InstancedBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/InstancedBuffer.h"; sourceTree = SOURCE_ROOT; }; + 518BC778E2DF47DC88375036 /* FileUtils-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "FileUtils-apple.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/FileUtils-apple.h"; sourceTree = SOURCE_ROOT; }; + 51D5F8D75BA348FEBB994B01 /* RenderPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderPipeline.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + 521D34BFABED44F181AE246A /* ObjectWrap.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ObjectWrap.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ObjectWrap.cpp"; sourceTree = SOURCE_ROOT; }; + 5229FBD2E6544BF3BFE03E49 /* jsb_dop.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dop.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/jsb_dop.cpp"; sourceTree = SOURCE_ROOT; }; + 52400404897440199DEF9E8F /* BaseObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseObject.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/BaseObject.h"; sourceTree = SOURCE_ROOT; }; + 52593B350F3847CAB314BED9 /* GFXDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDescriptorSet.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + 530EB82E6340408A934FEBDB /* Vertex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vertex.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vertex.h"; sourceTree = SOURCE_ROOT; }; + 534A2BB0C44D4AC7B4640575 /* ShadowMapBatchedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowMapBatchedQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/ShadowMapBatchedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 53D7A89FAE104925B56ACCDE /* ObjectPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ObjectPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/ObjectPool.h"; sourceTree = SOURCE_ROOT; }; + 548CB94A88BA4D15AC63C20B /* AnimationState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationState.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/AnimationState.cpp"; sourceTree = SOURCE_ROOT; }; + 548EF36A7D584545B8A1D302 /* RenderStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderStage.h"; sourceTree = SOURCE_ROOT; }; + 54A38D43E0AF42B38D7C70AE /* SRURLUtilities.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRURLUtilities.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRURLUtilities.m"; sourceTree = SOURCE_ROOT; }; + 54AFB302525148F89ADAEB33 /* csscolorparser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = csscolorparser.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/csscolorparser.cpp"; sourceTree = SOURCE_ROOT; }; + 553FB2B18CE546718BC00B2E /* BaseTimelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BaseTimelineState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/BaseTimelineState.h"; sourceTree = SOURCE_ROOT; }; + 55440363B0AE411097D0B679 /* jsb_audio_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_audio_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_audio_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 555D0A21C34D49CD83931850 /* ForwardPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardPipeline.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + 55699CB32A64483B8EE960DE /* GFXRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXRenderPass.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXRenderPass.h"; sourceTree = SOURCE_ROOT; }; + 55922CEAA484412785B73498 /* util.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = util.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util.h"; sourceTree = SOURCE_ROOT; }; + 563AEA7640B141C6BA8E9CAC /* TextureAtlasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureAtlasData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/TextureAtlasData.h"; sourceTree = SOURCE_ROOT; }; + 564980D312194BB09F91AA71 /* Device-mac.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Device-mac.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/Device-mac.mm"; sourceTree = SOURCE_ROOT; }; + 564CF0E4278D4FE391DE032A /* astc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = astc.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/astc.h"; sourceTree = SOURCE_ROOT; }; + 56BF851511534048A709FA8D /* NSURLRequest+SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "NSURLRequest+SRWebSocket.m"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSURLRequest+SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + 56E5659C2F394F2690FF4F7A /* MeshBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MeshBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/MeshBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 573353DCEE5F43248592AA21 /* RenderBatchedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderBatchedQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderBatchedQueue.h"; sourceTree = SOURCE_ROOT; }; + 5737329DD6C049D99F3B6437 /* Rectangle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Rectangle.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Rectangle.h"; sourceTree = SOURCE_ROOT; }; + 578A8D48AB93427391A69EBA /* etc2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = etc2.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc2.h"; sourceTree = SOURCE_ROOT; }; + 578B4E8A87AD49849B7F9A69 /* DeformVertices.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeformVertices.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/DeformVertices.cpp"; sourceTree = SOURCE_ROOT; }; + 57A0014184B849ECA41B6B3E /* Memory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Memory.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/Memory.h"; sourceTree = SOURCE_ROOT; }; + 57A1B14290B94EE3AE34327A /* Transform.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Transform.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Transform.h"; sourceTree = SOURCE_ROOT; }; + 57C0CCA98A654FB19265C340 /* crypt.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = crypt.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/crypt.h"; sourceTree = SOURCE_ROOT; }; + 57C647AFFA9A415B8B92CE90 /* Value.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Value.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Value.cpp"; sourceTree = SOURCE_ROOT; }; + 57CBD3A5D7FB4296A2B62109 /* Value.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Value.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Value.h"; sourceTree = SOURCE_ROOT; }; + 58436CA0D6264F77A1B61060 /* SRProxyConnect.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRProxyConnect.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy/SRProxyConnect.m"; sourceTree = SOURCE_ROOT; }; + 58F138BB48E5478D85D1D719 /* jsb_network_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_network_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_network_auto.h"; sourceTree = SOURCE_ROOT; }; + 59346C8D840A4C0496EAA7BC /* StlAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StlAlloc.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/StlAlloc.h"; sourceTree = SOURCE_ROOT; }; + 5A3FE9F845364004AA54E621 /* Vertex.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vertex.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vertex.cpp"; sourceTree = SOURCE_ROOT; }; + 5BE204889403465381A25149 /* ThreadPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadPool.cpp"; sourceTree = SOURCE_ROOT; }; + 5C9E7233852A4E888D238338 /* StdAlloc.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StdAlloc.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/StdAlloc.h"; sourceTree = SOURCE_ROOT; }; + 5CFECAE679FD4C91A9488744 /* PipelineStateAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineStateAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineStateAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 5D5CD03C74ED4815B5EC3A7A /* Uri.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Uri.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Uri.h"; sourceTree = SOURCE_ROOT; }; + 5D8C6C0DDF504D6C960231FF /* WebSocket-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "WebSocket-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/WebSocket-apple.mm"; sourceTree = SOURCE_ROOT; }; + 5D97F34C54594C0698DF7C88 /* Vec3.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vec3.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.h"; sourceTree = SOURCE_ROOT; }; + 5DA1ADFC4D96428194B8CFA8 /* MTLRenderCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLRenderCommandEncoder.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; + 5DAA5BE51D2C478896BF35C1 /* ioapi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ioapi.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi.h"; sourceTree = SOURCE_ROOT; }; + 5DC7FB6276784FD7AE851D45 /* DeviceValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeviceValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DeviceValidator.h"; sourceTree = SOURCE_ROOT; }; + 5E30850DBB57401A8D757251 /* GFXBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 5E839EBADDDD4A5F84F2564F /* IEventDispatcher.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IEventDispatcher.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/IEventDispatcher.h"; sourceTree = SOURCE_ROOT; }; + 5E912B7CDD6A4E67BCC38256 /* GFXQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXQueue.h"; sourceTree = SOURCE_ROOT; }; + 5EA8A0185DB94C4BA96504FE /* GFXDef-common.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "GFXDef-common.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef-common.h"; sourceTree = SOURCE_ROOT; }; + 5EDB34275D65452D87C110E3 /* MTLStd.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLStd.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLStd.h"; sourceTree = SOURCE_ROOT; }; + 5F37461E693C4F46815BD89E /* IOBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = IOBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/IOBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 5F6B8E090EFF468686068AAB /* SRHTTPConnectMessage.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRHTTPConnectMessage.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHTTPConnectMessage.m"; sourceTree = SOURCE_ROOT; }; + 604243B25A8A4CD288042A37 /* TransformObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TransformObject.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/TransformObject.h"; sourceTree = SOURCE_ROOT; }; + 606A9A16A20A45219DB3C1BF /* jsb_global_init.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_global_init.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global_init.cpp"; sourceTree = SOURCE_ROOT; }; + 60C79A91B4174E788858ED44 /* BinaryDataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BinaryDataParser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/BinaryDataParser.h"; sourceTree = SOURCE_ROOT; }; + 60DC092BEAC54036806290E4 /* RenderAdditiveLightQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderAdditiveLightQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderAdditiveLightQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 611027076F5C4C7AA1DDCE72 /* BufferAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferAllocator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferAllocator.h"; sourceTree = SOURCE_ROOT; }; + 61342F1D0E354A97A9212EA3 /* GFXRenderPass.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXRenderPass.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXRenderPass.cpp"; sourceTree = SOURCE_ROOT; }; + 613D7DBB1776446BB2AADCDA /* MemTracker.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MemTracker.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/MemTracker.cpp"; sourceTree = SOURCE_ROOT; }; + 619C03C5A5B84248A0093FB4 /* UserData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UserData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/UserData.h"; sourceTree = SOURCE_ROOT; }; + 619C844C4A474D6D825EB00C /* jsb_dop.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dop.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/jsb_dop.h"; sourceTree = SOURCE_ROOT; }; + 62EDDB4357764906A035868A /* SRConstants.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRConstants.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/SRConstants.m"; sourceTree = SOURCE_ROOT; }; + 62F9018F28D24AE39E42A5A8 /* ScriptEngine.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ScriptEngine.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ScriptEngine.cpp"; sourceTree = SOURCE_ROOT; }; + 62F9810B4A1245F5ABEA2B18 /* GFXPipelineLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXPipelineLayout.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineLayout.cpp"; sourceTree = SOURCE_ROOT; }; + 63246BFAF0D54BF1A34991BE /* inspector_io.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_io.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_io.h"; sourceTree = SOURCE_ROOT; }; + 637E09F2BF00499391647607 /* SRRandom.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRRandom.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRRandom.m"; sourceTree = SOURCE_ROOT; }; + 63957920D1544C3FBF89E8A2 /* EmptyBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyBuffer.h"; sourceTree = SOURCE_ROOT; }; + 63C557042A044B449CEC1544 /* CachedArray.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CachedArray.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/CachedArray.h"; sourceTree = SOURCE_ROOT; }; + 63FEFF3BF4314429AE1180A2 /* Log.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Log.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Log.h"; sourceTree = SOURCE_ROOT; }; + 656E583833BF467587ED2D00 /* BaseTimelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseTimelineState.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/BaseTimelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 65CA10A771A54ACDB80F655F /* PipelineStateAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineStateAgent.h"; sourceTree = SOURCE_ROOT; }; + 6666C7F2B9104141930899C3 /* jsb_socketio.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_socketio.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_socketio.h"; sourceTree = SOURCE_ROOT; }; + 666FF1BE2CEE4557B5EA04EA /* LocalStorage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LocalStorage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/storage/local-storage/LocalStorage.cpp"; sourceTree = SOURCE_ROOT; }; + 6691B4455DC24F46AC844D35 /* GFXBase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXBase.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXBase.h"; sourceTree = SOURCE_ROOT; }; + 673ABFA7906E4C9A8F1488AF /* AssetsManagerEx.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AssetsManagerEx.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AssetsManagerEx.h"; sourceTree = SOURCE_ROOT; }; + 679164112C8447BDA8141658 /* Manifest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Manifest.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/Manifest.h"; sourceTree = SOURCE_ROOT; }; + 68126070FF594309B9F7BBF5 /* RenderQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderQueue.h"; sourceTree = SOURCE_ROOT; }; + 68930C562EF143539A80BF16 /* DragonBones.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DragonBones.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/DragonBones.cpp"; sourceTree = SOURCE_ROOT; }; + 68A6B5657EA249A59207C6CD /* LightingStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = LightingStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingStage.cpp"; sourceTree = SOURCE_ROOT; }; + 68E0795111A241C28B39FB1E /* ExtensionExport.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ExtensionExport.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/ExtensionExport.h"; sourceTree = SOURCE_ROOT; }; + 69963309EFDE4533A8D61C06 /* jsb_dragonbones_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dragonbones_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_dragonbones_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 6A7052F9B1FE447EB2603D35 /* StringHandle.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = StringHandle.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringHandle.cpp"; sourceTree = SOURCE_ROOT; }; + 6BB2E9055D384F288423BB90 /* base64.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = base64.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/base64.cpp"; sourceTree = SOURCE_ROOT; }; + 6BDFC4DFD39542FCA892B23D /* PassInsertPointManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PassInsertPointManager.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassInsertPointManager.cpp"; sourceTree = SOURCE_ROOT; }; + 6C8DBE75A17A453FBAB3267E /* SRSIMDHelpers.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRSIMDHelpers.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRSIMDHelpers.h"; sourceTree = SOURCE_ROOT; }; + 6CBF4D1783EB4D1D9AD6DFB6 /* Matrix.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Matrix.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Matrix.h"; sourceTree = SOURCE_ROOT; }; + 6D69BC0B81A045DD9F86742F /* DescriptorSetLayoutAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetLayoutAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetLayoutAgent.h"; sourceTree = SOURCE_ROOT; }; + 6D9E8B50D5D44BC69FE9261B /* GFXDescriptorSet.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDescriptorSet.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSet.cpp"; sourceTree = SOURCE_ROOT; }; + 6DCBD998023F44DE80E3577F /* ThreadSafeLinearAllocator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadSafeLinearAllocator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeLinearAllocator.cpp"; sourceTree = SOURCE_ROOT; }; + 6DEDA7929AB34D1583F2ED6D /* node_debug_options.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node_debug_options.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_debug_options.h"; sourceTree = SOURCE_ROOT; }; + 6E56D2E5B18E4878B798CAC9 /* MTLInputAssembler.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLInputAssembler.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLInputAssembler.mm"; sourceTree = SOURCE_ROOT; }; + 6EB9C52B627C45B4B982460B /* Blackboard.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Blackboard.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Blackboard.h"; sourceTree = SOURCE_ROOT; }; + 6F2F251102D048A7A3E84997 /* BufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/BufferValidator.h"; sourceTree = SOURCE_ROOT; }; + 6F6C8B5DEE324E2E92C34243 /* StringPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringPool.h"; sourceTree = SOURCE_ROOT; }; + 6FBEB86F39F64BF79F9F5543 /* UTF8.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UTF8.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/UTF8.cpp"; sourceTree = SOURCE_ROOT; }; + 6FD88142D97D49D5A45BB428 /* EmptySampler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptySampler.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptySampler.cpp"; sourceTree = SOURCE_ROOT; }; + 6FD9CC50B1D941D98E423B2F /* jsb_pipeline_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_pipeline_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_pipeline_auto.h"; sourceTree = SOURCE_ROOT; }; + 707A2B452EE54D7D9BF71F0A /* DragonBones.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DragonBones.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/DragonBones.h"; sourceTree = SOURCE_ROOT; }; + 70A9AE9860E442B99E1FE611 /* GFXPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXPipelineLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + 70AAD6A19FC74BCC9EA7B768 /* PipelineLayoutValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineLayoutValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/PipelineLayoutValidator.h"; sourceTree = SOURCE_ROOT; }; + 70AE7646FDFD4358B8AC099B /* DefineMap.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DefineMap.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/DefineMap.cpp"; sourceTree = SOURCE_ROOT; }; + 70B1176678184FAEBB94E008 /* EmptySampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptySampler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptySampler.h"; sourceTree = SOURCE_ROOT; }; + 70D0C2F65F564CD8BA95E6C4 /* Reachability.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Reachability.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios/Reachability.h"; sourceTree = SOURCE_ROOT; }; + 71A38B1940384F8F8A1C45DD /* base64.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = base64.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/base64.h"; sourceTree = SOURCE_ROOT; }; + 720A938692564D2FA781A55E /* MTLInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLInputAssembler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + 72B40C9741F04F13B6083A6C /* ShadowStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowStage.cpp"; sourceTree = SOURCE_ROOT; }; + 72CBCC34A7E84F829E8CE6EB /* EventObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventObject.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/event/EventObject.h"; sourceTree = SOURCE_ROOT; }; + 72D10EB0C9C044679F85CE36 /* Config.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Config.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Config.h"; sourceTree = SOURCE_ROOT; }; + 72D759BCF88C40AA86CD4FAD /* ShadowFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowFlow.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowFlow.h"; sourceTree = SOURCE_ROOT; }; + 73509E5866A54D49AB9C82F9 /* Semaphore.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Semaphore.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Semaphore.h"; sourceTree = SOURCE_ROOT; }; + 737638A65DA943A1BF2B46A5 /* Handle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Handle.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Handle.h"; sourceTree = SOURCE_ROOT; }; + 745DB1952467488B8A928ED1 /* Bone.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Bone.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Bone.h"; sourceTree = SOURCE_ROOT; }; + 74DE42227E1B47928E0485EA /* ResourceAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceAllocator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceAllocator.h"; sourceTree = SOURCE_ROOT; }; + 74EBAD385D674F0FB9730595 /* GFXShader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXShader.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXShader.cpp"; sourceTree = SOURCE_ROOT; }; + 752337B5A74343CF9AB81A6E /* VirtualResource.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = VirtualResource.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/VirtualResource.h"; sourceTree = SOURCE_ROOT; }; + 7550C2B4CD474DDC90C03703 /* jsb_dragonbones_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dragonbones_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_dragonbones_auto.h"; sourceTree = SOURCE_ROOT; }; + 75DBD9F5A3DE4B2CB605E65A /* SharedBufferManager.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SharedBufferManager.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/SharedBufferManager.cpp"; sourceTree = SOURCE_ROOT; }; + 762130EAE40D409A9FB4D6B7 /* DownloaderImpl-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "DownloaderImpl-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl-apple.mm"; sourceTree = SOURCE_ROOT; }; + 768EF6E453044181B8824231 /* UTF8.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UTF8.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/UTF8.h"; sourceTree = SOURCE_ROOT; }; + 7706AF85759C4A9B82F5766A /* RenderFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderFlow.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderFlow.h"; sourceTree = SOURCE_ROOT; }; + 77628B2C58F54747B0C678CB /* FileUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FileUtils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/FileUtils.cpp"; sourceTree = SOURCE_ROOT; }; + 7782C09D0EE543F5BDD3FCC4 /* Quaternion.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Quaternion.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Quaternion.cpp"; sourceTree = SOURCE_ROOT; }; + 77A977EDC54243B082286350 /* EventDispatcher.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventDispatcher.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/EventDispatcher.cpp"; sourceTree = SOURCE_ROOT; }; + 780599F96BD548F9B560A985 /* ShadowMapBatchedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowMapBatchedQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/ShadowMapBatchedQueue.h"; sourceTree = SOURCE_ROOT; }; + 7853EC140F514482B00CCD24 /* jsb_classtype.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_classtype.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_classtype.cpp"; sourceTree = SOURCE_ROOT; }; + 786089B9D45747E89E81F191 /* SRRunLoopThread.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRRunLoopThread.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop/SRRunLoopThread.h"; sourceTree = SOURCE_ROOT; }; + 798847CF391F440A906C9839 /* RenderPassValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPassValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/RenderPassValidator.h"; sourceTree = SOURCE_ROOT; }; + 7998DBFC6827462A821399A0 /* MappingUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MappingUtils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/MappingUtils.h"; sourceTree = SOURCE_ROOT; }; + 7A2427988B714BCFB1999DAC /* TimelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TimelineState.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/TimelineState.cpp"; sourceTree = SOURCE_ROOT; }; + 7ADDF7655AE0460092D03424 /* NedPooling.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = NedPooling.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/NedPooling.cpp"; sourceTree = SOURCE_ROOT; }; + 7B6CD72E458D4CDCB4F45405 /* EmptyInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyInputAssembler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + 7BFEBDA641FF4EC7A1AFB042 /* Define.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Define.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/Define.cpp"; sourceTree = SOURCE_ROOT; }; + 7C1DE48C47BE4F088D0C3E8B /* jsb_pipeline_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_pipeline_manual.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_pipeline_manual.cpp"; sourceTree = SOURCE_ROOT; }; + 7C224841CBE04337BC692851 /* base64.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = base64.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/base64.h"; sourceTree = SOURCE_ROOT; }; + 7C8F7395018B4EFEB24DDEE1 /* EmptyDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDevice.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDevice.h"; sourceTree = SOURCE_ROOT; }; + 7CFA0810D0BD42CD87358C96 /* ArmatureCache.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureCache.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCache.h"; sourceTree = SOURCE_ROOT; }; + 7D444D6D57CE4950B4F7D1FD /* jsb_conversions.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_conversions.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_conversions.cpp"; sourceTree = SOURCE_ROOT; }; + 7D618B63812C4BD5BADBB3CF /* ArmatureData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ArmatureData.cpp"; sourceTree = SOURCE_ROOT; }; + 7D832DC8A3D14938921A5362 /* LocalStorage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LocalStorage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/storage/local-storage/LocalStorage.h"; sourceTree = SOURCE_ROOT; }; + 7DC76EBD492F43408BE16F2F /* Utils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Utils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Utils.h"; sourceTree = SOURCE_ROOT; }; + 7DEED2DD4F34438C89E44603 /* ioapi.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ioapi.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/ioapi.cpp"; sourceTree = SOURCE_ROOT; }; + 7DFC62BF317A4D05AEEDE31E /* CustomEventTypes.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CustomEventTypes.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/CustomEventTypes.h"; sourceTree = SOURCE_ROOT; }; + 7E758DC5FDAC4687B7CF70CC /* InputAssemblerValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InputAssemblerValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/InputAssemblerValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 7EE657096A2A4A9EA8DBA3A4 /* GFXFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXFramebuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + 7EFF8E3DF0044518B1D4CFE3 /* EmptyTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyTexture.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyTexture.h"; sourceTree = SOURCE_ROOT; }; + 7F5EEAB66058400891BBC2BE /* Downloader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Downloader.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Downloader.h"; sourceTree = SOURCE_ROOT; }; + 7FF914B06A22453289282E37 /* util.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = util.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/util.cpp"; sourceTree = SOURCE_ROOT; }; + 802A2078433445638E6D45A9 /* SRLog.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRLog.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRLog.h"; sourceTree = SOURCE_ROOT; }; + 80EF36C63B9F468FBE381EB0 /* CCArmatureCacheDisplay.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCArmatureCacheDisplay.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureCacheDisplay.h"; sourceTree = SOURCE_ROOT; }; + 813087D6610D4219A8AFFA70 /* node_debug_options.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = node_debug_options.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_debug_options.cpp"; sourceTree = SOURCE_ROOT; }; + 8134416CD6624BBEBA5ADC72 /* FileUtils-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "FileUtils-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/apple/FileUtils-apple.mm"; sourceTree = SOURCE_ROOT; }; + 815BF0F4DE09484A8DC269D0 /* GbufferFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GbufferFlow.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferFlow.cpp"; sourceTree = SOURCE_ROOT; }; + 8197CCFD9E3142A1B04BD28A /* jsb_extension_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_extension_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_extension_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 81B2E663DB1C4F1DB93D7BBE /* astc.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = astc.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/astc.cpp"; sourceTree = SOURCE_ROOT; }; + 8210697C1D3B4241862D7B82 /* jsb_conversions.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_conversions.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_conversions.h"; sourceTree = SOURCE_ROOT; }; + 821CB21009054D4B890FD823 /* EmptyFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyFramebuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + 82A85305C4F545339B6599D7 /* MTLShader.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLShader.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLShader.mm"; sourceTree = SOURCE_ROOT; }; + 835C64E51DB842478C3EB2EA /* PipelineStateManager.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineStateManager.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineStateManager.h"; sourceTree = SOURCE_ROOT; }; + 83AC4FDA070A447DAEA4F094 /* TypeDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TypeDef.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/TypeDef.h"; sourceTree = SOURCE_ROOT; }; + 83E26E50A7F64F67AF6F07E3 /* BoundingBoxData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BoundingBoxData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/BoundingBoxData.cpp"; sourceTree = SOURCE_ROOT; }; + 83F2B458639C4928BC5CCB11 /* SRPinningSecurityPolicy.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRPinningSecurityPolicy.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m"; sourceTree = SOURCE_ROOT; }; + 846E9BED911647B791B3D12E /* AnimationData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationData.cpp"; sourceTree = SOURCE_ROOT; }; + 84A69596157D471A915F64CE /* Downloader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Downloader.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Downloader.cpp"; sourceTree = SOURCE_ROOT; }; + 851E6323A99E47D292E3622B /* CommandBufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CommandBufferAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/CommandBufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 85690252CE9448C4BDF32C65 /* SRIOConsumer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRIOConsumer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumer.h"; sourceTree = SOURCE_ROOT; }; + 8594B32191844F78ADD10DA4 /* env.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = env.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/env.cpp"; sourceTree = SOURCE_ROOT; }; + 859B932CB0B145959C721991 /* DeferredPipeline.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeferredPipeline.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/DeferredPipeline.cpp"; sourceTree = SOURCE_ROOT; }; + 85AE1A857303442C819A2A49 /* Export.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Export.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/include/Export.h"; sourceTree = SOURCE_ROOT; }; + 85E9F7E67BF847E8AFE26096 /* SRRunLoopThread.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRRunLoopThread.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop/SRRunLoopThread.m"; sourceTree = SOURCE_ROOT; }; + 8629545A266B4374AB1EB8F7 /* Define.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Define.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/Define.h"; sourceTree = SOURCE_ROOT; }; + 864252943068471291689F09 /* MTLCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLCommandBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + 867F9D43F81544D38C324ECA /* SamplerValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SamplerValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/SamplerValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 86AEA54407744091A80E3CAD /* RenderBatchedQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderBatchedQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderBatchedQueue.cpp"; sourceTree = SOURCE_ROOT; }; + 86BBFCAE1F8647EB9FAA5013 /* etc1.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = etc1.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/etc1.cpp"; sourceTree = SOURCE_ROOT; }; + 872A955E098C43EA9739BB56 /* MathUtilNeon.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilNeon.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilNeon.inl"; sourceTree = SOURCE_ROOT; }; + 87B95658C4294035B5240384 /* JeAlloc.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = JeAlloc.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/JeAlloc.cpp"; sourceTree = SOURCE_ROOT; }; + 87E3B0DE8A5A4CC28476FD12 /* tinyxml2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = tinyxml2.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tinyxml2/tinyxml2.cpp"; sourceTree = SOURCE_ROOT; }; + 880D7358A04C4111932CE1CB /* ShaderAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShaderAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/ShaderAgent.h"; sourceTree = SOURCE_ROOT; }; + 886CE3F6CA0D43E4A5162CB1 /* Point.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Point.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/geom/Point.h"; sourceTree = SOURCE_ROOT; }; + 89452AF766B840F5AA00BBC7 /* CanvasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CanvasData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/CanvasData.h"; sourceTree = SOURCE_ROOT; }; + 89A650BF58A041939080D773 /* TypedArrayPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TypedArrayPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/TypedArrayPool.h"; sourceTree = SOURCE_ROOT; }; + 8AAD4C8AAFD0452496D7954A /* Random.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Random.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Random.h"; sourceTree = SOURCE_ROOT; }; + 8AB33699ADEF4C128BC28567 /* SHA1.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SHA1.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/SHA1.cpp"; sourceTree = SOURCE_ROOT; }; + 8AC1C445C27441E7BA2E9D66 /* jsb_xmlhttprequest.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_xmlhttprequest.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_xmlhttprequest.cpp"; sourceTree = SOURCE_ROOT; }; + 8AD420D8E191457ABB9F5388 /* GFXSampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXSampler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXSampler.h"; sourceTree = SOURCE_ROOT; }; + 8B2DC8E2EE5D45D69323E3BE /* Object.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Object.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Object.cpp"; sourceTree = SOURCE_ROOT; }; + 8B31169E70174618B70BD1F3 /* EmptyBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 8B92DB212EEC4D1D8947764C /* AnimationData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationData.h"; sourceTree = SOURCE_ROOT; }; + 8BBEC3AFBA2240A0B9D118C3 /* ShaderValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShaderValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ShaderValidator.h"; sourceTree = SOURCE_ROOT; }; + 8BCA32AB94F74E51BC64F404 /* inspector_socket_server.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_socket_server.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket_server.cpp"; sourceTree = SOURCE_ROOT; }; + 8BDB31122B7F46CFB39EEE7A /* SeApi.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SeApi.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/SeApi.h"; sourceTree = SOURCE_ROOT; }; + 8C8F4B448E504704BF702336 /* EmptyDescriptorSet.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDescriptorSet.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSet.h"; sourceTree = SOURCE_ROOT; }; + 8D283CB1617B4B2886E22C4D /* DescriptorSetAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DescriptorSetAgent.h"; sourceTree = SOURCE_ROOT; }; + 8D3F5B084BCB4FE8ACD313CE /* tinyxml2.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = tinyxml2.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tinyxml2/tinyxml2.h"; sourceTree = SOURCE_ROOT; }; + 8D65C030E57A45EB89B73D91 /* PostprocessStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PostprocessStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/PostprocessStage.h"; sourceTree = SOURCE_ROOT; }; + 8E82B73D450D4BEB88ED3A8B /* GFXContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXContext.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXContext.h"; sourceTree = SOURCE_ROOT; }; + 8EEC2D04207F4D73AEA6B468 /* TextureAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TextureAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/TextureAgent.cpp"; sourceTree = SOURCE_ROOT; }; + 8F279A7CE7B74DA5932FB457 /* JSONDataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = JSONDataParser.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/JSONDataParser.cpp"; sourceTree = SOURCE_ROOT; }; + 90078FFE9EBD45E29AADF782 /* EditBox.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EditBox.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/edit-box/EditBox.h"; sourceTree = SOURCE_ROOT; }; + 908ADAC4E3F84009B0CED70F /* SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRWebSocket.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + 90AFBEEB309D48278DA1C1A3 /* jsb_cocos_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_cocos_manual.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_cocos_manual.h"; sourceTree = SOURCE_ROOT; }; + 92008C7F89864AB6BF8E3019 /* MTLSampler.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLSampler.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSampler.mm"; sourceTree = SOURCE_ROOT; }; + 9249558BCD59438DA1B6B8F9 /* Constraint.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Constraint.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Constraint.h"; sourceTree = SOURCE_ROOT; }; + 928E732EA6F34610B8604FA8 /* tommy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = tommy.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/tommyds/tommy.h"; sourceTree = SOURCE_ROOT; }; + 93E95C579338431C9EF62A46 /* SHA1.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SHA1.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/SHA1.h"; sourceTree = SOURCE_ROOT; }; + 94052F7F21184F8AB35E4627 /* Slot.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Slot.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Slot.h"; sourceTree = SOURCE_ROOT; }; + 94299E74017146BC8F5A386C /* http_parser.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.c; fileEncoding = 4; name = http_parser.c; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/http_parser.c"; sourceTree = SOURCE_ROOT; }; + 9451C2F12EF1443FA21FFC26 /* inspector_agent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_agent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_agent.cpp"; sourceTree = SOURCE_ROOT; }; + 94724F8724D643A2B1212FEA /* ArmatureCache.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureCache.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCache.cpp"; sourceTree = SOURCE_ROOT; }; + 9477B9C01FF9469291AC6667 /* WebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = WebSocket.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/WebSocket.h"; sourceTree = SOURCE_ROOT; }; + 94A3E8FEB5384275A16F2DF4 /* EmptyCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyCommandBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + 94F5FBF534F4415E99153ED4 /* Vec2.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec2.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.cpp"; sourceTree = SOURCE_ROOT; }; + 95212201FACC4E29B923FEC1 /* DataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DataParser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/DataParser.h"; sourceTree = SOURCE_ROOT; }; + 95C51C0779864526A2439BD1 /* Vector.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Vector.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Vector.h"; sourceTree = SOURCE_ROOT; }; + 9626943E58844A3DA51CAB2B /* SRIOConsumer.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRIOConsumer.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumer.m"; sourceTree = SOURCE_ROOT; }; + 96659FDB00F245C4AE7FC38A /* ThreadSafeCounter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadSafeCounter.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeCounter.h"; sourceTree = SOURCE_ROOT; }; + 97770FEBB7294EC8B881DB4F /* HttpRequest.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpRequest.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpRequest.h"; sourceTree = SOURCE_ROOT; }; + 978215A82DF14A09B97BC6E5 /* JavaScriptObjCBridge.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JavaScriptObjCBridge.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/JavaScriptObjCBridge.h"; sourceTree = SOURCE_ROOT; }; + 97EC016D44F2407A9B4078C6 /* GFXCommandBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXCommandBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXCommandBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + 97F0DBC3A2A44EAF88615524 /* Mat3.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Mat3.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat3.cpp"; sourceTree = SOURCE_ROOT; }; + 986D2E8E779441E9A2F222D3 /* View.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = View.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/View.mm"; sourceTree = SOURCE_ROOT; }; + 9905BA8373D146259C0DEC04 /* Image.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Image.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Image.h"; sourceTree = SOURCE_ROOT; }; + 9A368EAD21D04BA6A7C33540 /* NedPooling.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = NedPooling.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/NedPooling.h"; sourceTree = SOURCE_ROOT; }; + 9A56EDB1590F49C19C6B05C3 /* GFXDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDevice.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDevice.h"; sourceTree = SOURCE_ROOT; }; + 9A77A31AAF3D4A33BAC4AD0D /* GFXDevice.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDevice.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDevice.cpp"; sourceTree = SOURCE_ROOT; }; + 9ACF46F1F89F4C43A76D5215 /* EditBox-mac.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "EditBox-mac.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/ui/edit-box/EditBox-mac.mm"; sourceTree = SOURCE_ROOT; }; + 9B2C4415CB7B4FA1800EF9C0 /* Uri.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Uri.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/Uri.cpp"; sourceTree = SOURCE_ROOT; }; + 9B38D5FE24F24E40BFF138B5 /* FileUtils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FileUtils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/FileUtils.h"; sourceTree = SOURCE_ROOT; }; + 9B5206EA877148ACB5F0C4D0 /* GbufferStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GbufferStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferStage.h"; sourceTree = SOURCE_ROOT; }; + 9B7DD605AD5B4BD1983F526F /* ShaderValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShaderValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ShaderValidator.cpp"; sourceTree = SOURCE_ROOT; }; + 9BAD4AA50ACA49C58C31897E /* ForwardFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardFlow.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardFlow.h"; sourceTree = SOURCE_ROOT; }; + 9CC7D0A6353940A6BAE2BA07 /* ArmatureCacheMgr.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ArmatureCacheMgr.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCacheMgr.h"; sourceTree = SOURCE_ROOT; }; + 9DDA3DA8D9954DF193397578 /* jsb_pipeline_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_pipeline_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_pipeline_auto.cpp"; sourceTree = SOURCE_ROOT; }; + 9F0C03D5F57C49F1A190DEFF /* MTLComputeCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLComputeCommandEncoder.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLComputeCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; + A061F0CEFCB04518951B63FF /* Vec2.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec2.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec2.inl"; sourceTree = SOURCE_ROOT; }; + A0C6D715C7424EAB9711A843 /* jsb_network_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_network_manual.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_network_manual.cpp"; sourceTree = SOURCE_ROOT; }; + A0D6D477D5BF44B489675075 /* SRSIMDHelpers.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRSIMDHelpers.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRSIMDHelpers.m"; sourceTree = SOURCE_ROOT; }; + A0E0F269705D4E9D9115DA49 /* Event.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Event.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/Event.h"; sourceTree = SOURCE_ROOT; }; + A1934589FFF148D790775937 /* GbufferFlow.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GbufferFlow.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferFlow.h"; sourceTree = SOURCE_ROOT; }; + A1C3C05AC61F4F4DA7F3CB14 /* GFXTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXTexture.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTexture.h"; sourceTree = SOURCE_ROOT; }; + A26614B46FC444928F788FAA /* Vec3.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec3.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.cpp"; sourceTree = SOURCE_ROOT; }; + A2809CF9C70D4DD0896559FE /* EmptyDescriptorSet.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyDescriptorSet.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSet.cpp"; sourceTree = SOURCE_ROOT; }; + A29F30C6B85D4C4D85EC3A23 /* TransformObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TransformObject.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/TransformObject.cpp"; sourceTree = SOURCE_ROOT; }; + A2AAD20710B9475CB23A27C3 /* BufferAllocator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferAllocator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferAllocator.cpp"; sourceTree = SOURCE_ROOT; }; + A3B5A87F8DE54633A78A0CEE /* BufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BufferAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/BufferAgent.h"; sourceTree = SOURCE_ROOT; }; + A4337C43B1ED4389A518D095 /* StringHandle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringHandle.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringHandle.h"; sourceTree = SOURCE_ROOT; }; + A4BD23B7313148A89FFB169A /* AnimationConfig.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AnimationConfig.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationConfig.cpp"; sourceTree = SOURCE_ROOT; }; + A4E86D8DE1664CC29F512613 /* GFXObject.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXObject.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXObject.h"; sourceTree = SOURCE_ROOT; }; + A511728A9E46417FAB07A889 /* DescriptorSetLayoutValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetLayoutValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetLayoutValidator.h"; sourceTree = SOURCE_ROOT; }; + A525D268DB7F4184A339C88A /* ConditionVariable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConditionVariable.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ConditionVariable.h"; sourceTree = SOURCE_ROOT; }; + A59C066F12B449C2B0F30487 /* MTLGPUObjects.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLGPUObjects.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLGPUObjects.h"; sourceTree = SOURCE_ROOT; }; + A5B4DE3F212E4B0AA0E96705 /* Math.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Math.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Math.cpp"; sourceTree = SOURCE_ROOT; }; + A5F3EF45908642C49823F75F /* GFXQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXQueue.cpp"; sourceTree = SOURCE_ROOT; }; + A65B126EE9A543B1812A7F9E /* SRConstants.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRConstants.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/SRConstants.h"; sourceTree = SOURCE_ROOT; }; + A666087EBEEE4712A15EE9CA /* Math.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Math.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Math.h"; sourceTree = SOURCE_ROOT; }; + A6BF775DCBAC4BE6AFBA0D54 /* TextureValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/TextureValidator.h"; sourceTree = SOURCE_ROOT; }; + A6F05056DFE1442BBB62672D /* HttpCookie.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HttpCookie.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpCookie.h"; sourceTree = SOURCE_ROOT; }; + A6F19966462D4D7F923A3D4C /* IAnimatable.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IAnimatable.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/IAnimatable.h"; sourceTree = SOURCE_ROOT; }; + A73F339D04B94AAE87DB6F59 /* inspector_io.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_io.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_io.cpp"; sourceTree = SOURCE_ROOT; }; + A7C778ED97374D07B499FFCF /* StringUtil.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StringUtil.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/StringUtil.h"; sourceTree = SOURCE_ROOT; }; + A7E33C1A467148BF90EBB617 /* BaseObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BaseObject.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/core/BaseObject.cpp"; sourceTree = SOURCE_ROOT; }; + A929D5BE812B493BA5F0AC99 /* Utils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Utils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Utils.cpp"; sourceTree = SOURCE_ROOT; }; + A9D17D5B0E424C53931B75AB /* middleware-adapter.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = "middleware-adapter.cpp"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/middleware-adapter.cpp"; sourceTree = SOURCE_ROOT; }; + A9F993866D164939BEEF4A93 /* EmptyPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyPipelineState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineState.h"; sourceTree = SOURCE_ROOT; }; + AA1FCE8AAFEF4DB8A2E6767B /* QueueAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = QueueAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/QueueAgent.h"; sourceTree = SOURCE_ROOT; }; + AA8D47144502490F985D0A4C /* SharedMemory.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SharedMemory.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/SharedMemory.cpp"; sourceTree = SOURCE_ROOT; }; + AA9C3E8F62DB49FEB7F4F823 /* StdC.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = StdC.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/StdC.h"; sourceTree = SOURCE_ROOT; }; + AABB86F0123842E284E08DB7 /* Vec4.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Vec4.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.cpp"; sourceTree = SOURCE_ROOT; }; + AABDB9DC97C840A6953A15A2 /* ConvertUTFWrapper.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ConvertUTFWrapper.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTFWrapper.cpp"; sourceTree = SOURCE_ROOT; }; + AC267CA533E347748089D100 /* AnimationConfig.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AnimationConfig.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/AnimationConfig.h"; sourceTree = SOURCE_ROOT; }; + AC4C9F86CA0C44FBAAC4EE8B /* SRSecurityPolicy.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRSecurityPolicy.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRSecurityPolicy.m"; sourceTree = SOURCE_ROOT; }; + AC8C5624D37445C8AA55F4AA /* DescriptorSetLayoutValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetLayoutValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetLayoutValidator.cpp"; sourceTree = SOURCE_ROOT; }; + AD1C36472E1342AD843577D0 /* PlanarShadowQueue.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PlanarShadowQueue.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PlanarShadowQueue.cpp"; sourceTree = SOURCE_ROOT; }; + AD986C312CA745089B7474B3 /* SamplerAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SamplerAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/SamplerAgent.h"; sourceTree = SOURCE_ROOT; }; + ADE34B8C638240D8B58F5FD0 /* HttpClient-apple.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "HttpClient-apple.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpClient-apple.mm"; sourceTree = SOURCE_ROOT; }; + AE34F968E8FE4B4AB3406ABE /* GFXDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDescriptorSetLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + AEB341EDBB1F46E8BCE6BF02 /* MTLDevice.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDevice.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDevice.mm"; sourceTree = SOURCE_ROOT; }; + AEF49CEECE14461B8FEC7486 /* GFXContext.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXContext.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXContext.cpp"; sourceTree = SOURCE_ROOT; }; + AF136ACDE85E4DEB8F9D27A5 /* AutoreleasePool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AutoreleasePool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/AutoreleasePool.cpp"; sourceTree = SOURCE_ROOT; }; + AF2838695F93441F87F11ECA /* State.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = State.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/State.cpp"; sourceTree = SOURCE_ROOT; }; + AF5E0574EBFD45CB899BEB0C /* Agent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Agent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Agent.h"; sourceTree = SOURCE_ROOT; }; + AFDAEEE273AB443582B9942A /* Vec4.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec4.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec4.inl"; sourceTree = SOURCE_ROOT; }; + B04E760AE6AF44DFAC222735 /* PostprocessStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PostprocessStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/PostprocessStage.cpp"; sourceTree = SOURCE_ROOT; }; + B05327E200A84F8492565F3D /* BufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/BufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + B084F08E28DB4AECAAB94BDC /* EmptyShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyShader.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyShader.h"; sourceTree = SOURCE_ROOT; }; + B0999C58A1C34E749DE01151 /* FramebufferValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FramebufferValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/FramebufferValidator.h"; sourceTree = SOURCE_ROOT; }; + B0E708C6A22D4B8193FC3184 /* IArmatureProxy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IArmatureProxy.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/IArmatureProxy.h"; sourceTree = SOURCE_ROOT; }; + B21FCCD2D5F246A9AB255A65 /* SRIOConsumerPool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRIOConsumerPool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumerPool.h"; sourceTree = SOURCE_ROOT; }; + B25A20CB82024001A091424F /* Application.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Application.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Application.h"; sourceTree = SOURCE_ROOT; }; + B2758ACD75CC4F13830C8354 /* DownloaderImpl-apple.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "DownloaderImpl-apple.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/DownloaderImpl-apple.h"; sourceTree = SOURCE_ROOT; }; + B2944CD06C86445EA334144D /* jsb_cocos_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_cocos_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_cocos_auto.cpp"; sourceTree = SOURCE_ROOT; }; + B385B8DB6D204688A287722A /* jsb_websocket.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_websocket.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_websocket.cpp"; sourceTree = SOURCE_ROOT; }; + B3A13114660E417F94DD739B /* QueueValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = QueueValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/QueueValidator.h"; sourceTree = SOURCE_ROOT; }; + B3C53380905D442BB32EB959 /* ForwardFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardFlow.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardFlow.cpp"; sourceTree = SOURCE_ROOT; }; + B3D61011F31F4EA692B07C79 /* AudioEngine-inl.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "AudioEngine-inl.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioEngine-inl.mm"; sourceTree = SOURCE_ROOT; }; + B47B99973B074C89BBD68339 /* DeviceAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeviceAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/DeviceAgent.cpp"; sourceTree = SOURCE_ROOT; }; + B4AB1D90B0FB4C168C883C26 /* jsb_editor_support_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_editor_support_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_editor_support_auto.cpp"; sourceTree = SOURCE_ROOT; }; + B4CE28B5F4CB40B09B3157EE /* MTLContext.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLContext.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLContext.h"; sourceTree = SOURCE_ROOT; }; + B53922249A94441FA39C8DFA /* CCTextureAtlasData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCTextureAtlasData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCTextureAtlasData.h"; sourceTree = SOURCE_ROOT; }; + B5723CF4235B49448E470D23 /* inspector_socket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_socket.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket.h"; sourceTree = SOURCE_ROOT; }; + B5AAFC2E842D455792FDD268 /* ForwardStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ForwardStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardStage.cpp"; sourceTree = SOURCE_ROOT; }; + B5D6FFA79E834640B13B2A33 /* MathBase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MathBase.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathBase.h"; sourceTree = SOURCE_ROOT; }; + B694B71979244DC5BB8FBF4A /* MTLPipelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLPipelineState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineState.h"; sourceTree = SOURCE_ROOT; }; + B787ABB8D3FD47E3803D164B /* config.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = config.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/config.h"; sourceTree = SOURCE_ROOT; }; + B874ECECCA914333BF166B70 /* PipelineSceneData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineSceneData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineSceneData.cpp"; sourceTree = SOURCE_ROOT; }; + B89BA95E67374798A8D94E6F /* ConvertUTF.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConvertUTF.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/ConvertUTF/ConvertUTF.h"; sourceTree = SOURCE_ROOT; }; + B8FCA5CCAAB04418AFBF8B82 /* CCSlot.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCSlot.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCSlot.h"; sourceTree = SOURCE_ROOT; }; + B98422702FBD4A1BAA3AEC68 /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Object.h"; sourceTree = SOURCE_ROOT; }; + B99A013CC1504C6D8090CD0D /* PipelineUBO.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineUBO.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineUBO.cpp"; sourceTree = SOURCE_ROOT; }; + B9F8A677EC394588B72146D4 /* ZipUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ZipUtils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ZipUtils.cpp"; sourceTree = SOURCE_ROOT; }; + BA13F05FB3BD4519A7A01177 /* BufferPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BufferPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/dop/BufferPool.cpp"; sourceTree = SOURCE_ROOT; }; + BB34238F94DF40A0A5679201 /* unzip.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = unzip.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/unzip.cpp"; sourceTree = SOURCE_ROOT; }; + BB5BE5D6399D439D95760A50 /* PipelineLayoutAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineLayoutAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineLayoutAgent.h"; sourceTree = SOURCE_ROOT; }; + BB94EE5930644CF6818AD559 /* GFXDef.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXDef.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef.h"; sourceTree = SOURCE_ROOT; }; + BBBB23C779B84721AC6C285B /* RenderPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderPipeline.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderPipeline.h"; sourceTree = SOURCE_ROOT; }; + BBC6ACE7F03E437FBCBFA8B1 /* MTLConfig.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLConfig.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLConfig.h"; sourceTree = SOURCE_ROOT; }; + BBF7963E5DF6497C9D241403 /* TypedArrayPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TypedArrayPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/TypedArrayPool.cpp"; sourceTree = SOURCE_ROOT; }; + BC5E7A2CA69D49BF94017F2A /* MTLContext.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLContext.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLContext.mm"; sourceTree = SOURCE_ROOT; }; + BCA99E4DD13346E8B8628D46 /* MathUtil.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MathUtil.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.cpp"; sourceTree = SOURCE_ROOT; }; + BCD72BB8693E4CF786A44949 /* MTLPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLPipelineLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + BD0802BAA7BB4788A79405DA /* Base.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Base.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Base.h"; sourceTree = SOURCE_ROOT; }; + BD08D76D91674C27A5B84DD4 /* Utils.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Utils.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/Utils.h"; sourceTree = SOURCE_ROOT; }; + BD21E61B2D78436E8474768E /* DragonBonesData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DragonBonesData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/DragonBonesData.cpp"; sourceTree = SOURCE_ROOT; }; + BE19B4A16E1E4F929F8F4D78 /* MTLDescriptorSet.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDescriptorSet.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSet.mm"; sourceTree = SOURCE_ROOT; }; + BE1A12B0BFC6490FB3AE21F6 /* AllocatedObj.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AllocatedObj.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/memory/AllocatedObj.cpp"; sourceTree = SOURCE_ROOT; }; + BE1C273980D34C12BD0D3329 /* MathUtilNeon64.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilNeon64.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilNeon64.inl"; sourceTree = SOURCE_ROOT; }; + BF783B87866D4250A9EC737B /* Slot.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Slot.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Slot.cpp"; sourceTree = SOURCE_ROOT; }; + BFD2D92B1FE04C9EA568617F /* AudioEngine-inl.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "AudioEngine-inl.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioEngine-inl.h"; sourceTree = SOURCE_ROOT; }; + C0396C4017B44F5CBA3810B9 /* NSRunLoop+SRWebSocket.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "NSRunLoop+SRWebSocket.m"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSRunLoop+SRWebSocket.m"; sourceTree = SOURCE_ROOT; }; + C1F6CEC9812643098FE2C62F /* MTLRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLRenderPass.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderPass.h"; sourceTree = SOURCE_ROOT; }; + C215208357974DCA838959B5 /* TFJobSystem.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = TFJobSystem.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobSystem.cpp"; sourceTree = SOURCE_ROOT; }; + C2539C3343754399B321F780 /* csscolorparser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = csscolorparser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/csscolorparser.h"; sourceTree = SOURCE_ROOT; }; + C36C181987E44B61B5282E0A /* Data.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Data.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Data.h"; sourceTree = SOURCE_ROOT; }; + C388972E81C2409F82940064 /* RenderAdditiveLightQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderAdditiveLightQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderAdditiveLightQueue.h"; sourceTree = SOURCE_ROOT; }; + C4203492E59B4B00B14E2F74 /* MTLSampler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLSampler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLSampler.h"; sourceTree = SOURCE_ROOT; }; + C517A1075AFC4DC4A080C1FF /* MTLFramebuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLFramebuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLFramebuffer.h"; sourceTree = SOURCE_ROOT; }; + C5B520E7670E48E8B38C6AFB /* ValidationUtils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ValidationUtils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/ValidationUtils.cpp"; sourceTree = SOURCE_ROOT; }; + C5F893D71F094F48AA781904 /* ThreadSafeLinearAllocator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ThreadSafeLinearAllocator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/ThreadSafeLinearAllocator.h"; sourceTree = SOURCE_ROOT; }; + C62E8FAB5E8D4EA4ABFE50F6 /* ArmatureCacheMgr.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ArmatureCacheMgr.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/ArmatureCacheMgr.cpp"; sourceTree = SOURCE_ROOT; }; + C66473274872428AB5F1C4E6 /* SceneCulling.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SceneCulling.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/SceneCulling.cpp"; sourceTree = SOURCE_ROOT; }; + C6A9FCAA7EF0404DAD248DD5 /* CCArmatureDisplay.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCArmatureDisplay.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCArmatureDisplay.h"; sourceTree = SOURCE_ROOT; }; + C6EB3A9523AA4B7BB485A79B /* DevicePass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DevicePass.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/DevicePass.h"; sourceTree = SOURCE_ROOT; }; + C847DACD72A64FBE8530CF3E /* BoundingBoxData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = BoundingBoxData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/BoundingBoxData.h"; sourceTree = SOURCE_ROOT; }; + C8B04A5ECC8C4459A7298251 /* SRError.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRError.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRError.h"; sourceTree = SOURCE_ROOT; }; + C9148B38BE9E445587D6B2AA /* TFJobSystem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TFJobSystem.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/job-system/job-system-taskflow/TFJobSystem.h"; sourceTree = SOURCE_ROOT; }; + C969383572FB472DBB4F01C0 /* SRSecurityPolicy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRSecurityPolicy.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SRSecurityPolicy.h"; sourceTree = SOURCE_ROOT; }; + C989896B8E234CBFBD73F200 /* FramebufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FramebufferValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/FramebufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + C9D27E61002842B8A28CFBE8 /* GFXDescriptorSetLayout.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDescriptorSetLayout.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDescriptorSetLayout.cpp"; sourceTree = SOURCE_ROOT; }; + CA08322FA1514F09ADD58CAC /* jsb_extension_auto.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_extension_auto.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_extension_auto.h"; sourceTree = SOURCE_ROOT; }; + CA28C3132ADD493CA5B612C4 /* LightingStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = LightingStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/LightingStage.h"; sourceTree = SOURCE_ROOT; }; + CABBAA0B836B4E8489CDE26C /* jsb_gfx_auto.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_gfx_auto.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/auto/jsb_gfx_auto.cpp"; sourceTree = SOURCE_ROOT; }; + CAE09518096F497EAEE09D48 /* Application-mac.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = "Application-mac.mm"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/Application-mac.mm"; sourceTree = SOURCE_ROOT; }; + CAE2E83F4436442795DB0B4D /* DeformVertices.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DeformVertices.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/DeformVertices.h"; sourceTree = SOURCE_ROOT; }; + CB0DCAF5DBA3406C9FE6A79C /* middleware-adapter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "middleware-adapter.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/middleware-adapter.h"; sourceTree = SOURCE_ROOT; }; + CB229897E9D94497AA5311A9 /* FrameGraph.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FrameGraph.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/FrameGraph.cpp"; sourceTree = SOURCE_ROOT; }; + CC620E6521AE46F18DFC7AF1 /* CCDragonBonesHeaders.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = CCDragonBonesHeaders.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCDragonBonesHeaders.h"; sourceTree = SOURCE_ROOT; }; + CC92A8076BD14D8FB2931455 /* InputAssemblerAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = InputAssemblerAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/InputAssemblerAgent.h"; sourceTree = SOURCE_ROOT; }; + CCF91215D4F845CEA1FEB841 /* WorldClock.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = WorldClock.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/WorldClock.h"; sourceTree = SOURCE_ROOT; }; + CD1EEB3B4F0A4527AC3272C2 /* SceneCulling.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SceneCulling.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/SceneCulling.h"; sourceTree = SOURCE_ROOT; }; + CD6B1608A33D40D99C68781B /* KeyCodeHelper.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = KeyCodeHelper.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/mac/KeyCodeHelper.cpp"; sourceTree = SOURCE_ROOT; }; + CD73ECC043614A8D84476D60 /* MTLDevice.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLDevice.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDevice.h"; sourceTree = SOURCE_ROOT; }; + CD827FFF978C43D8A79C3340 /* RefCounter.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RefCounter.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/RefCounter.h"; sourceTree = SOURCE_ROOT; }; + CE270B998E61433A9A4D215C /* GFXPipelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXPipelineState.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXPipelineState.cpp"; sourceTree = SOURCE_ROOT; }; + CEAD1D89EB844974A844404D /* ObjectWrap.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ObjectWrap.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ObjectWrap.h"; sourceTree = SOURCE_ROOT; }; + CECD7511749347B79B81F271 /* HandleObject.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = HandleObject.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/HandleObject.cpp"; sourceTree = SOURCE_ROOT; }; + CECE23AA8A174C02A5A38A12 /* NSRunLoop+SRWebSocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSRunLoop+SRWebSocket.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/NSRunLoop+SRWebSocket.h"; sourceTree = SOURCE_ROOT; }; + CEFEC84DC30D4848B6B5FF03 /* v8_inspector_protocol_json.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = v8_inspector_protocol_json.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/v8_inspector_protocol_json.h"; sourceTree = SOURCE_ROOT; }; + CF7A335095974FB5847D7E53 /* DataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DataParser.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/DataParser.cpp"; sourceTree = SOURCE_ROOT; }; + D023FF13D5354CEFAF1A518D /* SRDelegateController.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRDelegateController.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate/SRDelegateController.h"; sourceTree = SOURCE_ROOT; }; + D0302A26EDE74B88A5C619CE /* inspector_socket_server.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = inspector_socket_server.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket_server.h"; sourceTree = SOURCE_ROOT; }; + D0EF4928EEDF471792AABED9 /* MTLCommandBuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLCommandBuffer.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandBuffer.mm"; sourceTree = SOURCE_ROOT; }; + D10B1D3DE9B04B20B045EBF1 /* PassNodeBuilder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PassNodeBuilder.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/PassNodeBuilder.h"; sourceTree = SOURCE_ROOT; }; + D139468BD4A940A38AD87F3D /* Map.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Map.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Map.h"; sourceTree = SOURCE_ROOT; }; + D1E0AC1DD73F499E927F55A5 /* jsb_cocos_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_cocos_manual.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_cocos_manual.cpp"; sourceTree = SOURCE_ROOT; }; + D1E149D25B174ABA8A8F5376 /* SRLog.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRLog.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRLog.m"; sourceTree = SOURCE_ROOT; }; + D217A764EDE9479CBF523F8A /* GbufferStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GbufferStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/deferred/GbufferStage.cpp"; sourceTree = SOURCE_ROOT; }; + D293B94396634076BCB592BF /* MathUtil.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MathUtil.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.h"; sourceTree = SOURCE_ROOT; }; + D344841A08C44082B584CFE9 /* SRError.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRError.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRError.m"; sourceTree = SOURCE_ROOT; }; + D35456E2CD4F46D0A1EDA6CC /* jsb_gfx_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_gfx_manual.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_gfx_manual.cpp"; sourceTree = SOURCE_ROOT; }; + D37C89275E9344EB954E27A7 /* jsb_global.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_global.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global.cpp"; sourceTree = SOURCE_ROOT; }; + D46A5F963DEB4FB4AFB53614 /* GFXTextureBarrier.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXTextureBarrier.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTextureBarrier.cpp"; sourceTree = SOURCE_ROOT; }; + D46D83A97BED4153AE5AF581 /* jsb_dragonbones_manual.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = jsb_dragonbones_manual.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_dragonbones_manual.cpp"; sourceTree = SOURCE_ROOT; }; + D5239EDA545848D7A89744DE /* ForwardStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardStage.h"; sourceTree = SOURCE_ROOT; }; + D524DA425FB14ED78248D9E1 /* xxtea.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = xxtea.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/xxtea/xxtea.cpp"; sourceTree = SOURCE_ROOT; }; + D5FB1F8395D4445BB993C196 /* GFXSampler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXSampler.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXSampler.cpp"; sourceTree = SOURCE_ROOT; }; + D62CD3A13F424327A3C79D48 /* EmptyPipelineLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyPipelineLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineLayout.h"; sourceTree = SOURCE_ROOT; }; + D6CBC58A60704D60AB5C34A1 /* EmptyFramebuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyFramebuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyFramebuffer.cpp"; sourceTree = SOURCE_ROOT; }; + D6D61F5A090F45E6B21B8767 /* TextureAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TextureAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/TextureAgent.h"; sourceTree = SOURCE_ROOT; }; + D710B1782F4F42C7BFB285E4 /* MathUtilSSE.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtilSSE.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtilSSE.inl"; sourceTree = SOURCE_ROOT; }; + D7789E88CCAE4DA5976A60CC /* Value.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Value.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Value.h"; sourceTree = SOURCE_ROOT; }; + D7B53139DA14405B879B4598 /* Mat4.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Mat4.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Mat4.h"; sourceTree = SOURCE_ROOT; }; + D89872B1B2BA42A4A3EEBE74 /* RenderStage.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = RenderStage.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderStage.cpp"; sourceTree = SOURCE_ROOT; }; + D9B6E260A53B4A25AD1FA2F1 /* ForwardPipeline.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ForwardPipeline.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/ForwardPipeline.h"; sourceTree = SOURCE_ROOT; }; + DA62D99F54C942E3B073CFB3 /* node_mutex.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node_mutex.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node_mutex.h"; sourceTree = SOURCE_ROOT; }; + DABEAB147EE04718B3FB5B3C /* InputAssemblerAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InputAssemblerAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/InputAssemblerAgent.cpp"; sourceTree = SOURCE_ROOT; }; + DAE98891AC764748B1D10429 /* EmptyQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyQueue.h"; sourceTree = SOURCE_ROOT; }; + DB3D91C4DF8B4051A96E2971 /* MathUtil.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = MathUtil.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/MathUtil.inl"; sourceTree = SOURCE_ROOT; }; + DBA6E9F9CBDC4193A51E419B /* unzip.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = unzip.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/unzip/unzip.h"; sourceTree = SOURCE_ROOT; }; + DC35AFCF1A824AEAAEDF0D6F /* MTLRenderPass.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLRenderPass.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLRenderPass.mm"; sourceTree = SOURCE_ROOT; }; + DCC1719A72D44031BB4F561D /* DescriptorSetValidator.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = DescriptorSetValidator.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetValidator.h"; sourceTree = SOURCE_ROOT; }; + DCD2DA9A714A4145A4D609CA /* jsb_websocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_websocket.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_websocket.h"; sourceTree = SOURCE_ROOT; }; + DD1E96293E874E7686BCF86E /* jsb_global.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_global.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_global.h"; sourceTree = SOURCE_ROOT; }; + DD293136C43747C7A11C4DED /* MTLTexture.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLTexture.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLTexture.h"; sourceTree = SOURCE_ROOT; }; + DD7B7EC7C34E4B3FB05030A8 /* BinaryDataParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = BinaryDataParser.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/BinaryDataParser.cpp"; sourceTree = SOURCE_ROOT; }; + DEA1686939BE407AB54B6806 /* GFXDef.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = GFXDef.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXDef.cpp"; sourceTree = SOURCE_ROOT; }; + DED889662F274872B3F72566 /* Resource.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Resource.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/Resource.h"; sourceTree = SOURCE_ROOT; }; + E032E0B79F81414E9FD85506 /* HelperMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = HelperMacros.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/HelperMacros.h"; sourceTree = SOURCE_ROOT; }; + E0C526CBE1FD4EA2AF2B6BAC /* FramebufferAgent.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = FramebufferAgent.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/FramebufferAgent.h"; sourceTree = SOURCE_ROOT; }; + E1B0BD0EC029490281F79449 /* GFXTextureBarrier.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXTextureBarrier.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXTextureBarrier.h"; sourceTree = SOURCE_ROOT; }; + E1CC55749B6E4550836BD774 /* Log.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Log.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Log.cpp"; sourceTree = SOURCE_ROOT; }; + E23FD8AB2AAE4625AEDF4562 /* EmptyRenderPass.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyRenderPass.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyRenderPass.h"; sourceTree = SOURCE_ROOT; }; + E288FE0BDE834378A9660EB9 /* SRPinningSecurityPolicy.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRPinningSecurityPolicy.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security/SRPinningSecurityPolicy.h"; sourceTree = SOURCE_ROOT; }; + E2C7751080C8453684BC1595 /* MTLPipelineState.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLPipelineState.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineState.mm"; sourceTree = SOURCE_ROOT; }; + E30A46242F124D52959A0EC5 /* InstancedBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = InstancedBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/InstancedBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + E318AA77771343E1BF9651FF /* MTLShader.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLShader.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLShader.h"; sourceTree = SOURCE_ROOT; }; + E32A3AC16F944515AA28359A /* PipelineSceneData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineSceneData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineSceneData.h"; sourceTree = SOURCE_ROOT; }; + E345FEF48E5D46B49C83F326 /* ConstraintData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ConstraintData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/ConstraintData.h"; sourceTree = SOURCE_ROOT; }; + E3FF292C0A104B1B9F6B9CE2 /* Animation.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Animation.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/Animation.h"; sourceTree = SOURCE_ROOT; }; + E41526DD6DD64EDE90015EA3 /* env.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = env.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/env.h"; sourceTree = SOURCE_ROOT; }; + E4582D119C024AA985A85C34 /* RenderTargetAttachment.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderTargetAttachment.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/RenderTargetAttachment.h"; sourceTree = SOURCE_ROOT; }; + E485BD7BA4D64AC1AF6BC5DC /* AutoreleasePool.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AutoreleasePool.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/AutoreleasePool.h"; sourceTree = SOURCE_ROOT; }; + E4D925F4FFE048DA9A95251D /* PipelineUBO.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = PipelineUBO.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/PipelineUBO.h"; sourceTree = SOURCE_ROOT; }; + E59CDF40ACD54918A7EC982F /* Application.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Application.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Application.cpp"; sourceTree = SOURCE_ROOT; }; + E59F3454BE254877B305529A /* AudioDecoder.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = AudioDecoder.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioDecoder.mm"; sourceTree = SOURCE_ROOT; }; + E5E8B40B763A4DD79F74743E /* EventDispatcher.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EventDispatcher.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/event/EventDispatcher.h"; sourceTree = SOURCE_ROOT; }; + E6143790931544B19C4839BD /* DescriptorSetValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DescriptorSetValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DescriptorSetValidator.cpp"; sourceTree = SOURCE_ROOT; }; + E642466FC2134E929EE69F2E /* MTLQueue.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLQueue.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLQueue.mm"; sourceTree = SOURCE_ROOT; }; + E69E230D05EB487D9399986D /* SocketIO.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SocketIO.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/SocketIO.cpp"; sourceTree = SOURCE_ROOT; }; + E6FA686ED2E44BBBA587CE82 /* Data.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Data.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Data.cpp"; sourceTree = SOURCE_ROOT; }; + E6FD26C576BF4E25A3BC5896 /* Geometry.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Geometry.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Geometry.cpp"; sourceTree = SOURCE_ROOT; }; + E70542EF63D9410CB6CC7BC7 /* inspector_socket.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = inspector_socket.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/inspector_socket.cpp"; sourceTree = SOURCE_ROOT; }; + E724CAB0C9234CA08F2EF7AF /* PipelineLayoutAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = PipelineLayoutAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/PipelineLayoutAgent.cpp"; sourceTree = SOURCE_ROOT; }; + E7659E3BC6064639AAD64ADE /* EventAssetsManagerEx.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EventAssetsManagerEx.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/EventAssetsManagerEx.cpp"; sourceTree = SOURCE_ROOT; }; + E8224D8B491C4D3CBC562A0C /* AudioMacros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = AudioMacros.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/audio/apple/AudioMacros.h"; sourceTree = SOURCE_ROOT; }; + E83B871229824645A9FF6706 /* Device.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Device.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Device.h"; sourceTree = SOURCE_ROOT; }; + E8DB66FB18B5458CA9E9C92A /* AssetsManagerEx.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AssetsManagerEx.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AssetsManagerEx.cpp"; sourceTree = SOURCE_ROOT; }; + E94C55C24C5041F7BAC11296 /* GFXCommandBuffer.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXCommandBuffer.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXCommandBuffer.h"; sourceTree = SOURCE_ROOT; }; + EA525DF896594BC3BA193113 /* AsyncTaskPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = AsyncTaskPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/extensions/assets-manager/AsyncTaskPool.cpp"; sourceTree = SOURCE_ROOT; }; + EAE7234460374B7985435647 /* Ref.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Ref.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Ref.cpp"; sourceTree = SOURCE_ROOT; }; + EB29D6B5FC9F422CA653B3BE /* RenderInstancedQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = RenderInstancedQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/RenderInstancedQueue.h"; sourceTree = SOURCE_ROOT; }; + EB3EE998A34943B4922E6495 /* SRIOConsumerPool.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRIOConsumerPool.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer/SRIOConsumerPool.m"; sourceTree = SOURCE_ROOT; }; + EBDB3FF63906444890C61797 /* TimelineState.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = TimelineState.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/TimelineState.h"; sourceTree = SOURCE_ROOT; }; + EC1F1BC5DC844E669EC863F0 /* HttpCookie.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = HttpCookie.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpCookie.cpp"; sourceTree = SOURCE_ROOT; }; + ECA98000DC894587BA273736 /* MTLStd.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = MTLStd.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLStd.cpp"; sourceTree = SOURCE_ROOT; }; + ECBDFA4A7FD548BA8492D4AD /* SharedMemory.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SharedMemory.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/helper/SharedMemory.h"; sourceTree = SOURCE_ROOT; }; + ED46542641394DA19F741C45 /* MTLPipelineLayout.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLPipelineLayout.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLPipelineLayout.mm"; sourceTree = SOURCE_ROOT; }; + ED4CB35CA8064929B674D4C9 /* Image.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Image.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/Image.cpp"; sourceTree = SOURCE_ROOT; }; + ED5288B85F6146EF81BCA8CA /* GFXInputAssembler.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = GFXInputAssembler.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-base/GFXInputAssembler.h"; sourceTree = SOURCE_ROOT; }; + ED5C236FD9694D2CAD48B5DB /* HttpAsynConnection-apple.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = "HttpAsynConnection-apple.m"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/network/HttpAsynConnection-apple.m"; sourceTree = SOURCE_ROOT; }; + ED677B9FD9B0417384D23346 /* Macros.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Macros.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Macros.h"; sourceTree = SOURCE_ROOT; }; + EDE41D5D862940098DD00EF5 /* IndexHandle.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = IndexHandle.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/IndexHandle.h"; sourceTree = SOURCE_ROOT; }; + EE24C0CEC7D944ED8A139AD6 /* ThreadPool.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ThreadPool.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/ThreadPool.cpp"; sourceTree = SOURCE_ROOT; }; + EE842E0F1B864364B5C321D2 /* EmptyCommandBuffer.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyCommandBuffer.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyCommandBuffer.cpp"; sourceTree = SOURCE_ROOT; }; + EEAAC93E059B4F0492B81AF0 /* SAXParser.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SAXParser.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/SAXParser.cpp"; sourceTree = SOURCE_ROOT; }; + F00AC16092F948FFA33E18BA /* ShadowFlow.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = ShadowFlow.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowFlow.cpp"; sourceTree = SOURCE_ROOT; }; + F0CEF941D1B04926A0029D05 /* NSURLRequest+SRWebSocketPrivate.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = "NSURLRequest+SRWebSocketPrivate.h"; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/NSURLRequest+SRWebSocketPrivate.h"; sourceTree = SOURCE_ROOT; }; + F11E25384CDC46E99A14000C /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Object.h"; sourceTree = SOURCE_ROOT; }; + F1DC7FB72EDA4FFCA0456B64 /* ResourceNode.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ResourceNode.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/frame-graph/ResourceNode.h"; sourceTree = SOURCE_ROOT; }; + F23B500DB9854010B62DDFDB /* SocketRocket.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SocketRocket.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/SocketRocket.h"; sourceTree = SOURCE_ROOT; }; + F27868AEA17740FCA4CA733F /* node.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = node.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node.h"; sourceTree = SOURCE_ROOT; }; + F281A6830ADC4F1D905996EB /* Armature.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Armature.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Armature.cpp"; sourceTree = SOURCE_ROOT; }; + F35581324CED441B922C376B /* jsb_gfx_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_gfx_manual.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_gfx_manual.h"; sourceTree = SOURCE_ROOT; }; + F3CC2DBF71654BB6A35B1082 /* FramebufferAgent.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = FramebufferAgent.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-agent/FramebufferAgent.cpp"; sourceTree = SOURCE_ROOT; }; + F3CE4F3BD3224B15BDED93AB /* UIPhase.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = UIPhase.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/UIPhase.cpp"; sourceTree = SOURCE_ROOT; }; + F3F739D5678D4B799591610F /* DeviceValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = DeviceValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/DeviceValidator.cpp"; sourceTree = SOURCE_ROOT; }; + F4124367C31047929B826251 /* EmptyInputAssembler.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyInputAssembler.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyInputAssembler.cpp"; sourceTree = SOURCE_ROOT; }; + F42F9B6DF0504FF6A9A40241 /* MessageQueue.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MessageQueue.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/threading/MessageQueue.h"; sourceTree = SOURCE_ROOT; }; + F454EBFE0F90409EBCB395BC /* EmptyDescriptorSetLayout.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = EmptyDescriptorSetLayout.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyDescriptorSetLayout.h"; sourceTree = SOURCE_ROOT; }; + F486D87013C24317969D6ED5 /* SkinData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = SkinData.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/SkinData.cpp"; sourceTree = SOURCE_ROOT; }; + F4E2157065AF43CEB1A447FD /* EmptyPipelineState.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyPipelineState.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyPipelineState.cpp"; sourceTree = SOURCE_ROOT; }; + F5E02EE744794A53BFAF10C4 /* ShadowStage.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ShadowStage.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/shadow/ShadowStage.h"; sourceTree = SOURCE_ROOT; }; + F687ABAD26B142489CCB6B5C /* QueueValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = QueueValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/QueueValidator.cpp"; sourceTree = SOURCE_ROOT; }; + F6ACED6FF8F9482C931B04D1 /* EmptyShader.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = EmptyShader.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-empty/EmptyShader.cpp"; sourceTree = SOURCE_ROOT; }; + F8234754860C4001B4189E2D /* CCSlot.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CCSlot.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones-creator-support/CCSlot.cpp"; sourceTree = SOURCE_ROOT; }; + F8CEB64D1A364C63B2E74B43 /* Object.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Object.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/Object.h"; sourceTree = SOURCE_ROOT; }; + F8FE26847ACD4CCFA0F3E384 /* SkinData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SkinData.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/model/SkinData.h"; sourceTree = SOURCE_ROOT; }; + F90A93EE72054E7A9B95E5A2 /* MTLFramebuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLFramebuffer.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLFramebuffer.mm"; sourceTree = SOURCE_ROOT; }; + F95CCAD78AA743FE8FE1F8BE /* Animation.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Animation.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/animation/Animation.cpp"; sourceTree = SOURCE_ROOT; }; + F9BA6C2EF5FC458692419140 /* MTLDescriptorSetLayout.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = MTLDescriptorSetLayout.mm; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLDescriptorSetLayout.mm"; sourceTree = SOURCE_ROOT; }; + FA96F552A07F451B8FCB57D2 /* Value.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Value.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Value.cpp"; sourceTree = SOURCE_ROOT; }; + FB7B84AE3BE74F7A961BD053 /* jsb_dragonbones_manual.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_dragonbones_manual.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_dragonbones_manual.h"; sourceTree = SOURCE_ROOT; }; + FB8024EF9C37469094C18043 /* Utils.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = Utils.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/base/Utils.cpp"; sourceTree = SOURCE_ROOT; }; + FBD537A61B69425881059098 /* CommandBufferValidator.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = CommandBufferValidator.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-validator/CommandBufferValidator.cpp"; sourceTree = SOURCE_ROOT; }; + FBF2654B664D46EFBA202419 /* Armature.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = Armature.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/armature/Armature.h"; sourceTree = SOURCE_ROOT; }; + FBFF53E509D64DEA95AEB516 /* Vec3.inl */ = {isa = PBXFileReference; explicitFileType = sourcecode; fileEncoding = 4; name = Vec3.inl; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/math/Vec3.inl"; sourceTree = SOURCE_ROOT; }; + FCC652A518FA49B0AC8787F5 /* UIPhase.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = UIPhase.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/pipeline/forward/UIPhase.h"; sourceTree = SOURCE_ROOT; }; + FDBCE300E9F84AFBBF4C2093 /* ScriptEngine.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = ScriptEngine.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/ScriptEngine.h"; sourceTree = SOURCE_ROOT; }; + FDEB8AC4EE984BF3AD627C12 /* SRMutex.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRMutex.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRMutex.m"; sourceTree = SOURCE_ROOT; }; + FE5D921C4FAB4AD78FAC9E06 /* node.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = node.cpp; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper/v8/debugger/node.cpp"; sourceTree = SOURCE_ROOT; }; + FEA7B3CB237A43B491551CD4 /* SRProxyConnect.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = SRProxyConnect.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy/SRProxyConnect.h"; sourceTree = SOURCE_ROOT; }; + FEF0D30EB72647A4B8C54D0A /* jsb_classtype.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = jsb_classtype.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/manual/jsb_classtype.h"; sourceTree = SOURCE_ROOT; }; + FF920EBDB9A143A5B9C6D51C /* SRHash.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = SRHash.m; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities/SRHash.m"; sourceTree = SOURCE_ROOT; }; + FFAF1C56236D43B9819263A1 /* JSONDataParser.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = JSONDataParser.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support/dragonbones/parser/JSONDataParser.h"; sourceTree = SOURCE_ROOT; }; + FFEF259EED3D4B8B904C46FF /* MTLCommandEncoder.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; name = MTLCommandEncoder.h; path = "../../../../../../../Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer/gfx-metal/MTLCommandEncoder.h"; sourceTree = SOURCE_ROOT; }; +/* End PBXFileReference section */ + +/* Begin PBXGroup section */ + 00409173EDDB4820AD750B38 /* storage */ = { + isa = PBXGroup; + children = ( + 4246EA376F9146C8B02015C3 /* local-storage */, + ); + name = storage; + sourceTree = ""; + }; + 0206A3332CCE47D9BC541D7F /* threading */ = { + isa = PBXGroup; + children = ( + 37C6BFAD86CE43BB9CE6A9CA /* ConditionVariable.cpp */, + A525D268DB7F4184A339C88A /* ConditionVariable.h */, + A0E0F269705D4E9D9115DA49 /* Event.h */, + 1971F55B06BC4737B297CFB4 /* MessageQueue.cpp */, + F42F9B6DF0504FF6A9A40241 /* MessageQueue.h */, + 0644A52A317B4853B85749CC /* Semaphore.cpp */, + 73509E5866A54D49AB9C82F9 /* Semaphore.h */, + 5BE204889403465381A25149 /* ThreadPool.cpp */, + 4C62557D431D48E6BFE2DF72 /* ThreadPool.h */, + 96659FDB00F245C4AE7FC38A /* ThreadSafeCounter.h */, + 6DCBD998023F44DE80E3577F /* ThreadSafeLinearAllocator.cpp */, + C5F893D71F094F48AA781904 /* ThreadSafeLinearAllocator.h */, + ); + name = threading; + sourceTree = ""; + }; + 085DB179D78042A8B3199EBE /* geom */ = { + isa = PBXGroup; + children = ( + 14343C77ADEF4162AEB763BA /* ColorTransform.h */, + 6CBF4D1783EB4D1D9AD6DFB6 /* Matrix.h */, + 0B620C61BE334A0E88203118 /* Point.cpp */, + 886CE3F6CA0D43E4A5162CB1 /* Point.h */, + 5737329DD6C049D99F3B6437 /* Rectangle.h */, + 42E5E1551DF34E41823EB8F9 /* Transform.cpp */, + 57A1B14290B94EE3AE34327A /* Transform.h */, + ); + name = geom; + sourceTree = ""; + }; + 0A0F3EB492B4490994D12C8C /* RunLoop */ = { + isa = PBXGroup; + children = ( + 786089B9D45747E89E81F191 /* SRRunLoopThread.h */, + 85E9F7E67BF847E8AFE26096 /* SRRunLoopThread.m */, + ); + name = RunLoop; + sourceTree = ""; + }; + 0F83EB1E33864F7B832A1774 /* core */ = { + isa = PBXGroup; + children = ( + A7E33C1A467148BF90EBB617 /* BaseObject.cpp */, + 52400404897440199DEF9E8F /* BaseObject.h */, + 68930C562EF143539A80BF16 /* DragonBones.cpp */, + 707A2B452EE54D7D9BF71F0A /* DragonBones.h */, + ); + name = core; + sourceTree = ""; + }; + 1082E3EEBBEA463AADE00BD1 /* mac */ = { + isa = PBXGroup; + children = ( + CAE09518096F497EAEE09D48 /* Application-mac.mm */, + 564980D312194BB09F91AA71 /* Device-mac.mm */, + CD6B1608A33D40D99C68781B /* KeyCodeHelper.cpp */, + 3A5EC08101864D8982FCF32B /* KeyCodeHelper.h */, + 23E7B5608E0C42FC84EE89D6 /* View.h */, + 986D2E8E779441E9A2F222D3 /* View.mm */, + ); + name = mac; + sourceTree = ""; + }; + 113223FE1D4A4D3BB8F691A9 /* animation */ = { + isa = PBXGroup; + children = ( + F95CCAD78AA743FE8FE1F8BE /* Animation.cpp */, + E3FF292C0A104B1B9F6B9CE2 /* Animation.h */, + 548CB94A88BA4D15AC63C20B /* AnimationState.cpp */, + 01F92B962F2B48E2B493D7B2 /* AnimationState.h */, + 656E583833BF467587ED2D00 /* BaseTimelineState.cpp */, + 553FB2B18CE546718BC00B2E /* BaseTimelineState.h */, + A6F19966462D4D7F923A3D4C /* IAnimatable.h */, + 7A2427988B714BCFB1999DAC /* TimelineState.cpp */, + EBDB3FF63906444890C61797 /* TimelineState.h */, + 06F12FEE1A204189BFF14532 /* WorldClock.cpp */, + CCF91215D4F845CEA1FEB841 /* WorldClock.h */, + ); + name = animation; + sourceTree = ""; + }; + 127FAF4C5AC343778A67AFA9 /* extensions */ = { + isa = PBXGroup; + children = ( + 3FB67BA606E943EDA23FD046 /* assets-manager */, + 68E0795111A241C28B39FB1E /* ExtensionExport.h */, + 1C0BFC2621CF4FD4A367C5A8 /* ExtensionMacros.h */, + 1A910DEF13CE42F489E6A93B /* cocos-ext.h */, + ); + name = extensions; + sourceTree = ""; + }; + 13B2732FE5DE423F8377CD96 /* v8 */ = { + isa = PBXGroup; + children = ( + C2927047808A4A46AF29F1AB /* debugger */, + BD0802BAA7BB4788A79405DA /* Base.h */, + 0B4D59E8B87D4D1990096C28 /* Class.cpp */, + 31F1EE7320254A3BB8A33F81 /* Class.h */, + E032E0B79F81414E9FD85506 /* HelperMacros.h */, + 8B2DC8E2EE5D45D69323E3BE /* Object.cpp */, + B98422702FBD4A1BAA3AEC68 /* Object.h */, + 521D34BFABED44F181AE246A /* ObjectWrap.cpp */, + CEAD1D89EB844974A844404D /* ObjectWrap.h */, + 62F9018F28D24AE39E42A5A8 /* ScriptEngine.cpp */, + FDBCE300E9F84AFBBF4C2093 /* ScriptEngine.h */, + 8BDB31122B7F46CFB39EEE7A /* SeApi.h */, + A929D5BE812B493BA5F0AC99 /* Utils.cpp */, + BD08D76D91674C27A5B84DD4 /* Utils.h */, + ); + name = v8; + sourceTree = ""; + }; + 14B2FF515AB141FB83E23235 /* IOConsumer */ = { + isa = PBXGroup; + children = ( + 85690252CE9448C4BDF32C65 /* SRIOConsumer.h */, + 9626943E58844A3DA51CAB2B /* SRIOConsumer.m */, + B21FCCD2D5F246A9AB255A65 /* SRIOConsumerPool.h */, + EB3EE998A34943B4922E6495 /* SRIOConsumerPool.m */, + ); + name = IOConsumer; + sourceTree = ""; + }; + 161EF71AB3B9472FB3981B30 = { + isa = PBXGroup; + children = ( + C1FEA2F53EFB457EADDB2CD2 /* cocos2d */, + B9EEA516E1CB4231A04B9A37 /* Products */, + ); + sourceTree = ""; + }; + 1A5650B080AB478C91D3ECBC /* editor-support */ = { + isa = PBXGroup; + children = ( + 370E21B01AB74C658E9C2616 /* dragonbones */, + 98738E6CADED4EBFA44D2C35 /* dragonbones-creator-support */, + 5F37461E693C4F46815BD89E /* IOBuffer.cpp */, + 168FFB16FBB04C3BAC5C9477 /* IOBuffer.h */, + 3B78CD35150840C897CACE17 /* IOTypedArray.cpp */, + 29091C14DE014791ABE02B81 /* IOTypedArray.h */, + 56E5659C2F394F2690FF4F7A /* MeshBuffer.cpp */, + 4001F133D6174FDE96CFF0AE /* MeshBuffer.h */, + 3C845F39198947DCAD95BB7A /* MiddlewareMacro.h */, + 25C489421B2944E29922A7B4 /* MiddlewareManager.cpp */, + 184E159F590843E592F46AA7 /* MiddlewareManager.h */, + 75DBD9F5A3DE4B2CB605E65A /* SharedBufferManager.cpp */, + 0D74082DEF4B44C1A00ED885 /* SharedBufferManager.h */, + BBF7963E5DF6497C9D241403 /* TypedArrayPool.cpp */, + 89A650BF58A041939080D773 /* TypedArrayPool.h */, + A9D17D5B0E424C53931B75AB /* middleware-adapter.cpp */, + CB0DCAF5DBA3406C9FE6A79C /* middleware-adapter.h */, + ); + name = "editor-support"; + sourceTree = ""; + }; + 1C0BA13DC45D4D9A927D7B0D /* apple */ = { + isa = PBXGroup; + children = ( + 49773B760129421282877405 /* CanvasRenderingContext2D-apple.mm */, + 045370334C0342FB93A58463 /* Device-apple.h */, + 18BCC86F0AE9428DB3ED423F /* Device-apple.mm */, + 518BC778E2DF47DC88375036 /* FileUtils-apple.h */, + 8134416CD6624BBEBA5ADC72 /* FileUtils-apple.mm */, + ); + name = apple; + sourceTree = ""; + }; + 23FAC937313341C0A90BBE08 /* unzip */ = { + isa = PBXGroup; + children = ( + 57C0CCA98A654FB19265C340 /* crypt.h */, + 7DEED2DD4F34438C89E44603 /* ioapi.cpp */, + 5DAA5BE51D2C478896BF35C1 /* ioapi.h */, + 1E17BDD288C2404293D05399 /* ioapi_mem.cpp */, + 42C132E8A57E40DCB2C0348C /* ioapi_mem.h */, + BB34238F94DF40A0A5679201 /* unzip.cpp */, + DBA6E9F9CBDC4193A51E419B /* unzip.h */, + ); + name = unzip; + sourceTree = ""; + }; + 282E1B1A63B143C5A156F82D /* jswrapper */ = { + isa = PBXGroup; + children = ( + 13B2732FE5DE423F8377CD96 /* v8 */, + CECD7511749347B79B81F271 /* HandleObject.cpp */, + 22854E8935054D1299913341 /* HandleObject.h */, + 16106015E9114914B0EEB8AD /* MappingUtils.cpp */, + 7998DBFC6827462A821399A0 /* MappingUtils.h */, + F8CEB64D1A364C63B2E74B43 /* Object.h */, + 0FD1EA9E9BDF41F18C3138CF /* RefCounter.cpp */, + CD827FFF978C43D8A79C3340 /* RefCounter.h */, + 4C5B513665864920BCED20FE /* SeApi.h */, + AF2838695F93441F87F11ECA /* State.cpp */, + 50EEDB07F4414E27BD7C652E /* State.h */, + 57C647AFFA9A415B8B92CE90 /* Value.cpp */, + D7789E88CCAE4DA5976A60CC /* Value.h */, + 2E9BF7C9E4714555BCC89938 /* config.cpp */, + B787ABB8D3FD47E3803D164B /* config.h */, + ); + name = jswrapper; + sourceTree = ""; + }; + 2B56BD43C950473EA37FD05B /* forward */ = { + isa = PBXGroup; + children = ( + B3C53380905D442BB32EB959 /* ForwardFlow.cpp */, + 9BAD4AA50ACA49C58C31897E /* ForwardFlow.h */, + 555D0A21C34D49CD83931850 /* ForwardPipeline.cpp */, + D9B6E260A53B4A25AD1FA2F1 /* ForwardPipeline.h */, + B5AAFC2E842D455792FDD268 /* ForwardStage.cpp */, + D5239EDA545848D7A89744DE /* ForwardStage.h */, + F3CE4F3BD3224B15BDED93AB /* UIPhase.cpp */, + FCC652A518FA49B0AC8787F5 /* UIPhase.h */, + ); + name = forward; + sourceTree = ""; + }; + 370E21B01AB74C658E9C2616 /* dragonbones */ = { + isa = PBXGroup; + children = ( + 113223FE1D4A4D3BB8F691A9 /* animation */, + 63640A367C3340E39415A450 /* armature */, + 0F83EB1E33864F7B832A1774 /* core */, + A5243819239643AFABFD6E38 /* event */, + D11BDA97BEA24697B42C5399 /* factory */, + 085DB179D78042A8B3199EBE /* geom */, + 8FEC5345CC0646A193CCA08C /* model */, + F90A135C19214A0AB4D2905B /* parser */, + 2D0A23688A7D401F967C5FBC /* DragonBonesHeaders.h */, + ); + name = dragonbones; + sourceTree = ""; + }; + 39633CB2A3614596ABF13910 /* cocos */ = { + isa = PBXGroup; + children = ( + A58C4E90A8154AB9A093E9E4 /* audio */, + F95C1C618E5C4F74A7B815AB /* base */, + 64613F644F374DEA9AD8C9AF /* math */, + 5BF1EBF0DEF8423694B66D07 /* network */, + CA1C47386DF44744A2B337B9 /* platform */, + 5638E1FE3596432C8B1A31E8 /* renderer */, + 69CF13331D96483D8A30EE10 /* bindings */, + 1A5650B080AB478C91D3ECBC /* editor-support */, + 00409173EDDB4820AD750B38 /* storage */, + 956C4ED43D574AE7B2428620 /* ui */, + ); + name = cocos; + sourceTree = ""; + }; + 3AB6CF14B1BF4C72817ED880 /* Source Files */ = { + isa = PBXGroup; + children = ( + 39633CB2A3614596ABF13910 /* cocos */, + 127FAF4C5AC343778A67AFA9 /* extensions */, + F5BC35FF4279404E87BEBB96 /* external */, + ); + name = "Source Files"; + sourceTree = ""; + }; + 3B4FDE8180854EDB8970DF5C /* Delegate */ = { + isa = PBXGroup; + children = ( + D023FF13D5354CEFAF1A518D /* SRDelegateController.h */, + 452F00A3CB8D47398B190D75 /* SRDelegateController.m */, + ); + name = Delegate; + sourceTree = ""; + }; + 3BC061E895F24154ACC29473 /* SocketRocket */ = { + isa = PBXGroup; + children = ( + 9CA111FBFF784EB8A0EC4651 /* Internal */, + CECE23AA8A174C02A5A38A12 /* NSRunLoop+SRWebSocket.h */, + C0396C4017B44F5CBA3810B9 /* NSRunLoop+SRWebSocket.m */, + 4BB1C6806F094ABDADD9AAEE /* NSURLRequest+SRWebSocket.h */, + 56BF851511534048A709FA8D /* NSURLRequest+SRWebSocket.m */, + C969383572FB472DBB4F01C0 /* SRSecurityPolicy.h */, + AC4C9F86CA0C44FBAAC4EE8B /* SRSecurityPolicy.m */, + 4041F57D51ED4C19AA1EFFA0 /* SRWebSocket.h */, + 908ADAC4E3F84009B0CED70F /* SRWebSocket.m */, + F23B500DB9854010B62DDFDB /* SocketRocket.h */, + ); + name = SocketRocket; + sourceTree = ""; + }; + 3FB67BA606E943EDA23FD046 /* assets-manager */ = { + isa = PBXGroup; + children = ( + E8DB66FB18B5458CA9E9C92A /* AssetsManagerEx.cpp */, + 673ABFA7906E4C9A8F1488AF /* AssetsManagerEx.h */, + EA525DF896594BC3BA193113 /* AsyncTaskPool.cpp */, + 44A6760E16134CA5A2B9D2BE /* AsyncTaskPool.h */, + E7659E3BC6064639AAD64ADE /* EventAssetsManagerEx.cpp */, + 3A4DA4CF1F6347A895D9DC28 /* EventAssetsManagerEx.h */, + 1470BFEBA57D46238D657C2B /* Manifest.cpp */, + 679164112C8447BDA8141658 /* Manifest.h */, + ); + name = "assets-manager"; + sourceTree = ""; + }; + 4246EA376F9146C8B02015C3 /* local-storage */ = { + isa = PBXGroup; + children = ( + 666FF1BE2CEE4557B5EA04EA /* LocalStorage.cpp */, + 7D832DC8A3D14938921A5362 /* LocalStorage.h */, + ); + name = "local-storage"; + sourceTree = ""; + }; + 4E7B4153ED854D5BAA636B73 /* ios */ = { + isa = PBXGroup; + children = ( + 277FC5C51FF247669EAD278C /* Reachability.cpp */, + 70D0C2F65F564CD8BA95E6C4 /* Reachability.h */, + ); + name = ios; + sourceTree = ""; + }; + 4FFDC566E06B47DFA6D84898 /* edit-box */ = { + isa = PBXGroup; + children = ( + 9ACF46F1F89F4C43A76D5215 /* EditBox-mac.mm */, + 90078FFE9EBD45E29AADF782 /* EditBox.h */, + ); + name = "edit-box"; + sourceTree = ""; + }; + 53A15CA6CA484CE5A4C7458A /* deferred */ = { + isa = PBXGroup; + children = ( + 859B932CB0B145959C721991 /* DeferredPipeline.cpp */, + 30610A0FD5B744A4A28F4797 /* DeferredPipeline.h */, + 815BF0F4DE09484A8DC269D0 /* GbufferFlow.cpp */, + A1934589FFF148D790775937 /* GbufferFlow.h */, + D217A764EDE9479CBF523F8A /* GbufferStage.cpp */, + 9B5206EA877148ACB5F0C4D0 /* GbufferStage.h */, + 39DE987514224C058E101FCB /* LightingFlow.cpp */, + 093FC66F36FA48C09B91FC7E /* LightingFlow.h */, + 68A6B5657EA249A59207C6CD /* LightingStage.cpp */, + CA28C3132ADD493CA5B612C4 /* LightingStage.h */, + B04E760AE6AF44DFAC222735 /* PostprocessStage.cpp */, + 8D65C030E57A45EB89B73D91 /* PostprocessStage.h */, + ); + name = deferred; + sourceTree = ""; + }; + 5638E1FE3596432C8B1A31E8 /* renderer */ = { + isa = PBXGroup; + children = ( + D7E1F0FA94DE4D25AA0F6A2A /* gfx-base */, + 9F884EA6A9C84F2E9C2FB7CF /* gfx-agent */, + D214E959C3BD4069A6A2BD13 /* gfx-validator */, + 67A1B68884D04691A53EBD02 /* gfx-empty */, + BDA0FF4A55854ADFAB42C8B7 /* pipeline */, + F0BAC008BE6047C78A035640 /* gfx-metal */, + 7D9342FDF95F4EEA987F304C /* frame-graph */, + 35188091FFA84FD6BFFD66A8 /* GFXDeviceManager.h */, + ); + name = renderer; + sourceTree = ""; + }; + 581B52F4AAF644B094B0A168 /* auto */ = { + isa = PBXGroup; + children = ( + 55440363B0AE411097D0B679 /* jsb_audio_auto.cpp */, + 3EE30782C63349CEB48EECA1 /* jsb_audio_auto.h */, + B2944CD06C86445EA334144D /* jsb_cocos_auto.cpp */, + 00295C48DCB44BF4A2EA0730 /* jsb_cocos_auto.h */, + 69963309EFDE4533A8D61C06 /* jsb_dragonbones_auto.cpp */, + 7550C2B4CD474DDC90C03703 /* jsb_dragonbones_auto.h */, + B4AB1D90B0FB4C168C883C26 /* jsb_editor_support_auto.cpp */, + 47EE51BDA06945D59300EEC9 /* jsb_editor_support_auto.h */, + 8197CCFD9E3142A1B04BD28A /* jsb_extension_auto.cpp */, + CA08322FA1514F09ADD58CAC /* jsb_extension_auto.h */, + CABBAA0B836B4E8489CDE26C /* jsb_gfx_auto.cpp */, + 1E147DB6312D4B8F8C01091D /* jsb_gfx_auto.h */, + 25B9140C5EA146798DE19DDD /* jsb_network_auto.cpp */, + 58F138BB48E5478D85D1D719 /* jsb_network_auto.h */, + 9DDA3DA8D9954DF193397578 /* jsb_pipeline_auto.cpp */, + 6FD9CC50B1D941D98E423B2F /* jsb_pipeline_auto.h */, + ); + name = auto; + sourceTree = ""; + }; + 5BF1EBF0DEF8423694B66D07 /* network */ = { + isa = PBXGroup; + children = ( + 84A69596157D471A915F64CE /* Downloader.cpp */, + 7F5EEAB66058400891BBC2BE /* Downloader.h */, + B2758ACD75CC4F13830C8354 /* DownloaderImpl-apple.h */, + 762130EAE40D409A9FB4D6B7 /* DownloaderImpl-apple.mm */, + 3E4F03949C8A4C7196BE2981 /* DownloaderImpl.h */, + 3C433664365B4AA8ABA3B9E5 /* HttpAsynConnection-apple.h */, + ED5C236FD9694D2CAD48B5DB /* HttpAsynConnection-apple.m */, + ADE34B8C638240D8B58F5FD0 /* HttpClient-apple.mm */, + 2EE6655AFB964BD7BBB74EC1 /* HttpClient.cpp */, + 2F68889A8E064522A578C0DF /* HttpClient.h */, + EC1F1BC5DC844E669EC863F0 /* HttpCookie.cpp */, + A6F05056DFE1442BBB62672D /* HttpCookie.h */, + 97770FEBB7294EC8B881DB4F /* HttpRequest.h */, + 313F904641C14FA69665DD7E /* HttpResponse.h */, + E69E230D05EB487D9399986D /* SocketIO.cpp */, + 338DD1EA5A7048F08B8FC0FB /* SocketIO.h */, + 9B2C4415CB7B4FA1800EF9C0 /* Uri.cpp */, + 5D5CD03C74ED4815B5EC3A7A /* Uri.h */, + 5D8C6C0DDF504D6C960231FF /* WebSocket-apple.mm */, + 9477B9C01FF9469291AC6667 /* WebSocket.h */, + ); + name = network; + sourceTree = ""; + }; + 5F6947D5DE1A4E02B7DB8EE9 /* job-system-taskflow */ = { + isa = PBXGroup; + children = ( + 2143B90C08084C1BB44F1690 /* TFJobGraph.cpp */, + 3691EE3019E141D5A4496823 /* TFJobGraph.h */, + C215208357974DCA838959B5 /* TFJobSystem.cpp */, + C9148B38BE9E445587D6B2AA /* TFJobSystem.h */, + ); + name = "job-system-taskflow"; + sourceTree = ""; + }; + 63640A367C3340E39415A450 /* armature */ = { + isa = PBXGroup; + children = ( + F281A6830ADC4F1D905996EB /* Armature.cpp */, + FBF2654B664D46EFBA202419 /* Armature.h */, + 2ABB219C37A44BB99B17EA0A /* Bone.cpp */, + 745DB1952467488B8A928ED1 /* Bone.h */, + 347657FDC2B448B6A53F65C7 /* Constraint.cpp */, + 9249558BCD59438DA1B6B8F9 /* Constraint.h */, + 578B4E8A87AD49849B7F9A69 /* DeformVertices.cpp */, + CAE2E83F4436442795DB0B4D /* DeformVertices.h */, + B0E708C6A22D4B8193FC3184 /* IArmatureProxy.h */, + BF783B87866D4250A9EC737B /* Slot.cpp */, + 94052F7F21184F8AB35E4627 /* Slot.h */, + A29F30C6B85D4C4D85EC3A23 /* TransformObject.cpp */, + 604243B25A8A4CD288042A37 /* TransformObject.h */, + ); + name = armature; + sourceTree = ""; + }; + 64613F644F374DEA9AD8C9AF /* math */ = { + isa = PBXGroup; + children = ( + E6FD26C576BF4E25A3BC5896 /* Geometry.cpp */, + 3FC940346387495982E83699 /* Geometry.h */, + 97F0DBC3A2A44EAF88615524 /* Mat3.cpp */, + 3CF68C5C9D4F4B6DAD819E43 /* Mat3.h */, + 3F5948E0BC7E468DBB4EE069 /* Mat4.cpp */, + D7B53139DA14405B879B4598 /* Mat4.h */, + 0F966C47475745AA86996F43 /* Mat4.inl */, + A5B4DE3F212E4B0AA0E96705 /* Math.cpp */, + A666087EBEEE4712A15EE9CA /* Math.h */, + B5D6FFA79E834640B13B2A33 /* MathBase.h */, + BCA99E4DD13346E8B8628D46 /* MathUtil.cpp */, + D293B94396634076BCB592BF /* MathUtil.h */, + DB3D91C4DF8B4051A96E2971 /* MathUtil.inl */, + 872A955E098C43EA9739BB56 /* MathUtilNeon.inl */, + BE1C273980D34C12BD0D3329 /* MathUtilNeon64.inl */, + D710B1782F4F42C7BFB285E4 /* MathUtilSSE.inl */, + 7782C09D0EE543F5BDD3FCC4 /* Quaternion.cpp */, + 20E1275EFE084670A1EC45F9 /* Quaternion.h */, + 3495199E2E6A40BFAECF9536 /* Quaternion.inl */, + 94F5FBF534F4415E99153ED4 /* Vec2.cpp */, + 1F7064865E2B4F178140EC4F /* Vec2.h */, + A061F0CEFCB04518951B63FF /* Vec2.inl */, + A26614B46FC444928F788FAA /* Vec3.cpp */, + 5D97F34C54594C0698DF7C88 /* Vec3.h */, + FBFF53E509D64DEA95AEB516 /* Vec3.inl */, + AABB86F0123842E284E08DB7 /* Vec4.cpp */, + 00012061B0CB4886A3F0894E /* Vec4.h */, + AFDAEEE273AB443582B9942A /* Vec4.inl */, + 5A3FE9F845364004AA54E621 /* Vertex.cpp */, + 530EB82E6340408A934FEBDB /* Vertex.h */, + ); + name = math; + sourceTree = ""; + }; + 67A1B68884D04691A53EBD02 /* gfx-empty */ = { + isa = PBXGroup; + children = ( + 8B31169E70174618B70BD1F3 /* EmptyBuffer.cpp */, + 63957920D1544C3FBF89E8A2 /* EmptyBuffer.h */, + EE842E0F1B864364B5C321D2 /* EmptyCommandBuffer.cpp */, + 94A3E8FEB5384275A16F2DF4 /* EmptyCommandBuffer.h */, + 5053403BA2294A4A9FD8D9CA /* EmptyContext.cpp */, + 1317E436DE4C46DAA8A80B1C /* EmptyContext.h */, + A2809CF9C70D4DD0896559FE /* EmptyDescriptorSet.cpp */, + 8C8F4B448E504704BF702336 /* EmptyDescriptorSet.h */, + 20C602DA27664CBA87990D42 /* EmptyDescriptorSetLayout.cpp */, + F454EBFE0F90409EBCB395BC /* EmptyDescriptorSetLayout.h */, + 43ABBC9380A8413AA4B8386E /* EmptyDevice.cpp */, + 7C8F7395018B4EFEB24DDEE1 /* EmptyDevice.h */, + D6CBC58A60704D60AB5C34A1 /* EmptyFramebuffer.cpp */, + 821CB21009054D4B890FD823 /* EmptyFramebuffer.h */, + F4124367C31047929B826251 /* EmptyInputAssembler.cpp */, + 7B6CD72E458D4CDCB4F45405 /* EmptyInputAssembler.h */, + 4D59FCA6E9304460BB87859C /* EmptyPipelineLayout.cpp */, + D62CD3A13F424327A3C79D48 /* EmptyPipelineLayout.h */, + F4E2157065AF43CEB1A447FD /* EmptyPipelineState.cpp */, + A9F993866D164939BEEF4A93 /* EmptyPipelineState.h */, + 0EC21A1B9D49435EBA5E21B6 /* EmptyQueue.cpp */, + DAE98891AC764748B1D10429 /* EmptyQueue.h */, + 253400FC457E4A3FA272B995 /* EmptyRenderPass.cpp */, + E23FD8AB2AAE4625AEDF4562 /* EmptyRenderPass.h */, + 6FD88142D97D49D5A45BB428 /* EmptySampler.cpp */, + 70B1176678184FAEBB94E008 /* EmptySampler.h */, + F6ACED6FF8F9482C931B04D1 /* EmptyShader.cpp */, + B084F08E28DB4AECAAB94BDC /* EmptyShader.h */, + 020365FF97B64799BEA2A98D /* EmptyTexture.cpp */, + 7EFF8E3DF0044518B1D4CFE3 /* EmptyTexture.h */, + ); + name = "gfx-empty"; + sourceTree = ""; + }; + 69CF13331D96483D8A30EE10 /* bindings */ = { + isa = PBXGroup; + children = ( + EE6449F20D194AB0ABA0FF81 /* dop */, + 581B52F4AAF644B094B0A168 /* auto */, + C962321E73F140A58B259ADE /* manual */, + 282E1B1A63B143C5A156F82D /* jswrapper */, + C845BD9AD4704793B29D1D52 /* event */, + ); + name = bindings; + sourceTree = ""; + }; + 770A67CD41354B8BA302AC99 /* ConvertUTF */ = { + isa = PBXGroup; + children = ( + 1D1883F0367D42A1A9896943 /* ConvertUTF.c */, + B89BA95E67374798A8D94E6F /* ConvertUTF.h */, + AABDB9DC97C840A6953A15A2 /* ConvertUTFWrapper.cpp */, + ); + name = ConvertUTF; + sourceTree = ""; + }; + 7D9342FDF95F4EEA987F304C /* frame-graph */ = { + isa = PBXGroup; + children = ( + 6EB9C52B627C45B4B982460B /* Blackboard.h */, + 2506630CF4B848CB90874604 /* CallbackPass.h */, + 1D6CC97988D74337940FA6C3 /* DevicePass.cpp */, + C6EB3A9523AA4B7BB485A79B /* DevicePass.h */, + 02E9D00B85674D56AF37178F /* DevicePassResourceTable.cpp */, + 181D5FC95515474A89BF29CE /* DevicePassResourceTable.h */, + CB229897E9D94497AA5311A9 /* FrameGraph.cpp */, + 50C9DC9454AB4F82901DD5D6 /* FrameGraph.h */, + 737638A65DA943A1BF2B46A5 /* Handle.h */, + 6BDFC4DFD39542FCA892B23D /* PassInsertPointManager.cpp */, + 3716450A4F534407BD1AC111 /* PassInsertPointManager.h */, + 13A5FAD2BBBE41D281D70CA7 /* PassNode.cpp */, + 45601CAA9F014ECCA4B6CA9B /* PassNode.h */, + 3AA2D0EBEC18441486413839 /* PassNodeBuilder.cpp */, + D10B1D3DE9B04B20B045EBF1 /* PassNodeBuilder.h */, + E4582D119C024AA985A85C34 /* RenderTargetAttachment.h */, + DED889662F274872B3F72566 /* Resource.h */, + 74DE42227E1B47928E0485EA /* ResourceAllocator.h */, + 41674608D1C64B3ABFDB091A /* ResourceEntry.h */, + F1DC7FB72EDA4FFCA0456B64 /* ResourceNode.h */, + 4AC3FC1A4A124139BE94B075 /* VirtualResource.cpp */, + 752337B5A74343CF9AB81A6E /* VirtualResource.h */, + ); + name = "frame-graph"; + sourceTree = ""; + }; + 82E57AF997AF40BCA1208C04 /* job-system */ = { + isa = PBXGroup; + children = ( + 5F6947D5DE1A4E02B7DB8EE9 /* job-system-taskflow */, + 2D4A69B71412499A8F987378 /* JobSystem.h */, + ); + name = "job-system"; + sourceTree = ""; + }; + 84B5A2B49216482CA7E2766C /* sources */ = { + isa = PBXGroup; + children = ( + C01B4A02CC5E40B9A5B32F04 /* tinyxml2 */, + C932DEA047624855BD72DB76 /* xxtea */, + 23FAC937313341C0A90BBE08 /* unzip */, + 770A67CD41354B8BA302AC99 /* ConvertUTF */, + FC19BB509ED444F7B92F9FBC /* tommyds */, + 3BC061E895F24154ACC29473 /* SocketRocket */, + ); + name = sources; + sourceTree = ""; + }; + 8FEC5345CC0646A193CCA08C /* model */ = { + isa = PBXGroup; + children = ( + A4BD23B7313148A89FFB169A /* AnimationConfig.cpp */, + AC267CA533E347748089D100 /* AnimationConfig.h */, + 846E9BED911647B791B3D12E /* AnimationData.cpp */, + 8B92DB212EEC4D1D8947764C /* AnimationData.h */, + 7D618B63812C4BD5BADBB3CF /* ArmatureData.cpp */, + 3B83C639AA9D4908AAE68170 /* ArmatureData.h */, + 83E26E50A7F64F67AF6F07E3 /* BoundingBoxData.cpp */, + C847DACD72A64FBE8530CF3E /* BoundingBoxData.h */, + 413E7BF65055408181181224 /* CanvasData.cpp */, + 89452AF766B840F5AA00BBC7 /* CanvasData.h */, + 202A2C3CA6D64098ADDA6D3A /* ConstraintData.cpp */, + E345FEF48E5D46B49C83F326 /* ConstraintData.h */, + 4C8FF768800E42AFA57A891F /* DisplayData.cpp */, + 44CEDB097E0C41D2960EB16C /* DisplayData.h */, + BD21E61B2D78436E8474768E /* DragonBonesData.cpp */, + 2E3032331001487697F21C23 /* DragonBonesData.h */, + F486D87013C24317969D6ED5 /* SkinData.cpp */, + F8FE26847ACD4CCFA0F3E384 /* SkinData.h */, + 04E17EF37FCB40CEB3370999 /* TextureAtlasData.cpp */, + 563AEA7640B141C6BA8E9CAC /* TextureAtlasData.h */, + 2A09E13CDD7C4CA19550CF0E /* UserData.cpp */, + 619C03C5A5B84248A0093FB4 /* UserData.h */, + ); + name = model; + sourceTree = ""; + }; + 956C4ED43D574AE7B2428620 /* ui */ = { + isa = PBXGroup; + children = ( + 4FFDC566E06B47DFA6D84898 /* edit-box */, + ); + name = ui; + sourceTree = ""; + }; + 98738E6CADED4EBFA44D2C35 /* dragonbones-creator-support */ = { + isa = PBXGroup; + children = ( + 94724F8724D643A2B1212FEA /* ArmatureCache.cpp */, + 7CFA0810D0BD42CD87358C96 /* ArmatureCache.h */, + C62E8FAB5E8D4EA4ABFE50F6 /* ArmatureCacheMgr.cpp */, + 9CC7D0A6353940A6BAE2BA07 /* ArmatureCacheMgr.h */, + 4D75249FE36B4416BED23988 /* CCArmatureCacheDisplay.cpp */, + 80EF36C63B9F468FBE381EB0 /* CCArmatureCacheDisplay.h */, + 024277FC1637460AA463EA05 /* CCArmatureDisplay.cpp */, + C6A9FCAA7EF0404DAD248DD5 /* CCArmatureDisplay.h */, + CC620E6521AE46F18DFC7AF1 /* CCDragonBonesHeaders.h */, + 2F0F7DBACB8E4FEDBA28B114 /* CCFactory.cpp */, + 467AF02145854C6292FD4435 /* CCFactory.h */, + F8234754860C4001B4189E2D /* CCSlot.cpp */, + B8FCA5CCAAB04418AFBF8B82 /* CCSlot.h */, + 31ED601B25BB44BFA8CBB2C3 /* CCTextureAtlasData.cpp */, + B53922249A94441FA39C8DFA /* CCTextureAtlasData.h */, + ); + name = "dragonbones-creator-support"; + sourceTree = ""; + }; + 99EDBA6433024FCCBAF3789D /* memory */ = { + isa = PBXGroup; + children = ( + BE1A12B0BFC6490FB3AE21F6 /* AllocatedObj.cpp */, + 46049968B8C847B6882EEC81 /* AllocatedObj.h */, + 87B95658C4294035B5240384 /* JeAlloc.cpp */, + 00F372E9A5E54738AB98AC7B /* JeAlloc.h */, + 25BBBCF9C4B443CA8ABD45F0 /* MemDef.h */, + 613D7DBB1776446BB2AADCDA /* MemTracker.cpp */, + 1D7D35B28E4C4DC7AA370818 /* MemTracker.h */, + 0377FDB81C864D84B48D3254 /* Memory.cpp */, + 57A0014184B849ECA41B6B3E /* Memory.h */, + 7ADDF7655AE0460092D03424 /* NedPooling.cpp */, + 9A368EAD21D04BA6A7C33540 /* NedPooling.h */, + 5C9E7233852A4E888D238338 /* StdAlloc.h */, + 59346C8D840A4C0496EAA7BC /* StlAlloc.h */, + ); + name = memory; + sourceTree = ""; + }; + 9CA111FBFF784EB8A0EC4651 /* Internal */ = { + isa = PBXGroup; + children = ( + B0E9F2C3B59D4033992BEA76 /* Proxy */, + 0A0F3EB492B4490994D12C8C /* RunLoop */, + DB695A5B4058458199C6439B /* Security */, + 3B4FDE8180854EDB8970DF5C /* Delegate */, + B7D39D0AC3394AF1AD43C1A6 /* Utilities */, + 14B2FF515AB141FB83E23235 /* IOConsumer */, + 21ADBBC5063540E087A06228 /* NSRunLoop+SRWebSocketPrivate.h */, + F0CEF941D1B04926A0029D05 /* NSURLRequest+SRWebSocketPrivate.h */, + A65B126EE9A543B1812A7F9E /* SRConstants.h */, + 62EDDB4357764906A035868A /* SRConstants.m */, + ); + name = Internal; + sourceTree = ""; + }; + 9F2A56FCADAA4620B254E264 /* helper */ = { + isa = PBXGroup; + children = ( + 70AE7646FDFD4358B8AC099B /* DefineMap.cpp */, + 2901476AD5824D03AA86EABB /* DefineMap.h */, + AA8D47144502490F985D0A4C /* SharedMemory.cpp */, + ECBDFA4A7FD548BA8492D4AD /* SharedMemory.h */, + ); + name = helper; + sourceTree = ""; + }; + 9F884EA6A9C84F2E9C2FB7CF /* gfx-agent */ = { + isa = PBXGroup; + children = ( + B05327E200A84F8492565F3D /* BufferAgent.cpp */, + A3B5A87F8DE54633A78A0CEE /* BufferAgent.h */, + 851E6323A99E47D292E3622B /* CommandBufferAgent.cpp */, + 1CCA254B73484DE7B8E0BC5D /* CommandBufferAgent.h */, + 2AAE1FD428544EC784A450FE /* DescriptorSetAgent.cpp */, + 8D283CB1617B4B2886E22C4D /* DescriptorSetAgent.h */, + 22426561742B40B981843758 /* DescriptorSetLayoutAgent.cpp */, + 6D69BC0B81A045DD9F86742F /* DescriptorSetLayoutAgent.h */, + B47B99973B074C89BBD68339 /* DeviceAgent.cpp */, + 1E914C51FD95417499E2C7AF /* DeviceAgent.h */, + F3CC2DBF71654BB6A35B1082 /* FramebufferAgent.cpp */, + E0C526CBE1FD4EA2AF2B6BAC /* FramebufferAgent.h */, + DABEAB147EE04718B3FB5B3C /* InputAssemblerAgent.cpp */, + CC92A8076BD14D8FB2931455 /* InputAssemblerAgent.h */, + 4637825F586442C38E2C0599 /* LinearAllocatorPool.h */, + E724CAB0C9234CA08F2EF7AF /* PipelineLayoutAgent.cpp */, + BB5BE5D6399D439D95760A50 /* PipelineLayoutAgent.h */, + 5CFECAE679FD4C91A9488744 /* PipelineStateAgent.cpp */, + 65CA10A771A54ACDB80F655F /* PipelineStateAgent.h */, + 0C95D2DB90CE4CFEA1643826 /* QueueAgent.cpp */, + AA1FCE8AAFEF4DB8A2E6767B /* QueueAgent.h */, + 17897DF9593441C8A3B98BC1 /* RenderPassAgent.cpp */, + 39CEC2C7929E4336B27A0782 /* RenderPassAgent.h */, + 02B580E073594BC48D1F7550 /* SamplerAgent.cpp */, + AD986C312CA745089B7474B3 /* SamplerAgent.h */, + 2559B057CBE4478ABCF490E8 /* ShaderAgent.cpp */, + 880D7358A04C4111932CE1CB /* ShaderAgent.h */, + 8EEC2D04207F4D73AEA6B468 /* TextureAgent.cpp */, + D6D61F5A090F45E6B21B8767 /* TextureAgent.h */, + ); + name = "gfx-agent"; + sourceTree = ""; + }; + A5243819239643AFABFD6E38 /* event */ = { + isa = PBXGroup; + children = ( + 15F80389C1004308BE5C6131 /* EventObject.cpp */, + 72CBCC34A7E84F829E8CE6EB /* EventObject.h */, + 5E839EBADDDD4A5F84F2564F /* IEventDispatcher.h */, + ); + name = event; + sourceTree = ""; + }; + A58C4E90A8154AB9A093E9E4 /* audio */ = { + isa = PBXGroup; + children = ( + BAB59DC611E84B52923E8703 /* include */, + E12F045AD36345788891A95B /* apple */, + 1C2BD9D17DC54083BE84F5C4 /* AudioEngine.cpp */, + ); + name = audio; + sourceTree = ""; + }; + B0E9F2C3B59D4033992BEA76 /* Proxy */ = { + isa = PBXGroup; + children = ( + FEA7B3CB237A43B491551CD4 /* SRProxyConnect.h */, + 58436CA0D6264F77A1B61060 /* SRProxyConnect.m */, + ); + name = Proxy; + sourceTree = ""; + }; + B7D39D0AC3394AF1AD43C1A6 /* Utilities */ = { + isa = PBXGroup; + children = ( + C8B04A5ECC8C4459A7298251 /* SRError.h */, + D344841A08C44082B584CFE9 /* SRError.m */, + 19FD85E5A133413587C4921F /* SRHTTPConnectMessage.h */, + 5F6B8E090EFF468686068AAB /* SRHTTPConnectMessage.m */, + 176B0AE2807F4599BA5330D9 /* SRHash.h */, + FF920EBDB9A143A5B9C6D51C /* SRHash.m */, + 802A2078433445638E6D45A9 /* SRLog.h */, + D1E149D25B174ABA8A8F5376 /* SRLog.m */, + 31FE8AAC389643B9931E1DEE /* SRMutex.h */, + FDEB8AC4EE984BF3AD627C12 /* SRMutex.m */, + 1A1A080A919745E58E579FA9 /* SRRandom.h */, + 637E09F2BF00499391647607 /* SRRandom.m */, + 6C8DBE75A17A453FBAB3267E /* SRSIMDHelpers.h */, + A0D6D477D5BF44B489675075 /* SRSIMDHelpers.m */, + 27C6D28419E74B38BEE16CA4 /* SRURLUtilities.h */, + 54A38D43E0AF42B38D7C70AE /* SRURLUtilities.m */, + ); + name = Utilities; + sourceTree = ""; + }; + B801FA7132E2485E87718575 /* shadow */ = { + isa = PBXGroup; + children = ( + F00AC16092F948FFA33E18BA /* ShadowFlow.cpp */, + 72D759BCF88C40AA86CD4FAD /* ShadowFlow.h */, + 72B40C9741F04F13B6083A6C /* ShadowStage.cpp */, + F5E02EE744794A53BFAF10C4 /* ShadowStage.h */, + ); + name = shadow; + sourceTree = ""; + }; + B9EEA516E1CB4231A04B9A37 /* Products */ = { + isa = PBXGroup; + children = ( + 46917107264D6D28000C7B53 /* libcocos3 Mac.a */, + ); + name = Products; + sourceTree = ""; + }; + BAB59DC611E84B52923E8703 /* include */ = { + isa = PBXGroup; + children = ( + 0DA486B43CF24FEEAC38A339 /* AudioEngine.h */, + 85AE1A857303442C819A2A49 /* Export.h */, + ); + name = include; + sourceTree = ""; + }; + BDA0FF4A55854ADFAB42C8B7 /* pipeline */ = { + isa = PBXGroup; + children = ( + 2B56BD43C950473EA37FD05B /* forward */, + 53A15CA6CA484CE5A4C7458A /* deferred */, + B801FA7132E2485E87718575 /* shadow */, + 9F2A56FCADAA4620B254E264 /* helper */, + 3F30E9D20F674581B8C0436F /* BatchedBuffer.cpp */, + 39A919A81CBA4578BBE6CDBA /* BatchedBuffer.h */, + 7BFEBDA641FF4EC7A1AFB042 /* Define.cpp */, + 8629545A266B4374AB1EB8F7 /* Define.h */, + E30A46242F124D52959A0EC5 /* InstancedBuffer.cpp */, + 512A2DEAD12642AEBC430D30 /* InstancedBuffer.h */, + B874ECECCA914333BF166B70 /* PipelineSceneData.cpp */, + E32A3AC16F944515AA28359A /* PipelineSceneData.h */, + 01E54EF4D4CB47A0B6102640 /* PipelineStateManager.cpp */, + 835C64E51DB842478C3EB2EA /* PipelineStateManager.h */, + B99A013CC1504C6D8090CD0D /* PipelineUBO.cpp */, + E4D925F4FFE048DA9A95251D /* PipelineUBO.h */, + AD1C36472E1342AD843577D0 /* PlanarShadowQueue.cpp */, + 226D4DF95E2C428F8D9D4D52 /* PlanarShadowQueue.h */, + 60DC092BEAC54036806290E4 /* RenderAdditiveLightQueue.cpp */, + C388972E81C2409F82940064 /* RenderAdditiveLightQueue.h */, + 86AEA54407744091A80E3CAD /* RenderBatchedQueue.cpp */, + 573353DCEE5F43248592AA21 /* RenderBatchedQueue.h */, + 4C6F964182D64F7FB5A66FA5 /* RenderFlow.cpp */, + 7706AF85759C4A9B82F5766A /* RenderFlow.h */, + 175274620ACA47FC87449091 /* RenderInstancedQueue.cpp */, + EB29D6B5FC9F422CA653B3BE /* RenderInstancedQueue.h */, + 51D5F8D75BA348FEBB994B01 /* RenderPipeline.cpp */, + BBBB23C779B84721AC6C285B /* RenderPipeline.h */, + 4B035719B75B4A0D81A15DC8 /* RenderQueue.cpp */, + 68126070FF594309B9F7BBF5 /* RenderQueue.h */, + D89872B1B2BA42A4A3EEBE74 /* RenderStage.cpp */, + 548EF36A7D584545B8A1D302 /* RenderStage.h */, + C66473274872428AB5F1C4E6 /* SceneCulling.cpp */, + CD1EEB3B4F0A4527AC3272C2 /* SceneCulling.h */, + 534A2BB0C44D4AC7B4640575 /* ShadowMapBatchedQueue.cpp */, + 780599F96BD548F9B560A985 /* ShadowMapBatchedQueue.h */, + ); + name = pipeline; + sourceTree = ""; + }; + C01B4A02CC5E40B9A5B32F04 /* tinyxml2 */ = { + isa = PBXGroup; + children = ( + 87E3B0DE8A5A4CC28476FD12 /* tinyxml2.cpp */, + 8D3F5B084BCB4FE8ACD313CE /* tinyxml2.h */, + ); + name = tinyxml2; + sourceTree = ""; + }; + C1FEA2F53EFB457EADDB2CD2 /* cocos2d */ = { + isa = PBXGroup; + children = ( + 3AB6CF14B1BF4C72817ED880 /* Source Files */, + ); + name = cocos2d; + sourceTree = ""; + }; + C2927047808A4A46AF29F1AB /* debugger */ = { + isa = PBXGroup; + children = ( + 8AB33699ADEF4C128BC28567 /* SHA1.cpp */, + 93E95C579338431C9EF62A46 /* SHA1.h */, + 7C224841CBE04337BC692851 /* base64.h */, + 8594B32191844F78ADD10DA4 /* env.cpp */, + E41526DD6DD64EDE90015EA3 /* env.h */, + 94299E74017146BC8F5A386C /* http_parser.c */, + 00EB8F9BF86F4C1AB3A0A956 /* http_parser.h */, + 9451C2F12EF1443FA21FFC26 /* inspector_agent.cpp */, + 01E5D8817C15421B93B52AE4 /* inspector_agent.h */, + A73F339D04B94AAE87DB6F59 /* inspector_io.cpp */, + 63246BFAF0D54BF1A34991BE /* inspector_io.h */, + E70542EF63D9410CB6CC7BC7 /* inspector_socket.cpp */, + B5723CF4235B49448E470D23 /* inspector_socket.h */, + 8BCA32AB94F74E51BC64F404 /* inspector_socket_server.cpp */, + D0302A26EDE74B88A5C619CE /* inspector_socket_server.h */, + FE5D921C4FAB4AD78FAC9E06 /* node.cpp */, + F27868AEA17740FCA4CA733F /* node.h */, + 813087D6610D4219A8AFFA70 /* node_debug_options.cpp */, + 6DEDA7929AB34D1583F2ED6D /* node_debug_options.h */, + DA62D99F54C942E3B073CFB3 /* node_mutex.h */, + 0B55096BD5004A3A99C3C367 /* util-inl.h */, + 7FF914B06A22453289282E37 /* util.cpp */, + 55922CEAA484412785B73498 /* util.h */, + CEFEC84DC30D4848B6B5FF03 /* v8_inspector_protocol_json.h */, + ); + name = debugger; + sourceTree = ""; + }; + C845BD9AD4704793B29D1D52 /* event */ = { + isa = PBXGroup; + children = ( + 7DFC62BF317A4D05AEEDE31E /* CustomEventTypes.h */, + 77A977EDC54243B082286350 /* EventDispatcher.cpp */, + E5E8B40B763A4DD79F74743E /* EventDispatcher.h */, + ); + name = event; + sourceTree = ""; + }; + C932DEA047624855BD72DB76 /* xxtea */ = { + isa = PBXGroup; + children = ( + D524DA425FB14ED78248D9E1 /* xxtea.cpp */, + 4E913BC5C326483EA8CB3E4A /* xxtea.h */, + ); + name = xxtea; + sourceTree = ""; + }; + C962321E73F140A58B259ADE /* manual */ = { + isa = PBXGroup; + children = ( + 978215A82DF14A09B97BC6E5 /* JavaScriptObjCBridge.h */, + 02AE8736B96B4AA08DF2C4F4 /* JavaScriptObjCBridge.mm */, + 7853EC140F514482B00CCD24 /* jsb_classtype.cpp */, + FEF0D30EB72647A4B8C54D0A /* jsb_classtype.h */, + D1E0AC1DD73F499E927F55A5 /* jsb_cocos_manual.cpp */, + 90AFBEEB309D48278DA1C1A3 /* jsb_cocos_manual.h */, + 7D444D6D57CE4950B4F7D1FD /* jsb_conversions.cpp */, + 8210697C1D3B4241862D7B82 /* jsb_conversions.h */, + D46D83A97BED4153AE5AF581 /* jsb_dragonbones_manual.cpp */, + FB7B84AE3BE74F7A961BD053 /* jsb_dragonbones_manual.h */, + D35456E2CD4F46D0A1EDA6CC /* jsb_gfx_manual.cpp */, + F35581324CED441B922C376B /* jsb_gfx_manual.h */, + D37C89275E9344EB954E27A7 /* jsb_global.cpp */, + DD1E96293E874E7686BCF86E /* jsb_global.h */, + 606A9A16A20A45219DB3C1BF /* jsb_global_init.cpp */, + 3DDF76ECF0344FA09414829B /* jsb_global_init.h */, + 4FDC8EAD25C349978E50B5A2 /* jsb_helper.cpp */, + 10F7E93FB0464171B26FDF1B /* jsb_helper.h */, + 3557523872014DF5A9E31298 /* jsb_module_register.h */, + A0C6D715C7424EAB9711A843 /* jsb_network_manual.cpp */, + 1466AE4D17C74A99A549741E /* jsb_network_manual.h */, + 7C1DE48C47BE4F088D0C3E8B /* jsb_pipeline_manual.cpp */, + 48D1FC5E1D58444C8F7B3E47 /* jsb_pipeline_manual.h */, + 2285C5EE8DB044A096FDD2BD /* jsb_platform.h */, + 02A6BA3FE12D42E58EA3D798 /* jsb_platfrom_apple.mm */, + 04430356222943D18EE78C92 /* jsb_socketio.cpp */, + 6666C7F2B9104141930899C3 /* jsb_socketio.h */, + B385B8DB6D204688A287722A /* jsb_websocket.cpp */, + DCD2DA9A714A4145A4D609CA /* jsb_websocket.h */, + 8AC1C445C27441E7BA2E9D66 /* jsb_xmlhttprequest.cpp */, + 16826C32FD9F4527A5C875FD /* jsb_xmlhttprequest.h */, + ); + name = manual; + sourceTree = ""; + }; + CA1C47386DF44744A2B337B9 /* platform */ = { + isa = PBXGroup; + children = ( + 1C0BA13DC45D4D9A927D7B0D /* apple */, + 4E7B4153ED854D5BAA636B73 /* ios */, + 1082E3EEBBEA463AADE00BD1 /* mac */, + E59CDF40ACD54918A7EC982F /* Application.cpp */, + B25A20CB82024001A091424F /* Application.h */, + 29C1E54F6AF64001B2857C53 /* CanvasRenderingContext2D.h */, + E83B871229824645A9FF6706 /* Device.h */, + 77628B2C58F54747B0C678CB /* FileUtils.cpp */, + 9B38D5FE24F24E40BFF138B5 /* FileUtils.h */, + ED4CB35CA8064929B674D4C9 /* Image.cpp */, + 9905BA8373D146259C0DEC04 /* Image.h */, + EEAAC93E059B4F0492B81AF0 /* SAXParser.cpp */, + 012B4CD605684F00BCCC6864 /* SAXParser.h */, + AA9C3E8F62DB49FEB7F4F823 /* StdC.h */, + ); + name = platform; + sourceTree = ""; + }; + D11BDA97BEA24697B42C5399 /* factory */ = { + isa = PBXGroup; + children = ( + 4E1D2186B059448590AA8A7A /* BaseFactory.cpp */, + 41A528FCCBAE460DB607C953 /* BaseFactory.h */, + ); + name = factory; + sourceTree = ""; + }; + D214E959C3BD4069A6A2BD13 /* gfx-validator */ = { + isa = PBXGroup; + children = ( + 137096C5210445C3B916100A /* BufferValidator.cpp */, + 6F2F251102D048A7A3E84997 /* BufferValidator.h */, + FBD537A61B69425881059098 /* CommandBufferValidator.cpp */, + 294BA990519149049CF8D1F7 /* CommandBufferValidator.h */, + AC8C5624D37445C8AA55F4AA /* DescriptorSetLayoutValidator.cpp */, + A511728A9E46417FAB07A889 /* DescriptorSetLayoutValidator.h */, + E6143790931544B19C4839BD /* DescriptorSetValidator.cpp */, + DCC1719A72D44031BB4F561D /* DescriptorSetValidator.h */, + F3F739D5678D4B799591610F /* DeviceValidator.cpp */, + 5DC7FB6276784FD7AE851D45 /* DeviceValidator.h */, + C989896B8E234CBFBD73F200 /* FramebufferValidator.cpp */, + B0999C58A1C34E749DE01151 /* FramebufferValidator.h */, + 7E758DC5FDAC4687B7CF70CC /* InputAssemblerValidator.cpp */, + 0232D566903E49ED88C192DB /* InputAssemblerValidator.h */, + 3AFAEB31AE9248579325B140 /* PipelineLayoutValidator.cpp */, + 70AAD6A19FC74BCC9EA7B768 /* PipelineLayoutValidator.h */, + 11009685AB9E42A7A95455E3 /* PipelineStateValidator.cpp */, + 216436C240A94180B844A727 /* PipelineStateValidator.h */, + F687ABAD26B142489CCB6B5C /* QueueValidator.cpp */, + B3A13114660E417F94DD739B /* QueueValidator.h */, + 056D6F48A10E40FFBCECD9A6 /* RenderPassValidator.cpp */, + 798847CF391F440A906C9839 /* RenderPassValidator.h */, + 867F9D43F81544D38C324ECA /* SamplerValidator.cpp */, + 03161F790B304AA6A17E6725 /* SamplerValidator.h */, + 9B7DD605AD5B4BD1983F526F /* ShaderValidator.cpp */, + 8BBEC3AFBA2240A0B9D118C3 /* ShaderValidator.h */, + 0F375D7EDA1E4DF890402A76 /* TextureValidator.cpp */, + A6BF775DCBAC4BE6AFBA0D54 /* TextureValidator.h */, + C5B520E7670E48E8B38C6AFB /* ValidationUtils.cpp */, + 25596E8C9DAD43BBBEF8F1FF /* ValidationUtils.h */, + ); + name = "gfx-validator"; + sourceTree = ""; + }; + D7E1F0FA94DE4D25AA0F6A2A /* gfx-base */ = { + isa = PBXGroup; + children = ( + 6691B4455DC24F46AC844D35 /* GFXBase.h */, + 5E30850DBB57401A8D757251 /* GFXBuffer.cpp */, + 3BF89C00986C4298A480AF85 /* GFXBuffer.h */, + 97EC016D44F2407A9B4078C6 /* GFXCommandBuffer.cpp */, + E94C55C24C5041F7BAC11296 /* GFXCommandBuffer.h */, + AEF49CEECE14461B8FEC7486 /* GFXContext.cpp */, + 8E82B73D450D4BEB88ED3A8B /* GFXContext.h */, + 5EA8A0185DB94C4BA96504FE /* GFXDef-common.h */, + DEA1686939BE407AB54B6806 /* GFXDef.cpp */, + BB94EE5930644CF6818AD559 /* GFXDef.h */, + 6D9E8B50D5D44BC69FE9261B /* GFXDescriptorSet.cpp */, + 52593B350F3847CAB314BED9 /* GFXDescriptorSet.h */, + C9D27E61002842B8A28CFBE8 /* GFXDescriptorSetLayout.cpp */, + AE34F968E8FE4B4AB3406ABE /* GFXDescriptorSetLayout.h */, + 9A77A31AAF3D4A33BAC4AD0D /* GFXDevice.cpp */, + 9A56EDB1590F49C19C6B05C3 /* GFXDevice.h */, + 2666F24BB3D840BD8A2ED8F6 /* GFXFramebuffer.cpp */, + 7EE657096A2A4A9EA8DBA3A4 /* GFXFramebuffer.h */, + 2D0B20D30A6F4ED481F56998 /* GFXGlobalBarrier.cpp */, + 0F0F4EDD7D254A31B8EE35E2 /* GFXGlobalBarrier.h */, + 07A6DD5E083F48669C0BF911 /* GFXInputAssembler.cpp */, + ED5288B85F6146EF81BCA8CA /* GFXInputAssembler.h */, + 26FD76AE417F4209A8302DA9 /* GFXObject.cpp */, + A4E86D8DE1664CC29F512613 /* GFXObject.h */, + 62F9810B4A1245F5ABEA2B18 /* GFXPipelineLayout.cpp */, + 70A9AE9860E442B99E1FE611 /* GFXPipelineLayout.h */, + CE270B998E61433A9A4D215C /* GFXPipelineState.cpp */, + 0D54FD7C92B747639AF14390 /* GFXPipelineState.h */, + A5F3EF45908642C49823F75F /* GFXQueue.cpp */, + 5E912B7CDD6A4E67BCC38256 /* GFXQueue.h */, + 61342F1D0E354A97A9212EA3 /* GFXRenderPass.cpp */, + 55699CB32A64483B8EE960DE /* GFXRenderPass.h */, + D5FB1F8395D4445BB993C196 /* GFXSampler.cpp */, + 8AD420D8E191457ABB9F5388 /* GFXSampler.h */, + 74EBAD385D674F0FB9730595 /* GFXShader.cpp */, + 497F71C52A284E7EB792098B /* GFXShader.h */, + 4CD30C3F3B294B96AD8CD7A4 /* GFXTexture.cpp */, + A1C3C05AC61F4F4DA7F3CB14 /* GFXTexture.h */, + D46A5F963DEB4FB4AFB53614 /* GFXTextureBarrier.cpp */, + E1B0BD0EC029490281F79449 /* GFXTextureBarrier.h */, + ); + name = "gfx-base"; + sourceTree = ""; + }; + DB695A5B4058458199C6439B /* Security */ = { + isa = PBXGroup; + children = ( + E288FE0BDE834378A9660EB9 /* SRPinningSecurityPolicy.h */, + 83F2B458639C4928BC5CCB11 /* SRPinningSecurityPolicy.m */, + ); + name = Security; + sourceTree = ""; + }; + E12F045AD36345788891A95B /* apple */ = { + isa = PBXGroup; + children = ( + 3816CCEA58624DBA8A9F05C6 /* AudioCache.h */, + 13AF104A80CC41E1B4521C7E /* AudioCache.mm */, + 21C2FED0141440BE9BA4FD33 /* AudioDecoder.h */, + E59F3454BE254877B305529A /* AudioDecoder.mm */, + BFD2D92B1FE04C9EA568617F /* AudioEngine-inl.h */, + B3D61011F31F4EA692B07C79 /* AudioEngine-inl.mm */, + E8224D8B491C4D3CBC562A0C /* AudioMacros.h */, + 0F83107429A84755B2BBFC59 /* AudioPlayer.h */, + 2EACCF3DF17742BBA74C7EB6 /* AudioPlayer.mm */, + ); + name = apple; + sourceTree = ""; + }; + EE6449F20D194AB0ABA0FF81 /* dop */ = { + isa = PBXGroup; + children = ( + A2AAD20710B9475CB23A27C3 /* BufferAllocator.cpp */, + 611027076F5C4C7AA1DDCE72 /* BufferAllocator.h */, + BA13F05FB3BD4519A7A01177 /* BufferPool.cpp */, + 294699D3F3D34A4496CA69CA /* BufferPool.h */, + 3B7EE2F93A944CB8AB72DC81 /* ObjectPool.cpp */, + 53D7A89FAE104925B56ACCDE /* ObjectPool.h */, + 23D7A67527724738BA050617 /* PoolType.h */, + 5229FBD2E6544BF3BFE03E49 /* jsb_dop.cpp */, + 619C844C4A474D6D825EB00C /* jsb_dop.h */, + ); + name = dop; + sourceTree = ""; + }; + F0BAC008BE6047C78A035640 /* gfx-metal */ = { + isa = PBXGroup; + children = ( + 33DEAF87BA434130B07C86A1 /* GFXMTL.h */, + 0AFA4AC5A11F4E4D9E70FE6A /* MTLBuffer.h */, + 38CC2072CD84422AB2E86089 /* MTLBuffer.mm */, + 864252943068471291689F09 /* MTLCommandBuffer.h */, + D0EF4928EEDF471792AABED9 /* MTLCommandBuffer.mm */, + FFEF259EED3D4B8B904C46FF /* MTLCommandEncoder.h */, + 9F0C03D5F57C49F1A190DEFF /* MTLComputeCommandEncoder.h */, + BBC6ACE7F03E437FBCBFA8B1 /* MTLConfig.h */, + B4CE28B5F4CB40B09B3157EE /* MTLContext.h */, + BC5E7A2CA69D49BF94017F2A /* MTLContext.mm */, + 35618FCCDC4B4CF0A2541DF2 /* MTLDescriptorSet.h */, + BE19B4A16E1E4F929F8F4D78 /* MTLDescriptorSet.mm */, + 1CB05292539B438882B884D2 /* MTLDescriptorSetLayout.h */, + F9BA6C2EF5FC458692419140 /* MTLDescriptorSetLayout.mm */, + CD73ECC043614A8D84476D60 /* MTLDevice.h */, + AEB341EDBB1F46E8BCE6BF02 /* MTLDevice.mm */, + C517A1075AFC4DC4A080C1FF /* MTLFramebuffer.h */, + F90A93EE72054E7A9B95E5A2 /* MTLFramebuffer.mm */, + A59C066F12B449C2B0F30487 /* MTLGPUObjects.h */, + 720A938692564D2FA781A55E /* MTLInputAssembler.h */, + 6E56D2E5B18E4878B798CAC9 /* MTLInputAssembler.mm */, + BCD72BB8693E4CF786A44949 /* MTLPipelineLayout.h */, + ED46542641394DA19F741C45 /* MTLPipelineLayout.mm */, + B694B71979244DC5BB8FBF4A /* MTLPipelineState.h */, + E2C7751080C8453684BC1595 /* MTLPipelineState.mm */, + 395E7D313EC14B8AB39B802C /* MTLQueue.h */, + E642466FC2134E929EE69F2E /* MTLQueue.mm */, + 5DA1ADFC4D96428194B8CFA8 /* MTLRenderCommandEncoder.h */, + C1F6CEC9812643098FE2C62F /* MTLRenderPass.h */, + DC35AFCF1A824AEAAEDF0D6F /* MTLRenderPass.mm */, + C4203492E59B4B00B14E2F74 /* MTLSampler.h */, + 92008C7F89864AB6BF8E3019 /* MTLSampler.mm */, + 04C39DB3CFBF413CBE98F1DF /* MTLSemaphore.h */, + E318AA77771343E1BF9651FF /* MTLShader.h */, + 82A85305C4F545339B6599D7 /* MTLShader.mm */, + ECA98000DC894587BA273736 /* MTLStd.cpp */, + 5EDB34275D65452D87C110E3 /* MTLStd.h */, + DD293136C43747C7A11C4DED /* MTLTexture.h */, + 2AFF1B7EC5304E17BAED8199 /* MTLTexture.mm */, + 18F0EC080B304A4F88DF25B0 /* MTLUtils.h */, + 33C15007D71E4AA39EB1AFC6 /* MTLUtils.mm */, + ); + name = "gfx-metal"; + sourceTree = ""; + }; + F5BC35FF4279404E87BEBB96 /* external */ = { + isa = PBXGroup; + children = ( + 84B5A2B49216482CA7E2766C /* sources */, + ); + name = external; + sourceTree = ""; + }; + F90A135C19214A0AB4D2905B /* parser */ = { + isa = PBXGroup; + children = ( + DD7B7EC7C34E4B3FB05030A8 /* BinaryDataParser.cpp */, + 60C79A91B4174E788858ED44 /* BinaryDataParser.h */, + CF7A335095974FB5847D7E53 /* DataParser.cpp */, + 95212201FACC4E29B923FEC1 /* DataParser.h */, + 8F279A7CE7B74DA5932FB457 /* JSONDataParser.cpp */, + FFAF1C56236D43B9819263A1 /* JSONDataParser.h */, + ); + name = parser; + sourceTree = ""; + }; + F95C1C618E5C4F74A7B815AB /* base */ = { + isa = PBXGroup; + children = ( + 99EDBA6433024FCCBAF3789D /* memory */, + 0206A3332CCE47D9BC541D7F /* threading */, + 82E57AF997AF40BCA1208C04 /* job-system */, + AF5E0574EBFD45CB899BEB0C /* Agent.h */, + AF136ACDE85E4DEB8F9D27A5 /* AutoreleasePool.cpp */, + E485BD7BA4D64AC1AF6BC5DC /* AutoreleasePool.h */, + 63C557042A044B449CEC1544 /* CachedArray.h */, + 72D10EB0C9C044679F85CE36 /* Config.h */, + 3FA3D89D53E44A8095D5EA56 /* CoreStd.h */, + E6FA686ED2E44BBBA587CE82 /* Data.cpp */, + C36C181987E44B61B5282E0A /* Data.h */, + EDE41D5D862940098DD00EF5 /* IndexHandle.h */, + E1CC55749B6E4550836BD774 /* Log.cpp */, + 63FEFF3BF4314429AE1180A2 /* Log.h */, + ED677B9FD9B0417384D23346 /* Macros.h */, + D139468BD4A940A38AD87F3D /* Map.h */, + F11E25384CDC46E99A14000C /* Object.h */, + 8AAD4C8AAFD0452496D7954A /* Random.h */, + EAE7234460374B7985435647 /* Ref.cpp */, + 4C32FE8C6F66440AAA6D3510 /* Ref.h */, + 0EC89CB1179E4F50B3A384D9 /* Scheduler.cpp */, + 0D7C7DD7FBC84482A1D22940 /* Scheduler.h */, + 6A7052F9B1FE447EB2603D35 /* StringHandle.cpp */, + A4337C43B1ED4389A518D095 /* StringHandle.h */, + 6F6C8B5DEE324E2E92C34243 /* StringPool.h */, + 0A2F94AE92C9420E8FFDBDEE /* StringUtil.cpp */, + A7C778ED97374D07B499FFCF /* StringUtil.h */, + EE24C0CEC7D944ED8A139AD6 /* ThreadPool.cpp */, + 38BC6A4A36A746A181901867 /* ThreadPool.h */, + 83AC4FDA070A447DAEA4F094 /* TypeDef.h */, + 6FBEB86F39F64BF79F9F5543 /* UTF8.cpp */, + 768EF6E453044181B8824231 /* UTF8.h */, + FB8024EF9C37469094C18043 /* Utils.cpp */, + 7DC76EBD492F43408BE16F2F /* Utils.h */, + FA96F552A07F451B8FCB57D2 /* Value.cpp */, + 57CBD3A5D7FB4296A2B62109 /* Value.h */, + 95C51C0779864526A2439BD1 /* Vector.h */, + B9F8A677EC394588B72146D4 /* ZipUtils.cpp */, + 127A69EC35084C3DA80EA1C9 /* ZipUtils.h */, + 81B2E663DB1C4F1DB93D7BBE /* astc.cpp */, + 564CF0E4278D4FE391DE032A /* astc.h */, + 6BB2E9055D384F288423BB90 /* base64.cpp */, + 71A38B1940384F8F8A1C45DD /* base64.h */, + 54AFB302525148F89ADAEB33 /* csscolorparser.cpp */, + C2539C3343754399B321F780 /* csscolorparser.h */, + 86BBFCAE1F8647EB9FAA5013 /* etc1.cpp */, + 00F388C3CE1741C6B67733D6 /* etc1.h */, + 488BFF5D6A744B5CAAB384DE /* etc2.cpp */, + 578A8D48AB93427391A69EBA /* etc2.h */, + ); + name = base; + sourceTree = ""; + }; + FC19BB509ED444F7B92F9FBC /* tommyds */ = { + isa = PBXGroup; + children = ( + 184431240FFC43909A60F5E7 /* tommy.c */, + 928E732EA6F34610B8604FA8 /* tommy.h */, + ); + name = tommyds; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 46916FCB264D6D28000C7B53 /* cocos3 Mac */ = { + isa = PBXNativeTarget; + buildConfigurationList = 46917102264D6D28000C7B53 /* Build configuration list for PBXNativeTarget "cocos3 Mac" */; + buildPhases = ( + 46916FCC264D6D28000C7B53 /* Sources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "cocos3 Mac"; + productName = cocos2d; + productReference = 46917107264D6D28000C7B53 /* libcocos3 Mac.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 082F81A280B44457972AB161 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1240; + }; + buildConfigurationList = CAD8A57125E841A2A3DBE942 /* Build configuration list for PBXProject "cocos3-mac" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 161EF71AB3B9472FB3981B30; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 46916FCB264D6D28000C7B53 /* cocos3 Mac */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 46916FCC264D6D28000C7B53 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 46916FCD264D6D28000C7B53 /* AudioEngine.cpp in Sources */, + 46916FCE264D6D28000C7B53 /* AudioCache.mm in Sources */, + 46916FCF264D6D28000C7B53 /* AudioDecoder.mm in Sources */, + 46916FD0264D6D28000C7B53 /* AudioEngine-inl.mm in Sources */, + 46916FD1264D6D28000C7B53 /* AudioPlayer.mm in Sources */, + 46916FD2264D6D28000C7B53 /* AutoreleasePool.cpp in Sources */, + 46916FD3264D6D28000C7B53 /* Data.cpp in Sources */, + 46916FD4264D6D28000C7B53 /* Log.cpp in Sources */, + 46916FD5264D6D28000C7B53 /* Ref.cpp in Sources */, + 46916FD6264D6D28000C7B53 /* Scheduler.cpp in Sources */, + 46916FD7264D6D28000C7B53 /* StringHandle.cpp in Sources */, + 46916FD8264D6D28000C7B53 /* StringUtil.cpp in Sources */, + 46916FD9264D6D28000C7B53 /* ThreadPool.cpp in Sources */, + 46916FDA264D6D28000C7B53 /* UTF8.cpp in Sources */, + 46916FDB264D6D28000C7B53 /* Utils.cpp in Sources */, + 46916FDC264D6D28000C7B53 /* Value.cpp in Sources */, + 46916FDD264D6D28000C7B53 /* ZipUtils.cpp in Sources */, + 46916FDE264D6D28000C7B53 /* astc.cpp in Sources */, + 46916FDF264D6D28000C7B53 /* base64.cpp in Sources */, + 46916FE0264D6D28000C7B53 /* csscolorparser.cpp in Sources */, + 46916FE1264D6D28000C7B53 /* etc1.cpp in Sources */, + 46916FE2264D6D28000C7B53 /* etc2.cpp in Sources */, + 46916FE3264D6D28000C7B53 /* TFJobGraph.cpp in Sources */, + 46916FE4264D6D28000C7B53 /* TFJobSystem.cpp in Sources */, + 46916FE5264D6D28000C7B53 /* AllocatedObj.cpp in Sources */, + 46916FE6264D6D28000C7B53 /* JeAlloc.cpp in Sources */, + 46916FE7264D6D28000C7B53 /* MemTracker.cpp in Sources */, + 46916FE8264D6D28000C7B53 /* Memory.cpp in Sources */, + 46916FE9264D6D28000C7B53 /* NedPooling.cpp in Sources */, + 46916FEA264D6D28000C7B53 /* ConditionVariable.cpp in Sources */, + 46916FEB264D6D28000C7B53 /* MessageQueue.cpp in Sources */, + 46916FEC264D6D28000C7B53 /* Semaphore.cpp in Sources */, + 46916FED264D6D28000C7B53 /* ThreadPool.cpp in Sources */, + 46916FEE264D6D28000C7B53 /* ThreadSafeLinearAllocator.cpp in Sources */, + 46916FEF264D6D28000C7B53 /* jsb_audio_auto.cpp in Sources */, + 46916FF0264D6D28000C7B53 /* jsb_cocos_auto.cpp in Sources */, + 46916FF1264D6D28000C7B53 /* jsb_dragonbones_auto.cpp in Sources */, + 46916FF2264D6D28000C7B53 /* jsb_editor_support_auto.cpp in Sources */, + 46916FF3264D6D28000C7B53 /* jsb_extension_auto.cpp in Sources */, + 46916FF4264D6D28000C7B53 /* jsb_gfx_auto.cpp in Sources */, + 46916FF5264D6D28000C7B53 /* jsb_network_auto.cpp in Sources */, + 46916FF6264D6D28000C7B53 /* jsb_pipeline_auto.cpp in Sources */, + 46916FF7264D6D28000C7B53 /* BufferAllocator.cpp in Sources */, + 46916FF8264D6D28000C7B53 /* BufferPool.cpp in Sources */, + 46916FF9264D6D28000C7B53 /* ObjectPool.cpp in Sources */, + 46916FFA264D6D28000C7B53 /* jsb_dop.cpp in Sources */, + 46916FFB264D6D28000C7B53 /* EventDispatcher.cpp in Sources */, + 46916FFC264D6D28000C7B53 /* HandleObject.cpp in Sources */, + 46916FFD264D6D28000C7B53 /* MappingUtils.cpp in Sources */, + 46916FFE264D6D28000C7B53 /* RefCounter.cpp in Sources */, + 46916FFF264D6D28000C7B53 /* State.cpp in Sources */, + 46917000264D6D28000C7B53 /* Value.cpp in Sources */, + 46917001264D6D28000C7B53 /* config.cpp in Sources */, + 46917002264D6D28000C7B53 /* Class.cpp in Sources */, + 46917003264D6D28000C7B53 /* Object.cpp in Sources */, + 46917004264D6D28000C7B53 /* ObjectWrap.cpp in Sources */, + 46917005264D6D28000C7B53 /* ScriptEngine.cpp in Sources */, + 46917006264D6D28000C7B53 /* Utils.cpp in Sources */, + 46917007264D6D28000C7B53 /* SHA1.cpp in Sources */, + 46917008264D6D28000C7B53 /* env.cpp in Sources */, + 46917009264D6D28000C7B53 /* http_parser.c in Sources */, + 4691700A264D6D28000C7B53 /* inspector_agent.cpp in Sources */, + 4691700B264D6D28000C7B53 /* inspector_io.cpp in Sources */, + 4691700C264D6D28000C7B53 /* inspector_socket.cpp in Sources */, + 4691700D264D6D28000C7B53 /* inspector_socket_server.cpp in Sources */, + 4691700E264D6D28000C7B53 /* node.cpp in Sources */, + 4691700F264D6D28000C7B53 /* node_debug_options.cpp in Sources */, + 46917010264D6D28000C7B53 /* util.cpp in Sources */, + 46917011264D6D28000C7B53 /* JavaScriptObjCBridge.mm in Sources */, + 46917012264D6D28000C7B53 /* jsb_classtype.cpp in Sources */, + 46917013264D6D28000C7B53 /* jsb_cocos_manual.cpp in Sources */, + 46917014264D6D28000C7B53 /* jsb_conversions.cpp in Sources */, + 46917015264D6D28000C7B53 /* jsb_dragonbones_manual.cpp in Sources */, + 46917016264D6D28000C7B53 /* jsb_gfx_manual.cpp in Sources */, + 46917017264D6D28000C7B53 /* jsb_global.cpp in Sources */, + 46917018264D6D28000C7B53 /* jsb_global_init.cpp in Sources */, + 46917019264D6D28000C7B53 /* jsb_helper.cpp in Sources */, + 4691701A264D6D28000C7B53 /* jsb_network_manual.cpp in Sources */, + 4691701B264D6D28000C7B53 /* jsb_pipeline_manual.cpp in Sources */, + 4691701C264D6D28000C7B53 /* jsb_platfrom_apple.mm in Sources */, + 4691701D264D6D28000C7B53 /* jsb_socketio.cpp in Sources */, + 4691701E264D6D28000C7B53 /* jsb_websocket.cpp in Sources */, + 4691701F264D6D28000C7B53 /* jsb_xmlhttprequest.cpp in Sources */, + 46917020264D6D28000C7B53 /* IOBuffer.cpp in Sources */, + 46917021264D6D28000C7B53 /* IOTypedArray.cpp in Sources */, + 46917022264D6D28000C7B53 /* MeshBuffer.cpp in Sources */, + 46917023264D6D28000C7B53 /* MiddlewareManager.cpp in Sources */, + 46917024264D6D28000C7B53 /* SharedBufferManager.cpp in Sources */, + 46917025264D6D28000C7B53 /* TypedArrayPool.cpp in Sources */, + 46917026264D6D28000C7B53 /* ArmatureCache.cpp in Sources */, + 46917027264D6D28000C7B53 /* ArmatureCacheMgr.cpp in Sources */, + 46917028264D6D28000C7B53 /* CCArmatureCacheDisplay.cpp in Sources */, + 46917029264D6D28000C7B53 /* CCArmatureDisplay.cpp in Sources */, + 4691702A264D6D28000C7B53 /* CCFactory.cpp in Sources */, + 4691702B264D6D28000C7B53 /* CCSlot.cpp in Sources */, + 4691702C264D6D28000C7B53 /* CCTextureAtlasData.cpp in Sources */, + 4691702D264D6D28000C7B53 /* Animation.cpp in Sources */, + 4691702E264D6D28000C7B53 /* AnimationState.cpp in Sources */, + 4691702F264D6D28000C7B53 /* BaseTimelineState.cpp in Sources */, + 46917030264D6D28000C7B53 /* TimelineState.cpp in Sources */, + 46917031264D6D28000C7B53 /* WorldClock.cpp in Sources */, + 46917032264D6D28000C7B53 /* Armature.cpp in Sources */, + 46917033264D6D28000C7B53 /* Bone.cpp in Sources */, + 46917034264D6D28000C7B53 /* Constraint.cpp in Sources */, + 46917035264D6D28000C7B53 /* DeformVertices.cpp in Sources */, + 46917036264D6D28000C7B53 /* Slot.cpp in Sources */, + 46917037264D6D28000C7B53 /* TransformObject.cpp in Sources */, + 46917038264D6D28000C7B53 /* BaseObject.cpp in Sources */, + 46917039264D6D28000C7B53 /* DragonBones.cpp in Sources */, + 4691703A264D6D28000C7B53 /* EventObject.cpp in Sources */, + 4691703B264D6D28000C7B53 /* BaseFactory.cpp in Sources */, + 4691703C264D6D28000C7B53 /* Point.cpp in Sources */, + 4691703D264D6D28000C7B53 /* Transform.cpp in Sources */, + 4691703E264D6D28000C7B53 /* AnimationConfig.cpp in Sources */, + 4691703F264D6D28000C7B53 /* AnimationData.cpp in Sources */, + 46917040264D6D28000C7B53 /* ArmatureData.cpp in Sources */, + 46917041264D6D28000C7B53 /* BoundingBoxData.cpp in Sources */, + 46917042264D6D28000C7B53 /* CanvasData.cpp in Sources */, + 46917043264D6D28000C7B53 /* ConstraintData.cpp in Sources */, + 46917044264D6D28000C7B53 /* DisplayData.cpp in Sources */, + 46917045264D6D28000C7B53 /* DragonBonesData.cpp in Sources */, + 46917046264D6D28000C7B53 /* SkinData.cpp in Sources */, + 46917047264D6D28000C7B53 /* TextureAtlasData.cpp in Sources */, + 46917048264D6D28000C7B53 /* UserData.cpp in Sources */, + 46917049264D6D28000C7B53 /* BinaryDataParser.cpp in Sources */, + 4691704A264D6D28000C7B53 /* DataParser.cpp in Sources */, + 4691704B264D6D28000C7B53 /* JSONDataParser.cpp in Sources */, + 4691704C264D6D28000C7B53 /* middleware-adapter.cpp in Sources */, + 4691704D264D6D28000C7B53 /* Geometry.cpp in Sources */, + 4691704E264D6D28000C7B53 /* Mat3.cpp in Sources */, + 4691704F264D6D28000C7B53 /* Mat4.cpp in Sources */, + 46917050264D6D28000C7B53 /* Math.cpp in Sources */, + 46917051264D6D28000C7B53 /* MathUtil.cpp in Sources */, + 46917052264D6D28000C7B53 /* Quaternion.cpp in Sources */, + 46917053264D6D28000C7B53 /* Vec2.cpp in Sources */, + 46917054264D6D28000C7B53 /* Vec3.cpp in Sources */, + 46917055264D6D28000C7B53 /* Vec4.cpp in Sources */, + 46917056264D6D28000C7B53 /* Vertex.cpp in Sources */, + 46917057264D6D28000C7B53 /* Downloader.cpp in Sources */, + 46917058264D6D28000C7B53 /* DownloaderImpl-apple.mm in Sources */, + 46917059264D6D28000C7B53 /* HttpAsynConnection-apple.m in Sources */, + 4691705A264D6D28000C7B53 /* HttpClient-apple.mm in Sources */, + 4691705B264D6D28000C7B53 /* HttpClient.cpp in Sources */, + 4691705C264D6D28000C7B53 /* HttpCookie.cpp in Sources */, + 4691705D264D6D28000C7B53 /* SocketIO.cpp in Sources */, + 4691705E264D6D28000C7B53 /* Uri.cpp in Sources */, + 4691705F264D6D28000C7B53 /* WebSocket-apple.mm in Sources */, + 46917060264D6D28000C7B53 /* Application.cpp in Sources */, + 46917061264D6D28000C7B53 /* FileUtils.cpp in Sources */, + 46917062264D6D28000C7B53 /* Image.cpp in Sources */, + 46917063264D6D28000C7B53 /* SAXParser.cpp in Sources */, + 46917064264D6D28000C7B53 /* CanvasRenderingContext2D-apple.mm in Sources */, + 46917065264D6D28000C7B53 /* Device-apple.mm in Sources */, + 46917066264D6D28000C7B53 /* FileUtils-apple.mm in Sources */, + 46917067264D6D28000C7B53 /* Reachability.cpp in Sources */, + 46917068264D6D28000C7B53 /* Application-mac.mm in Sources */, + 46917069264D6D28000C7B53 /* Device-mac.mm in Sources */, + 4691706A264D6D28000C7B53 /* KeyCodeHelper.cpp in Sources */, + 4691706B264D6D28000C7B53 /* View.mm in Sources */, + 4691706C264D6D28000C7B53 /* DevicePass.cpp in Sources */, + 4691706D264D6D28000C7B53 /* DevicePassResourceTable.cpp in Sources */, + 4691706E264D6D28000C7B53 /* FrameGraph.cpp in Sources */, + 4691706F264D6D28000C7B53 /* PassInsertPointManager.cpp in Sources */, + 46917070264D6D28000C7B53 /* PassNode.cpp in Sources */, + 46917071264D6D28000C7B53 /* PassNodeBuilder.cpp in Sources */, + 46917072264D6D28000C7B53 /* VirtualResource.cpp in Sources */, + 46917073264D6D28000C7B53 /* BufferAgent.cpp in Sources */, + 46917074264D6D28000C7B53 /* CommandBufferAgent.cpp in Sources */, + 46917075264D6D28000C7B53 /* DescriptorSetAgent.cpp in Sources */, + 46917076264D6D28000C7B53 /* DescriptorSetLayoutAgent.cpp in Sources */, + 46917077264D6D28000C7B53 /* DeviceAgent.cpp in Sources */, + 46917078264D6D28000C7B53 /* FramebufferAgent.cpp in Sources */, + 46917079264D6D28000C7B53 /* InputAssemblerAgent.cpp in Sources */, + 4691707A264D6D28000C7B53 /* PipelineLayoutAgent.cpp in Sources */, + 4691707B264D6D28000C7B53 /* PipelineStateAgent.cpp in Sources */, + 4691707C264D6D28000C7B53 /* QueueAgent.cpp in Sources */, + 4691707D264D6D28000C7B53 /* RenderPassAgent.cpp in Sources */, + 4691707E264D6D28000C7B53 /* SamplerAgent.cpp in Sources */, + 4691707F264D6D28000C7B53 /* ShaderAgent.cpp in Sources */, + 46917080264D6D28000C7B53 /* TextureAgent.cpp in Sources */, + 46917081264D6D28000C7B53 /* GFXBuffer.cpp in Sources */, + 46917082264D6D28000C7B53 /* GFXCommandBuffer.cpp in Sources */, + 46917083264D6D28000C7B53 /* GFXContext.cpp in Sources */, + 46917084264D6D28000C7B53 /* GFXDef.cpp in Sources */, + 46917085264D6D28000C7B53 /* GFXDescriptorSet.cpp in Sources */, + 46917086264D6D28000C7B53 /* GFXDescriptorSetLayout.cpp in Sources */, + 46917087264D6D28000C7B53 /* GFXDevice.cpp in Sources */, + 46917088264D6D28000C7B53 /* GFXFramebuffer.cpp in Sources */, + 46917089264D6D28000C7B53 /* GFXGlobalBarrier.cpp in Sources */, + 4691708A264D6D28000C7B53 /* GFXInputAssembler.cpp in Sources */, + 4691708B264D6D28000C7B53 /* GFXObject.cpp in Sources */, + 4691708C264D6D28000C7B53 /* GFXPipelineLayout.cpp in Sources */, + 4691708D264D6D28000C7B53 /* GFXPipelineState.cpp in Sources */, + 4691708E264D6D28000C7B53 /* GFXQueue.cpp in Sources */, + 4691708F264D6D28000C7B53 /* GFXRenderPass.cpp in Sources */, + 46917090264D6D28000C7B53 /* GFXSampler.cpp in Sources */, + 46917091264D6D28000C7B53 /* GFXShader.cpp in Sources */, + 46917092264D6D28000C7B53 /* GFXTexture.cpp in Sources */, + 46917093264D6D28000C7B53 /* GFXTextureBarrier.cpp in Sources */, + 46917094264D6D28000C7B53 /* EmptyBuffer.cpp in Sources */, + 46917095264D6D28000C7B53 /* EmptyCommandBuffer.cpp in Sources */, + 46917096264D6D28000C7B53 /* EmptyContext.cpp in Sources */, + 46917097264D6D28000C7B53 /* EmptyDescriptorSet.cpp in Sources */, + 46917098264D6D28000C7B53 /* EmptyDescriptorSetLayout.cpp in Sources */, + 46917099264D6D28000C7B53 /* EmptyDevice.cpp in Sources */, + 4691709A264D6D28000C7B53 /* EmptyFramebuffer.cpp in Sources */, + 4691709B264D6D28000C7B53 /* EmptyInputAssembler.cpp in Sources */, + 4691709C264D6D28000C7B53 /* EmptyPipelineLayout.cpp in Sources */, + 4691709D264D6D28000C7B53 /* EmptyPipelineState.cpp in Sources */, + 4691709E264D6D28000C7B53 /* EmptyQueue.cpp in Sources */, + 4691709F264D6D28000C7B53 /* EmptyRenderPass.cpp in Sources */, + 469170A0264D6D28000C7B53 /* EmptySampler.cpp in Sources */, + 469170A1264D6D28000C7B53 /* EmptyShader.cpp in Sources */, + 469170A2264D6D28000C7B53 /* EmptyTexture.cpp in Sources */, + 469170A3264D6D28000C7B53 /* MTLBuffer.mm in Sources */, + 469170A4264D6D28000C7B53 /* MTLCommandBuffer.mm in Sources */, + 469170A5264D6D28000C7B53 /* MTLContext.mm in Sources */, + 469170A6264D6D28000C7B53 /* MTLDescriptorSet.mm in Sources */, + 469170A7264D6D28000C7B53 /* MTLDescriptorSetLayout.mm in Sources */, + 469170A8264D6D28000C7B53 /* MTLDevice.mm in Sources */, + 469170A9264D6D28000C7B53 /* MTLFramebuffer.mm in Sources */, + 469170AA264D6D28000C7B53 /* MTLInputAssembler.mm in Sources */, + 469170AB264D6D28000C7B53 /* MTLPipelineLayout.mm in Sources */, + 469170AC264D6D28000C7B53 /* MTLPipelineState.mm in Sources */, + 469170AD264D6D28000C7B53 /* MTLQueue.mm in Sources */, + 469170AE264D6D28000C7B53 /* MTLRenderPass.mm in Sources */, + 469170AF264D6D28000C7B53 /* MTLSampler.mm in Sources */, + 469170B0264D6D28000C7B53 /* MTLShader.mm in Sources */, + 469170B1264D6D28000C7B53 /* MTLStd.cpp in Sources */, + 469170B2264D6D28000C7B53 /* MTLTexture.mm in Sources */, + 469170B3264D6D28000C7B53 /* MTLUtils.mm in Sources */, + 469170B4264D6D28000C7B53 /* BufferValidator.cpp in Sources */, + 469170B5264D6D28000C7B53 /* CommandBufferValidator.cpp in Sources */, + 469170B6264D6D28000C7B53 /* DescriptorSetLayoutValidator.cpp in Sources */, + 469170B7264D6D28000C7B53 /* DescriptorSetValidator.cpp in Sources */, + 469170B8264D6D28000C7B53 /* DeviceValidator.cpp in Sources */, + 469170B9264D6D28000C7B53 /* FramebufferValidator.cpp in Sources */, + 469170BA264D6D28000C7B53 /* InputAssemblerValidator.cpp in Sources */, + 469170BB264D6D28000C7B53 /* PipelineLayoutValidator.cpp in Sources */, + 469170BC264D6D28000C7B53 /* PipelineStateValidator.cpp in Sources */, + 469170BD264D6D28000C7B53 /* QueueValidator.cpp in Sources */, + 469170BE264D6D28000C7B53 /* RenderPassValidator.cpp in Sources */, + 469170BF264D6D28000C7B53 /* SamplerValidator.cpp in Sources */, + 469170C0264D6D28000C7B53 /* ShaderValidator.cpp in Sources */, + 469170C1264D6D28000C7B53 /* TextureValidator.cpp in Sources */, + 469170C2264D6D28000C7B53 /* ValidationUtils.cpp in Sources */, + 469170C3264D6D28000C7B53 /* BatchedBuffer.cpp in Sources */, + 469170C4264D6D28000C7B53 /* Define.cpp in Sources */, + 469170C5264D6D28000C7B53 /* InstancedBuffer.cpp in Sources */, + 469170C6264D6D28000C7B53 /* PipelineSceneData.cpp in Sources */, + 469170C7264D6D28000C7B53 /* PipelineStateManager.cpp in Sources */, + 469170C8264D6D28000C7B53 /* PipelineUBO.cpp in Sources */, + 469170C9264D6D28000C7B53 /* PlanarShadowQueue.cpp in Sources */, + 469170CA264D6D28000C7B53 /* RenderAdditiveLightQueue.cpp in Sources */, + 469170CB264D6D28000C7B53 /* RenderBatchedQueue.cpp in Sources */, + 469170CC264D6D28000C7B53 /* RenderFlow.cpp in Sources */, + 469170CD264D6D28000C7B53 /* RenderInstancedQueue.cpp in Sources */, + 469170CE264D6D28000C7B53 /* RenderPipeline.cpp in Sources */, + 469170CF264D6D28000C7B53 /* RenderQueue.cpp in Sources */, + 469170D0264D6D28000C7B53 /* RenderStage.cpp in Sources */, + 469170D1264D6D28000C7B53 /* SceneCulling.cpp in Sources */, + 469170D2264D6D28000C7B53 /* ShadowMapBatchedQueue.cpp in Sources */, + 469170D3264D6D28000C7B53 /* DeferredPipeline.cpp in Sources */, + 469170D4264D6D28000C7B53 /* GbufferFlow.cpp in Sources */, + 469170D5264D6D28000C7B53 /* GbufferStage.cpp in Sources */, + 469170D6264D6D28000C7B53 /* LightingFlow.cpp in Sources */, + 469170D7264D6D28000C7B53 /* LightingStage.cpp in Sources */, + 469170D8264D6D28000C7B53 /* PostprocessStage.cpp in Sources */, + 469170D9264D6D28000C7B53 /* ForwardFlow.cpp in Sources */, + 469170DA264D6D28000C7B53 /* ForwardPipeline.cpp in Sources */, + 469170DB264D6D28000C7B53 /* ForwardStage.cpp in Sources */, + 469170DC264D6D28000C7B53 /* UIPhase.cpp in Sources */, + 469170DD264D6D28000C7B53 /* DefineMap.cpp in Sources */, + 469170DE264D6D28000C7B53 /* SharedMemory.cpp in Sources */, + 469170DF264D6D28000C7B53 /* ShadowFlow.cpp in Sources */, + 469170E0264D6D28000C7B53 /* ShadowStage.cpp in Sources */, + 469170E1264D6D28000C7B53 /* LocalStorage.cpp in Sources */, + 469170E2264D6D28000C7B53 /* EditBox-mac.mm in Sources */, + 469170E3264D6D28000C7B53 /* AssetsManagerEx.cpp in Sources */, + 469170E4264D6D28000C7B53 /* AsyncTaskPool.cpp in Sources */, + 469170E5264D6D28000C7B53 /* EventAssetsManagerEx.cpp in Sources */, + 469170E6264D6D28000C7B53 /* Manifest.cpp in Sources */, + 469170E7264D6D28000C7B53 /* ConvertUTF.c in Sources */, + 469170E8264D6D28000C7B53 /* ConvertUTFWrapper.cpp in Sources */, + 469170E9264D6D28000C7B53 /* SRDelegateController.m in Sources */, + 469170EA264D6D28000C7B53 /* SRIOConsumer.m in Sources */, + 469170EB264D6D28000C7B53 /* SRIOConsumerPool.m in Sources */, + 469170EC264D6D28000C7B53 /* SRProxyConnect.m in Sources */, + 469170ED264D6D28000C7B53 /* SRRunLoopThread.m in Sources */, + 469170EE264D6D28000C7B53 /* SRConstants.m in Sources */, + 469170EF264D6D28000C7B53 /* SRPinningSecurityPolicy.m in Sources */, + 469170F0264D6D28000C7B53 /* SRError.m in Sources */, + 469170F1264D6D28000C7B53 /* SRHTTPConnectMessage.m in Sources */, + 469170F2264D6D28000C7B53 /* SRHash.m in Sources */, + 469170F3264D6D28000C7B53 /* SRLog.m in Sources */, + 469170F4264D6D28000C7B53 /* SRMutex.m in Sources */, + 469170F5264D6D28000C7B53 /* SRRandom.m in Sources */, + 469170F6264D6D28000C7B53 /* SRSIMDHelpers.m in Sources */, + 469170F7264D6D28000C7B53 /* SRURLUtilities.m in Sources */, + 469170F8264D6D28000C7B53 /* NSRunLoop+SRWebSocket.m in Sources */, + 469170F9264D6D28000C7B53 /* NSURLRequest+SRWebSocket.m in Sources */, + 469170FA264D6D28000C7B53 /* SRSecurityPolicy.m in Sources */, + 469170FB264D6D28000C7B53 /* SRWebSocket.m in Sources */, + 469170FC264D6D28000C7B53 /* tinyxml2.cpp in Sources */, + 469170FD264D6D28000C7B53 /* tommy.c in Sources */, + 469170FE264D6D28000C7B53 /* ioapi.cpp in Sources */, + 469170FF264D6D28000C7B53 /* ioapi_mem.cpp in Sources */, + 46917100264D6D28000C7B53 /* unzip.cpp in Sources */, + 46917101264D6D28000C7B53 /* xxtea.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 23335545BE824A108520C3C0 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + ONLY_ACTIVE_ARCH = YES; + }; + name = Release; + }; + 46917103264D6D28000C7B53 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + "'CC_DEBUG=1'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + CC_KEYBOARD_SUPPORT, + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Debug; + }; + 46917104264D6D28000C7B53 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + CC_KEYBOARD_SUPPORT, + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Release; + }; + 46917105264D6D28000C7B53 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + CC_KEYBOARD_SUPPORT, + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = MinSizeRel; + }; + 46917106264D6D28000C7B53 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + CLANG_ENABLE_OBJC_WEAK = YES; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = ""; + EXECUTABLE_PREFIX = lib; + EXECUTABLE_SUFFIX = .a; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 2; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + "'TBB_USE_EXCEPTIONS=0'", + CC_KEYBOARD_SUPPORT, + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INSTALL_PATH = ""; + LIBRARY_STYLE = STATIC; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "-Wno-objc-method-access", + "'-std=c++17'", + ); + OTHER_LIBTOOLFLAGS = " "; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = RelWithDebInfo; + }; + 48BBE98C757446ACAFF741EC /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + ONLY_ACTIVE_ARCH = YES; + }; + name = Debug; + }; + BBFA255B5D224C75A1E4D428 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + ONLY_ACTIVE_ARCH = YES; + }; + name = RelWithDebInfo; + }; + DC0C55933D654EAA9C1343D1 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + ONLY_ACTIVE_ARCH = YES; + }; + name = MinSizeRel; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 46917102264D6D28000C7B53 /* Build configuration list for PBXNativeTarget "cocos3 Mac" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 46917103264D6D28000C7B53 /* Debug */, + 46917104264D6D28000C7B53 /* Release */, + 46917105264D6D28000C7B53 /* MinSizeRel */, + 46917106264D6D28000C7B53 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + CAD8A57125E841A2A3DBE942 /* Build configuration list for PBXProject "cocos3-mac" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 48BBE98C757446ACAFF741EC /* Debug */, + 23335545BE824A108520C3C0 /* Release */, + DC0C55933D654EAA9C1343D1 /* MinSizeRel */, + BBFA255B5D224C75A1E4D428 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; +/* End XCConfigurationList section */ + }; + rootObject = 082F81A280B44457972AB161 /* Project object */; +} diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..6ae3852 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..307a9da --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,12 @@ + + + + + BuildSystemType + Latest + DisableBuildSystemDeprecationWarning + + PreviewsEnabled + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..1b9bf3a Binary files /dev/null and b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..c1f08c6 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,22 @@ + + + + + BuildLocationStyle + UseAppPreferences + CustomBuildIntermediatesPath + Build/Intermediates.noindex + CustomBuildLocationType + RelativeToDerivedData + CustomBuildProductsPath + Build/Products + DerivedDataLocationStyle + Default + IssueFilterStyle + ShowActiveSchemeOnly + LiveSourceIssuesEnabled + + ShowSharedSchemesAutomaticallyEnabled + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcshareddata/xcschemes/cocos3 Mac.xcscheme b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcshareddata/xcschemes/cocos3 Mac.xcscheme new file mode 100644 index 0000000..313bbe0 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcshareddata/xcschemes/cocos3 Mac.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist new file mode 100644 index 0000000..9560ff7 --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -0,0 +1,6 @@ + + + diff --git a/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..f3916fa --- /dev/null +++ b/cx-framework3.1/cocos3-libs/cocos3-mac.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,42 @@ + + + + + SchemeUserState + + ALL_BUILD.xcscheme_^#shared#^_ + + orderHint + 1 + + ZERO_CHECK.xcscheme_^#shared#^_ + + orderHint + 2 + + cocos3 Mac.xcscheme_^#shared#^_ + + orderHint + 1 + + cx3-demo-desktop.xcscheme_^#shared#^_ + + orderHint + 0 + + + SuppressBuildableAutocreation + + 46916FCB264D6D28000C7B53 + + primary + + + E77C5DADC6FB43A28EC868C1 + + primary + + + + + diff --git a/cx-framework3.1/cocos3-libs/libcocos3 Mac.a b/cx-framework3.1/cocos3-libs/libcocos3 Mac.a new file mode 100644 index 0000000..bcc87bb Binary files /dev/null and b/cx-framework3.1/cocos3-libs/libcocos3 Mac.a differ diff --git a/cx-framework3.1/cocos3-libs/libcocos3 iOS.a b/cx-framework3.1/cocos3-libs/libcocos3 iOS.a new file mode 100644 index 0000000..1606b83 Binary files /dev/null and b/cx-framework3.1/cocos3-libs/libcocos3 iOS.a differ diff --git a/cx-framework3.1/cx-native/Game.cpp b/cx-framework3.1/cx-native/Game.cpp new file mode 100644 index 0000000..fbb2f32 --- /dev/null +++ b/cx-framework3.1/cx-native/Game.cpp @@ -0,0 +1,101 @@ +/**************************************************************************** + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#include "Game.h" +#include "cocos/bindings/event/CustomEventTypes.h" +#include "cocos/bindings/event/EventDispatcher.h" +#include "cocos/bindings/jswrapper/SeApi.h" +#include "cocos/bindings/manual/jsb_classtype.h" +#include "cocos/bindings/manual/jsb_global.h" +#include "cocos/bindings/manual/jsb_module_register.h" + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS) + #include "platform/Device.h" +#endif + +////blank +#include "cxJsb.hpp" + +Game::Game(int width, int height) : cc::Application(width, height) {} + +bool Game::init() +{ + cc::Application::init(); + + se::ScriptEngine *se = se::ScriptEngine::getInstance(); + + jsb_set_xxtea_key(""); + jsb_init_file_operation_delegate(); + +#if defined(CC_DEBUG) && (CC_DEBUG > 0) + // Enable debugger here + jsb_enable_debugger("0.0.0.0", 6086, false); +#endif + + se->setExceptionCallback([](const char *location, const char *message, const char *stack) { + // Send exception information to server like Tencent Bugly. + CC_LOG_ERROR("\nUncaught Exception:\n - location : %s\n - msg : %s\n - detail : \n %s\n", location, message, stack); + }); + + se->addRegisterCallback(register_all_cx); + + jsb_register_all_modules(); + + se->start(); + + se::AutoHandleScope hs; + jsb_run_script("jsb-adapter/jsb-builtin.js"); + jsb_run_script("boot.js"); + + se->addAfterCleanupHook([]() { + JSBClassType::destroy(); + }); + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS) + cc::Vec2 logicSize = getViewLogicalSize(); + float pixelRatio = cc::Device::getDevicePixelRatio(); + cc::EventDispatcher::dispatchResizeEvent(logicSize.x * pixelRatio, logicSize.y * pixelRatio); +#endif + return true; +} + +void Game::onPause() +{ + cc::Application::onPause(); + + cc::CustomEvent event; + event.name = EVENT_COME_TO_BACKGROUND; + cc::EventDispatcher::dispatchCustomEvent(event); + cc::EventDispatcher::dispatchEnterBackgroundEvent(); +} + +void Game::onResume() +{ + cc::Application::onResume(); + + cc::CustomEvent event; + event.name = EVENT_COME_TO_FOREGROUND; + cc::EventDispatcher::dispatchCustomEvent(event); + cc::EventDispatcher::dispatchEnterForegroundEvent(); +} diff --git a/cx-framework3.1/cx-native/Game.h b/cx-framework3.1/cx-native/Game.h new file mode 100644 index 0000000..1caa08b --- /dev/null +++ b/cx-framework3.1/cx-native/Game.h @@ -0,0 +1,43 @@ +/**************************************************************************** + Copyright (c) 2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#pragma once + +#include "platform/Application.h" +/** + @brief The cocos2d Application. + + The reason for implement as private inheritance is to hide some interface call by Director. + */ +class Game : public cc::Application +{ +public: + /** + * width and height in logical pixel unit + */ + Game(int width, int height); + virtual bool init() override; + virtual void onPause() override; + virtual void onResume() override; +}; diff --git a/cx-framework3.1/cx-native/cxCreator.cpp b/cx-framework3.1/cx-native/cxCreator.cpp new file mode 100644 index 0000000..7c5f7f4 --- /dev/null +++ b/cx-framework3.1/cx-native/cxCreator.cpp @@ -0,0 +1,36 @@ +#include "cxCreator.h" +#include "cxIntf.h" + +#if CC_PLATFORM == CC_PLATFORM_MAC_IOS +#include "cxMask/cxMaskIntf.h" +#endif + +#if CC_PLATFORM != CC_PLATFORM_ANDROID +#include "cxSys/cxSysIntf.h" +#endif + +NativeIntfClass* NativeCreator::createNativeClass(std::string classname) +{ + if (classname == "cx") + return CxIntf::ins(); + +#if CC_PLATFORM == CC_PLATFORM_MAC_IOS + + if (classname == "cx.mask") + return CxMaskIntf::ins(); + +#endif + + +#if CC_PLATFORM != CC_PLATFORM_ANDROID + + if (classname == "cx.sys") + return CxSysIntf::ins(); + + return createAppNativeClass(classname); + +#endif + + return nullptr; +} + diff --git a/cx-framework3.1/cx-native/cxCreator.h b/cx-framework3.1/cx-native/cxCreator.h new file mode 100644 index 0000000..720df42 --- /dev/null +++ b/cx-framework3.1/cx-native/cxCreator.h @@ -0,0 +1,15 @@ + +#pragma once + +#include "cxDefine.h" + +#if CC_PLATFORM != CC_PLATFORM_ANDROID +extern NativeIntfClass* createAppNativeClass(std::string classname); +#endif + +class NativeCreator +{ +public: + static NativeIntfClass* createNativeClass(std::string classname); +}; + diff --git a/cx-framework3.1/cx-native/cxDefine.h b/cx-framework3.1/cx-native/cxDefine.h new file mode 100644 index 0000000..ea3d1bc --- /dev/null +++ b/cx-framework3.1/cx-native/cxDefine.h @@ -0,0 +1,13 @@ + +#pragma once + +#include "cocos/base/Value.h" + +typedef std::function DataCallback; + +class NativeIntfClass +{ +public: + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback){ return nullptr; }; +}; + diff --git a/cx-framework3.1/cx-native/cxIntf.cpp b/cx-framework3.1/cx-native/cxIntf.cpp new file mode 100644 index 0000000..0482062 --- /dev/null +++ b/cx-framework3.1/cx-native/cxIntf.cpp @@ -0,0 +1,23 @@ + +#include "cxIntf.h" + +DataCallback CxIntf::m_cxCallback = NULL; + +static CxIntf* s_sharedCxIntf = nullptr; +CxIntf* CxIntf::ins() +{ + if (!s_sharedCxIntf) + s_sharedCxIntf = new CxIntf(); + return s_sharedCxIntf; +} + +std::string CxIntf::call(std::string fname, cc::ValueVector params, const DataCallback& callback) +{ + if (fname == "encode" || fname == "decode" || fname == "md5") + return params.at(0).asString(); + return ""; +} + + + + diff --git a/cx-framework3.1/cx-native/cxIntf.h b/cx-framework3.1/cx-native/cxIntf.h new file mode 100644 index 0000000..104b9a1 --- /dev/null +++ b/cx-framework3.1/cx-native/cxIntf.h @@ -0,0 +1,20 @@ + +#pragma once + +#include "cocos/base/Value.h" +#include "cxDefine.h" + +class CxIntf : public NativeIntfClass +{ +public: + static CxIntf* ins(); + + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback) override; + + static DataCallback m_cxCallback; + +private: + + +}; + diff --git a/cx-framework3.1/cx-native/cxJsb.cpp b/cx-framework3.1/cx-native/cxJsb.cpp new file mode 100644 index 0000000..fb03f61 --- /dev/null +++ b/cx-framework3.1/cx-native/cxJsb.cpp @@ -0,0 +1,228 @@ +#include "cxJsb.hpp" +#include "cocos/bindings/manual/jsb_conversions.h" +#include "cocos/bindings/manual/jsb_global.h" +#include "platform/FileUtils.h" +#include "cxCreator.h" + +se::Object* __jsb_NativeCreator_proto = nullptr; +se::Class* __jsb_NativeCreator_class = nullptr; + +//*********************************** +//NativeCreator +//*********************************** +static bool js_cx_NativeCreator_createNativeClass(se::State& s) +{ + const auto& args = s.args(); + size_t argc = args.size(); + CC_UNUSED bool ok = true; + if (argc == 1) { + std::string arg0; + ok &= seval_to_std_string(args[0], &arg0); + SE_PRECONDITION2(ok, false, "js_cx_NativeCreator_createNativeClass : Error processing arguments"); + NativeIntfClass* result = NativeCreator::createNativeClass(arg0); + ok &= native_ptr_to_seval((NativeIntfClass*)result, &s.rval()); + SE_PRECONDITION2(ok, false, "js_cx_NativeCreator_createNativeClass : Error processing arguments"); + return true; + } + SE_REPORT_ERROR("wrong number of arguments: %d, was expecting %d", (int)argc, 1); + return false; +} +SE_BIND_FUNC(js_cx_NativeCreator_createNativeClass) + +static bool js_NativeCreator_finalize(se::State& s) +{ + // SE_LOGD("jsbindings: finalizing JS object %p (NativeCreator)", s.nativeThisObject()); + auto iter = se::NonRefNativePtrCreatedByCtorMap::find(s.nativeThisObject()); + if (iter != se::NonRefNativePtrCreatedByCtorMap::end()) + { + se::NonRefNativePtrCreatedByCtorMap::erase(iter); + NativeCreator* cobj = (NativeCreator*)s.nativeThisObject(); + delete cobj; + } + return true; +} +SE_BIND_FINALIZE_FUNC(js_NativeCreator_finalize) + +bool js_register_cx_NativeCreator(se::Object* obj) +{ + auto cls = se::Class::create("NativeCreator", obj, nullptr, nullptr); + + cls->defineStaticFunction("createNativeClass", _SE(js_cx_NativeCreator_createNativeClass)); + cls->defineFinalizeFunction(_SE(js_NativeCreator_finalize)); + cls->install(); + JSBClassType::registerClass(cls); + + __jsb_NativeCreator_proto = cls->getProto(); + __jsb_NativeCreator_class = cls; + + se::ScriptEngine::getInstance()->clearException(); + return true; +} + +//*********************************** +//NativeIntfClass +//*********************************** + +se::Object* __jsb_NativeIntfClass_proto = nullptr; +se::Class* __jsb_NativeIntfClass_class = nullptr; + +static bool js_cx_NativeIntfClass_call(se::State& s) +{ + const auto& args = s.args(); + size_t argc = args.size(); + CC_UNUSED bool ok = true; + std::string arg0; + cc::ValueVector arg1; + std::function arg2 = nullptr; + + if (argc >= 1) + { + ok &= seval_to_std_string(args[0], &arg0); + } + + if (argc >= 2) + { + ok &= seval_to_std_string(args[0], &arg0); + ok &= seval_to_ccvaluevector(args[1], &arg1); + } + + if (ok && argc == 3) + { + if (args[2].isObject() && args[2].toObject()->isFunction()) + { + se::Value jsThis(s.thisObject()); + se::Value jsFunc(args[2]); + //https://docs.cocos.com/creator/manual/zh/advanced-topics/JSB2.0-learning.html + //如果当前类是一个单例类,或者永远只有一个实例的类,我们不能用 se::Object::attachObject 去关联, 必须使用 se::Object::root + //jsThis.toObject()->attachObject(jsFunc.toObject()); + jsFunc.toObject()->root(); + jsThis.toObject()->root(); + + auto lambda = [=](int larg0, std::string larg1) -> void + { + se::ScriptEngine::getInstance()->clearException(); + se::AutoHandleScope hs; + CC_UNUSED bool ok = true; + se::ValueArray args; + args.resize(2); + ok &= int32_to_seval(larg0, &args[0]); + ok &= std_string_to_seval(larg1, &args[1]); + se::Value rval; + se::Object* thisObj = jsThis.isObject() ? jsThis.toObject() : nullptr; + se::Object* funcObj = jsFunc.toObject(); + bool succeed = funcObj->call(args, thisObj, &rval); + if (!succeed) + { + se::ScriptEngine::getInstance()->clearException(); + } + }; + arg2 = lambda; + } + } + + SE_PRECONDITION2(ok, false, "js_cx_NativeIntfClass_func : Error processing arguments"); + + if (ok) + { + NativeIntfClass* cobj = (NativeIntfClass*)s.nativeThisObject(); + std::string result = cobj->call(arg0, arg1, arg2); + std_string_to_seval(result, &s.rval()); + return true; + } + return false; +} +SE_BIND_FUNC(js_cx_NativeIntfClass_call) + +static bool js_NativeIntfClass_finalize(se::State& s) +{ + // SE_LOGD("jsbindings: finalizing JS object %p (NativeCreator)", s.nativeThisObject()); + auto iter = se::NonRefNativePtrCreatedByCtorMap::find(s.nativeThisObject()); + if (iter != se::NonRefNativePtrCreatedByCtorMap::end()) + { + se::NonRefNativePtrCreatedByCtorMap::erase(iter); + NativeIntfClass* cobj = (NativeIntfClass*)s.nativeThisObject(); + delete cobj; + } + return true; +} +SE_BIND_FINALIZE_FUNC(js_NativeIntfClass_finalize) + +bool js_register_cx_NativeIntfClass(se::Object* obj) +{ + auto cls = se::Class::create("NativeIntfClass", obj, nullptr, nullptr); + + cls->defineFunction("call", _SE(js_cx_NativeIntfClass_call)); + cls->defineFinalizeFunction(_SE(js_NativeIntfClass_finalize)); + cls->install(); + JSBClassType::registerClass(cls); + + __jsb_NativeIntfClass_proto = cls->getProto(); + __jsb_NativeIntfClass_class = cls; + + se::ScriptEngine::getInstance()->clearException(); + return true; +} + +//*********************************** +//NativeUtils +//*********************************** + +se::Object* __jsb_NativeUtils_proto = nullptr; +se::Class* __jsb_NativeUtils_class = nullptr; + +static bool js_cx_NativeUtils_writeDataToFile(se::State& s) +{ + const auto& args = s.args(); + size_t argc = args.size(); + CC_UNUSED bool ok = true; + if (argc == 2) { + cc::Data arg0; + std::string arg1; + ok &= seval_to_Data(args[0], &arg0); + ok &= seval_to_std_string(args[1], &arg1); + SE_PRECONDITION2(ok, false, "js_engine_FileUtils_writeDataToFile : Error processing arguments"); + bool result = cc::FileUtils::getInstance()->writeDataToFile(arg0, arg1); + ok &= boolean_to_seval(result, &s.rval()); + SE_PRECONDITION2(ok, false, "js_engine_FileUtils_writeDataToFile : Error processing result"); + return true; + } + SE_REPORT_ERROR("wrong number of arguments: %d, was expecting %d", (int)argc, 2); + return false; +} +SE_BIND_FUNC(js_cx_NativeUtils_writeDataToFile) + +bool js_register_cx_NativeUtils(se::Object* obj) +{ + auto cls = se::Class::create("NativeUtils", obj, nullptr, nullptr); + + cls->defineStaticFunction("writeDataToFile", _SE(js_cx_NativeUtils_writeDataToFile)); + cls->install(); + + __jsb_NativeUtils_proto = cls->getProto(); + __jsb_NativeUtils_class = cls; + + se::ScriptEngine::getInstance()->clearException(); + return true; +} + +//*********************************** +//register +//*********************************** + +bool register_all_cx(se::Object* obj) +{ + // Get the ns + se::Value nsVal; + if (!obj->getProperty("cxnative", &nsVal)) + { + se::HandleObject jsobj(se::Object::createPlainObject()); + nsVal.setObject(jsobj); + obj->setProperty("cxnative", nsVal); + } + se::Object* ns = nsVal.toObject(); + + js_register_cx_NativeCreator(ns); + js_register_cx_NativeIntfClass(ns); + js_register_cx_NativeUtils(ns); + return true; +} diff --git a/cx-framework3.1/cx-native/cxJsb.hpp b/cx-framework3.1/cx-native/cxJsb.hpp new file mode 100644 index 0000000..bbe2a98 --- /dev/null +++ b/cx-framework3.1/cx-native/cxJsb.hpp @@ -0,0 +1,11 @@ +#pragma once + +#include "cocos/bindings/jswrapper/SeApi.h" + +extern se::Object* __jsb_NativeCreator_proto; +extern se::Class* __jsb_NativeCreator_class; + +bool js_register_NativeCreator(se::Object* obj); +bool register_all_cx(se::Object* obj); +SE_DECLARE_FUNC(js_cx_NativeCreator_createNativeClass); + diff --git a/cx-framework3.1/cx-native/cxMask/cxMaskIntf.h b/cx-framework3.1/cx-native/cxMask/cxMaskIntf.h new file mode 100644 index 0000000..31902ca --- /dev/null +++ b/cx-framework3.1/cx-native/cxMask/cxMaskIntf.h @@ -0,0 +1,20 @@ + +#pragma once + +#include "cxDefine.h" + +class CxMaskIntf : public NativeIntfClass +{ +public: + static CxMaskIntf* ins(); + + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback) override; + + void addNativeView(std::string maskName, void* view); + bool hasNativeView(std::string maskName, void* view); + +private: + + +}; + diff --git a/cx-framework3.1/cx-native/cxMask/cxMaskIntf.mm b/cx-framework3.1/cx-native/cxMask/cxMaskIntf.mm new file mode 100644 index 0000000..6a4feb1 --- /dev/null +++ b/cx-framework3.1/cx-native/cxMask/cxMaskIntf.mm @@ -0,0 +1,127 @@ + +#include "cxMaskIntf.h" + +#include "AppController.h" +#include "cxMaskView.h" + +std::unordered_map m_maskViewList; +CxMaskView* getMaskView(std::string name) +{ + auto itr = m_maskViewList.find(name); + if (itr != m_maskViewList.end()) + return itr->second; + return nullptr; +} + +static CxMaskIntf* s_sharedCxMaskIntf = nullptr; +CxMaskIntf* CxMaskIntf::ins() +{ + if (!s_sharedCxMaskIntf) + s_sharedCxMaskIntf = new CxMaskIntf(); + return s_sharedCxMaskIntf; +} + +std::string CxMaskIntf::call(std::string fname, cc::ValueVector params, const DataCallback& callback) +{ + if (fname == "createMask") + { + std::string name = params.at(0).asString(); + float rectX = params.at(1).asFloat(); + float rectY = params.at(2).asFloat(); + float rectW = params.at(3).asFloat(); + float rectH = params.at(4).asFloat(); + + if (getMaskView(name)) + return ""; + + CxMaskView* maskView = [[CxMaskView alloc] initWithFrame:CGRectMake(rectX, rectY, rectW, rectH)]; + //maskView.contentView.backgroundColor = [UIColor colorWithRed:100 green:0 blue:0 alpha:0.4]; + [[AppController ins] addView:maskView]; + + m_maskViewList.emplace(name, maskView); + } + + else if (fname == "setMaskVisible") + { + std::string name = params.at(0).asString(); + bool visible = params.at(1).asBool(); + + auto maskView = getMaskView(name); + if (maskView) + [maskView setHidden:!visible]; + } + + else if (fname == "setMaskSize") + { + std::string name = params.at(0).asString(); + float rectW = params.at(1).asFloat(); + float rectH = params.at(2).asFloat(); + + auto maskView = getMaskView(name); + if (maskView) + maskView.frame = CGRectMake(maskView.frame.origin.x, maskView.frame.origin.y, rectW, rectH); + } + + else if (fname == "setMaskMask") + { + std::string name = params.at(0).asString(); + auto maskView = getMaskView(name); + if (maskView) + { + float maskX = params.at(1).asFloat(); + float maskY = params.at(2).asFloat(); + float maskW = params.at(3).asFloat(); + float maskH = params.at(4).asFloat(); + float radius = params.at(5).asFloat(); + UIBezierPath* path = [UIBezierPath bezierPathWithRect:maskView.contentView.bounds]; + UIBezierPath* round = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(maskX, maskY, maskW, maskH) cornerRadius:radius]; + CAShapeLayer* maskLayer = [CAShapeLayer layer]; + [path appendPath:round]; + maskLayer.path = [path CGPath]; + maskLayer.fillRule = kCAFillRuleEvenOdd; + maskView.contentView.layer.mask = maskLayer; + } + } + + else if (fname == "clearMaskMask") + { + std::string name = params.at(0).asString(); + auto maskView = getMaskView(name); + if (maskView) + maskView.contentView.layer.mask = nil; + } + + else if (fname == "removeMask") + { + std::string name = params.at(0).asString(); + auto maskView = getMaskView(name); + if (maskView) + { + [maskView removeFromSuperview]; + m_maskViewList.erase(name); + } + } + + return ""; +} + +void CxMaskIntf::addNativeView(std::string maskName, void* view) +{ + auto maskView = getMaskView(maskName); + if (maskView) + [maskView.contentView addSubview:(UIView*)view]; +} + +bool CxMaskIntf::hasNativeView(std::string maskName, void* view) +{ + auto maskView = getMaskView(maskName); + if (maskView) + { + for (UIView* subview in maskView.contentView.subviews) + { + if (subview == view) + return true; + } + } + return false; +} diff --git a/cx-framework3.1/cx-native/cxMask/cxMaskView.h b/cx-framework3.1/cx-native/cxMask/cxMaskView.h new file mode 100644 index 0000000..3d164ae --- /dev/null +++ b/cx-framework3.1/cx-native/cxMask/cxMaskView.h @@ -0,0 +1,9 @@ +#import + +@interface CxMaskView : UIView + +@property (strong, nonatomic) UIView* contentView; + +@end + + diff --git a/cx-framework3.1/cx-native/cxMask/cxMaskView.mm b/cx-framework3.1/cx-native/cxMask/cxMaskView.mm new file mode 100644 index 0000000..82d2420 --- /dev/null +++ b/cx-framework3.1/cx-native/cxMask/cxMaskView.mm @@ -0,0 +1,25 @@ + +#import "cxMaskView.h" + +#define pop_height 200 +#define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:1] + +@implementation CxMaskView + + +- (id)initWithFrame:(CGRect)frame +{ + self = [super initWithFrame:frame]; + self.userInteractionEnabled = false; + self.clipsToBounds = true; + + CGSize screen = [[UIScreen mainScreen] bounds].size; + self.contentView = [[UIView alloc] initWithFrame:CGRectMake(-frame.origin.x, -frame.origin.y, screen.width, screen.height)]; + self.contentView.userInteractionEnabled = false; + [self addSubview:self.contentView]; + + return self; +} + + +@end diff --git a/cx-framework3.1/cx-native/cxSys/cxSysIntf.h b/cx-framework3.1/cx-native/cxSys/cxSysIntf.h new file mode 100644 index 0000000..e153ca0 --- /dev/null +++ b/cx-framework3.1/cx-native/cxSys/cxSysIntf.h @@ -0,0 +1,23 @@ + +#pragma once + +#include "cxDefine.h" +#include "cocos/bindings/event/EventDispatcher.h" + +class CxSysIntf : public NativeIntfClass +{ +public: + static CxSysIntf* ins(); + + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback) override; + + static DataCallback m_cxSysCallback; + +private: + + void restartForUpdate(cc::CustomEvent evt); + + + +}; + diff --git a/cx-framework3.1/cx-native/cxSys/cxSysIntf.mm b/cx-framework3.1/cx-native/cxSys/cxSysIntf.mm new file mode 100644 index 0000000..e3add94 --- /dev/null +++ b/cx-framework3.1/cx-native/cxSys/cxSysIntf.mm @@ -0,0 +1,70 @@ + +#include "cxSysIntf.h" + +#include "AppController.h" +#include "platform/Application.h" +#include "cocos/bindings/event/CustomEventTypes.h" + +DataCallback CxSysIntf::m_cxSysCallback = NULL; + +static CxSysIntf* s_sharedCxSysIntf = nullptr; +CxSysIntf* CxSysIntf::ins() +{ + if (!s_sharedCxSysIntf) + s_sharedCxSysIntf = new CxSysIntf(); + return s_sharedCxSysIntf; +} + +std::string CxSysIntf::call(std::string fname, cc::ValueVector params, const DataCallback& callback) +{ + if (fname == "getStoragePath") + { + #if (CC_PLATFORM == CC_PLATFORM_MAC_IOS) + return ""; + #endif + return call("getPackageName", params, callback); + } + + if (fname == "getPackageName") + { + NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; + NSString* packageName = [infoDictionary objectForKey:@"CFBundleIdentifier"]; + return [packageName UTF8String]; + } + + if (fname == "getVersionCode") + { + return [[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] UTF8String]; + } + + if (fname == "getVersionName") + { + return [[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"] UTF8String]; + } + + + if (fname == "removeLaunchImage") + { + [[AppController ins] removeLaunchImage]; + return ""; + } + + //只供在main.js中,且是ios时调用这个方法 + if (fname == "restartForUpdate") + { + //ios弹出网络授权时,应用会进入后台,点击后回到前台,侦听回到前台时重启 + cc::EventDispatcher::addCustomEventListener(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(CxSysIntf::restartForUpdate, this)); + return ""; + } + + return ""; +} + +void CxSysIntf::restartForUpdate(cc::CustomEvent evt) +{ + if (evt.name == EVENT_COME_TO_FOREGROUND) + { + cc::EventDispatcher::removeAllCustomEventListeners(EVENT_COME_TO_FOREGROUND); + cc::Application::getInstance()->restart(); + } +} diff --git a/cx-framework3.1/cx-native/jsb_module_register.cpp b/cx-framework3.1/cx-native/jsb_module_register.cpp new file mode 100644 index 0000000..ca5082d --- /dev/null +++ b/cx-framework3.1/cx-native/jsb_module_register.cpp @@ -0,0 +1,187 @@ +/**************************************************************************** + Copyright (c) 2017-2021 Xiamen Yaji Software Co., Ltd. + + http://www.cocos.com + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated engine source code (the "Software"), a limited, + worldwide, royalty-free, non-assignable, revocable and non-exclusive license + to use Cocos Creator solely to develop games on your target platforms. You shall + not use Cocos Creator software for developing other software or tools that's + used for developing games. You are not granted to publish, distribute, + sublicense, and/or sell copies of Cocos Creator. + + The software or tools in this License Agreement are licensed, not sold. + Xiamen Yaji Software Co., Ltd. reserves all rights not expressly granted to you. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. +****************************************************************************/ + +#include "cocos/bindings/jswrapper/SeApi.h" +#include "cocos/bindings/manual/jsb_module_register.h" +#include "cocos/bindings/auto/jsb_cocos_auto.h" +#include "cocos/base/AutoreleasePool.h" +#include "cocos/bindings/dop/jsb_dop.h" +#include "cocos/bindings/auto/jsb_extension_auto.h" +#include "cocos/bindings/auto/jsb_network_auto.h" +#include "cocos/bindings/auto/jsb_gfx_auto.h" +#include "cocos/bindings/auto/jsb_pipeline_auto.h" +#include "cocos/bindings/manual/jsb_pipeline_manual.h" +#include "cocos/bindings/manual/jsb_cocos_manual.h" +#include "cocos/bindings/manual/jsb_network_manual.h" +#include "cocos/bindings/manual/jsb_conversions.h" +#include "cocos/bindings/manual/jsb_gfx_manual.h" +#include "cocos/bindings/manual/jsb_global.h" +#include "cocos/bindings/manual/jsb_platform.h" +#include "cocos/bindings/manual/jsb_xmlhttprequest.h" + +#if USE_GFX_RENDERER +#endif + +#if USE_SOCKET + #include "cocos/bindings/manual/jsb_socketio.h" + #include "cocos/bindings/manual/jsb_websocket.h" +#endif // USE_SOCKET + +#if USE_AUDIO + #include "cocos/bindings/auto/jsb_audio_auto.h" +#endif + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_MAC_OSX) + #include "cocos/bindings/manual/JavaScriptObjCBridge.h" +#endif + +#if (CC_PLATFORM == CC_PLATFORM_ANDROID) + #include "cocos/bindings/manual/JavaScriptJavaBridge.h" +#endif + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_ANDROID) + + #if USE_VIDEO + #include "cocos/bindings/auto/jsb_video_auto.h" + #endif + + #if USE_WEBVIEW + #include "cocos/bindings/auto/jsb_webview_auto.h" + #endif + +#endif // (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_ANDROID) + +#if USE_SOCKET && USE_WEBSOCKET_SERVER + #include "cocos/bindings/manual/jsb_websocket_server.h" +#endif + +#if USE_MIDDLEWARE + #include "cocos/bindings/auto/jsb_editor_support_auto.h" + + #if USE_SPINE + #include "cocos/bindings/auto/jsb_spine_auto.h" + #include "cocos/bindings/manual/jsb_spine_manual.h" + #endif + + #if USE_DRAGONBONES + #include "cocos/bindings/auto/jsb_dragonbones_auto.h" + #include "cocos/bindings/manual/jsb_dragonbones_manual.h" + #endif + +#endif // USE_MIDDLEWARE + +#if USE_PHYSICS_PHYSX + #include "cocos/bindings/auto/jsb_physics_auto.h" +#endif + +using namespace cc; + +bool jsb_register_all_modules() { + se::ScriptEngine *se = se::ScriptEngine::getInstance(); + + se->addBeforeInitHook([]() { + JSBClassType::init(); + }); + + se->addBeforeCleanupHook([se]() { + se->garbageCollect(); + PoolManager::getInstance()->getCurrentPool()->clear(); + se->garbageCollect(); + PoolManager::getInstance()->getCurrentPool()->clear(); + }); + + se->addRegisterCallback(jsb_register_global_variables); + se->addRegisterCallback(register_all_engine); + se->addRegisterCallback(register_all_cocos_manual); + se->addRegisterCallback(register_platform_bindings); + se->addRegisterCallback(register_all_gfx); + se->addRegisterCallback(register_all_gfx_manual); + + se->addRegisterCallback(register_all_network); + se->addRegisterCallback(register_all_network_manual); + se->addRegisterCallback(register_all_xmlhttprequest); + // extension depend on network + se->addRegisterCallback(register_all_extension); + se->addRegisterCallback(register_all_dop_bindings); + se->addRegisterCallback(register_all_pipeline); + se->addRegisterCallback(register_all_pipeline_manual); + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_MAC_OSX) + se->addRegisterCallback(register_javascript_objc_bridge); +#endif + +#if (CC_PLATFORM == CC_PLATFORM_ANDROID) + se->addRegisterCallback(register_javascript_java_bridge); +#endif + +#if USE_AUDIO + se->addRegisterCallback(register_all_audio); +#endif + +#if USE_SOCKET + se->addRegisterCallback(register_all_websocket); + se->addRegisterCallback(register_all_socketio); +#endif + +#if USE_MIDDLEWARE + se->addRegisterCallback(register_all_editor_support); + + #if USE_SPINE + se->addRegisterCallback(register_all_spine); + se->addRegisterCallback(register_all_spine_manual); + #endif + + #if USE_DRAGONBONES + se->addRegisterCallback(register_all_dragonbones); + se->addRegisterCallback(register_all_dragonbones_manual); + #endif + +#endif // USE_MIDDLEWARE + +#if USE_PHYSICS_PHYSX + se->addRegisterCallback(register_all_physics); +#endif + +#if (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_ANDROID) + + #if USE_VIDEO + se->addRegisterCallback(register_all_video); + #endif + + #if USE_WEBVIEW + se->addRegisterCallback(register_all_webview); + #endif + +#endif // (CC_PLATFORM == CC_PLATFORM_MAC_IOS || CC_PLATFORM == CC_PLATFORM_ANDROID) + +#if USE_SOCKET && USE_WEBSOCKET_SERVER + se->addRegisterCallback(register_all_websocket_server); +#endif + se->addAfterCleanupHook([]() { + PoolManager::getInstance()->getCurrentPool()->clear(); + JSBClassType::destroy(); + }); + return true; +} diff --git a/cx-framework3.1/cx.d.ts b/cx-framework3.1/cx.d.ts new file mode 100644 index 0000000..fe357eb --- /dev/null +++ b/cx-framework3.1/cx.d.ts @@ -0,0 +1,231 @@ + +declare namespace cxnative +{ + namespace NativeCreator + { + //创建原生类 + function createNativeClass(name: string): any; + } + + namespace NativeUtils + { + //保存二进制文件 + function writeDataToFile(data: Uint8Array, fullpath: string): void; + } +} + +declare namespace cx +{ + type Component = import('cc').Component; + type Node = import('cc').Node; + type Tween = import('cc').Tween; + + const config: sys.config; + const os: typeof sys.os; + const log: typeof import('cc').log; + + const sw: number; + const sh: number; + const mainScene: Component; + const rootNode: Node; + let uid: number; + let defaultInitPx: number; + let defaultInitPy: number; + let defaultMoveInAction: cx.Tween; + let defaultMoveOutAction: cx.Tween; + let defaultNextInAction: cx.Tween; + let defaultNextOutAction: cx.Tween; + let touchLockTimelen: number; + let touchPriorSecond: number; + function removeLaunchImage(): void; + function makeNodeMap(node: any): void; + function gn(pageOrNode: any, name: string): Node; + function hint(content: string): void; + function alert(content: string, callback?: Function, labelOk?: string): void; + function confirm(content: string, callback?: Function, labelOk?: string, labelCancel?: string): void; + function showLoading(page: Component, parentNode: Node, delayShowSeconds?: number): void; + function removeLoading(parentNode: Node): void; + function addPage(parent:Node, prefab:string, scripts?:string[], callbackOrParams?:any, runAction?:boolean): void; + function showPage(prefab:string, scripts?:string[], callbackOrParams?:any): void; + function closePage(sender: any): void; + function getTopPage(fromLast?: number): Node | undefined; + function setAndroidBackHandler(handler?:any): void; + function setNativeMaskMask(x: number, y: number, width: number, height: number, radius: number): void; + function clearNativeMaskMask(): void; + function createPanel(color4: string, width: number, height: number): Node; + function createLabelNode(text: string, fontSize: number, fontColor: string): Node; + function convertToDeviceSize(node:Node | undefined, x:number, y:number, width?:number, height?:number): import('cc').Rect; + + function init(mainScene: Component): void; + + namespace native + { + function init(): void; + function ins(name: string): any; + function initAndroidIntf(): void; + function anroidCallback(name: string, v1: any, v2: any): void; + } + + namespace picker + { + function create(page: Component, callback: Function | undefined, dataList: any[]): void; + function createYearMonthDay(page: Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number, dayData?: any[], day?: number): void; + function createYearMonth(page: Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number): void; + function createMonthDay(page: Component, callback: Function | undefined, monthData?: any[], month?: number, dayData?: any[], day?: number): void; + function createHourMinute(page: Component, callback: Function | undefined, hourData?: any[], hour?: number, minuteData?: any[], minute?: number): void; + function number(from?: number, to?: number, label?: string): any; + function year(from?: number, to?: number): any; + function month(from?: number, to?: number): any; + function day(from?: number, to?: number): any; + } + + namespace res + { + function setImageFromRes(spriteOrNode: any, img: string, sizeMode?:number, callback?: Function): void; + function setImageFromBundle(spriteOrNode: any, path: string, sizeMode?: number, callback?:Function): void; + function setImageFromRemote(spriteOrNode: any, url: string, localPath?: string, sizeMode?: number, callback?:Function): void; + function loadBundleRes(prefab: string | string[], callback?:Function): void; + } + + namespace script + { + namespace pageView + { + function initAutoScroll(page: Component, pageViewName: string, autoScrollSeconds: number, loop: boolean, callback?: Function): void; + } + namespace scrollView + { + function initDeltaInsert(page: Component, viewName: string, queryHandler: Function): void; + function overDeltaInsert(page: Component, noMoreData: boolean): void; + function initDropRefresh(page: Component, viewName: string, refreshHandler: Function): void; + function overDropRefresh(page: Component): void; + } + namespace nativeMask + { + function init(page: Component, node: Node | undefined, x: number, y: number, width: number, height: number): string + } + } + + namespace serv + { + function loadFile(url: string, localPath?: string, callback?: Function): void; + function loadAsset(url: string, callback?: Function): void; + function call(url: string, callback?: Function, context?: any): void; + function post(url: string, data?: any, callback?: Function, context?: any): void; + function upload(url: string, filePath: string, callback?: Function): void; + function setCommonHeaders(headers: string[]): void; + } + + namespace sys + { + const version: string; + let userPath: string; + let cachePath: string; + const os: + { + native: boolean, + + mac: boolean, + ios: boolean, + android: boolean, + + wxgame: boolean, + wxpub: boolean, + web: boolean + }; + interface config + { + debug: boolean, //调试模式输出log + startPage: string, //开始页 + autoRemoveLaunchImage: boolean, //自动移除启动屏 + + designSizeMinWidth: number, //最小设计宽度 + designSizeMinHeight: number, //最小设计高度 + + slideEventDisabled: boolean, //禁止子页面右划 + pageActionDisabled: boolean, //禁止页面显示和退出动画 + androidkeyDisabled: boolean, //禁止android返回键 + + hintFontSize: number, //cx.hint 文字尺寸 + hintFontColor: string, //cx.hint 文字颜色 + hintFontOutlineWidth: number, //cx.hint 文字描边宽度 + hintFontOutlineColor: string, //cx.hint 文字描边颜色 + + [key: string]: any + } + } + + namespace utils + { + function prefix(str: string | number, len?: number): string; + function formatTime(time: Date, format?: string): string; //defualt format: %Y-%m-%d %X + function getCurrSecond(ms?:boolean): number; + function strToSecond(stime: string): number; + function secondToStr(second: number, format?: string): string; + function getCurrDate(format?: string): string; + function getCurrTime(format?: string): string; + function getDiffDate(diff: number, format?: string): string; + function getDiffTime(diff: number, format?: string): string; + function getObject(arr: any[], key: string, value: any): any; //获取arr中,key1=value1 && key2=value2...的对象; + function getObjects(arr: any[]): any[]; + function getObjectIndex(arr: any[]): number; + function getObjectValues(obj: any): any; + function copyObject(obj: any): any; + function updateObject(obj: any, newObj: any): void; + function extendObject(obj: any, newObj: any, ignoreExist?: boolean): void; + function updateObjectValue(arr: any[], key: string, newValue: any): void; + function dict2Object(dictList: any[]): any; + function isInteger(num: string, min?: number | undefined, max?: number | undefined): boolean; + function isNumber(num: string, min?: number | undefined, max?: number | undefined): boolean; + function isNumber2(num: string, min?: number | undefined, max?: number | undefined): boolean; + function isCurrency(num: string, min?: number | undefined, max?: number | undefined): boolean; + function isCurrency4(num: string, min?: number | undefined, max?: number | undefined): boolean; + function isIdCard(value: string): boolean; + function formatFloat(value: number): number; + function encode(content: string, key?: string): string; + function decode(content: string, key?: string): string; + function md5(content: string, key?: string): string; + function randomRange(min: number, max: number): number; + function randomArray(arr: any[]): void; + function strDelete(str: string, c?: string): string; + function strTruncate(str: string | undefined, len: number): string + } +} + +declare module "cc" +{ + interface Node + { + ignoreTopPage?: boolean; //本页不计入TopPage + slideEventDisabled?: boolean; //禁止本页滑动退出 + pageActionDisabled?: boolean; //禁止本页进入动画 + androidBackHandler?: Function | string; //本页android回退键处理方法 + mainComponent?: any; //本页同名的script实例 + onChildPageClosed?: Function; //当子页面关闭的处理方法 + nextInPercentX?: number; //上一页面左移的百分比,默认0.3 + _pro: any; + pro(): any; //扩展node属性 + getWidth(): number; + getHeight(): number; + getContentSize(): Size; + + //添加点击事件,callback: (senderNode, ...params) + setTouchCallback(target:any, callback:Function, ...params:any): void; + } + + interface ScrollView + { + cx_refreshTopGap?: number; + startAutoScroll(deltaMove: math.Vec3, timeInSecond: number, attenuated?: boolean): void; + } + + interface Game + { + appConfig: cx.sys.config; + } +} + +declare namespace global +{ + interface Window {cx: any} +} \ No newline at end of file diff --git a/cx-framework3.1/cx/core.meta b/cx-framework3.1/cx/core.meta new file mode 100644 index 0000000..722ee02 --- /dev/null +++ b/cx-framework3.1/cx/core.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "22cfb89f-3438-44eb-88b0-297381f69f2f", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx-framework3.1/cx/core/cx.adapt.ts b/cx-framework3.1/cx/core/cx.adapt.ts new file mode 100644 index 0000000..ab1dd5e --- /dev/null +++ b/cx-framework3.1/cx/core/cx.adapt.ts @@ -0,0 +1,105 @@ +import * as cc from 'cc'; + +cc.Node.prototype.pro = function() +{ + if (!this._pro) + this._pro = {}; + return this._pro; +}; + +cc.Node.prototype.getWidth = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).width; +}; + +cc.Node.prototype.getHeight = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).height; +}; + +cc.Node.prototype.getContentSize = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).contentSize; +}; + +cc.Node.prototype.setTouchCallback = function(target:any, callback?:Function, ...params:any) +{ + if (!callback) + { + this.off(cc.Node.EventType.TOUCH_END); + return; + } + this.on(cc.Node.EventType.TOUCH_END, (event: cc.EventTouch) => + { + if (Math.abs(event.getLocation().x - event.getStartLocation().x) > 15 || Math.abs(event.getLocation().y - event.getStartLocation().y) > 15) + return; + if (cx.touchLockTimelen < 0) + return; + var t = cx.utils.getCurrSecond(true); + if (t - cx.touchPriorSecond >= cx.touchLockTimelen) + { + cx.touchPriorSecond = t; + cx.touchLockTimelen = 250; + callback && callback.apply(target, params != undefined ? [this].concat(params) : params); + } + }); +}; + +var prototype: any = cc.ScrollView.prototype; +prototype.startAutoScroll = prototype._startAutoScroll; + +//将ScrollView的content最小高度设置为ScrollView的高度,且初始位置定位到顶部 +prototype._adjustContentOutOfBoundaryOrigin = prototype._adjustContentOutOfBoundary; +prototype._adjustContentOutOfBoundary = function() +{ + ////blank + var that: any = this; + if (!that._content) + return; + var contentTransform = that._content.getComponent(cc.UITransform); + if (contentTransform.contentSize.height < that.view.contentSize.height) + { + that.view.getComponent(cc.Widget)?.updateAlignment(); + contentTransform.setContentSize(contentTransform.contentSize.width, that.view.contentSize.height); + } + + this._adjustContentOutOfBoundaryOrigin(); +}; + +//下拉刷新时,顶部回弹到cx_refreshTopGap位置 cx_refreshTopGap=120 +prototype._flattenVectorByDirection = function(vector: cc.Vec3) +{ + const result = vector; + result.x = this.horizontal ? result.x : 0; + result.y = this.vertical ? result.y : 0; + + ////blank + var that: any = this; + if (that.cx_refreshTopGap && result.y > that.cx_refreshTopGap) + result.y -= that.cx_refreshTopGap; + + return result; +}; + +//PageView指示器优先按Page.dataIndex值指示,且page数量为1时不显示 +cc.PageViewIndicator.prototype._changedState = function () +{ + var that: any = this; + var indicators = that._indicators; + if (indicators.length === 0) + return; + var page = that._pageView.getPages()[that._pageView.curPageIdx]; + var dataIndex = page && page.pro().dataIndex; + var idx = dataIndex != undefined ? dataIndex : that._pageView.curPageIdx; + if (idx >= indicators.length) return; + var uiComp; + for (var i = 0; i < indicators.length; ++i) + { + var node = indicators[i]; + uiComp = node._uiProps.uiComp; + if (uiComp) + uiComp.color = cc.color(uiComp.color.r, uiComp.color.g, uiComp.color.b, i != idx ? 255/2 : 255); + } +}; + + diff --git a/cx-framework3.1/cx/core/cx.adapt.ts.meta b/cx-framework3.1/cx/core/cx.adapt.ts.meta new file mode 100644 index 0000000..6f2488a --- /dev/null +++ b/cx-framework3.1/cx/core/cx.adapt.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "bf4f5efb-16d9-4df5-9888-f51aa81eaa26", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.define.ts b/cx-framework3.1/cx/core/cx.define.ts new file mode 100644 index 0000000..c89104f --- /dev/null +++ b/cx-framework3.1/cx/core/cx.define.ts @@ -0,0 +1,44 @@ +import * as cc from 'cc'; + +import native from "./cx.native"; +import picker from "./cx.picker"; +import res from "./cx.res"; +import script from "./cx.script"; +import serv from "./cx.serv"; +import sys from "./cx.sys"; +import ui from "./cx.ui"; +import utils from "./cx.utils"; + +class cx extends ui +{ + static native = native; + static picker = picker; + static res = res; + static script = script; + static serv = serv; + static sys = sys; + static utils = utils; + + static config = sys.config; + static os = sys.os; + + static log = console.log; + + static init(mainScene: cc.Component) + { + console.log("..... cx init (framework: " + sys.version + ") ....."); + + sys.init(); + ui.init(mainScene); + + if (!sys.config.debug) + this.log = function(){}; + + console.log("..... cx init success (sw:" + ui.sw + ", sh:" + ui.sh + ") ....."); + } +} + +window.cx = window.cx || cx; + + + diff --git a/cx-framework3.1/cx/core/cx.define.ts.meta b/cx-framework3.1/cx/core/cx.define.ts.meta new file mode 100644 index 0000000..e594c6f --- /dev/null +++ b/cx-framework3.1/cx/core/cx.define.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "09fe4b13-8d70-477f-9e93-1b76c37ba3cb", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.native.ts b/cx-framework3.1/cx/core/cx.native.ts new file mode 100644 index 0000000..1345027 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.native.ts @@ -0,0 +1,44 @@ +import sys from './cx.sys'; + +export default class native +{ + static androidIntf: any = {}; + static undefinedIns = {call:function(){return "";}}; + + static ins (name: string): any + { + if (!sys.os.native) + return this.undefinedIns; + + //非android使用jsb c++ + if (!sys.os.android || name == "cx") + return typeof cxnative != "undefined" && cxnative.NativeCreator.createNativeClass(name) || this.undefinedIns; + + //android使用jsb.reflection + if (!jsb.reflection) + { + console.log("!!!!! error: jsb.reflection is undefined !!!!!"); + return this.undefinedIns; + } + + var intf = this.androidIntf[name]; + if (!intf) + { + intf = this.androidIntf[name] = {}; + intf.name = name, + intf.call = (function(fname: string, params: any[], callback?: Function) + { + intf.callback = callback; + return jsb.reflection.callStaticMethod("cx/NativeIntf", "call", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", + intf.name, fname, params && params.join("#@#") || ""); + }).bind(intf); + } + return intf; + } + + static androidCallback (name: string, v1: number, v2: string) + { + var intf = native.androidIntf[name]; + intf && intf.callback && intf.callback(v1, v2); + } +} \ No newline at end of file diff --git a/cx-framework3.1/cx/core/cx.native.ts.meta b/cx-framework3.1/cx/core/cx.native.ts.meta new file mode 100644 index 0000000..72058eb --- /dev/null +++ b/cx-framework3.1/cx/core/cx.native.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "b97ea3bc-cb32-4fc9-bfb4-a52dab76bdf9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.picker.ts b/cx-framework3.1/cx/core/cx.picker.ts new file mode 100644 index 0000000..f252c7b --- /dev/null +++ b/cx-framework3.1/cx/core/cx.picker.ts @@ -0,0 +1,326 @@ +import * as cc from 'cc'; +import res from './cx.res'; +import ui from './cx.ui'; + +export default class picker +{ + //dataList数组对象属性包括: + //data:数据列表,[""或{}],如果是{},需指定显示字段display + //index: 默认初始定位index + //suffix: 在数据后加上该字串 + //ex: (callback, [{data:["a", "b"], index:0, suffix:""}, {...}]) + //ex: (callback, [{data:[{id:"a", name:"b"}], display:"name", index:0, suffix:"年"}, {...}]) + static create (page: cc.Component, callback: Function | undefined, dataList: any[]) + { + return new OptionPicker(page, callback, dataList); + } + + //创建年月日选择,默认值:yearData:当前年,year:当前年,monthData:所有月,month:当前月,dayData:1~31天,dy:当前天 + //ex: (this, callback) + static createYearMonthDay (page: cc.Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number, dayData?: any[], day?: number) + { + var d = new Date(); + yearData = yearData ? yearData : this.year(); + monthData = monthData ? monthData : this.month(); + dayData = dayData ? dayData : this.day(); + var yearIndex = yearData.indexOf(year ? year : d.getFullYear()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + var dayIndex = dayData.indexOf(day ? day : d.getDate()); + return new OptionPickerYearMonthDay(page, callback, [ + {data: yearData, index: yearIndex, suffix: "年"}, + {data: monthData, index: monthIndex, suffix: "月"}, + {data: dayData, index: dayIndex, suffix: "日"}]); + } + + //创建年月选择,默认值:yearData:当前年,year:当前年,monthData:所有月,month:当前月 + //返回值,选中年、月值:callback(2016, 7)----非索引,以下年月日相关的,都是如此 + //ex: (callback, cx.picker.year(-3, 0), null, cx.picker.month(1, 0), null) + static createYearMonth (page: cc.Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number) + { + var d = new Date(); + yearData = yearData ? yearData : this.year(); + monthData = monthData ? monthData : this.month(); + var yearIndex = yearData.indexOf(year ? year : d.getFullYear()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + return new OptionPicker(page, callback, [ + {data: yearData, index: yearIndex, suffix: "年"}, + {data: monthData, index: monthIndex, suffix: "月"}]); + } + + //创建月日选择, 默认值:monthData:所有月,month:当前月,dayData:1~31天,day:当前天 + static createMonthDay (page: cc.Component, callback: Function | undefined, monthData?: any[], month?: number, dayData?: any[], day?: number) + { + var d = new Date(); + monthData = monthData ? monthData : this.month(); + dayData = dayData ? dayData : this.day(); + var dayIndex = dayData.indexOf(day ? day : d.getDate()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + return new OptionPickerMonthDay(page, callback, [ + {data: monthData, index: monthIndex, suffix: "月"}, + {data: dayData, index: dayIndex, suffix: "日"}]); + } + + //创建时分选择 + static createHourMinute (page: cc.Component, callback: Function | undefined, hourData?: any[], hour?: number, minuteData?: any[], minute?: number) + { + hourData = hourData ? hourData : this.number(0, 23); + minuteData = minuteData ? minuteData : this.number(0, 59); + var hourIndex = hourData.indexOf(hour ? hour : 0); + var minuIndex = minuteData.indexOf(minute ? minute : 0); + return new OptionPicker(page, callback, [ + {data: hourData, index: hourIndex, suffix: "时"}, + {data: minuteData, index: minuIndex, suffix: "分"}]); + } + + //生成from至to之间的数值数组,label为后缀,默认值:label:undefined + //ex: (10, 100, "万") + static number (from?: number, to?: number, label?: string): any[] + { + var d = []; + if (from != undefined && to != undefined) + for (var i = from; i <= to; i++) + d.push(label ? i + "" + label : i); + return d; + } + + //生成form至to之间的年数组,默认值:from:undefined -- 当前年 + //ex: (2010, 2016) + //ex: (-3, 0) //当前年-3 至 当前年 + static year (from?: number, to?: number): any[] + { + from = from || 0; + to = to || 0; + var y = new Date().getFullYear(); + if (Math.abs(from) < 1000) from += y; + if (Math.abs(to) < 1000) to += y; + return this.number(from, to); + } + + //生成from至to之间的月数组,from=0则为当前月,to=0则为当前月,默认值:from=1,to=12 + //ex: (1, 0)、(0, 12)、() + static month (from?: number, to?: number): any[] + { + from = from == undefined ? 1 : (from == 0 ? new Date().getMonth() + 1 : from); + to = to == undefined ? 12 : (to == 0 ? new Date().getMonth() + 1 : to); + return this.number(from, to); + } + + //生成from至to之间的月数组,默认值:from=1,to=31 + //ex: (1, 15) + static day (from?: number, to?: number): any[] + { + return this.number(from ? from : 1, to ? to : 31); + } +}; + +//选择器ScrollView +class OptionPickerScrollView +{ + itemHeight = 80; + scrollView!: cc.ScrollView; + checkValidHandler?: Function; + tweenAdjust?: cc.Tween; + lastY?: number; + + constructor (view: cc.Node, data:[], defaultIndex: number, displayProperty:string, labelSuffix?: string) + { + var width = view.getWidth(); + var height = this.itemHeight = 80; + this.scrollView = view.getComponent(cc.ScrollView)!; + this.scrollView.content!.getComponent(cc.UITransform)?.setContentSize(view.getContentSize()); + + var node = new cc.Node(); + node.addComponent(cc.UITransform).setContentSize(width, height*2); + this.scrollView.content!.addChild(node); + + for (var i in data) + { + var text = displayProperty ? data[i][displayProperty] : data[i]; + var itemNode = new cc.Node(); + itemNode.addComponent(cc.UITransform).setContentSize(width, height); + itemNode.addChild(ui.createLabelNode(labelSuffix ? text + labelSuffix : text, 32, "000000")); + this.scrollView.content!.addChild(itemNode); + } + + node = new cc.Node(); + node.addComponent(cc.UITransform).setContentSize(width, height*2); + this.scrollView.content!.addChild(node); + + this.scrollView.content!.getComponent(cc.Layout)!.updateLayout(); + this.setIndex(defaultIndex); + + view.on(cc.ScrollView.EventType.SCROLL_ENDED, this.onScrollEnded, this); + view.on(cc.ScrollView.EventType.SCROLLING, this.onScrolling, this); + view.on(cc.Node.EventType.TOUCH_START, this.onTouchStart, this); + } + + getIndex (): number + { + return Math.round(this.scrollView.getScrollOffset().y / this.itemHeight); + } + + setIndex (index: number) + { + this.scrollView.content!.setPosition(this.scrollView.content!.getPosition().x, index * this.itemHeight + this.scrollView.node.getHeight()); + } + + getPosition (index: number): number + { + return index * this.itemHeight; + } + + onScrollEnded (scrollView: cc.ScrollView) + { + //如果在滚动中又按下,isAutoScrolling=true + //自动滚动结束,或无自动滚动,isAutoScrolling=false + if (scrollView.isAutoScrolling()) + return; + + var p = Math.round(scrollView.getScrollOffset().y / this.itemHeight) + 1; + if (this.checkValidHandler && !this.checkValidHandler(this)) + return; + + //滚动停止时没有在label上,则调整位置 + var py = (p - 1) * this.itemHeight; + if (Math.abs(scrollView.getScrollOffset().y - py) < 1) + scrollView.content!.setPosition(scrollView.content!.getPosition().x, py + scrollView.node.getHeight()); + else + this.tweenAdjust = cc.tween(scrollView.content).to(0.5, {position:cc.v3(undefined, py + scrollView.node.getHeight())}).start(); + } + + onScrolling (scrollView: cc.ScrollView) + { + if (scrollView.isAutoScrolling()) + { + if (this.lastY != undefined && Math.abs(scrollView.getScrollOffset().y - this.lastY) < 1) + { + this.lastY = undefined; + scrollView.stopAutoScroll(); + } + else + this.lastY = scrollView.getScrollOffset().y; + } + } + + onTouchStart () + { + if (this.tweenAdjust) + { + this.tweenAdjust.stop(); + this.tweenAdjust = undefined; + } + } +} + +//选择器界面 +class OptionPicker +{ + callback?: Function; + dataList!: any[]; + viewList!: any[]; + node?: cc.Node; + page!: cc.Component; + + constructor (page: cc.Component, callback: Function | undefined, dataList: any[]) + { + this.page = page; + this.callback = callback; + this.dataList = []; + this.viewList = []; + + res.loadBundleRes(["cx.prefab/cx.picker", "cx.prefab/cx.pickerScrollView"], (assets: any[]) => + { + var node = this.node = cc.instantiate(assets[0].data); + ui.makeNodeMap(node); + ui.setAndroidBackHandler(this.close.bind(this)); + ui.gn(node, "spCancel").setTouchCallback(this, this.close, 0); + ui.gn(node, "layerMask").setTouchCallback(this, this.close, 0); + ui.gn(node, "spOk").setTouchCallback(this, this.close, 1); + + ui.mainScene.node.addChild(node); + node.getComponent(cc.Widget).updateAlignment(); + cc.tween(node).by(0.55, {position: cc.v3(undefined, 480)}, {easing: "expoOut"}).start(); + cc.tween(ui.gn(node, "layerMask").getComponent(cc.UIOpacity)).to(0.25, {opacity: 100}).start(); + + var viewParent = ui.gn(node, "layerBox"); + var viewWidth = ui.sw / dataList.length; + for (var i in dataList) + { + var obj = dataList[i]; + this.dataList.push(obj.data); + + var view: cc.Node = cc.instantiate(assets[1].data); + view.getComponent(cc.UITransform)?.setContentSize(viewWidth, view.getHeight()); + viewParent.addChild(view); + + var pickerView: OptionPickerScrollView = new OptionPickerScrollView(view, obj.data, obj.index, obj.display, obj.suffix); + if (this.checkValidHandler) + pickerView.checkValidHandler = this.checkValidHandler.bind(this); + this.viewList.push(pickerView); + } + + }); + } + + close (sender: cc.Node, flag: any) + { + if (flag && this.callback) + { + var params = []; + for (var i in this.viewList) + { + var index = this.viewList[i].getIndex(); + params.push({index: index, value: this.dataList[i][index]}); + } + this.callback.apply(this.page, params); + } + ui.gn(this.node, "layerMask").setTouchCallback(); + cc.tween(this.node).by(0.55, {position: cc.v3(0, -480)}, {easing: "expoOut"}).call(()=>{this.node?.destroy();}).start(); + cc.tween(ui.gn(this.node, "layerMask").getComponent(cc.UIOpacity)).to(0.25, {opacity: 0}).start(); + ui.setAndroidBackHandler(); + } + + checkValidHandler (scrollView: cc.ScrollView): boolean + { + return true; + } +} + +class OptionPickerMonthDay extends OptionPicker +{ + checkValidHandler (scrollView: cc.ScrollView) + { + var month = this.dataList[0][this.viewList[0].getIndex()]; + var dayIndex = this.viewList[1].getIndex(); + var day = this.dataList[1][dayIndex]; + var c = new Date(new Date().getFullYear(), month, 0).getDate(); + var d = c - day; + if (d < 0) + { + var p = this.viewList[1].getPosition(dayIndex + d); + this.viewList[1].view.scrollToOffset(cc.v2(0, p), 0.4); + return scrollView != this.viewList[1]; + } + return true; + } +} + +class OptionPickerYearMonthDay extends OptionPicker +{ + checkValidHandler (scrollView: cc.ScrollView) + { + var year = this.dataList[0][this.viewList[0].getIndex()]; + var month = this.dataList[1][this.viewList[1].getIndex()]; + var dayIndex = this.viewList[2].getIndex(); + var day = this.dataList[2][dayIndex]; + var c = new Date(year, month, 0).getDate(); + var d = c - day; + if (d < 0) + { + var p = this.viewList[2].getPosition(dayIndex + d); + this.viewList[2].view.scrollToOffset(cc.v2(0, p), 0.4); + return scrollView != this.viewList[2]; + } + return true; + } +} diff --git a/cx-framework3.1/cx/core/cx.picker.ts.meta b/cx-framework3.1/cx/core/cx.picker.ts.meta new file mode 100644 index 0000000..0eecd26 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.picker.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "9cbbf9f1-7d7e-42bf-a933-8313aa01f1f4", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.res.ts b/cx-framework3.1/cx/core/cx.res.ts new file mode 100644 index 0000000..dc00d42 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.res.ts @@ -0,0 +1,95 @@ +import * as cc from 'cc'; +import serv from './cx.serv'; + +export default +{ + //从resources目录取图片 + //sizeMode: + // cc.Sprite.SizeMode.CUSTOM - 图片适应Node尺寸 + // cc.Sprite.SizeMode.TRIMMED - 图片裁剪后的尺寸 + // cc.Sprite.SizeMode.RAW - 图片原始尺寸 + setImageFromRes (spriteOrNode: any, img: string, sizeMode?: number, callback?: Function) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + cc.resources.load(img, (err: Error | null, asset: cc.ImageAsset) => + { + if (err) + cc.log("cx.serv.setImageFromRes error", err); + else + { + sprite.sizeMode = sizeMode != null ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + } + }); + }, + + //从bundle目录取图片 + setImageFromBundle (spriteOrNode: cc.Sprite | cc.Node, path: string, sizeMode?: number, callback?:Function) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + this.loadBundleRes(path, (asset: cc.ImageAsset) => + { + sprite.sizeMode = sizeMode ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + }); + }, + + //从远程取图片, localPath: 保存到本地路径,并优先从该路径取图片 + setImageFromRemote (spriteOrNode: cc.Sprite | cc.Node, url: string, localPath?: string, sizeMode?: number, callback?:Function) + { + serv.loadFile(url, localPath, function(asset: cc.ImageAsset) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + sprite.sizeMode = sizeMode != null ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + }); + }, + + //加载prefab,callback(类对象) + //ex: ("page/page1", this.xx.bind(this)) + //ex: (["page/page1", "page/page2"], this.xx.bind(this)) + //ex: ({p1:"page/page1", p2:"page/page2"}, this.xx.bind(this)) + loadBundleRes (prefab: string | string[], callback?:Function) + { + var load = function(fab: string, index?: number) + { + var p = fab.indexOf("/"); //prefab = ui/path1/page1 + var ui = p ? fab.substr(0, p) : "ui"; //ui = ui + var res = p ? fab.substr(p + 1) : fab; //res = path1/page1 + cc.assetManager.loadBundle(ui, (err, bundle) => + { + bundle.load(res, (err, asset) => + { + if (err) + cc.log("cx.serv.loadBundleRes error", err); + else if (index == undefined) + callback && callback(asset); + else + { + assets[index] = asset; + if (++loadedCount == assets.length) + callback && callback(assets.length == 1 ? assets[0] : assets); + } + }); + }); + }; + if (typeof prefab === "string") + load(prefab); + else + { + var assets = new Array(prefab.length); + var loadedCount = 0; + for (var i in prefab) + load(prefab[i], +i); + } + } +} \ No newline at end of file diff --git a/cx-framework3.1/cx/core/cx.res.ts.meta b/cx-framework3.1/cx/core/cx.res.ts.meta new file mode 100644 index 0000000..c00644f --- /dev/null +++ b/cx-framework3.1/cx/core/cx.res.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "6d1e5209-0e30-42db-bd36-eff1ab6988eb", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.script.ts b/cx-framework3.1/cx/core/cx.script.ts new file mode 100644 index 0000000..f518246 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.script.ts @@ -0,0 +1,54 @@ +import * as cc from 'cc'; + +export default +{ + pageView: + { + initAutoScroll(page: cc.Component, viewName: string, autoScrollSeconds: number, loop: boolean, callback?: Function) + { + var script: any = page.getComponent("cxui.pageView") || page.addComponent("cxui.pageView"); + script.initAutoScroll.apply(script, arguments); + } + }, + + scrollView: + { + //添加增量加载数据功能 + initDeltaInsert (page: cc.Component, viewName: string, queryHandler: Function) + { + var script: any = page.getComponent("cxui.scrollView") || page.addComponent("cxui.scrollView"); + script.initDeltaInsert.apply(script, arguments); + }, + + //增量加载数据完成时调用 + overDeltaInsert (page: cc.Component, noMoreData: boolean) + { + var script: any = page.getComponent("cxui.scrollView"); + script && script.overDeltaInsert.call(script, noMoreData); + }, + + //添加下拉刷新功能 + initDropRefresh (page: cc.Component, viewName: string, refreshHandler: Function) + { + var script: any = page.getComponent("cxui.scrollView") || page.addComponent("cxui.scrollView"); + script.initDropRefresh.apply(script, arguments); + }, + + //下拉刷新结束时调用 + overDropRefresh (page: cc.Component) + { + var script: any = page.getComponent("cxui.scrollView"); + script && script.overDropRefresh.call(script); + } + }, + + nativeMask: + { + init (page: cc.Component, node: Node, x: number, y: number, width: number, height: number): string + { + var script: any = page.getComponent("cxui.nativeMask") || page.addComponent("cxui.nativeMask"); + return script.init.apply(script, arguments); + } + } +} + diff --git a/cx-framework3.1/cx/core/cx.script.ts.meta b/cx-framework3.1/cx/core/cx.script.ts.meta new file mode 100644 index 0000000..0c07545 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.script.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "5e9f4376-ed55-457b-89dc-0ae3be5c97d3", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.serv.ts b/cx-framework3.1/cx/core/cx.serv.ts new file mode 100644 index 0000000..6845707 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.serv.ts @@ -0,0 +1,92 @@ +import * as cc from 'cc'; +import sys from './cx.sys'; + +let _commonHeaders: string[]; + +export default +{ + //取远程文件并保存到本地localPath,如果是JS,localPath无效 + loadFile (url: string, localPath?: string, callback?: Function) + { + if (!sys.os.native || !localPath) + { + this.loadAsset(url, callback); + return; + } + + if (jsb.fileUtils.isFileExist(localPath)) + { + this.loadAsset(localPath, callback); + return; + } + + this.internalRequest("GET", url, null, (ret: any) => + { + var path = localPath.substr(0, localPath.lastIndexOf("/")); + if (!jsb.fileUtils.isDirectoryExist(path)) + jsb.fileUtils.createDirectory(path); + // 3.0和3.1版本的writeDataToFile有bug,报参数错误,因此使用NativeUtils + // jsb.fileUtils.writeDataToFile(new Uint8Array(ret.data), localPath); + cxnative.NativeUtils.writeDataToFile(new Uint8Array(ret.data), localPath); + this.loadAsset(localPath, callback); + }, undefined, {responseType:'arraybuffer'}); + }, + + //取本地或远程资源文件: 图片、mp3、视频等 + loadAsset (url: string, callback?: Function) + { + cc.assetManager.loadRemote(url, function(err, asset) + { + if (err) + cc.log("cx.serv.loadAsset error", err); + else + callback && callback(asset); + }); + }, + + call (url: string, callback?: Function, context?: any) + { + this.internalRequest("GET", url, undefined, callback, context); + }, + + post (url: string, data?: any, callback?: Function, context?: any) + { + this.internalRequest("POST", url, data, callback, context); + }, + + upload (url: string, filePath: string, callback?: Function) + { + if (sys.os.native) + this.internalRequest("POST", url, jsb.fileUtils.getValueMapFromFile(filePath), callback, undefined, {headers: ['Content-Type', 'application/octet-stream']}); + }, + + setCommonHeaders (headers: string[]) + { + _commonHeaders = headers; + }, + + internalRequest (method: string, url: string, data?: any, callback?: Function, context?: any, option?: any) + { + var xhr = new XMLHttpRequest(); + xhr.onreadystatechange = function() + { + if (xhr.readyState === 4 && xhr.status === 200) + callback && callback({data:xhr.response, context:context}); + }; + if (option) + { + if (option.responseType) + { + xhr.responseType = option.responseType; + } + if (option.headers) + for (var i=0; i; + static defaultMoveOutAction: cc.Tween; + static defaultNextInAction: cc.Tween; + static defaultNextOutAction: cc.Tween; + static touchLockTimelen = 250; //ms + static touchPriorSecond = 0; + + static androidKeyBackHandler: any; + + static init (mainScene: cc.Component) + { + var size = cc.view.getCanvasSize(); + if (Math.ceil(size.height) < sys.config.designSizeMinHeight) + cc.view.setDesignResolutionSize(cc.view.getDesignResolutionSize().width, cc.view.getDesignResolutionSize().height, cc.ResolutionPolicy.FIXED_HEIGHT); + else if (Math.ceil(size.width) < sys.config.designSizeMinWidth) + cc.view.setDesignResolutionSize(cc.view.getDesignResolutionSize().width, cc.view.getDesignResolutionSize().height, cc.ResolutionPolicy.FIXED_WIDTH); + size = cc.view.getVisibleSize(); + + this.sw = Math.round(size.width); + this.sh = Math.round(size.height); + + this.defaultInitPx = this.sw; + this.defaultInitPy = 0; + this.defaultMoveInAction = cc.tween(this.rootNode).delay(0.1).to(0.55, {position:cc.v3(0, undefined)}, {easing: "expoOut"}); + this.defaultMoveOutAction = cc.tween().to(0.55, {position:cc.v3(ui.sw)}, {easing: "expoOut"}); + this.defaultNextInAction = cc.tween().delay(0.1).to(0.55, {position:cc.v3(-this.sw*0.3, undefined)}, {easing:"expoOut"}); + this.defaultNextOutAction = cc.tween().to(0.55, {position:cc.v3(0)}, {easing:"expoOut"}); + + this.mainScene = mainScene; + this.rootNode = new RootNode(); + mainScene.node.addChild(this.rootNode); + this.addPage(this.rootNode, sys.config.startPage, undefined, !sys.config.autoRemoveLaunchImage ? undefined : this.removeLaunchImage); + cc.assetManager.loadBundle("cx.prefab"); + } + + static removeLaunchImage () + { + sys.os.native && native.ins("cx.sys").call("removeLaunchImage", []); + } + + //将节点放入map + static makeNodeMap (node: any) + { + node._nodeMap = {}; + var f = function(e: any) + { + node._nodeMap[e.name] = e; + for (var i in e.children) + f(e.children[i]); + }; + f(node); + } + + //从map取出节点 + static gn (pageOrNode: any, name: string) + { + var node = (pageOrNode instanceof cc.Component) && pageOrNode.node ? pageOrNode.node : pageOrNode; + return node && node._nodeMap && node._nodeMap[name]; + } + + static hint (content: string) + { + res.loadBundleRes("cx.prefab/cx.hint", (asset: any) => + { + var page = cc.instantiate(asset.data); + page.name = "cx.hint"; + ui.makeNodeMap(page); + var lblHint: cc.Node = ui.gn(page, "lblHint"); + var priorHint; + for (var i in ui.mainScene.node.children) + { + var n = ui.mainScene.node.children[i]; + if (n.name == "cx.hint") + { + n.name = "cx.hint.prior"; + priorHint = n; + break; + } + } + lblHint.getComponent(cc.Label)!.color = cc.color(sys.config.hintFontColor); + lblHint.getComponent(cc.Label)!.fontSize = sys.config.hintFontSize; + lblHint.getComponent(cc.LabelOutline)!.width = sys.config.hintFontOutlineWidth; + lblHint.getComponent(cc.LabelOutline)!.color = cc.color(sys.config.hintFontOutlineColor); + lblHint.getComponent(cc.Label)!.string = content; + lblHint.setScale(0.5, 0.5); + if (priorHint) + lblHint.setPosition(lblHint.getPosition().x, Math.min(-30, ui.gn(priorHint, "lblHint").getPosition().y - 50)); + ui.mainScene.node.addChild(page); + cc.tween(lblHint).to(0.1, {scale:cc.v3(1,1,1)}).by(1.5, {position:cc.v3(undefined,30)}).by(0.2, {position: cc.v3(undefined, 20)}).call(()=>{page.destroy();}).start(); + cc.tween(lblHint.getComponent(cc.UIOpacity)).delay(1.5).to(0.2, {opacity: 0}).start(); + }); + } + + static alert (content: string, callback?: Function, labelOk?: string) + { + ui.setAndroidBackHandler(true); + res.loadBundleRes("cx.prefab/cx.alert", function(asset: any) + { + var page = cc.instantiate(asset.data); + page.name = "cx.alert"; + page.content = content; + page.callback = callback; + ui.makeNodeMap(page); + page.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + event.propagationStopped = true; + }); + + if (labelOk) + ui.gn(page, "lblOk").getComponent(cc.Label).string = labelOk; + + var lblContent: cc.Node = ui.gn(page, "lblContent"); + lblContent.getComponent(cc.Label)!.string = content; + lblContent.getComponent(cc.Label)!.updateRenderData(true); //更新Label高度 + var contentHeight = Math.max(400, lblContent.getComponent(cc.UITransform)!.height + 140); + var nodeContent: cc.Node = ui.gn(page, "nodeContent"); + nodeContent.getComponent(cc.UITransform)!.height = contentHeight; + nodeContent.setScale(1.2, 1.2); + ui.mainScene.node.addChild(page); + + cc.tween(nodeContent).to(0.15, {scale:cc.v3(1,1,1)}).start(); + cc.tween(ui.gn(page, "mask").getComponent(cc.UIOpacity)).to(0.15, {opacity:90}).start(); + ui.setNativeMaskMask((ui.sw-600)/2, (ui.sh+contentHeight)/2, 600, contentHeight, 14); + ui.gn(page, "spOk").setTouchCallback(page, function() + { + ui.clearNativeMaskMask(); + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(); + }); + }); + } + + static confirm (content: string, callback?: Function, labelOk?: string, labelCancel?: string) + { + ui.setAndroidBackHandler(true); + res.loadBundleRes("cx.prefab/cx.confirm", function(asset: any) + { + var page = cc.instantiate(asset.data); + page.name = "cx.confirm"; + page.content = content; + page.callback = callback; + ui.makeNodeMap(page); + page.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + event.propagationStopped = true; + }); + + if (labelOk) + ui.gn(page, "lblOk").getComponent(cc.Label).string = labelOk; + + if (labelCancel) + ui.gn(page, "lblCancel").getComponent(cc.Label).string = labelCancel; + + var lblContent = ui.gn(page, "lblContent"); + lblContent.getComponent(cc.Label)!.string = content; + lblContent.getComponent(cc.Label)!.updateRenderData(true); //更新Label高度 + ui.gn(page, "nodeContent").getComponent(cc.UITransform)!.height = Math.max(400, lblContent.getComponent(cc.UITransform)!.height + 140); + ui.mainScene.node.addChild(page); + + var nodeContent = ui.gn(page, "nodeContent"); + nodeContent.setScale(1.2, 1.2); + cc.tween(nodeContent).to(0.15, {scale:cc.v3(1, 1, 1)}).start(); + cc.tween(ui.gn(page, "mask").getComponent(cc.UIOpacity)).to(0.15, {opacity:90}).start(); + ui.gn(page, "spOk").setTouchCallback(page, function() + { + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(true); + }); + ui.gn(page, "spCancel").setTouchCallback(page, function() + { + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(false); + }); + }); + } + + static showLoading (page: cc.Component, parentNode: any, delayShowSeconds: number = 0) + { + if (parentNode._loadingInDelay || parentNode.getChildByName("cx.loadingNode")) + return; + var createLoading = function(dt?: number) + { + if (dt && !parentNode._loadingInDelay) + return; + var imageNode = new cc.Node(); + imageNode.name = "cx.loadingNode"; + imageNode.setScale(0.45, 0.45); + res.setImageFromBundle(imageNode, "cx.prefab/s_loading", cc.Sprite.SizeMode.TRIMMED); + parentNode.addChild(imageNode); + cc.tween(imageNode).repeatForever(cc.tween().by(0, {angle: -30}).delay(0.07)).start(); + }; + parentNode._loadingEnabled = true; + if (delayShowSeconds > 0) + { + parentNode._loadingInDelay = true; + page.scheduleOnce(createLoading, delayShowSeconds); + } + else + createLoading(); + } + + static removeLoading (parentNode: any) + { + var loadingNode = parentNode.getChildByName("cx.loadingNode"); + if (loadingNode) + loadingNode.removeFromParent(); + if (parentNode._loadingInDelay) + delete parentNode._loadingInDelay; + } + + static getTopPage (fromLast?: number): any + { + fromLast = fromLast || 0; + var match = 0; + for (var i = this.rootNode.children.length - 1; i>=0; i--) + { + var page = this.rootNode.children[i]; + if (page.active && !page.ignoreTopPage) + { + if (++match > -fromLast) + return page; + } + } + } + + static addPage (parent:cc.Node, prefab:string, scripts?:string[], callbackOrParams?:any, runAction?:boolean) + { + ui.touchLockTimelen = -1; + res.loadBundleRes(prefab, (asset: any) => + { + var p = prefab.indexOf("/"); + var script = p ? prefab.substr(prefab.lastIndexOf("/") + 1) : prefab; //script = page1(.ts) + scripts = scripts || [script]; + var node = cc.instantiate(asset.data); + var cxuiPageScript = node.addComponent("cxui.page"); + for (var i in scripts) + if (cc.js.getClassByName(scripts[i])) + node.addComponent(scripts[i]); + node.mainComponent = script && node.getComponent(script); + parent.addChild(node); + if (callbackOrParams != null) + { + if (typeof callbackOrParams == "function") + callbackOrParams(node); + else if (node.mainComponent) + node.mainComponent.contextParams = callbackOrParams; + } + if (runAction) + cxuiPageScript.runActionShow(); + ui.touchLockTimelen = 500; + }); + } + + static showPage (prefab:string, scripts?:string[], callbackOrParams?:any) + { + if (arguments.length == 1 || typeof arguments[0] == "string") + ui.addPage(ui.rootNode, prefab, scripts, callbackOrParams, true); + else //for touchCallback + ui.addPage(ui.rootNode, arguments[1], undefined, undefined, true); + } + + static closePage (sender: any) + { + var node: any = sender instanceof cc.Component ? sender.node : (this instanceof cc.Component ? this.node : sender); + node.getComponent("cxui.page").runActionClose(); + } + + //设置android返回键处理函数 + static setAndroidBackHandler(handler?: any) + { + if (sys.os.android) + this.androidKeyBackHandler = handler; + } + + static setNativeMaskMask (x: number, y: number, width: number, height: number, radius: number) + { + if (!sys.os.native) + return; + var mask = ui.getTopPage(); + mask = mask && mask.getComponent("cxui.nativeMask"); + if (mask) + { + var rect = ui.convertToDeviceSize(undefined, x, y, width, height); + mask.setMaskMask(rect.x, rect.y, rect.width, rect.height, radius); + } + } + + static clearNativeMaskMask () + { + if (!sys.os.native) + return; + var mask = ui.getTopPage(); + mask = mask && mask.getComponent("cxui.nativeMask"); + if (mask) + mask.clearMaskMask(); + } + + static createPanel (color4: string, width: number, height: number): cc.Node + { + var panel = new cc.Node(); + panel.addComponent(cc.UITransform).setContentSize(width, height); + panel.addComponent(cc.Sprite).color = cc.color(color4 || "ffffffff"); + res.setImageFromBundle(panel, "cx.prefab/s_color"); + return panel; + } + + static createLabelNode (text: string, fontSize: number, fontColor: string): cc.Node + { + var node = new cc.Node(); + var label = node.addComponent(cc.Label); + label.string = text; + label.fontSize = fontSize; + label.color = cc.color(fontColor); + return node; + } + + //将一个node节点中相对于节点左下角的坐标转换为屏幕坐标 + static convertToDeviceSize (node:cc.Node | undefined, x:number, y:number, width?:number, height?:number): cc.Rect + { + let frameSize = cc.view.getFrameSize(); + width = width ? frameSize.width * width / this.sw : 0; + height = height ? frameSize.height * height / this.sh : 0; + let r: cc.Vec3 | undefined = node ? node.getComponent(cc.UITransform)?.convertToWorldSpaceAR(cc.v3(x, y, 0)) : cc.v3(x, y, 0); + if (r) + { + x = frameSize.width * r.x / this.sw; + y = frameSize.height * (this.sh - r.y) / this.sh; + } + return new cc.Rect(x, y, width, height); + } +} + +class RootNode extends cc.Node +{ + constructor () + { + super(); + // this.setPosition(0, -ui.sh/2); + // this.addComponent(cc.UITransform)?.setAnchorPoint(0.5, 0.5); + this.addComponent(cc.UITransform).setContentSize(ui.sw, ui.sh); + var widget = this.addComponent(cc.Widget); + widget.isAlignTop = widget.isAlignBottom = true; widget.isAlignLeft = widget.isAlignRight = true; + + //if (sys.os.android) + // cc.systemEvent.on(cc.SystemEventType.KEY_UP, this.onAndroidKeyUp, this); + if (!sys.config.slideEventDisabled) + this.addSlideEvent(); + } + + onBackPressed() + //onAndroidKeyUp (event: cc.EventKeyboard) + { + // console.log(".................event..." + event.keyCode + "," + cc.macro.KEY.back); + //if (event.keyCode == cc.macro.KEY.back || event.keyCode == cc.macro.KEY.backspace || event.keyCode == cc.macro.KEY.escape) + { + if (ui.androidKeyBackHandler) + { + if (typeof ui.androidKeyBackHandler == "function") + ui.androidKeyBackHandler(); + return; + } + var topPage = ui.getTopPage(); + var handler = topPage.androidBackHandler; + if (handler) + { + if (handler == "closePage") + ui.closePage(topPage); + else if (handler == "closeApp") + native.ins("cx.sys").call("moveTaskToBack"); + else + handler(); + } + } + } + + slideState = 0; + slideShadow: cc.Node | undefined; + slidePage: cc.Node | undefined; + slideRelatePage: cc.Node | undefined; + slideMoveDeltaX = 0; + + addSlideEvent () + { + this.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + if (event.getLocationX() > ui.sw/2) + return; + this.slideState = 0; + var slidePage = ui.getTopPage(); + if (slidePage && slidePage.slideEventDisabled) + return; + this.slidePage = slidePage; + this.slideRelatePage = ui.getTopPage(-1); + // console.log("slide start...", this.slidePage && this.slidePage.name, this.slideRelatePage && this.slideRelatePage.name); + }, this, true); + + this.on(cc.Node.EventType.TOUCH_MOVE, (event: cc.EventTouch) => + { + if (!this.slidePage || !this.slidePage.active || this.slidePage.slideEventDisabled) + return; + var delta = event.getUIDelta(); + if (this.slideState < 2) + { + if (Math.abs(delta.x) > 0.05 || Math.abs(delta.y) > 0.05) + { + if (Math.abs(delta.x) > Math.abs(delta.y) && Math.abs(event.getLocation().y - event.getStartLocation().y) < 35) + { + if (event.getLocation().x - event.getStartLocation().x >= 20) + { + this.slideState++; + if (!this.slideShadow) + { + var node: cc.Node = this.slideShadow = new cc.Node(); + node.name = "cx.slideShadow"; + node.ignoreTopPage = true; + this.addChild(node); + node.setSiblingIndex(10000000 - 1000); + + var imgNode = new cc.Node(); + res.setImageFromBundle(imgNode, "cx.prefab/s_shadow", cc.Sprite.SizeMode.CUSTOM, (sprite: cc.Sprite) => + { + imgNode.getComponent(cc.UITransform)!.setContentSize(sprite.spriteFrame!.width, sprite.spriteFrame!.height); + imgNode.setScale(1, ui.sh / sprite.spriteFrame!.height); + imgNode.setPosition(-ui.sw/2-sprite.spriteFrame!.width/2, 0); + node.addChild(imgNode); + }); + } + } + } + else + this.slideState = 3; + } + } + + if (this.slideState == 2) + { + // console.log("slide move..." + delta.x); + event.propagationStopped = true; + this.slideMoveDeltaX = delta.x; + var p = this.slidePage.getPosition(); + p.x = Math.max(p.x + this.slideMoveDeltaX, 0); + this.slidePage.setPosition(p); + this.slideShadow?.setPosition(p); + if (this.slideRelatePage) + { + p = this.slideRelatePage.getPosition(); + p.x += this.slideMoveDeltaX * (this.slideRelatePage.nextInPercentX != undefined ? this.slideRelatePage.nextInPercentX : 0.3); + if (p.x > 0) + p.x = 0; + this.slideRelatePage.setPosition(p); + } + } + }, this, true); + + let touchEnd = (event: cc.EventTouch) => + { + if (!this.slidePage || !this.slidePage.active || this.slidePage.slideEventDisabled) + return; + + if (this.slideState == 2) + { + event.propagationStopped = true; + if (this.slideMoveDeltaX > 19 || this.slidePage.getPosition().x > ui.sw * 0.33) + { + ui.closePage.call(null, this.slidePage); + this.slideShadow && cc.tween(this.slideShadow).to(0.55, {position: cc.v3(ui.sw + 12, undefined)}, {easing: "expoOut"}).start(); + } + else + { + ui.defaultNextOutAction.clone(this.slidePage).start(); + if (this.slideRelatePage) + { + var tx = -ui.sw * (this.slideRelatePage.nextInPercentX != undefined ? this.slideRelatePage.nextInPercentX : 0.3); + cc.tween(this.slideRelatePage).to(0.55, {position: cc.v3(tx, undefined)}, {easing: "expoOut"}).start(); + } + this.slideShadow && ui.defaultNextOutAction.clone(this.slideShadow).start(); + } + this.slidePage = undefined; + } + this.slideState = 0; + }; + + this.on(cc.Node.EventType.TOUCH_END, touchEnd, this, true); + this.on(cc.Node.EventType.TOUCH_CANCEL, touchEnd, this, true); + + // this.on(cc.Node.EventType.TOUCH_CANCEL, (event: cc.EventTouch) => + // { + // if (this.slideState == 2) + // { + // event.propagationStopped = true; + // if (this.slidePage) + // { + // ui.defaultNextOutAction.clone(this.slidePage).start(); + // this.slideShadow && ui.defaultNextOutAction.clone(this.slideShadow).start(); + // this.slidePage = undefined; + // } + // } + // this.slideState = 0; + // }, this, true); + } +} diff --git a/cx-framework3.1/cx/core/cx.ui.ts.meta b/cx-framework3.1/cx/core/cx.ui.ts.meta new file mode 100644 index 0000000..f8cc763 --- /dev/null +++ b/cx-framework3.1/cx/core/cx.ui.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "65f94526-5d8d-4385-a552-f58a5c951f3f", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/core/cx.utils.ts b/cx-framework3.1/cx/core/cx.utils.ts new file mode 100644 index 0000000..9add7ab --- /dev/null +++ b/cx-framework3.1/cx/core/cx.utils.ts @@ -0,0 +1,270 @@ + +export default +{ + //在str前补充0,补充至长度len + prefix: function(str: string | number, len?: number): string + { + if (len == undefined) + len = 2; + var ret = str + ''; + while (ret.length < len) + ret = "0" + ret; + return ret; + }, + + formatTime: function(time: Date, format?: string): string + { + var s = (format || "%Y-%m-%d %X").replace("%Y", time.getFullYear()+""); + s = s.replace("%m", this.prefix(time.getMonth()+1)); + s = s.replace("%d", this.prefix(time.getDate())); + s = s.replace("%X", this.prefix(time.getHours())+":"+this.prefix(time.getMinutes())+":"+this.prefix(time.getSeconds())); + s = s.replace("%x", this.prefix(time.getHours())+""+this.prefix(time.getMinutes())+""+this.prefix(time.getSeconds())); + return s; + }, + + getCurrSecond(ms?:boolean): number + { + return Math.floor(new Date().getTime()*(ms ? 1 : 0.001)); + }, + + strToSecond: function(stime: string): number + { + return Date.parse(stime.replace(/[^0-9: ]/mg, '/')).valueOf()*0.001; + }, + secondToStr: function(second: number, format?: string): string + { + var date = new Date(); + date.setTime(second * 1000); + return this.formatTime(date, format); + }, + getCurrDate: function(format?: string): string + { + return this.formatTime(new Date(), format || "%Y-%m-%d"); + }, + getCurrTime: function(format?: string): string + { + return this.formatTime(new Date(), format); + }, + getDiffDate: function(diff: number, format?: string): string + { + return this.secondToStr(this.getCurrSecond() + diff, format || "%Y-%m-%d"); + }, + getDiffTime: function(diff: number, format?: string): string + { + return this.secondToStr(this.getCurrSecond() + diff, format); + }, + + //对象相关 + getObject: function(arr: any[], key: string, value: any): any + { + for (var i in arr) + { + var same = true; + for (var j=1; j=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num2100 || + +value.substr(10,2)>12 || +value.substr(10,2)<1 || + +value.substr(12,2)>31 || +value.substr(12,2)<1) + return false; + var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); + var Ai = new Array('1','0','X','9','8','7','6','5','4','3','2'); + if (value.charAt(17) == 'x') + value = value.replace("x","X"); + var strSum = 0; + for (var i=0; i= max) + return min; + return Math.floor(Math.random() * (max - min + 1)) + min; + }, + randomArray: function(arr: any[]) + { + var len = arr.length; + for (var i=0; i= 0) + str = str.replace(c, ""); + return str; + }, + //按len长度截断str,之后显示为... + strTruncate: function(str: string | undefined, len: number): string + { + if (!str || str.length <= len) + return str || ""; + return str.substr(0, len-1) + "..."; + } +} diff --git a/cx-framework3.1/cx/core/cx.utils.ts.meta b/cx-framework3.1/cx/core/cx.utils.ts.meta new file mode 100644 index 0000000..bec7a5b --- /dev/null +++ b/cx-framework3.1/cx/core/cx.utils.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "55c7bd0f-7a87-4083-bc6c-5b37f6f384f9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/prefab.meta b/cx-framework3.1/cx/prefab.meta new file mode 100644 index 0000000..9e45bcb --- /dev/null +++ b/cx-framework3.1/cx/prefab.meta @@ -0,0 +1,14 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "37024b87-866b-43c6-b0af-bb7bfd49b947", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {}, + "isBundle": true, + "bundleName": "cx.prefab" + } +} diff --git a/cx-framework3.1/cx/prefab/cx.alert.prefab b/cx-framework3.1/cx/prefab/cx.alert.prefab new file mode 100644 index 0000000..c409f8c --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.alert.prefab @@ -0,0 +1,992 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.alert", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 46 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "78gDvw8KpNuoGM0hKpGq0Y" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21cjjg3PVNU7kJKYT+lxKt" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": "30Xlt3clBFJrKBRzoZxWQI" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 12, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7dS7qX1nRBx7fgz6abx9xt" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e27vE6WyFDdpntayZ2Y/G9" + }, + { + "__type__": "cc.Node", + "_name": "nodeContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 35 + }, + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblContent", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 50, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 570, + "height": 52.92 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 30, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 42, + "_overflow": 3, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "07QMd0h1dLcYd/vjigaip6" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ee3IZdy2dLIaAWpjI7P0FL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ba3SJ/4HlJ4qhz4zG3g2uV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 601, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "98TYGMtwRBTYZZn4EZmhzJ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "77BcV1zfNHo4LI4KRqZupe" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "b994b487-8cae-43ac-abfc-57584686d976@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 19 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fOwBXUwBNvaJ4NyyrOq4C" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "dfYkI4cBdAfa4omqqk40Jd" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5yv+LuHpN07rESL8vjIVw" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 600, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "348f167f-710c-4b8c-9b87-63adbc5f3978@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": "49kwkgKe9GyZt6ftweaJWn" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/prefab/cx.alert.prefab.meta b/cx-framework3.1/cx/prefab/cx.alert.prefab.meta new file mode 100644 index 0000000..412220d --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.alert.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "e65c7265-d427-4eee-b1c1-af76082632ec", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.alert" + } +} diff --git a/cx-framework3.1/cx/prefab/cx.confirm.prefab b/cx-framework3.1/cx/prefab/cx.confirm.prefab new file mode 100644 index 0000000..51bff93 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.confirm.prefab @@ -0,0 +1,1356 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.confirm", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 58 + }, + { + "__id__": 60 + } + ], + "_prefab": { + "__id__": 62 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "78gDvw8KpNuoGM0hKpGq0Y" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21cjjg3PVNU7kJKYT+lxKt" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": "30Xlt3clBFJrKBRzoZxWQI" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 12, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7dS7qX1nRBx7fgz6abx9xt" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e27vE6WyFDdpntayZ2Y/G9" + }, + { + "__type__": "cc.Node", + "_name": "nodeContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 19 + }, + { + "__id__": 35 + } + ], + "_active": true, + "_components": [ + { + "__id__": 51 + }, + { + "__id__": 53 + }, + { + "__id__": 55 + } + ], + "_prefab": { + "__id__": 57 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblContent", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 50, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 570, + "height": 52.92 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 30, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 42, + "_overflow": 3, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 150, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "07QMd0h1dLcYd/vjigaip6" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ee3IZdy2dLIaAWpjI7P0FL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ba3SJ/4HlJ4qhz4zG3g2uV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 299, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "98TYGMtwRBTYZZn4EZmhzJ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "77BcV1zfNHo4LI4KRqZupe" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 19 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fOwBXUwBNvaJ4NyyrOq4C" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "dfYkI4cBdAfa4omqqk40Jd" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5yv+LuHpN07rESL8vjIVw" + }, + { + "__type__": "cc.Node", + "_name": "spCancel", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 36 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + }, + { + "__id__": 46 + }, + { + "__id__": 48 + } + ], + "_prefab": { + "__id__": 50 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -1, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblCancel", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -150, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "38y/8CrqdMLayvuVK+ooHc" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "取消", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1bJSlx+WxAr6wIg/tgcVMz" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a21YmkosZFipGo/fQD3IF5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 299, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "23CaA9AX5JcrUtlN65c1dQ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "7bQU0h3VpOLJF1DLwhutUZ" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 35 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "57wg4iPpFIOII59tTdbAE7" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 49 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "acIdNYfRFHL6AQ1ONr21cq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f9GUYeG/BK+LnBsmczPcDi" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 600, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "e3b52bb7-1217-459e-8db8-dc485e24ad91@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": "49kwkgKe9GyZt6ftweaJWn" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 59 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 61 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/prefab/cx.confirm.prefab.meta b/cx-framework3.1/cx/prefab/cx.confirm.prefab.meta new file mode 100644 index 0000000..509b6e2 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.confirm.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "6cfc5922-3049-4dc3-b943-ad79b62754bb", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.confirm" + } +} diff --git a/cx-framework3.1/cx/prefab/cx.hint.prefab b/cx-framework3.1/cx/prefab/cx.hint.prefab new file mode 100644 index 0000000..10d1fdf --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.hint.prefab @@ -0,0 +1,440 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.hint", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "nodeHint", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblHint", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "label", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 37, + "_fontSize": 36, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.LabelOutline", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_color": { + "__type__": "cc.Color", + "r": 119, + "g": 119, + "b": 119, + "a": 255 + }, + "_width": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d3FpDLjaVFOqcFboM3/hOg" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_opacity": 255, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "90iLMXmrJFPa19LOw5Z5Ug" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 120 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/prefab/cx.hint.prefab.meta b/cx-framework3.1/cx/prefab/cx.hint.prefab.meta new file mode 100644 index 0000000..0cae03c --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.hint.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "85291583-c34d-4aea-9d63-e1bbeaab8368", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.hint" + } +} diff --git a/cx-framework3.1/cx/prefab/cx.picker.prefab b/cx-framework3.1/cx/prefab/cx.picker.prefab new file mode 100644 index 0000000..ac21c96 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.picker.prefab @@ -0,0 +1,1725 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.picker", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 76 + }, + { + "__id__": 78 + } + ], + "_prefab": { + "__id__": 80 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -1147, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "layerMask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1814 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": 750, + "_originalHeight": 1814, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "22VK/kAvJIorKGj7+apYDN" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "52AA6Aog9BJp4rGOIxtEsn" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8f143Zs69GcaNpjcnqftpo" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 41 + }, + { + "__id__": 47 + }, + { + "__id__": 59 + } + ], + "_active": true, + "_components": [ + { + "__id__": 71 + }, + { + "__id__": 73 + } + ], + "_prefab": { + "__id__": 75 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "barTitle", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 14 + }, + { + "__id__": 26 + } + ], + "_active": true, + "_components": [ + { + "__id__": 38 + } + ], + "_prefab": { + "__id__": 40 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 400, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spCancel", + "_objFlags": 0, + "_parent": { + "__id__": 13 + }, + "_children": [ + { + "__id__": 15 + } + ], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -1, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblCancel", + "_objFlags": 0, + "_parent": { + "__id__": 14 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 16 + }, + { + "__id__": 18 + } + ], + "_prefab": { + "__id__": 20 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "取消", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 31, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "18M103dZdEQaYYtkWzql9M" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2e1LbHliZP7LF5Oc5vPTBA" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 13 + }, + "_children": [ + { + "__id__": 27 + } + ], + "_active": true, + "_components": [ + { + "__id__": 33 + }, + { + "__id__": 35 + } + ], + "_prefab": { + "__id__": 37 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 26 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 28 + }, + { + "__id__": 30 + } + ], + "_prefab": { + "__id__": 32 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 27 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ccta3+pEVHHIS+gewY6H8Z" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 27 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 31, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9dIIjw/G1HSIuuIXySxBLs" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d1TcD7cLxLUIe8rGB8cKqg" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6f8PTdP5NBHI1d6tMGSaG1" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2edDlCj7lIMpKrmWxfIFv/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "26xTsK7ORAc6oUvgmBxwH5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "layerBox", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 46 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a4R79BathAl5F08F/MH/9T" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_resizeMode": 1, + "_layoutType": 1, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "59mPBeQDVLLZ/LJgorKll8" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "aerxZqhpJLZ5v5wfQmMFBP" + }, + { + "__type__": "cc.Node", + "_name": "layerMask1", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 56 + } + ], + "_prefab": { + "__id__": 58 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 240, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "line1", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + } + ], + "_prefab": { + "__id__": 53 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 85, + "g": 85, + "b": 85, + "a": 150 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "17ld/+EpZIL7lWO1GZ1ero" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 55 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 57 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 242, + "g": 242, + "b": 242, + "a": 96 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e33UpI3ZxPrIbpkmpqdkoo" + }, + { + "__type__": "cc.Node", + "_name": "layerMask2", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 60 + } + ], + "_active": true, + "_components": [ + { + "__id__": 66 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 70 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "line2", + "_objFlags": 0, + "_parent": { + "__id__": 59 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 61 + }, + { + "__id__": 63 + } + ], + "_prefab": { + "__id__": 65 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 160, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6aYg42sS5Fi55UeUb79JVe" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 68, + "g": 68, + "b": 68, + "a": 150 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "79/PcGNvpLX4AtTn5vhvdw" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "62/ibdnTJN1IMBvknxJMnV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": { + "__id__": 67 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "12wHnwhkBBbq5jGVszBZqB" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 242, + "g": 242, + "b": 242, + "a": 96 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "08ksqrS4VJBpA+jFxCxauh" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "94FxFnNgxIs5FrCofWx25I" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 72 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 480 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 1574, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": -907, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 480, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 77 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1814 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 79 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": -480, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/prefab/cx.picker.prefab.meta b/cx-framework3.1/cx/prefab/cx.picker.prefab.meta new file mode 100644 index 0000000..50c5463 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.picker.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "32d38c52-f788-44f8-b6e8-53890d825af6", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.picker" + } +} diff --git a/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab b/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab new file mode 100644 index 0000000..6430dc0 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab @@ -0,0 +1,422 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.pickerScrollView", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + }, + { + "__id__": 18 + } + ], + "_prefab": { + "__id__": 20 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + } + ], + "_active": true, + "_components": [ + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": { + "__id__": 13 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + } + ], + "_prefab": { + "__id__": 8 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 400, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 12 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4dhOV9pUZNO5lw+vOxHNpY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 3 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "31emUMJhhK8YdEity5dmaV" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab.meta b/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab.meta new file mode 100644 index 0000000..dc05fd1 --- /dev/null +++ b/cx-framework3.1/cx/prefab/cx.pickerScrollView.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "5fffa384-9ca0-4a4e-8d0c-07750b8b5e0c", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.pickerScrollView" + } +} diff --git a/cx-framework3.1/cx/prefab/s_al.png b/cx-framework3.1/cx/prefab/s_al.png new file mode 100755 index 0000000..75f4671 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_al.png differ diff --git a/cx-framework3.1/cx/prefab/s_al.png.meta b/cx-framework3.1/cx/prefab/s_al.png.meta new file mode 100644 index 0000000..ed153a9 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_al.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139@6c48a", + "displayName": "s_al", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "584cd881-9cb2-40cb-876c-5ab8c6d49139" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941", + "displayName": "s_al", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 18, + "height": 32, + "rawWidth": 18, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "584cd881-9cb2-40cb-876c-5ab8c6d49139@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_alert_bg.png b/cx-framework3.1/cx/prefab/s_alert_bg.png new file mode 100644 index 0000000..725adec Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_alert_bg.png differ diff --git a/cx-framework3.1/cx/prefab/s_alert_bg.png.meta b/cx-framework3.1/cx/prefab/s_alert_bg.png.meta new file mode 100644 index 0000000..8424e65 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_alert_bg.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978@6c48a", + "displayName": "s_alert_bg", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "348f167f-710c-4b8c-9b87-63adbc5f3978" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978@f9941", + "displayName": "s_alert_bg", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 600, + "height": 400, + "rawWidth": 600, + "rawHeight": 400, + "borderTop": 139, + "borderBottom": 158, + "borderLeft": 159, + "borderRight": 186, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "348f167f-710c-4b8c-9b87-63adbc5f3978@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "348f167f-710c-4b8c-9b87-63adbc5f3978@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_alert_ok.png b/cx-framework3.1/cx/prefab/s_alert_ok.png new file mode 100644 index 0000000..976163b Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_alert_ok.png differ diff --git a/cx-framework3.1/cx/prefab/s_alert_ok.png.meta b/cx-framework3.1/cx/prefab/s_alert_ok.png.meta new file mode 100644 index 0000000..b1e1ee9 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_alert_ok.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "b994b487-8cae-43ac-abfc-57584686d976", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "b994b487-8cae-43ac-abfc-57584686d976@6c48a", + "displayName": "s_alert_ok", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "b994b487-8cae-43ac-abfc-57584686d976" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "b994b487-8cae-43ac-abfc-57584686d976@f9941", + "displayName": "s_alert_ok", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 599, + "height": 88, + "rawWidth": 600, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "b994b487-8cae-43ac-abfc-57584686d976@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "b994b487-8cae-43ac-abfc-57584686d976@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_border.png b/cx-framework3.1/cx/prefab/s_border.png new file mode 100644 index 0000000..7b050d0 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_border.png differ diff --git a/cx-framework3.1/cx/prefab/s_border.png.meta b/cx-framework3.1/cx/prefab/s_border.png.meta new file mode 100644 index 0000000..a661d4f --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_border.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82@6c48a", + "displayName": "s_border", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e0c075bf-922a-400b-ba33-c5a3cead2b82" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941", + "displayName": "s_border", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 48, + "height": 48, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 9, + "borderBottom": 15, + "borderLeft": 8, + "borderRight": 10, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e0c075bf-922a-400b-ba33-c5a3cead2b82@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_color.png b/cx-framework3.1/cx/prefab/s_color.png new file mode 100644 index 0000000..552e5bf Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_color.png differ diff --git a/cx-framework3.1/cx/prefab/s_color.png.meta b/cx-framework3.1/cx/prefab/s_color.png.meta new file mode 100644 index 0000000..d3be105 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_color.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74@6c48a", + "displayName": "s_color", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "5907f4b0-7090-4266-82ce-b88a85e49a74" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74@f9941", + "displayName": "s_color", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 48, + "height": 48, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "5907f4b0-7090-4266-82ce-b88a85e49a74@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "5907f4b0-7090-4266-82ce-b88a85e49a74@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_confirm_bg.png b/cx-framework3.1/cx/prefab/s_confirm_bg.png new file mode 100644 index 0000000..c5ff4e6 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_confirm_bg.png differ diff --git a/cx-framework3.1/cx/prefab/s_confirm_bg.png.meta b/cx-framework3.1/cx/prefab/s_confirm_bg.png.meta new file mode 100644 index 0000000..9939968 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_confirm_bg.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91@6c48a", + "displayName": "s_confirm_bg", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e3b52bb7-1217-459e-8db8-dc485e24ad91" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941", + "displayName": "s_confirm_bg", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 600, + "height": 400, + "rawWidth": 600, + "rawHeight": 400, + "borderTop": 141, + "borderBottom": 168, + "borderLeft": 200, + "borderRight": 211, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e3b52bb7-1217-459e-8db8-dc485e24ad91@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_confirm_no.png b/cx-framework3.1/cx/prefab/s_confirm_no.png new file mode 100644 index 0000000..0b6d63a Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_confirm_no.png differ diff --git a/cx-framework3.1/cx/prefab/s_confirm_no.png.meta b/cx-framework3.1/cx/prefab/s_confirm_no.png.meta new file mode 100644 index 0000000..1891fe4 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_confirm_no.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab@6c48a", + "displayName": "s_confirm_no", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "059bf95b-35d1-48c6-b935-be1423bc41ab" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941", + "displayName": "s_confirm_no", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "059bf95b-35d1-48c6-b935-be1423bc41ab@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_confirm_yes.png b/cx-framework3.1/cx/prefab/s_confirm_yes.png new file mode 100644 index 0000000..eb723ed Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_confirm_yes.png differ diff --git a/cx-framework3.1/cx/prefab/s_confirm_yes.png.meta b/cx-framework3.1/cx/prefab/s_confirm_yes.png.meta new file mode 100644 index 0000000..66ef1f3 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_confirm_yes.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@6c48a", + "displayName": "s_confirm_yes", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "eec5716c-2f55-4a2e-a1b8-fdb78284b125" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941", + "displayName": "s_confirm_yes", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_loading.png b/cx-framework3.1/cx/prefab/s_loading.png new file mode 100755 index 0000000..32e184c Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_loading.png differ diff --git a/cx-framework3.1/cx/prefab/s_loading.png.meta b/cx-framework3.1/cx/prefab/s_loading.png.meta new file mode 100644 index 0000000..bd536c9 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_loading.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2@6c48a", + "displayName": "s_loading", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "84e624e8-b14f-4ef5-8867-cc43b179bff2" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941", + "displayName": "s_loading", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 1, + "trimY": 1, + "width": 109, + "height": 109, + "rawWidth": 111, + "rawHeight": 111, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "84e624e8-b14f-4ef5-8867-cc43b179bff2@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_none.png b/cx-framework3.1/cx/prefab/s_none.png new file mode 100755 index 0000000..2b945a5 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_none.png differ diff --git a/cx-framework3.1/cx/prefab/s_none.png.meta b/cx-framework3.1/cx/prefab/s_none.png.meta new file mode 100644 index 0000000..1f23857 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_none.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee@6c48a", + "displayName": "s_none", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "b75f295b-153f-4147-b5cb-abe1c0371fee" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee@f9941", + "displayName": "s_none", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 23.5, + "offsetY": -23.5, + "trimX": 47, + "trimY": 47, + "width": 1, + "height": 1, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "b75f295b-153f-4147-b5cb-abe1c0371fee@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "b75f295b-153f-4147-b5cb-abe1c0371fee@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_picker_no.png b/cx-framework3.1/cx/prefab/s_picker_no.png new file mode 100644 index 0000000..ab31503 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_picker_no.png differ diff --git a/cx-framework3.1/cx/prefab/s_picker_no.png.meta b/cx-framework3.1/cx/prefab/s_picker_no.png.meta new file mode 100644 index 0000000..51b49f3 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_picker_no.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741@6c48a", + "displayName": "s_picker_no", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "99dba72d-3365-4300-a6b3-cbc7a332d741" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941", + "displayName": "s_picker_no", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "99dba72d-3365-4300-a6b3-cbc7a332d741@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_picker_yes.png b/cx-framework3.1/cx/prefab/s_picker_yes.png new file mode 100644 index 0000000..43c7e6e Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_picker_yes.png differ diff --git a/cx-framework3.1/cx/prefab/s_picker_yes.png.meta b/cx-framework3.1/cx/prefab/s_picker_yes.png.meta new file mode 100644 index 0000000..bdfe989 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_picker_yes.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@6c48a", + "displayName": "s_picker_yes", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941", + "displayName": "s_picker_yes", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941" + } +} diff --git a/cx-framework3.1/cx/prefab/s_shadow.png b/cx-framework3.1/cx/prefab/s_shadow.png new file mode 100644 index 0000000..7919059 Binary files /dev/null and b/cx-framework3.1/cx/prefab/s_shadow.png differ diff --git a/cx-framework3.1/cx/prefab/s_shadow.png.meta b/cx-framework3.1/cx/prefab/s_shadow.png.meta new file mode 100644 index 0000000..28f2136 --- /dev/null +++ b/cx-framework3.1/cx/prefab/s_shadow.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0@6c48a", + "displayName": "s_shadow", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e46d2d74-d301-43b0-a0c7-c82b558297d0" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941", + "displayName": "s_shadow", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 11, + "height": 36, + "rawWidth": 11, + "rawHeight": 36, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e46d2d74-d301-43b0-a0c7-c82b558297d0@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941" + } +} diff --git a/cx-framework3.1/cx/scripts.meta b/cx-framework3.1/cx/scripts.meta new file mode 100644 index 0000000..a011dd5 --- /dev/null +++ b/cx-framework3.1/cx/scripts.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "dd121554-2c98-4301-b414-f9c1fc7d31bb", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.mainScene.ts b/cx-framework3.1/cx/scripts/cxui.mainScene.ts new file mode 100644 index 0000000..c41d47f --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.mainScene.ts @@ -0,0 +1,13 @@ + +import {_decorator, Component, setDisplayStats} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.MainScene') +class CxuiMainScene extends Component +{ + onLoad () + { + setDisplayStats(false); + cx.init(this); + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.mainScene.ts.meta b/cx-framework3.1/cx/scripts/cxui.mainScene.ts.meta new file mode 100644 index 0000000..21bcc09 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.mainScene.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "78daf419-e3cc-4573-a291-c945d1cb2218", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/scripts/cxui.nativeMask.ts b/cx-framework3.1/cx/scripts/cxui.nativeMask.ts new file mode 100644 index 0000000..8ef1f06 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.nativeMask.ts @@ -0,0 +1,79 @@ + +import {_decorator, Component, Node, Rect} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.nativeMask') +class CxuiNativeMask extends Component +{ + maskName?: string; + maskRect?: Rect; + monitorNode?: Node; + monitorNodePriorX?: number; + init (page: Component, node: Node, x: number, y: number, width: number, height: number): string + { + if (!cx.os.native) + return ""; + this.maskName = "cxNativeMask" + (++cx.uid); + this.maskRect = cx.convertToDeviceSize(node, x, y, width, height); + cx.native.ins("cx.mask").call("createMask", [this.maskName, this.maskRect.x, this.maskRect.y, this.maskRect.width, this.maskRect.height]); + return this.maskName; + } + + onEnable () + { + this.maskName && cx.native.ins("cx.mask").call("setMaskVisible", [this.maskName, true]); + } + + onDisable () + { + this.maskName && cx.native.ins("cx.mask").call("setMaskVisible", [this.maskName, false]); + } + + onDestroy () + { + this.maskName && cx.native.ins("cx.mask").call("removeMask", [this.maskName]); + } + + //设置监控节点,mask的宽度将随着node的x位置改变,不遮挡住node + //todo: 目前仅实现横向不遮挡,对于底部上升的纵向node未处理 + setMonitorNode (node: Node) + { + this.monitorNode = node; + this.monitorNodePriorX = node.getPosition().x; + } + + setMaskSize (width: number, height: number) + { + this.maskName && cx.native.ins("cx.mask").call("setMaskSize", [this.maskName, width, height]); + } + + setMaskMask (x: number, y: number, width: number, height: number, radius: number) + { + this.maskName && cx.native.ins("cx.mask").call("setMaskMask", [this.maskName, x, y, width, height, radius]); + } + + clearMaskMask () + { + this.maskName && cx.native.ins("cx.mask").call("clearMaskMask", [this.maskName]); + } + + update () + { + if (!this.maskName) + return; + if (this.monitorNode) + { + if (!this.monitorNode.active) + { + this.monitorNode = undefined; + return; + } + if (this.monitorNodePriorX == this.monitorNode.getPosition().x) + return; + this.monitorNodePriorX = this.monitorNode.getPosition().x; + var p = cx.convertToDeviceSize(undefined, this.monitorNodePriorX, 0); + var width = Math.min(this.maskRect!.width, Math.max(0, p.x - this.maskRect!.x)); + this.setMaskSize(width, this.maskRect!.height); + } + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.nativeMask.ts.meta b/cx-framework3.1/cx/scripts/cxui.nativeMask.ts.meta new file mode 100644 index 0000000..1f370b4 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.nativeMask.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "e70ce5e6-573a-4fab-ad1c-dace0edc0024", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/scripts/cxui.page.ts b/cx-framework3.1/cx/scripts/cxui.page.ts new file mode 100644 index 0000000..94f670f --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.page.ts @@ -0,0 +1,71 @@ + +import {_decorator, Component, Node, EventTouch, Tween, tween} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.page') +class CxuiPage extends Component +{ + onLoad () + { + cx.makeNodeMap(this.node); + this.node.on(Node.EventType.TOUCH_START, (event: EventTouch) => + { + event.propagationStopped = true; + }); + } + + /* 在page的onLoad事件中可修改以下属性,变更默认的进出动画 + this.initPx: 初始位置 + this.initPy: 初始位置 + this.moveInAction: 进入动画 + this.nextInAction: 进入时,上一页面的动画 + this.moveOutAction: 关闭动画 + this.nextOutAction: 关闭时,上一页面的动画 + */ + public initPx?: number; + public initPy?: number; + public moveInAction?: Tween; + public nextInAction?: Tween; + public moveOutAction?: Tween; + public nextOutAction?: Tween; + runActionShow () + { + if (cx.os.android) + this.node.androidBackHandler = "closePage"; + if (cx.config.pageActionDisabled || this.node.pageActionDisabled) + return; + var x = this.initPx != undefined ? this.initPx : cx.defaultInitPx; + var y = this.initPy != undefined ? this.initPy : cx.defaultInitPy; + this.node.setPosition(x, y); + tween(this.node).then(this.moveInAction || cx.defaultMoveInAction).start(); + + var priorPage = cx.getTopPage(-1); + if (priorPage) + { + tween(priorPage).then(this.nextInAction || cx.defaultNextInAction).start(); + var priorMask: any = priorPage.getComponent("cxui.nativeMask"); + if (priorMask) + priorMask.setMonitorNode(this.node); + } + } + + runActionClose () + { + var priorPage = cx.getTopPage(-1); + if (priorPage && priorPage.mainComponent && priorPage.mainComponent.onChildPageClosed) + priorPage.mainComponent.onChildPageClosed.call(priorPage.mainComponent, this.node.mainComponent); + if (cx.config.pageActionDisabled || this.node.pageActionDisabled) + { + this.node.destroy(); + return; + } + tween(this.node).then(this.moveOutAction || cx.defaultMoveOutAction).call(()=>{this.node.destroy();}).start(); + if (priorPage) + { + tween(priorPage).then(this.nextOutAction || cx.defaultNextOutAction).start(); + // var priorMask = priorPage.getComponent("cxui.nativeMask"); + // if (priorMask) + // priorMask.setMonitorNode(); + } + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.page.ts.meta b/cx-framework3.1/cx/scripts/cxui.page.ts.meta new file mode 100644 index 0000000..a5c956c --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.page.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "ad451481-a8b8-4d3a-9f12-4a138481898b", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/scripts/cxui.pageView.ts b/cx-framework3.1/cx/scripts/cxui.pageView.ts new file mode 100644 index 0000000..c58cbbe --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.pageView.ts @@ -0,0 +1,106 @@ + +import {_decorator, Component, Node, PageView, EventTouch} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.pageView') +class CxuiPageView extends Component +{ + page!: Component; + pageView!: PageView; + loop: boolean = false; + callback?: Function; + slideEventDisabled?: boolean; + autoScrollDisabled: number = 0; + cancelClickCallback!: boolean; + + //添加自动滚动及循环滚动能力 + //autoScrollSeconds: 自动滚动间隔秒 + //loop: 是否循环滚动 + initAutoScroll (page: Component, viewName: string, autoScrollSeconds: number, loop: boolean, callback?: Function) + { + var view: Node = cx.gn(page, viewName); + this.page = page; + this.pageView = view.getComponent(PageView)!; + this.loop = loop; + this.callback = callback; + + if (autoScrollSeconds > 0) + { + this.schedule(this.autoScroll, autoScrollSeconds); + view.on(Node.EventType.TOUCH_START, this.onTouchStart, this); + view.on(Node.EventType.TOUCH_MOVE, this.onTouchMove, this); + view.on(Node.EventType.TOUCH_END, this.onTouchEnd, this); + view.on(Node.EventType.TOUCH_CANCEL, this.onTouchCancel, this); + } + + if (loop) + { + view.on(PageView.EventType.SCROLL_ENDED, this.onScrollEnded, this); + } + + this.slideEventDisabled = this.node.slideEventDisabled; + } + + onTouchStart (event: EventTouch) + { + this.autoScrollDisabled = 2; + this.node.slideEventDisabled = true; + this.cancelClickCallback = false; + } + + onTouchMove (event: EventTouch) + { + this.cancelClickCallback = this.cancelClickCallback || (Math.abs(event.getLocation().x - event.getStartLocation().x) > 15 || Math.abs(event.getLocation().y - event.getStartLocation().y) > 15); + } + + onTouchEnd () + { + this.onTouchCancel(); + !this.cancelClickCallback && this.callback && this.callback.call(this.page, this.pageView.getPages()[this.pageView.getCurrentPageIndex()]); + } + + onTouchCancel () + { + this.autoScrollDisabled = 1; //有操作干扰,忽略一次自动滚动 + this.node.slideEventDisabled = this.slideEventDisabled; + } + + autoScroll () + { + if (this.autoScrollDisabled) + { + if (this.autoScrollDisabled == 1) + this.autoScrollDisabled = 0; + return; + } + + var pages = this.pageView.getPages(); + if (pages.length > 1) + { + var currentIndex = this.pageView.getCurrentPageIndex(); + if (currentIndex < pages.length - 1) + this.pageView.scrollToPage(currentIndex + 1, 1.5); + } + } + + onScrollEnded () + { + var pages = this.pageView.getPages(); + var currentIndex = this.pageView.getCurrentPageIndex(); + if (currentIndex == pages.length - 1) + { + var first = pages[0]; + this.pageView.removePage(first); + this.pageView.addPage(first); + } + else if (currentIndex == 0) + { + var last = pages[pages.length - 1]; + last.active = false; + this.pageView.removePage(last); + this.pageView.insertPage(last, 0); + this.pageView.scrollToPage(1, 0); + last.active = true; + } + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.pageView.ts.meta b/cx-framework3.1/cx/scripts/cxui.pageView.ts.meta new file mode 100644 index 0000000..a055ad7 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.pageView.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "dae97eb7-eaab-4ae6-936c-ca644ba3152c", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/scripts/cxui.safearea.ts b/cx-framework3.1/cx/scripts/cxui.safearea.ts new file mode 100644 index 0000000..27fa8a4 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.safearea.ts @@ -0,0 +1,38 @@ + +import {_decorator, Component, Widget, UITransform, CCInteger} from 'cc'; +const {ccclass, property} = _decorator; + +@ccclass('cxui.safearea') +class CxuiSafearea extends Component +{ + @property + private safeHeight = 170; + + @property + private safeWidgetTop = 0; + + @property + private safeWidgetBottom = 0; + + onLoad () + { + if (cx.os.native && !cx.os.android && cx.sh/cx.sw > 1.8) + { + if (this.safeHeight) + { + var uiTransform = this.node.getComponent(UITransform); + uiTransform?.setContentSize(uiTransform.width, this.safeHeight); + } + + if (this.safeWidgetTop || this.safeWidgetBottom) + { + var widget = this.node.getComponent(Widget); + if (widget) + { + widget.top = this.safeWidgetTop; + widget.bottom = this.safeWidgetBottom; + } + } + } + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.safearea.ts.meta b/cx-framework3.1/cx/scripts/cxui.safearea.ts.meta new file mode 100644 index 0000000..bac2cc0 --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.safearea.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "de62e376-60c0-4f13-9de6-89796aaf27c1", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/scripts/cxui.scrollView.ts b/cx-framework3.1/cx/scripts/cxui.scrollView.ts new file mode 100644 index 0000000..f4d38de --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.scrollView.ts @@ -0,0 +1,131 @@ + +import {_decorator, Component, Node, ScrollView, UITransform, Sprite, tween, v3} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.scrollView') +class CxuiScrollView extends Component +{ + page!: Component; + view!: Node; + queryHandler?: Function; + emptyNode!: Node; + + refreshPage!: Component; + refreshView!: Node; + refreshScrollView!: ScrollView; + refreshHandler?: Function; + refreshNode!: Node; + inRefresh: boolean = false; + waitRefresh: boolean = false; + + //添加增量加载数据功能 + initDeltaInsert (page: Component, viewName: string, queryHandler: Function) + { + this.page = page; + this.view = cx.gn(page, viewName); + this.queryHandler = queryHandler; + + this.view.on("scrolling", this.viewScrolling, this); + + this.emptyNode = new Node(); + this.emptyNode.addComponent(UITransform).height = this.view.getComponent(UITransform)!.height/2; + this.emptyNode.active = false; + var scrollView: ScrollView = this.view.getComponent(ScrollView)!; + scrollView.content!.addChild(this.emptyNode); + this.emptyNode.setSiblingIndex(1000000); + return this; + } + + overDeltaInsert (noMoreData: boolean) + { + if (!this.page) + return; + this.emptyNode.active = false; + if (noMoreData) + this.view.off("scrolling", this.viewScrolling, this); + } + + viewScrolling (view: ScrollView) + { + if (!this.emptyNode.active && view.node.getHeight()/2 < view.content!.getPosition().y && + view.content!.getHeight()/2 - view.content!.getPosition().y < view.node.getHeight()/2) + { + this.emptyNode.active = true; + this.queryHandler && this.queryHandler.call(this.page); + } + } + + //添加下拉刷新功能 + initDropRefresh (page: Component, viewName: string, refreshHandler: Function) + { + this.refreshPage = page; + this.refreshView = cx.gn(page, viewName); + this.refreshScrollView = this.refreshView.getComponent(ScrollView) as ScrollView; + this.refreshHandler = refreshHandler; + + this.refreshView.on("scrolling", this.viewRefreshScrolling, this); + this.refreshView.on("touch-up", this.viewRefreshTouchUp, this); + + var refreshNode = new Node(); + refreshNode.addComponent(UITransform); + refreshNode.setPosition(0, this.refreshView.getComponent(UITransform)!.height*2); + + var labelNode: Node = cx.createLabelNode("下拉刷新", 28, "777777"); + refreshNode.addChild(labelNode); + refreshNode.pro().labelNode = labelNode; + + var imageNode = new Node(); + cx.res.setImageFromBundle(imageNode, "cx.prefab/s_loading", Sprite.SizeMode.TRIMMED); + imageNode.setScale(0.6, 0.6); + refreshNode.addChild(imageNode); + refreshNode.pro().imageNode = imageNode; + + this.refreshNode = refreshNode; + this.refreshScrollView.content!.parent!.addChild(refreshNode); + this.refreshNode.setSiblingIndex(-1000000); + return this; + } + + viewRefreshScrolling (view: ScrollView) + { + if (this.inRefresh || view.node.getHeight()/2 <= view.content!.getPosition().y) + return; + + var delta = view.node.getHeight()/2 - view.content!.getPosition().y; + this.waitRefresh = delta > 150; + this.refreshNode.setPosition(0, view.content!.getPosition().y + 60); + this.refreshNode.pro().imageNode.active = this.inRefresh || delta > 150; + this.refreshNode.pro().labelNode.active = !this.refreshNode.pro().imageNode.active; + } + + viewRefreshTouchUp (view: ScrollView) + { + if (this.waitRefresh) + { + view.cx_refreshTopGap = 120; + this.inRefresh = true; + this.waitRefresh = false; + view.node.pauseSystemEvents(true); + tween(this.refreshNode).to(0.1, {position:v3(0, view.node.getHeight()/2-60)}).delay(0.1).call(()=> + { + this.refreshHandler && this.refreshHandler.call(this.refreshPage); + }).start(); + if (this.refreshNode.pro().loadingTween) + this.refreshNode.pro().loadingTween.start(); + else + this.refreshNode.pro().loadingTween = tween(this.refreshNode.pro().imageNode).repeatForever(tween().by(0, {angle:-30}).delay(0.07)).start(); + } + } + + overDropRefresh () + { + if (!this.inRefresh) + return; + this.inRefresh = false; + this.refreshScrollView.cx_refreshTopGap = 0; + this.refreshScrollView.startAutoScroll(v3(0,120,0), 0.5, true); + this.refreshView.resumeSystemEvents(true); + this.refreshNode.pro().loadingTween.stop(); + this.refreshNode.pro().imageNode.angle = 0; + } +} diff --git a/cx-framework3.1/cx/scripts/cxui.scrollView.ts.meta b/cx-framework3.1/cx/scripts/cxui.scrollView.ts.meta new file mode 100644 index 0000000..a7852fd --- /dev/null +++ b/cx-framework3.1/cx/scripts/cxui.scrollView.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "a1949e42-d9be-4b29-b399-a81b156b6916", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx-framework3.1/cx/template.meta b/cx-framework3.1/cx/template.meta new file mode 100644 index 0000000..0ef3eae --- /dev/null +++ b/cx-framework3.1/cx/template.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "269169f6-e49d-4566-b590-9923cad1c901", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx-framework3.1/cx/template/cx.imageLabel.prefab b/cx-framework3.1/cx/template/cx.imageLabel.prefab new file mode 100644 index 0000000..021a48a --- /dev/null +++ b/cx-framework3.1/cx/template/cx.imageLabel.prefab @@ -0,0 +1,359 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.imageLabel", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 8 + } + ], + "_active": true, + "_components": [ + { + "__id__": 14 + } + ], + "_prefab": { + "__id__": 16 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "img", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + } + ], + "_prefab": { + "__id__": 7 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ccbwt3hphNw6+jS5ifm9B6" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": { + "__id__": 13 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -32, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 5.33, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 12 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 24, + "_fontSize": 24, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f0OQ1bx+NJL4qBU8raE5Ln" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/template/cx.imageLabel.prefab.meta b/cx-framework3.1/cx/template/cx.imageLabel.prefab.meta new file mode 100644 index 0000000..f036125 --- /dev/null +++ b/cx-framework3.1/cx/template/cx.imageLabel.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "2caacf7d-7295-4bfe-878d-15e3cc35306a", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.imageLabel" + } +} diff --git a/cx-framework3.1/cx/template/cx.page.prefab b/cx-framework3.1/cx/template/cx.page.prefab new file mode 100644 index 0000000..42f2474 --- /dev/null +++ b/cx-framework3.1/cx/template/cx.page.prefab @@ -0,0 +1,1539 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.page", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 46 + } + ], + "_active": true, + "_components": [ + { + "__id__": 63 + }, + { + "__id__": 65 + } + ], + "_prefab": { + "__id__": 67 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + }, + { + "__id__": 34 + }, + { + "__id__": 41 + }, + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 303 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 36 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": false, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 1, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_scrollView": { + "__id__": 34 + }, + "_handle": { + "__id__": 23 + }, + "_direction": 1, + "_enableAutoHide": false, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 32 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_alignFlags": 45, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "29Aszw4p5MoZS4TTUEuGcm" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 47 + }, + { + "__id__": 56 + } + ], + "_active": true, + "_components": [ + { + "__id__": 59 + }, + { + "__id__": 60 + }, + { + "__id__": 61 + }, + { + "__id__": 62 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [ + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 55 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + }, + { + "__id__": 53 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 57 + }, + { + "__id__": 58 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "标题", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 41, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 66 + }, + "_alignFlags": 21, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx-framework3.1/cx/template/cx.page.prefab.meta b/cx-framework3.1/cx/template/cx.page.prefab.meta new file mode 100644 index 0000000..bcdfdd3 --- /dev/null +++ b/cx-framework3.1/cx/template/cx.page.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "cd447ecc-8b0e-433f-b598-c063640d1409", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.page" + } +} diff --git a/cx3-demo.apk b/cx3-demo.apk new file mode 100644 index 0000000..531edca Binary files /dev/null and b/cx3-demo.apk differ diff --git a/cx3-demo/assets/cx.meta b/cx3-demo/assets/cx.meta new file mode 100644 index 0000000..7599d4e --- /dev/null +++ b/cx3-demo/assets/cx.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "a537ab7e-3301-4615-b2ff-a64b9bbcf527", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/cx/core.meta b/cx3-demo/assets/cx/core.meta new file mode 100644 index 0000000..722ee02 --- /dev/null +++ b/cx3-demo/assets/cx/core.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "22cfb89f-3438-44eb-88b0-297381f69f2f", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/cx/core/cx.adapt.ts b/cx3-demo/assets/cx/core/cx.adapt.ts new file mode 100644 index 0000000..ab1dd5e --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.adapt.ts @@ -0,0 +1,105 @@ +import * as cc from 'cc'; + +cc.Node.prototype.pro = function() +{ + if (!this._pro) + this._pro = {}; + return this._pro; +}; + +cc.Node.prototype.getWidth = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).width; +}; + +cc.Node.prototype.getHeight = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).height; +}; + +cc.Node.prototype.getContentSize = function() +{ + return (this.getComponent(cc.UITransform) || this.addComponent(cc.UITransform)).contentSize; +}; + +cc.Node.prototype.setTouchCallback = function(target:any, callback?:Function, ...params:any) +{ + if (!callback) + { + this.off(cc.Node.EventType.TOUCH_END); + return; + } + this.on(cc.Node.EventType.TOUCH_END, (event: cc.EventTouch) => + { + if (Math.abs(event.getLocation().x - event.getStartLocation().x) > 15 || Math.abs(event.getLocation().y - event.getStartLocation().y) > 15) + return; + if (cx.touchLockTimelen < 0) + return; + var t = cx.utils.getCurrSecond(true); + if (t - cx.touchPriorSecond >= cx.touchLockTimelen) + { + cx.touchPriorSecond = t; + cx.touchLockTimelen = 250; + callback && callback.apply(target, params != undefined ? [this].concat(params) : params); + } + }); +}; + +var prototype: any = cc.ScrollView.prototype; +prototype.startAutoScroll = prototype._startAutoScroll; + +//将ScrollView的content最小高度设置为ScrollView的高度,且初始位置定位到顶部 +prototype._adjustContentOutOfBoundaryOrigin = prototype._adjustContentOutOfBoundary; +prototype._adjustContentOutOfBoundary = function() +{ + ////blank + var that: any = this; + if (!that._content) + return; + var contentTransform = that._content.getComponent(cc.UITransform); + if (contentTransform.contentSize.height < that.view.contentSize.height) + { + that.view.getComponent(cc.Widget)?.updateAlignment(); + contentTransform.setContentSize(contentTransform.contentSize.width, that.view.contentSize.height); + } + + this._adjustContentOutOfBoundaryOrigin(); +}; + +//下拉刷新时,顶部回弹到cx_refreshTopGap位置 cx_refreshTopGap=120 +prototype._flattenVectorByDirection = function(vector: cc.Vec3) +{ + const result = vector; + result.x = this.horizontal ? result.x : 0; + result.y = this.vertical ? result.y : 0; + + ////blank + var that: any = this; + if (that.cx_refreshTopGap && result.y > that.cx_refreshTopGap) + result.y -= that.cx_refreshTopGap; + + return result; +}; + +//PageView指示器优先按Page.dataIndex值指示,且page数量为1时不显示 +cc.PageViewIndicator.prototype._changedState = function () +{ + var that: any = this; + var indicators = that._indicators; + if (indicators.length === 0) + return; + var page = that._pageView.getPages()[that._pageView.curPageIdx]; + var dataIndex = page && page.pro().dataIndex; + var idx = dataIndex != undefined ? dataIndex : that._pageView.curPageIdx; + if (idx >= indicators.length) return; + var uiComp; + for (var i = 0; i < indicators.length; ++i) + { + var node = indicators[i]; + uiComp = node._uiProps.uiComp; + if (uiComp) + uiComp.color = cc.color(uiComp.color.r, uiComp.color.g, uiComp.color.b, i != idx ? 255/2 : 255); + } +}; + + diff --git a/cx3-demo/assets/cx/core/cx.adapt.ts.meta b/cx3-demo/assets/cx/core/cx.adapt.ts.meta new file mode 100644 index 0000000..6f2488a --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.adapt.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "bf4f5efb-16d9-4df5-9888-f51aa81eaa26", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.define.ts b/cx3-demo/assets/cx/core/cx.define.ts new file mode 100644 index 0000000..c89104f --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.define.ts @@ -0,0 +1,44 @@ +import * as cc from 'cc'; + +import native from "./cx.native"; +import picker from "./cx.picker"; +import res from "./cx.res"; +import script from "./cx.script"; +import serv from "./cx.serv"; +import sys from "./cx.sys"; +import ui from "./cx.ui"; +import utils from "./cx.utils"; + +class cx extends ui +{ + static native = native; + static picker = picker; + static res = res; + static script = script; + static serv = serv; + static sys = sys; + static utils = utils; + + static config = sys.config; + static os = sys.os; + + static log = console.log; + + static init(mainScene: cc.Component) + { + console.log("..... cx init (framework: " + sys.version + ") ....."); + + sys.init(); + ui.init(mainScene); + + if (!sys.config.debug) + this.log = function(){}; + + console.log("..... cx init success (sw:" + ui.sw + ", sh:" + ui.sh + ") ....."); + } +} + +window.cx = window.cx || cx; + + + diff --git a/cx3-demo/assets/cx/core/cx.define.ts.meta b/cx3-demo/assets/cx/core/cx.define.ts.meta new file mode 100644 index 0000000..e594c6f --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.define.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "09fe4b13-8d70-477f-9e93-1b76c37ba3cb", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.native.ts b/cx3-demo/assets/cx/core/cx.native.ts new file mode 100644 index 0000000..1345027 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.native.ts @@ -0,0 +1,44 @@ +import sys from './cx.sys'; + +export default class native +{ + static androidIntf: any = {}; + static undefinedIns = {call:function(){return "";}}; + + static ins (name: string): any + { + if (!sys.os.native) + return this.undefinedIns; + + //非android使用jsb c++ + if (!sys.os.android || name == "cx") + return typeof cxnative != "undefined" && cxnative.NativeCreator.createNativeClass(name) || this.undefinedIns; + + //android使用jsb.reflection + if (!jsb.reflection) + { + console.log("!!!!! error: jsb.reflection is undefined !!!!!"); + return this.undefinedIns; + } + + var intf = this.androidIntf[name]; + if (!intf) + { + intf = this.androidIntf[name] = {}; + intf.name = name, + intf.call = (function(fname: string, params: any[], callback?: Function) + { + intf.callback = callback; + return jsb.reflection.callStaticMethod("cx/NativeIntf", "call", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", + intf.name, fname, params && params.join("#@#") || ""); + }).bind(intf); + } + return intf; + } + + static androidCallback (name: string, v1: number, v2: string) + { + var intf = native.androidIntf[name]; + intf && intf.callback && intf.callback(v1, v2); + } +} \ No newline at end of file diff --git a/cx3-demo/assets/cx/core/cx.native.ts.meta b/cx3-demo/assets/cx/core/cx.native.ts.meta new file mode 100644 index 0000000..72058eb --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.native.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "b97ea3bc-cb32-4fc9-bfb4-a52dab76bdf9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.picker.ts b/cx3-demo/assets/cx/core/cx.picker.ts new file mode 100644 index 0000000..f252c7b --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.picker.ts @@ -0,0 +1,326 @@ +import * as cc from 'cc'; +import res from './cx.res'; +import ui from './cx.ui'; + +export default class picker +{ + //dataList数组对象属性包括: + //data:数据列表,[""或{}],如果是{},需指定显示字段display + //index: 默认初始定位index + //suffix: 在数据后加上该字串 + //ex: (callback, [{data:["a", "b"], index:0, suffix:""}, {...}]) + //ex: (callback, [{data:[{id:"a", name:"b"}], display:"name", index:0, suffix:"年"}, {...}]) + static create (page: cc.Component, callback: Function | undefined, dataList: any[]) + { + return new OptionPicker(page, callback, dataList); + } + + //创建年月日选择,默认值:yearData:当前年,year:当前年,monthData:所有月,month:当前月,dayData:1~31天,dy:当前天 + //ex: (this, callback) + static createYearMonthDay (page: cc.Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number, dayData?: any[], day?: number) + { + var d = new Date(); + yearData = yearData ? yearData : this.year(); + monthData = monthData ? monthData : this.month(); + dayData = dayData ? dayData : this.day(); + var yearIndex = yearData.indexOf(year ? year : d.getFullYear()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + var dayIndex = dayData.indexOf(day ? day : d.getDate()); + return new OptionPickerYearMonthDay(page, callback, [ + {data: yearData, index: yearIndex, suffix: "年"}, + {data: monthData, index: monthIndex, suffix: "月"}, + {data: dayData, index: dayIndex, suffix: "日"}]); + } + + //创建年月选择,默认值:yearData:当前年,year:当前年,monthData:所有月,month:当前月 + //返回值,选中年、月值:callback(2016, 7)----非索引,以下年月日相关的,都是如此 + //ex: (callback, cx.picker.year(-3, 0), null, cx.picker.month(1, 0), null) + static createYearMonth (page: cc.Component, callback: Function | undefined, yearData?: any[], year?: number, monthData?: any[], month?: number) + { + var d = new Date(); + yearData = yearData ? yearData : this.year(); + monthData = monthData ? monthData : this.month(); + var yearIndex = yearData.indexOf(year ? year : d.getFullYear()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + return new OptionPicker(page, callback, [ + {data: yearData, index: yearIndex, suffix: "年"}, + {data: monthData, index: monthIndex, suffix: "月"}]); + } + + //创建月日选择, 默认值:monthData:所有月,month:当前月,dayData:1~31天,day:当前天 + static createMonthDay (page: cc.Component, callback: Function | undefined, monthData?: any[], month?: number, dayData?: any[], day?: number) + { + var d = new Date(); + monthData = monthData ? monthData : this.month(); + dayData = dayData ? dayData : this.day(); + var dayIndex = dayData.indexOf(day ? day : d.getDate()); + var monthIndex = monthData.indexOf(month ? month : (d.getMonth() + 1)); + return new OptionPickerMonthDay(page, callback, [ + {data: monthData, index: monthIndex, suffix: "月"}, + {data: dayData, index: dayIndex, suffix: "日"}]); + } + + //创建时分选择 + static createHourMinute (page: cc.Component, callback: Function | undefined, hourData?: any[], hour?: number, minuteData?: any[], minute?: number) + { + hourData = hourData ? hourData : this.number(0, 23); + minuteData = minuteData ? minuteData : this.number(0, 59); + var hourIndex = hourData.indexOf(hour ? hour : 0); + var minuIndex = minuteData.indexOf(minute ? minute : 0); + return new OptionPicker(page, callback, [ + {data: hourData, index: hourIndex, suffix: "时"}, + {data: minuteData, index: minuIndex, suffix: "分"}]); + } + + //生成from至to之间的数值数组,label为后缀,默认值:label:undefined + //ex: (10, 100, "万") + static number (from?: number, to?: number, label?: string): any[] + { + var d = []; + if (from != undefined && to != undefined) + for (var i = from; i <= to; i++) + d.push(label ? i + "" + label : i); + return d; + } + + //生成form至to之间的年数组,默认值:from:undefined -- 当前年 + //ex: (2010, 2016) + //ex: (-3, 0) //当前年-3 至 当前年 + static year (from?: number, to?: number): any[] + { + from = from || 0; + to = to || 0; + var y = new Date().getFullYear(); + if (Math.abs(from) < 1000) from += y; + if (Math.abs(to) < 1000) to += y; + return this.number(from, to); + } + + //生成from至to之间的月数组,from=0则为当前月,to=0则为当前月,默认值:from=1,to=12 + //ex: (1, 0)、(0, 12)、() + static month (from?: number, to?: number): any[] + { + from = from == undefined ? 1 : (from == 0 ? new Date().getMonth() + 1 : from); + to = to == undefined ? 12 : (to == 0 ? new Date().getMonth() + 1 : to); + return this.number(from, to); + } + + //生成from至to之间的月数组,默认值:from=1,to=31 + //ex: (1, 15) + static day (from?: number, to?: number): any[] + { + return this.number(from ? from : 1, to ? to : 31); + } +}; + +//选择器ScrollView +class OptionPickerScrollView +{ + itemHeight = 80; + scrollView!: cc.ScrollView; + checkValidHandler?: Function; + tweenAdjust?: cc.Tween; + lastY?: number; + + constructor (view: cc.Node, data:[], defaultIndex: number, displayProperty:string, labelSuffix?: string) + { + var width = view.getWidth(); + var height = this.itemHeight = 80; + this.scrollView = view.getComponent(cc.ScrollView)!; + this.scrollView.content!.getComponent(cc.UITransform)?.setContentSize(view.getContentSize()); + + var node = new cc.Node(); + node.addComponent(cc.UITransform).setContentSize(width, height*2); + this.scrollView.content!.addChild(node); + + for (var i in data) + { + var text = displayProperty ? data[i][displayProperty] : data[i]; + var itemNode = new cc.Node(); + itemNode.addComponent(cc.UITransform).setContentSize(width, height); + itemNode.addChild(ui.createLabelNode(labelSuffix ? text + labelSuffix : text, 32, "000000")); + this.scrollView.content!.addChild(itemNode); + } + + node = new cc.Node(); + node.addComponent(cc.UITransform).setContentSize(width, height*2); + this.scrollView.content!.addChild(node); + + this.scrollView.content!.getComponent(cc.Layout)!.updateLayout(); + this.setIndex(defaultIndex); + + view.on(cc.ScrollView.EventType.SCROLL_ENDED, this.onScrollEnded, this); + view.on(cc.ScrollView.EventType.SCROLLING, this.onScrolling, this); + view.on(cc.Node.EventType.TOUCH_START, this.onTouchStart, this); + } + + getIndex (): number + { + return Math.round(this.scrollView.getScrollOffset().y / this.itemHeight); + } + + setIndex (index: number) + { + this.scrollView.content!.setPosition(this.scrollView.content!.getPosition().x, index * this.itemHeight + this.scrollView.node.getHeight()); + } + + getPosition (index: number): number + { + return index * this.itemHeight; + } + + onScrollEnded (scrollView: cc.ScrollView) + { + //如果在滚动中又按下,isAutoScrolling=true + //自动滚动结束,或无自动滚动,isAutoScrolling=false + if (scrollView.isAutoScrolling()) + return; + + var p = Math.round(scrollView.getScrollOffset().y / this.itemHeight) + 1; + if (this.checkValidHandler && !this.checkValidHandler(this)) + return; + + //滚动停止时没有在label上,则调整位置 + var py = (p - 1) * this.itemHeight; + if (Math.abs(scrollView.getScrollOffset().y - py) < 1) + scrollView.content!.setPosition(scrollView.content!.getPosition().x, py + scrollView.node.getHeight()); + else + this.tweenAdjust = cc.tween(scrollView.content).to(0.5, {position:cc.v3(undefined, py + scrollView.node.getHeight())}).start(); + } + + onScrolling (scrollView: cc.ScrollView) + { + if (scrollView.isAutoScrolling()) + { + if (this.lastY != undefined && Math.abs(scrollView.getScrollOffset().y - this.lastY) < 1) + { + this.lastY = undefined; + scrollView.stopAutoScroll(); + } + else + this.lastY = scrollView.getScrollOffset().y; + } + } + + onTouchStart () + { + if (this.tweenAdjust) + { + this.tweenAdjust.stop(); + this.tweenAdjust = undefined; + } + } +} + +//选择器界面 +class OptionPicker +{ + callback?: Function; + dataList!: any[]; + viewList!: any[]; + node?: cc.Node; + page!: cc.Component; + + constructor (page: cc.Component, callback: Function | undefined, dataList: any[]) + { + this.page = page; + this.callback = callback; + this.dataList = []; + this.viewList = []; + + res.loadBundleRes(["cx.prefab/cx.picker", "cx.prefab/cx.pickerScrollView"], (assets: any[]) => + { + var node = this.node = cc.instantiate(assets[0].data); + ui.makeNodeMap(node); + ui.setAndroidBackHandler(this.close.bind(this)); + ui.gn(node, "spCancel").setTouchCallback(this, this.close, 0); + ui.gn(node, "layerMask").setTouchCallback(this, this.close, 0); + ui.gn(node, "spOk").setTouchCallback(this, this.close, 1); + + ui.mainScene.node.addChild(node); + node.getComponent(cc.Widget).updateAlignment(); + cc.tween(node).by(0.55, {position: cc.v3(undefined, 480)}, {easing: "expoOut"}).start(); + cc.tween(ui.gn(node, "layerMask").getComponent(cc.UIOpacity)).to(0.25, {opacity: 100}).start(); + + var viewParent = ui.gn(node, "layerBox"); + var viewWidth = ui.sw / dataList.length; + for (var i in dataList) + { + var obj = dataList[i]; + this.dataList.push(obj.data); + + var view: cc.Node = cc.instantiate(assets[1].data); + view.getComponent(cc.UITransform)?.setContentSize(viewWidth, view.getHeight()); + viewParent.addChild(view); + + var pickerView: OptionPickerScrollView = new OptionPickerScrollView(view, obj.data, obj.index, obj.display, obj.suffix); + if (this.checkValidHandler) + pickerView.checkValidHandler = this.checkValidHandler.bind(this); + this.viewList.push(pickerView); + } + + }); + } + + close (sender: cc.Node, flag: any) + { + if (flag && this.callback) + { + var params = []; + for (var i in this.viewList) + { + var index = this.viewList[i].getIndex(); + params.push({index: index, value: this.dataList[i][index]}); + } + this.callback.apply(this.page, params); + } + ui.gn(this.node, "layerMask").setTouchCallback(); + cc.tween(this.node).by(0.55, {position: cc.v3(0, -480)}, {easing: "expoOut"}).call(()=>{this.node?.destroy();}).start(); + cc.tween(ui.gn(this.node, "layerMask").getComponent(cc.UIOpacity)).to(0.25, {opacity: 0}).start(); + ui.setAndroidBackHandler(); + } + + checkValidHandler (scrollView: cc.ScrollView): boolean + { + return true; + } +} + +class OptionPickerMonthDay extends OptionPicker +{ + checkValidHandler (scrollView: cc.ScrollView) + { + var month = this.dataList[0][this.viewList[0].getIndex()]; + var dayIndex = this.viewList[1].getIndex(); + var day = this.dataList[1][dayIndex]; + var c = new Date(new Date().getFullYear(), month, 0).getDate(); + var d = c - day; + if (d < 0) + { + var p = this.viewList[1].getPosition(dayIndex + d); + this.viewList[1].view.scrollToOffset(cc.v2(0, p), 0.4); + return scrollView != this.viewList[1]; + } + return true; + } +} + +class OptionPickerYearMonthDay extends OptionPicker +{ + checkValidHandler (scrollView: cc.ScrollView) + { + var year = this.dataList[0][this.viewList[0].getIndex()]; + var month = this.dataList[1][this.viewList[1].getIndex()]; + var dayIndex = this.viewList[2].getIndex(); + var day = this.dataList[2][dayIndex]; + var c = new Date(year, month, 0).getDate(); + var d = c - day; + if (d < 0) + { + var p = this.viewList[2].getPosition(dayIndex + d); + this.viewList[2].view.scrollToOffset(cc.v2(0, p), 0.4); + return scrollView != this.viewList[2]; + } + return true; + } +} diff --git a/cx3-demo/assets/cx/core/cx.picker.ts.meta b/cx3-demo/assets/cx/core/cx.picker.ts.meta new file mode 100644 index 0000000..0eecd26 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.picker.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "9cbbf9f1-7d7e-42bf-a933-8313aa01f1f4", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.res.ts b/cx3-demo/assets/cx/core/cx.res.ts new file mode 100644 index 0000000..dc00d42 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.res.ts @@ -0,0 +1,95 @@ +import * as cc from 'cc'; +import serv from './cx.serv'; + +export default +{ + //从resources目录取图片 + //sizeMode: + // cc.Sprite.SizeMode.CUSTOM - 图片适应Node尺寸 + // cc.Sprite.SizeMode.TRIMMED - 图片裁剪后的尺寸 + // cc.Sprite.SizeMode.RAW - 图片原始尺寸 + setImageFromRes (spriteOrNode: any, img: string, sizeMode?: number, callback?: Function) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + cc.resources.load(img, (err: Error | null, asset: cc.ImageAsset) => + { + if (err) + cc.log("cx.serv.setImageFromRes error", err); + else + { + sprite.sizeMode = sizeMode != null ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + } + }); + }, + + //从bundle目录取图片 + setImageFromBundle (spriteOrNode: cc.Sprite | cc.Node, path: string, sizeMode?: number, callback?:Function) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + this.loadBundleRes(path, (asset: cc.ImageAsset) => + { + sprite.sizeMode = sizeMode ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + }); + }, + + //从远程取图片, localPath: 保存到本地路径,并优先从该路径取图片 + setImageFromRemote (spriteOrNode: cc.Sprite | cc.Node, url: string, localPath?: string, sizeMode?: number, callback?:Function) + { + serv.loadFile(url, localPath, function(asset: cc.ImageAsset) + { + var sprite: cc.Sprite = spriteOrNode instanceof cc.Sprite ? spriteOrNode : (spriteOrNode.getComponent(cc.Sprite) || spriteOrNode.addComponent(cc.Sprite)); + sprite.sizeMode = sizeMode != null ? sizeMode : cc.Sprite.SizeMode.CUSTOM; + var spriteFrame = new cc.SpriteFrame(); + spriteFrame.texture = asset._texture; + sprite.spriteFrame = spriteFrame; + callback && callback(sprite); + }); + }, + + //加载prefab,callback(类对象) + //ex: ("page/page1", this.xx.bind(this)) + //ex: (["page/page1", "page/page2"], this.xx.bind(this)) + //ex: ({p1:"page/page1", p2:"page/page2"}, this.xx.bind(this)) + loadBundleRes (prefab: string | string[], callback?:Function) + { + var load = function(fab: string, index?: number) + { + var p = fab.indexOf("/"); //prefab = ui/path1/page1 + var ui = p ? fab.substr(0, p) : "ui"; //ui = ui + var res = p ? fab.substr(p + 1) : fab; //res = path1/page1 + cc.assetManager.loadBundle(ui, (err, bundle) => + { + bundle.load(res, (err, asset) => + { + if (err) + cc.log("cx.serv.loadBundleRes error", err); + else if (index == undefined) + callback && callback(asset); + else + { + assets[index] = asset; + if (++loadedCount == assets.length) + callback && callback(assets.length == 1 ? assets[0] : assets); + } + }); + }); + }; + if (typeof prefab === "string") + load(prefab); + else + { + var assets = new Array(prefab.length); + var loadedCount = 0; + for (var i in prefab) + load(prefab[i], +i); + } + } +} \ No newline at end of file diff --git a/cx3-demo/assets/cx/core/cx.res.ts.meta b/cx3-demo/assets/cx/core/cx.res.ts.meta new file mode 100644 index 0000000..c00644f --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.res.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "6d1e5209-0e30-42db-bd36-eff1ab6988eb", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.script.ts b/cx3-demo/assets/cx/core/cx.script.ts new file mode 100644 index 0000000..f518246 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.script.ts @@ -0,0 +1,54 @@ +import * as cc from 'cc'; + +export default +{ + pageView: + { + initAutoScroll(page: cc.Component, viewName: string, autoScrollSeconds: number, loop: boolean, callback?: Function) + { + var script: any = page.getComponent("cxui.pageView") || page.addComponent("cxui.pageView"); + script.initAutoScroll.apply(script, arguments); + } + }, + + scrollView: + { + //添加增量加载数据功能 + initDeltaInsert (page: cc.Component, viewName: string, queryHandler: Function) + { + var script: any = page.getComponent("cxui.scrollView") || page.addComponent("cxui.scrollView"); + script.initDeltaInsert.apply(script, arguments); + }, + + //增量加载数据完成时调用 + overDeltaInsert (page: cc.Component, noMoreData: boolean) + { + var script: any = page.getComponent("cxui.scrollView"); + script && script.overDeltaInsert.call(script, noMoreData); + }, + + //添加下拉刷新功能 + initDropRefresh (page: cc.Component, viewName: string, refreshHandler: Function) + { + var script: any = page.getComponent("cxui.scrollView") || page.addComponent("cxui.scrollView"); + script.initDropRefresh.apply(script, arguments); + }, + + //下拉刷新结束时调用 + overDropRefresh (page: cc.Component) + { + var script: any = page.getComponent("cxui.scrollView"); + script && script.overDropRefresh.call(script); + } + }, + + nativeMask: + { + init (page: cc.Component, node: Node, x: number, y: number, width: number, height: number): string + { + var script: any = page.getComponent("cxui.nativeMask") || page.addComponent("cxui.nativeMask"); + return script.init.apply(script, arguments); + } + } +} + diff --git a/cx3-demo/assets/cx/core/cx.script.ts.meta b/cx3-demo/assets/cx/core/cx.script.ts.meta new file mode 100644 index 0000000..0c07545 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.script.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "5e9f4376-ed55-457b-89dc-0ae3be5c97d3", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.serv.ts b/cx3-demo/assets/cx/core/cx.serv.ts new file mode 100644 index 0000000..6845707 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.serv.ts @@ -0,0 +1,92 @@ +import * as cc from 'cc'; +import sys from './cx.sys'; + +let _commonHeaders: string[]; + +export default +{ + //取远程文件并保存到本地localPath,如果是JS,localPath无效 + loadFile (url: string, localPath?: string, callback?: Function) + { + if (!sys.os.native || !localPath) + { + this.loadAsset(url, callback); + return; + } + + if (jsb.fileUtils.isFileExist(localPath)) + { + this.loadAsset(localPath, callback); + return; + } + + this.internalRequest("GET", url, null, (ret: any) => + { + var path = localPath.substr(0, localPath.lastIndexOf("/")); + if (!jsb.fileUtils.isDirectoryExist(path)) + jsb.fileUtils.createDirectory(path); + // 3.0和3.1版本的writeDataToFile有bug,报参数错误,因此使用NativeUtils + // jsb.fileUtils.writeDataToFile(new Uint8Array(ret.data), localPath); + cxnative.NativeUtils.writeDataToFile(new Uint8Array(ret.data), localPath); + this.loadAsset(localPath, callback); + }, undefined, {responseType:'arraybuffer'}); + }, + + //取本地或远程资源文件: 图片、mp3、视频等 + loadAsset (url: string, callback?: Function) + { + cc.assetManager.loadRemote(url, function(err, asset) + { + if (err) + cc.log("cx.serv.loadAsset error", err); + else + callback && callback(asset); + }); + }, + + call (url: string, callback?: Function, context?: any) + { + this.internalRequest("GET", url, undefined, callback, context); + }, + + post (url: string, data?: any, callback?: Function, context?: any) + { + this.internalRequest("POST", url, data, callback, context); + }, + + upload (url: string, filePath: string, callback?: Function) + { + if (sys.os.native) + this.internalRequest("POST", url, jsb.fileUtils.getValueMapFromFile(filePath), callback, undefined, {headers: ['Content-Type', 'application/octet-stream']}); + }, + + setCommonHeaders (headers: string[]) + { + _commonHeaders = headers; + }, + + internalRequest (method: string, url: string, data?: any, callback?: Function, context?: any, option?: any) + { + var xhr = new XMLHttpRequest(); + xhr.onreadystatechange = function() + { + if (xhr.readyState === 4 && xhr.status === 200) + callback && callback({data:xhr.response, context:context}); + }; + if (option) + { + if (option.responseType) + { + xhr.responseType = option.responseType; + } + if (option.headers) + for (var i=0; i; + static defaultMoveOutAction: cc.Tween; + static defaultNextInAction: cc.Tween; + static defaultNextOutAction: cc.Tween; + static touchLockTimelen = 250; //ms + static touchPriorSecond = 0; + + static androidKeyBackHandler: any; + + static init (mainScene: cc.Component) + { + var size = cc.view.getCanvasSize(); + if (Math.ceil(size.height) < sys.config.designSizeMinHeight) + cc.view.setDesignResolutionSize(cc.view.getDesignResolutionSize().width, cc.view.getDesignResolutionSize().height, cc.ResolutionPolicy.FIXED_HEIGHT); + else if (Math.ceil(size.width) < sys.config.designSizeMinWidth) + cc.view.setDesignResolutionSize(cc.view.getDesignResolutionSize().width, cc.view.getDesignResolutionSize().height, cc.ResolutionPolicy.FIXED_WIDTH); + size = cc.view.getVisibleSize(); + + this.sw = Math.round(size.width); + this.sh = Math.round(size.height); + + this.defaultInitPx = this.sw; + this.defaultInitPy = 0; + this.defaultMoveInAction = cc.tween(this.rootNode).delay(0.1).to(0.55, {position:cc.v3(0, undefined)}, {easing: "expoOut"}); + this.defaultMoveOutAction = cc.tween().to(0.55, {position:cc.v3(ui.sw)}, {easing: "expoOut"}); + this.defaultNextInAction = cc.tween().delay(0.1).to(0.55, {position:cc.v3(-this.sw*0.3, undefined)}, {easing:"expoOut"}); + this.defaultNextOutAction = cc.tween().to(0.55, {position:cc.v3(0)}, {easing:"expoOut"}); + + this.mainScene = mainScene; + this.rootNode = new RootNode(); + mainScene.node.addChild(this.rootNode); + this.addPage(this.rootNode, sys.config.startPage, undefined, !sys.config.autoRemoveLaunchImage ? undefined : this.removeLaunchImage); + cc.assetManager.loadBundle("cx.prefab"); + } + + static removeLaunchImage () + { + sys.os.native && native.ins("cx.sys").call("removeLaunchImage", []); + } + + //将节点放入map + static makeNodeMap (node: any) + { + node._nodeMap = {}; + var f = function(e: any) + { + node._nodeMap[e.name] = e; + for (var i in e.children) + f(e.children[i]); + }; + f(node); + } + + //从map取出节点 + static gn (pageOrNode: any, name: string) + { + var node = (pageOrNode instanceof cc.Component) && pageOrNode.node ? pageOrNode.node : pageOrNode; + return node && node._nodeMap && node._nodeMap[name]; + } + + static hint (content: string) + { + res.loadBundleRes("cx.prefab/cx.hint", (asset: any) => + { + var page = cc.instantiate(asset.data); + page.name = "cx.hint"; + ui.makeNodeMap(page); + var lblHint: cc.Node = ui.gn(page, "lblHint"); + var priorHint; + for (var i in ui.mainScene.node.children) + { + var n = ui.mainScene.node.children[i]; + if (n.name == "cx.hint") + { + n.name = "cx.hint.prior"; + priorHint = n; + break; + } + } + lblHint.getComponent(cc.Label)!.color = cc.color(sys.config.hintFontColor); + lblHint.getComponent(cc.Label)!.fontSize = sys.config.hintFontSize; + lblHint.getComponent(cc.LabelOutline)!.width = sys.config.hintFontOutlineWidth; + lblHint.getComponent(cc.LabelOutline)!.color = cc.color(sys.config.hintFontOutlineColor); + lblHint.getComponent(cc.Label)!.string = content; + lblHint.setScale(0.5, 0.5); + if (priorHint) + lblHint.setPosition(lblHint.getPosition().x, Math.min(-30, ui.gn(priorHint, "lblHint").getPosition().y - 50)); + ui.mainScene.node.addChild(page); + cc.tween(lblHint).to(0.1, {scale:cc.v3(1,1,1)}).by(1.5, {position:cc.v3(undefined,30)}).by(0.2, {position: cc.v3(undefined, 20)}).call(()=>{page.destroy();}).start(); + cc.tween(lblHint.getComponent(cc.UIOpacity)).delay(1.5).to(0.2, {opacity: 0}).start(); + }); + } + + static alert (content: string, callback?: Function, labelOk?: string) + { + ui.setAndroidBackHandler(true); + res.loadBundleRes("cx.prefab/cx.alert", function(asset: any) + { + var page = cc.instantiate(asset.data); + page.name = "cx.alert"; + page.content = content; + page.callback = callback; + ui.makeNodeMap(page); + page.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + event.propagationStopped = true; + }); + + if (labelOk) + ui.gn(page, "lblOk").getComponent(cc.Label).string = labelOk; + + var lblContent: cc.Node = ui.gn(page, "lblContent"); + lblContent.getComponent(cc.Label)!.string = content; + lblContent.getComponent(cc.Label)!.updateRenderData(true); //更新Label高度 + var contentHeight = Math.max(400, lblContent.getComponent(cc.UITransform)!.height + 140); + var nodeContent: cc.Node = ui.gn(page, "nodeContent"); + nodeContent.getComponent(cc.UITransform)!.height = contentHeight; + nodeContent.setScale(1.2, 1.2); + ui.mainScene.node.addChild(page); + + cc.tween(nodeContent).to(0.15, {scale:cc.v3(1,1,1)}).start(); + cc.tween(ui.gn(page, "mask").getComponent(cc.UIOpacity)).to(0.15, {opacity:90}).start(); + ui.setNativeMaskMask((ui.sw-600)/2, (ui.sh+contentHeight)/2, 600, contentHeight, 14); + ui.gn(page, "spOk").setTouchCallback(page, function() + { + ui.clearNativeMaskMask(); + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(); + }); + }); + } + + static confirm (content: string, callback?: Function, labelOk?: string, labelCancel?: string) + { + ui.setAndroidBackHandler(true); + res.loadBundleRes("cx.prefab/cx.confirm", function(asset: any) + { + var page = cc.instantiate(asset.data); + page.name = "cx.confirm"; + page.content = content; + page.callback = callback; + ui.makeNodeMap(page); + page.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + event.propagationStopped = true; + }); + + if (labelOk) + ui.gn(page, "lblOk").getComponent(cc.Label).string = labelOk; + + if (labelCancel) + ui.gn(page, "lblCancel").getComponent(cc.Label).string = labelCancel; + + var lblContent = ui.gn(page, "lblContent"); + lblContent.getComponent(cc.Label)!.string = content; + lblContent.getComponent(cc.Label)!.updateRenderData(true); //更新Label高度 + ui.gn(page, "nodeContent").getComponent(cc.UITransform)!.height = Math.max(400, lblContent.getComponent(cc.UITransform)!.height + 140); + ui.mainScene.node.addChild(page); + + var nodeContent = ui.gn(page, "nodeContent"); + nodeContent.setScale(1.2, 1.2); + cc.tween(nodeContent).to(0.15, {scale:cc.v3(1, 1, 1)}).start(); + cc.tween(ui.gn(page, "mask").getComponent(cc.UIOpacity)).to(0.15, {opacity:90}).start(); + ui.gn(page, "spOk").setTouchCallback(page, function() + { + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(true); + }); + ui.gn(page, "spCancel").setTouchCallback(page, function() + { + ui.setAndroidBackHandler(); + page.destroy(); + callback && callback(false); + }); + }); + } + + static showLoading (page: cc.Component, parentNode: any, delayShowSeconds: number = 0) + { + if (parentNode._loadingInDelay || parentNode.getChildByName("cx.loadingNode")) + return; + var createLoading = function(dt?: number) + { + if (dt && !parentNode._loadingInDelay) + return; + var imageNode = new cc.Node(); + imageNode.name = "cx.loadingNode"; + imageNode.setScale(0.45, 0.45); + res.setImageFromBundle(imageNode, "cx.prefab/s_loading", cc.Sprite.SizeMode.TRIMMED); + parentNode.addChild(imageNode); + cc.tween(imageNode).repeatForever(cc.tween().by(0, {angle: -30}).delay(0.07)).start(); + }; + parentNode._loadingEnabled = true; + if (delayShowSeconds > 0) + { + parentNode._loadingInDelay = true; + page.scheduleOnce(createLoading, delayShowSeconds); + } + else + createLoading(); + } + + static removeLoading (parentNode: any) + { + var loadingNode = parentNode.getChildByName("cx.loadingNode"); + if (loadingNode) + loadingNode.removeFromParent(); + if (parentNode._loadingInDelay) + delete parentNode._loadingInDelay; + } + + static getTopPage (fromLast?: number): any + { + fromLast = fromLast || 0; + var match = 0; + for (var i = this.rootNode.children.length - 1; i>=0; i--) + { + var page = this.rootNode.children[i]; + if (page.active && !page.ignoreTopPage) + { + if (++match > -fromLast) + return page; + } + } + } + + static addPage (parent:cc.Node, prefab:string, scripts?:string[], callbackOrParams?:any, runAction?:boolean) + { + ui.touchLockTimelen = -1; + res.loadBundleRes(prefab, (asset: any) => + { + var p = prefab.indexOf("/"); + var script = p ? prefab.substr(prefab.lastIndexOf("/") + 1) : prefab; //script = page1(.ts) + scripts = scripts || [script]; + var node = cc.instantiate(asset.data); + var cxuiPageScript = node.addComponent("cxui.page"); + for (var i in scripts) + if (cc.js.getClassByName(scripts[i])) + node.addComponent(scripts[i]); + node.mainComponent = script && node.getComponent(script); + parent.addChild(node); + if (callbackOrParams != null) + { + if (typeof callbackOrParams == "function") + callbackOrParams(node); + else if (node.mainComponent) + node.mainComponent.contextParams = callbackOrParams; + } + if (runAction) + cxuiPageScript.runActionShow(); + ui.touchLockTimelen = 500; + }); + } + + static showPage (prefab:string, scripts?:string[], callbackOrParams?:any) + { + if (arguments.length == 1 || typeof arguments[0] == "string") + ui.addPage(ui.rootNode, prefab, scripts, callbackOrParams, true); + else //for touchCallback + ui.addPage(ui.rootNode, arguments[1], undefined, undefined, true); + } + + static closePage (sender: any) + { + var node: any = sender instanceof cc.Component ? sender.node : (this instanceof cc.Component ? this.node : sender); + node.getComponent("cxui.page").runActionClose(); + } + + //设置android返回键处理函数 + static setAndroidBackHandler(handler?: any) + { + if (sys.os.android) + this.androidKeyBackHandler = handler; + } + + static setNativeMaskMask (x: number, y: number, width: number, height: number, radius: number) + { + if (!sys.os.native) + return; + var mask = ui.getTopPage(); + mask = mask && mask.getComponent("cxui.nativeMask"); + if (mask) + { + var rect = ui.convertToDeviceSize(undefined, x, y, width, height); + mask.setMaskMask(rect.x, rect.y, rect.width, rect.height, radius); + } + } + + static clearNativeMaskMask () + { + if (!sys.os.native) + return; + var mask = ui.getTopPage(); + mask = mask && mask.getComponent("cxui.nativeMask"); + if (mask) + mask.clearMaskMask(); + } + + static createPanel (color4: string, width: number, height: number): cc.Node + { + var panel = new cc.Node(); + panel.addComponent(cc.UITransform).setContentSize(width, height); + panel.addComponent(cc.Sprite).color = cc.color(color4 || "ffffffff"); + res.setImageFromBundle(panel, "cx.prefab/s_color"); + return panel; + } + + static createLabelNode (text: string, fontSize: number, fontColor: string): cc.Node + { + var node = new cc.Node(); + var label = node.addComponent(cc.Label); + label.string = text; + label.fontSize = fontSize; + label.color = cc.color(fontColor); + return node; + } + + //将一个node节点中相对于节点左下角的坐标转换为屏幕坐标 + static convertToDeviceSize (node:cc.Node | undefined, x:number, y:number, width?:number, height?:number): cc.Rect + { + let frameSize = cc.view.getFrameSize(); + width = width ? frameSize.width * width / this.sw : 0; + height = height ? frameSize.height * height / this.sh : 0; + let r: cc.Vec3 | undefined = node ? node.getComponent(cc.UITransform)?.convertToWorldSpaceAR(cc.v3(x, y, 0)) : cc.v3(x, y, 0); + if (r) + { + x = frameSize.width * r.x / this.sw; + y = frameSize.height * (this.sh - r.y) / this.sh; + } + return new cc.Rect(x, y, width, height); + } +} + +class RootNode extends cc.Node +{ + constructor () + { + super(); + // this.setPosition(0, -ui.sh/2); + // this.addComponent(cc.UITransform)?.setAnchorPoint(0.5, 0.5); + this.addComponent(cc.UITransform).setContentSize(ui.sw, ui.sh); + var widget = this.addComponent(cc.Widget); + widget.isAlignTop = widget.isAlignBottom = true; widget.isAlignLeft = widget.isAlignRight = true; + + //if (sys.os.android) + // cc.systemEvent.on(cc.SystemEventType.KEY_UP, this.onAndroidKeyUp, this); + if (!sys.config.slideEventDisabled) + this.addSlideEvent(); + } + + onBackPressed() + //onAndroidKeyUp (event: cc.EventKeyboard) + { + // console.log(".................event..." + event.keyCode + "," + cc.macro.KEY.back); + //if (event.keyCode == cc.macro.KEY.back || event.keyCode == cc.macro.KEY.backspace || event.keyCode == cc.macro.KEY.escape) + { + if (ui.androidKeyBackHandler) + { + if (typeof ui.androidKeyBackHandler == "function") + ui.androidKeyBackHandler(); + return; + } + var topPage = ui.getTopPage(); + var handler = topPage.androidBackHandler; + if (handler) + { + if (handler == "closePage") + ui.closePage(topPage); + else if (handler == "closeApp") + native.ins("cx.sys").call("moveTaskToBack"); + else + handler(); + } + } + } + + slideState = 0; + slideShadow: cc.Node | undefined; + slidePage: cc.Node | undefined; + slideRelatePage: cc.Node | undefined; + slideMoveDeltaX = 0; + + addSlideEvent () + { + this.on(cc.Node.EventType.TOUCH_START, (event: cc.EventTouch) => + { + if (event.getLocationX() > ui.sw/2) + return; + this.slideState = 0; + var slidePage = ui.getTopPage(); + if (slidePage && slidePage.slideEventDisabled) + return; + this.slidePage = slidePage; + this.slideRelatePage = ui.getTopPage(-1); + // console.log("slide start...", this.slidePage && this.slidePage.name, this.slideRelatePage && this.slideRelatePage.name); + }, this, true); + + this.on(cc.Node.EventType.TOUCH_MOVE, (event: cc.EventTouch) => + { + if (!this.slidePage || !this.slidePage.active || this.slidePage.slideEventDisabled) + return; + var delta = event.getUIDelta(); + if (this.slideState < 2) + { + if (Math.abs(delta.x) > 0.05 || Math.abs(delta.y) > 0.05) + { + if (Math.abs(delta.x) > Math.abs(delta.y) && Math.abs(event.getLocation().y - event.getStartLocation().y) < 35) + { + if (event.getLocation().x - event.getStartLocation().x >= 20) + { + this.slideState++; + if (!this.slideShadow) + { + var node: cc.Node = this.slideShadow = new cc.Node(); + node.name = "cx.slideShadow"; + node.ignoreTopPage = true; + this.addChild(node); + node.setSiblingIndex(10000000 - 1000); + + var imgNode = new cc.Node(); + res.setImageFromBundle(imgNode, "cx.prefab/s_shadow", cc.Sprite.SizeMode.CUSTOM, (sprite: cc.Sprite) => + { + imgNode.getComponent(cc.UITransform)!.setContentSize(sprite.spriteFrame!.width, sprite.spriteFrame!.height); + imgNode.setScale(1, ui.sh / sprite.spriteFrame!.height); + imgNode.setPosition(-ui.sw/2-sprite.spriteFrame!.width/2, 0); + node.addChild(imgNode); + }); + } + } + } + else + this.slideState = 3; + } + } + + if (this.slideState == 2) + { + // console.log("slide move..." + delta.x); + event.propagationStopped = true; + this.slideMoveDeltaX = delta.x; + var p = this.slidePage.getPosition(); + p.x = Math.max(p.x + this.slideMoveDeltaX, 0); + this.slidePage.setPosition(p); + this.slideShadow?.setPosition(p); + if (this.slideRelatePage) + { + p = this.slideRelatePage.getPosition(); + p.x += this.slideMoveDeltaX * (this.slideRelatePage.nextInPercentX != undefined ? this.slideRelatePage.nextInPercentX : 0.3); + if (p.x > 0) + p.x = 0; + this.slideRelatePage.setPosition(p); + } + } + }, this, true); + + let touchEnd = (event: cc.EventTouch) => + { + if (!this.slidePage || !this.slidePage.active || this.slidePage.slideEventDisabled) + return; + + if (this.slideState == 2) + { + event.propagationStopped = true; + if (this.slideMoveDeltaX > 19 || this.slidePage.getPosition().x > ui.sw * 0.33) + { + ui.closePage.call(null, this.slidePage); + this.slideShadow && cc.tween(this.slideShadow).to(0.55, {position: cc.v3(ui.sw + 12, undefined)}, {easing: "expoOut"}).start(); + } + else + { + ui.defaultNextOutAction.clone(this.slidePage).start(); + if (this.slideRelatePage) + { + var tx = -ui.sw * (this.slideRelatePage.nextInPercentX != undefined ? this.slideRelatePage.nextInPercentX : 0.3); + cc.tween(this.slideRelatePage).to(0.55, {position: cc.v3(tx, undefined)}, {easing: "expoOut"}).start(); + } + this.slideShadow && ui.defaultNextOutAction.clone(this.slideShadow).start(); + } + this.slidePage = undefined; + } + this.slideState = 0; + }; + + this.on(cc.Node.EventType.TOUCH_END, touchEnd, this, true); + this.on(cc.Node.EventType.TOUCH_CANCEL, touchEnd, this, true); + + // this.on(cc.Node.EventType.TOUCH_CANCEL, (event: cc.EventTouch) => + // { + // if (this.slideState == 2) + // { + // event.propagationStopped = true; + // if (this.slidePage) + // { + // ui.defaultNextOutAction.clone(this.slidePage).start(); + // this.slideShadow && ui.defaultNextOutAction.clone(this.slideShadow).start(); + // this.slidePage = undefined; + // } + // } + // this.slideState = 0; + // }, this, true); + } +} diff --git a/cx3-demo/assets/cx/core/cx.ui.ts.meta b/cx3-demo/assets/cx/core/cx.ui.ts.meta new file mode 100644 index 0000000..f8cc763 --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.ui.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "65f94526-5d8d-4385-a552-f58a5c951f3f", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/core/cx.utils.ts b/cx3-demo/assets/cx/core/cx.utils.ts new file mode 100644 index 0000000..9add7ab --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.utils.ts @@ -0,0 +1,270 @@ + +export default +{ + //在str前补充0,补充至长度len + prefix: function(str: string | number, len?: number): string + { + if (len == undefined) + len = 2; + var ret = str + ''; + while (ret.length < len) + ret = "0" + ret; + return ret; + }, + + formatTime: function(time: Date, format?: string): string + { + var s = (format || "%Y-%m-%d %X").replace("%Y", time.getFullYear()+""); + s = s.replace("%m", this.prefix(time.getMonth()+1)); + s = s.replace("%d", this.prefix(time.getDate())); + s = s.replace("%X", this.prefix(time.getHours())+":"+this.prefix(time.getMinutes())+":"+this.prefix(time.getSeconds())); + s = s.replace("%x", this.prefix(time.getHours())+""+this.prefix(time.getMinutes())+""+this.prefix(time.getSeconds())); + return s; + }, + + getCurrSecond(ms?:boolean): number + { + return Math.floor(new Date().getTime()*(ms ? 1 : 0.001)); + }, + + strToSecond: function(stime: string): number + { + return Date.parse(stime.replace(/[^0-9: ]/mg, '/')).valueOf()*0.001; + }, + secondToStr: function(second: number, format?: string): string + { + var date = new Date(); + date.setTime(second * 1000); + return this.formatTime(date, format); + }, + getCurrDate: function(format?: string): string + { + return this.formatTime(new Date(), format || "%Y-%m-%d"); + }, + getCurrTime: function(format?: string): string + { + return this.formatTime(new Date(), format); + }, + getDiffDate: function(diff: number, format?: string): string + { + return this.secondToStr(this.getCurrSecond() + diff, format || "%Y-%m-%d"); + }, + getDiffTime: function(diff: number, format?: string): string + { + return this.secondToStr(this.getCurrSecond() + diff, format); + }, + + //对象相关 + getObject: function(arr: any[], key: string, value: any): any + { + for (var i in arr) + { + var same = true; + for (var j=1; j=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num=min) && (max == undefined || +num2100 || + +value.substr(10,2)>12 || +value.substr(10,2)<1 || + +value.substr(12,2)>31 || +value.substr(12,2)<1) + return false; + var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); + var Ai = new Array('1','0','X','9','8','7','6','5','4','3','2'); + if (value.charAt(17) == 'x') + value = value.replace("x","X"); + var strSum = 0; + for (var i=0; i= max) + return min; + return Math.floor(Math.random() * (max - min + 1)) + min; + }, + randomArray: function(arr: any[]) + { + var len = arr.length; + for (var i=0; i= 0) + str = str.replace(c, ""); + return str; + }, + //按len长度截断str,之后显示为... + strTruncate: function(str: string | undefined, len: number): string + { + if (!str || str.length <= len) + return str || ""; + return str.substr(0, len-1) + "..."; + } +} diff --git a/cx3-demo/assets/cx/core/cx.utils.ts.meta b/cx3-demo/assets/cx/core/cx.utils.ts.meta new file mode 100644 index 0000000..bec7a5b --- /dev/null +++ b/cx3-demo/assets/cx/core/cx.utils.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "55c7bd0f-7a87-4083-bc6c-5b37f6f384f9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/prefab.meta b/cx3-demo/assets/cx/prefab.meta new file mode 100644 index 0000000..9e45bcb --- /dev/null +++ b/cx3-demo/assets/cx/prefab.meta @@ -0,0 +1,14 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "37024b87-866b-43c6-b0af-bb7bfd49b947", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {}, + "isBundle": true, + "bundleName": "cx.prefab" + } +} diff --git a/cx3-demo/assets/cx/prefab/cx.alert.prefab b/cx3-demo/assets/cx/prefab/cx.alert.prefab new file mode 100644 index 0000000..c409f8c --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.alert.prefab @@ -0,0 +1,992 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.alert", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 46 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "78gDvw8KpNuoGM0hKpGq0Y" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21cjjg3PVNU7kJKYT+lxKt" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": "30Xlt3clBFJrKBRzoZxWQI" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 12, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7dS7qX1nRBx7fgz6abx9xt" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e27vE6WyFDdpntayZ2Y/G9" + }, + { + "__type__": "cc.Node", + "_name": "nodeContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 35 + }, + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblContent", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 50, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 570, + "height": 52.92 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 30, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 42, + "_overflow": 3, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "07QMd0h1dLcYd/vjigaip6" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ee3IZdy2dLIaAWpjI7P0FL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ba3SJ/4HlJ4qhz4zG3g2uV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 601, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "98TYGMtwRBTYZZn4EZmhzJ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "77BcV1zfNHo4LI4KRqZupe" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "b994b487-8cae-43ac-abfc-57584686d976@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 19 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fOwBXUwBNvaJ4NyyrOq4C" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "dfYkI4cBdAfa4omqqk40Jd" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5yv+LuHpN07rESL8vjIVw" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 600, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "348f167f-710c-4b8c-9b87-63adbc5f3978@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": "49kwkgKe9GyZt6ftweaJWn" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/prefab/cx.alert.prefab.meta b/cx3-demo/assets/cx/prefab/cx.alert.prefab.meta new file mode 100644 index 0000000..412220d --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.alert.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "e65c7265-d427-4eee-b1c1-af76082632ec", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.alert" + } +} diff --git a/cx3-demo/assets/cx/prefab/cx.confirm.prefab b/cx3-demo/assets/cx/prefab/cx.confirm.prefab new file mode 100644 index 0000000..51bff93 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.confirm.prefab @@ -0,0 +1,1356 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.confirm", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 58 + }, + { + "__id__": 60 + } + ], + "_prefab": { + "__id__": 62 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "78gDvw8KpNuoGM0hKpGq0Y" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "21cjjg3PVNU7kJKYT+lxKt" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": "30Xlt3clBFJrKBRzoZxWQI" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 12, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7dS7qX1nRBx7fgz6abx9xt" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e27vE6WyFDdpntayZ2Y/G9" + }, + { + "__type__": "cc.Node", + "_name": "nodeContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 19 + }, + { + "__id__": 35 + } + ], + "_active": true, + "_components": [ + { + "__id__": 51 + }, + { + "__id__": 53 + }, + { + "__id__": 55 + } + ], + "_prefab": { + "__id__": 57 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblContent", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 50, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 570, + "height": 52.92 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 30, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 42, + "_overflow": 3, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 150, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "07QMd0h1dLcYd/vjigaip6" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ee3IZdy2dLIaAWpjI7P0FL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ba3SJ/4HlJ4qhz4zG3g2uV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 299, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "98TYGMtwRBTYZZn4EZmhzJ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "77BcV1zfNHo4LI4KRqZupe" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 19 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fOwBXUwBNvaJ4NyyrOq4C" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "dfYkI4cBdAfa4omqqk40Jd" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5yv+LuHpN07rESL8vjIVw" + }, + { + "__type__": "cc.Node", + "_name": "spCancel", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 36 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + }, + { + "__id__": 46 + }, + { + "__id__": 48 + } + ], + "_prefab": { + "__id__": 50 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -1, + "y": -156, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblCancel", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -150, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "38y/8CrqdMLayvuVK+ooHc" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 122, + "b": 255, + "a": 255 + }, + "_string": "取消", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 34, + "_fontSize": 34, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 1, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1bJSlx+WxAr6wIg/tgcVMz" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a21YmkosZFipGo/fQD3IF5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 299, + "height": 88 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "23CaA9AX5JcrUtlN65c1dQ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "7bQU0h3VpOLJF1DLwhutUZ" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "clickEvents": [], + "_interactable": true, + "_transition": 2, + "_normalColor": { + "__type__": "cc.Color", + "r": 214, + "g": 214, + "b": 214, + "a": 255 + }, + "_hoverColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_pressedColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_normalSprite": null, + "_hoverSprite": null, + "_pressedSprite": { + "__uuid__": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_disabledSprite": null, + "_duration": 0.1, + "_zoomScale": 1.2, + "_target": { + "__id__": 35 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "57wg4iPpFIOII59tTdbAE7" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 49 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 180, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 40, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "acIdNYfRFHL6AQ1ONr21cq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f9GUYeG/BK+LnBsmczPcDi" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 600, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "e3b52bb7-1217-459e-8db8-dc485e24ad91@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": "49kwkgKe9GyZt6ftweaJWn" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 59 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 61 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/prefab/cx.confirm.prefab.meta b/cx3-demo/assets/cx/prefab/cx.confirm.prefab.meta new file mode 100644 index 0000000..509b6e2 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.confirm.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "6cfc5922-3049-4dc3-b943-ad79b62754bb", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.confirm" + } +} diff --git a/cx3-demo/assets/cx/prefab/cx.hint.prefab b/cx3-demo/assets/cx/prefab/cx.hint.prefab new file mode 100644 index 0000000..10d1fdf --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.hint.prefab @@ -0,0 +1,440 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.hint", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "nodeHint", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblHint", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "label", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 37, + "_fontSize": 36, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.LabelOutline", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_color": { + "__type__": "cc.Color", + "r": 119, + "g": 119, + "b": 119, + "a": 255 + }, + "_width": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d3FpDLjaVFOqcFboM3/hOg" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_opacity": 255, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "90iLMXmrJFPa19LOw5Z5Ug" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 120 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_alignFlags": 18, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/prefab/cx.hint.prefab.meta b/cx3-demo/assets/cx/prefab/cx.hint.prefab.meta new file mode 100644 index 0000000..0cae03c --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.hint.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "85291583-c34d-4aea-9d63-e1bbeaab8368", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.hint" + } +} diff --git a/cx3-demo/assets/cx/prefab/cx.picker.prefab b/cx3-demo/assets/cx/prefab/cx.picker.prefab new file mode 100644 index 0000000..ac21c96 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.picker.prefab @@ -0,0 +1,1725 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.picker", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 12 + } + ], + "_active": true, + "_components": [ + { + "__id__": 76 + }, + { + "__id__": 78 + } + ], + "_prefab": { + "__id__": 80 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -1147, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "layerMask", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1814 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_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": 750, + "_originalHeight": 1814, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "22VK/kAvJIorKGj7+apYDN" + }, + { + "__type__": "cc.UIOpacity", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_opacity": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "52AA6Aog9BJp4rGOIxtEsn" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8f143Zs69GcaNpjcnqftpo" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 13 + }, + { + "__id__": 41 + }, + { + "__id__": 47 + }, + { + "__id__": 59 + } + ], + "_active": true, + "_components": [ + { + "__id__": 71 + }, + { + "__id__": 73 + } + ], + "_prefab": { + "__id__": 75 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "barTitle", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 14 + }, + { + "__id__": 26 + } + ], + "_active": true, + "_components": [ + { + "__id__": 38 + } + ], + "_prefab": { + "__id__": 40 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 400, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spCancel", + "_objFlags": 0, + "_parent": { + "__id__": 13 + }, + "_children": [ + { + "__id__": 15 + } + ], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -1, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblCancel", + "_objFlags": 0, + "_parent": { + "__id__": 14 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 16 + }, + { + "__id__": 18 + } + ], + "_prefab": { + "__id__": 20 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "取消", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 31, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "18M103dZdEQaYYtkWzql9M" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2e1LbHliZP7LF5Oc5vPTBA" + }, + { + "__type__": "cc.Node", + "_name": "spOk", + "_objFlags": 0, + "_parent": { + "__id__": 13 + }, + "_children": [ + { + "__id__": 27 + } + ], + "_active": true, + "_components": [ + { + "__id__": 33 + }, + { + "__id__": 35 + } + ], + "_prefab": { + "__id__": 37 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblOk", + "_objFlags": 0, + "_parent": { + "__id__": 26 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 28 + }, + { + "__id__": 30 + } + ], + "_prefab": { + "__id__": 32 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 27 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ccta3+pEVHHIS+gewY6H8Z" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 27 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "确定", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 31, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9dIIjw/G1HSIuuIXySxBLs" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d1TcD7cLxLUIe8rGB8cKqg" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6f8PTdP5NBHI1d6tMGSaG1" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2edDlCj7lIMpKrmWxfIFv/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "26xTsK7ORAc6oUvgmBxwH5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 13 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5cdvl/uiBEJ757kJ4j3PQS" + }, + { + "__type__": "cc.Node", + "_name": "layerBox", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 46 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a4R79BathAl5F08F/MH/9T" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_resizeMode": 1, + "_layoutType": 1, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "59mPBeQDVLLZ/LJgorKll8" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "aerxZqhpJLZ5v5wfQmMFBP" + }, + { + "__type__": "cc.Node", + "_name": "layerMask1", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 56 + } + ], + "_prefab": { + "__id__": 58 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 240, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "line1", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + } + ], + "_prefab": { + "__id__": 53 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 85, + "g": 85, + "b": 85, + "a": 150 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "17ld/+EpZIL7lWO1GZ1ero" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 55 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "55pCbtzR5GbojKMArZkfim" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 57 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 242, + "g": 242, + "b": 242, + "a": 96 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "20UGQn4U9GUoln0NJQTkbG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e33UpI3ZxPrIbpkmpqdkoo" + }, + { + "__type__": "cc.Node", + "_name": "layerMask2", + "_objFlags": 0, + "_parent": { + "__id__": 12 + }, + "_children": [ + { + "__id__": 60 + } + ], + "_active": true, + "_components": [ + { + "__id__": 66 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 70 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "line2", + "_objFlags": 0, + "_parent": { + "__id__": 59 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 61 + }, + { + "__id__": 63 + } + ], + "_prefab": { + "__id__": 65 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 160, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6aYg42sS5Fi55UeUb79JVe" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 68, + "g": 68, + "b": 68, + "a": 150 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "79/PcGNvpLX4AtTn5vhvdw" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "62/ibdnTJN1IMBvknxJMnV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": { + "__id__": 67 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 160 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "12wHnwhkBBbq5jGVszBZqB" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 242, + "g": 242, + "b": 242, + "a": 96 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "08ksqrS4VJBpA+jFxCxauh" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "94FxFnNgxIs5FrCofWx25I" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 72 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 480 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2fSBiUj0lA1KWxAndzJzBT" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_alignFlags": 4, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 1574, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": -907, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 480, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0eQiOZZQhNN4ZARCHw0a+y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ae9IQBq9pCy5lwUNWB9eSY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 77 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1814 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 79 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": -480, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 50.4, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97kDr4nkFLd7Dmv1XV7sbY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/prefab/cx.picker.prefab.meta b/cx3-demo/assets/cx/prefab/cx.picker.prefab.meta new file mode 100644 index 0000000..50c5463 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.picker.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "32d38c52-f788-44f8-b6e8-53890d825af6", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.picker" + } +} diff --git a/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab b/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab new file mode 100644 index 0000000..6430dc0 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab @@ -0,0 +1,422 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.pickerScrollView", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + }, + { + "__id__": 18 + } + ], + "_prefab": { + "__id__": 20 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + } + ], + "_active": true, + "_components": [ + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": { + "__id__": 13 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + }, + { + "__id__": 6 + } + ], + "_prefab": { + "__id__": 8 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 400, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 5 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 7 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 12 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4dhOV9pUZNO5lw+vOxHNpY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 3 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "31emUMJhhK8YdEity5dmaV" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab.meta b/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab.meta new file mode 100644 index 0000000..dc05fd1 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/cx.pickerScrollView.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "5fffa384-9ca0-4a4e-8d0c-07750b8b5e0c", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.pickerScrollView" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_al.png b/cx3-demo/assets/cx/prefab/s_al.png new file mode 100755 index 0000000..75f4671 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_al.png differ diff --git a/cx3-demo/assets/cx/prefab/s_al.png.meta b/cx3-demo/assets/cx/prefab/s_al.png.meta new file mode 100644 index 0000000..ed153a9 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_al.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139@6c48a", + "displayName": "s_al", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "584cd881-9cb2-40cb-876c-5ab8c6d49139" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941", + "displayName": "s_al", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 18, + "height": 32, + "rawWidth": 18, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "584cd881-9cb2-40cb-876c-5ab8c6d49139@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_alert_bg.png b/cx3-demo/assets/cx/prefab/s_alert_bg.png new file mode 100644 index 0000000..725adec Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_alert_bg.png differ diff --git a/cx3-demo/assets/cx/prefab/s_alert_bg.png.meta b/cx3-demo/assets/cx/prefab/s_alert_bg.png.meta new file mode 100644 index 0000000..8424e65 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_alert_bg.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978@6c48a", + "displayName": "s_alert_bg", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "348f167f-710c-4b8c-9b87-63adbc5f3978" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "348f167f-710c-4b8c-9b87-63adbc5f3978@f9941", + "displayName": "s_alert_bg", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 600, + "height": 400, + "rawWidth": 600, + "rawHeight": 400, + "borderTop": 139, + "borderBottom": 158, + "borderLeft": 159, + "borderRight": 186, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "348f167f-710c-4b8c-9b87-63adbc5f3978@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "348f167f-710c-4b8c-9b87-63adbc5f3978@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_alert_ok.png b/cx3-demo/assets/cx/prefab/s_alert_ok.png new file mode 100644 index 0000000..976163b Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_alert_ok.png differ diff --git a/cx3-demo/assets/cx/prefab/s_alert_ok.png.meta b/cx3-demo/assets/cx/prefab/s_alert_ok.png.meta new file mode 100644 index 0000000..b1e1ee9 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_alert_ok.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "b994b487-8cae-43ac-abfc-57584686d976", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "b994b487-8cae-43ac-abfc-57584686d976@6c48a", + "displayName": "s_alert_ok", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "b994b487-8cae-43ac-abfc-57584686d976" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "b994b487-8cae-43ac-abfc-57584686d976@f9941", + "displayName": "s_alert_ok", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 599, + "height": 88, + "rawWidth": 600, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "b994b487-8cae-43ac-abfc-57584686d976@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "b994b487-8cae-43ac-abfc-57584686d976@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_border.png b/cx3-demo/assets/cx/prefab/s_border.png new file mode 100644 index 0000000..7b050d0 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_border.png differ diff --git a/cx3-demo/assets/cx/prefab/s_border.png.meta b/cx3-demo/assets/cx/prefab/s_border.png.meta new file mode 100644 index 0000000..a661d4f --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_border.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82@6c48a", + "displayName": "s_border", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e0c075bf-922a-400b-ba33-c5a3cead2b82" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941", + "displayName": "s_border", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 48, + "height": 48, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 9, + "borderBottom": 15, + "borderLeft": 8, + "borderRight": 10, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e0c075bf-922a-400b-ba33-c5a3cead2b82@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_color.png b/cx3-demo/assets/cx/prefab/s_color.png new file mode 100644 index 0000000..552e5bf Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_color.png differ diff --git a/cx3-demo/assets/cx/prefab/s_color.png.meta b/cx3-demo/assets/cx/prefab/s_color.png.meta new file mode 100644 index 0000000..d3be105 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_color.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74@6c48a", + "displayName": "s_color", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "5907f4b0-7090-4266-82ce-b88a85e49a74" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "5907f4b0-7090-4266-82ce-b88a85e49a74@f9941", + "displayName": "s_color", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 48, + "height": 48, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "5907f4b0-7090-4266-82ce-b88a85e49a74@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "5907f4b0-7090-4266-82ce-b88a85e49a74@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_confirm_bg.png b/cx3-demo/assets/cx/prefab/s_confirm_bg.png new file mode 100644 index 0000000..c5ff4e6 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_confirm_bg.png differ diff --git a/cx3-demo/assets/cx/prefab/s_confirm_bg.png.meta b/cx3-demo/assets/cx/prefab/s_confirm_bg.png.meta new file mode 100644 index 0000000..9939968 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_confirm_bg.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91@6c48a", + "displayName": "s_confirm_bg", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e3b52bb7-1217-459e-8db8-dc485e24ad91" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941", + "displayName": "s_confirm_bg", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 600, + "height": 400, + "rawWidth": 600, + "rawHeight": 400, + "borderTop": 141, + "borderBottom": 168, + "borderLeft": 200, + "borderRight": 211, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e3b52bb7-1217-459e-8db8-dc485e24ad91@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_confirm_no.png b/cx3-demo/assets/cx/prefab/s_confirm_no.png new file mode 100644 index 0000000..0b6d63a Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_confirm_no.png differ diff --git a/cx3-demo/assets/cx/prefab/s_confirm_no.png.meta b/cx3-demo/assets/cx/prefab/s_confirm_no.png.meta new file mode 100644 index 0000000..1891fe4 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_confirm_no.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab@6c48a", + "displayName": "s_confirm_no", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "059bf95b-35d1-48c6-b935-be1423bc41ab" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941", + "displayName": "s_confirm_no", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "059bf95b-35d1-48c6-b935-be1423bc41ab@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "059bf95b-35d1-48c6-b935-be1423bc41ab@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_confirm_yes.png b/cx3-demo/assets/cx/prefab/s_confirm_yes.png new file mode 100644 index 0000000..eb723ed Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_confirm_yes.png differ diff --git a/cx3-demo/assets/cx/prefab/s_confirm_yes.png.meta b/cx3-demo/assets/cx/prefab/s_confirm_yes.png.meta new file mode 100644 index 0000000..66ef1f3 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_confirm_yes.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@6c48a", + "displayName": "s_confirm_yes", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "eec5716c-2f55-4a2e-a1b8-fdb78284b125" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941", + "displayName": "s_confirm_yes", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_loading.png b/cx3-demo/assets/cx/prefab/s_loading.png new file mode 100755 index 0000000..32e184c Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_loading.png differ diff --git a/cx3-demo/assets/cx/prefab/s_loading.png.meta b/cx3-demo/assets/cx/prefab/s_loading.png.meta new file mode 100644 index 0000000..bd536c9 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_loading.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2@6c48a", + "displayName": "s_loading", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "84e624e8-b14f-4ef5-8867-cc43b179bff2" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941", + "displayName": "s_loading", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 1, + "trimY": 1, + "width": 109, + "height": 109, + "rawWidth": 111, + "rawHeight": 111, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "84e624e8-b14f-4ef5-8867-cc43b179bff2@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_none.png b/cx3-demo/assets/cx/prefab/s_none.png new file mode 100755 index 0000000..2b945a5 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_none.png differ diff --git a/cx3-demo/assets/cx/prefab/s_none.png.meta b/cx3-demo/assets/cx/prefab/s_none.png.meta new file mode 100644 index 0000000..1f23857 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_none.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee@6c48a", + "displayName": "s_none", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "b75f295b-153f-4147-b5cb-abe1c0371fee" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "b75f295b-153f-4147-b5cb-abe1c0371fee@f9941", + "displayName": "s_none", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 23.5, + "offsetY": -23.5, + "trimX": 47, + "trimY": 47, + "width": 1, + "height": 1, + "rawWidth": 48, + "rawHeight": 48, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "b75f295b-153f-4147-b5cb-abe1c0371fee@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "b75f295b-153f-4147-b5cb-abe1c0371fee@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_picker_no.png b/cx3-demo/assets/cx/prefab/s_picker_no.png new file mode 100644 index 0000000..ab31503 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_picker_no.png differ diff --git a/cx3-demo/assets/cx/prefab/s_picker_no.png.meta b/cx3-demo/assets/cx/prefab/s_picker_no.png.meta new file mode 100644 index 0000000..51b49f3 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_picker_no.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741@6c48a", + "displayName": "s_picker_no", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "99dba72d-3365-4300-a6b3-cbc7a332d741" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941", + "displayName": "s_picker_no", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "99dba72d-3365-4300-a6b3-cbc7a332d741@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "99dba72d-3365-4300-a6b3-cbc7a332d741@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_picker_yes.png b/cx3-demo/assets/cx/prefab/s_picker_yes.png new file mode 100644 index 0000000..43c7e6e Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_picker_yes.png differ diff --git a/cx3-demo/assets/cx/prefab/s_picker_yes.png.meta b/cx3-demo/assets/cx/prefab/s_picker_yes.png.meta new file mode 100644 index 0000000..bdfe989 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_picker_yes.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@6c48a", + "displayName": "s_picker_yes", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941", + "displayName": "s_picker_yes", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 299, + "height": 88, + "rawWidth": 299, + "rawHeight": 88, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941" + } +} diff --git a/cx3-demo/assets/cx/prefab/s_shadow.png b/cx3-demo/assets/cx/prefab/s_shadow.png new file mode 100644 index 0000000..7919059 Binary files /dev/null and b/cx3-demo/assets/cx/prefab/s_shadow.png differ diff --git a/cx3-demo/assets/cx/prefab/s_shadow.png.meta b/cx3-demo/assets/cx/prefab/s_shadow.png.meta new file mode 100644 index 0000000..28f2136 --- /dev/null +++ b/cx3-demo/assets/cx/prefab/s_shadow.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0@6c48a", + "displayName": "s_shadow", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "e46d2d74-d301-43b0-a0c7-c82b558297d0" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941", + "displayName": "s_shadow", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 11, + "height": 36, + "rawWidth": 11, + "rawHeight": 36, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "e46d2d74-d301-43b0-a0c7-c82b558297d0@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941" + } +} diff --git a/cx3-demo/assets/cx/scripts.meta b/cx3-demo/assets/cx/scripts.meta new file mode 100644 index 0000000..a011dd5 --- /dev/null +++ b/cx3-demo/assets/cx/scripts.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "dd121554-2c98-4301-b414-f9c1fc7d31bb", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.mainScene.ts b/cx3-demo/assets/cx/scripts/cxui.mainScene.ts new file mode 100644 index 0000000..c41d47f --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.mainScene.ts @@ -0,0 +1,13 @@ + +import {_decorator, Component, setDisplayStats} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.MainScene') +class CxuiMainScene extends Component +{ + onLoad () + { + setDisplayStats(false); + cx.init(this); + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.mainScene.ts.meta b/cx3-demo/assets/cx/scripts/cxui.mainScene.ts.meta new file mode 100644 index 0000000..21bcc09 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.mainScene.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "78daf419-e3cc-4573-a291-c945d1cb2218", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts b/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts new file mode 100644 index 0000000..8ef1f06 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts @@ -0,0 +1,79 @@ + +import {_decorator, Component, Node, Rect} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.nativeMask') +class CxuiNativeMask extends Component +{ + maskName?: string; + maskRect?: Rect; + monitorNode?: Node; + monitorNodePriorX?: number; + init (page: Component, node: Node, x: number, y: number, width: number, height: number): string + { + if (!cx.os.native) + return ""; + this.maskName = "cxNativeMask" + (++cx.uid); + this.maskRect = cx.convertToDeviceSize(node, x, y, width, height); + cx.native.ins("cx.mask").call("createMask", [this.maskName, this.maskRect.x, this.maskRect.y, this.maskRect.width, this.maskRect.height]); + return this.maskName; + } + + onEnable () + { + this.maskName && cx.native.ins("cx.mask").call("setMaskVisible", [this.maskName, true]); + } + + onDisable () + { + this.maskName && cx.native.ins("cx.mask").call("setMaskVisible", [this.maskName, false]); + } + + onDestroy () + { + this.maskName && cx.native.ins("cx.mask").call("removeMask", [this.maskName]); + } + + //设置监控节点,mask的宽度将随着node的x位置改变,不遮挡住node + //todo: 目前仅实现横向不遮挡,对于底部上升的纵向node未处理 + setMonitorNode (node: Node) + { + this.monitorNode = node; + this.monitorNodePriorX = node.getPosition().x; + } + + setMaskSize (width: number, height: number) + { + this.maskName && cx.native.ins("cx.mask").call("setMaskSize", [this.maskName, width, height]); + } + + setMaskMask (x: number, y: number, width: number, height: number, radius: number) + { + this.maskName && cx.native.ins("cx.mask").call("setMaskMask", [this.maskName, x, y, width, height, radius]); + } + + clearMaskMask () + { + this.maskName && cx.native.ins("cx.mask").call("clearMaskMask", [this.maskName]); + } + + update () + { + if (!this.maskName) + return; + if (this.monitorNode) + { + if (!this.monitorNode.active) + { + this.monitorNode = undefined; + return; + } + if (this.monitorNodePriorX == this.monitorNode.getPosition().x) + return; + this.monitorNodePriorX = this.monitorNode.getPosition().x; + var p = cx.convertToDeviceSize(undefined, this.monitorNodePriorX, 0); + var width = Math.min(this.maskRect!.width, Math.max(0, p.x - this.maskRect!.x)); + this.setMaskSize(width, this.maskRect!.height); + } + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts.meta b/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts.meta new file mode 100644 index 0000000..1f370b4 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.nativeMask.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "e70ce5e6-573a-4fab-ad1c-dace0edc0024", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/scripts/cxui.page.ts b/cx3-demo/assets/cx/scripts/cxui.page.ts new file mode 100644 index 0000000..94f670f --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.page.ts @@ -0,0 +1,71 @@ + +import {_decorator, Component, Node, EventTouch, Tween, tween} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.page') +class CxuiPage extends Component +{ + onLoad () + { + cx.makeNodeMap(this.node); + this.node.on(Node.EventType.TOUCH_START, (event: EventTouch) => + { + event.propagationStopped = true; + }); + } + + /* 在page的onLoad事件中可修改以下属性,变更默认的进出动画 + this.initPx: 初始位置 + this.initPy: 初始位置 + this.moveInAction: 进入动画 + this.nextInAction: 进入时,上一页面的动画 + this.moveOutAction: 关闭动画 + this.nextOutAction: 关闭时,上一页面的动画 + */ + public initPx?: number; + public initPy?: number; + public moveInAction?: Tween; + public nextInAction?: Tween; + public moveOutAction?: Tween; + public nextOutAction?: Tween; + runActionShow () + { + if (cx.os.android) + this.node.androidBackHandler = "closePage"; + if (cx.config.pageActionDisabled || this.node.pageActionDisabled) + return; + var x = this.initPx != undefined ? this.initPx : cx.defaultInitPx; + var y = this.initPy != undefined ? this.initPy : cx.defaultInitPy; + this.node.setPosition(x, y); + tween(this.node).then(this.moveInAction || cx.defaultMoveInAction).start(); + + var priorPage = cx.getTopPage(-1); + if (priorPage) + { + tween(priorPage).then(this.nextInAction || cx.defaultNextInAction).start(); + var priorMask: any = priorPage.getComponent("cxui.nativeMask"); + if (priorMask) + priorMask.setMonitorNode(this.node); + } + } + + runActionClose () + { + var priorPage = cx.getTopPage(-1); + if (priorPage && priorPage.mainComponent && priorPage.mainComponent.onChildPageClosed) + priorPage.mainComponent.onChildPageClosed.call(priorPage.mainComponent, this.node.mainComponent); + if (cx.config.pageActionDisabled || this.node.pageActionDisabled) + { + this.node.destroy(); + return; + } + tween(this.node).then(this.moveOutAction || cx.defaultMoveOutAction).call(()=>{this.node.destroy();}).start(); + if (priorPage) + { + tween(priorPage).then(this.nextOutAction || cx.defaultNextOutAction).start(); + // var priorMask = priorPage.getComponent("cxui.nativeMask"); + // if (priorMask) + // priorMask.setMonitorNode(); + } + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.page.ts.meta b/cx3-demo/assets/cx/scripts/cxui.page.ts.meta new file mode 100644 index 0000000..a5c956c --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.page.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "ad451481-a8b8-4d3a-9f12-4a138481898b", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/scripts/cxui.pageView.ts b/cx3-demo/assets/cx/scripts/cxui.pageView.ts new file mode 100644 index 0000000..c58cbbe --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.pageView.ts @@ -0,0 +1,106 @@ + +import {_decorator, Component, Node, PageView, EventTouch} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.pageView') +class CxuiPageView extends Component +{ + page!: Component; + pageView!: PageView; + loop: boolean = false; + callback?: Function; + slideEventDisabled?: boolean; + autoScrollDisabled: number = 0; + cancelClickCallback!: boolean; + + //添加自动滚动及循环滚动能力 + //autoScrollSeconds: 自动滚动间隔秒 + //loop: 是否循环滚动 + initAutoScroll (page: Component, viewName: string, autoScrollSeconds: number, loop: boolean, callback?: Function) + { + var view: Node = cx.gn(page, viewName); + this.page = page; + this.pageView = view.getComponent(PageView)!; + this.loop = loop; + this.callback = callback; + + if (autoScrollSeconds > 0) + { + this.schedule(this.autoScroll, autoScrollSeconds); + view.on(Node.EventType.TOUCH_START, this.onTouchStart, this); + view.on(Node.EventType.TOUCH_MOVE, this.onTouchMove, this); + view.on(Node.EventType.TOUCH_END, this.onTouchEnd, this); + view.on(Node.EventType.TOUCH_CANCEL, this.onTouchCancel, this); + } + + if (loop) + { + view.on(PageView.EventType.SCROLL_ENDED, this.onScrollEnded, this); + } + + this.slideEventDisabled = this.node.slideEventDisabled; + } + + onTouchStart (event: EventTouch) + { + this.autoScrollDisabled = 2; + this.node.slideEventDisabled = true; + this.cancelClickCallback = false; + } + + onTouchMove (event: EventTouch) + { + this.cancelClickCallback = this.cancelClickCallback || (Math.abs(event.getLocation().x - event.getStartLocation().x) > 15 || Math.abs(event.getLocation().y - event.getStartLocation().y) > 15); + } + + onTouchEnd () + { + this.onTouchCancel(); + !this.cancelClickCallback && this.callback && this.callback.call(this.page, this.pageView.getPages()[this.pageView.getCurrentPageIndex()]); + } + + onTouchCancel () + { + this.autoScrollDisabled = 1; //有操作干扰,忽略一次自动滚动 + this.node.slideEventDisabled = this.slideEventDisabled; + } + + autoScroll () + { + if (this.autoScrollDisabled) + { + if (this.autoScrollDisabled == 1) + this.autoScrollDisabled = 0; + return; + } + + var pages = this.pageView.getPages(); + if (pages.length > 1) + { + var currentIndex = this.pageView.getCurrentPageIndex(); + if (currentIndex < pages.length - 1) + this.pageView.scrollToPage(currentIndex + 1, 1.5); + } + } + + onScrollEnded () + { + var pages = this.pageView.getPages(); + var currentIndex = this.pageView.getCurrentPageIndex(); + if (currentIndex == pages.length - 1) + { + var first = pages[0]; + this.pageView.removePage(first); + this.pageView.addPage(first); + } + else if (currentIndex == 0) + { + var last = pages[pages.length - 1]; + last.active = false; + this.pageView.removePage(last); + this.pageView.insertPage(last, 0); + this.pageView.scrollToPage(1, 0); + last.active = true; + } + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.pageView.ts.meta b/cx3-demo/assets/cx/scripts/cxui.pageView.ts.meta new file mode 100644 index 0000000..a055ad7 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.pageView.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "dae97eb7-eaab-4ae6-936c-ca644ba3152c", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/scripts/cxui.safearea.ts b/cx3-demo/assets/cx/scripts/cxui.safearea.ts new file mode 100644 index 0000000..27fa8a4 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.safearea.ts @@ -0,0 +1,38 @@ + +import {_decorator, Component, Widget, UITransform, CCInteger} from 'cc'; +const {ccclass, property} = _decorator; + +@ccclass('cxui.safearea') +class CxuiSafearea extends Component +{ + @property + private safeHeight = 170; + + @property + private safeWidgetTop = 0; + + @property + private safeWidgetBottom = 0; + + onLoad () + { + if (cx.os.native && !cx.os.android && cx.sh/cx.sw > 1.8) + { + if (this.safeHeight) + { + var uiTransform = this.node.getComponent(UITransform); + uiTransform?.setContentSize(uiTransform.width, this.safeHeight); + } + + if (this.safeWidgetTop || this.safeWidgetBottom) + { + var widget = this.node.getComponent(Widget); + if (widget) + { + widget.top = this.safeWidgetTop; + widget.bottom = this.safeWidgetBottom; + } + } + } + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.safearea.ts.meta b/cx3-demo/assets/cx/scripts/cxui.safearea.ts.meta new file mode 100644 index 0000000..bac2cc0 --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.safearea.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "de62e376-60c0-4f13-9de6-89796aaf27c1", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/scripts/cxui.scrollView.ts b/cx3-demo/assets/cx/scripts/cxui.scrollView.ts new file mode 100644 index 0000000..f4d38de --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.scrollView.ts @@ -0,0 +1,131 @@ + +import {_decorator, Component, Node, ScrollView, UITransform, Sprite, tween, v3} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('cxui.scrollView') +class CxuiScrollView extends Component +{ + page!: Component; + view!: Node; + queryHandler?: Function; + emptyNode!: Node; + + refreshPage!: Component; + refreshView!: Node; + refreshScrollView!: ScrollView; + refreshHandler?: Function; + refreshNode!: Node; + inRefresh: boolean = false; + waitRefresh: boolean = false; + + //添加增量加载数据功能 + initDeltaInsert (page: Component, viewName: string, queryHandler: Function) + { + this.page = page; + this.view = cx.gn(page, viewName); + this.queryHandler = queryHandler; + + this.view.on("scrolling", this.viewScrolling, this); + + this.emptyNode = new Node(); + this.emptyNode.addComponent(UITransform).height = this.view.getComponent(UITransform)!.height/2; + this.emptyNode.active = false; + var scrollView: ScrollView = this.view.getComponent(ScrollView)!; + scrollView.content!.addChild(this.emptyNode); + this.emptyNode.setSiblingIndex(1000000); + return this; + } + + overDeltaInsert (noMoreData: boolean) + { + if (!this.page) + return; + this.emptyNode.active = false; + if (noMoreData) + this.view.off("scrolling", this.viewScrolling, this); + } + + viewScrolling (view: ScrollView) + { + if (!this.emptyNode.active && view.node.getHeight()/2 < view.content!.getPosition().y && + view.content!.getHeight()/2 - view.content!.getPosition().y < view.node.getHeight()/2) + { + this.emptyNode.active = true; + this.queryHandler && this.queryHandler.call(this.page); + } + } + + //添加下拉刷新功能 + initDropRefresh (page: Component, viewName: string, refreshHandler: Function) + { + this.refreshPage = page; + this.refreshView = cx.gn(page, viewName); + this.refreshScrollView = this.refreshView.getComponent(ScrollView) as ScrollView; + this.refreshHandler = refreshHandler; + + this.refreshView.on("scrolling", this.viewRefreshScrolling, this); + this.refreshView.on("touch-up", this.viewRefreshTouchUp, this); + + var refreshNode = new Node(); + refreshNode.addComponent(UITransform); + refreshNode.setPosition(0, this.refreshView.getComponent(UITransform)!.height*2); + + var labelNode: Node = cx.createLabelNode("下拉刷新", 28, "777777"); + refreshNode.addChild(labelNode); + refreshNode.pro().labelNode = labelNode; + + var imageNode = new Node(); + cx.res.setImageFromBundle(imageNode, "cx.prefab/s_loading", Sprite.SizeMode.TRIMMED); + imageNode.setScale(0.6, 0.6); + refreshNode.addChild(imageNode); + refreshNode.pro().imageNode = imageNode; + + this.refreshNode = refreshNode; + this.refreshScrollView.content!.parent!.addChild(refreshNode); + this.refreshNode.setSiblingIndex(-1000000); + return this; + } + + viewRefreshScrolling (view: ScrollView) + { + if (this.inRefresh || view.node.getHeight()/2 <= view.content!.getPosition().y) + return; + + var delta = view.node.getHeight()/2 - view.content!.getPosition().y; + this.waitRefresh = delta > 150; + this.refreshNode.setPosition(0, view.content!.getPosition().y + 60); + this.refreshNode.pro().imageNode.active = this.inRefresh || delta > 150; + this.refreshNode.pro().labelNode.active = !this.refreshNode.pro().imageNode.active; + } + + viewRefreshTouchUp (view: ScrollView) + { + if (this.waitRefresh) + { + view.cx_refreshTopGap = 120; + this.inRefresh = true; + this.waitRefresh = false; + view.node.pauseSystemEvents(true); + tween(this.refreshNode).to(0.1, {position:v3(0, view.node.getHeight()/2-60)}).delay(0.1).call(()=> + { + this.refreshHandler && this.refreshHandler.call(this.refreshPage); + }).start(); + if (this.refreshNode.pro().loadingTween) + this.refreshNode.pro().loadingTween.start(); + else + this.refreshNode.pro().loadingTween = tween(this.refreshNode.pro().imageNode).repeatForever(tween().by(0, {angle:-30}).delay(0.07)).start(); + } + } + + overDropRefresh () + { + if (!this.inRefresh) + return; + this.inRefresh = false; + this.refreshScrollView.cx_refreshTopGap = 0; + this.refreshScrollView.startAutoScroll(v3(0,120,0), 0.5, true); + this.refreshView.resumeSystemEvents(true); + this.refreshNode.pro().loadingTween.stop(); + this.refreshNode.pro().imageNode.angle = 0; + } +} diff --git a/cx3-demo/assets/cx/scripts/cxui.scrollView.ts.meta b/cx3-demo/assets/cx/scripts/cxui.scrollView.ts.meta new file mode 100644 index 0000000..a7852fd --- /dev/null +++ b/cx3-demo/assets/cx/scripts/cxui.scrollView.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "a1949e42-d9be-4b29-b399-a81b156b6916", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/cx/template.meta b/cx3-demo/assets/cx/template.meta new file mode 100644 index 0000000..0ef3eae --- /dev/null +++ b/cx3-demo/assets/cx/template.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "269169f6-e49d-4566-b590-9923cad1c901", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/cx/template/cx.imageLabel.prefab b/cx3-demo/assets/cx/template/cx.imageLabel.prefab new file mode 100644 index 0000000..021a48a --- /dev/null +++ b/cx3-demo/assets/cx/template/cx.imageLabel.prefab @@ -0,0 +1,359 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.imageLabel", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 8 + } + ], + "_active": true, + "_components": [ + { + "__id__": 14 + } + ], + "_prefab": { + "__id__": 16 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "img", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + } + ], + "_prefab": { + "__id__": 7 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ccbwt3hphNw6+jS5ifm9B6" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": { + "__id__": 13 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -32, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 5.33, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 12 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 24, + "_fontSize": 24, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f0OQ1bx+NJL4qBU8raE5Ln" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_priority": 0, + "_contentSize": { + "__type__": "cc.Size", + "width": 100, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/template/cx.imageLabel.prefab.meta b/cx3-demo/assets/cx/template/cx.imageLabel.prefab.meta new file mode 100644 index 0000000..f036125 --- /dev/null +++ b/cx3-demo/assets/cx/template/cx.imageLabel.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "2caacf7d-7295-4bfe-878d-15e3cc35306a", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.imageLabel" + } +} diff --git a/cx3-demo/assets/cx/template/cx.page.prefab b/cx3-demo/assets/cx/template/cx.page.prefab new file mode 100644 index 0000000..42f2474 --- /dev/null +++ b/cx3-demo/assets/cx/template/cx.page.prefab @@ -0,0 +1,1539 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "cx.page", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 46 + } + ], + "_active": true, + "_components": [ + { + "__id__": 63 + }, + { + "__id__": 65 + } + ], + "_prefab": { + "__id__": 67 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + }, + { + "__id__": 34 + }, + { + "__id__": 41 + }, + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 303 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 36 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": false, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 1, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_scrollView": { + "__id__": 34 + }, + "_handle": { + "__id__": 23 + }, + "_direction": 1, + "_enableAutoHide": false, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 32 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_alignFlags": 45, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "29Aszw4p5MoZS4TTUEuGcm" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 47 + }, + { + "__id__": 56 + } + ], + "_active": true, + "_components": [ + { + "__id__": 59 + }, + { + "__id__": 60 + }, + { + "__id__": 61 + }, + { + "__id__": 62 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [ + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 55 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + }, + { + "__id__": 53 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 57 + }, + { + "__id__": 58 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "标题", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 41, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 66 + }, + "_alignFlags": 21, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/cx/template/cx.page.prefab.meta b/cx3-demo/assets/cx/template/cx.page.prefab.meta new file mode 100644 index 0000000..bcdfdd3 --- /dev/null +++ b/cx3-demo/assets/cx/template/cx.page.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "cd447ecc-8b0e-433f-b598-c063640d1409", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "cx.page" + } +} diff --git a/cx3-demo/assets/img.meta b/cx3-demo/assets/img.meta new file mode 100644 index 0000000..73d158b --- /dev/null +++ b/cx3-demo/assets/img.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "64351758-840c-4ca3-bfcf-effa409cf58b", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/img/btn_orange.png b/cx3-demo/assets/img/btn_orange.png new file mode 100644 index 0000000..751e0c5 Binary files /dev/null and b/cx3-demo/assets/img/btn_orange.png differ diff --git a/cx3-demo/assets/img/btn_orange.png.meta b/cx3-demo/assets/img/btn_orange.png.meta new file mode 100644 index 0000000..053bbb0 --- /dev/null +++ b/cx3-demo/assets/img/btn_orange.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@6c48a", + "displayName": "btn_orange", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@f9941", + "displayName": "btn_orange", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 315, + "height": 84, + "rawWidth": 315, + "rawHeight": 84, + "borderTop": 23, + "borderBottom": 27, + "borderLeft": 59, + "borderRight": 66, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@f9941" + } +} diff --git a/cx3-demo/assets/img/m_home1.png b/cx3-demo/assets/img/m_home1.png new file mode 100644 index 0000000..71de12c Binary files /dev/null and b/cx3-demo/assets/img/m_home1.png differ diff --git a/cx3-demo/assets/img/m_home1.png.meta b/cx3-demo/assets/img/m_home1.png.meta new file mode 100644 index 0000000..aca5765 --- /dev/null +++ b/cx3-demo/assets/img/m_home1.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "76ec2281-4788-4c40-aacd-82abc107e80b", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "76ec2281-4788-4c40-aacd-82abc107e80b@6c48a", + "displayName": "m_home1", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "76ec2281-4788-4c40-aacd-82abc107e80b" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "76ec2281-4788-4c40-aacd-82abc107e80b@f9941", + "displayName": "m_home1", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 38, + "height": 40, + "rawWidth": 38, + "rawHeight": 40, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "76ec2281-4788-4c40-aacd-82abc107e80b@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "76ec2281-4788-4c40-aacd-82abc107e80b@f9941" + } +} diff --git a/cx3-demo/assets/img/m_home2.png b/cx3-demo/assets/img/m_home2.png new file mode 100644 index 0000000..310265b Binary files /dev/null and b/cx3-demo/assets/img/m_home2.png differ diff --git a/cx3-demo/assets/img/m_home2.png.meta b/cx3-demo/assets/img/m_home2.png.meta new file mode 100644 index 0000000..d5ca6a7 --- /dev/null +++ b/cx3-demo/assets/img/m_home2.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "50f32365-940d-4a54-8b4c-29fd9a9394b4", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "50f32365-940d-4a54-8b4c-29fd9a9394b4@6c48a", + "displayName": "m_home2", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "50f32365-940d-4a54-8b4c-29fd9a9394b4" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "50f32365-940d-4a54-8b4c-29fd9a9394b4@f9941", + "displayName": "m_home2", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 38, + "height": 40, + "rawWidth": 38, + "rawHeight": 40, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "50f32365-940d-4a54-8b4c-29fd9a9394b4@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "50f32365-940d-4a54-8b4c-29fd9a9394b4@f9941" + } +} diff --git a/cx3-demo/assets/img/m_mine1.png b/cx3-demo/assets/img/m_mine1.png new file mode 100644 index 0000000..f9291e6 Binary files /dev/null and b/cx3-demo/assets/img/m_mine1.png differ diff --git a/cx3-demo/assets/img/m_mine1.png.meta b/cx3-demo/assets/img/m_mine1.png.meta new file mode 100644 index 0000000..dd38a45 --- /dev/null +++ b/cx3-demo/assets/img/m_mine1.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "4919b80d-4b8f-46ae-b2a9-4cfad3180579", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "4919b80d-4b8f-46ae-b2a9-4cfad3180579@6c48a", + "displayName": "m_mine1", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "4919b80d-4b8f-46ae-b2a9-4cfad3180579" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "4919b80d-4b8f-46ae-b2a9-4cfad3180579@f9941", + "displayName": "m_mine1", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 38, + "height": 40, + "rawWidth": 38, + "rawHeight": 40, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "4919b80d-4b8f-46ae-b2a9-4cfad3180579@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "4919b80d-4b8f-46ae-b2a9-4cfad3180579@f9941" + } +} diff --git a/cx3-demo/assets/img/m_mine2.png b/cx3-demo/assets/img/m_mine2.png new file mode 100644 index 0000000..17c5d62 Binary files /dev/null and b/cx3-demo/assets/img/m_mine2.png differ diff --git a/cx3-demo/assets/img/m_mine2.png.meta b/cx3-demo/assets/img/m_mine2.png.meta new file mode 100644 index 0000000..8a2c388 --- /dev/null +++ b/cx3-demo/assets/img/m_mine2.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9@6c48a", + "displayName": "m_mine2", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9@f9941", + "displayName": "m_mine2", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 38, + "height": 40, + "rawWidth": 38, + "rawHeight": 40, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9@f9941" + } +} diff --git a/cx3-demo/assets/img/rank1.png b/cx3-demo/assets/img/rank1.png new file mode 100644 index 0000000..3b944a2 Binary files /dev/null and b/cx3-demo/assets/img/rank1.png differ diff --git a/cx3-demo/assets/img/rank1.png.meta b/cx3-demo/assets/img/rank1.png.meta new file mode 100644 index 0000000..5590cd9 --- /dev/null +++ b/cx3-demo/assets/img/rank1.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5@6c48a", + "displayName": "rank1", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5@f9941", + "displayName": "rank1", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 69, + "height": 74, + "rawWidth": 69, + "rawHeight": 74, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "9807a2bf-2bcd-4629-bdc2-1a563b12a5d5@f9941" + } +} diff --git a/cx3-demo/assets/img/rank2.png b/cx3-demo/assets/img/rank2.png new file mode 100644 index 0000000..639ab97 Binary files /dev/null and b/cx3-demo/assets/img/rank2.png differ diff --git a/cx3-demo/assets/img/rank2.png.meta b/cx3-demo/assets/img/rank2.png.meta new file mode 100644 index 0000000..bfd47aa --- /dev/null +++ b/cx3-demo/assets/img/rank2.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "c4e16a19-f101-4475-939d-b8e026f6474e", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "c4e16a19-f101-4475-939d-b8e026f6474e@6c48a", + "displayName": "rank2", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "c4e16a19-f101-4475-939d-b8e026f6474e" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "c4e16a19-f101-4475-939d-b8e026f6474e@f9941", + "displayName": "rank2", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 69, + "height": 75, + "rawWidth": 69, + "rawHeight": 75, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "c4e16a19-f101-4475-939d-b8e026f6474e@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "c4e16a19-f101-4475-939d-b8e026f6474e@f9941" + } +} diff --git a/cx3-demo/assets/img/rank3.png b/cx3-demo/assets/img/rank3.png new file mode 100644 index 0000000..4f098a7 Binary files /dev/null and b/cx3-demo/assets/img/rank3.png differ diff --git a/cx3-demo/assets/img/rank3.png.meta b/cx3-demo/assets/img/rank3.png.meta new file mode 100644 index 0000000..39dbd60 --- /dev/null +++ b/cx3-demo/assets/img/rank3.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "bfbbc12a-07df-4aec-b347-579c265f9e50", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "bfbbc12a-07df-4aec-b347-579c265f9e50@6c48a", + "displayName": "rank3", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "bfbbc12a-07df-4aec-b347-579c265f9e50" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "bfbbc12a-07df-4aec-b347-579c265f9e50@f9941", + "displayName": "rank3", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 71, + "height": 78, + "rawWidth": 71, + "rawHeight": 78, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "bfbbc12a-07df-4aec-b347-579c265f9e50@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "bfbbc12a-07df-4aec-b347-579c265f9e50@f9941" + } +} diff --git a/cx3-demo/assets/resources.meta b/cx3-demo/assets/resources.meta new file mode 100644 index 0000000..e9828a2 --- /dev/null +++ b/cx3-demo/assets/resources.meta @@ -0,0 +1,15 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "3ae5e34a-9cc7-4877-b3d5-f2cec8e22984", + "files": [], + "subMetas": {}, + "userData": { + "isBundle": true, + "bundleName": "resources", + "priority": 8, + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/resources/banner1.png b/cx3-demo/assets/resources/banner1.png new file mode 100644 index 0000000..9ab5951 Binary files /dev/null and b/cx3-demo/assets/resources/banner1.png differ diff --git a/cx3-demo/assets/resources/banner1.png.meta b/cx3-demo/assets/resources/banner1.png.meta new file mode 100644 index 0000000..1943245 --- /dev/null +++ b/cx3-demo/assets/resources/banner1.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "788de6e5-d68e-4d64-b425-9a33fb184595", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "788de6e5-d68e-4d64-b425-9a33fb184595@6c48a", + "displayName": "banner1", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "788de6e5-d68e-4d64-b425-9a33fb184595" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "788de6e5-d68e-4d64-b425-9a33fb184595@f9941", + "displayName": "banner1", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 750, + "height": 350, + "rawWidth": 750, + "rawHeight": 350, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "788de6e5-d68e-4d64-b425-9a33fb184595@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": false, + "type": "sprite-frame", + "redirect": "788de6e5-d68e-4d64-b425-9a33fb184595@f9941" + } +} diff --git a/cx3-demo/assets/resources/banner2.png b/cx3-demo/assets/resources/banner2.png new file mode 100644 index 0000000..0baa798 Binary files /dev/null and b/cx3-demo/assets/resources/banner2.png differ diff --git a/cx3-demo/assets/resources/banner2.png.meta b/cx3-demo/assets/resources/banner2.png.meta new file mode 100644 index 0000000..c679f25 --- /dev/null +++ b/cx3-demo/assets/resources/banner2.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "7101f089-a11f-4b14-abc1-92037e4c9275", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "7101f089-a11f-4b14-abc1-92037e4c9275@6c48a", + "displayName": "banner2", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "7101f089-a11f-4b14-abc1-92037e4c9275" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "7101f089-a11f-4b14-abc1-92037e4c9275@f9941", + "displayName": "banner2", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 750, + "height": 350, + "rawWidth": 750, + "rawHeight": 350, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "7101f089-a11f-4b14-abc1-92037e4c9275@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": false, + "type": "sprite-frame", + "redirect": "7101f089-a11f-4b14-abc1-92037e4c9275@f9941" + } +} diff --git a/cx3-demo/assets/resources/banner3.png b/cx3-demo/assets/resources/banner3.png new file mode 100644 index 0000000..712a724 Binary files /dev/null and b/cx3-demo/assets/resources/banner3.png differ diff --git a/cx3-demo/assets/resources/banner3.png.meta b/cx3-demo/assets/resources/banner3.png.meta new file mode 100644 index 0000000..6076c1d --- /dev/null +++ b/cx3-demo/assets/resources/banner3.png.meta @@ -0,0 +1,74 @@ +{ + "ver": "1.0.21", + "importer": "image", + "imported": true, + "uuid": "079ab863-f375-44c3-a1f1-f341273bf9a3", + "files": [ + ".png", + ".json" + ], + "subMetas": { + "6c48a": { + "importer": "texture", + "uuid": "079ab863-f375-44c3-a1f1-f341273bf9a3@6c48a", + "displayName": "banner3", + "id": "6c48a", + "name": "texture", + "userData": { + "wrapModeS": "repeat", + "wrapModeT": "repeat", + "minfilter": "linear", + "magfilter": "linear", + "mipfilter": "none", + "anisotropy": 0, + "isUuid": true, + "imageUuidOrDatabaseUri": "079ab863-f375-44c3-a1f1-f341273bf9a3" + }, + "ver": "1.0.21", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + }, + "f9941": { + "importer": "sprite-frame", + "uuid": "079ab863-f375-44c3-a1f1-f341273bf9a3@f9941", + "displayName": "banner3", + "id": "f9941", + "name": "spriteFrame", + "userData": { + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 750, + "height": 350, + "rawWidth": 750, + "rawHeight": 350, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "packable": true, + "isUuid": true, + "imageUuidOrDatabaseUri": "079ab863-f375-44c3-a1f1-f341273bf9a3@6c48a", + "atlasUuid": "" + }, + "ver": "1.0.9", + "imported": true, + "files": [ + ".json" + ], + "subMetas": {} + } + }, + "userData": { + "hasAlpha": true, + "type": "sprite-frame", + "redirect": "079ab863-f375-44c3-a1f1-f341273bf9a3@f9941" + } +} diff --git a/cx3-demo/assets/scene.meta b/cx3-demo/assets/scene.meta new file mode 100644 index 0000000..e57975c --- /dev/null +++ b/cx3-demo/assets/scene.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "e1b06b55-a5ea-40e2-9d6b-90255e8026a9", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/scene/mainScene.scene b/cx3-demo/assets/scene/mainScene.scene new file mode 100644 index 0000000..337cb40 --- /dev/null +++ b/cx3-demo/assets/scene/mainScene.scene @@ -0,0 +1,358 @@ +[ + { + "__type__": "cc.SceneAsset", + "_name": "", + "_objFlags": 0, + "_native": "", + "scene": { + "__id__": 1 + } + }, + { + "__type__": "cc.Scene", + "_name": "mainScene", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + } + ], + "_active": true, + "_components": [], + "_prefab": null, + "autoReleaseAssets": false, + "_globals": { + "__id__": 12 + }, + "_id": "272a8bdc-517b-4554-ba44-1c6f7f3e8456" + }, + { + "__type__": "cc.Node", + "_name": "Canvas", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + } + ], + "_active": true, + "_components": [ + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 375, + "y": 667, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "ceRJ02prBJyal3TidgBTQF" + }, + { + "__type__": "cc.Node", + "_name": "Camera", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 4 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 1000 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "a1ywYMCVxC/oMtWjC6O6Xe" + }, + { + "__type__": "cc.Camera", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": null, + "_projection": 0, + "_priority": 1073741824, + "_fov": 45, + "_fovAxis": 0, + "_orthoHeight": 667, + "_near": 1, + "_far": 2000, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_depth": 1, + "_stencil": 0, + "_clearFlags": 6, + "_rect": { + "__type__": "cc.Rect", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + "_aperture": 19, + "_shutter": 7, + "_iso": 0, + "_screenScale": 1, + "_visibility": 1107296256, + "_targetTexture": null, + "_id": "d7gTaTFrhCXpYCkIhV2TyV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "70Gonuur5ND7mdTjj4FGWu" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0dngp/9gNO34wUQjZfN/CX" + }, + { + "__type__": "cc.Canvas", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_cameraComponent": { + "__id__": 4 + }, + "_alignCanvasWithScreen": true, + "_id": "64BdrLMVVHu71mtQT051xu" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3f2oTdCepERZdpmIfLsrhd" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_alignFlags": 21, + "_target": null, + "_left": 375, + "_right": 375, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "b260vfwF9FD7efjNaWbu5m" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e8a+bU/8dPDbbJguUzLdoF" + }, + { + "__type__": "78dafQZ48xFc6KRyUXRyyIY", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": null, + "_id": "787yXeJmFKka7SQ7XRflUj" + }, + { + "__type__": "cc.SceneGlobals", + "ambient": { + "__id__": 13 + }, + "shadows": { + "__id__": 14 + }, + "_skybox": { + "__id__": 15 + }, + "fog": { + "__id__": 16 + } + }, + { + "__type__": "cc.AmbientInfo", + "_skyColor": { + "__type__": "cc.Color", + "r": 51, + "g": 128, + "b": 204, + "a": 1 + }, + "_skyIllum": 20000, + "_groundAlbedo": { + "__type__": "cc.Color", + "r": 51, + "g": 51, + "b": 51, + "a": 255 + } + }, + { + "__type__": "cc.ShadowsInfo", + "_type": 0, + "_enabled": false, + "_normal": { + "__type__": "cc.Vec3", + "x": 0, + "y": 1, + "z": 0 + }, + "_distance": 0, + "_shadowColor": { + "__type__": "cc.Color", + "r": 76, + "g": 76, + "b": 76, + "a": 255 + }, + "_autoAdapt": true, + "_pcf": 0, + "_bias": 0.00001, + "_packing": false, + "_linear": true, + "_selfShadow": false, + "_normalBias": 0, + "_near": 1, + "_far": 30, + "_aspect": 1, + "_orthoSize": 5, + "_maxReceived": 4, + "_size": { + "__type__": "cc.Vec2", + "x": 512, + "y": 512 + } + }, + { + "__type__": "cc.SkyboxInfo", + "_envmap": null, + "_isRGBE": false, + "_enabled": false, + "_useIBL": false + }, + { + "__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 + } +] \ No newline at end of file diff --git a/cx3-demo/assets/scene/mainScene.scene.meta b/cx3-demo/assets/scene/mainScene.scene.meta new file mode 100644 index 0000000..fcad111 --- /dev/null +++ b/cx3-demo/assets/scene/mainScene.scene.meta @@ -0,0 +1,11 @@ +{ + "ver": "1.1.27", + "importer": "scene", + "imported": true, + "uuid": "272a8bdc-517b-4554-ba44-1c6f7f3e8456", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script.meta b/cx3-demo/assets/script.meta new file mode 100644 index 0000000..be7fc4a --- /dev/null +++ b/cx3-demo/assets/script.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "971e8982-3c64-4686-97db-4113a6458f2b", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/script/config.ts b/cx3-demo/assets/script/config.ts new file mode 100644 index 0000000..b3ee849 --- /dev/null +++ b/cx3-demo/assets/script/config.ts @@ -0,0 +1,20 @@ +import {game} from 'cc'; + +game.appConfig = +{ + debug: true, //调试模式输出log + startPage: "ui/start", //开始页 + autoRemoveLaunchImage: false, //自动移除启动屏,为false时,在适当时候自行调用cx.removeLaunchImage() + + designSizeMinWidth: 0, //最小设计宽度,如果适配后的宽度小于该值,则适配模式自动变为宽度适配 + designSizeMinHeight: 750, //最小设计高度,如果适配后的高度小于该值,则适配模式自动变为高度适配 + + slideEventDisabled: false, //禁止子页面右划 + pageActionDisabled: false, //禁止页面显示和退出动画 + androidkeyDisabled: false, //禁止android返回键 + + hintFontSize: 36, //cx.hint 文字尺寸 + hintFontColor: "ff0000", //cx.hint 文字颜色 + hintFontOutlineWidth: 1, //cx.hint 文字描边宽度 + hintFontOutlineColor: "777777", //cx.hint 文字描边颜色 +} \ No newline at end of file diff --git a/cx3-demo/assets/script/config.ts.meta b/cx3-demo/assets/script/config.ts.meta new file mode 100644 index 0000000..43a3a75 --- /dev/null +++ b/cx3-demo/assets/script/config.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "f5b81b3d-0795-4ccd-b16f-b1f49e2e7bfd", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page.meta b/cx3-demo/assets/script/page.meta new file mode 100644 index 0000000..076bb08 --- /dev/null +++ b/cx3-demo/assets/script/page.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "0a21e66a-e568-45bf-a7d1-68fd523bced5", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/cx3-demo/assets/script/page/home.ts b/cx3-demo/assets/script/page/home.ts new file mode 100644 index 0000000..a2db380 --- /dev/null +++ b/cx3-demo/assets/script/page/home.ts @@ -0,0 +1,130 @@ +import {_decorator, Component, Node, Sprite, Label} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('home') +class Home extends Component +{ + start () + { + cx.log("Home start..."); + cx.gn(this, "spShowPage").setTouchCallback(this, this.showPage, "ui/pageChild"); + cx.gn(this, "spHint").setTouchCallback(this, this.hint); + cx.gn(this, "spAlert").setTouchCallback(this, this.alert); + cx.gn(this, "spConfirm").setTouchCallback(this, this.confirm); + cx.gn(this, "spShowLoading").setTouchCallback(this, this.showLoading); + cx.gn(this, "spRemoveLoading").setTouchCallback(this, this.removeLoading); + cx.gn(this, "spPageScrollView").setTouchCallback(this, this.showPage, "ui/pageScrollView"); + cx.gn(this, "spPageBanner").setTouchCallback(this, this.showPage, "ui/pageBanner"); + cx.gn(this, "spPicker").setTouchCallback(this, this.showPage, "ui/pagePicker"); + cx.gn(this, "spLoadRemoteImage").setTouchCallback(this, this.loadRemoteImage); + cx.gn(this, "spNative1").setTouchCallback(this, this.callNative1); + cx.gn(this, "spNative2").setTouchCallback(this, this.callNative2); + cx.gn(this, "spVideo").setTouchCallback(this, this.showPage, "ui/pageVideo"); + + this.scheduleOnce(cx.removeLaunchImage, 0.3); + } + + showPage (sender: Node, page:string) + { + cx.showPage(page); + } + + hint () + { + cx.hint("cx.hint(content)"); + } + + alert () + { + cx.alert("cx.alert(content, callback, labelOk)"); + } + + confirm () + { + cx.confirm("cx.confirm(content, callback, labelOk, labelCancel)", cx.hint); + } + + showLoading (sender: Node) + { + sender.getChildByName("label")!.getComponent(Label)!.string = ""; + cx.showLoading(this, sender); + //在查询服务中,一般使用延迟0.5秒执行: + //cx.showLoading(this, sender, 0.5); + } + + removeLoading () + { + cx.gn(this, "spShowLoading").getChildByName("label")!.getComponent(Label)!.string = "cx.showLoading"; + cx.removeLoading(cx.gn(this, "spShowLoading")); + } + + loadRemoteImage () + { + if (cx.os.native) + { + var url = "https://www.cocos.com/wp-content/themes/cocos/image/logo.png"; + //从远程取图片, localPath: 保存到本地路径,并优先从该路径取图片 + cx.res.setImageFromRemote(cx.gn(this, "spLoadRemoteImage"), url, cx.sys.cachePath + "cocos_logo.png", Sprite.SizeMode.TRIMMED); + } + else + cx.hint("only for native!"); + + // 从resources目录取图片: + // cx.res.setImageFromRes(cx.gn(this, "spLoadRemoteImage"), "xx", Sprite.SizeMode.CUSTOM, callback); + + // 从bundle目录取图片 + // cx.res.setImageFromBundle(cx.gn(this, "spLoadRemoteImage"), "cx.prefab/s_loading", Sprite.SizeMode.CUSTOM, callback); + + // 上传图片: + // cx.serv.upload("http://localhost:7300/cxserv/app/system/uploadFile", cx.sys.cachePath + "a1.png"); + } + + callNative1 () + { + if (cx.os.native) + { + // ex: cx.native.ins("接口名").call("函数名", [参数], this.callNativeCallback.bind(this)); + // 回调函数:callNativeCallback (number, string) + + var ret = cx.native.ins("cx.sys").call("getPackageName", []); + cx.hint("native return: " + ret); + } + else + cx.hint("only for native!"); + } + + callNative2 () + { + if (cx.os.ios || cx.os.android) + cx.native.ins("system").call("callPhone", ["10000"]); + else + cx.hint("only for ios or android!"); + } + + // location () + // { + // if (cx.os.ios || cx.os.android) + // { + // cx.showLoading(this, this.node, 0.5); + // cx.native.ins("amapLocation").call("location", [true], this.locationCallback.bind(this)); + // } + // else + // cx.hint("only for ios or android!"); + // } + + // locationCallback (succ: number, info: string) + // { + // cx.removeLoading(this.node); + // if (succ) + // { + // var obj = JSON.parse(info); + // var s = ""; + // for (var i in obj) + // s += i + ": " + obj[i] + "\n"; + // cx.alert(s); + // } + // else + // cx.alert("location failure: " + info); + // } +} + diff --git a/cx3-demo/assets/script/page/home.ts.meta b/cx3-demo/assets/script/page/home.ts.meta new file mode 100644 index 0000000..b9a0de4 --- /dev/null +++ b/cx3-demo/assets/script/page/home.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "5be63ed4-375a-425e-baa1-f1a369d91bfd", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/pageBanner.ts b/cx3-demo/assets/script/page/pageBanner.ts new file mode 100644 index 0000000..fe8ffc0 --- /dev/null +++ b/cx3-demo/assets/script/page/pageBanner.ts @@ -0,0 +1,45 @@ +import {_decorator, Component, Node, PageView, UITransform} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('pageBanner') +class pageBanner extends Component +{ + data: any; + + start () + { + cx.gn(this, "spClose").setTouchCallback(this, cx.closePage); + + this.scheduleOnce(this.loadBanner, 0.5); + + cx.script.pageView.initAutoScroll(this, "viewBanner", 2, true, this.onBannerClick); //自动循环滚动 + } + + loadBanner () + { + var data = [ + {id:1, img: "banner1"}, + {id:2, img: "banner2"}, + {id:3, img: "banner3"} + ]; + + var pageView: PageView = cx.gn(this, "viewBanner").getComponent(PageView)!; + pageView.removeAllPages(); + for (var i in data) + { + var node: Node = new Node(); + node.pro().dataIndex = i; + node.addComponent(UITransform).setContentSize(pageView.node.getContentSize()); + pageView.addPage(node); + cx.res.setImageFromRes(node, data[i].img); + } + + this.data = data; + } + + onBannerClick (page: Node) + { + cx.hint("banner id: " + this.data[page.pro().dataIndex].id); + } +} + diff --git a/cx3-demo/assets/script/page/pageBanner.ts.meta b/cx3-demo/assets/script/page/pageBanner.ts.meta new file mode 100644 index 0000000..82b491a --- /dev/null +++ b/cx3-demo/assets/script/page/pageBanner.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "b8721887-5481-415b-9f31-719ecd12703b", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/pageChild.ts b/cx3-demo/assets/script/page/pageChild.ts new file mode 100644 index 0000000..2da9df7 --- /dev/null +++ b/cx3-demo/assets/script/page/pageChild.ts @@ -0,0 +1,25 @@ +import {_decorator, Component} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('pageChild') +class PageChild extends Component +{ + start () + { + // 关闭页面的两种方式: + cx.gn(this, "spClose").setTouchCallback(this, cx.closePage); + cx.gn(this, "spClosePage").setTouchCallback(this, this.close); + + cx.gn(this, "spAlert").setTouchCallback(this, () => { cx.alert("pageChild alert"); }); + + //cx.showPage可以直接放在setTouchCallback里 + cx.gn(this, "spShowPage").setTouchCallback(this, cx.showPage, "ui/pageChild"); + } + + close () + { + //do something + cx.closePage(this); + } +} + diff --git a/cx3-demo/assets/script/page/pageChild.ts.meta b/cx3-demo/assets/script/page/pageChild.ts.meta new file mode 100644 index 0000000..bd8eb7d --- /dev/null +++ b/cx3-demo/assets/script/page/pageChild.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "64ed96d0-f2c5-41de-a2d1-d64c0313d5c0", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/pagePicker.ts b/cx3-demo/assets/script/page/pagePicker.ts new file mode 100644 index 0000000..0589d5e --- /dev/null +++ b/cx3-demo/assets/script/page/pagePicker.ts @@ -0,0 +1,39 @@ +import {_decorator, Component, Node, Label} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('pagePicker') +class PagePicker extends Component +{ + start () + { + cx.gn(this, "spClose").setTouchCallback(this, cx.closePage); + cx.gn(this, "spYearMonth").setTouchCallback(this, this.showPicker); + cx.gn(this, "spMonthDay").setTouchCallback(this, this.showPicker); + cx.gn(this, "spYearMonthDay").setTouchCallback(this, this.showPicker); + cx.gn(this, "spHourMinute").setTouchCallback(this, this.showPicker); + cx.gn(this, "spString").setTouchCallback(this, this.showPicker); + cx.gn(this, "spObject").setTouchCallback(this, this.showPicker); + } + + showPicker (sender: Node) + { + switch (sender.name) + { + case "spYearMonth": cx.picker.createYearMonth(this, this.pickerCallback, cx.picker.year(-1, 1)); break; + case "spMonthDay": cx.picker.createMonthDay(this, this.pickerCallback, cx.picker.month(1), 2, null, 28); break; + case "spYearMonthDay": cx.picker.createYearMonthDay(this, this.pickerCallback, cx.picker.year(-3, 0)); break; + case "spHourMinute": cx.picker.createHourMinute(this, this.pickerCallback); break; + case "spString": cx.picker.create(this, this.pickerCallback, [{data:["A", "B"], index:1}]); break; + case "spObject": cx.picker.create(this, this.pickerCallback, [{data:[{id:1, name:"A"}, {id:2, name:"B"}], display:"name", index:1}]); break; + } + } + + pickerCallback () + { + var s = "\n"; + for (var i in arguments) + s += JSON.stringify(arguments[i]) + "\n"; + cx.gn(this, "lblSelected").getComponent(Label)!.string = s; + } +} + diff --git a/cx3-demo/assets/script/page/pagePicker.ts.meta b/cx3-demo/assets/script/page/pagePicker.ts.meta new file mode 100644 index 0000000..b781119 --- /dev/null +++ b/cx3-demo/assets/script/page/pagePicker.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "d2e4ba14-2bbd-4fa8-8bbb-7afebacf7520", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/pageScrollView.ts b/cx3-demo/assets/script/page/pageScrollView.ts new file mode 100644 index 0000000..d4df408 --- /dev/null +++ b/cx3-demo/assets/script/page/pageScrollView.ts @@ -0,0 +1,63 @@ +import {_decorator, Component, Node, Label, color} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('pageScrollView') +class pageScrollView extends Component +{ + dataCount: number = 0; + isRefresh: boolean = false; + + start () + { + cx.gn(this, "spClose").setTouchCallback(this, cx.closePage); + + cx.script.scrollView.initDeltaInsert(this, "view", this.queryData); //设置增量新增数据到view的能力 + cx.script.scrollView.initDropRefresh(this, "view", this.refreshData); //设置下拉刷新能力 + + this.queryData(); + } + + refreshData () + { + this.dataCount = 0; + this.isRefresh = true; + this.queryData(); + } + + queryData () + { + //模拟从服务器取数据,0.5秒后获得数据 + cx.log("queryData " + this.dataCount); + this.scheduleOnce(this.queryDataOk, 0.5); + } + + queryDataOk () + { + cx.log("queryDataOk..."); + if (this.isRefresh) + { + this.isRefresh = false; + cx.gn(this, "content").removeAllChildren(); + } + + for (var i = 0; i < 20; i++) + this.createPanel(); + + cx.script.scrollView.overDeltaInsert(this, this.dataCount > 200); //结束新增能力,模拟总数量200个 + cx.script.scrollView.overDropRefresh(this); //结束本次下拉刷新 + } + + + createPanel () + { + var node = new Node(); + node.addComponent(Label).string = ++this.dataCount + ""; + node.getComponent(Label)!.color = color("555555"); + + var panel = cx.createPanel("ffffffff", cx.sw, 100); + panel.addChild(node); + + cx.gn(this, "content").addChild(panel); + } +} + diff --git a/cx3-demo/assets/script/page/pageScrollView.ts.meta b/cx3-demo/assets/script/page/pageScrollView.ts.meta new file mode 100644 index 0000000..7250ac4 --- /dev/null +++ b/cx3-demo/assets/script/page/pageScrollView.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "4a8b8222-d7ed-44bb-ab1d-115087a9c42a", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/pageVideo.ts b/cx3-demo/assets/script/page/pageVideo.ts new file mode 100644 index 0000000..e0aee0e --- /dev/null +++ b/cx3-demo/assets/script/page/pageVideo.ts @@ -0,0 +1,105 @@ +import {_decorator, Node, Component, Label} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('pageVideo') +class PageVideo extends Component +{ + maskName?: string; + videoName?: string; + videoNodeList!: any[]; + + start () + { + cx.gn(this, "spClose").setTouchCallback(this, cx.closePage); + cx.gn(this, "spShowPage").setTouchCallback(this, this.showPage); + cx.gn(this, "spAlert").setTouchCallback(this, this.alert); + + if (!cx.os.ios && !cx.os.android) + { + cx.gn(this, "lblVideo").getComponent(Label)!.string = "please run on iOS or android."; + return; + } + + cx.gn(this, "nodeVideo").setTouchCallback(this, this.setVideoFullScreen); + + //创建一个mask遮罩(扣除标题栏的全屏区域) + var titleSize = cx.gn(this, "layerTitle").getContentSize(); + this.maskName = cx.script.nativeMask.init(this, undefined, 0, cx.sh-titleSize.height, cx.sw, cx.sh-titleSize.height); + var node = cx.gn(this, "nodeVideo"); + var rect = cx.convertToDeviceSize(node, 0, 0, node.getWidth(), node.getHeight()); + var intf = cx.native.ins("video"); + + //在遮罩中创建一个video + this.videoName = node.name; + intf.call("createInMask", [this.videoName, this.maskName, rect.x, rect.y, rect.width, rect.height]); + intf.call("setRoundRadius", [this.videoName, 18]); + intf.call("play", [this.videoName, "1.mp4"], this.videoCallback.bind(this)); //statics/1.mp4 + // intf.call("play", [this.videoName, "http://vjs.zencdn.net/v/oceans.mp4"], this.videoCallback.bind(this)); + + // 所有方法 + // intf.call("create", [this.videoName, rect.x, rect.y, rect.width, rect.height]); //创建视频 + // intf.call("createInMask", [this.videoName, maskName, rect.x, rect.y, rect.width, rect.height]); //在遮罩中创建视频 + // intf.call("setRoundRadius", [this.videoName, radius]); //设置圆角遮罩 + // intf.call("play", [this.videoName, url, callback]);//播放 + // intf.call("pause", [this.videoName, true]); //暂停播放并隐藏 + // intf.call("resume", [this.videoName]); //继续播放 + // intf.call("removeVideo", [this.videoName]); //关闭并移除 + // intf.call("removeInMask", [maskName]); //关闭所有mask中的video + // intf.call("seekToTime", [this.videoName, 0]); //跳到x秒处,默认值 0 + // intf.call("lockSeek", [this.videoName, true]); //禁止拉动进度条,默认值 false + // intf.call("showBar", [this.videoName, true]); //显示控制栏,默认值 false + // intf.call("setFullScreen", [this.videoName, true]);//全屏播放,默认值 false + // intf.call("setPosition", [this.videoName, x, y]); //设置位置 + + this.videoNodeList = this.videoNodeList || []; + this.videoNodeList.push(node); + } + + showPage () + { + this.videoName && cx.native.ins("video").call("pause", [this.videoName, !!cx.os.android]); + cx.showPage("ui/pageChild"); + } + + alert () + { + cx.alert("这是一个显示在原生视频层之上效果的cocos界面(android暂未实现)"); + } + + setVideoFullScreen (sender: Node) + { + cx.native.ins("video").call("setFullScreen", [sender.name, true]); + } + + videoCallback (state: number, value: string) + { + cx.log("video state:" + state + ", value: " + value); + cx.gn(this, "lblVideo")!.getComponent(Label)!.string = "state:" + state + " value: " + value; + } + + update () + { + for (var i in this.videoNodeList) + { + var node = this.videoNodeList[i]; + var leftTop = cx.convertToDeviceSize(node, 0, 0); + if (node.priorX != Math.round(leftTop.x) || node.priorY != Math.round(leftTop.y)) + { + node.priorX = Math.round(leftTop.x); + node.priorY = Math.round(leftTop.y); + cx.native.ins("video").call("setPosition", [this.videoName, leftTop.x, leftTop.y]); + } + } + } + + onChildPageClosed(childPage: any) + { + this.videoName && cx.native.ins("video").call("resume", [this.videoName]); + } + + onDestroy () + { + this.maskName && cx.native.ins("video").call("removeInMask", [this.maskName]); + } +} + diff --git a/cx3-demo/assets/script/page/pageVideo.ts.meta b/cx3-demo/assets/script/page/pageVideo.ts.meta new file mode 100644 index 0000000..1c8527e --- /dev/null +++ b/cx3-demo/assets/script/page/pageVideo.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "25316e67-d064-4a6d-9233-a5e08407e7f9", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/script/page/start.ts b/cx3-demo/assets/script/page/start.ts new file mode 100644 index 0000000..e3f4b3f --- /dev/null +++ b/cx3-demo/assets/script/page/start.ts @@ -0,0 +1,49 @@ +import {_decorator, Component, Node, color, Label} from 'cc'; +const {ccclass} = _decorator; + +@ccclass('start') +class Start extends Component +{ + tabs!: any[]; + onLoad () + { + console.log("Start onLoad..."); + + this.node.slideEventDisabled = true; + this.node.pageActionDisabled = true; + this.node.androidBackHandler = "closeApp"; + + this.tabs = [ + {name: "ui/home"}, + {name: "ui/mine"} + ]; + + cx.gn(this, "tabHome").setTouchCallback(this, this.showTab, 0); + cx.gn(this, "tabMine").setTouchCallback(this, this.showTab, 1); + + this.showTab(undefined, 0); + } + + showTab (sender: any, index: any) + { + for (var i in this.tabs) + { + var tab: any = this.tabs[i]; + if (tab.page) + tab.page.active = i == index; + else if (i == index) + { + tab.page = {}; + cx.addPage(cx.gn(this, "layerPage"), tab.name, undefined, (page:Node) => { this.tabs[index].page = page; }); + } + } + var children = cx.gn(this, "layerTab").children; + for (var i in children) + { + var child:Node = children[i]; + child.getChildByName("img")!.active = i == index; + child.getChildByName("imgGray")!.active = i != index; + child.getChildByName("label")!.getComponent(Label)!.color = color(i == index ? "22A1FF" : "777777"); + } + } +} diff --git a/cx3-demo/assets/script/page/start.ts.meta b/cx3-demo/assets/script/page/start.ts.meta new file mode 100644 index 0000000..05d172e --- /dev/null +++ b/cx3-demo/assets/script/page/start.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.22", + "importer": "typescript", + "imported": true, + "uuid": "dd9c6400-5e86-497a-a04b-226cafc786c2", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/cx3-demo/assets/ui.meta b/cx3-demo/assets/ui.meta new file mode 100644 index 0000000..4c61c56 --- /dev/null +++ b/cx3-demo/assets/ui.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "78a8d1d9-ccd6-4669-ba41-6d100ed491a1", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {}, + "isBundle": true + } +} diff --git a/cx3-demo/assets/ui/home.prefab b/cx3-demo/assets/ui/home.prefab new file mode 100644 index 0000000..aa1830f --- /dev/null +++ b/cx3-demo/assets/ui/home.prefab @@ -0,0 +1,5743 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "home", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 244 + } + ], + "_active": true, + "_components": [ + { + "__id__": 258 + }, + { + "__id__": 260 + }, + { + "__id__": 262 + } + ], + "_prefab": { + "__id__": 264 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 217 + } + ], + "_active": true, + "_components": [ + { + "__id__": 235 + }, + { + "__id__": 237 + }, + { + "__id__": 232 + }, + { + "__id__": 239 + }, + { + "__id__": 241 + } + ], + "_prefab": { + "__id__": 243 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 210 + }, + { + "__id__": 212 + }, + { + "__id__": 214 + } + ], + "_prefab": { + "__id__": 216 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + }, + { + "__id__": 35 + }, + { + "__id__": 65 + }, + { + "__id__": 95 + }, + { + "__id__": 125 + }, + { + "__id__": 155 + }, + { + "__id__": 185 + } + ], + "_active": true, + "_components": [ + { + "__id__": 203 + }, + { + "__id__": 205 + }, + { + "__id__": 207 + } + ], + "_prefab": { + "__id__": 209 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 602, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 18 + } + ], + "_active": true, + "_components": [ + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -51, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spShowPage", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 7 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 6 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 190.33, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.showPage", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f08MNWi+NOz7eS0wv91jO7" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8fdKd9g5NMtr5JVqSCArp/" + }, + { + "__type__": "cc.Node", + "_name": "spHint", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 29 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 18 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 20 + }, + { + "__id__": 22 + } + ], + "_prefab": { + "__id__": 24 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 172.5, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "efn+kV295LfaXJfx8bDUXv" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 23 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.showHint", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8fPLoH2BVKaLE9DbvDxU20" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "bd1E0U9oVLO65qptw4NIQp" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e4AVjtxPJDWolEJ8odZYuh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "92i44XuTRCPYrw33U8OcvF" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "83wMz8wmVFgaLzrnPbpujG" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4eN0EPdXRBr688JGsBbqjp" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b21eDRWIFNJaxS/K8gfhCb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d0SFw1BZBOlJAQ9r5rEIoz" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 36 + }, + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 60 + }, + { + "__id__": 62 + } + ], + "_prefab": { + "__id__": 64 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -152, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spAlert", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [ + { + "__id__": 37 + } + ], + "_active": true, + "_components": [ + { + "__id__": 43 + }, + { + "__id__": 45 + } + ], + "_prefab": { + "__id__": 47 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 36 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 38 + }, + { + "__id__": 40 + } + ], + "_prefab": { + "__id__": 42 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 37 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 103.14, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "5521zW3v5NPrQJTvZTAWUe" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 37 + }, + "_enabled": true, + "__prefab": { + "__id__": 41 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.alert", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "793ccmMbdPeoTlOi6EKGqm" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7d5izgUrtCD5JE8GtgyM2Q" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "6cWuyxxZZPOaSFHGgNEfs+" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 46 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "55Irqzvh1CyqCtHQFP+00J" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d72m9HM3RCFqxy5ePuZ7Wd" + }, + { + "__type__": "cc.Node", + "_name": "spConfirm", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [ + { + "__id__": 49 + } + ], + "_active": true, + "_components": [ + { + "__id__": 55 + }, + { + "__id__": 57 + } + ], + "_prefab": { + "__id__": 59 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 48 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 50 + }, + { + "__id__": 52 + } + ], + "_prefab": { + "__id__": 54 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 51 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 145.8, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "873MUmNCdOM4Yxo6QQDnqa" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 53 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.confirm", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2foVxdyHpEJ7O1+MfQN/Vw" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7bWjj3keRAiqHrBSMzOCsG" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "32GKZ8S09HOb00hsNgLe2/" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "08IAVzBXFKJJNt/mpJffB6" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "93+AfmyNVPbY79wkYFegbF" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 61 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "40iybjN6tOQaGKi88tF3Bk" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 63 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f9+h86iwJA2Ix+K9PZg5a8" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97SjHu8rJOTprrP2DE/YpC" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 66 + }, + { + "__id__": 78 + } + ], + "_active": true, + "_components": [ + { + "__id__": 90 + }, + { + "__id__": 92 + } + ], + "_prefab": { + "__id__": 94 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -253, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spShowLoading", + "_objFlags": 0, + "_parent": { + "__id__": 65 + }, + "_children": [ + { + "__id__": 67 + } + ], + "_active": true, + "_components": [ + { + "__id__": 73 + }, + { + "__id__": 75 + } + ], + "_prefab": { + "__id__": 77 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 66 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 68 + }, + { + "__id__": 70 + } + ], + "_prefab": { + "__id__": 72 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 229.48, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "72256MsbRJ0IbWxOOVurG3" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": true, + "__prefab": { + "__id__": 71 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.showLoading", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b3m4jlwNROM4Zfq19u0M4c" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b2U2GBi+FIY4zRaX4ud2e1" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 66 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e13CWuIGxH/LQtG4lXbnCa" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 66 + }, + "_enabled": true, + "__prefab": { + "__id__": 76 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "ab4GgRTPFDpKFZ2yShMhp3" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "721aCLCrVGp7WGrZhNgAyw" + }, + { + "__type__": "cc.Node", + "_name": "spRemoveLoading", + "_objFlags": 0, + "_parent": { + "__id__": 65 + }, + "_children": [ + { + "__id__": 79 + } + ], + "_active": true, + "_components": [ + { + "__id__": 85 + }, + { + "__id__": 87 + } + ], + "_prefab": { + "__id__": 89 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 78 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 80 + }, + { + "__id__": 82 + } + ], + "_prefab": { + "__id__": 84 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 79 + }, + "_enabled": true, + "__prefab": { + "__id__": 81 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 261.48, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "63IdHZD+ZJyJbm+AObvvMR" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 79 + }, + "_enabled": true, + "__prefab": { + "__id__": 83 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.removeLoading", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8e/54DngxMEZsXXggL5RCe" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "31IRhB8eFH+69/V/tpSLk8" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 86 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "25GvkBQZ5C15NJK+mLlpaY" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 88 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "79k+ovzM5JerothO7uWAsE" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "4cz040uvtAUJ7pFGhmtib2" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 65 + }, + "_enabled": true, + "__prefab": { + "__id__": 91 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "33EgTG67NJs4FA2czmEWXB" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 65 + }, + "_enabled": true, + "__prefab": { + "__id__": 93 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d2VYVZhA5Db5QazEBzsh6O" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "39HPyBmx9AP4omhJtDlEY8" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 96 + }, + { + "__id__": 108 + } + ], + "_active": true, + "_components": [ + { + "__id__": 120 + }, + { + "__id__": 122 + } + ], + "_prefab": { + "__id__": 124 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -354, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spPageScrollView", + "_objFlags": 0, + "_parent": { + "__id__": 95 + }, + "_children": [ + { + "__id__": 97 + } + ], + "_active": true, + "_components": [ + { + "__id__": 103 + }, + { + "__id__": 105 + } + ], + "_prefab": { + "__id__": 107 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 96 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 98 + }, + { + "__id__": 100 + } + ], + "_prefab": { + "__id__": 102 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 97 + }, + "_enabled": true, + "__prefab": { + "__id__": 99 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 243.05, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7bPlSSo4xIV4j+Quomhq0i" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 97 + }, + "_enabled": true, + "__prefab": { + "__id__": 101 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "ScrollView Demo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9cWJb/Q/pLvainVsbjOJUF" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "66jHOxnM9Pkae82Yfzycr5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 96 + }, + "_enabled": true, + "__prefab": { + "__id__": 104 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "150SoW91FP85EE46HDVkpY" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 96 + }, + "_enabled": true, + "__prefab": { + "__id__": 106 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "16IkeRMJRH95hK8/294ODC" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "6ccdPKTbpBnLtHgm3I7A5K" + }, + { + "__type__": "cc.Node", + "_name": "spPageBanner", + "_objFlags": 0, + "_parent": { + "__id__": 95 + }, + "_children": [ + { + "__id__": 109 + } + ], + "_active": true, + "_components": [ + { + "__id__": 115 + }, + { + "__id__": 117 + } + ], + "_prefab": { + "__id__": 119 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 108 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 110 + }, + { + "__id__": 112 + } + ], + "_prefab": { + "__id__": 114 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 109 + }, + "_enabled": true, + "__prefab": { + "__id__": 111 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 228.88, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "bdqLA8xRJFn6tVuRh2fANV" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 109 + }, + "_enabled": true, + "__prefab": { + "__id__": 113 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "PageViewDemo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "adL8s4rK1A8LJCPGrpVeqq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "05LysSFaNNfKmjy851Vjmf" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "__prefab": { + "__id__": 116 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d21jK+ErBKuZCu3EQnZ/qw" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "__prefab": { + "__id__": 118 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "52DOZbbuxPfrJPY5R+SShH" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5fIeOxVgtHjIFqQVEeyKqM" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 95 + }, + "_enabled": true, + "__prefab": { + "__id__": 121 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a0EXLMwKNFs5DXuV/PadBn" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 95 + }, + "_enabled": true, + "__prefab": { + "__id__": 123 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "29aD4RfGBHl4xty6VzDUKK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7eXm4YaDFMWLoffXAr2zLf" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 126 + }, + { + "__id__": 138 + } + ], + "_active": true, + "_components": [ + { + "__id__": 150 + }, + { + "__id__": 152 + } + ], + "_prefab": { + "__id__": 154 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -455, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spPicker", + "_objFlags": 0, + "_parent": { + "__id__": 125 + }, + "_children": [ + { + "__id__": 127 + } + ], + "_active": true, + "_components": [ + { + "__id__": 133 + }, + { + "__id__": 135 + } + ], + "_prefab": { + "__id__": 137 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 126 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 128 + }, + { + "__id__": 130 + } + ], + "_prefab": { + "__id__": 132 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 127 + }, + "_enabled": true, + "__prefab": { + "__id__": 129 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 183.16, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "87bk2q5O9PM7joFfxeXz/D" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 127 + }, + "_enabled": true, + "__prefab": { + "__id__": 131 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "Picker Demo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "aaoo/XnyxMib0wFnma7UaK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "31YN9rgv5HjYjUMG+/Cq1T" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 126 + }, + "_enabled": true, + "__prefab": { + "__id__": 134 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a7WS3nohdK3ae7MUs+Yl7/" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 126 + }, + "_enabled": true, + "__prefab": { + "__id__": 136 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "4drlDTsg9JsZtxLbhoXpxI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "164QqqYStPELfYg/sPukJq" + }, + { + "__type__": "cc.Node", + "_name": "spLoadRemoteImage", + "_objFlags": 0, + "_parent": { + "__id__": 125 + }, + "_children": [ + { + "__id__": 139 + } + ], + "_active": true, + "_components": [ + { + "__id__": 145 + }, + { + "__id__": 147 + } + ], + "_prefab": { + "__id__": 149 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 138 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 140 + }, + { + "__id__": 142 + } + ], + "_prefab": { + "__id__": 144 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 139 + }, + "_enabled": true, + "__prefab": { + "__id__": 141 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 280, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2dzT02undJ94rNLMNA6lzD" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 139 + }, + "_enabled": true, + "__prefab": { + "__id__": 143 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "LoadRemoteImage", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3955SB2btO0IHv9AL6/cH1" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a36RdHF69GVbdnV3+4HcFG" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 138 + }, + "_enabled": true, + "__prefab": { + "__id__": 146 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "fb1fi8CxFDToHSxgO42Rjz" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 138 + }, + "_enabled": true, + "__prefab": { + "__id__": 148 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "34OlwD/TpOGY9DVBg5s4LG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "32ShJpTlRHaZJrMgcfOpvZ" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 125 + }, + "_enabled": true, + "__prefab": { + "__id__": 151 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "aa33u5v8JPs4B56qBOyxxv" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 125 + }, + "_enabled": true, + "__prefab": { + "__id__": 153 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0akF/jThJPcY/86FFJEaxq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "54WVC4uyZCSbjHSh33nJwN" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 156 + }, + { + "__id__": 168 + } + ], + "_active": true, + "_components": [ + { + "__id__": 180 + }, + { + "__id__": 182 + } + ], + "_prefab": { + "__id__": 184 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -556, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spNative1", + "_objFlags": 0, + "_parent": { + "__id__": 155 + }, + "_children": [ + { + "__id__": 157 + } + ], + "_active": true, + "_components": [ + { + "__id__": 163 + }, + { + "__id__": 165 + } + ], + "_prefab": { + "__id__": 167 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 156 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 158 + }, + { + "__id__": 160 + } + ], + "_prefab": { + "__id__": 162 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 157 + }, + "_enabled": true, + "__prefab": { + "__id__": 159 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 280, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "28CZhokbNIiKWEMBxQ7nIU" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 157 + }, + "_enabled": true, + "__prefab": { + "__id__": 161 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "native: packageName", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 28, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 2, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "17VCCDREhKHpjHL/JkaFa7" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "34E2Ztr6hOS5+tPbQSt9pe" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 156 + }, + "_enabled": true, + "__prefab": { + "__id__": 164 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "25oBIiAitJdJ1aqX0KXj0A" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 156 + }, + "_enabled": true, + "__prefab": { + "__id__": 166 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "5aMAP7AZtC27T2GkIDZ7SZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f76XMxAvhH8LkJ0yVbAGzx" + }, + { + "__type__": "cc.Node", + "_name": "spNative2", + "_objFlags": 0, + "_parent": { + "__id__": 155 + }, + "_children": [ + { + "__id__": 169 + } + ], + "_active": true, + "_components": [ + { + "__id__": 175 + }, + { + "__id__": 177 + } + ], + "_prefab": { + "__id__": 179 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 168 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 170 + }, + { + "__id__": 172 + } + ], + "_prefab": { + "__id__": 174 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 169 + }, + "_enabled": true, + "__prefab": { + "__id__": 171 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 243.72, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "32DFj/fyRFXqY0zMpvlND2" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 169 + }, + "_enabled": true, + "__prefab": { + "__id__": 173 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "native: callPhone", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "61SsHtD59Pybwen+x7QaZq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7aZggYeJtFz4ijwQ6FsAt8" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 168 + }, + "_enabled": true, + "__prefab": { + "__id__": 176 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9cD9bU54xHDJ7/r33vkEdO" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 168 + }, + "_enabled": true, + "__prefab": { + "__id__": 178 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "961TMC7o1KWYLGpF0TTg5S" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "0eHxUXDeZF07STofP9tblG" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 155 + }, + "_enabled": true, + "__prefab": { + "__id__": 181 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "83K3c19e9PUI7HCqnbraOX" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 155 + }, + "_enabled": true, + "__prefab": { + "__id__": 183 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4fTjd/t/NNl7jgxq7wnqM7" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "73Ixr7LiBId7ub7e6av8LF" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 186 + } + ], + "_active": true, + "_components": [ + { + "__id__": 198 + }, + { + "__id__": 200 + } + ], + "_prefab": { + "__id__": 202 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -657, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spVideo", + "_objFlags": 0, + "_parent": { + "__id__": 185 + }, + "_children": [ + { + "__id__": 187 + } + ], + "_active": true, + "_components": [ + { + "__id__": 193 + }, + { + "__id__": 195 + } + ], + "_prefab": { + "__id__": 197 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 186 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 188 + }, + { + "__id__": 190 + } + ], + "_prefab": { + "__id__": 192 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 187 + }, + "_enabled": true, + "__prefab": { + "__id__": 189 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 448.2, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b2EFBVFzlJuoXxSoMssI1Z" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 187 + }, + "_enabled": true, + "__prefab": { + "__id__": 191 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "video demo & native view mask", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "44TqefLQBH0bAHnThjnuqr" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c8PRg6Ax1K0pM7LBbxGFe2" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 186 + }, + "_enabled": true, + "__prefab": { + "__id__": 194 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 670, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3dtn/VHndPX7Ilv8RNoEMS" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 186 + }, + "_enabled": true, + "__prefab": { + "__id__": 196 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "d1ewVoVyZKPZTOArub+hJ7" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3aYmBc7qlNZ5C2Go3LkXds" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 185 + }, + "_enabled": true, + "__prefab": { + "__id__": 199 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1eVrVOt7tKN4QxN1Z6fu2G" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 185 + }, + "_enabled": true, + "__prefab": { + "__id__": 201 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "48AXoNqadDHpWirPAYJ/8R" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "16Bg3Kce9Bu6aM/VsLku3r" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 204 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 707 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "99yn0cfL9MmZYfJbPmK9qL" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 206 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "afExBbBO9AtbCJ3ZGbqGHB" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 208 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b9DGrIyiFGCb5IxcSYCCTy" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "53+Z3slv1GWK5Uq7/bFy1b" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 211 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "adVJjE6iNG9YcIKwDKe/zq" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 213 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4eIg29oQZFVLk+NZnwDdlk" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 215 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "450cRwFQBP76D0OajPTJwx" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "9d76fJzdNJSrZgW9I8fGTZ" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 218 + } + ], + "_active": true, + "_components": [ + { + "__id__": 224 + }, + { + "__id__": 226 + }, + { + "__id__": 228 + }, + { + "__id__": 230 + } + ], + "_prefab": { + "__id__": 234 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 217 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 219 + }, + { + "__id__": 221 + } + ], + "_prefab": { + "__id__": 223 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 218 + }, + "_enabled": true, + "__prefab": { + "__id__": 220 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "95oWyE8aJJxJ5UvVmOXyZU" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 218 + }, + "_enabled": true, + "__prefab": { + "__id__": 222 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "02Vchn8fFF/77B+7pVCQuQ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "0bTkRmFvhBlpI5yBWV0+KE" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 217 + }, + "_enabled": true, + "__prefab": { + "__id__": 225 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "17lQPXOPpO0b6Z/3qQRAz3" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 217 + }, + "_enabled": false, + "__prefab": { + "__id__": 227 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "9dLJe/n0BKVoGauB1wT/Tc" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 217 + }, + "_enabled": true, + "__prefab": { + "__id__": 229 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "88/VBmjEBOMLWb2cOiN0kU" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 217 + }, + "_enabled": true, + "__prefab": { + "__id__": 231 + }, + "_scrollView": { + "__id__": 232 + }, + "_handle": { + "__id__": 221 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f4i77UV0dH4pcD0KQOXx7c" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 233 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 230 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a8UaPDxYhIX5MrqvKGMJdR" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c6OUIJLC5PfZBLWz0cbluM" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 236 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "71kmounFRG/K27WWBbH2RB" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 238 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "8ce2Xg/B9GhY0DNafD/vxa" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 240 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "58jtq8cltPOo/iZlvcyJfx" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 242 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "14OdSTGORFLY0bzoWYXoa6" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "55G68D4gxDT6QhHclQM2f1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 245 + } + ], + "_active": true, + "_components": [ + { + "__id__": 251 + }, + { + "__id__": 253 + }, + { + "__id__": 255 + } + ], + "_prefab": { + "__id__": 257 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 244 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 246 + }, + { + "__id__": 248 + } + ], + "_prefab": { + "__id__": 250 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 245 + }, + "_enabled": true, + "__prefab": { + "__id__": 247 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 245 + }, + "_enabled": true, + "__prefab": { + "__id__": 249 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "首页", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "4eSAYZdKtCjYhuibwTBger" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 244 + }, + "_enabled": true, + "__prefab": { + "__id__": 252 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "54pXxZhwVME6Un9eh4tfNQ" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 244 + }, + "_enabled": true, + "__prefab": { + "__id__": 254 + }, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1b2Sj6HjpDQ4E76SB3yA5A" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 244 + }, + "_enabled": true, + "__prefab": { + "__id__": 256 + }, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "04fLqGoqdMSIxrHGqoYkkF" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "06tijhGFhOu4UAcCwMZCpo" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 259 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a7CjDEr0xNdaqFsYUIMZFu" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 261 + }, + "_alignFlags": 21, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "5b2xyQVrNEt6gALYlk1HQE" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 263 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0don3AgsFNQ70DAh/Wc/Q4" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d9/KFR50hFVJx2fcgdzaTs" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/home.prefab.meta b/cx3-demo/assets/ui/home.prefab.meta new file mode 100644 index 0000000..983565e --- /dev/null +++ b/cx3-demo/assets/ui/home.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "38ca63c5-65a2-4ec8-8558-dc351913671e", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "home" + } +} diff --git a/cx3-demo/assets/ui/mine.prefab b/cx3-demo/assets/ui/mine.prefab new file mode 100644 index 0000000..72346fd --- /dev/null +++ b/cx3-demo/assets/ui/mine.prefab @@ -0,0 +1,1553 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "mine", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 58 + } + ], + "_active": true, + "_components": [ + { + "__id__": 66 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 70 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 31 + } + ], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + }, + { + "__id__": 46 + }, + { + "__id__": 53 + }, + { + "__id__": 55 + } + ], + "_prefab": { + "__id__": 57 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 24 + }, + { + "__id__": 26 + }, + { + "__id__": 28 + } + ], + "_prefab": { + "__id__": 30 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + } + ], + "_active": true, + "_components": [ + { + "__id__": 17 + }, + { + "__id__": 19 + }, + { + "__id__": 21 + } + ], + "_prefab": { + "__id__": 23 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + } + ], + "_prefab": { + "__id__": 16 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -51, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 103.16, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b0S9S1iX1P7q09MxLUYZPT" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "ui/mine", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "06Iu2iUtZA3rF7i5zUo1pY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "99ZUgp2BJOnYyfspSGWGjI" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e7XqlGC0RCA69ydpECmMUm" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "30itT8mWBP8J9WGu316bTb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "21JFFGnV9MUalVGNEhfB8x" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 18 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 101 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 20 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 25 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 32 + } + ], + "_active": true, + "_components": [ + { + "__id__": 38 + }, + { + "__id__": 40 + }, + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 48 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 31 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 33 + }, + { + "__id__": 35 + } + ], + "_prefab": { + "__id__": 37 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 32 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 32 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": false, + "__prefab": { + "__id__": 41 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 1, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_scrollView": { + "__id__": 46 + }, + "_handle": { + "__id__": 35 + }, + "_direction": 1, + "_enableAutoHide": false, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 44 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_alignFlags": 45, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "97X3MvUXNFzJQTraNZhTsG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 59 + } + ], + "_active": true, + "_components": [ + { + "__id__": 62 + }, + { + "__id__": 63 + }, + { + "__id__": 64 + }, + { + "__id__": 65 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 58 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 60 + }, + { + "__id__": 61 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 59 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "我的", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 41, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 67 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_alignFlags": 21, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/mine.prefab.meta b/cx3-demo/assets/ui/mine.prefab.meta new file mode 100644 index 0000000..550fcce --- /dev/null +++ b/cx3-demo/assets/ui/mine.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "1ac38b8b-e1a2-4dc9-a4f8-0fdd7d45aaf3", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "mine" + } +} diff --git a/cx3-demo/assets/ui/pageBanner.prefab b/cx3-demo/assets/ui/pageBanner.prefab new file mode 100644 index 0000000..e0ed188 --- /dev/null +++ b/cx3-demo/assets/ui/pageBanner.prefab @@ -0,0 +1,2166 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "pageBanner", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 76 + } + ], + "_active": true, + "_components": [ + { + "__id__": 93 + }, + { + "__id__": 95 + } + ], + "_prefab": { + "__id__": 97 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 49 + } + ], + "_active": true, + "_components": [ + { + "__id__": 67 + }, + { + "__id__": 69 + }, + { + "__id__": 64 + }, + { + "__id__": 71 + }, + { + "__id__": 73 + } + ], + "_prefab": { + "__id__": 75 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + }, + { + "__id__": 46 + } + ], + "_prefab": { + "__id__": 48 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + } + ], + "_active": true, + "_components": [ + { + "__id__": 35 + }, + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "viewBanner", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 24 + } + ], + "_active": true, + "_components": [ + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -176, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskBannerContent", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 7 + } + ], + "_active": true, + "_components": [ + { + "__id__": 19 + }, + { + "__id__": 21 + } + ], + "_prefab": { + "__id__": 23 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bannerContent", + "_objFlags": 0, + "_parent": { + "__id__": 6 + }, + "_children": [ + { + "__id__": 8 + } + ], + "_active": true, + "_components": [ + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -375, + "y": 7.549516567451064e-15, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "page1", + "_objFlags": 0, + "_parent": { + "__id__": 7 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 9 + }, + { + "__id__": 11 + } + ], + "_prefab": { + "__id__": 13 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 375, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 350 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b5sM9g3kJDEq9eoxtvjd92" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 8 + }, + "_enabled": true, + "__prefab": { + "__id__": 12 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "079ab863-f375-44c3-a1f1-f341273bf9a3@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": "caphIITHFPSpbjE921BKQI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "69FgsEzoBDTacqJXaEFrX7" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 300 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "09MiESWllLZaRdasGJ/zf+" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_resizeMode": 1, + "_layoutType": 1, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d65L7G5HtO4Ib0ND5kWAd5" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "66zHltXoJGqqk+qFued9+A" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 20 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 350 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "27sL1UK1tKbZofFl3ceFso" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9b/WuWM39KzZfKN7y3t1Mq" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "96Hep+ZOBLhKXQercz1gK9" + }, + { + "__type__": "cc.Node", + "_name": "indicator", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 29 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -158, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 500, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e4APRgXX5GnYn+jIdNYZQY" + }, + { + "__type__": "cc.PageViewIndicator", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "spacing": 10, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_direction": 0, + "_cellSize": { + "__type__": "cc.Size", + "width": 10, + "height": 10 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "06eKp4lNtKN6/xsyQf1TUr" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f05Mt7lCpJ5am32HXysmnx" + }, + { + "__type__": "cc.UITransform", + "_name": "pageView-horizontal", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 350 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f6HCKBPf1AgYk/vD8DtAzy" + }, + { + "__type__": "cc.PageView", + "_name": "pageView-horizontal", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "bounceDuration": 1, + "brake": 0.5, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 7 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": null, + "autoPageTurningThreshold": 100, + "pageTurningSpeed": 0.3, + "pageEvents": [], + "_sizeMode": 0, + "_direction": 0, + "_scrollThreshold": 0.5, + "_pageTurningEventTiming": 0.1, + "_indicator": { + "__id__": 27 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9aISCZ7W9H7bSr3VKT9Epv" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "66HfRfRTJLWYjnqu/pPVoR" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 351 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 47 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 50 + } + ], + "_active": true, + "_components": [ + { + "__id__": 56 + }, + { + "__id__": 58 + }, + { + "__id__": 60 + }, + { + "__id__": 62 + } + ], + "_prefab": { + "__id__": 66 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 49 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 51 + }, + { + "__id__": 53 + } + ], + "_prefab": { + "__id__": 55 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 50 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 50 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 57 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": false, + "__prefab": { + "__id__": 59 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 61 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 63 + }, + "_scrollView": { + "__id__": 64 + }, + "_handle": { + "__id__": 53 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 65 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 62 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 68 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 70 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 72 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0dy/evOfVM5rb8rquNZT6A" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 77 + }, + { + "__id__": 86 + } + ], + "_active": true, + "_components": [ + { + "__id__": 89 + }, + { + "__id__": 90 + }, + { + "__id__": 91 + }, + { + "__id__": 92 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 76 + }, + "_children": [ + { + "__id__": 78 + } + ], + "_active": true, + "_components": [ + { + "__id__": 84 + }, + { + "__id__": 85 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 77 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 79 + }, + { + "__id__": 81 + }, + { + "__id__": 83 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 80 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": { + "__id__": 82 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 78 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 77 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 77 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 76 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 87 + }, + { + "__id__": 88 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 86 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 86 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "PageView Demo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 76 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 76 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 76 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 76 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 94 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 96 + }, + "_alignFlags": 5, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/pageBanner.prefab.meta b/cx3-demo/assets/ui/pageBanner.prefab.meta new file mode 100644 index 0000000..c8bca40 --- /dev/null +++ b/cx3-demo/assets/ui/pageBanner.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "ace5540d-3273-4b22-bc82-d9f9281cf56a", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "pageBanner" + } +} diff --git a/cx3-demo/assets/ui/pageChild.prefab b/cx3-demo/assets/ui/pageChild.prefab new file mode 100644 index 0000000..4bec033 --- /dev/null +++ b/cx3-demo/assets/ui/pageChild.prefab @@ -0,0 +1,2606 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "pageChild", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 94 + } + ], + "_active": true, + "_components": [ + { + "__id__": 111 + }, + { + "__id__": 113 + } + ], + "_prefab": { + "__id__": 115 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 67 + } + ], + "_active": true, + "_components": [ + { + "__id__": 85 + }, + { + "__id__": 87 + }, + { + "__id__": 82 + }, + { + "__id__": 89 + }, + { + "__id__": 91 + } + ], + "_prefab": { + "__id__": 93 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 60 + }, + { + "__id__": 62 + }, + { + "__id__": 64 + } + ], + "_prefab": { + "__id__": 66 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + }, + { + "__id__": 35 + } + ], + "_active": true, + "_components": [ + { + "__id__": 53 + }, + { + "__id__": 55 + }, + { + "__id__": 57 + } + ], + "_prefab": { + "__id__": 59 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 18 + } + ], + "_active": true, + "_components": [ + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -51, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spAlert", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 7 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 6 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 103.14, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d2PEgpDXBPLYninbFCqhnI" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.alert", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "47rytjgqZMJbGATWNrXZds" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5eVK4biT9C3ajnzs3Ivebh" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8bhvioGTVPzbqsjOhQNkDo" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "7djd5X9GlAn5LZWuz3znR2" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d8TIGc/e9IF6dWMk5LOAyR" + }, + { + "__type__": "cc.Node", + "_name": "spClosePage", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 29 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 18 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 20 + }, + { + "__id__": 22 + } + ], + "_prefab": { + "__id__": 24 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 190.33, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9dH7kQ7FJHZJrzlBOFwXkl" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 23 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.closePage", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3eR6GUMpCZaLn1kl/5SCL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c6Q0NSf9RENqX860W5sUZ5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8bufyfoddEWoo7XwwvA77i" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "42VyMBR/lLcKX8Y3c4vBe9" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "886eFx5d5Igbj7s6ZNCIxo" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ba0H+37nVAZplyDxUdmCVV" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c98WYSumRE7ZYVI0qvu8IB" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "58Sb9dynlC1K9zSJcG9+iN" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 36 + } + ], + "_active": true, + "_components": [ + { + "__id__": 48 + }, + { + "__id__": 50 + } + ], + "_prefab": { + "__id__": 52 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -152, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spShowPage", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [ + { + "__id__": 37 + } + ], + "_active": true, + "_components": [ + { + "__id__": 43 + }, + { + "__id__": 45 + } + ], + "_prefab": { + "__id__": 47 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 36 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 38 + }, + { + "__id__": 40 + } + ], + "_prefab": { + "__id__": 42 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 37 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 190.33, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b5z+Y4wUZJarlRCyEVTc/S" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 37 + }, + "_enabled": true, + "__prefab": { + "__id__": 41 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.showPage", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "084zQmCI5D7Lxw5jzXJQYy" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5qspoDpVKBJkWitmljpRU" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "44a+/1RLRH6JRz5D8Pd9gs" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 46 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "b84BXqB/BGe4KW9WPf8Vwu" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d9tuyfNmhJkp8tVEEH2w0q" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 49 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1768Zwhy9AL47NI4vKw++S" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 51 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "89UzWIDkdPr6NeJ2eOcHOG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "75Cd9hTExNqI0N1E3fdlVI" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 54 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 202 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 61 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 63 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 65 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 68 + } + ], + "_active": true, + "_components": [ + { + "__id__": 74 + }, + { + "__id__": 76 + }, + { + "__id__": 78 + }, + { + "__id__": 80 + } + ], + "_prefab": { + "__id__": 84 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 67 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 69 + }, + { + "__id__": 71 + } + ], + "_prefab": { + "__id__": 73 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 68 + }, + "_enabled": true, + "__prefab": { + "__id__": 70 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 68 + }, + "_enabled": true, + "__prefab": { + "__id__": 72 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": true, + "__prefab": { + "__id__": 75 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": false, + "__prefab": { + "__id__": 77 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": true, + "__prefab": { + "__id__": 79 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 67 + }, + "_enabled": true, + "__prefab": { + "__id__": 81 + }, + "_scrollView": { + "__id__": 82 + }, + "_handle": { + "__id__": 71 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 83 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 80 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 86 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 88 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 90 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 92 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4az8Gq5VpJa4YxyWCh1/iK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 95 + }, + { + "__id__": 104 + } + ], + "_active": true, + "_components": [ + { + "__id__": 107 + }, + { + "__id__": 108 + }, + { + "__id__": 109 + }, + { + "__id__": 110 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 94 + }, + "_children": [ + { + "__id__": 96 + } + ], + "_active": true, + "_components": [ + { + "__id__": 102 + }, + { + "__id__": 103 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 95 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 97 + }, + { + "__id__": 99 + }, + { + "__id__": 101 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 96 + }, + "_enabled": true, + "__prefab": { + "__id__": 98 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 96 + }, + "_enabled": true, + "__prefab": { + "__id__": 100 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 96 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 95 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 95 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 94 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 105 + }, + { + "__id__": 106 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "pageChild", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 112 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 114 + }, + "_alignFlags": 5, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/pageChild.prefab.meta b/cx3-demo/assets/ui/pageChild.prefab.meta new file mode 100644 index 0000000..9f3e967 --- /dev/null +++ b/cx3-demo/assets/ui/pageChild.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "29bd2427-c75b-4a38-9f8f-2f534d63cac7", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "pageChild" + } +} diff --git a/cx3-demo/assets/ui/pagePicker.prefab b/cx3-demo/assets/ui/pagePicker.prefab new file mode 100644 index 0000000..bcc3976 --- /dev/null +++ b/cx3-demo/assets/ui/pagePicker.prefab @@ -0,0 +1,4016 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "pagePicker", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 158 + } + ], + "_active": true, + "_components": [ + { + "__id__": 175 + }, + { + "__id__": 177 + } + ], + "_prefab": { + "__id__": 179 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 131 + } + ], + "_active": true, + "_components": [ + { + "__id__": 149 + }, + { + "__id__": 151 + }, + { + "__id__": 146 + }, + { + "__id__": 153 + }, + { + "__id__": 155 + } + ], + "_prefab": { + "__id__": 157 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 124 + }, + { + "__id__": 126 + }, + { + "__id__": 128 + } + ], + "_prefab": { + "__id__": 130 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + }, + { + "__id__": 47 + }, + { + "__id__": 89 + }, + { + "__id__": 103 + } + ], + "_active": true, + "_components": [ + { + "__id__": 117 + }, + { + "__id__": 119 + }, + { + "__id__": 121 + } + ], + "_prefab": { + "__id__": 123 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 18 + }, + { + "__id__": 30 + } + ], + "_active": true, + "_components": [ + { + "__id__": 42 + }, + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 46 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -51, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spYearMonth", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 7 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -230, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 6 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 64, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d2PEgpDXBPLYninbFCqhnI" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "年月", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "47rytjgqZMJbGATWNrXZds" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5eVK4biT9C3ajnzs3Ivebh" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8bhvioGTVPzbqsjOhQNkDo" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "7djd5X9GlAn5LZWuz3znR2" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d8TIGc/e9IF6dWMk5LOAyR" + }, + { + "__type__": "cc.Node", + "_name": "spMonthDay", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 29 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 18 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 20 + }, + { + "__id__": 22 + } + ], + "_prefab": { + "__id__": 24 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 64, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9dH7kQ7FJHZJrzlBOFwXkl" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 23 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "月日", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3eR6GUMpCZaLn1kl/5SCL" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c6Q0NSf9RENqX860W5sUZ5" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8bufyfoddEWoo7XwwvA77i" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "42VyMBR/lLcKX8Y3c4vBe9" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "886eFx5d5Igbj7s6ZNCIxo" + }, + { + "__type__": "cc.Node", + "_name": "spYearMonthDay", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 31 + } + ], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 230, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 30 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 32 + }, + { + "__id__": 34 + } + ], + "_prefab": { + "__id__": 36 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 96, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "09X3hxYu9JzqJPOfgozT3l" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 31 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "年月日", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "09qSgKJ9lAh45IbCWvkoNu" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "53ubSGuXlFnJnkBh90FSog" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 30 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "62cDhl5OJEppQP2Y9ZzzuV" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 30 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "e6I+3ffC5IS52xnPWbC9Tx" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "fes5houRdE/reZKuFmUDiY" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 43 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ba0H+37nVAZplyDxUdmCVV" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 45 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c98WYSumRE7ZYVI0qvu8IB" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "58Sb9dynlC1K9zSJcG9+iN" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 48 + }, + { + "__id__": 60 + }, + { + "__id__": 72 + } + ], + "_active": true, + "_components": [ + { + "__id__": 84 + }, + { + "__id__": 86 + } + ], + "_prefab": { + "__id__": 88 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -152, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spHourMinute", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [ + { + "__id__": 49 + } + ], + "_active": true, + "_components": [ + { + "__id__": 55 + }, + { + "__id__": 57 + } + ], + "_prefab": { + "__id__": 59 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -230, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 48 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 50 + }, + { + "__id__": 52 + } + ], + "_prefab": { + "__id__": 54 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 51 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 64, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4eRohrId9Lkb2v10rYUQk7" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "__prefab": { + "__id__": 53 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "时分", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e2/Qt7VH9J3aGqQ18ZYEMx" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e1gvMSm0FMVLCfvna4ER/e" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 56 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "46zxTXtLdEkrVX4lO1IvZm" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "099pyNRtpJWLzRw2rleaRO" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a5hQE0CTtBB7mmQa8G8RuH" + }, + { + "__type__": "cc.Node", + "_name": "spString", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [ + { + "__id__": 61 + } + ], + "_active": true, + "_components": [ + { + "__id__": 67 + }, + { + "__id__": 69 + } + ], + "_prefab": { + "__id__": 71 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 60 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 62 + }, + { + "__id__": 64 + } + ], + "_prefab": { + "__id__": 66 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 61 + }, + "_enabled": true, + "__prefab": { + "__id__": 63 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 128, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "bc/dHgS6JATKqzXTeDiqUF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 61 + }, + "_enabled": true, + "__prefab": { + "__id__": 65 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "字串列表", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b3IITUkX9FPa5B/xIJOTqc" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f34ONWUFBFj6JRlxHjEXBq" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 68 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b5t2rNBSVJraWQBWD+N1wS" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 60 + }, + "_enabled": true, + "__prefab": { + "__id__": 70 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "76wiGfO8xBA71NP4v2PH7y" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "52zJJaVHRGTITjDK/KpSte" + }, + { + "__type__": "cc.Node", + "_name": "spObject", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [ + { + "__id__": 73 + } + ], + "_active": true, + "_components": [ + { + "__id__": 79 + }, + { + "__id__": 81 + } + ], + "_prefab": { + "__id__": 83 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 230, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 72 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 74 + }, + { + "__id__": 76 + } + ], + "_prefab": { + "__id__": 78 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 73 + }, + "_enabled": true, + "__prefab": { + "__id__": 75 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 128, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "37hFK4uJVA8Khqrfr5pGEa" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 73 + }, + "_enabled": true, + "__prefab": { + "__id__": 77 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "对象列表", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d3MS5Wb7VHJoIcKNFyYxgC" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "29cH8gdfxEOb2KgoaZAM3u" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 80 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3dM0nIdkxArIeSXGEGnDeE" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 82 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "a9uyRiBC1GkJvVOmG7FnRr" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a833PPj9JLmq+kpCsQF1Pg" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 85 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5jLShtuBEwZloeYstULzh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": { + "__id__": 87 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "52FMRkonhLA5DKxfgOrNqS" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "dfV1NocexPjY8wgfZ6dMqH" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 90 + } + ], + "_active": true, + "_components": [ + { + "__id__": 96 + }, + { + "__id__": 98 + }, + { + "__id__": 100 + } + ], + "_prefab": { + "__id__": 102 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -219.38, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblSelected", + "_objFlags": 0, + "_parent": { + "__id__": 89 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 91 + }, + { + "__id__": 93 + } + ], + "_prefab": { + "__id__": 95 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 20, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 90 + }, + "_enabled": true, + "__prefab": { + "__id__": 92 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "37IKJc4t1LVIdXKfNmJUY0" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 90 + }, + "_enabled": true, + "__prefab": { + "__id__": 94 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 97, + "g": 133, + "b": 247, + "a": 255 + }, + "_string": "", + "_horizontalAlign": 0, + "_verticalAlign": 1, + "_actualFontSize": 22, + "_fontSize": 22, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 3, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3erf43571EyoTiyNLw9HXY" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "31U9EJWCFNqK0eaetwtPTs" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 89 + }, + "_enabled": true, + "__prefab": { + "__id__": 97 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "833SeP+QBKrpcbRQI6+nZP" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 89 + }, + "_enabled": true, + "__prefab": { + "__id__": 99 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3HvBPaD9EA6MjWu03YkGj" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 89 + }, + "_enabled": true, + "__prefab": { + "__id__": 101 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": false, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "45QMS/2u9IdJ4YKTM4d/Ej" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f5vn8HeAlD5rwgWzj4QJLh" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 104 + } + ], + "_active": true, + "_components": [ + { + "__id__": 110 + }, + { + "__id__": 112 + }, + { + "__id__": 114 + } + ], + "_prefab": { + "__id__": 116 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -409.14, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 103 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 105 + }, + { + "__id__": 107 + } + ], + "_prefab": { + "__id__": 109 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "__prefab": { + "__id__": 106 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 709.67, + "height": 344.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ed855LDOBGopjIRuAy3Jo4" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "__prefab": { + "__id__": 108 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "//dataList数组对象属性包括: \n//data:数据列表,[\"\"或{}],如果是{},需指定显示属性display\n//index: 默认初始定位index\n//suffix: 在数据后加上该字串\ncreate(page, callback, dataList)\ncreateYearMonthDay(page, callback, yearData, year, monthData, month)\ncreateYearMonth(page, callback, yearData, year, monthData, month)\ncreateMonthDay(page, callback, monthData, month, dayData, day)\ncreateHourMinute(page, callback, hourData, hour, minuteData, minute)\nnumber(from, to, label)\nyear(from, to)\nmonth(from, to)\nday(from, to)", + "_horizontalAlign": 0, + "_verticalAlign": 1, + "_actualFontSize": 22, + "_fontSize": 22, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "352/h5tw1Mz5HrPXwKw4d2" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f8vmDlN4FGdboSCTY1JPtn" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 103 + }, + "_enabled": true, + "__prefab": { + "__id__": 111 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 344.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2544hQojFF2oTkL9UwV7g7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 103 + }, + "_enabled": true, + "__prefab": { + "__id__": 113 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "96Nw9sd9pOSYM4uyaokX/z" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 103 + }, + "_enabled": true, + "__prefab": { + "__id__": 115 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": false, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e4yu814K1MErsnz9XbdVi0" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d1+zy3GQpA8Y6puuhoznmI" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 118 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 581.52 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 120 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 122 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 125 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 127 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 129 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 132 + } + ], + "_active": true, + "_components": [ + { + "__id__": 138 + }, + { + "__id__": 140 + }, + { + "__id__": 142 + }, + { + "__id__": 144 + } + ], + "_prefab": { + "__id__": 148 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 131 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 133 + }, + { + "__id__": 135 + } + ], + "_prefab": { + "__id__": 137 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 132 + }, + "_enabled": true, + "__prefab": { + "__id__": 134 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 132 + }, + "_enabled": true, + "__prefab": { + "__id__": 136 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": true, + "__prefab": { + "__id__": 139 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": false, + "__prefab": { + "__id__": 141 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": true, + "__prefab": { + "__id__": 143 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": true, + "__prefab": { + "__id__": 145 + }, + "_scrollView": { + "__id__": 146 + }, + "_handle": { + "__id__": 135 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 147 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 144 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 150 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 152 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 154 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 156 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4az8Gq5VpJa4YxyWCh1/iK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 159 + }, + { + "__id__": 168 + } + ], + "_active": true, + "_components": [ + { + "__id__": 171 + }, + { + "__id__": 172 + }, + { + "__id__": 173 + }, + { + "__id__": 174 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 158 + }, + "_children": [ + { + "__id__": 160 + } + ], + "_active": true, + "_components": [ + { + "__id__": 166 + }, + { + "__id__": 167 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 159 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 161 + }, + { + "__id__": 163 + }, + { + "__id__": 165 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 160 + }, + "_enabled": true, + "__prefab": { + "__id__": 162 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 160 + }, + "_enabled": true, + "__prefab": { + "__id__": 164 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 160 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 159 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 159 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 158 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 169 + }, + { + "__id__": 170 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 168 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 168 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "Picker Demo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 158 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 158 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 158 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 158 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 176 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 178 + }, + "_alignFlags": 5, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/pagePicker.prefab.meta b/cx3-demo/assets/ui/pagePicker.prefab.meta new file mode 100644 index 0000000..89eb52d --- /dev/null +++ b/cx3-demo/assets/ui/pagePicker.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "55e01f73-301f-4819-bc74-71216eb56aa6", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "pagePicker" + } +} diff --git a/cx3-demo/assets/ui/pageScrollView.prefab b/cx3-demo/assets/ui/pageScrollView.prefab new file mode 100644 index 0000000..5ae5bc8 --- /dev/null +++ b/cx3-demo/assets/ui/pageScrollView.prefab @@ -0,0 +1,1539 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "pageScrollView", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 46 + } + ], + "_active": true, + "_components": [ + { + "__id__": 63 + }, + { + "__id__": 65 + } + ], + "_prefab": { + "__id__": 67 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 19 + } + ], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + }, + { + "__id__": 34 + }, + { + "__id__": 41 + }, + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + }, + { + "__id__": 14 + }, + { + "__id__": 16 + } + ], + "_prefab": { + "__id__": 18 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 5 + }, + { + "__id__": 7 + }, + { + "__id__": 9 + } + ], + "_prefab": { + "__id__": 11 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 202 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 10 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 13 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 17 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 20 + } + ], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + }, + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 36 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 19 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 21 + }, + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 25 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 20 + }, + "_enabled": true, + "__prefab": { + "__id__": 24 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": false, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 19 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_scrollView": { + "__id__": 34 + }, + "_handle": { + "__id__": 23 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 35 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 32 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 42 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3bQfmhUq1O+Z1em8m98Oni" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 47 + }, + { + "__id__": 56 + } + ], + "_active": true, + "_components": [ + { + "__id__": 59 + }, + { + "__id__": 60 + }, + { + "__id__": 61 + }, + { + "__id__": 62 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [ + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 55 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 47 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + }, + { + "__id__": 53 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 47 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 46 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 57 + }, + { + "__id__": 58 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 56 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "ScrollView Demo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 66 + }, + "_alignFlags": 5, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/pageScrollView.prefab.meta b/cx3-demo/assets/ui/pageScrollView.prefab.meta new file mode 100644 index 0000000..d6f7f57 --- /dev/null +++ b/cx3-demo/assets/ui/pageScrollView.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "cc933fe3-f218-4226-869f-91545b573a79", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "pageScrollView" + } +} diff --git a/cx3-demo/assets/ui/pageVideo.prefab b/cx3-demo/assets/ui/pageVideo.prefab new file mode 100644 index 0000000..050cadf --- /dev/null +++ b/cx3-demo/assets/ui/pageVideo.prefab @@ -0,0 +1,2691 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "pageVideo", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 98 + } + ], + "_active": true, + "_components": [ + { + "__id__": 115 + }, + { + "__id__": 117 + } + ], + "_prefab": { + "__id__": 119 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 3 + }, + { + "__id__": 71 + } + ], + "_active": true, + "_components": [ + { + "__id__": 89 + }, + { + "__id__": 91 + }, + { + "__id__": 86 + }, + { + "__id__": 93 + }, + { + "__id__": 95 + } + ], + "_prefab": { + "__id__": 97 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -64, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "maskContent", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 4 + } + ], + "_active": true, + "_components": [ + { + "__id__": 64 + }, + { + "__id__": 66 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 70 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 0, + "_parent": { + "__id__": 3 + }, + "_children": [ + { + "__id__": 5 + }, + { + "__id__": 23 + }, + { + "__id__": 41 + } + ], + "_active": true, + "_components": [ + { + "__id__": 57 + }, + { + "__id__": 59 + }, + { + "__id__": 61 + } + ], + "_prefab": { + "__id__": 63 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 6 + } + ], + "_active": true, + "_components": [ + { + "__id__": 18 + }, + { + "__id__": 20 + } + ], + "_prefab": { + "__id__": 22 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -51, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spAlert", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [ + { + "__id__": 7 + } + ], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 6 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 8 + }, + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 12 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 9 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 103.14, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d2PEgpDXBPLYninbFCqhnI" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 7 + }, + "_enabled": true, + "__prefab": { + "__id__": 11 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.alert", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "47rytjgqZMJbGATWNrXZds" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "5eVK4biT9C3ajnzs3Ivebh" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8bhvioGTVPzbqsjOhQNkDo" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "7djd5X9GlAn5LZWuz3znR2" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d8TIGc/e9IF6dWMk5LOAyR" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 19 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ba0H+37nVAZplyDxUdmCVV" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "__prefab": { + "__id__": 21 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c98WYSumRE7ZYVI0qvu8IB" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "58Sb9dynlC1K9zSJcG9+iN" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 24 + } + ], + "_active": true, + "_components": [ + { + "__id__": 36 + }, + { + "__id__": 38 + } + ], + "_prefab": { + "__id__": 40 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -152, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spShowPage", + "_objFlags": 0, + "_parent": { + "__id__": 23 + }, + "_children": [ + { + "__id__": 25 + } + ], + "_active": true, + "_components": [ + { + "__id__": 31 + }, + { + "__id__": 33 + } + ], + "_prefab": { + "__id__": 35 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -180, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 24 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 26 + }, + { + "__id__": 28 + } + ], + "_prefab": { + "__id__": 30 + }, + "_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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 25 + }, + "_enabled": true, + "__prefab": { + "__id__": 27 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 190.33, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b5z+Y4wUZJarlRCyEVTc/S" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 25 + }, + "_enabled": true, + "__prefab": { + "__id__": 29 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "cx.showPage", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "084zQmCI5D7Lxw5jzXJQYy" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "e5qspoDpVKBJkWitmljpRU" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 32 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 315, + "height": 84 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "44a+/1RLRH6JRz5D8Pd9gs" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@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": "b84BXqB/BGe4KW9WPf8Vwu" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d9tuyfNmhJkp8tVEEH2w0q" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 23 + }, + "_enabled": true, + "__prefab": { + "__id__": 37 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "1768Zwhy9AL47NI4vKw++S" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 23 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "89UzWIDkdPr6NeJ2eOcHOG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "75Cd9hTExNqI0N1E3fdlVI" + }, + { + "__type__": "cc.Node", + "_name": "panel", + "_objFlags": 0, + "_parent": { + "__id__": 4 + }, + "_children": [ + { + "__id__": 42 + }, + { + "__id__": 46 + } + ], + "_active": true, + "_components": [ + { + "__id__": 52 + }, + { + "__id__": 54 + } + ], + "_prefab": { + "__id__": 56 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -393, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "nodeVideo", + "_objFlags": 0, + "_parent": { + "__id__": 41 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 45 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -330, + "y": 130, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 42 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 400, + "height": 300 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "41dO5QBFFNxrO+oJ6TxikO" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "deWbgyK85Lf7aRAKsuMDsX" + }, + { + "__type__": "cc.Node", + "_name": "lblVideo", + "_objFlags": 0, + "_parent": { + "__id__": 41 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 47 + }, + { + "__id__": 49 + } + ], + "_prefab": { + "__id__": 51 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -135, + "y": 160, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": { + "__id__": 48 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 209.89, + "height": 50.4 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4ejyS9DNxGm5jl0VTWHCFW" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_string": "video callback:", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "62GRSkYmRJCL0L2+HvszWC" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "197vmjaKVPn7TRLIEo774J" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 53 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 380 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "abTKCI7xFO1I1OZr+ZHKyf" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 41 + }, + "_enabled": true, + "__prefab": { + "__id__": 55 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "190JW5v7NAsZF19p1bm0Ya" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b3IBrJKatArqsxW0zP0hlt" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 58 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 583 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a5WylOEpRE/KKqoaKFanIC" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 60 + }, + "_resizeMode": 1, + "_layoutType": 2, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 1, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 1, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": true, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "9bppCMx+tCwadCZ7s3dkOl" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 4 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_alignFlags": 40, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3aMjEHKgBLzbI0kJIZdQ5z" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d5L13HRqNEkZkKP92/l0Zk" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 65 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "danHM7aSFBqYGJxTfWZ9bH" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 67 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_type": 0, + "_inverted": false, + "_segments": 64, + "_spriteFrame": null, + "_alphaThreshold": 0.1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "b6u4SfObJAHZKrOSMuVL0r" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 3 + }, + "_enabled": true, + "__prefab": { + "__id__": 69 + }, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92YOYolzJNkJYWOWBxpSX/" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97lYlBSSlHjaQcMeQxttn/" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 0, + "_parent": { + "__id__": 2 + }, + "_children": [ + { + "__id__": 72 + } + ], + "_active": true, + "_components": [ + { + "__id__": 78 + }, + { + "__id__": 80 + }, + { + "__id__": 82 + }, + { + "__id__": 84 + } + ], + "_prefab": { + "__id__": 88 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 371, + "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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 0, + "_parent": { + "__id__": 71 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 73 + }, + { + "__id__": 75 + } + ], + "_prefab": { + "__id__": 77 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -11, + "y": -31.25, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 74 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 6, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8ez5IK6m5O5IPmW6CS3VLh" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 72 + }, + "_enabled": true, + "__prefab": { + "__id__": 76 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "afc47931-f066-46b0-90be-9fe61f213428@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": "c1ZlCqn/dCAb8cRDd6T7hb" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "90/JGPGV1P17O/2Y8XbgHV" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 79 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a3L62ntM9F+aAkmiwTuFD9" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": false, + "__prefab": { + "__id__": 81 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 0 + }, + "_spriteFrame": { + "__uuid__": "ffb88a8f-af62-48f4-8f1d-3cb606443a43@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": "00ZjiCv3RG4KkSTXucWLfL" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 83 + }, + "_alignFlags": 37, + "_target": null, + "_left": 0, + "_right": 4, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 250, + "_alignMode": 0, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "01m6lmDTxERYFdhBN1TXlW" + }, + { + "__type__": "cc.ScrollBar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": true, + "__prefab": { + "__id__": 85 + }, + "_scrollView": { + "__id__": 86 + }, + "_handle": { + "__id__": 75 + }, + "_direction": 1, + "_enableAutoHide": true, + "_autoHideTime": 1, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "555UXX6g9NOI3UdeCUKSeY" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 87 + }, + "bounceDuration": 0.6, + "brake": 0.75, + "elastic": true, + "inertia": true, + "horizontal": false, + "vertical": true, + "cancelInnerEvents": true, + "scrollEvents": [], + "_content": { + "__id__": 4 + }, + "_horizontalScrollBar": null, + "_verticalScrollBar": { + "__id__": 84 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "d8WVD9XYNMx5L+H0iw0AJZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "danb1EBSdB9IdwKIdibej9" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 90 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1206 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "43JKoi4rdF+pGjPSQRz3F7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 92 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@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": "99jn2X2wtMzb0yMTBhbzDz" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 94 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 128, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 250, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "92EUoxP4lMQa9EwO3Owl4J" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 96 + }, + "safeHeight": 0, + "safeWidgetTop": 170, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "4az8Gq5VpJa4YxyWCh1/iK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "2eyTuBT6hMnpvMNi0DIil1" + }, + { + "__type__": "cc.Node", + "_name": "layerTitle", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 99 + }, + { + "__id__": 108 + } + ], + "_active": true, + "_components": [ + { + "__id__": 111 + }, + { + "__id__": 112 + }, + { + "__id__": 113 + }, + { + "__id__": 114 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 539, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "spClose", + "_objFlags": 0, + "_parent": { + "__id__": 98 + }, + "_children": [ + { + "__id__": 100 + } + ], + "_active": true, + "_components": [ + { + "__id__": 106 + }, + { + "__id__": 107 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -275, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgClose", + "_objFlags": 0, + "_parent": { + "__id__": 99 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 101 + }, + { + "__id__": 103 + }, + { + "__id__": 105 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": -61, + "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 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 100 + }, + "_enabled": true, + "__prefab": { + "__id__": 102 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 18, + "height": 32 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 100 + }, + "_enabled": true, + "__prefab": { + "__id__": 104 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "584cd881-9cb2-40cb-876c-5ab8c6d49139@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": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 100 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 8, + "_target": null, + "_left": 30, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 99 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 200, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 99 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 12, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "lblTitle", + "_objFlags": 0, + "_parent": { + "__id__": 98 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 109 + }, + { + "__id__": 110 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 40, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 420, + "height": 80 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 83, + "g": 93, + "b": 117, + "a": 255 + }, + "_string": "pageVideo", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 32, + "_fontSize": 32, + "_fontFamily": "Arial", + "_lineHeight": 36, + "_overflow": 2, + "_enableWrapText": false, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 98 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 128 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 98 + }, + "_enabled": true, + "__prefab": null, + "_alignFlags": 17, + "_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": 750, + "_originalHeight": 0, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 98 + }, + "_enabled": true, + "__prefab": null, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 98 + }, + "_enabled": true, + "__prefab": null, + "safeHeight": 170, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 116 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 118 + }, + "_alignFlags": 5, + "_target": null, + "_left": 325, + "_right": 325, + "_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": "8bkJFJv91Cm75ckm6vxjw+" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/pageVideo.prefab.meta b/cx3-demo/assets/ui/pageVideo.prefab.meta new file mode 100644 index 0000000..97aa57c --- /dev/null +++ b/cx3-demo/assets/ui/pageVideo.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "398767c5-1d02-447b-a800-d9a7c3ec9990", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "pageVideo" + } +} diff --git a/cx3-demo/assets/ui/start.prefab b/cx3-demo/assets/ui/start.prefab new file mode 100644 index 0000000..d9babd5 --- /dev/null +++ b/cx3-demo/assets/ui/start.prefab @@ -0,0 +1,1602 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false + }, + { + "__type__": "cc.Node", + "_name": "start", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 10 + } + ], + "_active": true, + "_components": [ + { + "__id__": 70 + }, + { + "__id__": 72 + }, + { + "__id__": 74 + } + ], + "_prefab": { + "__id__": 76 + }, + "_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 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "layerPage", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + }, + { + "__id__": 5 + }, + { + "__id__": 7 + } + ], + "_prefab": { + "__id__": 9 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 60, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 4 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1214 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "cbk3qhP1FBF4AbmtksaWo8" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 6 + }, + "_alignFlags": 21, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 120, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3c2yWMWnhP+KQzcksMAOHE" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "__prefab": { + "__id__": 8 + }, + "safeHeight": 0, + "safeWidgetTop": 0, + "safeWidgetBottom": 162, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "268Wp+ZoFJ7ZofzalLQthK" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "25yUWpzXtFc7PqH6lgSJpQ" + }, + { + "__type__": "cc.Node", + "_name": "layerTab", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 11 + }, + { + "__id__": 35 + } + ], + "_active": true, + "_components": [ + { + "__id__": 59 + }, + { + "__id__": 61 + }, + { + "__id__": 63 + }, + { + "__id__": 65 + }, + { + "__id__": 67 + } + ], + "_prefab": { + "__id__": 69 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -375, + "y": -667, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "tabHome", + "_objFlags": 0, + "_parent": { + "__id__": 10 + }, + "_children": [ + { + "__id__": 12 + }, + { + "__id__": 18 + }, + { + "__id__": 24 + } + ], + "_active": true, + "_components": [ + { + "__id__": 30 + }, + { + "__id__": 32 + } + ], + "_prefab": { + "__id__": 34 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 187.5, + "y": 60, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgGray", + "_objFlags": 0, + "_parent": { + "__id__": 11 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 13 + }, + { + "__id__": 15 + } + ], + "_prefab": { + "__id__": 17 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 14 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ebj1A78BlCcZKAfp6EyNrC" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 12 + }, + "_enabled": true, + "__prefab": { + "__id__": 16 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "76ec2281-4788-4c40-aacd-82abc107e80b@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e4t71VwM9ApIIi4fFp2e8E" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3bXwUgkyxA6qANMN/I1AhB" + }, + { + "__type__": "cc.Node", + "_name": "img", + "_objFlags": 0, + "_parent": { + "__id__": 11 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 19 + }, + { + "__id__": 21 + } + ], + "_prefab": { + "__id__": 23 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 20 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 18 + }, + "_enabled": true, + "__prefab": { + "__id__": 22 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "50f32365-940d-4a54-8b4c-29fd9a9394b4@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ccbwt3hphNw6+jS5ifm9B6" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 11 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 25 + }, + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 29 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -32, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 26 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 48, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 24 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 34, + "g": 161, + "b": 255, + "a": 255 + }, + "_string": "首页", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 24, + "_fontSize": 24, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f0OQ1bx+NJL4qBU8raE5Ln" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 31 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 120 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 11 + }, + "_enabled": true, + "__prefab": { + "__id__": 33 + }, + "_alignFlags": 1, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 10, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "8f2DtETqFAEpQsCzLQGOZW" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + }, + { + "__type__": "cc.Node", + "_name": "tabMine", + "_objFlags": 0, + "_parent": { + "__id__": 10 + }, + "_children": [ + { + "__id__": 36 + }, + { + "__id__": 42 + }, + { + "__id__": 48 + } + ], + "_active": true, + "_components": [ + { + "__id__": 54 + }, + { + "__id__": 56 + } + ], + "_prefab": { + "__id__": 58 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 562.5, + "y": 60, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "imgGray", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 37 + }, + { + "__id__": 39 + } + ], + "_prefab": { + "__id__": 41 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 38 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "39vPUT6IdEr4SpS4pYm0Ob" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 36 + }, + "_enabled": true, + "__prefab": { + "__id__": 40 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "4919b80d-4b8f-46ae-b2a9-4cfad3180579@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "53qF6hGMREl4jGLN9RfBbz" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f4NYq3U+pAkaL0yrYdRxT1" + }, + { + "__type__": "cc.Node", + "_name": "img", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 43 + }, + { + "__id__": 45 + } + ], + "_prefab": { + "__id__": 47 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 12, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 42 + }, + "_enabled": true, + "__prefab": { + "__id__": 44 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 50, + "height": 50 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f7NISe7HdAD68SLfhnddy8" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 42 + }, + "_enabled": true, + "__prefab": { + "__id__": 46 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "50eb6f34-f5ba-4070-a4fb-1e507e19e6d9@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "e71ctEmpxFC4KlSYRZNz/a" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "ccbwt3hphNw6+jS5ifm9B6" + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 35 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 49 + }, + { + "__id__": 51 + } + ], + "_prefab": { + "__id__": 53 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": -32, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 1073741824, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 50 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 48, + "height": 32.76 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "c68UOAlNhN171Umca6yVvF" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 48 + }, + "_enabled": true, + "__prefab": { + "__id__": 52 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 34, + "g": 161, + "b": 255, + "a": 255 + }, + "_string": "我的", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 24, + "_fontSize": 24, + "_fontFamily": "Arial", + "_lineHeight": 26, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_isItalic": false, + "_isBold": false, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2frm37uaJHQr0AEEaYyM82" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f0OQ1bx+NJL4qBU8raE5Ln" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 55 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 375, + "height": 120 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "15fCSwGKNA5Ikb0zSxhp16" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 35 + }, + "_enabled": true, + "__prefab": { + "__id__": 57 + }, + "_alignFlags": 1, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 10, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "3erefT2qNCKa7LHQgjiWQ9" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "3ex+NNeRVD5Y4ycNEQzz80" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 10 + }, + "_enabled": true, + "__prefab": { + "__id__": 60 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 120 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "7e0ardsCVA4poDRL8h1/O0" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 10 + }, + "_enabled": true, + "__prefab": { + "__id__": 62 + }, + "_alignFlags": 20, + "_target": null, + "_left": 0, + "_right": 0, + "_top": 617, + "_bottom": 0, + "_horizontalCenter": 0, + "_verticalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 750, + "_originalHeight": 100, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "59OaLeC35HnL1YjfmE7hGJ" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 10 + }, + "_enabled": true, + "__prefab": { + "__id__": 64 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0bUc8HY2NJhKy0HuHFzpXS" + }, + { + "__type__": "cc.Layout", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 10 + }, + "_enabled": true, + "__prefab": { + "__id__": 66 + }, + "_resizeMode": 2, + "_layoutType": 1, + "_cellSize": { + "__type__": "cc.Size", + "width": 40, + "height": 40 + }, + "_startAxis": 0, + "_paddingLeft": 0, + "_paddingRight": 0, + "_paddingTop": 0, + "_paddingBottom": 0, + "_spacingX": 0, + "_spacingY": 0, + "_verticalDirection": 1, + "_horizontalDirection": 0, + "_constraint": 0, + "_constraintNum": 2, + "_affectedByScale": false, + "_isAlign": false, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "acgrsDYylO0ok89Xj9hDUZ" + }, + { + "__type__": "de62eN2YMBPE53miXlqryfB", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 10 + }, + "_enabled": true, + "__prefab": { + "__id__": 68 + }, + "safeHeight": 162, + "safeWidgetTop": 0, + "safeWidgetBottom": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "2cIK80JllK4a+j2kjsKTQG" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7aUHejft9C96jXlY9pYuRP" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 71 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "a7CjDEr0xNdaqFsYUIMZFu" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 73 + }, + "_alignFlags": 21, + "_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": 750, + "_originalHeight": 1334, + "_alignMode": 2, + "_lockFlags": 0, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "5b2xyQVrNEt6gALYlk1HQE" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 75 + }, + "_visFlags": 0, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "0don3AgsFNQ70DAh/Wc/Q4" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d9/KFR50hFVJx2fcgdzaTs" + } +] \ No newline at end of file diff --git a/cx3-demo/assets/ui/start.prefab.meta b/cx3-demo/assets/ui/start.prefab.meta new file mode 100644 index 0000000..eabeb9e --- /dev/null +++ b/cx3-demo/assets/ui/start.prefab.meta @@ -0,0 +1,13 @@ +{ + "ver": "1.1.27", + "importer": "prefab", + "imported": true, + "uuid": "ffc43389-ad4e-475f-b319-0f9374b71d9f", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": { + "syncNodeName": "start" + } +} diff --git a/cx3-demo/package.json b/cx3-demo/package.json new file mode 100755 index 0000000..8708892 --- /dev/null +++ b/cx3-demo/package.json @@ -0,0 +1,9 @@ +{ + "name": "cx3-demo", + "type": "3d", + "uuid": "4a7e5b10-3fd5-4013-abdc-753aa3b87e69", + "version": "3.1.1", + "creator": { + "version": "3.1.1" + } +} diff --git a/cx3-demo/profiles/v2/packages/android.json b/cx3-demo/profiles/v2/packages/android.json new file mode 100644 index 0000000..c0999af --- /dev/null +++ b/cx3-demo/profiles/v2/packages/android.json @@ -0,0 +1,30 @@ +{ + "options": { + "android": { + "packageName": "com.cocos.android", + "apiLevel": "android-26", + "appABIs": [ + "armeabi-v7a" + ], + "useDebugKeystore": true, + "keystorePath": "", + "keystorePassword": "", + "keystoreAlias": "", + "keystoreAliasPassword": "", + "appBundle": false, + "androidInstant": false, + "remoteUrl": "", + "orientation": { + "portrait": true, + "upsideDown": false, + "landscapeRight": false, + "landscapeLeft": false + }, + "renderBackEnd": { + "vulkan": false, + "gles3": true, + "gles2": false + } + } + } +} diff --git a/cx3-demo/profiles/v2/packages/builder.json b/cx3-demo/profiles/v2/packages/builder.json new file mode 100644 index 0000000..97929a8 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/builder.json @@ -0,0 +1,74 @@ +{ + "__version__": "1.2.8", + "common": { + "outputName": "android", + "mainBundleCompressionType": "merge_dep", + "platform": "android", + "buildPath": "project://native", + "replaceSplashScreen": true, + "debug": true + }, + "BuildTaskManager": { + "taskMap": { + "1622797274066": { + "id": "1622797274066", + "progress": 1, + "state": "success", + "message": "2021-6-7 12:08 Build success in 20653 ms!", + "options": { + "packages": { + "ios": { + "packageName": "com.cocos.cx3-demo", + "orientation": { + "landscapeRight": false, + "landscapeLeft": false, + "portrait": true + }, + "renderBackEnd": { + "metal": true, + "gles3": false + } + }, + "native": { + "polyfills": { + "asyncFunctions": false + }, + "encrypted": false, + "xxteaKey": "daQAcUmotNh4cSQ3", + "compressZip": false, + "makeAfterBuild": false + }, + "cocos-service": { + "configID": "389e04", + "services": [] + } + }, + "name": "cx3-demo", + "platform": "ios", + "buildPath": "project://native", + "debug": true, + "md5Cache": false, + "sourceMaps": false, + "replaceSplashScreen": true, + "mainBundleCompressionType": "merge_dep", + "mainBundleIsRemote": false, + "mergeStartScene": false, + "experimentalEraseModules": false, + "compressTexture": true, + "packAutoAtlas": true, + "startScene": "272a8bdc-517b-4554-ba44-1c6f7f3e8456", + "scenes": [ + { + "url": "db://assets/scene/mainScene.scene", + "uuid": "272a8bdc-517b-4554-ba44-1c6f7f3e8456", + "inBundle": false + } + ], + "outputName": "ios" + }, + "time": "2021-6-7 12:08", + "dirty": false + } + } + } +} diff --git a/cx3-demo/profiles/v2/packages/cocos-service.json b/cx3-demo/profiles/v2/packages/cocos-service.json new file mode 100644 index 0000000..04f2598 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/cocos-service.json @@ -0,0 +1,24 @@ +{ + "options": { + "web-desktop": { + "configID": "389e04", + "services": [] + }, + "ios": { + "configID": "389e04", + "services": [] + }, + "mac": { + "configID": "389e04", + "services": [] + }, + "android": { + "configID": "389e04", + "services": [] + } + }, + "builder-options": { + "configID": "389e04", + "services": [] + } +} diff --git a/cx3-demo/profiles/v2/packages/device.json b/cx3-demo/profiles/v2/packages/device.json new file mode 100644 index 0000000..70e599e --- /dev/null +++ b/cx3-demo/profiles/v2/packages/device.json @@ -0,0 +1,3 @@ +{ + "__version__": "1.0.1" +} diff --git a/cx3-demo/profiles/v2/packages/engine.json b/cx3-demo/profiles/v2/packages/engine.json new file mode 100644 index 0000000..2e889fa --- /dev/null +++ b/cx3-demo/profiles/v2/packages/engine.json @@ -0,0 +1,3 @@ +{ + "__version__": "1.0.5" +} diff --git a/cx3-demo/profiles/v2/packages/ios.json b/cx3-demo/profiles/v2/packages/ios.json new file mode 100644 index 0000000..b259032 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/ios.json @@ -0,0 +1,11 @@ +{ + "options": { + "ios": { + "orientation": { + "portrait": true, + "landscapeLeft": false, + "landscapeRight": false + } + } + } +} diff --git a/cx3-demo/profiles/v2/packages/native.json b/cx3-demo/profiles/v2/packages/native.json new file mode 100644 index 0000000..df2fbd8 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/native.json @@ -0,0 +1,31 @@ +{ + "options": { + "ios": { + "polyfills": { + "asyncFunctions": false + }, + "encrypted": false, + "xxteaKey": "daQAcUmotNh4cSQ3", + "compressZip": false, + "makeAfterBuild": false + }, + "mac": { + "polyfills": { + "asyncFunctions": false + }, + "encrypted": false, + "xxteaKey": "daQAcUmotNh4cSQ3", + "compressZip": false, + "makeAfterBuild": false + }, + "android": { + "polyfills": { + "asyncFunctions": true + }, + "encrypted": false, + "xxteaKey": "daQAcUmotNh4cSQ3", + "compressZip": false, + "makeAfterBuild": false + } + } +} diff --git a/cx3-demo/profiles/v2/packages/preview.json b/cx3-demo/profiles/v2/packages/preview.json new file mode 100644 index 0000000..239c3cb --- /dev/null +++ b/cx3-demo/profiles/v2/packages/preview.json @@ -0,0 +1,6 @@ +{ + "__version__": "1.0.1", + "general": { + "start_scene": "272a8bdc-517b-4554-ba44-1c6f7f3e8456" + } +} diff --git a/cx3-demo/profiles/v2/packages/program.json b/cx3-demo/profiles/v2/packages/program.json new file mode 100644 index 0000000..4d87e97 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/program.json @@ -0,0 +1,3 @@ +{ + "__version__": "1.0.0" +} diff --git a/cx3-demo/profiles/v2/packages/scene.json b/cx3-demo/profiles/v2/packages/scene.json new file mode 100644 index 0000000..14dd5d8 --- /dev/null +++ b/cx3-demo/profiles/v2/packages/scene.json @@ -0,0 +1,40 @@ +{ + "gizmos-infos": { + "is2D": true, + "is3DIcon": false, + "iconSize": 2, + "gridVisible": true, + "gridColor": [ + 150, + 150, + 150, + 255 + ], + "isIconGizmo3D": false, + "iconGizmoSize": 2, + "isGridVisible": true + }, + "camera-infos": { + "f46876e4-e81b-4931-b493-6d367be385e7": { + "position": { + "x": 374.99999999999994, + "y": 667, + "z": 5000 + }, + "rotation": { + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "viewCenter": { + "x": 0, + "y": 0, + "z": 0 + } + } + }, + "camera-uuids": [ + "f46876e4-e81b-4931-b493-6d367be385e7" + ] +} diff --git a/cx3-demo/project/assets/assets/cx.prefab/config.json b/cx3-demo/project/assets/assets/cx.prefab/config.json new file mode 100644 index 0000000..22c1841 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/config.json @@ -0,0 +1 @@ +{"importBase":"import","nativeBase":"native","name":"cx.prefab","deps":[],"uuids":["01fcf8e0a","05m/lbNdFIxrk1vhQjvEGr","05m/lbNdFIxrk1vhQjvEGr@6c48a","34jxZ/cQxLjJuHY628Xzl4","58TNiBnLJAy4dsWrjG1JE5","58TNiBnLJAy4dsWrjG1JE5@6c48a","59B/SwcJBCZoLOuIqF5Jp0","05m/lbNdFIxrk1vhQjvEGr@f9941","0871327f0","34jxZ/cQxLjJuHY628Xzl4@6c48a","59B/SwcJBCZoLOuIqF5Jp0@6c48a","845iTosU9O9YhnzEOxeb/y","845iTosU9O9YhnzEOxeb/y@6c48a","9926ctM2VDAKazy8ejMtdB","9926ctM2VDAKazy8ejMtdB@6c48a","a3Tx7mZshOvKHV5nzwKYH7","a3Tx7mZshOvKHV5nzwKYH7@6c48a","b7XylbFT9BR7XLq+HANx/u","b7XylbFT9BR7XLq+HANx/u@6c48a","b9lLSHjK5DrKv8V1hGhtl2","b9lLSHjK5DrKv8V1hGhtl2@6c48a","e0wHW/kipAC7ozxaPOrSuC","e0wHW/kipAC7ozxaPOrSuC@6c48a","e3tSu3EhdFno243EheJK2R","e3tSu3EhdFno243EheJK2R@6c48a","e4bS100wFDsKDHyCtVgpfQ","e4bS100wFDsKDHyCtVgpfQ@6c48a","3204xS94hE+LboU4kNglr2","34jxZ/cQxLjJuHY628Xzl4@f9941","58TNiBnLJAy4dsWrjG1JE5@f9941","59B/SwcJBCZoLOuIqF5Jp0@f9941","5f/6OEnKBKTo0MB3ULi14M","6c/FkiMElNw7lDrXm2J1S7","7dj5uJT9FMn6OrOOx83tfK","7dj5uJT9FMn6OrOOx83tfK@6c48a","7dj5uJT9FMn6OrOOx83tfK@f9941","eexXFsL1VKLqG4/beChLEl","eexXFsL1VKLqG4/beChLEl@6c48a","845iTosU9O9YhnzEOxeb/y@f9941","85KRWDw01K6p1j4bvqq4No","9926ctM2VDAKazy8ejMtdB@f9941","a3Tx7mZshOvKHV5nzwKYH7@f9941","b7XylbFT9BR7XLq+HANx/u@f9941","b9lLSHjK5DrKv8V1hGhtl2@f9941","e0wHW/kipAC7ozxaPOrSuC@f9941","e3tSu3EhdFno243EheJK2R@f9941","e4bS100wFDsKDHyCtVgpfQ@f9941","e6XHJl1CdO7rHBr3YIJjLs","eexXFsL1VKLqG4/beChLEl@f9941"],"paths":{"1":["s_confirm_no",1],"2":["s_confirm_no/texture",2,1],"3":["s_alert_bg",1],"4":["s_al",1],"5":["s_al/texture",2,1],"6":["s_color",1],"7":["s_confirm_no/spriteFrame",3,1],"9":["s_alert_bg/texture",2,1],"10":["s_color/texture",2,1],"11":["s_loading",1],"12":["s_loading/texture",2,1],"13":["s_picker_no",1],"14":["s_picker_no/texture",2,1],"15":["s_picker_yes",1],"16":["s_picker_yes/texture",2,1],"17":["s_none",1],"18":["s_none/texture",2,1],"19":["s_alert_ok",1],"20":["s_alert_ok/texture",2,1],"21":["s_border",1],"22":["s_border/texture",2,1],"23":["s_confirm_bg",1],"24":["s_confirm_bg/texture",2,1],"25":["s_shadow",1],"26":["s_shadow/texture",2,1],"27":["cx.picker",0],"28":["s_alert_bg/spriteFrame",3,1],"29":["s_al/spriteFrame",3,1],"30":["s_color/spriteFrame",3,1],"31":["cx.pickerScrollView",0],"32":["cx.confirm",0],"36":["s_confirm_yes",1],"37":["s_confirm_yes/texture",2,1],"38":["s_loading/spriteFrame",3,1],"39":["cx.hint",0],"40":["s_picker_no/spriteFrame",3,1],"41":["s_picker_yes/spriteFrame",3,1],"42":["s_none/spriteFrame",3,1],"43":["s_alert_ok/spriteFrame",3,1],"44":["s_border/spriteFrame",3,1],"45":["s_confirm_bg/spriteFrame",3,1],"46":["s_shadow/spriteFrame",3,1],"47":["cx.alert",0],"48":["s_confirm_yes/spriteFrame",3,1]},"scenes":{},"packs":{"0871327f0":["33","1","11","13","3","4","6","15","17","19","21","23","25","36"],"01fcf8e0a":["34","2","12","14","9","5","10","16","18","20","22","24","26","37"]},"versions":{"import":[],"native":[]},"redirect":[],"debug":false,"types":["cc.Prefab","cc.ImageAsset","cc.Texture2D","cc.SpriteFrame"]} \ No newline at end of file diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/01/01fcf8e0a.json b/cx3-demo/project/assets/assets/cx.prefab/import/01/01fcf8e0a.json new file mode 100644 index 0000000..755ea18 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/01/01fcf8e0a.json @@ -0,0 +1 @@ +{"type":"cc.Texture2D","data":[["2,2,0,0,0,0",["7dj5uJT9FMn6OrOOx83tfK"]],["2,2,0,0,0,0",["05m/lbNdFIxrk1vhQjvEGr"]],["2,2,0,0,0,0",["845iTosU9O9YhnzEOxeb/y"]],["2,2,0,0,0,0",["9926ctM2VDAKazy8ejMtdB"]],["2,2,0,0,0,0",["34jxZ/cQxLjJuHY628Xzl4"]],["2,2,0,0,0,0",["58TNiBnLJAy4dsWrjG1JE5"]],["2,2,0,0,0,0",["59B/SwcJBCZoLOuIqF5Jp0"]],["2,2,0,0,0,0",["a3Tx7mZshOvKHV5nzwKYH7"]],["2,2,0,0,0,0",["b7XylbFT9BR7XLq+HANx/u"]],["2,2,0,0,0,0",["b9lLSHjK5DrKv8V1hGhtl2"]],["2,2,0,0,0,0",["e0wHW/kipAC7ozxaPOrSuC"]],["2,2,0,0,0,0",["e3tSu3EhdFno243EheJK2R"]],["2,2,0,0,0,0",["e4bS100wFDsKDHyCtVgpfQ"]],["2,2,0,0,0,0",["eexXFsL1VKLqG4/beChLEl"]]]} diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/05/059bf95b-35d1-48c6-b935-be1423bc41ab@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/05/059bf95b-35d1-48c6-b935-be1423bc41ab@f9941.json new file mode 100644 index 0000000..407c193 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/05/059bf95b-35d1-48c6-b935-be1423bc41ab@f9941.json @@ -0,0 +1 @@ +[1,["05m/lbNdFIxrk1vhQjvEGr@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_confirm_no","rect":{"x":0,"y":0,"width":299,"height":88},"offset":{"x":0,"y":0},"originalSize":{"width":299,"height":88},"rotated":false,"capInsets":[0,0,0,0],"texture":"059bf95b-35d1-48c6-b935-be1423bc41ab@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/08/0871327f0.json b/cx3-demo/project/assets/assets/cx.prefab/import/08/0871327f0.json new file mode 100644 index 0000000..1ee6fb5 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/08/0871327f0.json @@ -0,0 +1 @@ +{"type":"cc.ImageAsset","data":[[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]],[1,0,0,["cc.ImageAsset"],0,[{"fmt":"0","w":0,"h":0}],[0],0,[],[],[]]]} diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/32/32d38c52-f788-44f8-b6e8-53890d825af6.json b/cx3-demo/project/assets/assets/cx.prefab/import/32/32d38c52-f788-44f8-b6e8-53890d825af6.json new file mode 100644 index 0000000..db07478 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/32/32d38c52-f788-44f8-b6e8-53890d825af6.json @@ -0,0 +1 @@ +[1,["7dj5uJT9FMn6OrOOx83tfK@f9941","9926ctM2VDAKazy8ejMtdB@f9941","a3Tx7mZshOvKHV5nzwKYH7@f9941"],["node","_spriteFrame","root","data"],[["cc.Node",["_name","_layer","_components","_prefab","_parent","_children","_lpos"],1,9,4,1,2,5],["cc.Widget",["_alignFlags","_originalHeight","_originalWidth","_top","_verticalCenter","_bottom","node","__prefab"],-3,1,4],["cc.Sprite",["_sizeMode","node","__prefab","_spriteFrame","_color"],2,1,4,6,5],["cc.Prefab",["_name"],2],["cc.UITransform",["node","__prefab","_contentSize","_anchorPoint"],3,1,4,5,5],["cc.CompPrefabInfo",["fileId"],2],["cc.UIOpacity",["_opacity","node","__prefab"],2,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.Label",["_string","_actualFontSize","_fontSize","_overflow","node","__prefab","_color"],-1,1,4,5],["cc.Layout",["_resizeMode","_layoutType","_isAlign","node","__prefab"],0,1,4]],[[5,0,2],[4,0,1,2,3,1],[7,0,1,2,2],[2,0,1,2,4,3,2],[0,0,1,4,2,3,3],[0,0,1,4,5,2,3,6,3],[0,0,1,4,5,2,3,3],[2,0,1,2,3,2],[8,0,1,2,3,4,5,6,5],[3,0,2],[0,0,1,5,2,3,6,3],[0,0,4,5,2,3,2],[0,0,4,2,3,2],[0,0,1,4,2,3,6,3],[1,0,2,1,6,7,4],[1,0,3,4,2,1,6,7,6],[1,0,5,1,6,7,4],[6,0,1,2,2],[9,0,1,2,3,4,4]],[[9,"cx.picker"],[10,"cx.picker",33554432,[-4,-5],[[1,-2,[0,"c68UOAlNhN171Umca6yVvF"],[5,750,1814],[0,0.5,0]],[16,21,-480,50.4,-3,[0,"97kDr4nkFLd7Dmv1XV7sbY"]]],[2,"f08MNWi+NOz7eS0wv91jO7",-1,0],[1,0,-1147,0]],[11,"content",1,[-8,-9,-10,-11],[[1,-6,[0,"2fSBiUj0lA1KWxAndzJzBT"],[5,750,480],[0,0.5,0]],[15,4,1574,-907,750,480,-7,[0,"0eQiOZZQhNN4ZARCHw0a+y"]]],[2,"ae9IQBq9pCy5lwUNWB9eSY",1,0]],[4,"layerMask",33554432,1,[[1,-12,[0,"55pCbtzR5GbojKMArZkfim"],[5,750,1814],[0,0.5,0]],[3,0,-13,[0,"20UGQn4U9GUoln0NJQTkbG"],[4,4278190080],0],[14,45,750,1814,-14,[0,"22VK/kAvJIorKGj7+apYDN"]],[17,0,-15,[0,"52AA6Aog9BJp4rGOIxtEsn"]]],[2,"8f143Zs69GcaNpjcnqftpo",1,0]],[5,"barTitle",33554432,2,[-17,-18],[[1,-16,[0,"c68UOAlNhN171Umca6yVvF"],[5,750,80],[0,0.5,0]]],[2,"5cdvl/uiBEJ757kJ4j3PQS",1,0],[1,0,400,0]],[5,"spCancel",33554432,4,[-21],[[1,-19,[0,"f7NISe7HdAD68SLfhnddy8"],[5,375,80],[0,1,0]],[7,0,-20,[0,"e71ctEmpxFC4KlSYRZNz/a"],1]],[2,"2e1LbHliZP7LF5Oc5vPTBA",1,0],[1,-1,0,0]],[6,"spOk",33554432,4,[-24],[[1,-22,[0,"6f8PTdP5NBHI1d6tMGSaG1"],[5,375,80],[0,0,0]],[7,0,-23,[0,"2edDlCj7lIMpKrmWxfIFv/"],2]],[2,"26xTsK7ORAc6oUvgmBxwH5",1,0]],[5,"layerMask1",33554432,2,[-27],[[1,-25,[0,"55pCbtzR5GbojKMArZkfim"],[5,750,160],[0,0.5,0]],[3,0,-26,[0,"20UGQn4U9GUoln0NJQTkbG"],[4,1626534642],4]],[2,"e33UpI3ZxPrIbpkmpqdkoo",1,0],[1,0,240,0]],[6,"layerMask2",33554432,2,[-30],[[1,-28,[0,"12wHnwhkBBbq5jGVszBZqB"],[5,750,160],[0,0.5,0]],[3,0,-29,[0,"08ksqrS4VJBpA+jFxCxauh"],[4,1626534642],6]],[2,"94FxFnNgxIs5FrCofWx25I",1,0]],[4,"lblCancel",33554432,5,[[1,-31,[0,"c68UOAlNhN171Umca6yVvF"],[5,375,80],[0,1,0]],[8,"取消",31,30,2,-32,[0,"2frm37uaJHQr0AEEaYyM82"],[4,4278190080]]],[2,"18M103dZdEQaYYtkWzql9M",1,0]],[4,"lblOk",33554432,6,[[1,-33,[0,"ccta3+pEVHHIS+gewY6H8Z"],[5,375,80],[0,0,0]],[8,"确定",31,30,2,-34,[0,"9dIIjw/G1HSIuuIXySxBLs"],[4,4278190080]]],[2,"d1TcD7cLxLUIe8rGB8cKqg",1,0]],[12,"layerBox",2,[[1,-35,[0,"a4R79BathAl5F08F/MH/9T"],[5,750,400],[0,0.5,0]],[18,1,1,true,-36,[0,"59mPBeQDVLLZ/LJgorKll8"]]],[2,"aerxZqhpJLZ5v5wfQmMFBP",1,0]],[4,"line1",33554432,7,[[1,-37,[0,"55pCbtzR5GbojKMArZkfim"],[5,750,1],[0,0.5,0]],[3,0,-38,[0,"20UGQn4U9GUoln0NJQTkbG"],[4,2522174805],3]],[2,"17ld/+EpZIL7lWO1GZ1ero",1,0]],[13,"line2",33554432,8,[[1,-39,[0,"6aYg42sS5Fi55UeUb79JVe"],[5,750,1],[0,0.5,0]],[3,0,-40,[0,"79/PcGNvpLX4AtTn5vhvdw"],[4,2521056324],5]],[2,"62/ibdnTJN1IMBvknxJMnV",1,0],[1,0,160,0]]],0,[0,2,1,0,0,1,0,0,1,0,-1,3,0,-2,2,0,0,2,0,0,2,0,-1,4,0,-2,11,0,-3,7,0,-4,8,0,0,3,0,0,3,0,0,3,0,0,3,0,0,4,0,-1,5,0,-2,6,0,0,5,0,0,5,0,-1,9,0,0,6,0,0,6,0,-1,10,0,0,7,0,0,7,0,-1,12,0,0,8,0,0,8,0,-1,13,0,0,9,0,0,9,0,0,10,0,0,10,0,0,11,0,0,11,0,0,12,0,0,12,0,0,13,0,0,13,0,3,1,40],[0,0,0,0,0,0,0],[1,1,1,1,1,1,1],[0,1,2,0,0,0,0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/34/348f167f-710c-4b8c-9b87-63adbc5f3978@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/34/348f167f-710c-4b8c-9b87-63adbc5f3978@f9941.json new file mode 100644 index 0000000..36b5fa8 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/34/348f167f-710c-4b8c-9b87-63adbc5f3978@f9941.json @@ -0,0 +1 @@ +[1,["34jxZ/cQxLjJuHY628Xzl4@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_alert_bg","rect":{"x":0,"y":0,"width":600,"height":400},"offset":{"x":0,"y":0},"originalSize":{"width":600,"height":400},"rotated":false,"capInsets":[159,139,186,158],"texture":"348f167f-710c-4b8c-9b87-63adbc5f3978@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/58/584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/58/584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941.json new file mode 100644 index 0000000..c7b9601 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/58/584cd881-9cb2-40cb-876c-5ab8c6d49139@f9941.json @@ -0,0 +1 @@ +[1,["58TNiBnLJAy4dsWrjG1JE5@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_al","rect":{"x":0,"y":0,"width":18,"height":32},"offset":{"x":0,"y":0},"originalSize":{"width":18,"height":32},"rotated":false,"capInsets":[0,0,0,0],"texture":"584cd881-9cb2-40cb-876c-5ab8c6d49139@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/59/5907f4b0-7090-4266-82ce-b88a85e49a74@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/59/5907f4b0-7090-4266-82ce-b88a85e49a74@f9941.json new file mode 100644 index 0000000..a428252 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/59/5907f4b0-7090-4266-82ce-b88a85e49a74@f9941.json @@ -0,0 +1 @@ +[1,["59B/SwcJBCZoLOuIqF5Jp0@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_color","rect":{"x":0,"y":0,"width":48,"height":48},"offset":{"x":0,"y":0},"originalSize":{"width":48,"height":48},"rotated":false,"capInsets":[0,0,0,0],"texture":"5907f4b0-7090-4266-82ce-b88a85e49a74@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/5f/5fffa384-9ca0-4a4e-8d0c-07750b8b5e0c.json b/cx3-demo/project/assets/assets/cx.prefab/import/5f/5fffa384-9ca0-4a4e-8d0c-07750b8b5e0c.json new file mode 100644 index 0000000..3f8974a --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/5f/5fffa384-9ca0-4a4e-8d0c-07750b8b5e0c.json @@ -0,0 +1 @@ +[1,["7dj5uJT9FMn6OrOOx83tfK@f9941"],["node","_spriteFrame","root","_content","data"],[["cc.Node",["_name","_layer","_components","_prefab","_children","_parent","_lpos"],1,9,4,2,1,5],["cc.Prefab",["_name"],2],["cc.UITransform",["node","__prefab","_contentSize","_anchorPoint"],3,1,4,5,5],["cc.CompPrefabInfo",["fileId"],2],["cc.Layout",["_resizeMode","_layoutType","_isAlign","node","__prefab"],0,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.Mask",["node","__prefab"],3,1,4],["cc.Sprite",["_sizeMode","node","__prefab","_spriteFrame"],2,1,4,6],["cc.ScrollView",["bounceDuration","brake","horizontal","node","__prefab","_content"],0,1,4,1]],[[3,0,2],[2,0,1,2,3,1],[5,0,1,2,2],[1,0,2],[0,0,4,2,3,2],[0,0,1,5,4,2,3,3],[0,0,1,5,2,3,6,3],[4,0,1,2,3,4,4],[6,0,1,1],[7,0,1,2,3,2],[8,0,1,2,3,4,5,4]],[[3,"cx.pickerScrollView"],[4,"cx.pickerScrollView",[-6],[[1,-2,[0,"15fCSwGKNA5Ikb0zSxhp16"],[5,750,400],[0,0.5,0]],[9,0,-3,[0,"4dhOV9pUZNO5lw+vOxHNpY"],0],[10,0.6,0.75,false,-5,[0,"31emUMJhhK8YdEity5dmaV"],-4]],[2,"3ex+NNeRVD5Y4ycNEQzz80",-1,0]],[5,"maskContent",33554432,1,[-9],[[1,-7,[0,"danHM7aSFBqYGJxTfWZ9bH"],[5,750,400],[0,0.5,0]],[8,-8,[0,"b6u4SfObJAHZKrOSMuVL0r"]]],[2,"97lYlBSSlHjaQcMeQxttn/",1,0]],[6,"content",33554432,2,[[1,-10,[0,"a5WylOEpRE/KKqoaKFanIC"],[5,750,400],[0,0.5,1]],[7,1,2,true,-11,[0,"9bppCMx+tCwadCZ7s3dkOl"]]],[2,"d5L13HRqNEkZkKP92/l0Zk",1,0],[1,0,400,0]]],0,[0,2,1,0,0,1,0,0,1,0,3,3,0,0,1,0,-1,2,0,0,2,0,0,2,0,-1,3,0,0,3,0,0,3,0,4,1,11],[0],[1],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/6c/6cfc5922-3049-4dc3-b943-ad79b62754bb.json b/cx3-demo/project/assets/assets/cx.prefab/import/6c/6cfc5922-3049-4dc3-b943-ad79b62754bb.json new file mode 100644 index 0000000..d9fa8dd --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/6c/6cfc5922-3049-4dc3-b943-ad79b62754bb.json @@ -0,0 +1 @@ +[1,["7dj5uJT9FMn6OrOOx83tfK@f9941","eexXFsL1VKLqG4/beChLEl@f9941","05m/lbNdFIxrk1vhQjvEGr@f9941","e3tSu3EhdFno243EheJK2R@f9941"],["node","_spriteFrame","_pressedSprite","_target","root","data"],[["cc.Node",["_name","_layer","_components","_prefab","_parent","_children","_lpos"],1,9,4,1,2,5],["cc.Widget",["_alignFlags","_originalHeight","_originalWidth","_top","node","__prefab"],-1,1,4],["cc.Sprite",["_sizeMode","_type","node","__prefab","_spriteFrame","_color"],1,1,4,6,5],["cc.Label",["_string","_actualFontSize","_fontSize","_overflow","_enableWrapText","_lineHeight","_isBold","node","__prefab","_color"],-4,1,4,5],["cc.UITransform",["node","__prefab","_contentSize","_anchorPoint"],3,1,4,5,5],["cc.Prefab",["_name"],2],["cc.CompPrefabInfo",["fileId"],2],["cc.UIOpacity",["_opacity","node","__prefab"],2,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.Button",["_transition","node","__prefab","_normalColor","_target","_pressedSprite"],2,1,4,5,1,6]],[[6,0,2],[8,0,1,2,2],[4,0,1,2,1],[0,0,4,5,2,3,6,2],[0,0,4,2,3,6,2],[4,0,1,2,3,1],[2,1,0,2,3,3],[1,0,3,1,4,5,4],[9,0,1,2,3,4,5,2],[5,0,2],[0,0,5,2,3,2],[0,0,4,2,3,2],[0,0,1,4,5,2,3,3],[0,0,1,4,2,3,6,3],[2,0,2,3,5,4,2],[2,1,0,2,3,4,3],[1,0,2,1,4,5,4],[1,0,4,5,2],[1,0,1,4,5,3],[7,0,1,2,2],[3,0,1,2,5,3,7,8,9,6],[3,0,1,2,3,4,6,7,8,9,7],[3,0,1,2,3,4,7,8,9,6]],[[9,"cx.confirm"],[10,"cx.confirm",[-4,-5],[[2,-2,[0,"c68UOAlNhN171Umca6yVvF"],[5,750,1334]],[18,21,50.4,-3,[0,"97kDr4nkFLd7Dmv1XV7sbY"]]],[1,"f08MNWi+NOz7eS0wv91jO7",-1,0]],[12,"nodeContent",33554432,1,[-9,-10,-11],[[2,-6,[0,"2fSBiUj0lA1KWxAndzJzBT"],[5,600,400]],[15,1,0,-7,[0,"49kwkgKe9GyZt6ftweaJWn"],3],[17,18,-8,[0,"0eQiOZZQhNN4ZARCHw0a+y"]]],[1,"ae9IQBq9pCy5lwUNWB9eSY",1,0]],[3,"spOk",2,[-17],[[5,-12,[0,"98TYGMtwRBTYZZn4EZmhzJ"],[5,299,88],[0,0,0.5]],[6,1,0,-13,[0,"77BcV1zfNHo4LI4KRqZupe"]],[8,2,-15,[0,"2fOwBXUwBNvaJ4NyyrOq4C"],[4,4292269782],-14,1],[7,4,180,40,-16,[0,"dfYkI4cBdAfa4omqqk40Jd"]]],[1,"e5yv+LuHpN07rESL8vjIVw",1,0],[1,0,-156,0]],[3,"spCancel",2,[-23],[[5,-18,[0,"23CaA9AX5JcrUtlN65c1dQ"],[5,299,88],[0,1,0.5]],[6,1,0,-19,[0,"7bQU0h3VpOLJF1DLwhutUZ"]],[8,2,-21,[0,"57wg4iPpFIOII59tTdbAE7"],[4,4292269782],-20,2],[7,4,180,40,-22,[0,"acIdNYfRFHL6AQ1ONr21cq"]]],[1,"f9GUYeG/BK+LnBsmczPcDi",1,0],[1,-1,-156,0]],[11,"mask",1,[[2,-24,[0,"78gDvw8KpNuoGM0hKpGq0Y"],[5,750,1334]],[14,0,-25,[0,"21cjjg3PVNU7kJKYT+lxKt"],[4,4278190080],0],[16,45,100,100,-26,[0,"30Xlt3clBFJrKBRzoZxWQI"]],[19,12,-27,[0,"7dS7qX1nRBx7fgz6abx9xt"]]],[1,"e27vE6WyFDdpntayZ2Y/G9",1,0]],[13,"lblContent",33554432,2,[[2,-28,[0,"c68UOAlNhN171Umca6yVvF"],[5,570,52.92]],[20,"",30,30,42,3,-29,[0,"2frm37uaJHQr0AEEaYyM82"],[4,4278190080]]],[1,"5cdvl/uiBEJ757kJ4j3PQS",1,0],[1,0,50,0]],[4,"lblOk",3,[[2,-30,[0,"07QMd0h1dLcYd/vjigaip6"],[5,100,40]],[21,"确定",34,34,1,false,true,-31,[0,"ee3IZdy2dLIaAWpjI7P0FL"],[4,4294932992]]],[1,"ba3SJ/4HlJ4qhz4zG3g2uV",1,0],[1,150,0,0]],[4,"lblCancel",4,[[2,-32,[0,"38y/8CrqdMLayvuVK+ooHc"],[5,100,40]],[22,"取消",34,34,1,false,-33,[0,"1bJSlx+WxAr6wIg/tgcVMz"],[4,4294932992]]],[1,"a21YmkosZFipGo/fQD3IF5",1,0],[1,-150,0,0]]],0,[0,4,1,0,0,1,0,0,1,0,-1,5,0,-2,2,0,0,2,0,0,2,0,0,2,0,-1,6,0,-2,3,0,-3,4,0,0,3,0,0,3,0,3,3,0,0,3,0,0,3,0,-1,7,0,0,4,0,0,4,0,3,4,0,0,4,0,0,4,0,-1,8,0,0,5,0,0,5,0,0,5,0,0,5,0,0,6,0,0,6,0,0,7,0,0,7,0,0,8,0,0,8,0,5,1,33],[0,0,0,0],[1,2,2,1],[0,1,2,3]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/7d/7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/7d/7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941.json new file mode 100644 index 0000000..3c53a18 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/7d/7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@f9941.json @@ -0,0 +1 @@ +[1,["7dj5uJT9FMn6OrOOx83tfK@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"default_sprite_splash","rect":{"x":0,"y":0,"width":2,"height":2},"offset":{"x":0,"y":0},"originalSize":{"width":2,"height":2},"rotated":false,"capInsets":[0,0,0,0],"texture":"7d8f9b89-4fd1-4c9f-a3ab-38ec7cded7ca@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/84/84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/84/84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941.json new file mode 100644 index 0000000..9c60ccf --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/84/84e624e8-b14f-4ef5-8867-cc43b179bff2@f9941.json @@ -0,0 +1 @@ +[1,["845iTosU9O9YhnzEOxeb/y@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_loading","rect":{"x":1,"y":1,"width":109,"height":109},"offset":{"x":0,"y":0},"originalSize":{"width":111,"height":111},"rotated":false,"capInsets":[0,0,0,0],"texture":"84e624e8-b14f-4ef5-8867-cc43b179bff2@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/85/85291583-c34d-4aea-9d63-e1bbeaab8368.json b/cx3-demo/project/assets/assets/cx.prefab/import/85/85291583-c34d-4aea-9d63-e1bbeaab8368.json new file mode 100644 index 0000000..8461bfd --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/85/85291583-c34d-4aea-9d63-e1bbeaab8368.json @@ -0,0 +1 @@ +[1,0,["node","root","data","_parent"],[["cc.Node",["_name","_layer","_components","_prefab","_children","_parent"],1,9,4,2,1],["cc.Widget",["_alignFlags","_originalHeight","node","__prefab"],1,1,4],["cc.Prefab",["_name"],2],["cc.UITransform",["node","__prefab","_contentSize"],3,1,4,5],["cc.CompPrefabInfo",["fileId"],2],["cc.Label",["_actualFontSize","_fontSize","_overflow","node","__prefab"],0,1,4],["cc.LabelOutline",["_width","node","__prefab","_color"],2,1,4,5],["cc.UIOpacity",["node","__prefab"],3,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1]],[[4,0,2],[3,0,1,2,1],[8,0,1,2,2],[2,0,2],[0,0,1,4,2,3,3],[0,0,5,4,2,3,2],[0,0,1,2,3,3],[5,0,1,2,3,4,4],[6,0,1,2,3,2],[7,0,1,1],[1,0,2,3,2],[1,0,1,2,3,3]],[[3,"cx.hint"],[4,"cx.hint",33554432,[-4],[[1,-2,[0,"c68UOAlNhN171Umca6yVvF"],[5,750,1334]],[11,21,50.4,-3,[0,"97kDr4nkFLd7Dmv1XV7sbY"]]],[2,"f08MNWi+NOz7eS0wv91jO7",-1,0]],[6,"lblHint",33554432,[[1,-5,[0,"c68UOAlNhN171Umca6yVvF"],[5,650,60]],[7,37,36,2,-6,[0,"2frm37uaJHQr0AEEaYyM82"]],[8,1,-7,[0,"d3FpDLjaVFOqcFboM3/hOg"],[4,4286019447]],[9,-8,[0,"90iLMXmrJFPa19LOw5Z5Ug"]]],[2,"5cdvl/uiBEJ757kJ4j3PQS",1,0]],[5,"nodeHint",1,[2],[[1,-9,[0,"2fSBiUj0lA1KWxAndzJzBT"],[5,650,120]],[10,18,-10,[0,"0eQiOZZQhNN4ZARCHw0a+y"]]],[2,"ae9IQBq9pCy5lwUNWB9eSY",1,0]]],0,[0,1,1,0,0,1,0,0,1,0,-1,3,0,0,2,0,0,2,0,0,2,0,0,2,0,0,3,0,0,3,0,2,1,2,3,3,10],[],[],[]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/99/99dba72d-3365-4300-a6b3-cbc7a332d741@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/99/99dba72d-3365-4300-a6b3-cbc7a332d741@f9941.json new file mode 100644 index 0000000..d479187 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/99/99dba72d-3365-4300-a6b3-cbc7a332d741@f9941.json @@ -0,0 +1 @@ +[1,["9926ctM2VDAKazy8ejMtdB@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_picker_no","rect":{"x":0,"y":0,"width":299,"height":88},"offset":{"x":0,"y":0},"originalSize":{"width":299,"height":88},"rotated":false,"capInsets":[0,0,0,0],"texture":"99dba72d-3365-4300-a6b3-cbc7a332d741@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/a3/a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/a3/a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941.json new file mode 100644 index 0000000..949f072 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/a3/a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@f9941.json @@ -0,0 +1 @@ +[1,["a3Tx7mZshOvKHV5nzwKYH7@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_picker_yes","rect":{"x":0,"y":0,"width":299,"height":88},"offset":{"x":0,"y":0},"originalSize":{"width":299,"height":88},"rotated":false,"capInsets":[0,0,0,0],"texture":"a34f1ee6-66c8-4ebc-a1d5-e67cf02981fb@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/b7/b75f295b-153f-4147-b5cb-abe1c0371fee@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/b7/b75f295b-153f-4147-b5cb-abe1c0371fee@f9941.json new file mode 100644 index 0000000..c718a00 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/b7/b75f295b-153f-4147-b5cb-abe1c0371fee@f9941.json @@ -0,0 +1 @@ +[1,["b7XylbFT9BR7XLq+HANx/u@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_none","rect":{"x":47,"y":47,"width":1,"height":1},"offset":{"x":23.5,"y":-23.5},"originalSize":{"width":48,"height":48},"rotated":false,"capInsets":[0,0,0,0],"texture":"b75f295b-153f-4147-b5cb-abe1c0371fee@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/b9/b994b487-8cae-43ac-abfc-57584686d976@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/b9/b994b487-8cae-43ac-abfc-57584686d976@f9941.json new file mode 100644 index 0000000..383ea9b --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/b9/b994b487-8cae-43ac-abfc-57584686d976@f9941.json @@ -0,0 +1 @@ +[1,["b9lLSHjK5DrKv8V1hGhtl2@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_alert_ok","rect":{"x":1,"y":0,"width":599,"height":88},"offset":{"x":0.5,"y":0},"originalSize":{"width":600,"height":88},"rotated":false,"capInsets":[0,0,0,0],"texture":"b994b487-8cae-43ac-abfc-57584686d976@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/e0/e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/e0/e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941.json new file mode 100644 index 0000000..b716b80 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/e0/e0c075bf-922a-400b-ba33-c5a3cead2b82@f9941.json @@ -0,0 +1 @@ +[1,["e0wHW/kipAC7ozxaPOrSuC@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_border","rect":{"x":0,"y":0,"width":48,"height":48},"offset":{"x":0,"y":0},"originalSize":{"width":48,"height":48},"rotated":false,"capInsets":[8,9,10,15],"texture":"e0c075bf-922a-400b-ba33-c5a3cead2b82@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/e3/e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/e3/e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941.json new file mode 100644 index 0000000..7fe6763 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/e3/e3b52bb7-1217-459e-8db8-dc485e24ad91@f9941.json @@ -0,0 +1 @@ +[1,["e3tSu3EhdFno243EheJK2R@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_confirm_bg","rect":{"x":0,"y":0,"width":600,"height":400},"offset":{"x":0,"y":0},"originalSize":{"width":600,"height":400},"rotated":false,"capInsets":[200,141,211,168],"texture":"e3b52bb7-1217-459e-8db8-dc485e24ad91@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/e4/e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/e4/e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941.json new file mode 100644 index 0000000..2c15ff2 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/e4/e46d2d74-d301-43b0-a0c7-c82b558297d0@f9941.json @@ -0,0 +1 @@ +[1,["e4bS100wFDsKDHyCtVgpfQ@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_shadow","rect":{"x":0,"y":0,"width":11,"height":36},"offset":{"x":0,"y":0},"originalSize":{"width":11,"height":36},"rotated":false,"capInsets":[0,0,0,0],"texture":"e46d2d74-d301-43b0-a0c7-c82b558297d0@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/e6/e65c7265-d427-4eee-b1c1-af76082632ec.json b/cx3-demo/project/assets/assets/cx.prefab/import/e6/e65c7265-d427-4eee-b1c1-af76082632ec.json new file mode 100644 index 0000000..3100c6e --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/e6/e65c7265-d427-4eee-b1c1-af76082632ec.json @@ -0,0 +1 @@ +[1,["7dj5uJT9FMn6OrOOx83tfK@f9941","b9lLSHjK5DrKv8V1hGhtl2@f9941","34jxZ/cQxLjJuHY628Xzl4@f9941"],["node","_spriteFrame","_pressedSprite","root","_target","data","_parent"],[["cc.Node",["_name","_layer","_components","_prefab","_children","_parent","_lpos"],1,9,4,2,1,5],["cc.Widget",["_alignFlags","_originalHeight","_originalWidth","_top","node","__prefab"],-1,1,4],["cc.Sprite",["_sizeMode","_type","node","__prefab","_spriteFrame","_color"],1,1,4,6,5],["cc.Label",["_string","_actualFontSize","_fontSize","_overflow","_lineHeight","_enableWrapText","node","__prefab","_color"],-3,1,4,5],["cc.Prefab",["_name"],2],["cc.UITransform",["node","__prefab","_contentSize"],3,1,4,5],["cc.CompPrefabInfo",["fileId"],2],["cc.UIOpacity",["_opacity","node","__prefab"],2,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.Button",["_transition","node","__prefab","_normalColor","_target","_pressedSprite"],2,1,4,5,1,6]],[[6,0,2],[5,0,1,2,1],[8,0,1,2,2],[0,0,5,2,3,2],[4,0,2],[0,0,4,2,3,2],[0,0,1,5,4,2,3,3],[0,0,1,5,2,3,6,3],[0,0,4,2,3,6,2],[2,0,2,3,5,4,2],[2,1,0,2,3,3],[2,1,0,2,3,4,3],[1,0,2,1,4,5,4],[1,0,3,1,4,5,4],[1,0,4,5,2],[1,0,1,4,5,3],[7,0,1,2,2],[3,0,1,2,4,3,6,7,8,6],[3,0,1,2,3,5,6,7,8,6],[9,0,1,2,3,4,5,2]],[[4,"cx.alert"],[5,"cx.alert",[-4,-5],[[1,-2,[0,"c68UOAlNhN171Umca6yVvF"],[5,750,1334]],[15,21,50.4,-3,[0,"97kDr4nkFLd7Dmv1XV7sbY"]]],[2,"f08MNWi+NOz7eS0wv91jO7",-1,0]],[8,"spOk",[-11],[[1,-6,[0,"98TYGMtwRBTYZZn4EZmhzJ"],[5,601,88]],[10,1,0,-7,[0,"77BcV1zfNHo4LI4KRqZupe"]],[19,2,-9,[0,"2fOwBXUwBNvaJ4NyyrOq4C"],[4,4292269782],-8,1],[13,4,180,40,-10,[0,"dfYkI4cBdAfa4omqqk40Jd"]]],[2,"e5yv+LuHpN07rESL8vjIVw",1,0],[1,0,-156,0]],[6,"nodeContent",33554432,1,[-15,2],[[1,-12,[0,"2fSBiUj0lA1KWxAndzJzBT"],[5,600,400]],[11,1,0,-13,[0,"49kwkgKe9GyZt6ftweaJWn"],2],[14,18,-14,[0,"0eQiOZZQhNN4ZARCHw0a+y"]]],[2,"ae9IQBq9pCy5lwUNWB9eSY",1,0]],[3,"mask",1,[[1,-16,[0,"78gDvw8KpNuoGM0hKpGq0Y"],[5,750,1334]],[9,0,-17,[0,"21cjjg3PVNU7kJKYT+lxKt"],[4,4278190080],0],[12,45,100,100,-18,[0,"30Xlt3clBFJrKBRzoZxWQI"]],[16,12,-19,[0,"7dS7qX1nRBx7fgz6abx9xt"]]],[2,"e27vE6WyFDdpntayZ2Y/G9",1,0]],[7,"lblContent",33554432,3,[[1,-20,[0,"c68UOAlNhN171Umca6yVvF"],[5,570,52.92]],[17,"",30,30,42,3,-21,[0,"2frm37uaJHQr0AEEaYyM82"],[4,4278190080]]],[2,"5cdvl/uiBEJ757kJ4j3PQS",1,0],[1,0,50,0]],[3,"lblOk",2,[[1,-22,[0,"07QMd0h1dLcYd/vjigaip6"],[5,100,40]],[18,"确定",34,34,1,false,-23,[0,"ee3IZdy2dLIaAWpjI7P0FL"],[4,4294932992]]],[2,"ba3SJ/4HlJ4qhz4zG3g2uV",1,0]]],0,[0,3,1,0,0,1,0,0,1,0,-1,4,0,-2,3,0,0,2,0,0,2,0,4,2,0,0,2,0,0,2,0,-1,6,0,0,3,0,0,3,0,0,3,0,-1,5,0,0,4,0,0,4,0,0,4,0,0,4,0,0,5,0,0,5,0,0,6,0,0,6,0,5,1,2,6,3,23],[0,0,0],[1,2,1],[0,1,2]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/import/ee/eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941.json b/cx3-demo/project/assets/assets/cx.prefab/import/ee/eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941.json new file mode 100644 index 0000000..2b4673a --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/import/ee/eec5716c-2f55-4a2e-a1b8-fdb78284b125@f9941.json @@ -0,0 +1 @@ +[1,["eexXFsL1VKLqG4/beChLEl@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"s_confirm_yes","rect":{"x":0,"y":0,"width":299,"height":88},"offset":{"x":0,"y":0},"originalSize":{"width":299,"height":88},"rotated":false,"capInsets":[0,0,0,0],"texture":"eec5716c-2f55-4a2e-a1b8-fdb78284b125@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/cx.prefab/index.js b/cx3-demo/project/assets/assets/cx.prefab/index.js new file mode 100644 index 0000000..93c2780 --- /dev/null +++ b/cx3-demo/project/assets/assets/cx.prefab/index.js @@ -0,0 +1,20 @@ +System.register("chunks:///_virtual/cx.prefab",[],(function(){"use strict";return{execute:function(){}}})); + +(function(r) { + r('virtual:///prerequisite-imports/cx.prefab', 'chunks:///_virtual/cx.prefab'); +})(function(mid, cid) { + System.register(mid, [cid], function (_export, _context) { + return { + setters: [function(_m) { + var _exportObj = {}; + + for (var _key in _m) { + if (_key !== "default" && _key !== "__esModule") _exportObj[_key] = _m[_key]; + } + + _export(_exportObj); + }], + execute: function () { } + }; + }); +}); \ No newline at end of file diff --git a/cx3-demo/project/assets/assets/main/config.json b/cx3-demo/project/assets/assets/main/config.json new file mode 100644 index 0000000..f9c3d6b --- /dev/null +++ b/cx3-demo/project/assets/assets/main/config.json @@ -0,0 +1 @@ +{"importBase":"import","nativeBase":"native","name":"main","deps":[],"uuids":["27KovcUXtFVLpEHG9/PoRW","fdjsU2o1RKF5x0TziDw3jI"],"paths":{"1":["db:/internal/default_renderpipeline/builtin-forward",0]},"scenes":{"db://assets/scene/mainScene.scene":0},"packs":{},"versions":{"import":[],"native":[]},"redirect":[],"debug":false,"types":["cc.RenderPipeline"]} \ No newline at end of file diff --git a/cx3-demo/project/assets/assets/main/import/27/272a8bdc-517b-4554-ba44-1c6f7f3e8456.json b/cx3-demo/project/assets/assets/main/import/27/272a8bdc-517b-4554-ba44-1c6f7f3e8456.json new file mode 100644 index 0000000..c92dc41 --- /dev/null +++ b/cx3-demo/project/assets/assets/main/import/27/272a8bdc-517b-4554-ba44-1c6f7f3e8456.json @@ -0,0 +1 @@ +[1,0,["node","_cameraComponent","scene","_parent"],[["cc.SceneAsset",["_name"],2],["cc.Scene",["_name","_children","_globals"],2,2,4],["cc.Node",["_name","_layer","_id","_children","_components","_lpos"],0,2,9,5],["cc.Node",["_name","_parent","_components","_lpos"],2,1,2,5],["cc.Camera",["_projection","_priority","_orthoHeight","_far","_clearFlags","_visibility","node","_color"],-3,1,5],["cc.UITransform",["node","__prefab","_contentSize"],3,1,4,5],["cc.CompPrefabInfo",["fileId"],2],["cc.Canvas",["node","__prefab","_cameraComponent"],3,1,4,1],["cc.Widget",["_alignFlags","_left","_right","node","__prefab"],0,1,4],["78dafQZ48xFc6KRyUXRyyIY",["node"],3,1],["cc.SceneGlobals",["ambient","shadows","_skybox","fog"],3,4,4,4,4],["cc.AmbientInfo",[],3],["cc.ShadowsInfo",["_shadowColor"],3,5],["cc.SkyboxInfo",[],3],["cc.FogInfo",[],3]],[[6,0,2],[0,0,2],[1,0,1,2,2],[2,0,1,2,3,4,5,4],[3,0,1,2,3,2],[4,0,1,2,3,4,5,6,7,7],[5,0,1,2,1],[7,0,1,2,1],[8,0,1,2,3,4,4],[9,0,1],[10,0,1,2,3,1],[11,1],[12,0,1],[13,1],[14,1]],[[1,"mainScene"],[3,"Canvas",33554432,"ceRJ02prBJyal3TidgBTQF",[-6],[[6,-1,[0,"0dngp/9gNO34wUQjZfN/CX"],[5,750,1334]],[7,-3,[0,"3f2oTdCepERZdpmIfLsrhd"],-2],[8,21,375,375,-4,[0,"e8a+bU/8dPDbbJguUzLdoF"]],[9,-5]],[1,375,667,0]],[2,"mainScene",[1],[10,[11],[12,[4,4283190348]],[13],[14]]],[4,"Camera",1,[-7],[1,0,0,1000]],[5,0,1073741824,667,2000,6,1107296256,3,[4,4278190080]]],0,[0,0,1,0,1,4,0,0,1,0,0,1,0,0,1,0,-1,3,0,-1,4,0,2,2,1,3,2,7],[],[],[]] diff --git a/cx3-demo/project/assets/assets/main/import/fd/fd8ec536-a354-4a17-9c74-4f3883c378c8.json b/cx3-demo/project/assets/assets/main/import/fd/fd8ec536-a354-4a17-9c74-4f3883c378c8.json new file mode 100644 index 0000000..2c029ec --- /dev/null +++ b/cx3-demo/project/assets/assets/main/import/fd/fd8ec536-a354-4a17-9c74-4f3883c378c8.json @@ -0,0 +1 @@ +[1,0,0,[["RenderQueueDesc",["stages","isTransparent","sortMode"],0],["ForwardPipeline",["_flows"],3,9],["ShadowFlow",["_name","_stages"],2,9],["ShadowStage",["_name"],2],["ForwardFlow",["_name","_priority","_stages"],1,9],["ForwardStage",["_name","renderQueues"],2,9]],[[1,0,1],[2,0,1,2],[3,0,2],[4,0,1,2,3],[5,0,1,2],[0,0,2],[0,1,2,0,4]],[[0,[[1,"ShadowFlow",[[2,"ShadowStage"]]],[3,"ForwardFlow",1,[[4,"ForwardStage",[[5,["default"]],[6,true,1,["default"]]]]]]]]],0,0,[],[],[]] diff --git a/cx3-demo/project/assets/assets/main/index.js b/cx3-demo/project/assets/assets/main/index.js new file mode 100644 index 0000000..11f533a --- /dev/null +++ b/cx3-demo/project/assets/assets/main/index.js @@ -0,0 +1,68 @@ +System.register("chunks:///_virtual/cx.define.ts",["./_rollupPluginModLoBabelHelpers.js","cc","./cx.sys.ts","./cx.native.ts","./cx.serv.ts","./cx.res.ts","./cx.ui.ts","./cx.picker.ts","./cx.script.ts","./cx.utils.ts"],(function(){"use strict";var t,s,c,n,e,i,o,u,f,l;return{setters:[function(s){t=s.defineProperty},function(t){s=t.cclegacy},function(t){c=t.default},function(t){n=t.default},function(t){e=t.default},function(t){i=t.default},function(t){o=t.default},function(t){u=t.default},function(t){f=t.default},function(t){l=t.default}],execute:function(){s._RF.push({},"09fe4sTjXBHf56TG3bDe6PL","cx.define",void 0);class r extends o{static init(t){console.log("..... cx init (framework: "+c.version+") ....."),c.init(),o.init(t),c.config.debug||(this.log=function(){}),console.log("..... cx init success (sw:"+o.sw+", sh:"+o.sh+") .....")}}t(r,"native",n),t(r,"picker",u),t(r,"res",i),t(r,"script",f),t(r,"serv",e),t(r,"sys",c),t(r,"utils",l),t(r,"config",c.config),t(r,"os",c.os),t(r,"log",console.log),window.cx=window.cx||r,s._RF.pop()}}})); + +System.register("chunks:///_virtual/pageVideo.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var e,i,t,s,o;return{setters:[function(i){e=i.defineProperty},function(e){i=e.cclegacy,t=e._decorator,s=e.Component,o=e.Label}],execute:function(){var a;i._RF.push({},"253165n0GRKbZIzpeCEB+f5","pageVideo",void 0);const{ccclass:c}=t;c("pageVideo")(a=class extends s{constructor(...i){super(...i),e(this,"maskName",void 0),e(this,"videoName",void 0)}start(){if(cx.gn(this,"spClose").setTouchCallback(this,cx.closePage),cx.gn(this,"spShowPage").setTouchCallback(this,this.showPage),cx.gn(this,"spAlert").setTouchCallback(this,this.alert),cx.os.ios||cx.os.android){cx.gn(this,"nodeVideo").setTouchCallback(this,this.setVideoFullScreen);var e=cx.gn(this,"layerTitle").getContentSize();this.maskName=cx.script.nativeMask.init(this,void 0,0,cx.sh-e.height,cx.sw,cx.sh-e.height);var i=cx.gn(this,"nodeVideo"),t=cx.convertToDeviceSize(i,0,0,i.getWidth(),i.getHeight()),s=cx.native.ins("video");this.videoName=i.name,s.call("createInMask",[this.videoName,this.maskName,t.x,t.y,t.width,t.height]),s.call("setRoundRadius",[this.videoName,18]),s.call("play",[this.videoName,"1.mp4"],this.videoCallback.bind(this)),this.videoNodeList=this.videoNodeList||[],this.videoNodeList.push(i)}else cx.gn(this,"lblVideo").getComponent(o).string="please run on iOS or android."}showPage(){this.videoName&&cx.native.ins("video").call("pause",[this.videoName,!!cx.os.android]),cx.showPage("ui/pageChild")}alert(){cx.alert("这是一个显示在原生视频层之上效果的cocos界面(android暂未实现)")}setVideoFullScreen(e){cx.native.ins("video").call("setFullScreen",[e.name,!0])}videoCallback(e,i){cx.log("video state:"+e+", value: "+i),cx.gn(this,"lblVideo").getComponent(o).string="state:"+e+" value: "+i}update(){for(var e in this.videoNodeList){var i=this.videoNodeList[e],t=cx.convertToDeviceSize(i,0,0);i.priorX==Math.round(t.x)&&i.priorY==Math.round(t.y)||(i.priorX=Math.round(t.x),i.priorY=Math.round(t.y),cx.native.ins("video").call("setPosition",[this.videoName,t.x,t.y]))}}onChildPageClosed(e){this.videoName&&cx.native.ins("video").call("resume",[this.videoName])}onDestroy(){this.maskName&&cx.native.ins("video").call("removeInMask",[this.maskName])}});i._RF.pop()}}})); + +System.register("chunks:///_virtual/pageScrollView.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var e,t,s,r,a,i,c;return{setters:[function(t){e=t.defineProperty},function(e){t=e.cclegacy,s=e._decorator,r=e.Component,a=e.Node,i=e.Label,c=e.color}],execute:function(){var o;t._RF.push({},"4a8b8Ii1+1Eu6sdEVCHqcQq","pageScrollView",void 0);const{ccclass:n}=s;n("pageScrollView")(o=class extends r{constructor(...t){super(...t),e(this,"dataCount",0),e(this,"isRefresh",!1)}start(){cx.gn(this,"spClose").setTouchCallback(this,cx.closePage),cx.script.scrollView.initDeltaInsert(this,"view",this.queryData),cx.script.scrollView.initDropRefresh(this,"view",this.refreshData),this.queryData()}refreshData(){this.dataCount=0,this.isRefresh=!0,this.queryData()}queryData(){cx.log("queryData "+this.dataCount),this.scheduleOnce(this.queryDataOk,.5)}queryDataOk(){cx.log("queryDataOk..."),this.isRefresh&&(this.isRefresh=!1,cx.gn(this,"content").removeAllChildren());for(var e=0;e<20;e++)this.createPanel();cx.script.scrollView.overDeltaInsert(this,this.dataCount>200),cx.script.scrollView.overDropRefresh(this)}createPanel(){var e=new a;e.addComponent(i).string=++this.dataCount+"",e.getComponent(i).color=c("555555");var t=cx.createPanel("ffffffff",cx.sw,100);t.addChild(e),cx.gn(this,"content").addChild(t)}});t._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.utils.ts",["cc"],(function(t){"use strict";var e;return{setters:[function(t){e=t.cclegacy}],execute:function(){e._RF.push({},"55c7b0PeodAg7xsWzf284T5","cx.utils",void 0);t("default",{prefix:function(t,e){null==e&&(e=2);for(var r=t+"";r.lengthMath.floor((new Date).getTime()*(t?1:.001)),strToSecond:function(t){return.001*Date.parse(t.replace(/[^0-9: ]/gm,"/")).valueOf()},secondToStr:function(t,e){var r=new Date;return r.setTime(1e3*t),this.formatTime(r,e)},getCurrDate:function(t){return this.formatTime(new Date,t||"%Y-%m-%d")},getCurrTime:function(t){return this.formatTime(new Date,t)},getDiffDate:function(t,e){return this.secondToStr(this.getCurrSecond()+t,e||"%Y-%m-%d")},getDiffTime:function(t,e){return this.secondToStr(this.getCurrSecond()+t,e)},getObject:function(t,e,r){for(var n in t){for(var i=!0,u=1;u=e)&&(null==r||+t=e)&&(null==r||+t=e)&&(null==r||+t=e)&&(null==r||+t=e)&&(null==r||+t2100||+t.substr(10,2)>12||+t.substr(10,2)<1||+t.substr(12,2)>31||+t.substr(12,2)<1)return!1;var e=new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1),r=new Array("1","0","X","9","8","7","6","5","4","3","2");"x"==t.charAt(17)&&(t=t.replace("x","X"));for(var n=0,i=0;i=e?t:Math.floor(Math.random()*(e-t+1))+t},randomArray:function(t){for(var e=t.length,r=0;r=0;)t=t.replace(e,"");return t},strTruncate:function(t,e){return!t||t.length<=e?t||"":t.substr(0,e-1)+"..."}});e._RF.pop()}}})); + +System.register("chunks:///_virtual/home.ts",["cc"],(function(){"use strict";var e,t,s,c,a;return{setters:[function(i){e=i.cclegacy,t=i.Component,s=i.Label,c=i.Sprite,a=i._decorator}],execute:function(){var i;e._RF.push({},"5be637UN1pCXrqh8aNp2Rv9","home",void 0);const{ccclass:o}=a;o("home")(i=class extends t{start(){cx.log("Home start..."),cx.gn(this,"spShowPage").setTouchCallback(this,this.showPage,"ui/pageChild"),cx.gn(this,"spHint").setTouchCallback(this,this.hint),cx.gn(this,"spAlert").setTouchCallback(this,this.alert),cx.gn(this,"spConfirm").setTouchCallback(this,this.confirm),cx.gn(this,"spShowLoading").setTouchCallback(this,this.showLoading),cx.gn(this,"spRemoveLoading").setTouchCallback(this,this.removeLoading),cx.gn(this,"spPageScrollView").setTouchCallback(this,this.showPage,"ui/pageScrollView"),cx.gn(this,"spPageBanner").setTouchCallback(this,this.showPage,"ui/pageBanner"),cx.gn(this,"spPicker").setTouchCallback(this,this.showPage,"ui/pagePicker"),cx.gn(this,"spLoadRemoteImage").setTouchCallback(this,this.loadRemoteImage),cx.gn(this,"spNative1").setTouchCallback(this,this.callNative1),cx.gn(this,"spNative2").setTouchCallback(this,this.callNative2),cx.gn(this,"spVideo").setTouchCallback(this,this.showPage,"ui/pageVideo"),this.scheduleOnce(cx.removeLaunchImage,.3)}showPage(e,t){cx.showPage(t)}hint(){cx.hint("cx.hint(content)")}alert(){cx.alert("cx.alert(content, callback, labelOk)")}confirm(){cx.confirm("cx.confirm(content, callback, labelOk, labelCancel)",cx.hint)}showLoading(e){e.getChildByName("label").getComponent(s).string="",cx.showLoading(this,e)}removeLoading(){cx.gn(this,"spShowLoading").getChildByName("label").getComponent(s).string="cx.showLoading",cx.removeLoading(cx.gn(this,"spShowLoading"))}loadRemoteImage(){if(cx.os.native){cx.res.setImageFromRemote(cx.gn(this,"spLoadRemoteImage"),"https://www.cocos.com/wp-content/themes/cocos/image/logo.png",cx.sys.cachePath+"cocos_logo.png",c.SizeMode.TRIMMED)}else cx.hint("only for native!")}callNative1(){if(cx.os.native){var e=cx.native.ins("cx.sys").call("getPackageName",[]);cx.hint("native return: "+e)}else cx.hint("only for native!")}callNative2(){cx.os.ios||cx.os.android?cx.native.ins("system").call("callPhone",["10000"]):cx.hint("only for ios or android!")}});e._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.script.ts",["cc"],(function(e){"use strict";var t;return{setters:[function(e){t=e.cclegacy}],execute:function(){t._RF.push({},"5e9f4N27VVFe4ncCuO+XJfT","cx.script",void 0);e("default",{pageView:{initAutoScroll(e,t,i,n,o){var r=e.getComponent("cxui.pageView")||e.addComponent("cxui.pageView");r.initAutoScroll.apply(r,arguments)}},scrollView:{initDeltaInsert(e,t,i){var n=e.getComponent("cxui.scrollView")||e.addComponent("cxui.scrollView");n.initDeltaInsert.apply(n,arguments)},overDeltaInsert(e,t){var i=e.getComponent("cxui.scrollView");i&&i.overDeltaInsert.call(i,t)},initDropRefresh(e,t,i){var n=e.getComponent("cxui.scrollView")||e.addComponent("cxui.scrollView");n.initDropRefresh.apply(n,arguments)},overDropRefresh(e){var t=e.getComponent("cxui.scrollView");t&&t.overDropRefresh.call(t)}},nativeMask:{init(e,t,i,n,o,r){var c=e.getComponent("cxui.nativeMask")||e.addComponent("cxui.nativeMask");return c.init.apply(c,arguments)}}});t._RF.pop()}}})); + +System.register("chunks:///_virtual/pageChild.ts",["cc"],(function(){"use strict";var s,e,c;return{setters:[function(t){s=t.cclegacy,e=t.Component,c=t._decorator}],execute:function(){var t;s._RF.push({},"64ed9bQ8sVB3qLR1kwDE9XA","pageChild",void 0);const{ccclass:a}=c;a("pageChild")(t=class extends e{start(){cx.gn(this,"spClose").setTouchCallback(this,cx.closePage),cx.gn(this,"spClosePage").setTouchCallback(this,this.close),cx.gn(this,"spAlert").setTouchCallback(this,(()=>{cx.alert("pageChild alert")})),cx.gn(this,"spShowPage").setTouchCallback(this,cx.showPage,"ui/pageChild")}close(){cx.closePage(this)}});s._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.ui.ts",["./_rollupPluginModLoBabelHelpers.js","cc","./cx.sys.ts","./cx.native.ts","./cx.res.ts"],(function(e){"use strict";var t,i,n,o,a,s,d,l,c,r,h,g,p,v,u,m,f,C,x,P,S,M;return{setters:[function(e){t=e.defineProperty},function(e){i=e.view,n=e.ResolutionPolicy,o=e.tween,a=e.v3,s=e.assetManager,d=e.Component,l=e.instantiate,c=e.Label,r=e.color,h=e.LabelOutline,g=e.UIOpacity,p=e.Node,v=e.UITransform,u=e.js,m=e.Sprite,f=e.Rect,C=e.cclegacy,x=e.Widget},function(e){P=e.default},function(e){S=e.default},function(e){M=e.default}],execute:function(){C._RF.push({},"65f94UmXY1DhaVS9YpclR8/","cx.ui",void 0);class y{static init(e){var t=i.getCanvasSize();Math.ceil(t.height){var i=l(t.data);i.name="cx.hint",y.makeNodeMap(i);var n,s=y.gn(i,"lblHint");for(var d in y.mainScene.node.children){var p=y.mainScene.node.children[d];if("cx.hint"==p.name){p.name="cx.hint.prior",n=p;break}}s.getComponent(c).color=r(P.config.hintFontColor),s.getComponent(c).fontSize=P.config.hintFontSize,s.getComponent(h).width=P.config.hintFontOutlineWidth,s.getComponent(h).color=r(P.config.hintFontOutlineColor),s.getComponent(c).string=e,s.setScale(.5,.5),n&&s.setPosition(s.getPosition().x,Math.min(-30,y.gn(n,"lblHint").getPosition().y-50)),y.mainScene.node.addChild(i),o(s).to(.1,{scale:a(1,1,1)}).by(1.5,{position:a(void 0,30)}).by(.2,{position:a(void 0,20)}).call((()=>{i.destroy()})).start(),o(s.getComponent(g)).delay(1.5).to(.2,{opacity:0}).start()}))}static alert(e,t,i){y.setAndroidBackHandler(!0),M.loadBundleRes("cx.prefab/cx.alert",(function(n){var s=l(n.data);s.name="cx.alert",s.content=e,s.callback=t,y.makeNodeMap(s),s.on(p.EventType.TOUCH_START,(e=>{e.propagationStopped=!0})),i&&(y.gn(s,"lblOk").getComponent(c).string=i);var d=y.gn(s,"lblContent");d.getComponent(c).string=e,d.getComponent(c).updateRenderData(!0);var r=Math.max(400,d.getComponent(v).height+140),h=y.gn(s,"nodeContent");h.getComponent(v).height=r,h.setScale(1.2,1.2),y.mainScene.node.addChild(s),o(h).to(.15,{scale:a(1,1,1)}).start(),o(y.gn(s,"mask").getComponent(g)).to(.15,{opacity:90}).start(),y.setNativeMaskMask((y.sw-600)/2,(y.sh+r)/2,600,r,14),y.gn(s,"spOk").setTouchCallback(s,(function(){y.clearNativeMaskMask(),y.setAndroidBackHandler(),s.destroy(),t&&t()}))}))}static confirm(e,t,i,n){y.setAndroidBackHandler(!0),M.loadBundleRes("cx.prefab/cx.confirm",(function(s){var d=l(s.data);d.name="cx.confirm",d.content=e,d.callback=t,y.makeNodeMap(d),d.on(p.EventType.TOUCH_START,(e=>{e.propagationStopped=!0})),i&&(y.gn(d,"lblOk").getComponent(c).string=i),n&&(y.gn(d,"lblCancel").getComponent(c).string=n);var r=y.gn(d,"lblContent");r.getComponent(c).string=e,r.getComponent(c).updateRenderData(!0),y.gn(d,"nodeContent").getComponent(v).height=Math.max(400,r.getComponent(v).height+140),y.mainScene.node.addChild(d);var h=y.gn(d,"nodeContent");h.setScale(1.2,1.2),o(h).to(.15,{scale:a(1,1,1)}).start(),o(y.gn(d,"mask").getComponent(g)).to(.15,{opacity:90}).start(),y.gn(d,"spOk").setTouchCallback(d,(function(){y.setAndroidBackHandler(),d.destroy(),t&&t(!0)})),y.gn(d,"spCancel").setTouchCallback(d,(function(){y.setAndroidBackHandler(),d.destroy(),t&&t(!1)}))}))}static showLoading(e,t,i=0){if(!t._loadingInDelay&&!t.getChildByName("cx.loadingNode")){var n=function(e){if(!e||t._loadingInDelay){var i=new p;i.name="cx.loadingNode",i.setScale(.45,.45),M.setImageFromBundle(i,"cx.prefab/s_loading",m.SizeMode.TRIMMED),t.addChild(i),o(i).repeatForever(o().by(0,{angle:-30}).delay(.07)).start()}};t._loadingEnabled=!0,i>0?(t._loadingInDelay=!0,e.scheduleOnce(n,i)):n()}}static removeLoading(e){var t=e.getChildByName("cx.loadingNode");t&&t.removeFromParent(),e._loadingInDelay&&delete e._loadingInDelay}static getTopPage(e){e=e||0;for(var t=0,i=this.rootNode.children.length-1;i>=0;i--){var n=this.rootNode.children[i];if(n.active&&!n.ignoreTopPage&&++t>-e)return n}}static addPage(e,t,i,n,o){y.touchLockTimelen=-1,M.loadBundleRes(t,(a=>{var s=t.indexOf("/")?t.substr(t.lastIndexOf("/")+1):t;i=i||[s];var d=l(a.data),c=d.addComponent("cxui.page");for(var r in i)u.getClassByName(i[r])&&d.addComponent(i[r]);d.mainComponent=s&&d.getComponent(s),e.addChild(d),null!=n&&("function"==typeof n?n(d):d.mainComponent&&(d.mainComponent.contextParams=n)),o&&c.runActionShow(),y.touchLockTimelen=500}))}static showPage(e,t,i){1==arguments.length||"string"==typeof arguments[0]?y.addPage(y.rootNode,e,t,i,!0):y.addPage(y.rootNode,arguments[1],void 0,void 0,!0)}static closePage(e){(e instanceof d?e.node:this instanceof d?this.node:e).getComponent("cxui.page").runActionClose()}static setAndroidBackHandler(e){P.os.android&&(this.androidKeyBackHandler=e)}static setNativeMaskMask(e,t,i,n,o){if(P.os.native){var a=y.getTopPage();if(a=a&&a.getComponent("cxui.nativeMask")){var s=y.convertToDeviceSize(void 0,e,t,i,n);a.setMaskMask(s.x,s.y,s.width,s.height,o)}}}static clearNativeMaskMask(){if(P.os.native){var e=y.getTopPage();(e=e&&e.getComponent("cxui.nativeMask"))&&e.clearMaskMask()}}static createPanel(e,t,i){var n=new p;return n.addComponent(v).setContentSize(t,i),n.addComponent(m).color=r(e||"ffffffff"),M.setImageFromBundle(n,"cx.prefab/s_color"),n}static createLabelNode(e,t,i){var n=new p,o=n.addComponent(c);return o.string=e,o.fontSize=t,o.color=r(i),n}static convertToDeviceSize(e,t,n,o,s){var d;let l=i.getFrameSize();o=o?l.width*o/this.sw:0,s=s?l.height*s/this.sh:0;let c=e?null===(d=e.getComponent(v))||void 0===d?void 0:d.convertToWorldSpaceAR(a(t,n,0)):a(t,n,0);return c&&(t=l.width*c.x/this.sw,n=l.height*(this.sh-c.y)/this.sh),new f(t,n,o,s)}}e("default",y),t(y,"sw",0),t(y,"sh",0),t(y,"mainScene",void 0),t(y,"rootNode",void 0),t(y,"uid",0),t(y,"defaultInitPx",0),t(y,"defaultInitPy",0),t(y,"defaultMoveInAction",void 0),t(y,"defaultMoveOutAction",void 0),t(y,"defaultNextInAction",void 0),t(y,"defaultNextOutAction",void 0),t(y,"touchLockTimelen",250),t(y,"touchPriorSecond",0),t(y,"androidKeyBackHandler",void 0);class k extends p{constructor(){super(),t(this,"slideState",0),t(this,"slideShadow",void 0),t(this,"slidePage",void 0),t(this,"slideRelatePage",void 0),t(this,"slideMoveDeltaX",0),this.addComponent(v).setContentSize(y.sw,y.sh);var e=this.addComponent(x);e.isAlignTop=e.isAlignBottom=!0,e.isAlignLeft=e.isAlignRight=!0,P.config.slideEventDisabled||this.addSlideEvent()}onBackPressed(){if(y.androidKeyBackHandler)"function"==typeof y.androidKeyBackHandler&&y.androidKeyBackHandler();else{var e=y.getTopPage(),t=e.androidBackHandler;t&&("closePage"==t?y.closePage(e):"closeApp"==t?S.ins("cx.sys").call("moveTaskToBack"):t())}}addSlideEvent(){this.on(p.EventType.TOUCH_START,(e=>{if(!(e.getLocationX()>y.sw/2)){this.slideState=0;var t=y.getTopPage();t&&t.slideEventDisabled||(this.slidePage=t,this.slideRelatePage=y.getTopPage(-1))}}),this,!0),this.on(p.EventType.TOUCH_MOVE,(e=>{if(this.slidePage&&this.slidePage.active&&!this.slidePage.slideEventDisabled){var t=e.getUIDelta();if(this.slideState<2&&(Math.abs(t.x)>.05||Math.abs(t.y)>.05))if(Math.abs(t.x)>Math.abs(t.y)&&Math.abs(e.getLocation().y-e.getStartLocation().y)<35){if(e.getLocation().x-e.getStartLocation().x>=20&&(this.slideState++,!this.slideShadow)){var i=this.slideShadow=new p;i.name="cx.slideShadow",i.ignoreTopPage=!0,this.addChild(i),i.setSiblingIndex(9999e3);var n=new p;M.setImageFromBundle(n,"cx.prefab/s_shadow",m.SizeMode.CUSTOM,(e=>{n.getComponent(v).setContentSize(e.spriteFrame.width,e.spriteFrame.height),n.setScale(1,y.sh/e.spriteFrame.height),n.setPosition(-y.sw/2-e.spriteFrame.width/2,0),i.addChild(n)}))}}else this.slideState=3;if(2==this.slideState){var o;e.propagationStopped=!0,this.slideMoveDeltaX=t.x;var a=this.slidePage.getPosition();a.x=Math.max(a.x+this.slideMoveDeltaX,0),this.slidePage.setPosition(a),null===(o=this.slideShadow)||void 0===o||o.setPosition(a),this.slideRelatePage&&((a=this.slideRelatePage.getPosition()).x+=this.slideMoveDeltaX*(null!=this.slideRelatePage.nextInPercentX?this.slideRelatePage.nextInPercentX:.3),a.x>0&&(a.x=0),this.slideRelatePage.setPosition(a))}}}),this,!0);let e=e=>{if(this.slidePage&&this.slidePage.active&&!this.slidePage.slideEventDisabled){if(2==this.slideState){if(e.propagationStopped=!0,this.slideMoveDeltaX>19||this.slidePage.getPosition().x>.33*y.sw)y.closePage.call(null,this.slidePage),this.slideShadow&&o(this.slideShadow).to(.55,{position:a(y.sw+12,void 0)},{easing:"expoOut"}).start();else{if(y.defaultNextOutAction.clone(this.slidePage).start(),this.slideRelatePage){var t=-y.sw*(null!=this.slideRelatePage.nextInPercentX?this.slideRelatePage.nextInPercentX:.3);o(this.slideRelatePage).to(.55,{position:a(t,void 0)},{easing:"expoOut"}).start()}this.slideShadow&&y.defaultNextOutAction.clone(this.slideShadow).start()}this.slidePage=void 0}this.slideState=0}};this.on(p.EventType.TOUCH_END,e,this,!0),this.on(p.EventType.TOUCH_CANCEL,e,this,!0)}}C._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.res.ts",["cc","./cx.serv.ts"],(function(e){"use strict";var t,r,n,o,s,a,i;return{setters:[function(e){t=e.Sprite,r=e.resources,n=e.log,o=e.SpriteFrame,s=e.cclegacy,a=e.assetManager},function(e){i=e.default}],execute:function(){s._RF.push({},"6d1e5IJDjBC27027/GraYjr","cx.res",void 0);e("default",{setImageFromRes(e,s,a,i){var u=e instanceof t?e:e.getComponent(t)||e.addComponent(t);r.load(s,((e,r)=>{if(e)n("cx.serv.setImageFromRes error",e);else{u.sizeMode=null!=a?a:t.SizeMode.CUSTOM;var s=new o;s.texture=r._texture,u.spriteFrame=s,i&&i(u)}}))},setImageFromBundle(e,r,n,s){var a=e instanceof t?e:e.getComponent(t)||e.addComponent(t);this.loadBundleRes(r,(e=>{a.sizeMode=n||t.SizeMode.CUSTOM;var r=new o;r.texture=e._texture,a.spriteFrame=r,s&&s(a)}))},setImageFromRemote(e,r,n,s,a){i.loadFile(r,n,(function(r){var n=e instanceof t?e:e.getComponent(t)||e.addComponent(t);n.sizeMode=null!=s?s:t.SizeMode.CUSTOM;var i=new o;i.texture=r._texture,n.spriteFrame=i,a&&a(n)}))},loadBundleRes(e,t){var r=function(e,r){var i=e.indexOf("/"),u=i?e.substr(0,i):"ui",d=i?e.substr(i+1):e;a.loadBundle(u,((e,a)=>{a.load(d,((e,a)=>{e?n("cx.serv.loadBundleRes error",e):null==r?t&&t(a):(o[r]=a,++s==o.length&&t&&t(1==o.length?o[0]:o))}))}))};if("string"==typeof e)r(e);else{var o=new Array(e.length),s=0;for(var i in e)r(e[i],+i)}}});s._RF.pop()}}})); + +System.register("chunks:///_virtual/cxui.mainScene.ts",["cc"],(function(){"use strict";var c,e,t,n;return{setters:[function(s){c=s.cclegacy,e=s.Component,t=s.setDisplayStats,n=s._decorator}],execute:function(){var s;c._RF.push({},"78dafQZ48xFc6KRyUXRyyIY","cxui.mainScene",void 0);const{ccclass:i}=n;i("cxui.MainScene")(s=class extends e{onLoad(){t(!1),cx.init(this)}});c._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.picker.ts",["./_rollupPluginModLoBabelHelpers.js","cc","./cx.res.ts","./cx.ui.ts"],(function(t){"use strict";var e,i,s,n,a,o,r,l,d,h,c,u,g,v;return{setters:[function(t){e=t.defineProperty},function(t){i=t.cclegacy,s=t.instantiate,n=t.Widget,a=t.tween,o=t.v3,r=t.UIOpacity,l=t.UITransform,d=t.v2,h=t.ScrollView,c=t.Node,u=t.Layout},function(t){g=t.default},function(t){v=t.default}],execute:function(){i._RF.push({},"9cbbfnxfX5Cv6kzgxOqAfH0","cx.picker",void 0);t("default",class{static create(t,e,i){return new x(t,e,i)}static createYearMonthDay(t,e,i,s,n,a,o,r){var l=new Date;i=i||this.year(),n=n||this.month(),o=o||this.day();var d=i.indexOf(s||l.getFullYear()),h=n.indexOf(a||l.getMonth()+1),c=o.indexOf(r||l.getDate());return new p(t,e,[{data:i,index:d,suffix:"年"},{data:n,index:h,suffix:"月"},{data:o,index:c,suffix:"日"}])}static createYearMonth(t,e,i,s,n,a){var o=new Date;i=i||this.year(),n=n||this.month();var r=i.indexOf(s||o.getFullYear()),l=n.indexOf(a||o.getMonth()+1);return new x(t,e,[{data:i,index:r,suffix:"年"},{data:n,index:l,suffix:"月"}])}static createMonthDay(t,e,i,s,n,a){var o=new Date;i=i||this.month();var r=(n=n||this.day()).indexOf(a||o.getDate()),l=i.indexOf(s||o.getMonth()+1);return new w(t,e,[{data:i,index:l,suffix:"月"},{data:n,index:r,suffix:"日"}])}static createHourMinute(t,e,i,s,n,a){i=i||this.number(0,23),n=n||this.number(0,59);var o=i.indexOf(s||0),r=n.indexOf(a||0);return new x(t,e,[{data:i,index:o,suffix:"时"},{data:n,index:r,suffix:"分"}])}static number(t,e,i){var s=[];if(null!=t&&null!=e)for(var n=t;n<=e;n++)s.push(i?n+""+i:n);return s}static year(t,e){t=t||0,e=e||0;var i=(new Date).getFullYear();return Math.abs(t)<1e3&&(t+=i),Math.abs(e)<1e3&&(e+=i),this.number(t,e)}static month(t,e){return t=null==t?1:0==t?(new Date).getMonth()+1:t,e=null==e?12:0==e?(new Date).getMonth()+1:e,this.number(t,e)}static day(t,e){return this.number(t||1,e||31)}});class f{constructor(t,i,s,n,a){var o;e(this,"itemHeight",80),e(this,"checkValidHandler",void 0),e(this,"tweenAdjust",void 0),e(this,"lastY",void 0);var r=t.getWidth(),d=this.itemHeight=80;this.scrollView=t.getComponent(h),null===(o=this.scrollView.content.getComponent(l))||void 0===o||o.setContentSize(t.getContentSize());var g=new c;for(var f in g.addComponent(l).setContentSize(r,2*d),this.scrollView.content.addChild(g),i){var x=n?i[f][n]:i[f],w=new c;w.addComponent(l).setContentSize(r,d),w.addChild(v.createLabelNode(a?x+a:x,32,"000000")),this.scrollView.content.addChild(w)}(g=new c).addComponent(l).setContentSize(r,2*d),this.scrollView.content.addChild(g),this.scrollView.content.getComponent(u).updateLayout(),this.setIndex(s),t.on(h.EventType.SCROLL_ENDED,this.onScrollEnded,this),t.on(h.EventType.SCROLLING,this.onScrolling,this),t.on(c.EventType.TOUCH_START,this.onTouchStart,this)}getIndex(){return Math.round(this.scrollView.getScrollOffset().y/this.itemHeight)}setIndex(t){this.scrollView.content.setPosition(this.scrollView.content.getPosition().x,t*this.itemHeight+this.scrollView.node.getHeight())}getPosition(t){return t*this.itemHeight}onScrollEnded(t){if(!t.isAutoScrolling()){var e=Math.round(t.getScrollOffset().y/this.itemHeight)+1;if(!this.checkValidHandler||this.checkValidHandler(this)){var i=(e-1)*this.itemHeight;Math.abs(t.getScrollOffset().y-i)<1?t.content.setPosition(t.content.getPosition().x,i+t.node.getHeight()):this.tweenAdjust=a(t.content).to(.5,{position:o(void 0,i+t.node.getHeight())}).start()}}}onScrolling(t){t.isAutoScrolling()&&(null!=this.lastY&&Math.abs(t.getScrollOffset().y-this.lastY)<1?(this.lastY=void 0,t.stopAutoScroll()):this.lastY=t.getScrollOffset().y)}onTouchStart(){this.tweenAdjust&&(this.tweenAdjust.stop(),this.tweenAdjust=void 0)}}class x{constructor(t,i,d){e(this,"callback",void 0),e(this,"node",void 0),this.page=t,this.callback=i,this.dataList=[],this.viewList=[],g.loadBundleRes(["cx.prefab/cx.picker","cx.prefab/cx.pickerScrollView"],(t=>{var e=this.node=s(t[0].data);v.makeNodeMap(e),v.setAndroidBackHandler(this.close.bind(this)),v.gn(e,"spCancel").setTouchCallback(this,this.close,0),v.gn(e,"layerMask").setTouchCallback(this,this.close,0),v.gn(e,"spOk").setTouchCallback(this,this.close,1),v.mainScene.node.addChild(e),e.getComponent(n).updateAlignment(),a(e).by(.55,{position:o(void 0,480)},{easing:"expoOut"}).start(),a(v.gn(e,"layerMask").getComponent(r)).to(.25,{opacity:100}).start();var i=v.gn(e,"layerBox"),h=v.sw/d.length;for(var c in d){var u,g=d[c];this.dataList.push(g.data);var x=s(t[1].data);null===(u=x.getComponent(l))||void 0===u||u.setContentSize(h,x.getHeight()),i.addChild(x);var w=new f(x,g.data,g.index,g.display,g.suffix);this.checkValidHandler&&(w.checkValidHandler=this.checkValidHandler.bind(this)),this.viewList.push(w)}}))}close(t,e){if(e&&this.callback){var i=[];for(var s in this.viewList){var n=this.viewList[s].getIndex();i.push({index:n,value:this.dataList[s][n]})}this.callback.apply(this.page,i)}v.gn(this.node,"layerMask").setTouchCallback(),a(this.node).by(.55,{position:o(0,-480)},{easing:"expoOut"}).call((()=>{var t;null===(t=this.node)||void 0===t||t.destroy()})).start(),a(v.gn(this.node,"layerMask").getComponent(r)).to(.25,{opacity:0}).start(),v.setAndroidBackHandler()}checkValidHandler(t){return!0}}class w extends x{checkValidHandler(t){var e=this.dataList[0][this.viewList[0].getIndex()],i=this.viewList[1].getIndex(),s=this.dataList[1][i],n=new Date((new Date).getFullYear(),e,0).getDate()-s;if(n<0){var a=this.viewList[1].getPosition(i+n);return this.viewList[1].view.scrollToOffset(d(0,a),.4),t!=this.viewList[1]}return!0}}class p extends x{checkValidHandler(t){var e=this.dataList[0][this.viewList[0].getIndex()],i=this.dataList[1][this.viewList[1].getIndex()],s=this.viewList[2].getIndex(),n=this.dataList[2][s],a=new Date(e,i,0).getDate()-n;if(a<0){var o=this.viewList[2].getPosition(s+a);return this.viewList[2].view.scrollToOffset(d(0,o),.4),t!=this.viewList[2]}return!0}}i._RF.pop()}}})); + +System.register("chunks:///_virtual/cxui.scrollView.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var e,t,i,s,r,o,h,n,l,a;return{setters:[function(t){e=t.defineProperty},function(e){t=e.cclegacy,i=e._decorator,s=e.Component,r=e.Node,o=e.UITransform,h=e.ScrollView,n=e.Sprite,l=e.tween,a=e.v3}],execute:function(){var d;t._RF.push({},"a19495C2b5LKbOZqBsVa2kW","cxui.scrollView",void 0);const{ccclass:c}=i;c("cxui.scrollView")(d=class extends s{constructor(...t){super(...t),e(this,"queryHandler",void 0),e(this,"refreshHandler",void 0),e(this,"inRefresh",!1),e(this,"waitRefresh",!1)}initDeltaInsert(e,t,i){return this.page=e,this.view=cx.gn(e,t),this.queryHandler=i,this.view.on("scrolling",this.viewScrolling,this),this.emptyNode=new r,this.emptyNode.addComponent(o).height=this.view.getComponent(o).height/2,this.emptyNode.active=!1,this.view.getComponent(h).content.addChild(this.emptyNode),this.emptyNode.setSiblingIndex(1e6),this}overDeltaInsert(e){this.page&&(this.emptyNode.active=!1,e&&this.view.off("scrolling",this.viewScrolling,this))}viewScrolling(e){!this.emptyNode.active&&e.node.getHeight()/2150,this.refreshNode.setPosition(0,e.content.getPosition().y+60),this.refreshNode.pro().imageNode.active=this.inRefresh||t>150,this.refreshNode.pro().labelNode.active=!this.refreshNode.pro().imageNode.active}}viewRefreshTouchUp(e){this.waitRefresh&&(e.cx_refreshTopGap=120,this.inRefresh=!0,this.waitRefresh=!1,e.node.pauseSystemEvents(!0),l(this.refreshNode).to(.1,{position:a(0,e.node.getHeight()/2-60)}).delay(.1).call((()=>{this.refreshHandler&&this.refreshHandler.call(this.refreshPage)})).start(),this.refreshNode.pro().loadingTween?this.refreshNode.pro().loadingTween.start():this.refreshNode.pro().loadingTween=l(this.refreshNode.pro().imageNode).repeatForever(l().by(0,{angle:-30}).delay(.07)).start())}overDropRefresh(){this.inRefresh&&(this.inRefresh=!1,this.refreshScrollView.cx_refreshTopGap=0,this.refreshScrollView.startAutoScroll(a(0,120,0),.5,!0),this.refreshView.resumeSystemEvents(!0),this.refreshNode.pro().loadingTween.stop(),this.refreshNode.pro().imageNode.angle=0)}});t._RF.pop()}}})); + +System.register("chunks:///_virtual/cxui.page.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var t,n,e,i,o,s;return{setters:[function(n){t=n.defineProperty},function(t){n=t.cclegacy,e=t._decorator,i=t.Component,o=t.Node,s=t.tween}],execute:function(){var c;n._RF.push({},"ad451SBqLhNOp8SShOEgYmL","cxui.page",void 0);const{ccclass:a}=e;a("cxui.page")(c=class extends i{constructor(...n){super(...n),t(this,"initPx",void 0),t(this,"initPy",void 0),t(this,"moveInAction",void 0),t(this,"nextInAction",void 0),t(this,"moveOutAction",void 0),t(this,"nextOutAction",void 0)}onLoad(){cx.makeNodeMap(this.node),this.node.on(o.EventType.TOUCH_START,(t=>{t.propagationStopped=!0}))}runActionShow(){if(cx.os.android&&(this.node.androidBackHandler="closePage"),!cx.config.pageActionDisabled&&!this.node.pageActionDisabled){var t=null!=this.initPx?this.initPx:cx.defaultInitPx,n=null!=this.initPy?this.initPy:cx.defaultInitPy;this.node.setPosition(t,n),s(this.node).then(this.moveInAction||cx.defaultMoveInAction).start();var e=cx.getTopPage(-1);if(e){s(e).then(this.nextInAction||cx.defaultNextInAction).start();var i=e.getComponent("cxui.nativeMask");i&&i.setMonitorNode(this.node)}}}runActionClose(){var t=cx.getTopPage(-1);t&&t.mainComponent&&t.mainComponent.onChildPageClosed&&t.mainComponent.onChildPageClosed.call(t.mainComponent,this.node.mainComponent),cx.config.pageActionDisabled||this.node.pageActionDisabled?this.node.destroy():(s(this.node).then(this.moveOutAction||cx.defaultMoveOutAction).call((()=>{this.node.destroy()})).start(),t&&s(t).then(this.nextOutAction||cx.defaultNextOutAction).start())}});n._RF.pop()}}})); + +System.register("chunks:///_virtual/pageBanner.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var e,n,t,a,r,i,s;return{setters:[function(n){e=n.defineProperty},function(e){n=e.cclegacy,t=e._decorator,a=e.Component,r=e.PageView,i=e.Node,s=e.UITransform}],execute:function(){var o;n._RF.push({},"b8721iHVIFBW58xcZ7NEnA7","pageBanner",void 0);const{ccclass:c}=t;c("pageBanner")(o=class extends a{constructor(...n){super(...n),e(this,"data",void 0)}start(){cx.gn(this,"spClose").setTouchCallback(this,cx.closePage),this.scheduleOnce(this.loadBanner,.5),cx.script.pageView.initAutoScroll(this,"viewBanner",2,!0,this.onBannerClick)}loadBanner(){var e=[{id:1,img:"banner1"},{id:2,img:"banner2"},{id:3,img:"banner3"}],n=cx.gn(this,"viewBanner").getComponent(r);for(var t in n.removeAllPages(),e){var a=new i;a.pro().dataIndex=t,a.addComponent(s).setContentSize(n.node.getContentSize()),n.addPage(a),cx.res.setImageFromRes(a,e[t].img)}this.data=e}onBannerClick(e){cx.hint("banner id: "+this.data[e.pro().dataIndex].id)}});n._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.native.ts",["./_rollupPluginModLoBabelHelpers.js","cc","./cx.sys.ts"],(function(n){"use strict";var t,e,a;return{setters:[function(n){t=n.defineProperty},function(n){e=n.cclegacy},function(n){a=n.default}],execute:function(){e._RF.push({},"b97eaO8yzJPyb+0pS2rdr35","cx.native",void 0);class i{static ins(n){if(!a.os.native)return this.undefinedIns;if(!a.os.android||"cx"==n)return"undefined"!=typeof cxnative&&cxnative.NativeCreator.createNativeClass(n)||this.undefinedIns;if(!jsb.reflection)return console.log("!!!!! error: jsb.reflection is undefined !!!!!"),this.undefinedIns;var t=this.androidIntf[n];return t||((t=this.androidIntf[n]={}).name=n,t.call=function(n,e,a){return t.callback=a,jsb.reflection.callStaticMethod("cx/NativeIntf","call","(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;",t.name,n,e&&e.join("#@#")||"")}.bind(t)),t}static androidCallback(n,t,e){var a=i.androidIntf[n];a&&a.callback&&a.callback(t,e)}}n("default",i),t(i,"androidIntf",{}),t(i,"undefinedIns",{call:function(){return""}}),e._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.adapt.ts",["cc"],(function(){"use strict";var t,o,e,n,i,r,c;return{setters:[function(a){t=a.cclegacy,o=a.Node,e=a.UITransform,n=a.ScrollView,i=a.Widget,r=a.PageViewIndicator,c=a.color}],execute:function(){t._RF.push({},"bf4f577FtlN9ZiI9RqoHqom","cx.adapt",void 0),o.prototype.pro=function(){return this._pro||(this._pro={}),this._pro},o.prototype.getWidth=function(){return(this.getComponent(e)||this.addComponent(e)).width},o.prototype.getHeight=function(){return(this.getComponent(e)||this.addComponent(e)).height},o.prototype.getContentSize=function(){return(this.getComponent(e)||this.addComponent(e)).contentSize},o.prototype.setTouchCallback=function(t,e,...n){e?this.on(o.EventType.TOUCH_END,(o=>{if(!(Math.abs(o.getLocation().x-o.getStartLocation().x)>15||Math.abs(o.getLocation().y-o.getStartLocation().y)>15||cx.touchLockTimelen<0)){var i=cx.utils.getCurrSecond(!0);i-cx.touchPriorSecond>=cx.touchLockTimelen&&(cx.touchPriorSecond=i,cx.touchLockTimelen=250,e&&e.apply(t,null!=n?[this].concat(n):n))}})):this.off(o.EventType.TOUCH_END)};var a=n.prototype;a.startAutoScroll=a._startAutoScroll,a._adjustContentOutOfBoundaryOrigin=a._adjustContentOutOfBoundary,a._adjustContentOutOfBoundary=function(){var t=this;if(t._content){var o,n=t._content.getComponent(e);if(n.contentSize.heighte.cx_refreshTopGap&&(o.y-=e.cx_refreshTopGap),o},r.prototype._changedState=function(){var t=this,o=t._indicators;if(0!==o.length){var e=t._pageView.getPages()[t._pageView.curPageIdx],n=e&&e.pro().dataIndex,i=null!=n?n:t._pageView.curPageIdx;if(!(i>=o.length))for(var r,a=0;a0&&(this.schedule(this.autoScroll,i),c.on(l.EventType.TOUCH_START,this.onTouchStart,this),c.on(l.EventType.TOUCH_MOVE,this.onTouchMove,this),c.on(l.EventType.TOUCH_END,this.onTouchEnd,this),c.on(l.EventType.TOUCH_CANCEL,this.onTouchCancel,this)),a&&c.on(s.EventType.SCROLL_ENDED,this.onScrollEnded,this),this.slideEventDisabled=this.node.slideEventDisabled}onTouchStart(e){this.autoScrollDisabled=2,this.node.slideEventDisabled=!0,this.cancelClickCallback=!1}onTouchMove(e){this.cancelClickCallback=this.cancelClickCallback||Math.abs(e.getLocation().x-e.getStartLocation().x)>15||Math.abs(e.getLocation().y-e.getStartLocation().y)>15}onTouchEnd(){this.onTouchCancel(),!this.cancelClickCallback&&this.callback&&this.callback.call(this.page,this.pageView.getPages()[this.pageView.getCurrentPageIndex()])}onTouchCancel(){this.autoScrollDisabled=1,this.node.slideEventDisabled=this.slideEventDisabled}autoScroll(){if(this.autoScrollDisabled)1==this.autoScrollDisabled&&(this.autoScrollDisabled=0);else{var e=this.pageView.getPages();if(e.length>1){var t=this.pageView.getCurrentPageIndex();t{this.tabs[t].page=a})))}var c=cx.gn(this,"layerTab").children;for(var i in c){var n=c[i];n.getChildByName("img").active=i==t,n.getChildByName("imgGray").active=i!=t,n.getChildByName("label").getComponent(e).color=s(i==t?"22A1FF":"777777")}}});a._RF.pop()}}})); + +System.register("chunks:///_virtual/cxui.safearea.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var e,t,i,o,s,r,a;return{setters:[function(i){e=i.applyDecoratedDescriptor,t=i.initializerDefineProperty},function(e){i=e.cclegacy,o=e._decorator,s=e.Component,r=e.UITransform,a=e.Widget}],execute:function(){var n,c,f,u,l;i._RF.push({},"de62eN2YMBPE53miXlqryfB","cxui.safearea",void 0);const{ccclass:p,property:h}=o;p("cxui.safearea")((f=e((c=class extends s{constructor(...e){super(...e),t(this,"safeHeight",f,this),t(this,"safeWidgetTop",u,this),t(this,"safeWidgetBottom",l,this)}onLoad(){if(cx.os.native&&!cx.os.android&&cx.sh/cx.sw>1.8){if(this.safeHeight){var e=this.node.getComponent(r);null==e||e.setContentSize(e.width,this.safeHeight)}if(this.safeWidgetTop||this.safeWidgetBottom){var t=this.node.getComponent(a);t&&(t.top=this.safeWidgetTop,t.bottom=this.safeWidgetBottom)}}}}).prototype,"safeHeight",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 170}}),u=e(c.prototype,"safeWidgetTop",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),l=e(c.prototype,"safeWidgetBottom",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),n=c));i._RF.pop()}}})); + +System.register("chunks:///_virtual/cxui.nativeMask.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(){"use strict";var s,i,t,e;return{setters:[function(i){s=i.defineProperty},function(s){i=s.cclegacy,t=s._decorator,e=s.Component}],execute:function(){var a;i._RF.push({},"e70ceXmVzpPq60c2s4O3AAk","cxui.nativeMask",void 0);const{ccclass:o}=t;o("cxui.nativeMask")(a=class extends e{constructor(...i){super(...i),s(this,"maskName",void 0),s(this,"maskRect",void 0),s(this,"monitorNode",void 0),s(this,"monitorNodePriorX",void 0)}init(s,i,t,e,a,o){return cx.os.native?(this.maskName="cxNativeMask"+ ++cx.uid,this.maskRect=cx.convertToDeviceSize(i,t,e,a,o),cx.native.ins("cx.mask").call("createMask",[this.maskName,this.maskRect.x,this.maskRect.y,this.maskRect.width,this.maskRect.height]),this.maskName):""}onEnable(){this.maskName&&cx.native.ins("cx.mask").call("setMaskVisible",[this.maskName,!0])}onDisable(){this.maskName&&cx.native.ins("cx.mask").call("setMaskVisible",[this.maskName,!1])}onDestroy(){this.maskName&&cx.native.ins("cx.mask").call("removeMask",[this.maskName])}setMonitorNode(s){this.monitorNode=s,this.monitorNodePriorX=s.getPosition().x}setMaskSize(s,i){this.maskName&&cx.native.ins("cx.mask").call("setMaskSize",[this.maskName,s,i])}setMaskMask(s,i,t,e,a){this.maskName&&cx.native.ins("cx.mask").call("setMaskMask",[this.maskName,s,i,t,e,a])}clearMaskMask(){this.maskName&&cx.native.ins("cx.mask").call("clearMaskMask",[this.maskName])}update(){if(this.maskName&&this.monitorNode){if(!this.monitorNode.active)return void(this.monitorNode=void 0);if(this.monitorNodePriorX==this.monitorNode.getPosition().x)return;this.monitorNodePriorX=this.monitorNode.getPosition().x;var s=cx.convertToDeviceSize(void 0,this.monitorNodePriorX,0),i=Math.min(this.maskRect.width,Math.max(0,s.x-this.maskRect.x));this.setMaskSize(i,this.maskRect.height)}}});i._RF.pop()}}})); + +System.register("chunks:///_virtual/config.ts",["cc"],(function(){"use strict";var e,i;return{setters:[function(t){e=t.cclegacy,i=t.game}],execute:function(){e._RF.push({},"f5b81s9B5VMzbFvsfSeLnv9","config",void 0),i.appConfig={debug:!0,startPage:"ui/start",autoRemoveLaunchImage:!1,designSizeMinWidth:0,designSizeMinHeight:750,slideEventDisabled:!1,pageActionDisabled:!1,androidkeyDisabled:!1,hintFontSize:36,hintFontColor:"ff0000",hintFontOutlineWidth:1,hintFontOutlineColor:"777777"},e._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.sys.ts",["./_rollupPluginModLoBabelHelpers.js","cc"],(function(e){"use strict";var i,t,a,s;return{setters:[function(e){i=e.defineProperty},function(e){t=e.game,a=e.cclegacy,s=e.sys}],execute:function(){a._RF.push({},"f6d06Se6eJGVqIu8gxRaqvD","cx.sys",void 0),s.OS?s.os==s.OS.ANDROID&&(s.OS_ANDROID=s.OS.ANDROID):s.OS={OSX:s.OS_OSX,IOS:s.OS_IOS,ANDROID:s.OS_ANDROID,WINDOWS:s.OS_WINDOWS};class n{static init(){for(var e in t.appConfig)this.config[e]=t.appConfig[e];if(t.config.debugMode=this.config.debug?1:3,this.os.native){var i=jsb.fileUtils.getWritablePath();this.os.mac&&"undefined"!=typeof cxnative&&(i+="_cxcache/"+cxnative.NativeCreator.createNativeClass("cx.sys").call("getPackageName",[])+"/"),this.userPath=i+this.userPath+"/",this.cachePath=i+this.cachePath+"/"}}}e("default",n),i(n,"version","v1.0.0"),i(n,"userPath","__user"),i(n,"cachePath","__cache"),i(n,"os",{native:s.isNative,mac:s.isNative&&s.os==s.OS.OSX,ios:s.isNative&&s.os==s.OS.IOS,android:s.isNative&&s.os==s.OS.ANDROID,wxgame:"WECHAT_GAME"==s.platform,wxpub:"WECHAT_GAME"!=s.platform&&"wechat"==s.browserType,web:s.isBrowser}),i(n,"config",{debug:!1,startPage:"ui/start",autoRemoveLaunchImage:!0,designSizeMinWidth:0,designSizeMinHeight:750,slideEventDisabled:!1,pageActionDisabled:!1,androidkeyDisabled:!1,hintFontSize:36,hintFontColor:"ff0000",hintFontOutlineWidth:1,hintFontOutlineColor:"777777",safeLayerTitleHeight:170,safeLayerTitleName:"layerSafeTitle",safeLayerTabHeight:162,safeLayerTabName:"layerSafeTab"}),a._RF.pop()}}})); + +System.register("chunks:///_virtual/cx.serv.ts",["cc","./cx.sys.ts"],(function(e){"use strict";var t,s,a,i;return{setters:[function(e){t=e.assetManager,s=e.log,a=e.cclegacy},function(e){i=e.default}],execute:function(){let r;a._RF.push({},"fed01SvVsVBb7v7Ilib6WiI","cx.serv",void 0);e("default",{loadFile(e,t,s){i.os.native&&t?jsb.fileUtils.isFileExist(t)?this.loadAsset(t,s):this.internalRequest("GET",e,null,(e=>{var a=t.substr(0,t.lastIndexOf("/"));jsb.fileUtils.isDirectoryExist(a)||jsb.fileUtils.createDirectory(a),cxnative.NativeUtils.writeDataToFile(new Uint8Array(e.data),t),this.loadAsset(t,s)}),void 0,{responseType:"arraybuffer"}):this.loadAsset(e,s)},loadAsset(e,a){t.loadRemote(e,(function(e,t){e?s("cx.serv.loadAsset error",e):a&&a(t)}))},call(e,t,s){this.internalRequest("GET",e,void 0,t,s)},post(e,t,s,a){this.internalRequest("POST",e,t,s,a)},upload(e,t,s){i.os.native&&this.internalRequest("POST",e,jsb.fileUtils.getValueMapFromFile(t),s,void 0,{headers:["Content-Type","application/octet-stream"]})},setCommonHeaders(e){r=e},internalRequest(e,t,s,a,i,n){var o=new XMLHttpRequest;if(o.onreadystatechange=function(){4===o.readyState&&200===o.status&&a&&a({data:o.response,context:i})},n&&(n.responseType&&(o.responseType=n.responseType),n.headers))for(var l=0;l",-31,[0,"f6HCKBPf1AgYk/vD8DtAzy"],[5,750,350]],[26,"pageView-horizontal",false,-34,[0,"9aISCZ7W9H7bSr3VKT9Epv"],-33,-32]],[1,"66HfRfRTJLWYjnqu/pPVoR",1,0],[1,0,-176,0]],[15,"bannerContent",[-39],[[3,-37,[0,"09MiESWllLZaRdasGJ/zf+"],[5,750,300],[0,0,0.5]],[23,1,1,true,-38,[0,"d65L7G5HtO4Ib0ND5kWAd5"]]],[1,"66zHltXoJGqqk+qFued9+A",1,0],[1,-375,7.549516567451064e-15,0]],[5,"maskBannerContent",7,[8],[[2,-40,[0,"27sL1UK1tKbZofFl3ceFso"],[5,750,350]],[12,-41,[0,"9b/WuWM39KzZfKN7y3t1Mq"]]],[1,"96Hep+ZOBLhKXQercz1gK9",1,0]],[6,"spClose",3,[-44],[[10,-42,[5,200,80]],[32,12,-43]],[1,-275,40,0]],[7,"imgClose",33554432,10,[[2,-45,[0,"f7NISe7HdAD68SLfhnddy8"],[5,18,32]],[21,-46,[0,"e71ctEmpxFC4KlSYRZNz/a"],3],[31,8,30,-47]],[1,-61,0,0]],[16,"page1",8,[[2,-48,[0,"b5sM9g3kJDEq9eoxtvjd92"],[5,750,350]],[11,1,0,-49,[0,"caphIITHFPSpbjE921BKQI"],0]],[1,"69FgsEzoBDTacqJXaEFrX7",1,0],[1,375,0,0]],[9,"indicator",7,[[[2,-50,[0,"e4APRgXX5GnYn+jIdNYZQY"],[5,500,30]],-51],4,1],[1,"f05Mt7lCpJ5am32HXysmnx",1,0],[1,0,-158,0]],[9,"bar",5,[[[3,-52,[0,"8ez5IK6m5O5IPmW6CS3VLh"],[5,6,30],[0,0,0]],-53],4,1],[1,"90/JGPGV1P17O/2Y8XbgHV",1,0],[1,-11,-31.25,0]],[7,"lblTitle",33554432,3,[[10,-54,[5,420,80]],[39,"PageView Demo",32,32,36,2,false,-55,[4,4285881683]]],[1,0,40,0]],[25,10,13,[0,"06eKp4lNtKN6/xsyQf1TUr"],[5,10,10]],[19,1,0,14,[0,"c1ZlCqn/dCAb8cRDd6T7hb"],[4,16777215]],[35,1,true,5,[0,"555UXX6g9NOI3UdeCUKSeY"],17],[36,0.6,0.75,false,2,[0,"d8WVD9XYNMx5L+H0iw0AJZ"],4,18]],0,[0,3,1,0,0,1,0,0,1,0,-1,2,0,-2,3,0,0,2,0,0,2,0,-3,19,0,0,2,0,0,2,0,-1,6,0,-2,5,0,0,3,0,0,3,0,0,3,0,0,3,0,-1,10,0,-2,15,0,0,4,0,0,4,0,0,4,0,-1,7,0,0,5,0,0,5,0,0,5,0,-4,18,0,-1,14,0,0,6,0,0,6,0,0,6,0,0,7,0,4,16,0,5,8,0,0,7,0,-1,9,0,-2,13,0,0,8,0,0,8,0,-1,12,0,0,9,0,0,9,0,0,10,0,0,10,0,-1,11,0,0,11,0,0,11,0,0,11,0,0,12,0,0,12,0,0,13,0,-2,16,0,0,14,0,-2,17,0,0,15,0,0,15,0,6,1,4,2,6,8,2,9,18,7,19,55],[0,0,0,0,0,16,17],[1,1,1,1,1,1,1],[1,2,3,4,5,0,0]] diff --git a/cx3-demo/project/assets/assets/ui/import/bd/bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@f9941.json b/cx3-demo/project/assets/assets/ui/import/bd/bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@f9941.json new file mode 100644 index 0000000..c4a19cf --- /dev/null +++ b/cx3-demo/project/assets/assets/ui/import/bd/bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@f9941.json @@ -0,0 +1 @@ +[1,["bdpDgdR7xLPpdw2P572D3Y@6c48a"],["_textureSource"],["cc.SpriteFrame"],0,[{"name":"btn_orange","rect":{"x":0,"y":0,"width":315,"height":84},"offset":{"x":0,"y":0},"originalSize":{"width":315,"height":84},"rotated":false,"capInsets":[59,23,66,27],"texture":"bda4381d-47bc-4b3e-9770-d8fe7bd83dd8@6c48a","packable":true}],[0],0,[0],[0],[0]] diff --git a/cx3-demo/project/assets/assets/ui/import/cc/cc933fe3-f218-4226-869f-91545b573a79.json b/cx3-demo/project/assets/assets/ui/import/cc/cc933fe3-f218-4226-869f-91545b573a79.json new file mode 100644 index 0000000..21f867b --- /dev/null +++ b/cx3-demo/project/assets/assets/ui/import/cc/cc933fe3-f218-4226-869f-91545b573a79.json @@ -0,0 +1 @@ +[1,["ffuIqPr2JI9I8dPLYGRDpD@f9941","b7MFJ8MjNBwqr3fNq1j5dJ@f9941","58TNiBnLJAy4dsWrjG1JE5@f9941","7dj5uJT9FMn6OrOOx83tfK@f9941","afxHkx8GZGsJC+n+YfITQo@f9941"],["node","_spriteFrame","root","data","_scrollView"],[["cc.Widget",["_alignFlags","_originalWidth","_originalHeight","_right","_left","_alignMode","_top","node","__prefab"],-4,1,4],["cc.Node",["_name","_layer","_components","_parent","_children","_prefab","_lpos"],1,9,1,2,4,5],["cc.Sprite",["_sizeMode","_type","_enabled","node","__prefab","_spriteFrame","_color"],0,1,4,6,5],["cc.UITransform",["node","_contentSize","__prefab","_anchorPoint"],3,1,5,4,5],["cc.Node",["_name","_layer","_parent","_components","_prefab","_lpos","_children"],1,1,12,4,5,2],["de62eN2YMBPE53miXlqryfB",["safeHeight","safeWidgetTop","node","__prefab"],1,1,4],["cc.Prefab",["_name"],2],["cc.CompPrefabInfo",["fileId"],2],["cc.Layout",["_resizeMode","_layoutType","_paddingTop","_spacingY","_isAlign","node","__prefab"],-2,1,4],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.Mask",["node","__prefab"],3,1,4],["cc.ScrollBar",["_direction","_enableAutoHide","node","__prefab","_handle"],1,1,4,1],["cc.ScrollView",["bounceDuration","brake","horizontal","node","__prefab","_content","_verticalScrollBar"],0,1,4,1,1],["cc.Label",["_string","_actualFontSize","_fontSize","_lineHeight","_overflow","_enableWrapText","node","_color"],-3,1,5]],[[7,0,2],[9,0,1,2,2],[3,0,2,1,1],[3,0,2,1,3,1],[1,0,3,4,2,6,2],[1,0,1,3,2,6,3],[3,0,1,1],[6,0,2],[1,0,4,2,5,2],[1,0,1,3,4,2,5,3],[1,0,1,3,2,5,3],[4,0,1,2,6,3,4,5,3],[4,0,2,6,3,4,5,2],[4,0,2,3,4,5,2],[3,0,1,3,1],[8,0,1,2,3,4,5,6,6],[0,0,1,7,8,3],[0,0,1,2,7,8,4],[0,0,3,2,5,7,8,5],[0,0,6,1,2,7,8,5],[0,0,4,7,3],[0,0,7,2],[0,0,1,7,3],[0,0,4,3,1,2,7,8,6],[10,0,1,1],[2,1,0,3,4,6,3],[2,2,1,0,3,4,6,5,4],[2,1,0,3,4,5,3],[2,3,4,5,1],[2,0,3,5,2],[11,0,1,2,3,4,3],[12,0,1,2,3,4,5,6,4],[5,0,1,2,3,3],[5,2,1],[13,0,1,2,3,4,5,6,7,7]],[[7,"pageScrollView"],[8,"pageScrollView",[-4,-5],[[2,-2,[0,"15fCSwGKNA5Ikb0zSxhp16"],[5,750,1334]],[23,5,325,325,100,100,-3,[0,"8bkJFJv91Cm75ckm6vxjw+"]]],[1,"3ex+NNeRVD5Y4ycNEQzz80",-1,0]],[11,"view",33554432,1,[-11,-12],[[[2,-6,[0,"43JKoi4rdF+pGjPSQRz3F7"],[5,750,1206]],[27,1,0,-7,[0,"99jn2X2wtMzb0yMTBhbzDz"],1],-8,[19,21,128,750,250,-9,[0,"92EUoxP4lMQa9EwO3Owl4J"]],[32,0,170,-10,[0,"3bQfmhUq1O+Z1em8m98Oni"]]],4,4,1,4,4],[1,"2eyTuBT6hMnpvMNi0DIil1",1,0],[1,0,-64,0]],[4,"layerTitle",1,[-17,-18],[[14,-13,[5,750,128],[0,0.5,0]],[22,17,750,-14],[29,0,-15,3],[33,-16]],[1,0,539,0]],[12,"scrollBar",2,[-23],[[[3,-19,[0,"a3L62ntM9F+aAkmiwTuFD9"],[5,12,1206],[0,1,0.5]],[26,false,1,0,-20,[0,"00ZjiCv3RG4KkSTXucWLfL"],[4,16777215],0],[18,37,4,250,0,-21,[0,"01m6lmDTxERYFdhBN1TXlW"]],-22],4,4,4,1],[1,"danb1EBSdB9IdwKIdibej9",1,0],[1,371,0,0]],[9,"maskContent",33554432,2,[-27],[[2,-24,[0,"danHM7aSFBqYGJxTfWZ9bH"],[5,750,1206]],[24,-25,[0,"b6u4SfObJAHZKrOSMuVL0r"]],[17,45,750,1334,-26,[0,"92YOYolzJNkJYWOWBxpSX/"]]],[1,"97lYlBSSlHjaQcMeQxttn/",1,0]],[10,"content",33554432,5,[[3,-28,[0,"a5WylOEpRE/KKqoaKFanIC"],[5,750,202],[0,0.5,1]],[15,1,2,1,1,true,-29,[0,"9bppCMx+tCwadCZ7s3dkOl"]],[16,40,750,-30,[0,"3aMjEHKgBLzbI0kJIZdQ5z"]]],[1,"d5L13HRqNEkZkKP92/l0Zk",1,0]],[4,"spClose",3,[-33],[[6,-31,[5,200,80]],[21,12,-32]],[1,-275,40,0]],[5,"imgClose",33554432,7,[[2,-34,[0,"f7NISe7HdAD68SLfhnddy8"],[5,18,32]],[28,-35,[0,"e71ctEmpxFC4KlSYRZNz/a"],2],[20,8,30,-36]],[1,-61,0,0]],[13,"bar",4,[[[3,-37,[0,"8ez5IK6m5O5IPmW6CS3VLh"],[5,6,30],[0,0,0]],-38],4,1],[1,"90/JGPGV1P17O/2Y8XbgHV",1,0],[1,-11,-31.25,0]],[5,"lblTitle",33554432,3,[[6,-39,[5,420,80]],[34,"ScrollView Demo",32,32,36,2,false,-40,[4,4285881683]]],[1,0,40,0]],[25,1,0,9,[0,"c1ZlCqn/dCAb8cRDd6T7hb"],[4,16777215]],[30,1,true,4,[0,"555UXX6g9NOI3UdeCUKSeY"],11],[31,0.6,0.75,false,2,[0,"d8WVD9XYNMx5L+H0iw0AJZ"],6,12]],0,[0,2,1,0,0,1,0,0,1,0,-1,2,0,-2,3,0,0,2,0,0,2,0,-3,13,0,0,2,0,0,2,0,-1,5,0,-2,4,0,0,3,0,0,3,0,0,3,0,0,3,0,-1,7,0,-2,10,0,0,4,0,0,4,0,0,4,0,-4,12,0,-1,9,0,0,5,0,0,5,0,0,5,0,-1,6,0,0,6,0,0,6,0,0,6,0,0,7,0,0,7,0,-1,8,0,0,8,0,0,8,0,0,8,0,0,9,0,-2,11,0,0,10,0,0,10,0,3,1,12,4,13,40],[0,0,0,0,11],[1,1,1,1,1],[0,1,2,3,4]] diff --git a/cx3-demo/project/assets/assets/ui/index.js b/cx3-demo/project/assets/assets/ui/index.js new file mode 100644 index 0000000..ec7692e --- /dev/null +++ b/cx3-demo/project/assets/assets/ui/index.js @@ -0,0 +1,20 @@ +System.register("chunks:///_virtual/ui",[],(function(){"use strict";return{execute:function(){}}})); + +(function(r) { + r('virtual:///prerequisite-imports/ui', 'chunks:///_virtual/ui'); +})(function(mid, cid) { + System.register(mid, [cid], function (_export, _context) { + return { + setters: [function(_m) { + var _exportObj = {}; + + for (var _key in _m) { + if (_key !== "default" && _key !== "__esModule") _exportObj[_key] = _m[_key]; + } + + _export(_exportObj); + }], + execute: function () { } + }; + }); +}); \ No newline at end of file diff --git a/cx3-demo/project/assets/jsb-adapter/jsb-builtin.js b/cx3-demo/project/assets/jsb-adapter/jsb-builtin.js new file mode 100644 index 0000000..293a9f2 --- /dev/null +++ b/cx3-demo/project/assets/jsb-adapter/jsb-builtin.js @@ -0,0 +1,6534 @@ +(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + +},{}],2:[function(require,module,exports){ +(function (setImmediate,clearImmediate){ +var nextTick = require('process/browser.js').nextTick; +var apply = Function.prototype.apply; +var slice = Array.prototype.slice; +var immediateIds = {}; +var nextImmediateId = 0; + +// DOM APIs, for completeness + +exports.setTimeout = function() { + return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout); +}; +exports.setInterval = function() { + return new Timeout(apply.call(setInterval, window, arguments), clearInterval); +}; +exports.clearTimeout = +exports.clearInterval = function(timeout) { timeout.close(); }; + +function Timeout(id, clearFn) { + this._id = id; + this._clearFn = clearFn; +} +Timeout.prototype.unref = Timeout.prototype.ref = function() {}; +Timeout.prototype.close = function() { + this._clearFn.call(window, this._id); +}; + +// Does not start the time, just sets up the members needed. +exports.enroll = function(item, msecs) { + clearTimeout(item._idleTimeoutId); + item._idleTimeout = msecs; +}; + +exports.unenroll = function(item) { + clearTimeout(item._idleTimeoutId); + item._idleTimeout = -1; +}; + +exports._unrefActive = exports.active = function(item) { + clearTimeout(item._idleTimeoutId); + + var msecs = item._idleTimeout; + if (msecs >= 0) { + item._idleTimeoutId = setTimeout(function onTimeout() { + if (item._onTimeout) + item._onTimeout(); + }, msecs); + } +}; + +// That's not how node.js implements it but the exposed api is the same. +exports.setImmediate = typeof setImmediate === "function" ? setImmediate : function(fn) { + var id = nextImmediateId++; + var args = arguments.length < 2 ? false : slice.call(arguments, 1); + + immediateIds[id] = true; + + nextTick(function onNextTick() { + if (immediateIds[id]) { + // fn.call() is faster so we optimize for the common use-case + // @see http://jsperf.com/call-apply-segu + if (args) { + fn.apply(null, args); + } else { + fn.call(null); + } + // Prevent ids from leaking + exports.clearImmediate(id); + } + }); + + return id; +}; + +exports.clearImmediate = typeof clearImmediate === "function" ? clearImmediate : function(id) { + delete immediateIds[id]; +}; +}).call(this,require("timers").setImmediate,require("timers").clearImmediate) +},{"process/browser.js":1,"timers":2}],3:[function(require,module,exports){ +(function (global){ +"use strict"; + +/* Blob.js + * A Blob implementation. + * 2017-11-15 + * + * By Eli Grey, http://eligrey.com + * By Devin Samarin, https://github.com/dsamarin + * License: MIT + * See https://github.com/eligrey/Blob.js/blob/master/LICENSE.md + */ + +/*global self, unescape */ + +/*jslint bitwise: true, regexp: true, confusion: true, es5: true, vars: true, white: true, + plusplus: true */ + +/*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */ +(function (global) { + (function (factory) { + if (typeof define === "function" && define.amd) { + // AMD. Register as an anonymous module. + define(["exports"], factory); + } else if (typeof exports === "object" && typeof exports.nodeName !== "string") { + // CommonJS + factory(exports); + } else { + // Browser globals + factory(global); + } + })(function (exports) { + "use strict"; + + exports.URL = global.URL || global.webkitURL; + + if (global.Blob && global.URL) { + try { + new Blob(); + return; + } catch (e) {} + } // Internally we use a BlobBuilder implementation to base Blob off of + // in order to support older browsers that only have BlobBuilder + + + var BlobBuilder = global.BlobBuilder || global.WebKitBlobBuilder || global.MozBlobBuilder || function () { + var get_class = function (object) { + return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1]; + }, + FakeBlobBuilder = function BlobBuilder() { + this.data = []; + }, + FakeBlob = function Blob(data, type, encoding) { + this.data = data; + this.size = data.length; + this.type = type; + this.encoding = encoding; + }, + FBB_proto = FakeBlobBuilder.prototype, + FB_proto = FakeBlob.prototype, + FileReaderSync = global.FileReaderSync, + FileException = function (type) { + this.code = this[this.name = type]; + }, + file_ex_codes = ("NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR " + "NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR").split(" "), + file_ex_code = file_ex_codes.length, + real_URL = global.URL || global.webkitURL || exports, + real_create_object_URL = real_URL.createObjectURL, + real_revoke_object_URL = real_URL.revokeObjectURL, + URL = real_URL, + btoa = global.btoa, + atob = global.atob, + ArrayBuffer = global.ArrayBuffer, + Uint8Array = global.Uint8Array, + origin = /^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/; + + FakeBlob.fake = FB_proto.fake = true; + + while (file_ex_code--) { + FileException.prototype[file_ex_codes[file_ex_code]] = file_ex_code + 1; + } // Polyfill URL + + + if (!real_URL.createObjectURL) { + URL = exports.URL = function (uri) { + var uri_info = document.createElementNS("http://www.w3.org/1999/xhtml", "a"), + uri_origin; + uri_info.href = uri; + + if (!("origin" in uri_info)) { + if (uri_info.protocol.toLowerCase() === "data:") { + uri_info.origin = null; + } else { + uri_origin = uri.match(origin); + uri_info.origin = uri_origin && uri_origin[1]; + } + } + + return uri_info; + }; + } + + URL.createObjectURL = function (blob) { + var type = blob.type, + data_URI_header; + + if (type === null) { + type = "application/octet-stream"; + } + + if (blob instanceof FakeBlob) { + data_URI_header = "data:" + type; + + if (blob.encoding === "base64") { + return data_URI_header + ";base64," + blob.data; + } else if (blob.encoding === "URI") { + return data_URI_header + "," + decodeURIComponent(blob.data); + } + + if (btoa) { + return data_URI_header + ";base64," + btoa(blob.data); + } else { + return data_URI_header + "," + encodeURIComponent(blob.data); + } + } else if (real_create_object_URL) { + return real_create_object_URL.call(real_URL, blob); + } + }; + + URL.revokeObjectURL = function (object_URL) { + if (object_URL.substring(0, 5) !== "data:" && real_revoke_object_URL) { + real_revoke_object_URL.call(real_URL, object_URL); + } + }; + + FBB_proto.append = function (data + /*, endings*/ + ) { + var bb = this.data; // decode data to a binary string + + if (Uint8Array && (data instanceof ArrayBuffer || data instanceof Uint8Array)) { + var str = "", + buf = new Uint8Array(data), + i = 0, + buf_len = buf.length; + + for (; i < buf_len; i++) { + str += String.fromCharCode(buf[i]); + } + + bb.push(str); + } else if (get_class(data) === "Blob" || get_class(data) === "File") { + if (FileReaderSync) { + var fr = new FileReaderSync(); + bb.push(fr.readAsBinaryString(data)); + } else { + // async FileReader won't work as BlobBuilder is sync + throw new FileException("NOT_READABLE_ERR"); + } + } else if (data instanceof FakeBlob) { + if (data.encoding === "base64" && atob) { + bb.push(atob(data.data)); + } else if (data.encoding === "URI") { + bb.push(decodeURIComponent(data.data)); + } else if (data.encoding === "raw") { + bb.push(data.data); + } + } else { + if (typeof data !== "string") { + data += ""; // convert unsupported types to strings + } // decode UTF-16 to binary string + + + bb.push(unescape(encodeURIComponent(data))); + } + }; + + FBB_proto.getBlob = function (type) { + if (!arguments.length) { + type = null; + } + + return new FakeBlob(this.data.join(""), type, "raw"); + }; + + FBB_proto.toString = function () { + return "[object BlobBuilder]"; + }; + + FB_proto.slice = function (start, end, type) { + var args = arguments.length; + + if (args < 3) { + type = null; + } + + return new FakeBlob(this.data.slice(start, args > 1 ? end : this.data.length), type, this.encoding); + }; + + FB_proto.toString = function () { + return "[object Blob]"; + }; + + FB_proto.close = function () { + this.size = 0; + delete this.data; + }; + + return FakeBlobBuilder; + }(); + + exports.Blob = function (blobParts, options) { + var type = options ? options.type || "" : ""; + var builder = new BlobBuilder(); + + if (blobParts) { + for (var i = 0, len = blobParts.length; i < len; i++) { + if (Uint8Array && blobParts[i] instanceof Uint8Array) { + builder.append(blobParts[i].buffer); + } else { + builder.append(blobParts[i]); + } + } + } + + var blob = builder.getBlob(type); + + if (!blob.slice && blob.webkitSlice) { + blob.slice = blob.webkitSlice; + } + + return blob; + }; + + var getPrototypeOf = Object.getPrototypeOf || function (object) { + return object.__proto__; + }; + + exports.Blob.prototype = getPrototypeOf(new exports.Blob()); + }); +})(typeof self !== "undefined" && self || typeof window !== "undefined" && window || typeof global !== "undefined" && global || (void 0).content || void 0); + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],4:[function(require,module,exports){ +"use strict"; + +!function () { + function e(e) { + this.message = e; + } + + var t = "undefined" != typeof exports ? exports : "undefined" != typeof self ? self : $.global, + r = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + e.prototype = new Error(), e.prototype.name = "InvalidCharacterError", t.btoa || (t.btoa = function (t) { + for (var o, n, a = String(t), i = 0, f = r, c = ""; a.charAt(0 | i) || (f = "=", i % 1); c += f.charAt(63 & o >> 8 - i % 1 * 8)) { + if (n = a.charCodeAt(i += .75), n > 255) throw new e("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range."); + o = o << 8 | n; + } + + return c; + }), t.atob || (t.atob = function (t) { + var o = String(t).replace(/[=]+$/, ""); + if (o.length % 4 == 1) throw new e("'atob' failed: The string to be decoded is not correctly encoded."); + + for (var n, a, i = 0, f = 0, c = ""; a = o.charAt(f++); ~a && (n = i % 4 ? 64 * n + a : a, i++ % 4) ? c += String.fromCharCode(255 & n >> (-2 * i & 6)) : 0) a = r.indexOf(a); + + return c; + }); +}(); + +},{}],5:[function(require,module,exports){ +"use strict"; + +jsb.device = jsb.Device; // cc namespace will be reset to {} in creator, use jsb namespace instead. + +const { + btoa, + atob +} = require('./base64/base64.min'); + +window.btoa = btoa; +window.atob = atob; + +const { + Blob, + URL +} = require('./Blob'); + +window.Blob = Blob; +window.URL = URL; +window.DOMParser = require('./xmldom/dom-parser').DOMParser; + +require('./jsb_prepare'); + +require('./jsb-adapter'); + +require('./jsb_audioengine'); + +require('./jsb_input'); + +let _oldRequestFrameCallback = null; +let _requestAnimationFrameID = 0; +let _requestAnimationFrameCallbacks = {}; +let _firstTick = true; + +window.requestAnimationFrame = function (cb) { + let id = ++_requestAnimationFrameID; + _requestAnimationFrameCallbacks[id] = cb; + return id; +}; + +window.cancelAnimationFrame = function (id) { + delete _requestAnimationFrameCallbacks[id]; +}; + +function tick(nowMilliSeconds) { + if (_firstTick) { + _firstTick = false; + + if (window.onload) { + var event = new Event('load'); + event._target = window; + window.onload(event); + } + } + + fireTimeout(nowMilliSeconds); + + for (let id in _requestAnimationFrameCallbacks) { + _oldRequestFrameCallback = _requestAnimationFrameCallbacks[id]; + + if (_oldRequestFrameCallback) { + delete _requestAnimationFrameCallbacks[id]; + + _oldRequestFrameCallback(nowMilliSeconds); + } + } +} + +let _timeoutIDIndex = 0; + +class TimeoutInfo { + constructor(cb, delay, isRepeat, target, args) { + this.cb = cb; + this.id = ++_timeoutIDIndex; + this.start = performance.now(); + this.delay = delay; + this.isRepeat = isRepeat; + this.target = target; + this.args = args; + } + +} + +let _timeoutInfos = {}; + +function fireTimeout(nowMilliSeconds) { + let info; + + for (let id in _timeoutInfos) { + info = _timeoutInfos[id]; + + if (info && info.cb) { + if (nowMilliSeconds - info.start >= info.delay) { + // console.log(`fireTimeout: id ${id}, start: ${info.start}, delay: ${info.delay}, now: ${nowMilliSeconds}`); + if (typeof info.cb === 'string') { + Function(info.cb)(); + } else if (typeof info.cb === 'function') { + info.cb.apply(info.target, info.args); + } + + if (info.isRepeat) { + info.start = nowMilliSeconds; + } else { + delete _timeoutInfos[id]; + } + } + } + } +} + +function createTimeoutInfo(prevFuncArgs, isRepeat) { + let cb = prevFuncArgs[0]; + + if (!cb) { + console.error("createTimeoutInfo doesn't pass a callback ..."); + return 0; + } + + let delay = prevFuncArgs.length > 1 ? prevFuncArgs[1] : 0; + let args; + + if (prevFuncArgs.length > 2) { + args = Array.prototype.slice.call(prevFuncArgs, 2); + } + + let info = new TimeoutInfo(cb, delay, isRepeat, this, args); + _timeoutInfos[info.id] = info; + return info.id; +} + +window.setTimeout = function (cb) { + return createTimeoutInfo(arguments, false); +}; + +window.clearTimeout = function (id) { + delete _timeoutInfos[id]; +}; + +window.setInterval = function (cb) { + return createTimeoutInfo(arguments, true); +}; + +window.clearInterval = window.clearTimeout; +window.alert = console.error.bind(console); // File utils (Temporary, won't be accessible) + +if (typeof jsb.FileUtils !== 'undefined') { + jsb.fileUtils = jsb.FileUtils.getInstance(); + delete jsb.FileUtils; +} + +XMLHttpRequest.prototype.addEventListener = function (eventName, listener, options) { + this['on' + eventName] = listener; +}; + +XMLHttpRequest.prototype.removeEventListener = function (eventName, listener, options) { + this['on' + eventName] = null; +}; // SocketIO + + +if (window.SocketIO) { + window.io = window.SocketIO; + SocketIO.prototype._Emit = SocketIO.prototype.emit; + + SocketIO.prototype.emit = function (uri, delegate) { + if (typeof delegate === 'object') { + delegate = JSON.stringify(delegate); + } + + this._Emit(uri, delegate); + }; +} + +window.gameTick = tick; // generate get set function + +jsb.generateGetSet = function (moduleObj) { + for (let classKey in moduleObj) { + let classProto = moduleObj[classKey] && moduleObj[classKey].prototype; + if (!classProto) continue; + + for (let getName in classProto) { + let getPos = getName.search(/^get/); + if (getPos == -1) continue; + let propName = getName.replace(/^get/, ''); + let nameArr = propName.split(''); + let lowerFirst = nameArr[0].toLowerCase(); + let upperFirst = nameArr[0].toUpperCase(); + nameArr.splice(0, 1); + let left = nameArr.join(''); + propName = lowerFirst + left; + let setName = 'set' + upperFirst + left; + if (classProto.hasOwnProperty(propName)) continue; + let setFunc = classProto[setName]; + let hasSetFunc = typeof setFunc === 'function'; + + if (hasSetFunc) { + Object.defineProperty(classProto, propName, { + get() { + return this[getName](); + }, + + set(val) { + this[setName](val); + }, + + configurable: true + }); + } else { + Object.defineProperty(classProto, propName, { + get() { + return this[getName](); + }, + + configurable: true + }); + } + } + } +}; // promise polyfill relies on setTimeout implementation + + +require('./promise.min'); + +},{"./Blob":3,"./base64/base64.min":4,"./jsb-adapter":30,"./jsb_audioengine":35,"./jsb_input":36,"./jsb_prepare":37,"./promise.min":38,"./xmldom/dom-parser":39}],6:[function(require,module,exports){ +"use strict"; + +const ImageData = require('./ImageData'); + +class Context2DAttribute { + constructor() { + this.lineWidth = undefined; + this.lineJoin = undefined; + this.fillStyle = undefined; + this.font = undefined; + this.lineCap = undefined; + this.textAlign = undefined; + this.textBaseline = undefined; + this.strokeStyle = undefined; + this.globalCompositeOperation = undefined; + } + +} + +class CanvasRenderingContext2D { + constructor(width, height) { + this._nativeObj = new jsb.CanvasRenderingContext2D(width, height); + this._attris = new Context2DAttribute(); + } // Do not cache width and height, as they will change buffer and sync to JS. + + + get width() { + return this._nativeObj.width; + } + + set width(val) { + this._nativeObj.width = val; + } + + get height() { + return this._nativeObj.height; + } + + set height(val) { + this._nativeObj.height = val; + } + + get lineWidth() { + return this._attris.lineWidth; + } + + set lineWidth(val) { + this._attris.lineWidth = val; + } + + get lineJoin() { + return this._attris.lineJoin; + } + + set lineJoin(val) { + this._attris.lineJoin = val; + } + + get fillStyle() { + return this._attris.fillStyle; + } + + set fillStyle(val) { + this._attris.fillStyle = val; + } + + get font() { + return this._attris.font; + } + + set font(val) { + this._attris.font = val; + } + + get lineCap() { + return this._attris.lineCap; + } + + set lineCap(val) { + this._attris.lineCap = val; + } + + get textAlign() { + return this._attris.textAlign; + } + + set textAlign(val) { + this._attris.textAlign = val; + } + + get textBaseline() { + return this._attris.textBaseline; + } + + set textBaseline(val) { + this._attris.textBaseline = val; + } + + get strokeStyle() { + return this._attris.strokeStyle; + } + + set strokeStyle(val) { + this._attris.strokeStyle = val; + } + + get globalCompositeOperation() { + return this._attris.globalCompositeOperation; + } + + set globalCompositeOperation(val) { + this._attris.globalCompositeOperation = val; + } + + restore() { + this._nativeObj.restore(); + } + + moveTo(x, y) { + this._nativeObj.moveTo(x, y); + } + + lineTo(x, y) { + this._nativeObj.lineTo(x, y); + } + + setTransform(a, b, c, d, e, f) { + this._nativeObj.setTransform(a, b, c, d, e, f); + } + + stroke() { + this._nativeObj.stroke(); + } + + measureText(text) { + return this._nativeObj.measureText(text, this._attris); + } + + fill() { + this._nativeObj.fill(); + } + + _fillImageData(data, width, height, offsetX, offsetY) { + this._nativeObj._fillImageData(data, width, height, offsetX, offsetY); + } + + scale(x, y) { + this._nativeObj.scale(x, y); + } + + clearRect(x, y, width, height) { + this._nativeObj.clearRect(x, y, width, height); + } + + transform(a, b, c, d, e, f) { + this._nativeObj.transform(a, b, c, d, e, f); + } + + fillText(text, x, y, maxWidth) { + this._nativeObj.fillText(text, x, y, maxWidth, this._attris); + } + + strokeText(text, x, y, maxWidth) { + this._nativeObj.strokeText(text, x, y, maxWidth, this._attris); + } + + save() { + this._nativeObj.save(); + } + + fillRect(x, y, width, height) { + this._nativeObj.fillRect(x, y, width, height, this._attris); + } + + rotate(angle) { + this._nativeObj.rotate(angle); + } + + beginPath() { + this._nativeObj.beginPath(); + } + + rect(x, y, width, height) { + this._nativeObj.rect(x, y, width, height); + } + + translate(x, y) { + this._nativeObj.translate(x, y); + } + + createLinearGradient(x0, y0, x1, y1) { + return this._nativeObj.createLinearGradient(x0, y0, x1, y1); + } + + closePath() { + this._nativeObj.closePath(); + } // void ctx.putImageData(imagedata, dx, dy); + // void ctx.putImageData(imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight); + + + putImageData(imageData, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) { + this._canvas._data = imageData; + } // ImageData ctx.createImageData(imagedata); + // ImageData ctx.createImageData(width, height); + + + createImageData(args1, args2) { + if (typeof args1 === 'number' && typeof args2 == 'number') { + return new ImageData(args1, args2); + } else if (args1 instanceof ImageData) { + return new ImageData(args1.data, args1.width, args1.height); + } + } // Comment it seems it is not used. + // // ImageData ctx.getImageData(sx, sy, sw, sh); + // getImageData (sx, sy, sw, sh) { + // var canvasWidth = this._canvas._width; + // var canvasHeight = this._canvas._height; + // var canvasBuffer = this._canvas._data.data; + // // image rect may bigger that canvas rect + // var maxValidSH = (sh + sy) < canvasHeight ? sh : (canvasHeight - sy); + // var maxValidSW = (sw + sx) < canvasWidth ? sw : (canvasWidth - sx); + // var imgBuffer = new Uint8ClampedArray(sw * sh * 4); + // for (var y = 0; y < maxValidSH; y++) { + // for (var x = 0; x < maxValidSW; x++) { + // var canvasPos = (y + sy) * canvasWidth + (x + sx); + // var imgPos = y * sw + x; + // imgBuffer[imgPos * 4 + 0] = canvasBuffer[canvasPos * 4 + 0]; + // imgBuffer[imgPos * 4 + 1] = canvasBuffer[canvasPos * 4 + 1]; + // imgBuffer[imgPos * 4 + 2] = canvasBuffer[canvasPos * 4 + 2]; + // imgBuffer[imgPos * 4 + 3] = canvasBuffer[canvasPos * 4 + 3]; + // } + // } + // return new ImageData(imgBuffer, sw, sh); + // } + + + _setCanvasBufferUpdatedCallback(func) { + this._nativeObj._setCanvasBufferUpdatedCallback(func); + } + +} + +module.exports = CanvasRenderingContext2D; + +},{"./ImageData":22}],7:[function(require,module,exports){ +"use strict"; + +class DOMRect { + constructor(x, y, width, height) { + this.x = x ? x : 0; + this.y = y ? y : 0; + this.width = width ? width : 0; + this.height = height ? height : 0; + this.left = this.x; + this.top = this.y; + this.right = this.x + this.width; + this.bottom = this.y + this.height; + } + +} + +module.exports = DOMRect; + +},{}],8:[function(require,module,exports){ +"use strict"; + +const Event = require('./Event'); + +class DeviceMotionEvent extends Event { + constructor(initArgs) { + super('devicemotion'); + + if (initArgs) { + this._acceleration = initArgs.acceleration ? initArgs.acceleration : { + x: 0, + y: 0, + z: 0 + }; + this._accelerationIncludingGravity = initArgs.accelerationIncludingGravity ? initArgs.accelerationIncludingGravity : { + x: 0, + y: 0, + z: 0 + }; + this._rotationRate = initArgs.rotationRate ? initArgs.rotationRate : { + alpha: 0, + beta: 0, + gamma: 0 + }; + this._interval = initArgs.interval; + } else { + this._acceleration = { + x: 0, + y: 0, + z: 0 + }; + this._accelerationIncludingGravity = { + x: 0, + y: 0, + z: 0 + }; + this._rotationRate = { + alpha: 0, + beta: 0, + gamma: 0 + }; + this._interval = 0; + } + } + + get acceleration() { + return this._acceleration; + } + + get accelerationIncludingGravity() { + return this._accelerationIncludingGravity; + } + + get rotationRate() { + return this._rotationRate; + } + + get interval() { + return this._interval; + } + +} + +module.exports = DeviceMotionEvent; + +},{"./Event":10}],9:[function(require,module,exports){ +"use strict"; + +const Node = require('./Node'); + +const DOMRect = require('./DOMRect'); + +class Element extends Node { + constructor() { + super(); + this.className = ''; + this.children = []; + this.clientLeft = 0; + this.clientTop = 0; + this.scrollLeft = 0; + this.scrollTop = 0; + } + + get clientWidth() { + return 0; + } + + get clientHeight() { + return 0; + } + + getBoundingClientRect() { + return new DOMRect(0, 0, window.innerWidth, window.innerHeight); + } // attrName is a string that names the attribute to be removed from element. + + + removeAttribute(attrName) {} + +} + +module.exports = Element; + +},{"./DOMRect":7,"./Node":26}],10:[function(require,module,exports){ +"use strict"; + +/** + * @see https://dom.spec.whatwg.org/#interface-event + * @private + */ + +/** + * The event wrapper. + * @constructor + * @param {EventTarget} eventTarget The event target of this dispatching. + * @param {Event|{type:string}} event The original event to wrap. + */ +class Event { + constructor(type, eventInit) { + this._type = type; + this._target = null; + this._eventPhase = 2; + this._currentTarget = null; + this._canceled = false; + this._stopped = false; // The flag to stop propagation immediately. + + this._passiveListener = null; + this._timeStamp = Date.now(); + } + /** + * The type of this event. + * @type {string} + */ + + + get type() { + return this._type; + } + /** + * The target of this event. + * @type {EventTarget} + */ + + + get target() { + return this._target; + } + /** + * The target of this event. + * @type {EventTarget} + */ + + + get currentTarget() { + return this._currentTarget; + } + + get isTrusted() { + // https://heycam.github.io/webidl/#Unforgeable + return false; + } + + get timeStamp() { + return this._timeStamp; + } + /** + * @returns {EventTarget[]} The composed path of this event. + */ + + + composedPath() { + const currentTarget = this._currentTarget; + + if (currentTarget === null) { + return []; + } + + return [currentTarget]; + } + /** + * The target of this event. + * @type {number} + */ + + + get eventPhase() { + return this._eventPhase; + } + /** + * Stop event bubbling. + * @returns {void} + */ + + + stopPropagation() {} + /** + * Stop event bubbling. + * @returns {void} + */ + + + stopImmediatePropagation() { + this._stopped = true; + } + /** + * The flag to be bubbling. + * @type {boolean} + */ + + + get bubbles() { + return false; + } + /** + * The flag to be cancelable. + * @type {boolean} + */ + + + get cancelable() { + return true; + } + /** + * Cancel this event. + * @returns {void} + */ + + + preventDefault() { + if (this._passiveListener !== null) { + console.warn("Event#preventDefault() was called from a passive listener:", this._passiveListener); + return; + } + + if (!this.cancelable) { + return; + } + + this._canceled = true; + } + /** + * The flag to indicate cancellation state. + * @type {boolean} + */ + + + get defaultPrevented() { + return this._canceled; + } + /** + * The flag to be composed. + * @type {boolean} + */ + + + get composed() { + return false; + } + /** + * The unix time of this event. + * @type {number} + */ + + + get timeStamp() { + return this._timeStamp; + } + +} +/** + * Constant of NONE. + * @type {number} + */ + + +Event.NONE = 0; +/** + * Constant of CAPTURING_PHASE. + * @type {number} + */ + +Event.CAPTURING_PHASE = 1; +/** + * Constant of AT_TARGET. + * @type {number} + */ + +Event.AT_TARGET = 2; +/** + * Constant of BUBBLING_PHASE. + * @type {number} + */ + +Event.BUBBLING_PHASE = 3; +module.exports = Event; + +},{}],11:[function(require,module,exports){ +"use strict"; + +var __targetID = 0; +var __listenerMap = { + touch: {}, + mouse: {}, + keyboard: {}, + devicemotion: {} +}; +var __listenerCountMap = { + touch: 0, + mouse: 0, + keyboard: 0, + devicemotion: 0 +}; +var __enableCallbackMap = { + touch: null, + mouse: null, + keyboard: null, + //FIXME: Cocos Creator invokes addEventListener('devicemotion') when engine initializes, it will active sensor hardware. + // In that case, CPU and temperature cost will increase. Therefore, we require developer to invoke 'jsb.device.setMotionEnabled(true)' + // on native platforms since most games will not listen motion event. + devicemotion: null // devicemotion: function() { + // jsb.device.setMotionEnabled(true); + // } + +}; +var __disableCallbackMap = { + touch: null, + mouse: null, + //FIXME: Cocos Creator invokes addEventListener('devicemotion') when engine initializes, it will active sensor hardware. + // In that case, CPU and temperature cost will increase. Therefore, we require developer to invoke 'jsb.device.setMotionEnabled(true)' + // on native platforms since most games will not listen motion event. + keyboard: null, + devicemotion: null // devicemotion: function() { + // jsb.device.setMotionEnabled(false); + // } + +}; +const __handleEventNames = { + touch: ['touchstart', 'touchmove', 'touchend', 'touchcancel'], + mouse: ['mousedown', 'mousemove', 'mouseup', 'mousewheel'], + keyboard: ['keydown', 'keyup', 'keypress'], + devicemotion: ['devicemotion'] +}; // Listener types + +const CAPTURE = 1; +const BUBBLE = 2; +const ATTRIBUTE = 3; +/** + * Check whether a given value is an object or not. + * @param {any} x The value to check. + * @returns {boolean} `true` if the value is an object. + */ + +function isObject(x) { + return x && typeof x === "object"; //eslint-disable-line no-restricted-syntax +} +/** + * EventTarget. + * + * - This is constructor if no arguments. + * - This is a function which returns a CustomEventTarget constructor if there are arguments. + * + * For example: + * + * class A extends EventTarget {} + */ + + +class EventTarget { + constructor() { + this._targetID = ++__targetID; + this._listenerCount = { + touch: 0, + mouse: 0, + keyboard: 0, + devicemotion: 0 + }; + this._listeners = new Map(); + } + + _associateSystemEventListener(eventName) { + var handleEventNames; + + for (var key in __handleEventNames) { + handleEventNames = __handleEventNames[key]; + + if (handleEventNames.indexOf(eventName) > -1) { + if (__enableCallbackMap[key] && __listenerCountMap[key] === 0) { + __enableCallbackMap[key](); + } + + if (this._listenerCount[key] === 0) __listenerMap[key][this._targetID] = this; + ++this._listenerCount[key]; + ++__listenerCountMap[key]; + break; + } + } + } + + _dissociateSystemEventListener(eventName) { + var handleEventNames; + + for (var key in __handleEventNames) { + handleEventNames = __handleEventNames[key]; + + if (handleEventNames.indexOf(eventName) > -1) { + if (this._listenerCount[key] <= 0) delete __listenerMap[key][this._targetID]; + --__listenerCountMap[key]; + + if (__disableCallbackMap[key] && __listenerCountMap[key] === 0) { + __disableCallbackMap[key](); + } + + break; + } + } + } + /** + * Add a given listener to this event target. + * @param {string} eventName The event name to add. + * @param {Function} listener The listener to add. + * @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener. + * @returns {boolean} `true` if the listener was added actually. + */ + + + addEventListener(eventName, listener, options) { + if (!listener) { + return false; + } + + if (typeof listener !== "function" && !isObject(listener)) { + throw new TypeError("'listener' should be a function or an object."); + } + + const listeners = this._listeners; + const optionsIsObj = isObject(options); + const capture = optionsIsObj ? Boolean(options.capture) : Boolean(options); + const listenerType = capture ? CAPTURE : BUBBLE; + const newNode = { + listener, + listenerType, + passive: optionsIsObj && Boolean(options.passive), + once: optionsIsObj && Boolean(options.once), + next: null + }; // Set it as the first node if the first node is null. + + let node = listeners.get(eventName); + + if (node === undefined) { + listeners.set(eventName, newNode); + + this._associateSystemEventListener(eventName); + + return true; + } // Traverse to the tail while checking duplication.. + + + let prev = null; + + while (node) { + if (node.listener === listener && node.listenerType === listenerType) { + // Should ignore duplication. + return false; + } + + prev = node; + node = node.next; + } // Add it. + + + prev.next = newNode; + + this._associateSystemEventListener(eventName); + + return true; + } + /** + * Remove a given listener from this event target. + * @param {string} eventName The event name to remove. + * @param {Function} listener The listener to remove. + * @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener. + * @returns {boolean} `true` if the listener was removed actually. + */ + + + removeEventListener(eventName, listener, options) { + if (!listener) { + return false; + } + + const listeners = this._listeners; + const capture = isObject(options) ? Boolean(options.capture) : Boolean(options); + const listenerType = capture ? CAPTURE : BUBBLE; + let prev = null; + let node = listeners.get(eventName); + + while (node) { + if (node.listener === listener && node.listenerType === listenerType) { + if (prev) { + prev.next = node.next; + } else if (node.next) { + listeners.set(eventName, node.next); + } else { + listeners.delete(eventName); + } + + this._dissociateSystemEventListener(eventName); + + return true; + } + + prev = node; + node = node.next; + } + + return false; + } + /** + * Dispatch a given event. + * @param {Event|{type:string}} event The event to dispatch. + * @returns {boolean} `false` if canceled. + */ + + + dispatchEvent(event) { + if (!event || typeof event.type !== "string") { + throw new TypeError("\"event.type\" should be a string."); + } + + const eventName = event.type; + var onFunc = this['on' + eventName]; + + if (onFunc && typeof onFunc === 'function') { + event._target = event._currentTarget = this; + onFunc.call(this, event); + event._target = event._currentTarget = null; + event._eventPhase = 0; + event._passiveListener = null; + if (event.defaultPrevented) return false; + } // If listeners aren't registered, terminate. + + + const listeners = this._listeners; + let node = listeners.get(eventName); + + if (!node) { + return true; + } + + event._target = event._currentTarget = this; // This doesn't process capturing phase and bubbling phase. + // This isn't participating in a tree. + + let prev = null; + + while (node) { + // Remove this listener if it's once + if (node.once) { + if (prev) { + prev.next = node.next; + } else if (node.next) { + listeners.set(eventName, node.next); + } else { + listeners.delete(eventName); + } + } else { + prev = node; + } // Call this listener + + + event._passiveListener = node.passive ? node.listener : null; + + if (typeof node.listener === "function") { + node.listener.call(this, event); + } // Break if `event.stopImmediatePropagation` was called. + + + if (event._stopped) { + break; + } + + node = node.next; + } + + event._target = event._currentTarget = null; + event._eventPhase = 0; + event._passiveListener = null; + return !event.defaultPrevented; + } + +} + +module.exports = EventTarget; + +},{}],12:[function(require,module,exports){ +"use strict"; + +const EventTarget = require('./EventTarget'); + +class FileReader extends EventTarget { + construct() { + this.result = null; + } // Aborts the read operation. Upon return, the readyState will be DONE. + + + abort() {} // Starts reading the contents of the specified Blob, once finished, the result attribute contains an ArrayBuffer representing the file's data. + + + readAsArrayBuffer() {} // Starts reading the contents of the specified Blob, once finished, the result attribute contains a data: URL representing the file's data. + + + readAsDataURL(blob) { + this.result = 'data:image/png;base64,' + window.btoa(blob); + var event = new Event('load'); + this.dispatchEvent(event); + } // Starts reading the contents of the specified Blob, once finished, the result attribute contains the contents of the file as a text string. + + + readAsText() {} + +} + +module.exports = FileReader; + +},{"./EventTarget":11}],13:[function(require,module,exports){ +"use strict"; + +class FontFace { + constructor(family, source, descriptors) { + this.family = family; + this.source = source; + this.descriptors = descriptors; + this._status = 'unloaded'; + this._loaded = new Promise((resolve, reject) => { + this._resolveCB = resolve; + this._rejectCB = reject; + }); + } + + load() {// class FontFaceSet, add(fontFace) have done the load work + } + + get status() { + return this._status; + } + + get loaded() { + return this._loaded; + } + +} + +module.exports = FontFace; + +},{}],14:[function(require,module,exports){ +"use strict"; + +const EventTarget = require('./EventTarget'); + +const Event = require('./Event'); + +class FontFaceSet extends EventTarget { + constructor() { + super(); + this._status = 'loading'; + } + + get status() { + return this._status; + } + + set onloading(listener) { + this.addEventListener('loading', listener); + } + + set onloadingdone(listener) { + this.addEventListener('loadingdone', listener); + } + + set onloadingerror(listener) { + this.addEventListener('loadingerror', listener); + } + + add(fontFace) { + this._status = fontFace._status = 'loading'; + this.dispatchEvent(new Event('loading')); // Call native binding method to set the ttf font to native platform. + + let family = jsb.loadFont(fontFace.family, fontFace.source); + setTimeout(() => { + if (family) { + fontFace._status = this._status = 'loaded'; + + fontFace._resolveCB(); + + this.dispatchEvent(new Event('loadingdone')); + } else { + fontFace._status = this._status = 'error'; + + fontFace._rejectCB(); + + this.dispatchEvent(new Event('loadingerror')); + } + }, 0); + } + + clear() {} + + delete() {} + + load() {} + + ready() {} + +} + +module.exports = FontFaceSet; + +},{"./Event":10,"./EventTarget":11}],15:[function(require,module,exports){ +"use strict"; + +const HTMLElement = require('./HTMLElement'); + +const ImageData = require('./ImageData'); + +const DOMRect = require('./DOMRect'); + +const CanvasRenderingContext2D = require('./CanvasRenderingContext2D'); + +let clamp = function (value) { + value = Math.round(value); + return value < 0 ? 0 : value < 255 ? value : 255; +}; + +class CanvasGradient { + constructor() { + console.log("==> CanvasGradient constructor"); + } + + addColorStop(offset, color) { + console.log("==> CanvasGradient addColorStop"); + } + +} + +class TextMetrics { + constructor(width) { + this._width = width; + } + + get width() { + return this._width; + } + +} + +class HTMLCanvasElement extends HTMLElement { + constructor(width, height) { + super('canvas'); + this.id = 'glcanvas'; + this.type = 'canvas'; + this.top = 0; + this.left = 0; + this._width = width ? Math.ceil(width) : 0; + this._height = height ? Math.ceil(height) : 0; + this._context2D = null; + this._data = null; + } //REFINE: implement opts. + + + getContext(name, opts) { + var self = this; + + if (name === '2d') { + if (!this._context2D) { + this._context2D = new CanvasRenderingContext2D(this._width, this._height); + this._data = new ImageData(this._width, this._height); + this._context2D._canvas = this; + + this._context2D._setCanvasBufferUpdatedCallback(function (data) { + // FIXME: Canvas's data will take 2x memory size, one in C++, another is obtained by Uint8Array here. + self._data = new ImageData(data, self._width, self._height); + }); + } + + return this._context2D; + } + + return null; + } + + set width(width) { + width = Math.ceil(width); + + if (this._width !== width) { + this._width = width; + + if (this._context2D) { + this._context2D.width = width; + } + } + } + + get width() { + return this._width; + } + + set height(height) { + height = Math.ceil(height); + + if (this._height !== height) { + this._height = height; + + if (this._context2D) { + this._context2D.height = height; + } + } + } + + get height() { + return this._height; + } + + get clientWidth() { + return window.innerWidth; + } + + get clientHeight() { + return window.innerHeight; + } + + get data() { + if (this._data) { + return this._data.data; + } + + return null; + } + + getBoundingClientRect() { + return new DOMRect(0, 0, window.innerWidth, window.innerHeight); + } + + requestPointerLock() { + jsb.setCursorEnabled(false); + } + +} + +module.exports = HTMLCanvasElement; + +},{"./CanvasRenderingContext2D":6,"./DOMRect":7,"./HTMLElement":16,"./ImageData":22}],16:[function(require,module,exports){ +"use strict"; + +const Element = require('./Element'); + +const { + noop +} = require('./util'); + +class HTMLElement extends Element { + constructor(tagName = '') { + super(); + this.tagName = tagName.toUpperCase(); + this.className = ''; + this.children = []; + this.style = { + width: `${window.innerWidth}px`, + height: `${window.innerHeight}px` + }; + this.innerHTML = ''; + this.parentElement = window.__canvas; + } + + setAttribute(name, value) { + this[name] = value; + } + + getAttribute(name) { + return this[name]; + } + + focus() {} + +} + +module.exports = HTMLElement; + +},{"./Element":9,"./util":33}],17:[function(require,module,exports){ +"use strict"; + +const HTMLElement = require('./HTMLElement'); + +const Event = require('./Event'); + +class HTMLImageElement extends HTMLElement { + constructor(width, height, isCalledFromImage) { + if (!isCalledFromImage) { + throw new TypeError("Illegal constructor, use 'new Image(w, h); instead!'"); + } + + super('img'); + this.width = width ? width : 0; + this.height = height ? height : 0; + this._data = null; + this._src = null; + this.complete = false; + this.crossOrigin = null; + } + + destroy() { + if (this._data) { + jsb.destroyImage(this._data); + this._data = null; + } + + this._src = null; + } + + set src(src) { + this._src = src; + if (src === '') return; + jsb.loadImage(src, info => { + if (!info) { + this._data = null; + var event = new Event('error'); + this.dispatchEvent(event); + return; + } + + this.width = this.naturalWidth = info.width; + this.height = this.naturalHeight = info.height; + this._data = info.data; + this.complete = true; + var event = new Event('load'); + this.dispatchEvent(event); + }); + } + + get src() { + return this._src; + } + + get clientWidth() { + return this.width; + } + + get clientHeight() { + return this.height; + } + + getBoundingClientRect() { + return new DOMRect(0, 0, this.width, this.height); + } + +} + +module.exports = HTMLImageElement; + +},{"./Event":10,"./HTMLElement":16}],18:[function(require,module,exports){ +"use strict"; + +const HTMLElement = require('./HTMLElement'); + +const MediaError = require('./MediaError'); + +const HAVE_NOTHING = 0; +const HAVE_METADATA = 1; +const HAVE_CURRENT_DATA = 2; +const HAVE_FUTURE_DATA = 3; +const HAVE_ENOUGH_DATA = 4; + +class HTMLMediaElement extends HTMLElement { + constructor(type) { + super(type); + this._volume = 1.0; + this._duration = 0; + this._isEnded = false; + this._isMute = false; + this._readyState = HAVE_NOTHING; + this._error = new MediaError(); + } + + addTextTrack() {} + + captureStream() {} + + fastSeek() {} + + load() {} + + pause() {} + + play() {} + + canPlayType(mediaType) { + return ''; + } + + set volume(volume) { + this._volume = volume; + } + + get volume() { + return this._volume; + } + + get duration() { + return this._duration; + } + + get ended() { + return this._isEnded; + } + + get muted() { + return this._isMute; + } + + get readyState() { + return this._readyState; + } + + get error() { + return this._error; + } + + get currentTime() { + return 0; + } + +} + +module.exports = HTMLMediaElement; + +},{"./HTMLElement":16,"./MediaError":24}],19:[function(require,module,exports){ +"use strict"; + +const HTMLElement = require('./HTMLElement'); + +const Event = require('./Event'); + +const _importmaps = []; + +class HTMLScriptElement extends HTMLElement { + constructor(width, height) { + super('script'); + } + + set type(type) { + if (type === "systemjs-importmap") { + if (_importmaps.indexOf(this) === -1) { + _importmaps.push(this); + } + } + } + + set src(url) { + setTimeout(() => { + require(url); + + this.dispatchEvent(new Event('load')); + }, 0); + } + +} + +HTMLScriptElement._getAllScriptElementsSystemJSImportType = function () { + return _importmaps; +}; + +module.exports = HTMLScriptElement; + +},{"./Event":10,"./HTMLElement":16}],20:[function(require,module,exports){ +"use strict"; + +const HTMLMediaElement = require('./HTMLMediaElement'); + +class HTMLVideoElement extends HTMLMediaElement { + constructor() { + super('video'); + } + + canPlayType(type) { + if (type === 'video/mp4') return true; + return false; + } + +} + +module.exports = HTMLVideoElement; + +},{"./HTMLMediaElement":18}],21:[function(require,module,exports){ +"use strict"; + +let HTMLImageElement = require('./HTMLImageElement'); + +class Image extends HTMLImageElement { + constructor(width, height) { + super(width, height, true); + } + +} + +module.exports = Image; + +},{"./HTMLImageElement":17}],22:[function(require,module,exports){ +"use strict"; + +class ImageData { + // var imageData = new ImageData(array, width, height); + // var imageData = new ImageData(width, height); + constructor(array, width, height) { + if (typeof array === 'number' && typeof width == 'number') { + height = width; + width = array; + array = null; + } + + if (array === null) { + this._data = new Uint8ClampedArray(width * height * 4); + } else { + this._data = array; + } + + this._width = width; + this._height = height; + } + + get data() { + return this._data; + } + + get width() { + return this._width; + } + + get height() { + return this._height; + } + +} + +module.exports = ImageData; + +},{}],23:[function(require,module,exports){ +"use strict"; + +const Event = require('./Event'); + +const __numberShiftMap = { + '48': ')', + // 0 + '49': '!', + // 1 + '50': '@', + // 2 + '51': '#', + // 3 + '52': '$', + // 4 + '53': '%', + // 5 + '54': '^', + // 6 + '55': '&', + // 7 + '56': '*', + // 8 + '57': '(' // 9 + +}; +var __capsLockActive = false; + +class KeyboardEvent extends Event { + constructor(type, KeyboardEventInit) { + super(type); + + if (typeof KeyboardEventInit === 'object') { + this._altKeyActive = KeyboardEventInit.altKey ? KeyboardEventInit.altKey : false; + this._ctrlKeyActive = KeyboardEventInit.ctrlKey ? KeyboardEventInit.ctrlKey : false; + this._metaKeyActive = KeyboardEventInit.metaKey ? KeyboardEventInit.metaKey : false; + this._shiftKeyActive = KeyboardEventInit.shiftKey ? KeyboardEventInit.shiftKey : false; + this._keyCode = KeyboardEventInit.keyCode ? KeyboardEventInit.keyCode : -1; + this._repeat = KeyboardEventInit.repeat ? KeyboardEventInit.repeat : false; + } else { + this._altKeyActive = false; + this._ctrlKeyActive = false; + this._metaKeyActive = false; + this._shiftKeyActive = false; + this._keyCode = -1; + this._repeat = false; + } + + var keyCode = this._keyCode; + + if (keyCode >= 48 && keyCode <= 57) { + // 0 ~ 9 + var number = keyCode - 48; + this._code = 'Digit' + number; + this._key = this._shiftKeyActive ? __numberShiftMap[keyCode] : '' + number; + } else if (keyCode >= 10048 && keyCode <= 10057) { + // Numberpad 0 ~ 9 + // reset to web keyCode since it's a hack in C++ for distinguish numbers in Numberpad. + keyCode = this._keyCode = keyCode - 10000; + var number = keyCode - 48; + this._code = 'Numpad' + number; + this._key = '' + number; + } else if (keyCode >= 65 && keyCode <= 90) { + // A ~ Z + var charCode = String.fromCharCode(keyCode); + this._code = 'Key' + charCode; + this._key = this._shiftKeyActive ^ __capsLockActive ? charCode : charCode.toLowerCase(); + } else if (keyCode >= 97 && keyCode <= 122) { + // a ~ z + var charCode = String.fromCharCode(keyCode); + this._keyCode = keyCode - (97 - 65); // always return uppercase keycode for backward-compatibility + + this._code = 'Key' + charCode; + this._key = this._shiftKeyActive ^ __capsLockActive ? charCode.toUpperCase() : charCode; + } else if (keyCode >= 112 && keyCode <= 123) { + // F1 ~ F12 + this._code = this._key = 'F' + (keyCode - 111); + } else if (keyCode === 27) { + this._code = this._key = 'Escape'; + } else if (keyCode === 189) { + this._code = 'Minus'; + this._key = this._shiftKeyActive ? '_' : '-'; + } else if (keyCode === 187) { + this._code = 'Equal'; + this._key = this._shiftKeyActive ? '+' : '='; + } else if (keyCode === 220) { + this._code = 'Backslash'; + this._key = this._shiftKeyActive ? '|' : '\\'; + } else if (keyCode === 192) { + this._code = 'Backquote'; + this._key = this._shiftKeyActive ? '~' : '`'; + } else if (keyCode === 8) { + this._code = this._key = 'Backspace'; + } else if (keyCode === 13) { + this._code = this._key = 'Enter'; + } else if (keyCode === 219) { + this._code = 'BracketLeft'; + this._key = this._shiftKeyActive ? '{' : '['; + } else if (keyCode === 221) { + this._code = 'BracketRight'; + this._key = this._shiftKeyActive ? '}' : ']'; + } else if (keyCode === 186) { + this._code = 'Semicolon'; + this._key = this._shiftKeyActive ? ':' : ';'; + } else if (keyCode === 222) { + this._code = 'Quote'; + this._key = this._shiftKeyActive ? '"' : "'"; + } else if (keyCode === 9) { + this._code = this._key = 'Tab'; + } else if (keyCode === 17) { + this._code = 'ControlLeft'; + this._key = 'Control'; + } else if (keyCode === 20017) { + this._keyCode = 17; // Reset to the real value. + + this._code = 'ControlRight'; + this._key = 'Control'; + } else if (keyCode === 16) { + this._code = 'ShiftLeft'; + this._key = 'Shift'; + } else if (keyCode === 20016) { + this._keyCode = 16; // Reset to the real value. + + this._code = 'ShiftRight'; + this._key = 'Shift'; + } else if (keyCode === 18) { + this._code = 'AltLeft'; + this._key = 'Alt'; + } else if (keyCode === 20018) { + this._keyCode = 18; // Reset to the real value. + + this._code = 'AltRight'; + this._key = 'Alt'; + } else if (keyCode === 91) { + this._code = 'MetaLeft'; + this._key = 'Meta'; + } else if (keyCode === 93) { + this._code = 'MetaRight'; + this._key = 'Meta'; + } else if (keyCode === 37) { + this._code = this._key = 'ArrowLeft'; + } else if (keyCode === 38) { + this._code = this._key = 'ArrowUp'; + } else if (keyCode === 39) { + this._code = this._key = 'ArrowRight'; + } else if (keyCode === 40) { + this._code = this._key = 'ArrowDown'; + } else if (keyCode === 20093) { + this._keyCode = 93; // Bug of brower since its keycode is the same as MetaRight. + + this._code = this._key = 'ContextMenu'; + } else if (keyCode === 20013) { + this._keyCode = 13; + this._code = 'NumpadEnter'; + this._key = 'Enter'; + } else if (keyCode === 107) { + this._code = 'NumpadAdd'; + this._key = '+'; + } else if (keyCode === 109) { + this._code = 'NumpadSubtract'; + this._key = '-'; + } else if (keyCode === 106) { + this._code = 'NumpadMultiply'; + this._key = '*'; + } else if (keyCode === 111) { + this._code = 'NumpadDivide'; + this._key = '/'; + } else if (keyCode === 12) { + this._code = 'NumLock'; + this._key = 'Clear'; + } else if (keyCode === 124) { + this._code = this._key = 'F13'; + } else if (keyCode === 36) { + this._code = this._key = 'Home'; + } else if (keyCode === 33) { + this._code = this._key = 'PageUp'; + } else if (keyCode === 34) { + this._code = this._key = 'PageDown'; + } else if (keyCode === 35) { + this._code = this._key = 'End'; + } else if (keyCode === 188) { + this._code = 'Comma'; + this._key = this._shiftKeyActive ? '<' : ','; + } else if (keyCode === 190) { + this._code = 'Period'; + this._key = this._shiftKeyActive ? '>' : '.'; + } else if (keyCode === 191) { + this._code = 'Slash'; + this._key = this._shiftKeyActive ? '?' : '/'; + } else if (keyCode === 32) { + this._code = 'Space'; + this._key = ' '; + } else if (keyCode === 46) { + this._code = this._key = 'Delete'; + } else if (keyCode === 110) { + this._code = 'NumpadDecimal'; + this._key = '.'; + } else if (keyCode === 20) { + this._code = this._key = 'CapsLock'; + + if (type === 'keyup') { + __capsLockActive = !__capsLockActive; + } + } else { + console.log("Unknown keyCode: " + this._keyCode); + } + } // Returns a Boolean indicating if the modifier key, like Alt, Shift, Ctrl, or Meta, was pressed when the event was created. + + + getModifierState() { + return false; + } // Returns a Boolean that is true if the Alt ( Option or ⌥ on OS X) key was active when the key event was generated. + + + get altKey() { + return this._altKeyActive; + } // Returns a DOMString with the code value of the key represented by the event. + + + get code() { + return this._code; + } // Returns a Boolean that is true if the Ctrl key was active when the key event was generated. + + + get ctrlKey() { + return this._ctrlKeyActive; + } // Returns a Boolean that is true if the event is fired between after compositionstart and before compositionend. + + + get isComposing() { + return false; + } // Returns a DOMString representing the key value of the key represented by the event. + + + get key() { + return this._key; + } + + get keyCode() { + return this._keyCode; + } // Returns a Number representing the location of the key on the keyboard or other input device. + + + get location() { + return 0; + } // Returns a Boolean that is true if the Meta key (on Mac keyboards, the ⌘ Command key; on Windows keyboards, the Windows key (⊞)) was active when the key event was generated. + + + get metaKey() { + return this._metaKeyActive; + } // Returns a Boolean that is true if the key is being held down such that it is automatically repeating. + + + get repeat() { + return this._repeat; + } // Returns a Boolean that is true if the Shift key was active when the key event was generated. + + + get shiftKey() { + return this._shiftKeyActive; + } + +} + +module.exports = KeyboardEvent; + +},{"./Event":10}],24:[function(require,module,exports){ +"use strict"; + +const MEDIA_ERR_ABORTED = 1; +const MEDIA_ERR_NETWORK = 2; +const MEDIA_ERR_DECODE = 3; +const MEDIA_ERR_SRC_NOT_SUPPORTED = 4; + +class MediaError { + constructor() {} + + get code() { + return MEDIA_ERR_ABORTED; + } + + get message() { + return ""; + } + +} + +module.exports = MediaError; + +},{}],25:[function(require,module,exports){ +"use strict"; + +const Event = require('./Event'); + +class MouseEvent extends Event { + constructor(type, initArgs) { + super(type); + this._button = initArgs.button; + this._which = initArgs.which; + this._wheelDelta = initArgs.wheelDelta; + this._clientX = initArgs.clientX; + this._clientY = initArgs.clientY; + this._screenX = initArgs.screenX; + this._screenY = initArgs.screenY; + this._pageX = initArgs.pageX; + this._pageY = initArgs.pageY; + } + + get button() { + return this._button; + } + + get which() { + return this._which; + } + + get wheelDelta() { + return this._wheelDelta; + } + + get clientX() { + return this._clientX; + } + + get clientY() { + return this._clientY; + } + + get screenX() { + return this._screenX; + } + + get screenY() { + return this._screenY; + } + + get pageX() { + return this._pageX; + } + + get pageY() { + return this._pageY; + } + +} + +module.exports = MouseEvent; + +},{"./Event":10}],26:[function(require,module,exports){ +"use strict"; + +const EventTarget = require('./EventTarget'); + +class Node extends EventTarget { + constructor() { + super(); + this.childNodes = []; + this.parentNode = window.__canvas; + } + + appendChild(node) { + if (node instanceof Node) { + this.childNodes.push(node); + } else { + throw new TypeError('Failed to executed \'appendChild\' on \'Node\': parameter 1 is not of type \'Node\'.'); + } + } + + insertBefore(newNode, referenceNode) { + //REFINE: + return newNode; + } + + replaceChild(newChild, oldChild) { + //REFINE: + return oldChild; + } + + cloneNode() { + const copyNode = Object.create(this); + Object.assign(copyNode, this); + return copyNode; + } + + removeChild(node) { + const index = this.childNodes.findIndex(child => child === node); + + if (index > -1) { + return this.childNodes.splice(index, 1); + } + + return null; + } + + contains(node) { + return this.childNodes.indexOf(node) > -1; + } + +} + +module.exports = Node; + +},{"./EventTarget":11}],27:[function(require,module,exports){ +"use strict"; + +const Event = require('./Event'); + +class TouchEvent extends Event { + constructor(type, touchEventInit) { + super(type); + this.touches = []; + this.targetTouches = []; + this.changedTouches = []; + } + +} + +module.exports = TouchEvent; + +},{"./Event":10}],28:[function(require,module,exports){ +"use strict"; + +const HTMLElement = require('./HTMLElement'); + +const Image = require('./Image'); + +const HTMLCanvasElement = require('./HTMLCanvasElement'); + +const HTMLVideoElement = require('./HTMLVideoElement'); + +const HTMLScriptElement = require('./HTMLScriptElement'); + +const Node = require('./Node'); + +const FontFaceSet = require('./FontFaceSet'); + +class Document extends Node { + constructor() { + super(); + this.readyState = 'complete'; + this.visibilityState = 'visible'; + this.documentElement = window; + this.hidden = false; + this.style = {}; + this.location = require('./location'); + this.head = new HTMLElement('head'); + this.body = new HTMLElement('body'); + this.fonts = new FontFaceSet(); + this.scripts = []; + } + + createElementNS(namespaceURI, qualifiedName, options) { + return this.createElement(qualifiedName); + } + + createElement(tagName) { + if (tagName === 'canvas') { + return new HTMLCanvasElement(1, 1); + } else if (tagName === 'img') { + return new Image(); + } else if (tagName === 'video') { + return new HTMLVideoElement(); + } else if (tagName === 'script') { + return new HTMLScriptElement(); + } + + return new HTMLElement(tagName); + } + + getElementById(id) { + if (id === window.__canvas.id || id === 'canvas') { + return window.__canvas; + } + + return new HTMLElement(id); + } + + getElementsByTagName(tagName) { + if (tagName === 'head') { + return [document.head]; + } else if (tagName === 'body') { + return [document.body]; + } else if (tagName === 'canvas') { + return [window.__canvas]; + } + + return [new HTMLElement(tagName)]; + } + + getElementsByName(tagName) { + if (tagName === 'head') { + return [document.head]; + } else if (tagName === 'body') { + return [document.body]; + } else if (tagName === 'canvas') { + return [window.__canvas]; + } + + return [new HTMLElement(tagName)]; + } + + querySelector(query) { + if (query === 'head') { + return document.head; + } else if (query === 'body') { + return document.body; + } else if (query === 'canvas') { + return window.__canvas; + } else if (query === `#${window.__canvas.id}`) { + return window.__canvas; + } + + return new HTMLElement(query); + } + + querySelectorAll(query) { + if (query === 'head') { + return [document.head]; + } else if (query === 'body') { + return [document.body]; + } else if (query === 'canvas') { + return [window.__canvas]; + } else if (query.startsWith('script[type="systemjs-importmap"]')) { + return HTMLScriptElement._getAllScriptElementsSystemJSImportType(); + } + + return [new HTMLElement(query)]; + } + + createTextNode() { + return new HTMLElement('text'); + } + + elementFromPoint() { + return window.canvas; + } + + createEvent(type) { + if (window[type]) { + return new window[type](); + } + + return null; + } + + exitPointerLock() { + jsb.setCursorEnabled(true); + } + +} + +let document = new Document(); +module.exports = document; + +},{"./FontFaceSet":14,"./HTMLCanvasElement":15,"./HTMLElement":16,"./HTMLScriptElement":19,"./HTMLVideoElement":20,"./Image":21,"./Node":26,"./location":31}],29:[function(require,module,exports){ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Headers = Headers; +exports.Request = Request; +exports.Response = Response; +exports.fetch = fetch; +exports.DOMException = void 0; +var self = window; +var support = { + searchParams: 'URLSearchParams' in self, + iterable: 'Symbol' in self && 'iterator' in Symbol, + blob: 'FileReader' in self && 'Blob' in self && function () { + try { + new Blob(); + return true; + } catch (e) { + return false; + } + }(), + formData: 'FormData' in self, + arrayBuffer: 'ArrayBuffer' in self +}; + +function isDataView(obj) { + return obj && DataView.prototype.isPrototypeOf(obj); +} + +if (support.arrayBuffer) { + var viewClasses = ['[object Int8Array]', '[object Uint8Array]', '[object Uint8ClampedArray]', '[object Int16Array]', '[object Uint16Array]', '[object Int32Array]', '[object Uint32Array]', '[object Float32Array]', '[object Float64Array]']; + + var isArrayBufferView = ArrayBuffer.isView || function (obj) { + return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1; + }; +} + +function normalizeName(name) { + if (typeof name !== 'string') { + name = String(name); + } + + if (/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(name) || name === '') { + throw new TypeError('Invalid character in header field name'); + } + + return name.toLowerCase(); +} + +function normalizeValue(value) { + if (typeof value !== 'string') { + value = String(value); + } + + return value; +} // Build a destructive iterator for the value list + + +function iteratorFor(items) { + var iterator = { + next: function () { + var value = items.shift(); + return { + done: value === undefined, + value: value + }; + } + }; + + if (support.iterable) { + iterator[Symbol.iterator] = function () { + return iterator; + }; + } + + return iterator; +} + +function Headers(headers) { + this.map = {}; + + if (headers instanceof Headers) { + headers.forEach(function (value, name) { + this.append(name, value); + }, this); + } else if (Array.isArray(headers)) { + headers.forEach(function (header) { + this.append(header[0], header[1]); + }, this); + } else if (headers) { + Object.getOwnPropertyNames(headers).forEach(function (name) { + this.append(name, headers[name]); + }, this); + } +} + +Headers.prototype.append = function (name, value) { + name = normalizeName(name); + value = normalizeValue(value); + var oldValue = this.map[name]; + this.map[name] = oldValue ? oldValue + ', ' + value : value; +}; + +Headers.prototype['delete'] = function (name) { + delete this.map[normalizeName(name)]; +}; + +Headers.prototype.get = function (name) { + name = normalizeName(name); + return this.has(name) ? this.map[name] : null; +}; + +Headers.prototype.has = function (name) { + return this.map.hasOwnProperty(normalizeName(name)); +}; + +Headers.prototype.set = function (name, value) { + this.map[normalizeName(name)] = normalizeValue(value); +}; + +Headers.prototype.forEach = function (callback, thisArg) { + for (var name in this.map) { + if (this.map.hasOwnProperty(name)) { + callback.call(thisArg, this.map[name], name, this); + } + } +}; + +Headers.prototype.keys = function () { + var items = []; + this.forEach(function (value, name) { + items.push(name); + }); + return iteratorFor(items); +}; + +Headers.prototype.values = function () { + var items = []; + this.forEach(function (value) { + items.push(value); + }); + return iteratorFor(items); +}; + +Headers.prototype.entries = function () { + var items = []; + this.forEach(function (value, name) { + items.push([name, value]); + }); + return iteratorFor(items); +}; + +if (support.iterable) { + Headers.prototype[Symbol.iterator] = Headers.prototype.entries; +} + +function consumed(body) { + if (body.bodyUsed) { + return Promise.reject(new TypeError('Already read')); + } + + body.bodyUsed = true; +} + +function fileReaderReady(reader) { + return new Promise(function (resolve, reject) { + reader.onload = function () { + resolve(reader.result); + }; + + reader.onerror = function () { + reject(reader.error); + }; + }); +} + +function readBlobAsArrayBuffer(blob) { + var reader = new FileReader(); + var promise = fileReaderReady(reader); + reader.readAsArrayBuffer(blob); + return promise; +} + +function readBlobAsText(blob) { + var reader = new FileReader(); + var promise = fileReaderReady(reader); + reader.readAsText(blob); + return promise; +} + +function readArrayBufferAsText(buf) { + var view = new Uint8Array(buf); + var chars = new Array(view.length); + + for (var i = 0; i < view.length; i++) { + chars[i] = String.fromCharCode(view[i]); + } + + return chars.join(''); +} + +function bufferClone(buf) { + if (buf.slice) { + return buf.slice(0); + } else { + var view = new Uint8Array(buf.byteLength); + view.set(new Uint8Array(buf)); + return view.buffer; + } +} + +function Body() { + this.bodyUsed = false; + + this._initBody = function (body) { + this._bodyInit = body; + + if (!body) { + this._bodyText = ''; + } else if (typeof body === 'string') { + this._bodyText = body; + } else if (support.blob && Blob.prototype.isPrototypeOf(body)) { + this._bodyBlob = body; + } else if (support.formData && FormData.prototype.isPrototypeOf(body)) { + this._bodyFormData = body; + } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { + this._bodyText = body.toString(); + } else if (support.arrayBuffer && support.blob && isDataView(body)) { + this._bodyArrayBuffer = bufferClone(body.buffer); // IE 10-11 can't handle a DataView body. + + this._bodyInit = new Blob([this._bodyArrayBuffer]); + } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) { + this._bodyArrayBuffer = bufferClone(body); + } else { + this._bodyText = body = Object.prototype.toString.call(body); + } + + if (!this.headers.get('content-type')) { + if (typeof body === 'string') { + this.headers.set('content-type', 'text/plain;charset=UTF-8'); + } else if (this._bodyBlob && this._bodyBlob.type) { + this.headers.set('content-type', this._bodyBlob.type); + } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { + this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); + } + } + }; + + if (support.blob) { + this.blob = function () { + var rejected = consumed(this); + + if (rejected) { + return rejected; + } + + if (this._bodyBlob) { + return Promise.resolve(this._bodyBlob); + } else if (this._bodyArrayBuffer) { + return Promise.resolve(new Blob([this._bodyArrayBuffer])); + } else if (this._bodyFormData) { + throw new Error('could not read FormData body as blob'); + } else { + return Promise.resolve(new Blob([this._bodyText])); + } + }; + + this.arrayBuffer = function () { + if (this._bodyArrayBuffer) { + return consumed(this) || Promise.resolve(this._bodyArrayBuffer); + } else { + return this.blob().then(readBlobAsArrayBuffer); + } + }; + } + + this.text = function () { + var rejected = consumed(this); + + if (rejected) { + return rejected; + } + + if (this._bodyBlob) { + return readBlobAsText(this._bodyBlob); + } else if (this._bodyArrayBuffer) { + return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer)); + } else if (this._bodyFormData) { + throw new Error('could not read FormData body as text'); + } else { + return Promise.resolve(this._bodyText); + } + }; + + if (support.formData) { + this.formData = function () { + return this.text().then(decode); + }; + } + + this.json = function () { + return this.text().then(JSON.parse); + }; + + return this; +} // HTTP methods whose capitalization should be normalized + + +var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']; + +function normalizeMethod(method) { + var upcased = method.toUpperCase(); + return methods.indexOf(upcased) > -1 ? upcased : method; +} + +function Request(input, options) { + options = options || {}; + var body = options.body; + + if (input instanceof Request) { + if (input.bodyUsed) { + throw new TypeError('Already read'); + } + + this.url = input.url; + this.credentials = input.credentials; + + if (!options.headers) { + this.headers = new Headers(input.headers); + } + + this.method = input.method; + this.mode = input.mode; + this.signal = input.signal; + + if (!body && input._bodyInit != null) { + body = input._bodyInit; + input.bodyUsed = true; + } + } else { + this.url = String(input); + } + + this.credentials = options.credentials || this.credentials || 'same-origin'; + + if (options.headers || !this.headers) { + this.headers = new Headers(options.headers); + } + + this.method = normalizeMethod(options.method || this.method || 'GET'); + this.mode = options.mode || this.mode || null; + this.signal = options.signal || this.signal; + this.referrer = null; + + if ((this.method === 'GET' || this.method === 'HEAD') && body) { + throw new TypeError('Body not allowed for GET or HEAD requests'); + } + + this._initBody(body); +} + +Request.prototype.clone = function () { + return new Request(this, { + body: this._bodyInit + }); +}; + +function decode(body) { + var form = new FormData(); + body.trim().split('&').forEach(function (bytes) { + if (bytes) { + var split = bytes.split('='); + var name = split.shift().replace(/\+/g, ' '); + var value = split.join('=').replace(/\+/g, ' '); + form.append(decodeURIComponent(name), decodeURIComponent(value)); + } + }); + return form; +} + +function parseHeaders(rawHeaders) { + var headers = new Headers(); // Replace instances of \r\n and \n followed by at least one space or horizontal tab with a space + // https://tools.ietf.org/html/rfc7230#section-3.2 + + var preProcessedHeaders = rawHeaders.replace(/\r?\n[\t ]+/g, ' '); + preProcessedHeaders.split(/\r?\n/).forEach(function (line) { + var parts = line.split(':'); + var key = parts.shift().trim(); + + if (key) { + var value = parts.join(':').trim(); + headers.append(key, value); + } + }); + return headers; +} + +Body.call(Request.prototype); + +function Response(bodyInit, options) { + if (!options) { + options = {}; + } + + this.type = 'default'; + this.status = options.status === undefined ? 200 : options.status; + this.ok = this.status >= 200 && this.status < 300; + this.statusText = 'statusText' in options ? options.statusText : 'OK'; + this.headers = new Headers(options.headers); + this.url = options.url || ''; + + this._initBody(bodyInit); +} + +Body.call(Response.prototype); + +Response.prototype.clone = function () { + return new Response(this._bodyInit, { + status: this.status, + statusText: this.statusText, + headers: new Headers(this.headers), + url: this.url + }); +}; + +Response.error = function () { + var response = new Response(null, { + status: 0, + statusText: '' + }); + response.type = 'error'; + return response; +}; + +var redirectStatuses = [301, 302, 303, 307, 308]; + +Response.redirect = function (url, status) { + if (redirectStatuses.indexOf(status) === -1) { + throw new RangeError('Invalid status code'); + } + + return new Response(null, { + status: status, + headers: { + location: url + } + }); +}; + +var DOMException = self.DOMException; +exports.DOMException = DOMException; + +try { + new DOMException(); +} catch (err) { + exports.DOMException = DOMException = function (message, name) { + this.message = message; + this.name = name; + var error = Error(message); + this.stack = error.stack; + }; + + DOMException.prototype = Object.create(Error.prototype); + DOMException.prototype.constructor = DOMException; +} + +function fetch(input, init) { + return new Promise(function (resolve, reject) { + var request = new Request(input, init); + + if (request.signal && request.signal.aborted) { + return reject(new DOMException('Aborted', 'AbortError')); + } + + var xhr = new XMLHttpRequest(); + + function abortXhr() { + xhr.abort(); + } + + xhr.onload = function () { + var options = { + status: xhr.status, + statusText: xhr.statusText, + headers: parseHeaders(xhr.getAllResponseHeaders() || '') + }; + options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL'); + var body = 'response' in xhr ? xhr.response : xhr.responseText; + resolve(new Response(body, options)); + }; + + xhr.onerror = function () { + reject(new TypeError('Network request failed')); + }; + + xhr.ontimeout = function () { + reject(new TypeError('Network request failed')); + }; + + xhr.onabort = function () { + reject(new DOMException('Aborted', 'AbortError')); + }; + + xhr.open(request.method, request.url, true); + + if (request.credentials === 'include') { + xhr.withCredentials = true; + } else if (request.credentials === 'omit') { + xhr.withCredentials = false; + } + + if ('responseType' in xhr && support.blob) { + xhr.responseType = 'blob'; + } + + request.headers.forEach(function (value, name) { + xhr.setRequestHeader(name, value); + }); + + if (request.signal) { + request.signal.addEventListener('abort', abortXhr); + + xhr.onreadystatechange = function () { + // DONE (success or failure) + if (xhr.readyState === 4) { + request.signal.removeEventListener('abort', abortXhr); + } + }; + } + + xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit); + }); +} + +fetch.polyfill = true; + +},{}],30:[function(require,module,exports){ +"use strict"; + +require('./window'); + +},{"./window":34}],31:[function(require,module,exports){ +"use strict"; + +const location = { + href: 'game.js', + pathname: 'game.js', + search: '', + hash: '', + + reload() {} + +}; +module.exports = location; + +},{}],32:[function(require,module,exports){ +"use strict"; + +let { + noop +} = require('./util'); + +const navigator = { + platform: __getOS(), + language: __getCurrentLanguage(), + appVersion: '5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1', + userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Mobile/14E8301 NetType/WIFI Language/zh_CN', + onLine: true, + //FIXME: + geolocation: { + getCurrentPosition: noop, + watchPosition: noop, + clearWatch: noop + }, + maxTouchPoints: 10 //FIXME: getting the number from OS. + +}; +module.exports = navigator; + +},{"./util":33}],33:[function(require,module,exports){ +"use strict"; + +function noop() {} + +module.exports = noop; + +},{}],34:[function(require,module,exports){ +"use strict"; + +function inject() { + window.top = window.parent = window; + window.ontouchstart = null; + window.ontouchmove = null; + window.ontouchend = null; + window.ontouchcancel = null; + window.pageXOffset = window.pageYOffset = window.clientTop = window.clientLeft = 0; + window.outerWidth = window.innerWidth; + window.outerHeight = window.innerHeight; + window.clientWidth = window.innerWidth; + window.clientHeight = window.innerHeight; + window.location = require('./location'); + window.document = require('./document'); + window.CanvasRenderingContext2D = require('./CanvasRenderingContext2D'); + window.Element = require('./Element'); + window.HTMLElement = require('./HTMLElement'); + window.HTMLCanvasElement = require('./HTMLCanvasElement'); + window.HTMLImageElement = require('./HTMLImageElement'); + window.HTMLMediaElement = require('./HTMLMediaElement'); + window.HTMLVideoElement = require('./HTMLVideoElement'); + window.HTMLScriptElement = require('./HTMLScriptElement'); + window.__canvas = new HTMLCanvasElement(); + window.__canvas._width = window.innerWidth; + window.__canvas._height = window.innerHeight; + window.navigator = require('./navigator'); + window.Image = require('./Image'); + window.FileReader = require('./FileReader'); + window.FontFace = require('./FontFace'); + window.FontFaceSet = require('./FontFaceSet'); + window.EventTarget = require('./EventTarget'); + window.Event = require('./Event'); + window.TouchEvent = require('./TouchEvent'); + window.MouseEvent = require('./MouseEvent'); + window.KeyboardEvent = require('./KeyboardEvent'); + window.DeviceMotionEvent = require('./DeviceMotionEvent'); // ES6 + + var m_fetch = require('./fetch'); + + window.fetch = m_fetch.fetch; + window.Headers = m_fetch.Headers; + window.Request = m_fetch.Request; + window.Response = m_fetch.Response; // const PORTRAIT = 0; + // const LANDSCAPE_LEFT = -90; + // const PORTRAIT_UPSIDE_DOWN = 180; + // const LANDSCAPE_RIGHT = 90; + + window.orientation = jsb.device.getDeviceOrientation(); // window.devicePixelRatio is readonly + + Object.defineProperty(window, "devicePixelRatio", { + get: function () { + return jsb.device.getDevicePixelRatio ? jsb.device.getDevicePixelRatio() : 1; + }, + set: function (_dpr) { + /* ignore */ + }, + enumerable: true, + configurable: true + }); + window.screen = { + availTop: 0, + availLeft: 0, + availHeight: window.innerWidth, + availWidth: window.innerHeight, + colorDepth: 8, + pixelDepth: 8, + left: 0, + top: 0, + width: window.innerWidth, + height: window.innerHeight, + orientation: { + //FIXME:cjh + type: 'portrait-primary' // portrait-primary, portrait-secondary, landscape-primary, landscape-secondary + + }, + onorientationchange: function (event) {} + }; + + window.addEventListener = function (eventName, listener, options) { + window.__canvas.addEventListener(eventName, listener, options); + }; + + window.removeEventListener = function (eventName, listener, options) { + window.__canvas.removeEventListener(eventName, listener, options); + }; + + window.dispatchEvent = function (event) { + window.__canvas.dispatchEvent(event); + }; + + window.getComputedStyle = function (element) { + return { + position: 'absolute', + left: '0px', + top: '0px', + height: '0px' + }; + }; + + window.resize = function (width, height) { + window.innerWidth = width; + window.innerHeight = height; + window.outerWidth = window.innerWidth; + window.outerHeight = window.innerHeight; + window.__canvas._width = window.innerWidth; + window.__canvas._height = window.innerHeight; + window.screen.availWidth = window.innerWidth; + window.screen.availHeight = window.innerHeight; + window.screen.width = window.innerWidth; + window.screen.height = window.innerHeight; + window.clientWidth = window.innerWidth; + window.clientHeight = window.innerHeight; // emit resize consistent with web behavior + + let resizeEvent = new Event('resize'); + resizeEvent._target = window; + window.dispatchEvent(resizeEvent); + }; + + window.focus = function () {}; + + window.scroll = function () {}; + + window._isInjected = true; +} + +if (!window._isInjected) { + inject(); +} + +window.localStorage = sys.localStorage; + +},{"./CanvasRenderingContext2D":6,"./DeviceMotionEvent":8,"./Element":9,"./Event":10,"./EventTarget":11,"./FileReader":12,"./FontFace":13,"./FontFaceSet":14,"./HTMLCanvasElement":15,"./HTMLElement":16,"./HTMLImageElement":17,"./HTMLMediaElement":18,"./HTMLScriptElement":19,"./HTMLVideoElement":20,"./Image":21,"./KeyboardEvent":23,"./MouseEvent":25,"./TouchEvent":27,"./document":28,"./fetch":29,"./location":31,"./navigator":32}],35:[function(require,module,exports){ +"use strict"; + +(function (jsb) { + if (!jsb || !jsb.AudioEngine) return; + jsb.AudioEngine.AudioState = { + ERROR: -1, + INITIALZING: 0, + PLAYING: 1, + PAUSED: 2, + STOPPED: 3 + }; + jsb.AudioEngine.INVALID_AUDIO_ID = -1; + jsb.AudioEngine.TIME_UNKNOWN = -1; // Adapt to normal runtime based API + + jsb.AudioEngine.play = jsb.AudioEngine.play2d; + + jsb.AudioEngine.setErrorCallback = () => {}; +})(jsb); + +},{}],36:[function(require,module,exports){ +"use strict"; + +const EventTarget = require('./jsb-adapter/EventTarget'); + +const Event = require('./jsb-adapter/Event'); + +var eventTarget = new EventTarget(); +var callbackWrappers = {}; +var callbacks = {}; +var index = 1; + +var callbackWrapper = function (cb) { + if (!cb) return null; + + var func = function (event) { + cb({ + value: event.text + }); + }; + + cb.___index = index++; + callbackWrappers[cb.___index] = func; + return func; +}; + +var getCallbackWrapper = function (cb) { + if (cb && cb.___index) { + var ret = callbackWrappers[cb.___index]; + delete callbackWrappers[cb.___index]; + return ret; + } else return null; +}; + +var removeListener = function (name, cb) { + if (cb) eventTarget.removeEventListener(name, getCallbackWrapper(cb));else { + // remove all listeners of name + var cbs = callbacks[name]; + if (!cbs) return; + + for (var i = 0, len = cbs.length; i < len; ++i) eventTarget.removeEventListener(name, cbs[i]); + + delete callbacks[name]; + } +}; + +var recordCallback = function (name, cb) { + if (!cb || !name || name === '') return; + if (!callbacks[name]) callbacks[name] = []; + callbacks[name].push(cb); +}; + +jsb.inputBox = { + onConfirm: function (cb) { + var newCb = callbackWrapper(cb); + eventTarget.addEventListener('confirm', newCb); + recordCallback('confirm', newCb); + }, + offConfirm: function (cb) { + removeListener('confirm', cb); + }, + onComplete: function (cb) { + var newCb = callbackWrapper(cb); + eventTarget.addEventListener('complete', newCb); + recordCallback('complete', newCb); + }, + offComplete: function (cb) { + removeListener('complete', cb); + }, + onInput: function (cb) { + var newCb = callbackWrapper(cb); + eventTarget.addEventListener('input', newCb); + recordCallback('input', newCb); + }, + offInput: function (cb) { + removeListener('input', cb); + }, + + /** + * @param {string} options.defaultValue + * @param {number} options.maxLength + * @param {bool} options.multiple + * @param {bool} options.confirmHold + * @param {string} options.confirmType + * @param {string} options.inputType + * + * Values of options.confirmType can be [done|next|search|go|send]. + * Values of options.inputType can be [text|email|number|phone|password]. + */ + show: function (options) { + jsb.showInputBox(options); + }, + hide: function () { + jsb.hideInputBox(); + } +}; + +jsb.onTextInput = function (eventName, text) { + var event = new Event(eventName); + event.text = text; + eventTarget.dispatchEvent(event); +}; + +},{"./jsb-adapter/Event":10,"./jsb-adapter/EventTarget":11}],37:[function(require,module,exports){ +"use strict"; + +jsb.__obj_ref_id = 0; + +jsb.registerNativeRef = function (owner, target) { + if (owner && target && owner !== target) { + let targetID = target.__jsb_ref_id; + if (targetID === undefined) targetID = target.__jsb_ref_id = jsb.__obj_ref_id++; + let refs = owner.__nativeRefs; + + if (!refs) { + refs = owner.__nativeRefs = {}; + } + + refs[targetID] = target; + } +}; + +jsb.unregisterNativeRef = function (owner, target) { + if (owner && target && owner !== target) { + let targetID = target.__jsb_ref_id; + if (targetID === undefined) return; + let refs = owner.__nativeRefs; + + if (!refs) { + return; + } + + delete refs[targetID]; + } +}; + +jsb.unregisterAllNativeRefs = function (owner) { + if (!owner) return; + delete owner.__nativeRefs; +}; + +jsb.unregisterChildRefsForNode = function (node, recursive) { + recursive = !!recursive; + let children = node.getChildren(), + i, + l, + child; + + for (i = 0, l = children.length; i < l; ++i) { + child = children[i]; + jsb.unregisterNativeRef(node, child); + + if (recursive) { + jsb.unregisterChildRefsForNode(child, recursive); + } + } +}; + +},{}],38:[function(require,module,exports){ +(function (global,setImmediate){ +"use strict"; + +/* promise.min.js + * A Promise polyfill implementation. + * 2018-11-16 + * + * By taylorhakes, https://github.com/taylorhakes + * License: MIT + * See https://github.com/taylorhakes/promise-polyfill/blob/master/LICENSE + */ + +/*! @source https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.js */ +!function (e, n) { + "object" == typeof exports && "undefined" != typeof module ? n() : "function" == typeof define && define.amd ? define(n) : n(); +}(0, function () { + "use strict"; + + function e(e) { + var n = this.constructor; + return this.then(function (t) { + return n.resolve(e()).then(function () { + return t; + }); + }, function (t) { + return n.resolve(e()).then(function () { + return n.reject(t); + }); + }); + } + + function n() {} + + function t(e) { + if (!(this instanceof t)) throw new TypeError("Promises must be constructed via new"); + if ("function" != typeof e) throw new TypeError("not a function"); + this._state = 0, this._handled = !1, this._value = undefined, this._deferreds = [], u(e, this); + } + + function o(e, n) { + for (; 3 === e._state;) e = e._value; + + 0 !== e._state ? (e._handled = !0, t._immediateFn(function () { + var t = 1 === e._state ? n.onFulfilled : n.onRejected; + + if (null !== t) { + var o; + + try { + o = t(e._value); + } catch (f) { + return void i(n.promise, f); + } + + r(n.promise, o); + } else (1 === e._state ? r : i)(n.promise, e._value); + })) : e._deferreds.push(n); + } + + function r(e, n) { + try { + if (n === e) throw new TypeError("A promise cannot be resolved with itself."); + + if (n && ("object" == typeof n || "function" == typeof n)) { + var o = n.then; + if (n instanceof t) return e._state = 3, e._value = n, void f(e); + if ("function" == typeof o) return void u(function (e, n) { + return function () { + e.apply(n, arguments); + }; + }(o, n), e); + } + + e._state = 1, e._value = n, f(e); + } catch (r) { + i(e, r); + } + } + + function i(e, n) { + e._state = 2, e._value = n, f(e); + } + + function f(e) { + 2 === e._state && 0 === e._deferreds.length && t._immediateFn(function () { + e._handled || t._unhandledRejectionFn(e._value); + }); + + for (var n = 0, r = e._deferreds.length; r > n; n++) o(e, e._deferreds[n]); + + e._deferreds = null; + } + + function u(e, n) { + var t = !1; + + try { + e(function (e) { + t || (t = !0, r(n, e)); + }, function (e) { + t || (t = !0, i(n, e)); + }); + } catch (o) { + if (t) return; + t = !0, i(n, o); + } + } + + var c = setTimeout; + t.prototype["catch"] = function (e) { + return this.then(null, e); + }, t.prototype.then = function (e, t) { + var r = new this.constructor(n); + return o(this, new function (e, n, t) { + this.onFulfilled = "function" == typeof e ? e : null, this.onRejected = "function" == typeof n ? n : null, this.promise = t; + }(e, t, r)), r; + }, t.prototype["finally"] = e, t.all = function (e) { + return new t(function (n, t) { + function o(e, f) { + try { + if (f && ("object" == typeof f || "function" == typeof f)) { + var u = f.then; + if ("function" == typeof u) return void u.call(f, function (n) { + o(e, n); + }, t); + } + + r[e] = f, 0 == --i && n(r); + } catch (c) { + t(c); + } + } + + if (!e || "undefined" == typeof e.length) throw new TypeError("Promise.all accepts an array"); + var r = Array.prototype.slice.call(e); + if (0 === r.length) return n([]); + + for (var i = r.length, f = 0; r.length > f; f++) o(f, r[f]); + }); + }, t.resolve = function (e) { + return e && "object" == typeof e && e.constructor === t ? e : new t(function (n) { + n(e); + }); + }, t.reject = function (e) { + return new t(function (n, t) { + t(e); + }); + }, t.race = function (e) { + return new t(function (n, t) { + for (var o = 0, r = e.length; r > o; o++) e[o].then(n, t); + }); + }, t._immediateFn = "function" == typeof setImmediate && function (e) { + setImmediate(e); + } || function (e) { + c(e, 0); + }, t._unhandledRejectionFn = function (e) { + void 0 !== console && console && console.warn("Possible Unhandled Promise Rejection:", e); + }; + + var l = function () { + if ("undefined" != typeof self) return self; + if ("undefined" != typeof window) return window; + if ("undefined" != typeof global) return global; + throw Error("unable to locate global object"); + }(); + + "Promise" in l ? l.Promise.prototype["finally"] || (l.Promise.prototype["finally"] = e) : l.Promise = t; +}); + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("timers").setImmediate) +},{"timers":2}],39:[function(require,module,exports){ +"use strict"; + +function DOMParser(options) { + this.options = options || { + locator: {} + }; +} + +DOMParser.prototype.parseFromString = function (source, mimeType) { + var options = this.options; + var sax = new XMLReader(); + var domBuilder = options.domBuilder || new DOMHandler(); //contentHandler and LexicalHandler + + var errorHandler = options.errorHandler; + var locator = options.locator; + var defaultNSMap = options.xmlns || {}; + var isHTML = /\/x?html?$/.test(mimeType); //mimeType.toLowerCase().indexOf('html') > -1; + + var entityMap = isHTML ? htmlEntity.entityMap : { + 'lt': '<', + 'gt': '>', + 'amp': '&', + 'quot': '"', + 'apos': "'" + }; + + if (locator) { + domBuilder.setDocumentLocator(locator); + } + + sax.errorHandler = buildErrorHandler(errorHandler, domBuilder, locator); + sax.domBuilder = options.domBuilder || domBuilder; + + if (isHTML) { + defaultNSMap[''] = 'http://www.w3.org/1999/xhtml'; + } + + defaultNSMap.xml = defaultNSMap.xml || 'http://www.w3.org/XML/1998/namespace'; + + if (source) { + sax.parse(source, defaultNSMap, entityMap); + } else { + sax.errorHandler.error("invalid doc source"); + } + + return domBuilder.doc; +}; + +function buildErrorHandler(errorImpl, domBuilder, locator) { + if (!errorImpl) { + if (domBuilder instanceof DOMHandler) { + return domBuilder; + } + + errorImpl = domBuilder; + } + + var errorHandler = {}; + var isCallback = errorImpl instanceof Function; + locator = locator || {}; + + function build(key) { + var fn = errorImpl[key]; + + if (!fn && isCallback) { + fn = errorImpl.length == 2 ? function (msg) { + errorImpl(key, msg); + } : errorImpl; + } + + errorHandler[key] = fn && function (msg) { + fn('[xmldom ' + key + ']\t' + msg + _locator(locator)); + } || function () {}; + } + + build('warning'); + build('error'); + build('fatalError'); + return errorHandler; +} //console.log('#\n\n\n\n\n\n\n####') + +/** + * +ContentHandler+ErrorHandler + * +LexicalHandler+EntityResolver2 + * -DeclHandler-DTDHandler + * + * DefaultHandler:EntityResolver, DTDHandler, ContentHandler, ErrorHandler + * DefaultHandler2:DefaultHandler,LexicalHandler, DeclHandler, EntityResolver2 + * @link http://www.saxproject.org/apidoc/org/xml/sax/helpers/DefaultHandler.html + */ + + +function DOMHandler() { + this.cdata = false; +} + +function position(locator, node) { + node.lineNumber = locator.lineNumber; + node.columnNumber = locator.columnNumber; +} +/** + * @see org.xml.sax.ContentHandler#startDocument + * @link http://www.saxproject.org/apidoc/org/xml/sax/ContentHandler.html + */ + + +DOMHandler.prototype = { + startDocument: function () { + this.doc = new DOMImplementation().createDocument(null, null, null); + + if (this.locator) { + this.doc.documentURI = this.locator.systemId; + } + }, + startElement: function (namespaceURI, localName, qName, attrs) { + var doc = this.doc; + var el = doc.createElementNS(namespaceURI, qName || localName); + var len = attrs.length; + appendElement(this, el); + this.currentElement = el; + this.locator && position(this.locator, el); + + for (var i = 0; i < len; i++) { + var namespaceURI = attrs.getURI(i); + var value = attrs.getValue(i); + var qName = attrs.getQName(i); + var attr = doc.createAttributeNS(namespaceURI, qName); + this.locator && position(attrs.getLocator(i), attr); + attr.value = attr.nodeValue = value; + el.setAttributeNode(attr); + } + }, + endElement: function (namespaceURI, localName, qName) { + var current = this.currentElement; + var tagName = current.tagName; + this.currentElement = current.parentNode; + }, + startPrefixMapping: function (prefix, uri) {}, + endPrefixMapping: function (prefix) {}, + processingInstruction: function (target, data) { + var ins = this.doc.createProcessingInstruction(target, data); + this.locator && position(this.locator, ins); + appendElement(this, ins); + }, + ignorableWhitespace: function (ch, start, length) {}, + characters: function (chars, start, length) { + chars = _toString.apply(this, arguments); //console.log(chars) + + if (chars) { + if (this.cdata) { + var charNode = this.doc.createCDATASection(chars); + } else { + var charNode = this.doc.createTextNode(chars); + } + + if (this.currentElement) { + this.currentElement.appendChild(charNode); + } else if (/^\s*$/.test(chars)) { + this.doc.appendChild(charNode); //process xml + } + + this.locator && position(this.locator, charNode); + } + }, + skippedEntity: function (name) {}, + endDocument: function () { + this.doc.normalize(); + }, + setDocumentLocator: function (locator) { + if (this.locator = locator) { + // && !('lineNumber' in locator)){ + locator.lineNumber = 0; + } + }, + //LexicalHandler + comment: function (chars, start, length) { + chars = _toString.apply(this, arguments); + var comm = this.doc.createComment(chars); + this.locator && position(this.locator, comm); + appendElement(this, comm); + }, + startCDATA: function () { + //used in characters() methods + this.cdata = true; + }, + endCDATA: function () { + this.cdata = false; + }, + startDTD: function (name, publicId, systemId) { + var impl = this.doc.implementation; + + if (impl && impl.createDocumentType) { + var dt = impl.createDocumentType(name, publicId, systemId); + this.locator && position(this.locator, dt); + appendElement(this, dt); + } + }, + + /** + * @see org.xml.sax.ErrorHandler + * @link http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html + */ + warning: function (error) { + console.warn('[xmldom warning]\t' + error, _locator(this.locator)); + }, + error: function (error) { + console.error('[xmldom error]\t' + error, _locator(this.locator)); + }, + fatalError: function (error) { + console.error('[xmldom fatalError]\t' + error, _locator(this.locator)); + throw error; + } +}; + +function _locator(l) { + if (l) { + return '\n@' + (l.systemId || '') + '#[line:' + l.lineNumber + ',col:' + l.columnNumber + ']'; + } +} + +function _toString(chars, start, length) { + if (typeof chars == 'string') { + return chars.substr(start, length); + } else { + //java sax connect width xmldom on rhino(what about: "? && !(chars instanceof String)") + if (chars.length >= start + length || start) { + return new java.lang.String(chars, start, length) + ''; + } + + return chars; + } +} +/* + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/LexicalHandler.html + * used method of org.xml.sax.ext.LexicalHandler: + * #comment(chars, start, length) + * #startCDATA() + * #endCDATA() + * #startDTD(name, publicId, systemId) + * + * + * IGNORED method of org.xml.sax.ext.LexicalHandler: + * #endDTD() + * #startEntity(name) + * #endEntity(name) + * + * + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/DeclHandler.html + * IGNORED method of org.xml.sax.ext.DeclHandler + * #attributeDecl(eName, aName, type, mode, value) + * #elementDecl(name, model) + * #externalEntityDecl(name, publicId, systemId) + * #internalEntityDecl(name, value) + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/EntityResolver2.html + * IGNORED method of org.xml.sax.EntityResolver2 + * #resolveEntity(String name,String publicId,String baseURI,String systemId) + * #resolveEntity(publicId, systemId) + * #getExternalSubset(name, baseURI) + * @link http://www.saxproject.org/apidoc/org/xml/sax/DTDHandler.html + * IGNORED method of org.xml.sax.DTDHandler + * #notationDecl(name, publicId, systemId) {}; + * #unparsedEntityDecl(name, publicId, systemId, notationName) {}; + */ + + +"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, function (key) { + DOMHandler.prototype[key] = function () { + return null; + }; +}); +/* Private static helpers treated below as private instance methods, so don't need to add these to the public API; we might use a Relator to also get rid of non-standard public properties */ + +function appendElement(hander, node) { + if (!hander.currentElement) { + hander.doc.appendChild(node); + } else { + hander.currentElement.appendChild(node); + } +} //appendChild and setAttributeNS are preformance key +//if(typeof require == 'function'){ + + +var htmlEntity = require('./entities'); + +var XMLReader = require('./sax').XMLReader; + +var DOMImplementation = exports.DOMImplementation = require('./dom').DOMImplementation; + +exports.XMLSerializer = require('./dom').XMLSerializer; +exports.DOMParser = DOMParser; //} + +},{"./dom":40,"./entities":41,"./sax":42}],40:[function(require,module,exports){ +"use strict"; + +/* + * DOM Level 2 + * Object DOMException + * @see http://www.w3.org/TR/REC-DOM-Level-1/ecma-script-language-binding.html + * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html + */ +function copy(src, dest) { + for (var p in src) { + dest[p] = src[p]; + } +} +/** +^\w+\.prototype\.([_\w]+)\s*=\s*((?:.*\{\s*?[\r\n][\s\S]*?^})|\S.*?(?=[;\r\n]));? +^\w+\.prototype\.([_\w]+)\s*=\s*(\S.*?(?=[;\r\n]));? + */ + + +function _extends(Class, Super) { + var pt = Class.prototype; + + if (!(pt instanceof Super)) { + function t() {} + + ; + t.prototype = Super.prototype; + t = new t(); + copy(pt, t); + Class.prototype = pt = t; + } + + if (pt.constructor != Class) { + if (typeof Class != 'function') { + console.error("unknow Class:" + Class); + } + + pt.constructor = Class; + } +} + +var htmlns = 'http://www.w3.org/1999/xhtml'; // Node Types + +var NodeType = {}; +var ELEMENT_NODE = NodeType.ELEMENT_NODE = 1; +var ATTRIBUTE_NODE = NodeType.ATTRIBUTE_NODE = 2; +var TEXT_NODE = NodeType.TEXT_NODE = 3; +var CDATA_SECTION_NODE = NodeType.CDATA_SECTION_NODE = 4; +var ENTITY_REFERENCE_NODE = NodeType.ENTITY_REFERENCE_NODE = 5; +var ENTITY_NODE = NodeType.ENTITY_NODE = 6; +var PROCESSING_INSTRUCTION_NODE = NodeType.PROCESSING_INSTRUCTION_NODE = 7; +var COMMENT_NODE = NodeType.COMMENT_NODE = 8; +var DOCUMENT_NODE = NodeType.DOCUMENT_NODE = 9; +var DOCUMENT_TYPE_NODE = NodeType.DOCUMENT_TYPE_NODE = 10; +var DOCUMENT_FRAGMENT_NODE = NodeType.DOCUMENT_FRAGMENT_NODE = 11; +var NOTATION_NODE = NodeType.NOTATION_NODE = 12; // ExceptionCode + +var ExceptionCode = {}; +var ExceptionMessage = {}; +var INDEX_SIZE_ERR = ExceptionCode.INDEX_SIZE_ERR = (ExceptionMessage[1] = "Index size error", 1); +var DOMSTRING_SIZE_ERR = ExceptionCode.DOMSTRING_SIZE_ERR = (ExceptionMessage[2] = "DOMString size error", 2); +var HIERARCHY_REQUEST_ERR = ExceptionCode.HIERARCHY_REQUEST_ERR = (ExceptionMessage[3] = "Hierarchy request error", 3); +var WRONG_DOCUMENT_ERR = ExceptionCode.WRONG_DOCUMENT_ERR = (ExceptionMessage[4] = "Wrong document", 4); +var INVALID_CHARACTER_ERR = ExceptionCode.INVALID_CHARACTER_ERR = (ExceptionMessage[5] = "Invalid character", 5); +var NO_DATA_ALLOWED_ERR = ExceptionCode.NO_DATA_ALLOWED_ERR = (ExceptionMessage[6] = "No data allowed", 6); +var NO_MODIFICATION_ALLOWED_ERR = ExceptionCode.NO_MODIFICATION_ALLOWED_ERR = (ExceptionMessage[7] = "No modification allowed", 7); +var NOT_FOUND_ERR = ExceptionCode.NOT_FOUND_ERR = (ExceptionMessage[8] = "Not found", 8); +var NOT_SUPPORTED_ERR = ExceptionCode.NOT_SUPPORTED_ERR = (ExceptionMessage[9] = "Not supported", 9); +var INUSE_ATTRIBUTE_ERR = ExceptionCode.INUSE_ATTRIBUTE_ERR = (ExceptionMessage[10] = "Attribute in use", 10); //level2 + +var INVALID_STATE_ERR = ExceptionCode.INVALID_STATE_ERR = (ExceptionMessage[11] = "Invalid state", 11); +var SYNTAX_ERR = ExceptionCode.SYNTAX_ERR = (ExceptionMessage[12] = "Syntax error", 12); +var INVALID_MODIFICATION_ERR = ExceptionCode.INVALID_MODIFICATION_ERR = (ExceptionMessage[13] = "Invalid modification", 13); +var NAMESPACE_ERR = ExceptionCode.NAMESPACE_ERR = (ExceptionMessage[14] = "Invalid namespace", 14); +var INVALID_ACCESS_ERR = ExceptionCode.INVALID_ACCESS_ERR = (ExceptionMessage[15] = "Invalid access", 15); + +function DOMException(code, message) { + if (message instanceof Error) { + var error = message; + } else { + error = this; + Error.call(this, ExceptionMessage[code]); + this.message = ExceptionMessage[code]; + if (Error.captureStackTrace) Error.captureStackTrace(this, DOMException); + } + + error.code = code; + if (message) this.message = this.message + ": " + message; + return error; +} + +; +DOMException.prototype = Error.prototype; +copy(ExceptionCode, DOMException); +/** + * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-536297177 + * The NodeList interface provides the abstraction of an ordered collection of nodes, without defining or constraining how this collection is implemented. NodeList objects in the DOM are live. + * The items in the NodeList are accessible via an integral index, starting from 0. + */ + +function NodeList() {} + +; +NodeList.prototype = { + /** + * The number of nodes in the list. The range of valid child node indices is 0 to length-1 inclusive. + * @standard level1 + */ + length: 0, + + /** + * Returns the indexth item in the collection. If index is greater than or equal to the number of nodes in the list, this returns null. + * @standard level1 + * @param index unsigned long + * Index into the collection. + * @return Node + * The node at the indexth position in the NodeList, or null if that is not a valid index. + */ + item: function (index) { + return this[index] || null; + }, + toString: function (isHTML, nodeFilter) { + for (var buf = [], i = 0; i < this.length; i++) { + serializeToString(this[i], buf, isHTML, nodeFilter); + } + + return buf.join(''); + } +}; + +function LiveNodeList(node, refresh) { + this._node = node; + this._refresh = refresh; + + _updateLiveList(this); +} + +function _updateLiveList(list) { + var inc = list._node._inc || list._node.ownerDocument._inc; + + if (list._inc != inc) { + var ls = list._refresh(list._node); //console.log(ls.length) + + + __set__(list, 'length', ls.length); + + copy(ls, list); + list._inc = inc; + } +} + +LiveNodeList.prototype.item = function (i) { + _updateLiveList(this); + + return this[i]; +}; + +_extends(LiveNodeList, NodeList); +/** + * + * Objects implementing the NamedNodeMap interface are used to represent collections of nodes that can be accessed by name. Note that NamedNodeMap does not inherit from NodeList; NamedNodeMaps are not maintained in any particular order. Objects contained in an object implementing NamedNodeMap may also be accessed by an ordinal index, but this is simply to allow convenient enumeration of the contents of a NamedNodeMap, and does not imply that the DOM specifies an order to these Nodes. + * NamedNodeMap objects in the DOM are live. + * used for attributes or DocumentType entities + */ + + +function NamedNodeMap() {} + +; + +function _findNodeIndex(list, node) { + var i = list.length; + + while (i--) { + if (list[i] === node) { + return i; + } + } +} + +function _addNamedNode(el, list, newAttr, oldAttr) { + if (oldAttr) { + list[_findNodeIndex(list, oldAttr)] = newAttr; + } else { + list[list.length++] = newAttr; + } + + if (el) { + newAttr.ownerElement = el; + var doc = el.ownerDocument; + + if (doc) { + oldAttr && _onRemoveAttribute(doc, el, oldAttr); + + _onAddAttribute(doc, el, newAttr); + } + } +} + +function _removeNamedNode(el, list, attr) { + //console.log('remove attr:'+attr) + var i = _findNodeIndex(list, attr); + + if (i >= 0) { + var lastIndex = list.length - 1; + + while (i < lastIndex) { + list[i] = list[++i]; + } + + list.length = lastIndex; + + if (el) { + var doc = el.ownerDocument; + + if (doc) { + _onRemoveAttribute(doc, el, attr); + + attr.ownerElement = null; + } + } + } else { + throw DOMException(NOT_FOUND_ERR, new Error(el.tagName + '@' + attr)); + } +} + +NamedNodeMap.prototype = { + length: 0, + item: NodeList.prototype.item, + getNamedItem: function (key) { + // if(key.indexOf(':')>0 || key == 'xmlns'){ + // return null; + // } + //console.log() + var i = this.length; + + while (i--) { + var attr = this[i]; //console.log(attr.nodeName,key) + + if (attr.nodeName == key) { + return attr; + } + } + }, + setNamedItem: function (attr) { + var el = attr.ownerElement; + + if (el && el != this._ownerElement) { + throw new DOMException(INUSE_ATTRIBUTE_ERR); + } + + var oldAttr = this.getNamedItem(attr.nodeName); + + _addNamedNode(this._ownerElement, this, attr, oldAttr); + + return oldAttr; + }, + + /* returns Node */ + setNamedItemNS: function (attr) { + // raises: WRONG_DOCUMENT_ERR,NO_MODIFICATION_ALLOWED_ERR,INUSE_ATTRIBUTE_ERR + var el = attr.ownerElement, + oldAttr; + + if (el && el != this._ownerElement) { + throw new DOMException(INUSE_ATTRIBUTE_ERR); + } + + oldAttr = this.getNamedItemNS(attr.namespaceURI, attr.localName); + + _addNamedNode(this._ownerElement, this, attr, oldAttr); + + return oldAttr; + }, + + /* returns Node */ + removeNamedItem: function (key) { + var attr = this.getNamedItem(key); + + _removeNamedNode(this._ownerElement, this, attr); + + return attr; + }, + // raises: NOT_FOUND_ERR,NO_MODIFICATION_ALLOWED_ERR + //for level2 + removeNamedItemNS: function (namespaceURI, localName) { + var attr = this.getNamedItemNS(namespaceURI, localName); + + _removeNamedNode(this._ownerElement, this, attr); + + return attr; + }, + getNamedItemNS: function (namespaceURI, localName) { + var i = this.length; + + while (i--) { + var node = this[i]; + + if (node.localName == localName && node.namespaceURI == namespaceURI) { + return node; + } + } + + return null; + } +}; +/** + * @see http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-102161490 + */ + +function DOMImplementation( +/* Object */ +features) { + this._features = {}; + + if (features) { + for (var feature in features) { + this._features = features[feature]; + } + } +} + +; +DOMImplementation.prototype = { + hasFeature: function ( + /* string */ + feature, + /* string */ + version) { + var versions = this._features[feature.toLowerCase()]; + + if (versions && (!version || version in versions)) { + return true; + } else { + return false; + } + }, + // Introduced in DOM Level 2: + createDocument: function (namespaceURI, qualifiedName, doctype) { + // raises:INVALID_CHARACTER_ERR,NAMESPACE_ERR,WRONG_DOCUMENT_ERR + var doc = new Document(); + doc.implementation = this; + doc.childNodes = new NodeList(); + doc.doctype = doctype; + + if (doctype) { + doc.appendChild(doctype); + } + + if (qualifiedName) { + var root = doc.createElementNS(namespaceURI, qualifiedName); + doc.appendChild(root); + } + + return doc; + }, + // Introduced in DOM Level 2: + createDocumentType: function (qualifiedName, publicId, systemId) { + // raises:INVALID_CHARACTER_ERR,NAMESPACE_ERR + var node = new DocumentType(); + node.name = qualifiedName; + node.nodeName = qualifiedName; + node.publicId = publicId; + node.systemId = systemId; // Introduced in DOM Level 2: + //readonly attribute DOMString internalSubset; + //REFINE:.. + // readonly attribute NamedNodeMap entities; + // readonly attribute NamedNodeMap notations; + + return node; + } +}; +/** + * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-1950641247 + */ + +function Node() {} + +; +Node.prototype = { + firstChild: null, + lastChild: null, + previousSibling: null, + nextSibling: null, + attributes: null, + parentNode: null, + childNodes: null, + ownerDocument: null, + nodeValue: null, + namespaceURI: null, + prefix: null, + localName: null, + // Modified in DOM Level 2: + insertBefore: function (newChild, refChild) { + //raises + return _insertBefore(this, newChild, refChild); + }, + replaceChild: function (newChild, oldChild) { + //raises + this.insertBefore(newChild, oldChild); + + if (oldChild) { + this.removeChild(oldChild); + } + }, + removeChild: function (oldChild) { + return _removeChild(this, oldChild); + }, + appendChild: function (newChild) { + return this.insertBefore(newChild, null); + }, + hasChildNodes: function () { + return this.firstChild != null; + }, + cloneNode: function (deep) { + return cloneNode(this.ownerDocument || this, this, deep); + }, + // Modified in DOM Level 2: + normalize: function () { + var child = this.firstChild; + + while (child) { + var next = child.nextSibling; + + if (next && next.nodeType == TEXT_NODE && child.nodeType == TEXT_NODE) { + this.removeChild(next); + child.appendData(next.data); + } else { + child.normalize(); + child = next; + } + } + }, + // Introduced in DOM Level 2: + isSupported: function (feature, version) { + return this.ownerDocument.implementation.hasFeature(feature, version); + }, + // Introduced in DOM Level 2: + hasAttributes: function () { + return this.attributes.length > 0; + }, + lookupPrefix: function (namespaceURI) { + var el = this; + + while (el) { + var map = el._nsMap; //console.dir(map) + + if (map) { + for (var n in map) { + if (map[n] == namespaceURI) { + return n; + } + } + } + + el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode; + } + + return null; + }, + // Introduced in DOM Level 3: + lookupNamespaceURI: function (prefix) { + var el = this; + + while (el) { + var map = el._nsMap; //console.dir(map) + + if (map) { + if (prefix in map) { + return map[prefix]; + } + } + + el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode; + } + + return null; + }, + // Introduced in DOM Level 3: + isDefaultNamespace: function (namespaceURI) { + var prefix = this.lookupPrefix(namespaceURI); + return prefix == null; + } +}; + +function _xmlEncoder(c) { + return c == '<' && '<' || c == '>' && '>' || c == '&' && '&' || c == '"' && '"' || '&#' + c.charCodeAt() + ';'; +} + +copy(NodeType, Node); +copy(NodeType, Node.prototype); +/** + * @param callback return true for continue,false for break + * @return boolean true: break visit; + */ + +function _visitNode(node, callback) { + if (callback(node)) { + return true; + } + + if (node = node.firstChild) { + do { + if (_visitNode(node, callback)) { + return true; + } + } while (node = node.nextSibling); + } +} + +function Document() {} + +function _onAddAttribute(doc, el, newAttr) { + doc && doc._inc++; + var ns = newAttr.namespaceURI; + + if (ns == 'http://www.w3.org/2000/xmlns/') { + //update namespace + el._nsMap[newAttr.prefix ? newAttr.localName : ''] = newAttr.value; + } +} + +function _onRemoveAttribute(doc, el, newAttr, remove) { + doc && doc._inc++; + var ns = newAttr.namespaceURI; + + if (ns == 'http://www.w3.org/2000/xmlns/') { + //update namespace + delete el._nsMap[newAttr.prefix ? newAttr.localName : '']; + } +} + +function _onUpdateChild(doc, el, newChild) { + if (doc && doc._inc) { + doc._inc++; //update childNodes + + var cs = el.childNodes; + + if (newChild) { + cs[cs.length++] = newChild; + } else { + //console.log(1) + var child = el.firstChild; + var i = 0; + + while (child) { + cs[i++] = child; + child = child.nextSibling; + } + + cs.length = i; + } + } +} +/** + * attributes; + * children; + * + * writeable properties: + * nodeValue,Attr:value,CharacterData:data + * prefix + */ + + +function _removeChild(parentNode, child) { + var previous = child.previousSibling; + var next = child.nextSibling; + + if (previous) { + previous.nextSibling = next; + } else { + parentNode.firstChild = next; + } + + if (next) { + next.previousSibling = previous; + } else { + parentNode.lastChild = previous; + } + + _onUpdateChild(parentNode.ownerDocument, parentNode); + + return child; +} +/** + * preformance key(refChild == null) + */ + + +function _insertBefore(parentNode, newChild, nextChild) { + var cp = newChild.parentNode; + + if (cp) { + cp.removeChild(newChild); //remove and update + } + + if (newChild.nodeType === DOCUMENT_FRAGMENT_NODE) { + var newFirst = newChild.firstChild; + + if (newFirst == null) { + return newChild; + } + + var newLast = newChild.lastChild; + } else { + newFirst = newLast = newChild; + } + + var pre = nextChild ? nextChild.previousSibling : parentNode.lastChild; + newFirst.previousSibling = pre; + newLast.nextSibling = nextChild; + + if (pre) { + pre.nextSibling = newFirst; + } else { + parentNode.firstChild = newFirst; + } + + if (nextChild == null) { + parentNode.lastChild = newLast; + } else { + nextChild.previousSibling = newLast; + } + + do { + newFirst.parentNode = parentNode; + } while (newFirst !== newLast && (newFirst = newFirst.nextSibling)); + + _onUpdateChild(parentNode.ownerDocument || parentNode, parentNode); //console.log(parentNode.lastChild.nextSibling == null) + + + if (newChild.nodeType == DOCUMENT_FRAGMENT_NODE) { + newChild.firstChild = newChild.lastChild = null; + } + + return newChild; +} + +function _appendSingleChild(parentNode, newChild) { + var cp = newChild.parentNode; + + if (cp) { + var pre = parentNode.lastChild; + cp.removeChild(newChild); //remove and update + + var pre = parentNode.lastChild; + } + + var pre = parentNode.lastChild; + newChild.parentNode = parentNode; + newChild.previousSibling = pre; + newChild.nextSibling = null; + + if (pre) { + pre.nextSibling = newChild; + } else { + parentNode.firstChild = newChild; + } + + parentNode.lastChild = newChild; + + _onUpdateChild(parentNode.ownerDocument, parentNode, newChild); + + return newChild; //console.log("__aa",parentNode.lastChild.nextSibling == null) +} + +Document.prototype = { + //implementation : null, + nodeName: '#document', + nodeType: DOCUMENT_NODE, + doctype: null, + documentElement: null, + _inc: 1, + insertBefore: function (newChild, refChild) { + //raises + if (newChild.nodeType == DOCUMENT_FRAGMENT_NODE) { + var child = newChild.firstChild; + + while (child) { + var next = child.nextSibling; + this.insertBefore(child, refChild); + child = next; + } + + return newChild; + } + + if (this.documentElement == null && newChild.nodeType == ELEMENT_NODE) { + this.documentElement = newChild; + } + + return _insertBefore(this, newChild, refChild), newChild.ownerDocument = this, newChild; + }, + removeChild: function (oldChild) { + if (this.documentElement == oldChild) { + this.documentElement = null; + } + + return _removeChild(this, oldChild); + }, + // Introduced in DOM Level 2: + importNode: function (importedNode, deep) { + return importNode(this, importedNode, deep); + }, + // Introduced in DOM Level 2: + getElementById: function (id) { + var rtv = null; + + _visitNode(this.documentElement, function (node) { + if (node.nodeType == ELEMENT_NODE) { + if (node.getAttribute('id') == id) { + rtv = node; + return true; + } + } + }); + + return rtv; + }, + //document factory method: + createElement: function (tagName) { + var node = new Element(); + node.ownerDocument = this; + node.nodeName = tagName; + node.tagName = tagName; + node.childNodes = new NodeList(); + var attrs = node.attributes = new NamedNodeMap(); + attrs._ownerElement = node; + return node; + }, + createDocumentFragment: function () { + var node = new DocumentFragment(); + node.ownerDocument = this; + node.childNodes = new NodeList(); + return node; + }, + createTextNode: function (data) { + var node = new Text(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createComment: function (data) { + var node = new Comment(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createCDATASection: function (data) { + var node = new CDATASection(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createProcessingInstruction: function (target, data) { + var node = new ProcessingInstruction(); + node.ownerDocument = this; + node.tagName = node.target = target; + node.nodeValue = node.data = data; + return node; + }, + createAttribute: function (name) { + var node = new Attr(); + node.ownerDocument = this; + node.name = name; + node.nodeName = name; + node.localName = name; + node.specified = true; + return node; + }, + createEntityReference: function (name) { + var node = new EntityReference(); + node.ownerDocument = this; + node.nodeName = name; + return node; + }, + // Introduced in DOM Level 2: + createElementNS: function (namespaceURI, qualifiedName) { + var node = new Element(); + var pl = qualifiedName.split(':'); + var attrs = node.attributes = new NamedNodeMap(); + node.childNodes = new NodeList(); + node.ownerDocument = this; + node.nodeName = qualifiedName; + node.tagName = qualifiedName; + node.namespaceURI = namespaceURI; + + if (pl.length == 2) { + node.prefix = pl[0]; + node.localName = pl[1]; + } else { + //el.prefix = null; + node.localName = qualifiedName; + } + + attrs._ownerElement = node; + return node; + }, + // Introduced in DOM Level 2: + createAttributeNS: function (namespaceURI, qualifiedName) { + var node = new Attr(); + var pl = qualifiedName.split(':'); + node.ownerDocument = this; + node.nodeName = qualifiedName; + node.name = qualifiedName; + node.namespaceURI = namespaceURI; + node.specified = true; + + if (pl.length == 2) { + node.prefix = pl[0]; + node.localName = pl[1]; + } else { + //el.prefix = null; + node.localName = qualifiedName; + } + + return node; + } +}; + +_extends(Document, Node); + +function Element() { + this._nsMap = {}; +} + +; +Element.prototype = { + nodeType: ELEMENT_NODE, + hasAttribute: function (name) { + return this.getAttributeNode(name) != null; + }, + getAttribute: function (name) { + var attr = this.getAttributeNode(name); + return attr && attr.value || ''; + }, + getAttributeNode: function (name) { + return this.attributes.getNamedItem(name); + }, + setAttribute: function (name, value) { + var attr = this.ownerDocument.createAttribute(name); + attr.value = attr.nodeValue = "" + value; + this.setAttributeNode(attr); + }, + removeAttribute: function (name) { + var attr = this.getAttributeNode(name); + attr && this.removeAttributeNode(attr); + }, + //four real opeartion method + appendChild: function (newChild) { + if (newChild.nodeType === DOCUMENT_FRAGMENT_NODE) { + return this.insertBefore(newChild, null); + } else { + return _appendSingleChild(this, newChild); + } + }, + setAttributeNode: function (newAttr) { + return this.attributes.setNamedItem(newAttr); + }, + setAttributeNodeNS: function (newAttr) { + return this.attributes.setNamedItemNS(newAttr); + }, + removeAttributeNode: function (oldAttr) { + //console.log(this == oldAttr.ownerElement) + return this.attributes.removeNamedItem(oldAttr.nodeName); + }, + //get real attribute name,and remove it by removeAttributeNode + removeAttributeNS: function (namespaceURI, localName) { + var old = this.getAttributeNodeNS(namespaceURI, localName); + old && this.removeAttributeNode(old); + }, + hasAttributeNS: function (namespaceURI, localName) { + return this.getAttributeNodeNS(namespaceURI, localName) != null; + }, + getAttributeNS: function (namespaceURI, localName) { + var attr = this.getAttributeNodeNS(namespaceURI, localName); + return attr && attr.value || ''; + }, + setAttributeNS: function (namespaceURI, qualifiedName, value) { + var attr = this.ownerDocument.createAttributeNS(namespaceURI, qualifiedName); + attr.value = attr.nodeValue = "" + value; + this.setAttributeNode(attr); + }, + getAttributeNodeNS: function (namespaceURI, localName) { + return this.attributes.getNamedItemNS(namespaceURI, localName); + }, + getElementsByTagName: function (tagName) { + return new LiveNodeList(this, function (base) { + var ls = []; + + _visitNode(base, function (node) { + if (node !== base && node.nodeType == ELEMENT_NODE && (tagName === '*' || node.tagName == tagName)) { + ls.push(node); + } + }); + + return ls; + }); + }, + getElementsByTagNameNS: function (namespaceURI, localName) { + return new LiveNodeList(this, function (base) { + var ls = []; + + _visitNode(base, function (node) { + if (node !== base && node.nodeType === ELEMENT_NODE && (namespaceURI === '*' || node.namespaceURI === namespaceURI) && (localName === '*' || node.localName == localName)) { + ls.push(node); + } + }); + + return ls; + }); + } +}; +Document.prototype.getElementsByTagName = Element.prototype.getElementsByTagName; +Document.prototype.getElementsByTagNameNS = Element.prototype.getElementsByTagNameNS; + +_extends(Element, Node); + +function Attr() {} + +; +Attr.prototype.nodeType = ATTRIBUTE_NODE; + +_extends(Attr, Node); + +function CharacterData() {} + +; +CharacterData.prototype = { + data: '', + substringData: function (offset, count) { + return this.data.substring(offset, offset + count); + }, + appendData: function (text) { + text = this.data + text; + this.nodeValue = this.data = text; + this.length = text.length; + }, + insertData: function (offset, text) { + this.replaceData(offset, 0, text); + }, + appendChild: function (newChild) { + throw new Error(ExceptionMessage[HIERARCHY_REQUEST_ERR]); + }, + deleteData: function (offset, count) { + this.replaceData(offset, count, ""); + }, + replaceData: function (offset, count, text) { + var start = this.data.substring(0, offset); + var end = this.data.substring(offset + count); + text = start + text + end; + this.nodeValue = this.data = text; + this.length = text.length; + } +}; + +_extends(CharacterData, Node); + +function Text() {} + +; +Text.prototype = { + nodeName: "#text", + nodeType: TEXT_NODE, + splitText: function (offset) { + var text = this.data; + var newText = text.substring(offset); + text = text.substring(0, offset); + this.data = this.nodeValue = text; + this.length = text.length; + var newNode = this.ownerDocument.createTextNode(newText); + + if (this.parentNode) { + this.parentNode.insertBefore(newNode, this.nextSibling); + } + + return newNode; + } +}; + +_extends(Text, CharacterData); + +function Comment() {} + +; +Comment.prototype = { + nodeName: "#comment", + nodeType: COMMENT_NODE +}; + +_extends(Comment, CharacterData); + +function CDATASection() {} + +; +CDATASection.prototype = { + nodeName: "#cdata-section", + nodeType: CDATA_SECTION_NODE +}; + +_extends(CDATASection, CharacterData); + +function DocumentType() {} + +; +DocumentType.prototype.nodeType = DOCUMENT_TYPE_NODE; + +_extends(DocumentType, Node); + +function Notation() {} + +; +Notation.prototype.nodeType = NOTATION_NODE; + +_extends(Notation, Node); + +function Entity() {} + +; +Entity.prototype.nodeType = ENTITY_NODE; + +_extends(Entity, Node); + +function EntityReference() {} + +; +EntityReference.prototype.nodeType = ENTITY_REFERENCE_NODE; + +_extends(EntityReference, Node); + +function DocumentFragment() {} + +; +DocumentFragment.prototype.nodeName = "#document-fragment"; +DocumentFragment.prototype.nodeType = DOCUMENT_FRAGMENT_NODE; + +_extends(DocumentFragment, Node); + +function ProcessingInstruction() {} + +ProcessingInstruction.prototype.nodeType = PROCESSING_INSTRUCTION_NODE; + +_extends(ProcessingInstruction, Node); + +function XMLSerializer() {} + +XMLSerializer.prototype.serializeToString = function (node, isHtml, nodeFilter) { + return nodeSerializeToString.call(node, isHtml, nodeFilter); +}; + +Node.prototype.toString = nodeSerializeToString; + +function nodeSerializeToString(isHtml, nodeFilter) { + var buf = []; + var refNode = this.nodeType == 9 && this.documentElement || this; + var prefix = refNode.prefix; + var uri = refNode.namespaceURI; + + if (uri && prefix == null) { + //console.log(prefix) + var prefix = refNode.lookupPrefix(uri); + + if (prefix == null) { + //isHTML = true; + var visibleNamespaces = [{ + namespace: uri, + prefix: null + } //{namespace:uri,prefix:''} + ]; + } + } + + serializeToString(this, buf, isHtml, nodeFilter, visibleNamespaces); //console.log('###',this.nodeType,uri,prefix,buf.join('')) + + return buf.join(''); +} + +function needNamespaceDefine(node, isHTML, visibleNamespaces) { + var prefix = node.prefix || ''; + var uri = node.namespaceURI; + + if (!prefix && !uri) { + return false; + } + + if (prefix === "xml" && uri === "http://www.w3.org/XML/1998/namespace" || uri == 'http://www.w3.org/2000/xmlns/') { + return false; + } + + var i = visibleNamespaces.length; //console.log('@@@@',node.tagName,prefix,uri,visibleNamespaces) + + while (i--) { + var ns = visibleNamespaces[i]; // get namespace prefix + //console.log(node.nodeType,node.tagName,ns.prefix,prefix) + + if (ns.prefix == prefix) { + return ns.namespace != uri; + } + } //console.log(isHTML,uri,prefix=='') + //if(isHTML && prefix ==null && uri == 'http://www.w3.org/1999/xhtml'){ + // return false; + //} + //node.flag = '11111' + //console.error(3,true,node.flag,node.prefix,node.namespaceURI) + + + return true; +} + +function serializeToString(node, buf, isHTML, nodeFilter, visibleNamespaces) { + if (nodeFilter) { + node = nodeFilter(node); + + if (node) { + if (typeof node == 'string') { + buf.push(node); + return; + } + } else { + return; + } //buf.sort.apply(attrs, attributeSorter); + + } + + switch (node.nodeType) { + case ELEMENT_NODE: + if (!visibleNamespaces) visibleNamespaces = []; + var startVisibleNamespaces = visibleNamespaces.length; + var attrs = node.attributes; + var len = attrs.length; + var child = node.firstChild; + var nodeName = node.tagName; + isHTML = htmlns === node.namespaceURI || isHTML; + buf.push('<', nodeName); + + for (var i = 0; i < len; i++) { + // add namespaces for attributes + var attr = attrs.item(i); + + if (attr.prefix == 'xmlns') { + visibleNamespaces.push({ + prefix: attr.localName, + namespace: attr.value + }); + } else if (attr.nodeName == 'xmlns') { + visibleNamespaces.push({ + prefix: '', + namespace: attr.value + }); + } + } + + for (var i = 0; i < len; i++) { + var attr = attrs.item(i); + + if (needNamespaceDefine(attr, isHTML, visibleNamespaces)) { + var prefix = attr.prefix || ''; + var uri = attr.namespaceURI; + var ns = prefix ? ' xmlns:' + prefix : " xmlns"; + buf.push(ns, '="', uri, '"'); + visibleNamespaces.push({ + prefix: prefix, + namespace: uri + }); + } + + serializeToString(attr, buf, isHTML, nodeFilter, visibleNamespaces); + } // add namespace for current node + + + if (needNamespaceDefine(node, isHTML, visibleNamespaces)) { + var prefix = node.prefix || ''; + var uri = node.namespaceURI; + var ns = prefix ? ' xmlns:' + prefix : " xmlns"; + buf.push(ns, '="', uri, '"'); + visibleNamespaces.push({ + prefix: prefix, + namespace: uri + }); + } + + if (child || isHTML && !/^(?:meta|link|img|br|hr|input)$/i.test(nodeName)) { + buf.push('>'); //if is cdata child node + + if (isHTML && /^script$/i.test(nodeName)) { + while (child) { + if (child.data) { + buf.push(child.data); + } else { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces); + } + + child = child.nextSibling; + } + } else { + while (child) { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces); + child = child.nextSibling; + } + } + + buf.push(''); + } else { + buf.push('/>'); + } // remove added visible namespaces + //visibleNamespaces.length = startVisibleNamespaces; + + + return; + + case DOCUMENT_NODE: + case DOCUMENT_FRAGMENT_NODE: + var child = node.firstChild; + + while (child) { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces); + child = child.nextSibling; + } + + return; + + case ATTRIBUTE_NODE: + return buf.push(' ', node.name, '="', node.value.replace(/[<&"]/g, _xmlEncoder), '"'); + + case TEXT_NODE: + return buf.push(node.data.replace(/[<&]/g, _xmlEncoder)); + + case CDATA_SECTION_NODE: + return buf.push(''); + + case COMMENT_NODE: + return buf.push(""); + + case DOCUMENT_TYPE_NODE: + var pubid = node.publicId; + var sysid = node.systemId; + buf.push(''); + } else if (sysid && sysid != '.') { + buf.push(' SYSTEM "', sysid, '">'); + } else { + var sub = node.internalSubset; + + if (sub) { + buf.push(" [", sub, "]"); + } + + buf.push(">"); + } + + return; + + case PROCESSING_INSTRUCTION_NODE: + return buf.push(""); + + case ENTITY_REFERENCE_NODE: + return buf.push('&', node.nodeName, ';'); + //case ENTITY_NODE: + //case NOTATION_NODE: + + default: + buf.push('??', node.nodeName); + } +} + +function importNode(doc, node, deep) { + var node2; + + switch (node.nodeType) { + case ELEMENT_NODE: + node2 = node.cloneNode(false); + node2.ownerDocument = doc; + //var attrs = node2.attributes; + //var len = attrs.length; + //for(var i=0;i', + amp: '&', + quot: '"', + apos: "'", + Agrave: "À", + Aacute: "Á", + Acirc: "Â", + Atilde: "Ã", + Auml: "Ä", + Aring: "Å", + AElig: "Æ", + Ccedil: "Ç", + Egrave: "È", + Eacute: "É", + Ecirc: "Ê", + Euml: "Ë", + Igrave: "Ì", + Iacute: "Í", + Icirc: "Î", + Iuml: "Ï", + ETH: "Ð", + Ntilde: "Ñ", + Ograve: "Ò", + Oacute: "Ó", + Ocirc: "Ô", + Otilde: "Õ", + Ouml: "Ö", + Oslash: "Ø", + Ugrave: "Ù", + Uacute: "Ú", + Ucirc: "Û", + Uuml: "Ü", + Yacute: "Ý", + THORN: "Þ", + szlig: "ß", + agrave: "à", + aacute: "á", + acirc: "â", + atilde: "ã", + auml: "ä", + aring: "å", + aelig: "æ", + ccedil: "ç", + egrave: "è", + eacute: "é", + ecirc: "ê", + euml: "ë", + igrave: "ì", + iacute: "í", + icirc: "î", + iuml: "ï", + eth: "ð", + ntilde: "ñ", + ograve: "ò", + oacute: "ó", + ocirc: "ô", + otilde: "õ", + ouml: "ö", + oslash: "ø", + ugrave: "ù", + uacute: "ú", + ucirc: "û", + uuml: "ü", + yacute: "ý", + thorn: "þ", + yuml: "ÿ", + nbsp: " ", + iexcl: "¡", + cent: "¢", + pound: "£", + curren: "¤", + yen: "¥", + brvbar: "¦", + sect: "§", + uml: "¨", + copy: "©", + ordf: "ª", + laquo: "«", + not: "¬", + shy: "­­", + reg: "®", + macr: "¯", + deg: "°", + plusmn: "±", + sup2: "²", + sup3: "³", + acute: "´", + micro: "µ", + para: "¶", + middot: "·", + cedil: "¸", + sup1: "¹", + ordm: "º", + raquo: "»", + frac14: "¼", + frac12: "½", + frac34: "¾", + iquest: "¿", + times: "×", + divide: "÷", + forall: "∀", + part: "∂", + exist: "∃", + empty: "∅", + nabla: "∇", + isin: "∈", + notin: "∉", + ni: "∋", + prod: "∏", + sum: "∑", + minus: "−", + lowast: "∗", + radic: "√", + prop: "∝", + infin: "∞", + ang: "∠", + and: "∧", + or: "∨", + cap: "∩", + cup: "∪", + 'int': "∫", + there4: "∴", + sim: "∼", + cong: "≅", + asymp: "≈", + ne: "≠", + equiv: "≡", + le: "≤", + ge: "≥", + sub: "⊂", + sup: "⊃", + nsub: "⊄", + sube: "⊆", + supe: "⊇", + oplus: "⊕", + otimes: "⊗", + perp: "⊥", + sdot: "⋅", + Alpha: "Α", + Beta: "Β", + Gamma: "Γ", + Delta: "Δ", + Epsilon: "Ε", + Zeta: "Ζ", + Eta: "Η", + Theta: "Θ", + Iota: "Ι", + Kappa: "Κ", + Lambda: "Λ", + Mu: "Μ", + Nu: "Ν", + Xi: "Ξ", + Omicron: "Ο", + Pi: "Π", + Rho: "Ρ", + Sigma: "Σ", + Tau: "Τ", + Upsilon: "Υ", + Phi: "Φ", + Chi: "Χ", + Psi: "Ψ", + Omega: "Ω", + alpha: "α", + beta: "β", + gamma: "γ", + delta: "δ", + epsilon: "ε", + zeta: "ζ", + eta: "η", + theta: "θ", + iota: "ι", + kappa: "κ", + lambda: "λ", + mu: "μ", + nu: "ν", + xi: "ξ", + omicron: "ο", + pi: "π", + rho: "ρ", + sigmaf: "ς", + sigma: "σ", + tau: "τ", + upsilon: "υ", + phi: "φ", + chi: "χ", + psi: "ψ", + omega: "ω", + thetasym: "ϑ", + upsih: "ϒ", + piv: "ϖ", + OElig: "Œ", + oelig: "œ", + Scaron: "Š", + scaron: "š", + Yuml: "Ÿ", + fnof: "ƒ", + circ: "ˆ", + tilde: "˜", + ensp: " ", + emsp: " ", + thinsp: " ", + zwnj: "‌", + zwj: "‍", + lrm: "‎", + rlm: "‏", + ndash: "–", + mdash: "—", + lsquo: "‘", + rsquo: "’", + sbquo: "‚", + ldquo: "“", + rdquo: "”", + bdquo: "„", + dagger: "†", + Dagger: "‡", + bull: "•", + hellip: "…", + permil: "‰", + prime: "′", + Prime: "″", + lsaquo: "‹", + rsaquo: "›", + oline: "‾", + euro: "€", + trade: "™", + larr: "←", + uarr: "↑", + rarr: "→", + darr: "↓", + harr: "↔", + crarr: "↵", + lceil: "⌈", + rceil: "⌉", + lfloor: "⌊", + rfloor: "⌋", + loz: "◊", + spades: "♠", + clubs: "♣", + hearts: "♥", + diams: "♦" +}; //for(var n in exports.entityMap){console.log(exports.entityMap[n].charCodeAt())} + +},{}],42:[function(require,module,exports){ +"use strict"; + +//[4] NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] +//[4a] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] +//[5] Name ::= NameStartChar (NameChar)* +var nameStartChar = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/; //\u10000-\uEFFFF + +var nameChar = new RegExp("[\\-\\.0-9" + nameStartChar.source.slice(1, -1) + "\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"); +var tagNamePattern = new RegExp('^' + nameStartChar.source + nameChar.source + '*(?:\:' + nameStartChar.source + nameChar.source + '*)?$'); //var tagNamePattern = /^[a-zA-Z_][\w\-\.]*(?:\:[a-zA-Z_][\w\-\.]*)?$/ +//var handlers = 'resolveEntity,getExternalSubset,characters,endDocument,endElement,endPrefixMapping,ignorableWhitespace,processingInstruction,setDocumentLocator,skippedEntity,startDocument,startElement,startPrefixMapping,notationDecl,unparsedEntityDecl,error,fatalError,warning,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,comment,endCDATA,endDTD,endEntity,startCDATA,startDTD,startEntity'.split(',') +//S_TAG, S_ATTR, S_EQ, S_ATTR_NOQUOT_VALUE +//S_ATTR_SPACE, S_ATTR_END, S_TAG_SPACE, S_TAG_CLOSE + +var S_TAG = 0; //tag name offerring + +var S_ATTR = 1; //attr name offerring + +var S_ATTR_SPACE = 2; //attr name end and space offer + +var S_EQ = 3; //=space? + +var S_ATTR_NOQUOT_VALUE = 4; //attr value(no quot value only) + +var S_ATTR_END = 5; //attr value end and no space(quot end) + +var S_TAG_SPACE = 6; //(attr value end || tag end ) && (space offer) + +var S_TAG_CLOSE = 7; //closed el + +function XMLReader() {} + +XMLReader.prototype = { + parse: function (source, defaultNSMap, entityMap) { + var domBuilder = this.domBuilder; + domBuilder.startDocument(); + + _copy(defaultNSMap, defaultNSMap = {}); + + parse(source, defaultNSMap, entityMap, domBuilder, this.errorHandler); + domBuilder.endDocument(); + } +}; + +function parse(source, defaultNSMapCopy, entityMap, domBuilder, errorHandler) { + function fixedFromCharCode(code) { + // String.prototype.fromCharCode does not supports + // > 2 bytes unicode chars directly + if (code > 0xffff) { + code -= 0x10000; + var surrogate1 = 0xd800 + (code >> 10), + surrogate2 = 0xdc00 + (code & 0x3ff); + return String.fromCharCode(surrogate1, surrogate2); + } else { + return String.fromCharCode(code); + } + } + + function entityReplacer(a) { + var k = a.slice(1, -1); + + if (k in entityMap) { + return entityMap[k]; + } else if (k.charAt(0) === '#') { + return fixedFromCharCode(parseInt(k.substr(1).replace('x', '0x'))); + } else { + errorHandler.error('entity not found:' + a); + return a; + } + } + + function appendText(end) { + //has some bugs + if (end > start) { + var xt = source.substring(start, end).replace(/&#?\w+;/g, entityReplacer); + locator && position(start); + domBuilder.characters(xt, 0, end - start); + start = end; + } + } + + function position(p, m) { + while (p >= lineEnd && (m = linePattern.exec(source))) { + lineStart = m.index; + lineEnd = lineStart + m[0].length; + locator.lineNumber++; //console.log('line++:',locator,startPos,endPos) + } + + locator.columnNumber = p - lineStart + 1; + } + + var lineStart = 0; + var lineEnd = 0; + var linePattern = /.*(?:\r\n?|\n)|.*$/g; + var locator = domBuilder.locator; + var parseStack = [{ + currentNSMap: defaultNSMapCopy + }]; + var closeMap = {}; + var start = 0; + + while (true) { + try { + var tagStart = source.indexOf('<', start); + + if (tagStart < 0) { + if (!source.substr(start).match(/^\s*$/)) { + var doc = domBuilder.doc; + var text = doc.createTextNode(source.substr(start)); + doc.appendChild(text); + domBuilder.currentElement = text; + } + + return; + } + + if (tagStart > start) { + appendText(tagStart); + } + + switch (source.charAt(tagStart + 1)) { + case '/': + var end = source.indexOf('>', tagStart + 3); + var tagName = source.substring(tagStart + 2, end); + var config = parseStack.pop(); + + if (end < 0) { + tagName = source.substring(tagStart + 2).replace(/[\s<].*/, ''); //console.error('#@@@@@@'+tagName) + + errorHandler.error("end tag name: " + tagName + ' is not complete:' + config.tagName); + end = tagStart + 1 + tagName.length; + } else if (tagName.match(/\s + locator && position(tagStart); + end = parseInstruction(source, tagStart, domBuilder); + break; + + case '!': + // start) { + start = end; + } else { + //REFINE: 这里有可能sax回退,有位置错误风险 + appendText(Math.max(tagStart, start) + 1); + } + } +} + +function copyLocator(f, t) { + t.lineNumber = f.lineNumber; + t.columnNumber = f.columnNumber; + return t; +} +/** + * @see #appendElement(source,elStartEnd,el,selfClosed,entityReplacer,domBuilder,parseStack); + * @return end of the elementStartPart(end of elementEndPart for selfClosed el) + */ + + +function parseElementStartPart(source, start, el, currentNSMap, entityReplacer, errorHandler) { + var attrName; + var value; + var p = ++start; + var s = S_TAG; //status + + while (true) { + var c = source.charAt(p); + + switch (c) { + case '=': + if (s === S_ATTR) { + //attrName + attrName = source.slice(start, p); + s = S_EQ; + } else if (s === S_ATTR_SPACE) { + s = S_EQ; + } else { + //fatalError: equal must after attrName or space after attrName + throw new Error('attribute equal must after attrName'); + } + + break; + + case '\'': + case '"': + if (s === S_EQ || s === S_ATTR //|| s == S_ATTR_SPACE + ) { + //equal + if (s === S_ATTR) { + errorHandler.warning('attribute value must after "="'); + attrName = source.slice(start, p); + } + + start = p + 1; + p = source.indexOf(c, start); + + if (p > 0) { + value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer); + el.add(attrName, value, start - 1); + s = S_ATTR_END; + } else { + //fatalError: no end quot match + throw new Error('attribute value no end \'' + c + '\' match'); + } + } else if (s == S_ATTR_NOQUOT_VALUE) { + value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer); //console.log(attrName,value,start,p) + + el.add(attrName, value, start); //console.dir(el) + + errorHandler.warning('attribute "' + attrName + '" missed start quot(' + c + ')!!'); + start = p + 1; + s = S_ATTR_END; + } else { + //fatalError: no equal before + throw new Error('attribute value must after "="'); + } + + break; + + case '/': + switch (s) { + case S_TAG: + el.setTagName(source.slice(start, p)); + + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + s = S_TAG_CLOSE; + el.closed = true; + + case S_ATTR_NOQUOT_VALUE: + case S_ATTR: + case S_ATTR_SPACE: + break; + //case S_EQ: + + default: + throw new Error("attribute invalid close char('/')"); + } + + break; + + case '': + //end document + //throw new Error('unexpected end of input') + errorHandler.error('unexpected end of input'); + + if (s == S_TAG) { + el.setTagName(source.slice(start, p)); + } + + return p; + + case '>': + switch (s) { + case S_TAG: + el.setTagName(source.slice(start, p)); + + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + break; + //normal + + case S_ATTR_NOQUOT_VALUE: //Compatible state + + case S_ATTR: + value = source.slice(start, p); + + if (value.slice(-1) === '/') { + el.closed = true; + value = value.slice(0, -1); + } + + case S_ATTR_SPACE: + if (s === S_ATTR_SPACE) { + value = attrName; + } + + if (s == S_ATTR_NOQUOT_VALUE) { + errorHandler.warning('attribute "' + value + '" missed quot(")!!'); + el.add(attrName, value.replace(/&#?\w+;/g, entityReplacer), start); + } else { + if (currentNSMap[''] !== 'http://www.w3.org/1999/xhtml' || !value.match(/^(?:disabled|checked|selected)$/i)) { + errorHandler.warning('attribute "' + value + '" missed value!! "' + value + '" instead!!'); + } + + el.add(value, value, start); + } + + break; + + case S_EQ: + throw new Error('attribute value missed!!'); + } // console.log(tagName,tagNamePattern,tagNamePattern.test(tagName)) + + + return p; + + /*xml space '\x20' | #x9 | #xD | #xA; */ + + case '\u0080': + c = ' '; + + default: + if (c <= ' ') { + //space + switch (s) { + case S_TAG: + el.setTagName(source.slice(start, p)); //tagName + + s = S_TAG_SPACE; + break; + + case S_ATTR: + attrName = source.slice(start, p); + s = S_ATTR_SPACE; + break; + + case S_ATTR_NOQUOT_VALUE: + var value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer); + errorHandler.warning('attribute "' + value + '" missed quot(")!!'); + el.add(attrName, value, start); + + case S_ATTR_END: + s = S_TAG_SPACE; + break; + //case S_TAG_SPACE: + //case S_EQ: + //case S_ATTR_SPACE: + // void();break; + //case S_TAG_CLOSE: + //ignore warning + } + } else { + //not space + //S_TAG, S_ATTR, S_EQ, S_ATTR_NOQUOT_VALUE + //S_ATTR_SPACE, S_ATTR_END, S_TAG_SPACE, S_TAG_CLOSE + switch (s) { + //case S_TAG:void();break; + //case S_ATTR:void();break; + //case S_ATTR_NOQUOT_VALUE:void();break; + case S_ATTR_SPACE: + var tagName = el.tagName; + + if (currentNSMap[''] !== 'http://www.w3.org/1999/xhtml' || !attrName.match(/^(?:disabled|checked|selected)$/i)) { + errorHandler.warning('attribute "' + attrName + '" missed value!! "' + attrName + '" instead2!!'); + } + + el.add(attrName, attrName, start); + start = p; + s = S_ATTR; + break; + + case S_ATTR_END: + errorHandler.warning('attribute space is required"' + attrName + '"!!'); + + case S_TAG_SPACE: + s = S_ATTR; + start = p; + break; + + case S_EQ: + s = S_ATTR_NOQUOT_VALUE; + start = p; + break; + + case S_TAG_CLOSE: + throw new Error("elements closed character '/' and '>' must be connected to"); + } + } + + } //end outer switch + //console.log('p++',p) + + + p++; + } +} +/** + * @return true if has new namespace define + */ + + +function appendElement(el, domBuilder, currentNSMap) { + var tagName = el.tagName; + var localNSMap = null; //var currentNSMap = parseStack[parseStack.length-1].currentNSMap; + + var i = el.length; + + while (i--) { + var a = el[i]; + var qName = a.qName; + var value = a.value; + var nsp = qName.indexOf(':'); + + if (nsp > 0) { + var prefix = a.prefix = qName.slice(0, nsp); + var localName = qName.slice(nsp + 1); + var nsPrefix = prefix === 'xmlns' && localName; + } else { + localName = qName; + prefix = null; + nsPrefix = qName === 'xmlns' && ''; + } //can not set prefix,because prefix !== '' + + + a.localName = localName; //prefix == null for no ns prefix attribute + + if (nsPrefix !== false) { + //hack!! + if (localNSMap == null) { + localNSMap = {}; //console.log(currentNSMap,0) + + _copy(currentNSMap, currentNSMap = {}); //console.log(currentNSMap,1) + + } + + currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value; + a.uri = 'http://www.w3.org/2000/xmlns/'; + domBuilder.startPrefixMapping(nsPrefix, value); + } + } + + var i = el.length; + + while (i--) { + a = el[i]; + var prefix = a.prefix; + + if (prefix) { + //no prefix attribute has no namespace + if (prefix === 'xml') { + a.uri = 'http://www.w3.org/XML/1998/namespace'; + } + + if (prefix !== 'xmlns') { + a.uri = currentNSMap[prefix || '']; //{console.log('###'+a.qName,domBuilder.locator.systemId+'',currentNSMap,a.uri)} + } + } + } + + var nsp = tagName.indexOf(':'); + + if (nsp > 0) { + prefix = el.prefix = tagName.slice(0, nsp); + localName = el.localName = tagName.slice(nsp + 1); + } else { + prefix = null; //important!! + + localName = el.localName = tagName; + } //no prefix element has default namespace + + + var ns = el.uri = currentNSMap[prefix || '']; + domBuilder.startElement(ns, localName, tagName, el); //endPrefixMapping and startPrefixMapping have not any help for dom builder + //localNSMap = null + + if (el.closed) { + domBuilder.endElement(ns, localName, tagName); + + if (localNSMap) { + for (prefix in localNSMap) { + domBuilder.endPrefixMapping(prefix); + } + } + } else { + el.currentNSMap = currentNSMap; + el.localNSMap = localNSMap; //parseStack.push(el); + + return true; + } +} + +function parseHtmlSpecialContent(source, elStartEnd, tagName, entityReplacer, domBuilder) { + if (/^(?:script|textarea)$/i.test(tagName)) { + var elEndStart = source.indexOf('', elStartEnd); + var text = source.substring(elStartEnd + 1, elEndStart); + + if (/[&<]/.test(text)) { + if (/^script$/i.test(tagName)) { + //if(!/\]\]>/.test(text)){ + //lexHandler.startCDATA(); + domBuilder.characters(text, 0, text.length); //lexHandler.endCDATA(); + + return elEndStart; //} + } //}else{//text area + + + text = text.replace(/&#?\w+;/g, entityReplacer); + domBuilder.characters(text, 0, text.length); + return elEndStart; //} + } + } + + return elStartEnd + 1; +} + +function fixSelfClosed(source, elStartEnd, tagName, closeMap) { + //if(tagName in closeMap){ + var pos = closeMap[tagName]; + + if (pos == null) { + //console.log(tagName) + pos = source.lastIndexOf(''); + + if (pos < elStartEnd) { + //忘记闭合 + pos = source.lastIndexOf('', start + 4); //append comment source.substring(4,end)// + + + + + + + + + + + + + diff --git a/cx3-demo/project/cxdemo.android/app/build.gradle b/cx3-demo/project/cxdemo.android/app/build.gradle new file mode 100755 index 0000000..1c4ecd4 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/build.gradle @@ -0,0 +1,69 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger() + buildToolsVersion PROP_BUILD_TOOLS_VERSION + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + defaultConfig { + applicationId "cx3.blank.demo" + minSdkVersion PROP_MIN_SDK_VERSION + targetSdkVersion PROP_TARGET_SDK_VERSION + versionCode 1 + versionName "1.0" + } + + packagingOptions { + exclude 'META-INF/LICENSE' + } + + sourceSets.main { + manifest.srcFile "AndroidManifest.xml" + java.srcDirs "src" + res.srcDirs "res" + jniLibs.srcDirs = ["libs", "../../../../cx-framework3.1/cocos3-libs/cocos3-libso/build/app/intermediates/cmake/release/obj"] + assets.srcDirs = ['../../assets', '../../boot', '../../statics'] + } + + signingConfigs { + release { + if (project.hasProperty("RELEASE_STORE_FILE")) { + storeFile file(RELEASE_STORE_FILE) + storePassword RELEASE_STORE_PASSWORD + keyAlias RELEASE_KEY_ALIAS + keyPassword RELEASE_KEY_PASSWORD + } + } + } + + buildTypes { + release { + debuggable false + jniDebuggable false + renderscriptDebuggable false + minifyEnabled true + shrinkResources true + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + if (project.hasProperty("RELEASE_STORE_FILE")) { + signingConfig signingConfigs.release + } + } + + debug { + debuggable true + jniDebuggable true + renderscriptDebuggable true + } + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar','*.aar']) + implementation project(':libcc') + implementation 'com.amap.api:location:latest.integration' + // implementation 'com.android.support:appcompat-v7:28.0.0' +} diff --git a/cx3-demo/project/cxdemo.android/app/ic_launcher-web.png b/cx3-demo/project/cxdemo.android/app/ic_launcher-web.png new file mode 100644 index 0000000..ce18962 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/ic_launcher-web.png differ diff --git a/cx3-demo/project/cxdemo.android/app/libs/armeabi-v7a/libcocos.so b/cx3-demo/project/cxdemo.android/app/libs/armeabi-v7a/libcocos.so new file mode 100644 index 0000000..a2c474a Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/libs/armeabi-v7a/libcocos.so differ diff --git a/cx3-demo/project/cxdemo.android/app/proguard-rules.pro b/cx3-demo/project/cxdemo.android/app/proguard-rules.pro new file mode 100755 index 0000000..43fa8d1 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/proguard-rules.pro @@ -0,0 +1,50 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in E:\developSoftware\Android\SDK/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Proguard Cocos2d-x-lite for release +-keep public class com.cocos.** { *; } +-dontwarn com.cocos.** + +# Proguard Apache HTTP for release +-keep class org.apache.http.** { *; } +-dontwarn org.apache.http.** + +# Proguard okhttp for release +-keep class okhttp3.** { *; } +-dontwarn okhttp3.** + +-keep class okio.** { *; } +-dontwarn okio.** + +# Proguard Android Webivew for release. you can comment if you are not using a webview +-keep public class android.net.http.SslError +-keep public class android.webkit.WebViewClient + +-dontwarn android.webkit.WebView +-dontwarn android.net.http.SslError +-dontwarn android.webkit.WebViewClient + +# keep anysdk for release. you can comment if you are not using anysdk +-keep public class com.anysdk.** { *; } +-dontwarn com.anysdk.** + +# amapLocation +-keep class com.amap.api.location.**{*;} +-keep class com.amap.api.fence.**{*;} +-keep class com.loc.**{*;} +-keep class com.autonavi.aps.amapapi.model.**{*;} diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_pause.png b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_pause.png new file mode 100644 index 0000000..3e7dba8 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_pause.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_play.png b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_play.png new file mode 100644 index 0000000..09a8827 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_play.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_stop.png b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_stop.png new file mode 100644 index 0000000..3d7c554 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-hdpi/video_stop.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_pause.png b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_pause.png new file mode 100644 index 0000000..c54492e Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_pause.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_play.png b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_play.png new file mode 100644 index 0000000..7d4bf20 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_play.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_stop.png b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_stop.png new file mode 100644 index 0000000..1a762dd Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-mdpi/video_stop.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_pause.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_pause.png new file mode 100644 index 0000000..26d9bea Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_pause.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_play.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_play.png new file mode 100644 index 0000000..7ab07e8 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_play.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_stop.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_stop.png new file mode 100644 index 0000000..538fb40 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xhdpi/video_stop.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_pause.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_pause.png new file mode 100644 index 0000000..a0e960d Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_pause.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_play.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_play.png new file mode 100644 index 0000000..96acd68 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_play.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_stop.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_stop.png new file mode 100644 index 0000000..6caf8f0 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxhdpi/video_stop.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_pause.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_pause.png new file mode 100644 index 0000000..449f99f Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_pause.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_play.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_play.png new file mode 100644 index 0000000..62ab57e Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_play.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_stop.png b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_stop.png new file mode 100644 index 0000000..f396b83 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable-xxxhdpi/video_stop.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/drawable/launch_image.png b/cx3-demo/project/cxdemo.android/app/res/drawable/launch_image.png new file mode 100644 index 0000000..0ae93be Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/drawable/launch_image.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/layout/mask_view.xml b/cx3-demo/project/cxdemo.android/app/res/layout/mask_view.xml new file mode 100644 index 0000000..c697b6a --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/layout/mask_view.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/res/layout/video_action_view.xml b/cx3-demo/project/cxdemo.android/app/res/layout/video_action_view.xml new file mode 100644 index 0000000..02fab79 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/layout/video_action_view.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher.xml b/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..036d09b --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher_round.xml b/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..036d09b --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000..9582296 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_foreground.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_foreground.png new file mode 100644 index 0000000..2e79bdb Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_foreground.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_round.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000..2c56590 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher.png new file mode 100755 index 0000000..848b071 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_foreground.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_foreground.png new file mode 100644 index 0000000..2155669 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_foreground.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_round.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_round.png new file mode 100644 index 0000000..c6a9211 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher.png new file mode 100755 index 0000000..a217add Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_foreground.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000..ccd5971 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_foreground.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_round.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_round.png new file mode 100644 index 0000000..5b60421 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher.png new file mode 100755 index 0000000..f59c4c6 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_foreground.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000..dd9ff6b Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_foreground.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_round.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..b522742 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..21d34f0 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000..a16f0a1 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_round.png b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..ae2c675 Binary files /dev/null and b/cx3-demo/project/cxdemo.android/app/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/cx3-demo/project/cxdemo.android/app/res/values/ic_launcher_background.xml b/cx3-demo/project/cxdemo.android/app/res/values/ic_launcher_background.xml new file mode 100644 index 0000000..c5d5899 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/values/ic_launcher_background.xml @@ -0,0 +1,4 @@ + + + #FFFFFF + \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/res/values/strings.xml b/cx3-demo/project/cxdemo.android/app/res/values/strings.xml new file mode 100755 index 0000000..700608e --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/res/values/strings.xml @@ -0,0 +1,3 @@ + + cx-demo + diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/AppActivity.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/AppActivity.java new file mode 100755 index 0000000..e6e2600 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/AppActivity.java @@ -0,0 +1,49 @@ +package cx3.blank.demo; + +import android.graphics.Color; +import android.os.Build; +import android.os.Bundle; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; + +import com.cocos.lib.CocosActivity; + +import cx3.blank.sdk.JsIntf; + +public class AppActivity extends CocosActivity +{ + @Override + protected void onCreate(Bundle savedInstanceState) + { + super.onCreate(savedInstanceState); + if (!isTaskRoot()) + { + return; + } + + if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) + { + mFrameLayout.setFitsSystemWindows(false); + Window window = getWindow(); + window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS + | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); + window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR + | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); + window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); + window.setStatusBarColor(Color.TRANSPARENT); + window.setNavigationBarColor(Color.TRANSPARENT); + } + + app = this; + JsIntf.init(); + } + + public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] paramArrayOfInt) + { + PermsissionClass.onRequestPermissionsResult(requestCode, permissions, paramArrayOfInt); + } + +} diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/PermsissionClass.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/PermsissionClass.java new file mode 100644 index 0000000..27f5983 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/demo/PermsissionClass.java @@ -0,0 +1,106 @@ +package cx3.blank.demo; + +import android.content.Context; +import android.content.pm.PackageManager; +import android.os.Build; + +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class PermsissionClass +{ + private static int mapMngRequestCode = 100; + private static Map mapReq = new HashMap<>(); + + public interface PermsissionInterface + { + void checkPermissionCallback(int requestCode, boolean granted); + } + + public static int makeRequestCode() + { + return ++mapMngRequestCode; + } + + ///////检查是否有权限并申请 + public static void checkPermission(Context context, PermsissionInterface intf, int requestCode, String[] permissions) + { + PermsissionReq req = mapReq.get(requestCode); + if (req != null) + { + intf.checkPermissionCallback(requestCode, req.granted); + return; + } + if (Build.VERSION.SDK_INT < 23) + { + intf.checkPermissionCallback(requestCode, true); + return; + } + try + { + List needRequestPermissonList = new ArrayList<>(); + for (String perm : permissions) + { + if (context.getApplicationInfo().targetSdkVersion >= 23) + { + Method checkSelfMethod = context.getClass().getMethod("checkSelfPermission", String.class); + Method shouldShowRequestPermissionRationaleMethod = context.getClass().getMethod("shouldShowRequestPermissionRationale", String.class); + if ((Integer) checkSelfMethod.invoke(context, perm) != PackageManager.PERMISSION_GRANTED || (Boolean) shouldShowRequestPermissionRationaleMethod.invoke(context, perm)) + needRequestPermissonList.add(perm); + } +// else +// { +// if (PermissionChecker.checkSelfPermission(context, perm) != PackageManager.PERMISSION_GRANTED) +// needRequestPermissonList.add(perm); +// } + } + + if (needRequestPermissonList.size() == 0) + { + intf.checkPermissionCallback(requestCode, true); + return; + } + + req = new PermsissionReq(); + req.intf = intf; + req.granted = false; + mapReq.put(requestCode, req); + + String[] array = needRequestPermissonList.toArray(new String[needRequestPermissonList.size()]); + Method method = context.getClass().getMethod("requestPermissions", new Class[]{String[].class, int.class}); + method.invoke(context, array, requestCode); + + } catch (Throwable e) + { + } + } + + public static void onRequestPermissionsResult(int requestCode, String[] permissions, int[] paramArrayOfInt) + { + boolean granted = true; + for (int result : paramArrayOfInt) + { + if (result != PackageManager.PERMISSION_GRANTED) + { + granted = false; + break; + } + } + PermsissionReq req = mapReq.get(requestCode); + if (req != null) + { + req.granted = granted; + req.intf.checkPermissionCallback(requestCode, granted); + } + } + +} + +class PermsissionReq +{ + public PermsissionClass.PermsissionInterface intf; + public boolean granted; +} \ No newline at end of file diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/JsIntf.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/JsIntf.java new file mode 100644 index 0000000..f58e76c --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/JsIntf.java @@ -0,0 +1,26 @@ +package cx3.blank.sdk; + +import cx.NativeIntf; +import cx.NativeParams; +import cx3.blank.sdk.system.SystemIntf; +import cx3.blank.sdk.video.VideoIntf; + +public class JsIntf +{ + public static void init() + { + NativeIntf.setJsIntf(JsIntf::call); + } + + public static String call(NativeParams params) + { + String classname = params.classname; + if (classname.equals("system")) + return SystemIntf.ins().call(params); + + if (classname.equals("video")) + return VideoIntf.ins().call(params); + + return ""; + } +} diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/system/SystemIntf.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/system/SystemIntf.java new file mode 100644 index 0000000..a482da8 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/system/SystemIntf.java @@ -0,0 +1,63 @@ +package cx3.blank.sdk.system; + +import android.Manifest; +import android.content.Intent; +import android.net.Uri; + +import com.cocos.lib.CocosActivity; + +import cx.NativeParams; +import cx3.blank.demo.PermsissionClass; + +public class SystemIntf +{ + private static SystemIntf s_sharedSystemIntf = null; + public static SystemIntf ins() + { + if (s_sharedSystemIntf == null) + s_sharedSystemIntf = new SystemIntf(); + return s_sharedSystemIntf; + } + + public String call(NativeParams params) + { + String fname = params.fname; + if (fname.equals("callPhone")) + checkPermission(fname, params); + + return ""; + } + + private final int permissionRequestCode = PermsissionClass.makeRequestCode(); + private final String[] permissions = { + Manifest.permission.CALL_PHONE + }; + private void checkPermission(String fname, NativeParams params) + { + PermsissionClass.checkPermission(CocosActivity.app, new PermsissionClass.PermsissionInterface() + { + @Override + public void checkPermissionCallback(int requestCode, boolean granted) + { + if (granted) + { + if (fname.equals("callPhone")) + callPhone(params.at(0).asString()); + } + } + }, permissionRequestCode, permissions); + } + + private void callPhone(String phone) + { + Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phone)); + try + { + CocosActivity.app.startActivity(intent); + } + catch (SecurityException e) + { + + } + } +} diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoIntf.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoIntf.java new file mode 100644 index 0000000..4c2b3a9 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoIntf.java @@ -0,0 +1,184 @@ +package cx3.blank.sdk.video; + +import android.view.View; +import android.widget.FrameLayout; + +import com.cocos.lib.CocosActivity; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; + +import cx.NativeParams; +import cx.mask.MaskIntf; + +public class VideoIntf +{ + private static VideoIntf s_sharedVideoIntf = null; + public static VideoIntf ins() + { + if (s_sharedVideoIntf == null) + s_sharedVideoIntf = new VideoIntf(); + return s_sharedVideoIntf; + } + + private Map videoMap = new HashMap(); + private Map> taskMap = new HashMap(); + + //创建video是在UI线程,线程未完成时立即调用其他方法就取不到video,因此用队列处理请求,每一个video一个任务队列 + public String call(NativeParams params) + { + String videoName = params.at(0).asString(); + ArrayList taskList = taskMap.get(videoName); + if (taskList == null) + { + taskList = new ArrayList(); + taskMap.put(videoName, taskList); + } + taskList.add(params); + executeTask(taskList); + return ""; + } + + private void executeTask(ArrayList taskList) + { + if (taskList.size() == 0) + return; + CocosActivity.app.runOnUiThread(new Runnable() + { + @Override + public void run() + { + while (taskList.size() > 0) + { + NativeParams params = taskList.remove(0); + callInternal(params); + } + } + }); + } + + public String callInternal(NativeParams params) + { + String fname = params.fname; + + //删除指定maskView中的所有videoView + if (fname.equals("removeInMask")) + { + String maskName = params.at(0).asString(); + removeInMask(maskName); + return ""; + } + + String videoName = params.at(0).asString(); + if (fname.equals("createInMask")) + { + String maskName = params.at(1).asString(); + float rectX = params.at(2).asFloat(); + float rectY = params.at(3).asFloat(); + float rectW = params.at(4).asFloat(); + float rectH = params.at(5).asFloat(); + createInMask(videoName, maskName, rectX, rectY, rectW, rectH); + return ""; + } + + else if (fname.equals("create")) + { + float rectX = params.at(1).asFloat(); + float rectY = params.at(2).asFloat(); + float rectW = params.at(3).asFloat(); + float rectH = params.at(4).asFloat(); + create(videoName, rectX, rectY, rectW, rectH); + return ""; + } + + VideoView videoView = videoMap.get(videoName); + if (videoView == null) + return ""; + + if (fname.equals("play")) + videoView.play(params.at(1).asString()); + + else if (fname.equals("setRoundRadius")) + videoView.setRoundRadius(params.at(1).asInt()); + + else if (fname.equals("setPosition")) + videoView.setPosition(Math.round(params.at(1).asFloat()), Math.round(params.at(2).asFloat())); + + else if (fname.equals("setFullScreen")) + videoView.setFullScreen(params.at(1).asBool()); + + else if (fname.equals("pause")) + { + videoView.pausePlay(); + if (params.at(1).asBool()) + videoView.setVisibility(View.INVISIBLE); + } + + else if (fname.equals("resume")) + { + videoView.startPlay(); + if (videoView.getVisibility() == View.INVISIBLE) + videoView.setVisibility(View.VISIBLE); + } + + else if (fname.equals("seekToTime")) + videoView.seekTo(params.at(1).asInt()); //seconds + + else if (fname.equals("lockSeek")) + videoView.lockSeek(params.at(1).asBool()); + + else if (fname.equals("showBar")) + videoView.showBar(params.at(1).asBool()); + + else if (fname.equals("removeVideo")) + { + videoMap.remove(videoName); + taskMap.remove(videoName); + videoView.close(); + } + + return ""; + } + + public void createInMask(String videoName, String maskName, final float rectX, final float rectY, final float rectW, final float rectH) + { + if (videoMap.get(videoName) != null) + return; + + FrameLayout.LayoutParams lParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT); + lParams.leftMargin = Math.round(rectX); + lParams.topMargin = Math.round(rectY); + lParams.width = Math.round(rectW); + lParams.height = Math.round(rectH); + + VideoView videoView = new VideoView(lParams); + if (maskName != null) + MaskIntf.ins().addNativeView(maskName, videoView, videoName, lParams); + else + CocosActivity.app.getFrameLayout().addView(videoView, 0, lParams); + + videoMap.put(videoName, videoView); + } + + public void create(String videoName, float rectX, float rectY, float rectW, float rectH) + { + createInMask(videoName, null, rectX, rectY, rectW, rectH); + } + + public void removeInMask(final String maskName) + { + for (Iterator> it = videoMap.entrySet().iterator(); it.hasNext(); ) + { + Entry item = it.next(); + String videoName = item.getKey(); + VideoView videoView = item.getValue(); + it.remove(); + taskMap.remove(videoName); + videoView.close(); + } + } + +} diff --git a/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoView.java b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoView.java new file mode 100644 index 0000000..e66cca0 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/app/src/cx3/blank/sdk/video/VideoView.java @@ -0,0 +1,383 @@ +package cx3.blank.sdk.video; + +import android.app.Activity; +import android.app.Service; +import android.content.pm.ActivityInfo; +import android.content.res.AssetFileDescriptor; +import android.graphics.Canvas; +import android.graphics.Point; +import android.graphics.Rect; +import android.graphics.RectF; +import android.media.AudioManager; +import android.media.MediaPlayer; +import android.net.Uri; +import android.opengl.GLSurfaceView; +import android.view.SurfaceHolder; +import android.widget.FrameLayout; +import android.widget.MediaController; + +import com.cocos.lib.CocosActivity; + +import cx.sys.SysIntf; + +public class VideoView extends GLSurfaceView implements SurfaceHolder.Callback, + MediaController.MediaPlayerControl, + MediaPlayer.OnPreparedListener, + MediaPlayer.OnErrorListener +{ + public static final int CB_COMPLETED = 1; + public static final int CB_ERROR = 2; + + private Rect layoutRect = new Rect(); + private String url = null; + private boolean isFullScreen = false; + private boolean isMute = false; + private boolean paused = false; + private boolean lockSeek = false; + private int roundRadius = 0; + + private Activity activity; + private MediaPlayer mediaPlayer; + private MediaController controller; + private VideoViewInterface videoViewInterface = null; + private int mCurrentBufferPercentage = 0; + private static final String assetRoot = "@assets/"; + + public VideoView(FrameLayout.LayoutParams lParams) + { + super(CocosActivity.app, null); + this.activity = CocosActivity.app; + + layoutRect.left = lParams.leftMargin; + layoutRect.top = lParams.topMargin; + layoutRect.right = lParams.width; + layoutRect.bottom = lParams.height; + + getHolder().addCallback(this); + setKeepScreenOn(true); + setFocusable(true); + setFocusableInTouchMode(true); + + mediaPlayer = new MediaPlayer(); + mediaPlayer.setOnPreparedListener(this); + mediaPlayer.setOnBufferingUpdateListener(bufferingUpdateListener); + mediaPlayer.setOnCompletionListener(completionListener); + + mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); + mediaPlayer.setScreenOnWhilePlaying(true); + + //todo: controller ui + controller = new MediaController(CocosActivity.app); + controller.setAnchorView((FrameLayout)this.getParent()); + + //todo: video mask +// setWillNotDraw(false); + } + +// @Override +// public void draw(Canvas canvas) +// { +// canvas.clipRect(new RectF(50, 50, 100, 100)); +// super.draw(canvas); +// } + + public void setPlayCallback(VideoViewInterface videoViewInterface) + { + this.videoViewInterface = videoViewInterface; + } + + public interface VideoViewInterface + { + void callback(int flag, String value); + } + + public void play(String url) + { + try + { + if (this.url != null) + { + mediaPlayer.pause(); + mediaPlayer.reset(); + } + this.url = url; + if (url.startsWith(assetRoot)) + { + AssetFileDescriptor assetFileDescriptor = activity.getAssets().openFd(url.substring(assetRoot.length())); + mediaPlayer.setDataSource(assetFileDescriptor.getFileDescriptor(), assetFileDescriptor.getStartOffset(), assetFileDescriptor.getLength()); + } + /* + else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && url.charAt(0) == '/') + { + Uri uri = FileProvider.getUriForFile(activity, activity.getPackageName() + ".fileProvider", new File(url)); + mediaPlayer.setDataSource(activity, uri); + } + */ + else if (url.startsWith("http")) + mediaPlayer.setDataSource(activity, Uri.parse(url)); + else + { + AssetFileDescriptor assetFileDescriptor = activity.getAssets().openFd(url); + mediaPlayer.setDataSource(assetFileDescriptor.getFileDescriptor(), assetFileDescriptor.getStartOffset(), assetFileDescriptor.getLength()); + } + + mediaPlayer.prepareAsync(); + } + catch (Exception e) + { + e.printStackTrace(); + } + } + + public void close() + { + if (mediaPlayer != null) + { + mediaPlayer.stop(); + mediaPlayer.reset(); + mediaPlayer.release(); + mediaPlayer = null; + } + FrameLayout parent = (FrameLayout)getParent(); + parent.removeView(this); + } + + + public void setFullScreen(boolean fullScreen) + { + if (isFullScreen == fullScreen) + return; + isFullScreen = fullScreen; + updateLayout(); + } + + public void updateLayout() + { + if (isFullScreen) + { + Point screenSize = SysIntf.getScreenSize(); + FrameLayout.LayoutParams lParams = (FrameLayout.LayoutParams) this.getLayoutParams(); + lParams.leftMargin = 0; + lParams.topMargin = 0; + lParams.width = screenSize.y; + lParams.height = screenSize.x; + this.setLayoutParams(lParams); +// CocosActivity.app.getFrameLayout().addView(this, lParams); +// CocosActivity.app.setRequestedOrientation(params.fullScreen ? ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE : ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); + CocosActivity.app.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); + } + else + { + FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams) this.getLayoutParams(); + layoutParams.leftMargin = this.layoutRect.left; + layoutParams.topMargin = this.layoutRect.top; + layoutParams.width = this.layoutRect.right; + layoutParams.height = this.layoutRect.bottom; + this.setLayoutParams(layoutParams); + } + } + + public void setPosition(int x, int y) + { + layoutRect.left = x; + layoutRect.top = y; + if (!isFullScreen) + { + FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams) this.getLayoutParams(); + layoutParams.leftMargin = x; + layoutParams.topMargin = y; + this.setLayoutParams(layoutParams); + } + } + + public void setRoundRadius(int radius) + { + this.roundRadius = radius; + } + + public void seekToTime(int seconds) + { + + } + + public void lockSeek(boolean value) + { + this.lockSeek = value; + } + + public void showBar(boolean value) + { +// playerBar = new MediaPlayerBar(this); + } + + public void setMute(boolean mute) + { + if (this.isMute == mute) + return; + this.isMute = mute; + if (mediaPlayer == null) + return; + if (mute) + mediaPlayer.setVolume(0, 0); + else + { + AudioManager audioManager = (AudioManager)activity.getSystemService(Service.AUDIO_SERVICE); + int current = audioManager.getStreamVolume( AudioManager.STREAM_MUSIC ); + mediaPlayer.setVolume(current, current); + } + } + + public void startPlay() + { + this.paused = false; + if (mediaPlayer != null) + mediaPlayer.start(); + } + + public void pausePlay() + { + this.paused = true; + if (mediaPlayer != null) + mediaPlayer.pause(); + } + + @Override + public void start() + { + if (mediaPlayer != null) + mediaPlayer.start(); + } + + public void stop() + { + if (mediaPlayer != null) + mediaPlayer.stop(); + } + + @Override + public void pause() + { + if (mediaPlayer != null) + mediaPlayer.pause(); + } + + @Override + public int getDuration() + { + return mediaPlayer != null ? mediaPlayer.getDuration() : 0; + } + + @Override + public int getCurrentPosition() + { + return mediaPlayer != null ? mediaPlayer.getCurrentPosition() : 0; + } + + @Override + public void seekTo(int pos) + { + if (mediaPlayer != null) + mediaPlayer.seekTo(pos); + } + + @Override + public boolean isPlaying() + { + return mediaPlayer != null && mediaPlayer.isPlaying(); + } + + @Override + public int getBufferPercentage() + { + return mCurrentBufferPercentage; + } + + @Override + public boolean canPause() + { + return true; + } + + @Override + public boolean canSeekBackward() + { + return !lockSeek; + } + + @Override + public boolean canSeekForward() + { + return !lockSeek; + } + + @Override + public int getAudioSessionId() + { + return mediaPlayer.getAudioSessionId(); + } + + @Override + public void onPrepared(MediaPlayer mediaPlayer) + { + if (mediaPlayer != null) + { + this.updateLayout(); + mediaPlayer.start(); + } + } + + @Override + public boolean onError(MediaPlayer mediaPlayer, int what, int extra) + { + if (videoViewInterface != null) + videoViewInterface.callback(CB_ERROR, null); + return false; + } + + private MediaPlayer.OnBufferingUpdateListener bufferingUpdateListener = new MediaPlayer.OnBufferingUpdateListener() + { + public void onBufferingUpdate(MediaPlayer mp, int percent) + { + mCurrentBufferPercentage = percent; + } + }; + + private MediaPlayer.OnCompletionListener completionListener = new MediaPlayer.OnCompletionListener() + { + public void onCompletion(MediaPlayer mp) + { + if (videoViewInterface != null) + videoViewInterface.callback(CB_COMPLETED, null); + } + }; + + @Override + public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) + { + if (mediaPlayer != null) + mediaPlayer.setDisplay(holder); + } + + @Override + public void surfaceCreated(SurfaceHolder holder) + { + //返回至前台时继续播放 + if (mediaPlayer != null) + { + mediaPlayer.setDisplay(holder); + if (!paused) + mediaPlayer.start(); + } + } + + @Override + public void surfaceDestroyed(SurfaceHolder holder) + { + if (mediaPlayer == null) + return; + //切换至后台时暂停 + if (mediaPlayer.isPlaying()) + mediaPlayer.pause(); + } + +} diff --git a/cx3-demo/project/cxdemo.android/build.gradle b/cx3-demo/project/cxdemo.android/build.gradle new file mode 100755 index 0000000..a8d0fcf --- /dev/null +++ b/cx3-demo/project/cxdemo.android/build.gradle @@ -0,0 +1,30 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + + repositories { + google() + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:3.2.0' + + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + jcenter() + flatDir { + dirs 'libs' + } + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/cx3-demo/project/cxdemo.android/gradle.properties b/cx3-demo/project/cxdemo.android/gradle.properties new file mode 100755 index 0000000..30fb49a --- /dev/null +++ b/cx3-demo/project/cxdemo.android/gradle.properties @@ -0,0 +1,26 @@ +android.injected.testOnly=false + +# Android SDK version that will be used as the compile project +PROP_COMPILE_SDK_VERSION=28 + +# Android SDK version that will be used as the earliest version of android this application can run on +PROP_MIN_SDK_VERSION=21 + +# Android SDK version that will be used as the latest version of android this application has been tested on +PROP_TARGET_SDK_VERSION=27 + +# Android Build Tools version that will be used as the compile project +PROP_BUILD_TOOLS_VERSION=28.0.2 + +# List of CPU Archtexture to build that application with +# Available architextures (armeabi-v7a | arm64-v8a | x86) +# To build for multiple architexture, use the `:` between them +# Example - PROP_APP_ABI=armeabi-v7a +PROP_APP_ABI=armeabi-v7a + +# fill in sign information for release mode +RELEASE_STORE_FILE=/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/tools/keystore/debug.keystore +RELEASE_STORE_PASSWORD=123456 +RELEASE_KEY_ALIAS=debug_keystore +RELEASE_KEY_PASSWORD=123456 + diff --git a/cx3-demo/project/cxdemo.android/gradle/wrapper/gradle-wrapper.properties b/cx3-demo/project/cxdemo.android/gradle/wrapper/gradle-wrapper.properties new file mode 100755 index 0000000..46f17a9 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Fri Oct 27 10:18:28 CST 2017 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-all.zip diff --git a/cx3-demo/project/cxdemo.android/gradlew b/cx3-demo/project/cxdemo.android/gradlew new file mode 100755 index 0000000..91a7e26 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/cx3-demo/project/cxdemo.android/gradlew.bat b/cx3-demo/project/cxdemo.android/gradlew.bat new file mode 100755 index 0000000..8a0b282 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/cx3-demo/project/cxdemo.android/libcc/AndroidManifest.xml b/cx3-demo/project/cxdemo.android/libcc/AndroidManifest.xml new file mode 100644 index 0000000..f447f67 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/libcc/AndroidManifest.xml @@ -0,0 +1,4 @@ + + + + diff --git a/cx3-demo/project/cxdemo.android/libcc/build.gradle b/cx3-demo/project/cxdemo.android/libcc/build.gradle new file mode 100644 index 0000000..ea701f4 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/libcc/build.gradle @@ -0,0 +1,34 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger() + + defaultConfig { + minSdkVersion PROP_MIN_SDK_VERSION + targetSdkVersion PROP_TARGET_SDK_VERSION + versionCode 1 + versionName "1.0" + } + + sourceSets.main { + java.srcDir "../../../../cx-framework3.1/cocos3-libs/cocos3-libcc/src" + res.srcDirs "../../../../cx-framework3.1/cocos3-libs/cocos3-libcc/res" + jniLibs.srcDirs = ["../../../../cx-framework3.1/cocos3-libs/cocos3-libcc/libs"] + manifest.srcFile "AndroidManifest.xml" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation fileTree(include: ['*.jar'], dir: '../../../../cx-framework3.1/cocos3-libs/cocos3-libcc/libs') +} diff --git a/cx3-demo/project/cxdemo.android/libcc/proguard-rules.pro b/cx3-demo/project/cxdemo.android/libcc/proguard-rules.pro new file mode 100644 index 0000000..8029d54 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/libcc/proguard-rules.pro @@ -0,0 +1,10 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in E:\developSoftware\Android\SDK/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: diff --git a/cx3-demo/project/cxdemo.android/local.properties b/cx3-demo/project/cxdemo.android/local.properties new file mode 100644 index 0000000..a2a5e61 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/local.properties @@ -0,0 +1,9 @@ +## This file must *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. +# +# Location of the SDK. This is only used by Gradle. +# For customization when using a Version Control System, please read the +# header note. +#Sun Aug 02 14:51:16 CST 2020 +ndk.dir=/Users/blank/Library/Android/sdk/ndk-bundle +sdk.dir=/Users/blank/Library/Android/sdk diff --git a/cx3-demo/project/cxdemo.android/settings.gradle b/cx3-demo/project/cxdemo.android/settings.gradle new file mode 100755 index 0000000..6b014b9 --- /dev/null +++ b/cx3-demo/project/cxdemo.android/settings.gradle @@ -0,0 +1,2 @@ +include ':app' +include ':libcc' diff --git a/cx3-demo/project/cxdemo.ios/Classes/jsIntf-ios.mm b/cx3-demo/project/cxdemo.ios/Classes/jsIntf-ios.mm new file mode 100644 index 0000000..fbabf39 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/jsIntf-ios.mm @@ -0,0 +1,39 @@ +#include "cxCreator.h" + +//#include +//#include "amapLocationIntf.h" +#include "systemIntf.h" +#include "videoIntf.h" + + +void vendorSdkInit(std::string classname); + +NativeIntfClass* createAppNativeClass(std::string classname) +{ + vendorSdkInit(classname); + +// if (classname == "amapLocation") +// return AmapLocationIntf::ins(); + + if (classname == "system") + return SystemIntf::ins(); + + if (classname == "video") + return VideoIntf::ins(); + + return nullptr; +} + +static bool vendorSdkInited = false; +void vendorSdkInit(std::string classname) +{ + if (vendorSdkInited) + return; + vendorSdkInited = true; + + //[AMapServices sharedServices].apiKey = @"33492236ca1ace0d029c93755fa4d6d0"; +} + + + + diff --git a/cx3-demo/project/cxdemo.ios/Classes/jsIntf-mac.mm b/cx3-demo/project/cxdemo.ios/Classes/jsIntf-mac.mm new file mode 100644 index 0000000..9fee9ea --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/jsIntf-mac.mm @@ -0,0 +1,10 @@ +#include "cxCreator.h" + +NativeIntfClass* createAppNativeClass(std::string classname) +{ + return nullptr; +} + + + + diff --git a/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.h b/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.h new file mode 100644 index 0000000..0f18915 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.h @@ -0,0 +1,16 @@ + +#pragma once + +#include "cxDefine.h" + +class SystemIntf : public NativeIntfClass +{ +public: + static SystemIntf* ins(); + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback) override; + +private: + + DataCallback dataCallback; +}; + diff --git a/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.mm b/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.mm new file mode 100644 index 0000000..f52dafd --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/system/systemIntf.mm @@ -0,0 +1,24 @@ + +#include "systemIntf.h" +#include "AppController.h" + +static SystemIntf* s_sharedSystemIntf = nullptr; +SystemIntf* SystemIntf::ins() +{ + if (!s_sharedSystemIntf) + s_sharedSystemIntf = new SystemIntf(); + return s_sharedSystemIntf; +} + +std::string SystemIntf::call(std::string fname, cc::ValueVector params, const DataCallback& callback) +{ + // callPhone(std::string num); + if (fname == "callPhone") + { + NSString* strNum = [[NSString alloc] initWithUTF8String:params.at(0).asString().c_str()]; + NSMutableString* msNum = [[NSMutableString alloc] initWithFormat:@"tel:%@", strNum]; + [[UIApplication sharedApplication] openURL:[NSURL URLWithString: msNum] options:@{} completionHandler:nil]; + } + + return ""; +} diff --git a/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.h b/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.h new file mode 100644 index 0000000..e7a1850 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.h @@ -0,0 +1,18 @@ + + +#import + +@interface VideoView : UIView + +-(void) setPosition:(float)left top:(float)top; +-(void) play:(NSString*)url listenProgress:(bool)listenProgress; +-(void) pause; +-(void) resume; +-(void) close; +-(void) setFullScreen:(bool)value; +-(void) seekToTime:(int)seconds; +-(void) showBar:(bool)value; +-(void) lockSeek:(bool)value; + +@end + diff --git a/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.mm b/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.mm new file mode 100644 index 0000000..5ce171c --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/video/videoImpl.mm @@ -0,0 +1,413 @@ + +#import "videoImpl.h" + +#import +#import "AppController.h" +#import "videoIntf.h" + +@implementation VideoView +{ + UIViewController* contentController; + + //contentController 包含以下内容 + AVPlayerViewController* moviePlayer; + UIView* tapView; + UIView* actionView; + + //actionView 包含以下内容 + UILabel* lblTimelen; + UILabel* lblTimelenTotal; + UIButton* btnPause; + UIButton* btnResume; + UIButton* btnClose; + UISlider* slider; + + bool defaultShowBar; //默认是否显示控制栏,默认false + bool sliderTouchDown; + bool seekDisabled; + + int currTime; + int priorTime; + bool playing; + + NSTimer* timer; +} + +-(id) initWithFrame:(CGRect)frame +{ + [super initWithFrame:frame]; + + CGRect rect = CGRectMake(0, 0, frame.size.width, frame.size.height); + + moviePlayer = [[AVPlayerViewController alloc] init]; + moviePlayer.showsPlaybackControls = NO; + moviePlayer.view.frame = rect; + + contentController = [[UIViewController alloc] init]; + contentController.view.frame = rect; + [contentController addChildViewController:moviePlayer]; + [contentController.view addSubview:moviePlayer.view]; + [self addSubview:contentController.view]; + + self.userInteractionEnabled = false; + + moviePlayer.view.backgroundColor = [UIColor colorWithRed:0.01f green:0.01f blue:0.01f alpha:1.0f]; + + return self; +} + +-(void) setPosition:(float)left top:(float)top +{ + [self setCenter: CGPointMake(left + self.bounds.size.width/2, top + self.bounds.size.height/2)]; +} + +-(void) setFullScreen:(bool)value +{ + if (value) + { + [AppController.ins addView:contentController.view]; + [AppController.ins.rootViewController setBarHideStatus:true]; + if (!defaultShowBar) + [self showBar:true]; + + //获取视频宽度尺寸 + CGSize videoSize = CGSizeZero; + NSArray *array = moviePlayer.player.currentItem.tracks; + for (AVPlayerItemTrack* track in array) + { + if ([track.assetTrack.mediaType isEqualToString:AVMediaTypeVideo]) + { + videoSize = track.assetTrack.naturalSize; + break; + } + } + + //如果宽大于高,自动横屏 + CGSize screen = UIScreen.mainScreen.bounds.size; + if (videoSize.width > videoSize.height) + { + [self updateViewSize:CGRectMake(0,0, screen.height, screen.width)]; + contentController.view.center = CGPointMake(screen.width/2, screen.height/2); + CGAffineTransform transform = CGAffineTransformIdentity; + transform = CGAffineTransformRotate(transform, M_PI_2); + contentController.view.transform = transform; + } + else + { + [self updateViewSize:UIScreen.mainScreen.bounds]; + contentController.view.center = CGPointMake(screen.width/2, screen.height/2); + } + } + else + { + [AppController.ins.rootViewController setBarHideStatus:false]; + CGAffineTransform transform = CGAffineTransformIdentity; + transform = CGAffineTransformRotate(transform, 0); + contentController.view.transform = transform; + [self addSubview:contentController.view]; + [self updateViewSize:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)]; + contentController.view.center = CGPointMake(self.frame.size.width/2, self.frame.size.height/2); + if (!defaultShowBar) + [self showBar:false]; + } +} + +-(void) updateViewSize:(CGRect)rect +{ + contentController.view.frame = rect; + moviePlayer.view.frame = CGRectMake(0, 0, rect.size.width, rect.size.height); + tapView.frame = CGRectMake(0, 0, rect.size.width, rect.size.height); + actionView.frame = CGRectMake(0, rect.size.height-40, rect.size.width, 40); + + int d = rect.size.width*0.1f; + btnClose.frame = CGRectMake(d-40, 0, 40, 40); + btnPause.frame = CGRectMake(rect.size.width-d, 0, 40, 40); + btnResume.frame = CGRectMake(rect.size.width-d, 0, 40, 40); + lblTimelen.frame = CGRectMake(d, 0, 60, 40); + lblTimelenTotal.frame = CGRectMake(rect.size.width-d-60, 0, 60, 40); + slider.frame = CGRectMake(d+70, 15, rect.size.width-d-70 - d-70, 10); +} + +-(void) createBarView +{ + if (actionView) + return; + + //点击层 + tapView = [[UIView alloc] init]; + tapView.backgroundColor = [UIColor colorWithRed:1.0 green:0 blue:0 alpha:0.0f]; + tapView.userInteractionEnabled = YES; + [tapView addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(movieClick)]]; + + //操作栏 + actionView = [[UIView alloc] init]; + actionView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.6f]; + + //进度条 + slider = [[UISlider alloc] init]; + slider.minimumTrackTintColor = [UIColor whiteColor]; + slider.maximumTrackTintColor = [UIColor grayColor]; + slider.minimumValue = 1; + slider.maximumValue = 10000; + slider.enabled = !seekDisabled; + [slider addTarget:self action:@selector(onSliderValueChanged) forControlEvents:UIControlEventValueChanged]; + [slider addTarget:self action:@selector(onSliderTouchDown) forControlEvents:UIControlEventTouchDown]; + [slider addTarget:self action:@selector(onSliderTouchUp) forControlEvents:UIControlEventTouchUpInside]; + [slider addTarget:self action:@selector(onSliderTouchUp) forControlEvents:UIControlEventTouchUpOutside]; + + //当前播放时间 + lblTimelen = [[UILabel alloc] init]; + lblTimelen.text = @""; + lblTimelen.font = [UIFont fontWithName:@"Helvetica-Bold" size:14]; + lblTimelen.textColor = [UIColor colorWithRed:200/255.0 green:200/255.0 blue:200/255.0 alpha:1]; + lblTimelen.textAlignment = NSTextAlignmentRight; + + //总时长 + lblTimelenTotal = [[UILabel alloc] init]; + lblTimelenTotal.text = @"00:00"; + lblTimelenTotal.font = [UIFont fontWithName:@"Helvetica-Bold" size:14]; + lblTimelenTotal.textColor = [UIColor colorWithRed:200/255.0 green:200/255.0 blue:200/255.0 alpha:1]; + lblTimelenTotal.textAlignment = NSTextAlignmentLeft; + + //关闭按钮 + btnClose = [self createButton:@"statics/video_stop.png"]; + [btnClose addTarget:self action:@selector(closeClick) forControlEvents:UIControlEventTouchUpInside]; + + //暂停按钮 + btnPause = [self createButton:@"statics/video_pause.png"]; + [btnPause addTarget:self action:@selector(pause) forControlEvents:UIControlEventTouchUpInside]; + + //继续按钮 + btnResume = [self createButton:@"statics/video_play.png"]; + [btnResume addTarget:self action:@selector(resume) forControlEvents:UIControlEventTouchUpInside]; + btnResume.hidden = YES; + + [actionView addSubview:slider]; + [actionView addSubview:lblTimelen]; + [actionView addSubview:lblTimelenTotal]; + [actionView addSubview:btnClose]; + [actionView addSubview:btnPause]; + [actionView addSubview:btnResume]; + + [contentController.view addSubview:tapView]; + [contentController.view addSubview:actionView]; + + [self updateViewSize:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)]; +} + +-(void) play:(NSString*)url listenProgress:(bool)listenProgress; +{ + currTime = 0; + playing = true; + + if (moviePlayer.player) + [moviePlayer.player release]; + + if ([[url substringToIndex:4] caseInsensitiveCompare:@"http"] == NSOrderedSame) + { + moviePlayer.player = [AVPlayer playerWithURL:[NSURL URLWithString:url]]; + } + else //from statics + { + NSString* fileName = [url substringToIndex:url.length-4]; + NSString* filePath = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"statics/%@", fileName] ofType:@".mp4"]; + moviePlayer.player = [AVPlayer playerWithURL:[NSURL fileURLWithPath:filePath]]; + } + [moviePlayer.player play]; + + if (listenProgress) + timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateClock:) userInfo:nil repeats:YES]; +} + +-(void) seekToTime:(int)seconds +{ + if (moviePlayer) + [moviePlayer.player seekToTime:CMTimeMake(seconds*10000, 10000) toleranceBefore:kCMTimeZero toleranceAfter:kCMTimeZero]; +} + +-(void) onSliderTouchDown +{ + sliderTouchDown = true; +} + +-(void) onSliderTouchUp +{ + sliderTouchDown = false; +} + +-(void) onSliderValueChanged +{ + int value = round(slider.value); + int total = round(moviePlayer.player.currentItem.duration.value/moviePlayer.player.currentItem.duration.timescale); + int curr = round((double)value/10000.0f*(double)total); + int delta = priorTime - curr; + if (delta >= 1 || delta <= -1) + { + priorTime = curr; + [self seekToTime:curr]; + lblTimelen.text = [self formatTime:curr]; + } +} + +-(void) updateClock:(NSTimer *)timer +{ + if (!playing) + return; + int total = round(moviePlayer.player.currentItem.duration.value/moviePlayer.player.currentItem.duration.timescale); + if (total <= 0) + return; + int curr = round(moviePlayer.player.currentTime.value/moviePlayer.player.currentTime.timescale); + //NSLog(@"%lld, %d, %d", moviePlayer.player.currentTime.value, moviePlayer.player.currentTime.timescale, curr); + if (actionView != NULL && !sliderTouchDown) + { + lblTimelen.text = [self formatTime:curr]; + if ([lblTimelenTotal.text isEqualToString:@"00:00"]) + lblTimelenTotal.text = [self formatTime:total]; + [slider setValue:round((double)curr/(double)total*10000.0f)]; + } + if (curr > currTime) + currTime = curr; + + VideoIntf::ins()->callJs(8, std::to_string(currTime)); + + if (curr >= total) + [self videoFinished]; +} + +-(NSString*) formatTime:(double)d +{ + int c = (int)d; + int c_m = c/60; + int c_s = c%60; + return [NSString stringWithFormat:@"%s%d:%s%d", c_m < 10 ? "0" : "" , c_m, c_s < 10 ? "0" : "", c_s]; +} + +-(void) showBar:(bool)value +{ + [self createBarView]; + [actionView setHidden:!value]; +} + +-(void) lockSeek:(bool)value +{ + seekDisabled = !value; + if (slider) + slider.enabled = !value; +} + +-(void) pause +{ + if (playing) + { + playing = false; + if (actionView) + { + btnPause.hidden = true; + btnResume.hidden = false; + } + if (moviePlayer) + [moviePlayer.player pause]; + } +} + +-(void) resume +{ + if (!playing) + { + playing = true; + if (actionView) + { + btnPause.hidden = false; + btnResume.hidden = true; + } + if (moviePlayer) + { + int total = round(moviePlayer.player.currentItem.duration.value/moviePlayer.player.currentItem.duration.timescale); + int curr = round(moviePlayer.player.currentTime.value/moviePlayer.player.currentTime.timescale); + if (total > 0 && curr >= total) + [self seekToTime:0]; + [moviePlayer.player play]; + } + } +} + +-(void) movieClick +{ + if (actionView) + [actionView setHidden:!actionView.isHidden]; +} + +-(void) closeClick +{ + [self setFullScreen:false]; +} + +-(void) close +{ + [timer invalidate]; + timer = nil; + playing = false; + + [moviePlayer.player pause]; + [moviePlayer.view removeFromSuperview]; + [self removeFromSuperview]; +} + +-(void) videoFinished +{ + playing = false; + if (actionView) + { + [actionView setHidden:false]; + [btnPause setHidden:true]; + [btnResume setHidden:false]; + } + currTime = (int)moviePlayer.player.currentTime.value/moviePlayer.player.currentTime.timescale; + VideoIntf::ins()->callJs(3, std::to_string(currTime)); +} + +-(UIButton*)createButton:(NSString*)img +{ + UIButton* btn = [UIButton buttonWithType:UIButtonTypeCustom]; + [btn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; + btn.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; + + UIImage *image = [UIImage imageNamed:img]; + [btn setImage:image forState:UIControlStateNormal]; + [btn setImageEdgeInsets:UIEdgeInsetsMake(0, 0, 0, 0)]; + + return btn; +} + +-(void) playStateChange +{ +// MPMoviePlaybackState state = [moviePlayer playbackState]; +// switch (state) +// { +// case MPMoviePlaybackStatePaused: +// //mediaPlayerIntf->mediaCallback(1, 0); +// break; +// case MPMoviePlaybackStateStopped: +// //mediaPlayerIntf->mediaCallback(2, 0); +// break; +// case MPMoviePlaybackStatePlaying: +// if (currTime > [moviePlayer currentPlaybackTime]) +// { +// [moviePlayer setCurrentPlaybackTime:currTime]; +// currTime = (int)[moviePlayer currentPlaybackTime]; +// } +// //mediaPlayerIntf->mediaCallback(0, 0); +// break; +// case MPMoviePlaybackStateInterrupted: +// break; +// case MPMoviePlaybackStateSeekingBackward: +// break; +// case MPMoviePlaybackStateSeekingForward: +// break; +// default: +// break; +// } +} + + +@end diff --git a/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.h b/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.h new file mode 100644 index 0000000..596d349 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.h @@ -0,0 +1,34 @@ + +#pragma once + +#include "cxDefine.h" + +class VideoIntf : public NativeIntfClass +{ +public: + static VideoIntf* ins(); + + virtual std::string call(std::string fname, cc::ValueVector params, const DataCallback& callback) override; + + void callJs(int state, std::string value); + +private: + + DataCallback dataCallback; + + void createInMask(std::string videoName, std::string maskName, float rectX, float rectY, float rectW, float rectH); + void create(std::string videoName, float rectX, float rectY, float rectW, float rectH); + void setRoundRadius(std::string videoName, float radius); + void setPosition(std::string videoName, float rectX, float rectY); + void removeVideo(std::string videoName); + void removeInMask(std::string maskName); + void play(std::string videoName, std::string url, const DataCallback& callback); + void setFullScreen(std::string videoName, bool value); + void pause(std::string videoName, bool hide); + void resume(std::string videoName); + void seekToTime(std::string videoName, int seconds); + void lockSeek(std::string videoName, bool value); + void showBar(std::string videoName, bool value); + +}; + diff --git a/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.mm b/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.mm new file mode 100644 index 0000000..1d99b5f --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/Classes/video/videoIntf.mm @@ -0,0 +1,265 @@ + +#include "videoIntf.h" + +#include "videoImpl.h" +#include "cxMaskIntf.h" +#include "AppController.h" + +static VideoIntf* s_sharedVideoIntf = nullptr; +VideoIntf* VideoIntf::ins() +{ + if (!s_sharedVideoIntf) + { + s_sharedVideoIntf = new VideoIntf(); + s_sharedVideoIntf->dataCallback = nullptr; + } + return s_sharedVideoIntf; +} + +std::unordered_map m_videoList; +VideoView* getVideoView(std::string name) +{ + auto itr = m_videoList.find(name); + if (itr != m_videoList.end()) + return itr->second; + return nullptr; +} + +std::string VideoIntf::call(std::string fname, cc::ValueVector params, const DataCallback& callback) +{ + //在指定的maskView中创建videoView + if (fname == "createInMask") + { + std::string videoName = params.at(0).asString(); + std::string maskName = params.at(1).asString(); + float rectX = params.at(2).asFloat(); + float rectY = params.at(3).asFloat(); + float rectW = params.at(4).asFloat(); + float rectH = params.at(5).asFloat(); + createInMask(videoName, maskName, rectX, rectY, rectW, rectH); + } + + else if (fname == "create") + { + std::string videoName = params.at(0).asString(); + float rectX = params.at(1).asFloat(); + float rectY = params.at(2).asFloat(); + float rectW = params.at(3).asFloat(); + float rectH = params.at(4).asFloat(); + create(videoName, rectX, rectY, rectW, rectH); + } + + else if (fname == "setRoundRadius") + { + std::string videoName = params.at(0).asString(); + float radius = params.at(1).asFloat(); + setRoundRadius(videoName, radius); + } + + else if (fname == "setPosition") + { + std::string videoName = params.at(0).asString(); + float rectX = params.at(1).asFloat(); + float rectY = params.at(2).asFloat(); + setPosition(videoName, rectX, rectY); + } + + //删除指定的videoView + else if (fname == "removeVideo") + { + std::string videoName = params.at(0).asString(); + removeVideo(videoName); + } + + //删除指定maskView中的所有videoView + else if (fname == "removeInMask") + { + std::string maskName = params.at(0).asString(); + removeInMask(maskName); + } + + else if (fname == "play") + { + std::string videoName = params.at(0).asString(); + std::string url = params.at(1).asString(); + play(videoName, url, callback); + } + + else if (fname == "setFullScreen") + { + std::string videoName = params.at(0).asString(); + bool value = params.at(1).asBool(); + setFullScreen(videoName, value); + } + + else if (fname == "pause") + { + std::string videoName = params.at(0).asString(); + pause(videoName, params.at(1).asBool()); + } + + else if (fname == "resume") + { + std::string videoName = params.at(0).asString(); + resume(videoName); + } + + else if (fname == "seekToTime") + { + std::string videoName = params.at(0).asString(); + int seconds = params.at(1).asInt(); + seekToTime(videoName, seconds); + } + + else if (fname == "lockSeek") + { + std::string videoName = params.at(0).asString(); + bool value = params.at(1).asBool(); + lockSeek(videoName, value); + } + + else if (fname == "showBar") + { + std::string videoName = params.at(0).asString(); + bool value = params.at(1).asBool(); + showBar(videoName, value); + } + + return ""; +} + +void VideoIntf::callJs(int state, std::string value) +{ + if (dataCallback) + dataCallback(state, value); +} + +void VideoIntf::createInMask(std::string videoName, std::string maskName, float rectX, float rectY, float rectW, float rectH) +{ + if (!getVideoView(videoName)) + { + VideoView* videoView = [[VideoView alloc] initWithFrame:CGRectMake(rectX, rectY, rectW, rectH)]; + videoView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:255 alpha:1]; + CxMaskIntf::ins()->addNativeView(maskName, videoView); + m_videoList.emplace(videoName, videoView); + } +} + +void VideoIntf::create(std::string videoName, float rectX, float rectY, float rectW, float rectH) +{ + if (!getVideoView(videoName)) + { + VideoView* videoView = [[VideoView alloc] initWithFrame:CGRectMake(rectX, rectY, rectW, rectH)]; + [AppController.ins addView:videoView]; + m_videoList.emplace(videoName, videoView); + } +} + +void VideoIntf::setRoundRadius(std::string videoName, float radius) +{ + auto videoView = getVideoView(videoName); + if (videoView) + { + UIBezierPath* round =[UIBezierPath bezierPathWithRoundedRect:videoView.bounds cornerRadius:radius]; + CAShapeLayer* maskLayer = [CAShapeLayer layer]; + maskLayer.path = [round CGPath]; + maskLayer.fillRule = kCAFillRuleNonZero; + videoView.layer.mask = maskLayer; + } +} + +void VideoIntf::setPosition(std::string videoName, float rectX, float rectY) +{ + auto videoView = getVideoView(videoName); + if (videoView) + [videoView setPosition:rectX top:rectY]; +} + +void VideoIntf::removeVideo(std::string videoName) +{ + auto videoView = getVideoView(videoName); + if (videoView) + { + [videoView close]; + m_videoList.erase(videoName); + } +} + +void VideoIntf::removeInMask(std::string maskName) +{ + if (maskName.empty()) + return; + for (auto itr = m_videoList.begin(); itr != m_videoList.end();) + { + auto videoView = itr->second; + if (CxMaskIntf::ins()->hasNativeView(maskName, videoView)) + { + [videoView close]; + m_videoList.erase(itr++); + } + else + ++itr; + } +} + +void VideoIntf::play(std::string videoName, std::string url, const DataCallback& callback) +{ + dataCallback = callback; + auto videoView = getVideoView(videoName); + if (videoView) + { + [videoView play:[NSString stringWithUTF8String:url.c_str()] listenProgress:!!callback]; + } +} + +void VideoIntf::setFullScreen(std::string videoName, bool value) +{ + auto videoView = getVideoView(videoName); + if (videoView) + [videoView setFullScreen:value]; +} + +void VideoIntf::pause(std::string videoName, bool hide) +{ + auto videoView = getVideoView(videoName); + if (videoView) + { + [videoView pause]; + if (hide) + [videoView setHidden:true]; + } +} + +void VideoIntf::resume(std::string videoName) +{ + auto videoView = getVideoView(videoName); + if (videoView) + { + [videoView resume]; + if (videoView.isHidden) + [videoView setHidden:false]; + } +} + +void VideoIntf::seekToTime(std::string videoName, int seconds) +{ + auto videoView = getVideoView(videoName); + if (videoView) + [videoView seekToTime:seconds]; +} + +void VideoIntf::lockSeek(std::string videoName, bool value) +{ + auto videoView = getVideoView(videoName); + if (videoView) + [videoView lockSeek:value]; +} + +void VideoIntf::showBar(std::string videoName, bool value) +{ + auto videoView = getVideoView(videoName); + if (videoView) + [videoView showBar:value]; +} + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.pbxproj b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.pbxproj new file mode 100644 index 0000000..e17fe1d --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.pbxproj @@ -0,0 +1,2017 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 460A4175263E740C00D56A53 /* SDKWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 46D835C4263E613000B03751 /* SDKWrapper.m */; }; + 4610C66226403014008BF82C /* LaunchImage.png in Resources */ = {isa = PBXBuildFile; fileRef = 4610C66126403014008BF82C /* LaunchImage.png */; }; + 4610C68726404C21008BF82C /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4610C68526404C21008BF82C /* AppController.mm */; }; + 4610C71326418C66008BF82C /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4610C71226418C66008BF82C /* AppController.mm */; }; + 4610C71D26419103008BF82C /* LaunchImage.png in Resources */ = {isa = PBXBuildFile; fileRef = 4610C71C26419102008BF82C /* LaunchImage.png */; }; + 462F68B1263EC7EA00C0C965 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 462F68AF263EC7EA00C0C965 /* LaunchScreen.storyboard */; }; + 462F68E1263ECDF400C0C965 /* ViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 462F68D6263ECDF400C0C965 /* ViewController.mm */; }; + 462F68E5263ECDF400C0C965 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 462F68DC263ECDF400C0C965 /* main.m */; }; + 46916FAC264D645D000C7B53 /* libcocos3 Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46916FAB264D645D000C7B53 /* libcocos3 Mac.a */; }; + 4691715F264EB9CE000C7B53 /* jsb-adapter in Resources */ = {isa = PBXBuildFile; fileRef = 4691715B264EB9CD000C7B53 /* jsb-adapter */; }; + 46917160264EB9CE000C7B53 /* jsb-adapter in Resources */ = {isa = PBXBuildFile; fileRef = 4691715B264EB9CD000C7B53 /* jsb-adapter */; }; + 46917161264EB9CE000C7B53 /* assets in Resources */ = {isa = PBXBuildFile; fileRef = 4691715C264EB9CD000C7B53 /* assets */; }; + 46917162264EB9CE000C7B53 /* assets in Resources */ = {isa = PBXBuildFile; fileRef = 4691715C264EB9CD000C7B53 /* assets */; }; + 46917163264EB9CE000C7B53 /* src in Resources */ = {isa = PBXBuildFile; fileRef = 4691715D264EB9CD000C7B53 /* src */; }; + 46917164264EB9CE000C7B53 /* src in Resources */ = {isa = PBXBuildFile; fileRef = 4691715D264EB9CD000C7B53 /* src */; }; + 46917165264EB9CE000C7B53 /* main.js in Resources */ = {isa = PBXBuildFile; fileRef = 4691715E264EB9CD000C7B53 /* main.js */; }; + 46917166264EB9CE000C7B53 /* main.js in Resources */ = {isa = PBXBuildFile; fileRef = 4691715E264EB9CD000C7B53 /* main.js */; }; + 4691716E264EBA28000C7B53 /* version.manifest in Resources */ = {isa = PBXBuildFile; fileRef = 4691716B264EBA28000C7B53 /* version.manifest */; }; + 46917170264EBA28000C7B53 /* boot.js in Resources */ = {isa = PBXBuildFile; fileRef = 4691716C264EBA28000C7B53 /* boot.js */; }; + 46917171264EBA28000C7B53 /* boot.js in Resources */ = {isa = PBXBuildFile; fileRef = 4691716C264EBA28000C7B53 /* boot.js */; }; + 46917172264EBA28000C7B53 /* project.manifest in Resources */ = {isa = PBXBuildFile; fileRef = 4691716D264EBA28000C7B53 /* project.manifest */; }; + 4691717C264EC94E000C7B53 /* project.manifest in Resources */ = {isa = PBXBuildFile; fileRef = 4691716D264EBA28000C7B53 /* project.manifest */; }; + 46917181264EC954000C7B53 /* version.manifest in Resources */ = {isa = PBXBuildFile; fileRef = 4691716B264EBA28000C7B53 /* version.manifest */; }; + 46917187264ECCD4000C7B53 /* libcocos3 iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46917186264ECCD4000C7B53 /* libcocos3 iOS.a */; }; + 469171E626500798000C7B53 /* jsIntf-ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = 469171E526500798000C7B53 /* jsIntf-ios.mm */; }; + 46A405EE2656A66F009BEB4D /* Game.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405E22656A66F009BEB4D /* Game.cpp */; }; + 46A405EF2656A66F009BEB4D /* Game.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405E22656A66F009BEB4D /* Game.cpp */; }; + 46A405F02656A66F009BEB4D /* cxIntf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405E52656A66F009BEB4D /* cxIntf.cpp */; }; + 46A405F12656A66F009BEB4D /* cxIntf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405E52656A66F009BEB4D /* cxIntf.cpp */; }; + 46A405F42656A66F009BEB4D /* cxJsb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EA2656A66F009BEB4D /* cxJsb.cpp */; }; + 46A405F52656A66F009BEB4D /* cxJsb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EA2656A66F009BEB4D /* cxJsb.cpp */; }; + 46A405F62656A66F009BEB4D /* jsb_module_register.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EB2656A66F009BEB4D /* jsb_module_register.cpp */; }; + 46A405F72656A66F009BEB4D /* jsb_module_register.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EB2656A66F009BEB4D /* jsb_module_register.cpp */; }; + 46A405F82656A66F009BEB4D /* cxCreator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EC2656A66F009BEB4D /* cxCreator.cpp */; }; + 46A405F92656A66F009BEB4D /* cxCreator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46A405EC2656A66F009BEB4D /* cxCreator.cpp */; }; + 46A4060A2656A712009BEB4D /* cxSysIntf.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A406082656A712009BEB4D /* cxSysIntf.mm */; }; + 46A4060B2656A712009BEB4D /* cxSysIntf.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A406082656A712009BEB4D /* cxSysIntf.mm */; }; + 46A4061C2656A748009BEB4D /* videoImpl.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A406142656A748009BEB4D /* videoImpl.mm */; }; + 46A4061E2656A748009BEB4D /* videoIntf.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A406172656A748009BEB4D /* videoIntf.mm */; }; + 46A406262656A832009BEB4D /* cxMaskIntf.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A405FF2656A6D6009BEB4D /* cxMaskIntf.mm */; }; + 46A4062B2656A835009BEB4D /* cxMaskView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A405FE2656A6D6009BEB4D /* cxMaskView.mm */; }; + 46A4063D2658D926009BEB4D /* statics in Resources */ = {isa = PBXBuildFile; fileRef = 46A4063C2658D926009BEB4D /* statics */; }; + 46A4064426594D2D009BEB4D /* systemIntf.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46A4064226594D2D009BEB4D /* systemIntf.mm */; }; + 46A4065D265953F1009BEB4D /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A4065C265953F1009BEB4D /* MobileCoreServices.framework */; }; + 46ADE2842652532600180D61 /* jsIntf-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46ADE2832652532600180D61 /* jsIntf-mac.mm */; }; + 46D835C8263E613000B03751 /* ViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46D835B7263E613000B03751 /* ViewController.mm */; }; + 46D835CC263E613000B03751 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 46D835BF263E613000B03751 /* main.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 22BBF1B7F0F745F794F69068 /* cx3-demo-mobile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; path = "cx3-demo-mobile.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4610C66126403014008BF82C /* LaunchImage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = LaunchImage.png; sourceTree = ""; }; + 4610C68526404C21008BF82C /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = ""; }; + 4610C68626404C21008BF82C /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = ""; }; + 4610C69A2641265E008BF82C /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = ""; }; + 4610C71126418C66008BF82C /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = ""; }; + 4610C71226418C66008BF82C /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = ""; }; + 4610C71C26419102008BF82C /* LaunchImage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = LaunchImage.png; sourceTree = ""; }; + 462F68B0263EC7EA00C0C965 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 462F68B8263EC8DA00C0C965 /* cx3-demo Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "cx3-demo Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 462F68D6263ECDF400C0C965 /* ViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewController.mm; sourceTree = ""; }; + 462F68DC263ECDF400C0C965 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 462F68DF263ECDF400C0C965 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 462F68E0263ECDF400C0C965 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; + 46916FAB264D645D000C7B53 /* libcocos3 Mac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libcocos3 Mac.a"; path = "../../../cx-framework3.1/cocos3-libs/libcocos3 Mac.a"; sourceTree = ""; }; + 4691715B264EB9CD000C7B53 /* jsb-adapter */ = {isa = PBXFileReference; lastKnownFileType = folder; name = "jsb-adapter"; path = "../../native/ios/assets/jsb-adapter"; sourceTree = ""; }; + 4691715C264EB9CD000C7B53 /* assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = assets; path = ../../native/ios/assets/assets; sourceTree = ""; }; + 4691715D264EB9CD000C7B53 /* src */ = {isa = PBXFileReference; lastKnownFileType = folder; name = src; path = ../../native/ios/assets/src; sourceTree = ""; }; + 4691715E264EB9CD000C7B53 /* main.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = main.js; path = ../../native/ios/assets/main.js; sourceTree = ""; }; + 4691716B264EBA28000C7B53 /* version.manifest */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = version.manifest; path = ../boot/version.manifest; sourceTree = ""; }; + 4691716C264EBA28000C7B53 /* boot.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = boot.js; path = ../boot/boot.js; sourceTree = ""; }; + 4691716D264EBA28000C7B53 /* project.manifest */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = project.manifest; path = ../boot/project.manifest; sourceTree = ""; }; + 46917186264ECCD4000C7B53 /* libcocos3 iOS.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libcocos3 iOS.a"; path = "../../../cx-framework3.1/cocos3-libs/libcocos3 iOS.a"; sourceTree = ""; }; + 469171E526500798000C7B53 /* jsIntf-ios.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "jsIntf-ios.mm"; sourceTree = ""; }; + 46A405E12656A66F009BEB4D /* cxJsb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = cxJsb.hpp; path = "../../../cx-framework3.1/cx-native/cxJsb.hpp"; sourceTree = ""; }; + 46A405E22656A66F009BEB4D /* Game.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Game.cpp; path = "../../../cx-framework3.1/cx-native/Game.cpp"; sourceTree = ""; }; + 46A405E32656A66F009BEB4D /* cxDefine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cxDefine.h; path = "../../../cx-framework3.1/cx-native/cxDefine.h"; sourceTree = ""; }; + 46A405E42656A66F009BEB4D /* cxIntf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cxIntf.h; path = "../../../cx-framework3.1/cx-native/cxIntf.h"; sourceTree = ""; }; + 46A405E52656A66F009BEB4D /* cxIntf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cxIntf.cpp; path = "../../../cx-framework3.1/cx-native/cxIntf.cpp"; sourceTree = ""; }; + 46A405E62656A66F009BEB4D /* Game.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Game.h; path = "../../../cx-framework3.1/cx-native/Game.h"; sourceTree = ""; }; + 46A405EA2656A66F009BEB4D /* cxJsb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cxJsb.cpp; path = "../../../cx-framework3.1/cx-native/cxJsb.cpp"; sourceTree = ""; }; + 46A405EB2656A66F009BEB4D /* jsb_module_register.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = jsb_module_register.cpp; path = "../../../cx-framework3.1/cx-native/jsb_module_register.cpp"; sourceTree = ""; }; + 46A405EC2656A66F009BEB4D /* cxCreator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cxCreator.cpp; path = "../../../cx-framework3.1/cx-native/cxCreator.cpp"; sourceTree = ""; }; + 46A405ED2656A66F009BEB4D /* cxCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cxCreator.h; path = "../../../cx-framework3.1/cx-native/cxCreator.h"; sourceTree = ""; }; + 46A405FD2656A6D6009BEB4D /* cxMaskView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cxMaskView.h; sourceTree = ""; }; + 46A405FE2656A6D6009BEB4D /* cxMaskView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cxMaskView.mm; sourceTree = ""; }; + 46A405FF2656A6D6009BEB4D /* cxMaskIntf.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cxMaskIntf.mm; sourceTree = ""; }; + 46A406002656A6D6009BEB4D /* cxMaskIntf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cxMaskIntf.h; sourceTree = ""; }; + 46A406082656A712009BEB4D /* cxSysIntf.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cxSysIntf.mm; sourceTree = ""; }; + 46A406092656A712009BEB4D /* cxSysIntf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cxSysIntf.h; sourceTree = ""; }; + 46A406142656A748009BEB4D /* videoImpl.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = videoImpl.mm; sourceTree = ""; }; + 46A406152656A748009BEB4D /* videoImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = videoImpl.h; sourceTree = ""; }; + 46A406162656A748009BEB4D /* videoIntf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = videoIntf.h; sourceTree = ""; }; + 46A406172656A748009BEB4D /* videoIntf.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = videoIntf.mm; sourceTree = ""; }; + 46A4063C2658D926009BEB4D /* statics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = statics; path = ../statics; sourceTree = ""; }; + 46A4064126594D2D009BEB4D /* systemIntf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = systemIntf.h; sourceTree = ""; }; + 46A4064226594D2D009BEB4D /* systemIntf.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = systemIntf.mm; sourceTree = ""; }; + 46A4065C265953F1009BEB4D /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; }; + 46ADE2832652532600180D61 /* jsIntf-mac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "jsIntf-mac.mm"; sourceTree = ""; }; + 46D835B7263E613000B03751 /* ViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewController.mm; sourceTree = ""; }; + 46D835BB263E613000B03751 /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = ""; }; + 46D835BF263E613000B03751 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 46D835C3263E613000B03751 /* SDKWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDKWrapper.h; sourceTree = ""; }; + 46D835C4263E613000B03751 /* SDKWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDKWrapper.m; sourceTree = ""; }; + 46D835C5263E613000B03751 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 46D835C6263E613000B03751 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 462F688B263E8D6300C0C965 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 46A4065D265953F1009BEB4D /* MobileCoreServices.framework in Frameworks */, + 46917187264ECCD4000C7B53 /* libcocos3 iOS.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 462F68B5263EC8DA00C0C965 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 46916FAC264D645D000C7B53 /* libcocos3 Mac.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 1F007F137D804716BED26B48 /* Products */ = { + isa = PBXGroup; + children = ( + 22BBF1B7F0F745F794F69068 /* cx3-demo-mobile.app */, + 462F68B8263EC8DA00C0C965 /* cx3-demo Mac.app */, + ); + name = Products; + sourceTree = ""; + }; + 25774AD5540F4F4882CD827B = { + isa = PBXGroup; + children = ( + 46A405DE2656A62F009BEB4D /* cx-native */, + 462F686B263E8AFA00C0C965 /* Resources */, + 46D835AE263E611E00B03751 /* Classes */, + 46D835B4263E613000B03751 /* ios */, + 462F68D4263ECDF400C0C965 /* mac */, + 1F007F137D804716BED26B48 /* Products */, + 460A41D6263E7B9200D56A53 /* Frameworks */, + ); + sourceTree = ""; + }; + 460A41D6263E7B9200D56A53 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 46A4065C265953F1009BEB4D /* MobileCoreServices.framework */, + 46917186264ECCD4000C7B53 /* libcocos3 iOS.a */, + 46916FAB264D645D000C7B53 /* libcocos3 Mac.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 462F686B263E8AFA00C0C965 /* Resources */ = { + isa = PBXGroup; + children = ( + 46A4063C2658D926009BEB4D /* statics */, + 4691715A264EB9BA000C7B53 /* assets */, + 4691716C264EBA28000C7B53 /* boot.js */, + 4691716D264EBA28000C7B53 /* project.manifest */, + 4691716B264EBA28000C7B53 /* version.manifest */, + ); + name = Resources; + sourceTree = ""; + }; + 462F68D4263ECDF400C0C965 /* mac */ = { + isa = PBXGroup; + children = ( + 462F68DF263ECDF400C0C965 /* Info.plist */, + 4610C71C26419102008BF82C /* LaunchImage.png */, + 4610C71126418C66008BF82C /* AppController.h */, + 4610C71226418C66008BF82C /* AppController.mm */, + 462F68E0263ECDF400C0C965 /* ViewController.h */, + 462F68D6263ECDF400C0C965 /* ViewController.mm */, + 4610C69A2641265E008BF82C /* Prefix.pch */, + 462F68DC263ECDF400C0C965 /* main.m */, + ); + path = mac; + sourceTree = ""; + }; + 4691715A264EB9BA000C7B53 /* assets */ = { + isa = PBXGroup; + children = ( + 4691715C264EB9CD000C7B53 /* assets */, + 4691715B264EB9CD000C7B53 /* jsb-adapter */, + 4691715D264EB9CD000C7B53 /* src */, + 4691715E264EB9CD000C7B53 /* main.js */, + ); + name = assets; + sourceTree = ""; + }; + 46A405DE2656A62F009BEB4D /* cx-native */ = { + isa = PBXGroup; + children = ( + 46A406072656A712009BEB4D /* cxSys */, + 46A405FC2656A6D6009BEB4D /* cxMask */, + 46A405EC2656A66F009BEB4D /* cxCreator.cpp */, + 46A405ED2656A66F009BEB4D /* cxCreator.h */, + 46A405E32656A66F009BEB4D /* cxDefine.h */, + 46A405E52656A66F009BEB4D /* cxIntf.cpp */, + 46A405E42656A66F009BEB4D /* cxIntf.h */, + 46A405EA2656A66F009BEB4D /* cxJsb.cpp */, + 46A405E12656A66F009BEB4D /* cxJsb.hpp */, + 46A405E22656A66F009BEB4D /* Game.cpp */, + 46A405E62656A66F009BEB4D /* Game.h */, + 46A405EB2656A66F009BEB4D /* jsb_module_register.cpp */, + ); + name = "cx-native"; + sourceTree = ""; + }; + 46A405FC2656A6D6009BEB4D /* cxMask */ = { + isa = PBXGroup; + children = ( + 46A405FD2656A6D6009BEB4D /* cxMaskView.h */, + 46A405FE2656A6D6009BEB4D /* cxMaskView.mm */, + 46A406002656A6D6009BEB4D /* cxMaskIntf.h */, + 46A405FF2656A6D6009BEB4D /* cxMaskIntf.mm */, + ); + name = cxMask; + path = "../../../cx-framework3.1/cx-native/cxMask"; + sourceTree = ""; + }; + 46A406072656A712009BEB4D /* cxSys */ = { + isa = PBXGroup; + children = ( + 46A406082656A712009BEB4D /* cxSysIntf.mm */, + 46A406092656A712009BEB4D /* cxSysIntf.h */, + ); + name = cxSys; + path = "../../../cx-framework3.1/cx-native/cxSys"; + sourceTree = ""; + }; + 46A406132656A748009BEB4D /* video */ = { + isa = PBXGroup; + children = ( + 46A406152656A748009BEB4D /* videoImpl.h */, + 46A406142656A748009BEB4D /* videoImpl.mm */, + 46A406162656A748009BEB4D /* videoIntf.h */, + 46A406172656A748009BEB4D /* videoIntf.mm */, + ); + path = video; + sourceTree = ""; + }; + 46A4064026594D2D009BEB4D /* system */ = { + isa = PBXGroup; + children = ( + 46A4064126594D2D009BEB4D /* systemIntf.h */, + 46A4064226594D2D009BEB4D /* systemIntf.mm */, + ); + path = system; + sourceTree = ""; + }; + 46D835AE263E611E00B03751 /* Classes */ = { + isa = PBXGroup; + children = ( + 46A4064026594D2D009BEB4D /* system */, + 46A406132656A748009BEB4D /* video */, + 46ADE2832652532600180D61 /* jsIntf-mac.mm */, + 469171E526500798000C7B53 /* jsIntf-ios.mm */, + ); + path = Classes; + sourceTree = ""; + }; + 46D835B4263E613000B03751 /* ios */ = { + isa = PBXGroup; + children = ( + 46D835C5263E613000B03751 /* Info.plist */, + 4610C66126403014008BF82C /* LaunchImage.png */, + 462F68AF263EC7EA00C0C965 /* LaunchScreen.storyboard */, + 4610C68626404C21008BF82C /* AppController.h */, + 4610C68526404C21008BF82C /* AppController.mm */, + 46D835C6263E613000B03751 /* ViewController.h */, + 46D835B7263E613000B03751 /* ViewController.mm */, + 46D835BB263E613000B03751 /* Prefix.pch */, + 46D835BF263E613000B03751 /* main.m */, + 46D835C2263E613000B03751 /* service */, + ); + path = ios; + sourceTree = ""; + }; + 46D835C2263E613000B03751 /* service */ = { + isa = PBXGroup; + children = ( + 46D835C3263E613000B03751 /* SDKWrapper.h */, + 46D835C4263E613000B03751 /* SDKWrapper.m */, + ); + path = service; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 462F68B7263EC8DA00C0C965 /* cx3-demo Mac */ = { + isa = PBXNativeTarget; + buildConfigurationList = 462F68C9263EC8DB00C0C965 /* Build configuration list for PBXNativeTarget "cx3-demo Mac" */; + buildPhases = ( + 462F68B4263EC8DA00C0C965 /* Sources */, + 462F68B5263EC8DA00C0C965 /* Frameworks */, + 462F68B6263EC8DA00C0C965 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "cx3-demo Mac"; + productName = "cx.demo Mac"; + productReference = 462F68B8263EC8DA00C0C965 /* cx3-demo Mac.app */; + productType = "com.apple.product-type.application"; + }; + 49164E491975499DBB1BBD21 /* cx3-demo iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5362F72A71DA42BF998B821E /* Build configuration list for PBXNativeTarget "cx3-demo iOS" */; + buildPhases = ( + 1F08A547141045FEBFF7B3A8 /* Resources */, + F125C2097ED14F63A601F636 /* Sources */, + 462F688B263E8D6300C0C965 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "cx3-demo iOS"; + productName = "demo-mobile"; + productReference = 22BBF1B7F0F745F794F69068 /* cx3-demo-mobile.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 5DD14B08E99F4070901E0E63 /* Project object */ = { + isa = PBXProject; + attributes = { + DefaultBuildSystemTypeForWorkspace = Latest; + LastUpgradeCheck = 1240; + TargetAttributes = { + 462F68B7263EC8DA00C0C965 = { + CreatedOnToolsVersion = 12.4; + ProvisioningStyle = Automatic; + }; + 49164E491975499DBB1BBD21 = { + DevelopmentTeam = 97C55V3R6R; + }; + }; + }; + buildConfigurationList = 38AB0B4B7B9144AD82672C7F /* Build configuration list for PBXProject "cx3-demo" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + "zh-Hans", + ); + mainGroup = 25774AD5540F4F4882CD827B; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 49164E491975499DBB1BBD21 /* cx3-demo iOS */, + 462F68B7263EC8DA00C0C965 /* cx3-demo Mac */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 1F08A547141045FEBFF7B3A8 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 46A4063D2658D926009BEB4D /* statics in Resources */, + 4610C66226403014008BF82C /* LaunchImage.png in Resources */, + 46917161264EB9CE000C7B53 /* assets in Resources */, + 462F68B1263EC7EA00C0C965 /* LaunchScreen.storyboard in Resources */, + 46917165264EB9CE000C7B53 /* main.js in Resources */, + 4691716E264EBA28000C7B53 /* version.manifest in Resources */, + 4691715F264EB9CE000C7B53 /* jsb-adapter in Resources */, + 46917170264EBA28000C7B53 /* boot.js in Resources */, + 46917172264EBA28000C7B53 /* project.manifest in Resources */, + 46917163264EB9CE000C7B53 /* src in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 462F68B6263EC8DA00C0C965 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 46917162264EB9CE000C7B53 /* assets in Resources */, + 46917160264EB9CE000C7B53 /* jsb-adapter in Resources */, + 4610C71D26419103008BF82C /* LaunchImage.png in Resources */, + 46917181264EC954000C7B53 /* version.manifest in Resources */, + 46917171264EBA28000C7B53 /* boot.js in Resources */, + 4691717C264EC94E000C7B53 /* project.manifest in Resources */, + 46917164264EB9CE000C7B53 /* src in Resources */, + 46917166264EB9CE000C7B53 /* main.js in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 462F68B4263EC8DA00C0C965 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 462F68E5263ECDF400C0C965 /* main.m in Sources */, + 46A405F72656A66F009BEB4D /* jsb_module_register.cpp in Sources */, + 46A405F12656A66F009BEB4D /* cxIntf.cpp in Sources */, + 4610C71326418C66008BF82C /* AppController.mm in Sources */, + 46A405F92656A66F009BEB4D /* cxCreator.cpp in Sources */, + 46A4060B2656A712009BEB4D /* cxSysIntf.mm in Sources */, + 46A405F52656A66F009BEB4D /* cxJsb.cpp in Sources */, + 46ADE2842652532600180D61 /* jsIntf-mac.mm in Sources */, + 462F68E1263ECDF400C0C965 /* ViewController.mm in Sources */, + 46A405EF2656A66F009BEB4D /* Game.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F125C2097ED14F63A601F636 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 46A405F62656A66F009BEB4D /* jsb_module_register.cpp in Sources */, + 46D835CC263E613000B03751 /* main.m in Sources */, + 460A4175263E740C00D56A53 /* SDKWrapper.m in Sources */, + 46A4062B2656A835009BEB4D /* cxMaskView.mm in Sources */, + 469171E626500798000C7B53 /* jsIntf-ios.mm in Sources */, + 46A405EE2656A66F009BEB4D /* Game.cpp in Sources */, + 46D835C8263E613000B03751 /* ViewController.mm in Sources */, + 46A4060A2656A712009BEB4D /* cxSysIntf.mm in Sources */, + 46A405F82656A66F009BEB4D /* cxCreator.cpp in Sources */, + 4610C68726404C21008BF82C /* AppController.mm in Sources */, + 46A405F02656A66F009BEB4D /* cxIntf.cpp in Sources */, + 46A4064426594D2D009BEB4D /* systemIntf.mm in Sources */, + 46A4061C2656A748009BEB4D /* videoImpl.mm in Sources */, + 46A406262656A832009BEB4D /* cxMaskIntf.mm in Sources */, + 46A405F42656A66F009BEB4D /* cxJsb.cpp in Sources */, + 46A4061E2656A748009BEB4D /* videoIntf.mm in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 462F68AF263EC7EA00C0C965 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 462F68B0263EC7EA00C0C965 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 2D4D249AA1574ADBB5239BAD /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ENABLE_OBJC_WEAK = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 97C55V3R6R; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = ""; + EXECUTABLE_SUFFIX = ""; + FRAMEWORK_SEARCH_PATHS = "${SRCROOT}/../../../vendor"; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 2; + GCC_PREFIX_HEADER = ios/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/ios", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INFOPLIST_FILE = ios/Info.plist; + INSTALL_PATH = "$(LOCAL_APPS_DIR)"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_proxy_static.a", + "-framework", + UIKit, + "-framework", + AVKit, + "-framework", + WebKit, + "-framework", + CoreMotion, + "-framework", + CFNetwork, + "-framework", + CoreMedia, + "-framework", + CoreText, + "-framework", + CoreGraphics, + "-framework", + AVFoundation, + "-lz", + "-framework", + OpenGLES, + "-framework", + JavaScriptCore, + ); + OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "cx3-demo-mobile"; + SECTORDER_FLAGS = ""; + SKIP_INSTALL = NO; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = RelWithDebInfo; + }; + 3418688EAB354FCF9E4BC530 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "${SRCROOT}/../../../cx-framework3.1/cx-native/**", + "${SRCROOT}/Classes/**", + ); + LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../../../cx-framework3.1/cocos3-libs"; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = MinSizeRel; + }; + 462F68CA263EC8DB00C0C965 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_ENABLE_MODULES = NO; + CLANG_ENABLE_OBJC_ARC = NO; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = NO; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = NO; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_EMPTY_BODY = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INFINITE_RECURSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = NO; + CLANG_WARN_OBJC_LITERAL_CONVERSION = NO; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; + CLANG_WARN_RANGE_LOOP_ANALYSIS = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CLANG_WARN_SUSPICIOUS_MOVE = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CLANG_WARN_UNREACHABLE_CODE = NO; + CLANG_WARN__DUPLICATE_METHOD_MATCH = NO; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = "-"; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + ENABLE_HARDENED_RUNTIME = NO; + ENABLE_NS_ASSERTIONS = YES; + ENABLE_STRICT_OBJC_MSGSEND = NO; + ENABLE_TESTABILITY = NO; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_DYNAMIC_NO_PIC = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_NO_COMMON_BLOCKS = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = mac/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + "'CC_DEBUG=1'", + CC_USE_METAL, + CC_KEYBOARD_SUPPORT, + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_UNDECLARED_SELECTOR = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_FUNCTION = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + "$(inherited)", + "${SRCROOT}/mac", + ); + INFOPLIST_FILE = mac/Info.plist; + LD_MAP_FILE_PATH = "$(TARGET_TEMP_DIR)/$(PRODUCT_NAME)-LinkMap-$(CURRENT_VARIANT)-$(CURRENT_ARCH).txt"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Resources"; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + MACOSX_DEPLOYMENT_TARGET = 11.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = NO; + OTHER_CFLAGS = " '-std=gnu99' "; + OTHER_CPLUSPLUSFLAGS = " '-std=c++14' "; + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcurl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libinspector.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libz.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_proxy_static.a", + "-framework", + OpenGL, + "-framework", + AppKit, + ); + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + }; + name = Debug; + }; + 462F68CB263EC8DB00C0C965 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_ENABLE_MODULES = NO; + CLANG_ENABLE_OBJC_ARC = NO; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = NO; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = NO; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_EMPTY_BODY = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INFINITE_RECURSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = NO; + CLANG_WARN_OBJC_LITERAL_CONVERSION = NO; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; + CLANG_WARN_RANGE_LOOP_ANALYSIS = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CLANG_WARN_SUSPICIOUS_MOVE = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CLANG_WARN_UNREACHABLE_CODE = NO; + CLANG_WARN__DUPLICATE_METHOD_MATCH = NO; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = "-"; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + ENABLE_HARDENED_RUNTIME = NO; + ENABLE_NS_ASSERTIONS = YES; + ENABLE_STRICT_OBJC_MSGSEND = NO; + ENABLE_TESTABILITY = NO; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_NO_COMMON_BLOCKS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = mac/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + CC_KEYBOARD_SUPPORT, + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_UNDECLARED_SELECTOR = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_FUNCTION = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + "$(inherited)", + "${SRCROOT}/mac", + ); + INFOPLIST_FILE = mac/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Resources"; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + MACOSX_DEPLOYMENT_TARGET = 11.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = NO; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcurl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libinspector.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libz.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_proxy_static.a", + "-framework", + OpenGL, + "-framework", + AppKit, + ); + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + }; + name = Release; + }; + 462F68CC263EC8DB00C0C965 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_ENABLE_MODULES = NO; + CLANG_ENABLE_OBJC_ARC = NO; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = NO; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = NO; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_EMPTY_BODY = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INFINITE_RECURSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = NO; + CLANG_WARN_OBJC_LITERAL_CONVERSION = NO; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; + CLANG_WARN_RANGE_LOOP_ANALYSIS = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CLANG_WARN_SUSPICIOUS_MOVE = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CLANG_WARN_UNREACHABLE_CODE = NO; + CLANG_WARN__DUPLICATE_METHOD_MATCH = NO; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = "-"; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + ENABLE_HARDENED_RUNTIME = NO; + ENABLE_NS_ASSERTIONS = YES; + ENABLE_STRICT_OBJC_MSGSEND = NO; + ENABLE_TESTABILITY = NO; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_NO_COMMON_BLOCKS = NO; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = mac/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + CC_KEYBOARD_SUPPORT, + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_UNDECLARED_SELECTOR = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_FUNCTION = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + "$(inherited)", + "${SRCROOT}/mac", + ); + INFOPLIST_FILE = mac/Info.plist; + LD_MAP_FILE_PATH = "$(TARGET_TEMP_DIR)/$(PRODUCT_NAME)-LinkMap-$(CURRENT_VARIANT)-$(CURRENT_ARCH).txt"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Resources"; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + MACOSX_DEPLOYMENT_TARGET = 11.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = NO; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcurl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libinspector.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libz.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_proxy_static.a", + "-framework", + OpenGL, + "-framework", + AppKit, + ); + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + }; + name = MinSizeRel; + }; + 462F68CD263EC8DB00C0C965 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_ENABLE_MODULES = NO; + CLANG_ENABLE_OBJC_ARC = NO; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = NO; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = NO; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_EMPTY_BODY = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INFINITE_RECURSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = NO; + CLANG_WARN_OBJC_LITERAL_CONVERSION = NO; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; + CLANG_WARN_RANGE_LOOP_ANALYSIS = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CLANG_WARN_SUSPICIOUS_MOVE = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CLANG_WARN_UNREACHABLE_CODE = NO; + CLANG_WARN__DUPLICATE_METHOD_MATCH = NO; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = "-"; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + ENABLE_HARDENED_RUNTIME = NO; + ENABLE_NS_ASSERTIONS = YES; + ENABLE_STRICT_OBJC_MSGSEND = NO; + ENABLE_TESTABILITY = NO; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_NO_COMMON_BLOCKS = NO; + GCC_OPTIMIZATION_LEVEL = 2; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = mac/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CMAKE_INTDIR=\"$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)\"'", + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=4'", + "'USE_VIDEO=0'", + "'USE_WEBVIEW=0'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + CC_KEYBOARD_SUPPORT, + V8_COMPRESS_POINTERS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_UNDECLARED_SELECTOR = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_FUNCTION = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Utilities", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/RunLoop", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Security", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Delegate", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/IOConsumer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket/Internal/Proxy", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + "$(inherited)", + "${SRCROOT}/mac", + ); + INFOPLIST_FILE = mac/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Resources"; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + MACOSX_DEPLOYMENT_TARGET = 11.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = NO; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcurl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libinspector.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libz.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/libs/libtbbmalloc_proxy_static.a", + "-framework", + OpenGL, + "-framework", + AppKit, + ); + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SYMROOT = build; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/uv /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/mac/include/zlib"; + USE_HEADERMAP = NO; + }; + name = RelWithDebInfo; + }; + 72FD6BECC65648E0B4328B4A /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "${SRCROOT}/../../../cx-framework3.1/cx-native/**", + "${SRCROOT}/Classes/**", + ); + LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../../../cx-framework3.1/cocos3-libs"; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = Debug; + }; + 8B6EE486301546BE93DF9277 /* RelWithDebInfo */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "${SRCROOT}/../../../cx-framework3.1/cx-native/**", + "${SRCROOT}/Classes/**", + ); + LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../../../cx-framework3.1/cocos3-libs"; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = RelWithDebInfo; + }; + 952F3D1A6ADB400D82513E45 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "${SRCROOT}/../../../cx-framework3.1/cx-native/**", + "${SRCROOT}/Classes/**", + ); + LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../../../cx-framework3.1/cocos3-libs"; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SYMROOT = build; + }; + name = Release; + }; + CE30264394BD4ABA8142D55E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ENABLE_OBJC_WEAK = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 97C55V3R6R; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = ""; + EXECUTABLE_SUFFIX = ""; + FRAMEWORK_SEARCH_PATHS = "${SRCROOT}/../../../vendor"; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREFIX_HEADER = ios/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=0'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/ios", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INFOPLIST_FILE = ios/Info.plist; + INSTALL_PATH = "$(LOCAL_APPS_DIR)"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_proxy_static.a", + "-framework", + UIKit, + "-framework", + AVKit, + "-framework", + WebKit, + "-framework", + CoreMotion, + "-framework", + CFNetwork, + "-framework", + CoreMedia, + "-framework", + CoreText, + "-framework", + CoreGraphics, + "-framework", + AVFoundation, + "-lz", + "-framework", + OpenGLES, + "-framework", + JavaScriptCore, + ); + OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "cx3-demo-mobile"; + SECTORDER_FLAGS = ""; + SKIP_INSTALL = NO; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Release; + }; + D6FA9A78D2B743B0910D52A0 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ENABLE_OBJC_WEAK = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 97C55V3R6R; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = ""; + EXECUTABLE_SUFFIX = ""; + FRAMEWORK_SEARCH_PATHS = "${SRCROOT}/../../../vendor"; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREFIX_HEADER = ios/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=0'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + "'CC_DEBUG=1'", + CC_USE_METAL, + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/ios", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INFOPLIST_FILE = ios/Info.plist; + INSTALL_PATH = "$(LOCAL_APPS_DIR)"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = "'-std=gnu99'"; + OTHER_CPLUSPLUSFLAGS = " '-std=c++14' "; + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_proxy_static.a", + "-framework", + UIKit, + "-framework", + AVKit, + "-framework", + WebKit, + "-framework", + CoreMotion, + "-framework", + CFNetwork, + "-framework", + CoreMedia, + "-framework", + CoreText, + "-framework", + CoreGraphics, + "-framework", + AVFoundation, + "-lz", + "-framework", + OpenGLES, + "-framework", + JavaScriptCore, + ); + OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "cx3-demo-mobile"; + SECTORDER_FLAGS = ""; + SKIP_INSTALL = NO; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = Debug; + }; + DD10A1D8466241FC92BBFAF0 /* MinSizeRel */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_LAUNCHSTORYBOARD_NAME = LaunchScreen; + CLANG_ENABLE_OBJC_WEAK = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 97C55V3R6R; + ENABLE_BITCODE = NO; + EXECUTABLE_PREFIX = ""; + EXECUTABLE_SUFFIX = ""; + FRAMEWORK_SEARCH_PATHS = "${SRCROOT}/../../../vendor"; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PREFIX_HEADER = ios/Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "'CC_PLATFORM_WINDOWS=2'", + "'CC_PLATFORM_MAC_OSX=4'", + "'CC_PLATFORM_MAC_IOS=1'", + "'CC_PLATFORM_ANDROID=3'", + "'CC_PLATFORM=1'", + "'USE_VIDEO=1'", + "'USE_WEBVIEW=1'", + "'USE_AUDIO=1'", + "'USE_SOCKET=1'", + "'USE_WEBSOCKET_SERVER=0'", + "'CC_USE_EDITBOX=1'", + "'USE_V8_DEBUGGER=1'", + "'USE_MIDDLEWARE=1'", + "'USE_SPINE=0'", + "'USE_DRAGONBONES=1'", + "'USE_JOB_SYSTEM_TBB=0'", + "'USE_JOB_SYSTEM_TASKFLOW=1'", + "'USE_PHYSICS_PHYSX=0'", + CC_USE_METAL, + V8_TARGET_ARCH_ARM64, + V8_HAVE_TARGET_OS, + V8_TARGET_OS_IOS, + "'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64'", + ENABLE_MINOR_MC, + V8_CONCURRENT_MARKING, + V8_ENABLE_LAZY_SOURCE_POSITIONS, + V8_EMBEDDED_BUILTINS, + V8_SHARED_RO_HEAP, + V8_WIN64_UNWINDING_INFO, + V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH, + V8_31BIT_SMIS_ON_64BIT_ARCH, + V8_DEPRECATION_WARNINGS, + V8_IMMINENT_DEPRECATION_WARNINGS, + DISABLE_UNTRUSTED_CODE_MITIGATIONS, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/ios", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/SocketRocket", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/renderer", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/sources/khronos", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/editor-support", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/bindings/jswrapper", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/ios", + ); + INFOPLIST_FILE = ios/Info.plist; + INSTALL_PATH = "$(LOCAL_APPS_DIR)"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LIBRARY_SEARCH_PATHS = "$(inherited)"; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DNDEBUG", + "'-std=gnu99'", + ); + OTHER_CPLUSPLUSFLAGS = ( + "-DNDEBUG", + "'-std=c++14'", + ); + OTHER_LDFLAGS = ( + "-liconv", + "-framework", + AudioToolbox, + "-framework", + Foundation, + "-framework", + OpenAL, + "-framework", + GameController, + "-framework", + Metal, + "-framework", + MetalKit, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "-framework", + QuartzCore, + "-lsqlite3", + "-framework", + Security, + "-framework", + SystemConfiguration, + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libfreetype.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libjpeg.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libpng.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libwebp.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libv8_monolith.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libuv_a.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libcrypto.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libssl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOGLCompiler.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libOSDependent.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libSPIRV.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/glslang/libglslang-default-resource-limits.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-core.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-glsl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/spirv-cross/libspirv-cross-msl.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbb_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_static.a", + "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/libs/libtbbmalloc_proxy_static.a", + "-framework", + UIKit, + "-framework", + AVKit, + "-framework", + WebKit, + "-framework", + CoreMotion, + "-framework", + CFNetwork, + "-framework", + CoreMedia, + "-framework", + CoreText, + "-framework", + CoreGraphics, + "-framework", + AVFoundation, + "-lz", + "-framework", + OpenGLES, + "-framework", + JavaScriptCore, + ); + OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = cx3.blank.demo; + PRODUCT_NAME = "cx3-demo-mobile"; + SECTORDER_FLAGS = ""; + SKIP_INSTALL = NO; + SYSTEM_HEADER_SEARCH_PATHS = "/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/v8 /Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/external/ios/include/uv"; + USE_HEADERMAP = NO; + WARNING_CFLAGS = "$(inherited)"; + }; + name = MinSizeRel; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 38AB0B4B7B9144AD82672C7F /* Build configuration list for PBXProject "cx3-demo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 72FD6BECC65648E0B4328B4A /* Debug */, + 952F3D1A6ADB400D82513E45 /* Release */, + 3418688EAB354FCF9E4BC530 /* MinSizeRel */, + 8B6EE486301546BE93DF9277 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + 462F68C9263EC8DB00C0C965 /* Build configuration list for PBXNativeTarget "cx3-demo Mac" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 462F68CA263EC8DB00C0C965 /* Debug */, + 462F68CB263EC8DB00C0C965 /* Release */, + 462F68CC263EC8DB00C0C965 /* MinSizeRel */, + 462F68CD263EC8DB00C0C965 /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + 5362F72A71DA42BF998B821E /* Build configuration list for PBXNativeTarget "cx3-demo iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D6FA9A78D2B743B0910D52A0 /* Debug */, + CE30264394BD4ABA8142D55E /* Release */, + DD10A1D8466241FC92BBFAF0 /* MinSizeRel */, + 2D4D249AA1574ADBB5239BAD /* RelWithDebInfo */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; +/* End XCConfigurationList section */ + }; + rootObject = 5DD14B08E99F4070901E0E63 /* Project object */; +} diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..ebc296c --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..307a9da --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,12 @@ + + + + + BuildSystemType + Latest + DisableBuildSystemDeprecationWarning + + PreviewsEnabled + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..8bfc6fd Binary files /dev/null and b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..c1f08c6 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/project.xcworkspace/xcuserdata/blank.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,22 @@ + + + + + BuildLocationStyle + UseAppPreferences + CustomBuildIntermediatesPath + Build/Intermediates.noindex + CustomBuildLocationType + RelativeToDerivedData + CustomBuildProductsPath + Build/Products + DerivedDataLocationStyle + Default + IssueFilterStyle + ShowActiveSchemeOnly + LiveSourceIssuesEnabled + + ShowSharedSchemesAutomaticallyEnabled + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo Mac.xcscheme b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo Mac.xcscheme new file mode 100644 index 0000000..ba8f043 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo Mac.xcscheme @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo iOS.xcscheme b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo iOS.xcscheme new file mode 100644 index 0000000..74e8a4f --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcshareddata/xcschemes/cx3-demo iOS.xcscheme @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist new file mode 100644 index 0000000..3885d71 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..b5dac18 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/cx3-demo.xcodeproj/xcuserdata/blank.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,42 @@ + + + + + SchemeUserState + + cocos2d.xcscheme_^#shared#^_ + + orderHint + 1 + + cx3-demo Mac.xcscheme_^#shared#^_ + + orderHint + 1 + + cx3-demo iOS.xcscheme_^#shared#^_ + + orderHint + 0 + + demo-mobile.xcscheme_^#shared#^_ + + orderHint + 1 + + + SuppressBuildableAutocreation + + 462F68B7263EC8DA00C0C965 + + primary + + + 49164E491975499DBB1BBD21 + + primary + + + + + diff --git a/cx3-demo/project/cxdemo.ios/ios/AppController.h b/cx3-demo/project/cxdemo.ios/ios/AppController.h new file mode 100644 index 0000000..0135807 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/AppController.h @@ -0,0 +1,20 @@ +#import + +#import "ViewController.h" + +@interface AppController : NSObject + +@property (strong, nonatomic) ViewController* rootViewController; //cocos root view +@property (strong, nonatomic) UINavigationController* appViewController; //app root view + +@property (nonatomic) bool isFullScreen; + ++ (AppController *)ins; + +- (void) pushViewController:(UIViewController*)vc animated:(BOOL)animated; +- (void) addView:(UIView*)view; +- (void) removeLaunchImage; + +@end + + diff --git a/cx3-demo/project/cxdemo.ios/ios/AppController.mm b/cx3-demo/project/cxdemo.ios/ios/AppController.mm new file mode 100644 index 0000000..8e7f090 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/AppController.mm @@ -0,0 +1,169 @@ +#include "AppController.h" +#import "ViewController.h" +#include "platform/ios/View.h" + +#include "service/SDKWrapper.h" +#include "Game.h" + +@implementation AppController + +Game* game = nullptr; +@synthesize window; + +#pragma mark - +#pragma mark Application lifecycle + +static AppController* s_sharedAppController; + ++ (AppController*)ins +{ + return s_sharedAppController; +} + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions +{ + s_sharedAppController = self; + + [[SDKWrapper shared] application:application didFinishLaunchingWithOptions:launchOptions]; + CGRect bounds = [[UIScreen mainScreen] bounds]; + self.window = [[UIWindow alloc] initWithFrame: bounds]; + + /* + appViewController: UINavigationController作为整个app的根视图 + 如需打开一个全屏的原生视图控制器vc就可以这样: + [AppController.ins pushViewController:vc animated:YES]; //默认就有右移退出功能 + + 如需打开一个原生与cocos融合的界面,可以使用: + [AppController.ins addSubview:view]; + */ + + self.rootViewController = [[ViewController alloc] initWithNibName:nil bundle:nil]; + // self.rootViewController.wantsFullScreenLayout = YES; + // [self.window setRootViewController: self.rootViewController]; + + self.appViewController = [[UINavigationController alloc] initWithRootViewController:self.rootViewController]; + self.appViewController.navigationBarHidden = YES; + self.appViewController.view = [[View alloc] initWithFrame:bounds]; + self.appViewController.view.contentScaleFactor = UIScreen.mainScreen.scale; + self.appViewController.view.multipleTouchEnabled = false; //是否隐藏系统栏 + [self.window setRootViewController: self.appViewController]; + [self.window makeKeyAndVisible]; + + //添加图片铺满全屏,LaunchScreen.storyboard中相应设置LaunchImage的content mode缩放方式为Aspect fill,这样图片就看起来没变 + UIImageView *backgroundView = [[UIImageView alloc] initWithFrame: bounds]; + backgroundView.contentMode = UIViewContentModeScaleAspectFill; + backgroundView.image = [UIImage imageNamed:@"LaunchImage.png"]; + [self.appViewController.view addSubview:backgroundView]; + + //设置系统状态栏是否可见 + //无效:[[UIApplication sharedApplication] setStatusBarHidden: YES]; + //在RootViewController.prefersStatusBarHidden方法中设置 + + /* updateViewSize方法不存在了 + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(statusBarOrientationChanged:) + name:UIApplicationDidChangeStatusBarOrientationNotification object:nil]; + */ + + game = new Game(bounds.size.width, bounds.size.height); + game->init(); + + return YES; +} + +- (void) removeLaunchImage +{ + for (UIView* subview in self.appViewController.view.subviews) + { + if ([subview isKindOfClass:[UIImageView class]]) + [subview removeFromSuperview]; + } +} + +/* +- (void)statusBarOrientationChanged:(NSNotification *)notification +{ + CGRect bounds = [UIScreen mainScreen].bounds; + float scale = [[UIScreen mainScreen] scale]; + float width = bounds.size.width * scale; + float height = bounds.size.height * scale; + game->updateViewSize(width, height); +} +*/ + +-(UIInterfaceOrientationMask)application:(UIApplication*)application supportedInterfaceOrientationsForWindow:(UIWindow*)window +{ + if (self.isFullScreen) + { + [self setBarHideStatus:TRUE]; + return UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight; + } + else + { + [self setBarHideStatus:FALSE]; + return UIInterfaceOrientationMaskPortrait; + } +} + +- (void)setBarHideStatus:(bool)status +{ + [self.rootViewController setBarHideStatus:status]; +} + +- (void)pushViewController:(UIViewController*)vc animated:(BOOL)animated +{ + [self.appViewController pushViewController:vc animated:animated]; +} + +- (void)addView:(UIView*)view +{ + [self.appViewController.view addSubview:view]; +} + +- (void)applicationWillResignActive:(UIApplication *)application { + /* + Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. + */ + [[SDKWrapper shared] applicationWillResignActive:application]; + game->onPause(); +} + +- (void)applicationDidBecomeActive:(UIApplication *)application { + /* + Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. + */ + [[SDKWrapper shared] applicationDidBecomeActive:application]; + game->onResume(); +} + +- (void)applicationDidEnterBackground:(UIApplication *)application { + /* + Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + If your application supports background execution, called instead of applicationWillTerminate: when the user quits. + */ + [[SDKWrapper shared] applicationDidEnterBackground:application]; +} + +- (void)applicationWillEnterForeground:(UIApplication *)application { + /* + Called as part of transition from the background to the inactive state: here you can undo many of the changes made on entering the background. + */ + [[SDKWrapper shared] applicationWillEnterForeground:application]; +} + +- (void)applicationWillTerminate:(UIApplication *)application { + [[SDKWrapper shared] applicationWillTerminate:application]; + delete game; + game = nullptr; +} + +#pragma mark - +#pragma mark Memory management + +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application { + [[SDKWrapper shared] applicationDidReceiveMemoryWarning:application]; + cc::EventDispatcher::dispatchMemoryWarningEvent(); +} + +@end diff --git a/cx3-demo/project/cxdemo.ios/ios/Base.lproj/LaunchScreen.storyboard b/cx3-demo/project/cxdemo.ios/ios/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..36984c5 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cx3-demo/project/cxdemo.ios/ios/Info.plist b/cx3-demo/project/cxdemo.ios/ios/Info.plist new file mode 100644 index 0000000..55b0d44 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/Info.plist @@ -0,0 +1,58 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleDisplayName + cx3.demo + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIcons~ipad + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + + NSLocationWhenInUseUsageDescription + 需要定位的说明 + NSPhotoLibraryUsageDescription + 需要打开相册的说明 + UILaunchStoryboardName + LaunchScreen + UIPrerenderedIcon + + UIRequiredDeviceCapabilities + + accelerometer + + opengles-1 + + + UIRequiresFullScreen + + UIStatusBarHidden + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + + diff --git a/cx3-demo/project/cxdemo.ios/ios/LaunchImage.png b/cx3-demo/project/cxdemo.ios/ios/LaunchImage.png new file mode 100644 index 0000000..0ae93be Binary files /dev/null and b/cx3-demo/project/cxdemo.ios/ios/LaunchImage.png differ diff --git a/cx3-demo/project/cxdemo.ios/ios/Prefix.pch b/cx3-demo/project/cxdemo.ios/ios/Prefix.pch new file mode 100644 index 0000000..168ddec --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/Prefix.pch @@ -0,0 +1,8 @@ +// +// Prefix header for all source files of the 'HelloJavascript' target in the 'HelloJavascript' project +// + +#ifdef __OBJC__ + #import + #import +#endif diff --git a/cx3-demo/project/cxdemo.ios/ios/ViewController.h b/cx3-demo/project/cxdemo.ios/ios/ViewController.h new file mode 100644 index 0000000..f1a0a76 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/ViewController.h @@ -0,0 +1,37 @@ +/**************************************************************************** + Copyright (c) 2013 cocos2d-x.org + Copyright (c) 2013-2016 Chukong Technologies Inc. + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#import + +@interface ViewController : UIViewController +{ + bool barHideStatus; +} +- (void) setBarHideStatus:(bool)hide; +- (BOOL) prefersStatusBarHidden; +//- (void) removeLaunchImage; + +@end diff --git a/cx3-demo/project/cxdemo.ios/ios/ViewController.mm b/cx3-demo/project/cxdemo.ios/ios/ViewController.mm new file mode 100644 index 0000000..d6602de --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/ViewController.mm @@ -0,0 +1,99 @@ +#import "ViewController.h" +#include "cocos/bindings/event/EventDispatcher.h" +#include "cocos/platform/Device.h" + +//namespace { +// cc::Device::Orientation _lastOrientation; +//} + +@interface ViewController () + +@end + +@implementation ViewController + +////blank begin +// 下面这个执行不到了,连同removeLaunchImage改到AppController.mm去 +//- (void)viewWillAppear:(BOOL)animated +//{ +// [super viewWillAppear:animated]; +// +// UIImageView *backgroundView = [[UIImageView alloc] initWithFrame: bounds]; +// backgroundView.contentMode = UIViewContentModeScaleAspectFill; +// backgroundView.image = [UIImage imageNamed:@"LaunchImage.png"]; +// [self.view addSubview:backView]; +//} + +//- (void) removeLaunchImage +//{ +// for (UIView* subview in self.view.subviews) +// { +// if([subview isKindOfClass:[UIImageView class]]) +// [subview removeFromSuperview]; +// } +//} + +//禁止竖横转屏动画 +-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id)coordinator +{ + [super viewWillTransitionToSize:size withTransitionCoordinator:coordinator]; + [CATransaction begin]; + [CATransaction setDisableActions:YES]; + [coordinator animateAlongsideTransition:^(id _Nonnull context) + { + + } completion:^(id _Nonnull context) + { + [CATransaction commit]; + }]; +} + +- (void) setBarHideStatus:(bool)hide +{ + self->barHideStatus = hide; + [self setNeedsStatusBarAppearanceUpdate]; +} + +- (BOOL) prefersStatusBarHidden +{ + return self->barHideStatus; +} + +- (BOOL) prefersHomeIndicatorAutoHidden +{ + return YES; +} + +/* +- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id)coordinator +{ + cc::Device::Orientation orientation = _lastOrientation; + // reference: https://developer.apple.com/documentation/uikit/uiinterfaceorientation?language=objc + // UIInterfaceOrientationLandscapeRight = UIDeviceOrientationLandscapeLeft + // UIInterfaceOrientationLandscapeLeft = UIDeviceOrientationLandscapeRight + switch ([UIDevice currentDevice].orientation) { + case UIDeviceOrientationPortrait: + orientation = cc::Device::Orientation::PORTRAIT; + break; + case UIDeviceOrientationLandscapeRight: + orientation = cc::Device::Orientation::LANDSCAPE_LEFT; + break; + case UIDeviceOrientationPortraitUpsideDown: + orientation = cc::Device::Orientation::PORTRAIT_UPSIDE_DOWN; + break; + case UIDeviceOrientationLandscapeLeft: + orientation = cc::Device::Orientation::LANDSCAPE_RIGHT; + break; + default: + break; + } + if (_lastOrientation != orientation) + { + cc::EventDispatcher::dispatchOrientationChangeEvent((int) orientation); + _lastOrientation = orientation; + } +} +*/ +////blank end + +@end diff --git a/cx3-demo/project/cxdemo.ios/ios/main.m b/cx3-demo/project/cxdemo.ios/ios/main.m new file mode 100644 index 0000000..4efd82e --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/main.m @@ -0,0 +1,10 @@ + + +#import + +int main(int argc, char *argv[]) { + NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; + int retVal = UIApplicationMain(argc, argv, nil, @"AppController"); + [pool release]; + return retVal; +} diff --git a/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.h b/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.h new file mode 100644 index 0000000..4ab06a2 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.h @@ -0,0 +1,53 @@ +/**************************************************************************** + Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#import +#import +NS_ASSUME_NONNULL_BEGIN + +@protocol SDKDelegate + +@optional +- (void)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; +- (void)applicationDidBecomeActive:(UIApplication *)application; +- (void)applicationWillResignActive:(UIApplication *)application; +- (void)applicationDidEnterBackground:(UIApplication *)application; +- (void)applicationWillEnterForeground:(UIApplication *)application; +- (void)applicationWillTerminate:(UIApplication *)application; +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application; + +@end + +@interface SDKWrapper : NSObject +@property(nonatomic,strong) NSString *name; ++ (instancetype)shared; +- (void)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; +- (void)applicationDidBecomeActive:(UIApplication *)application; +- (void)applicationWillResignActive:(UIApplication *)application; +- (void)applicationDidEnterBackground:(UIApplication *)application; +- (void)applicationWillEnterForeground:(UIApplication *)application; +- (void)applicationWillTerminate:(UIApplication *)application; +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application; +@end + +NS_ASSUME_NONNULL_END diff --git a/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.m b/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.m new file mode 100644 index 0000000..8feb233 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/ios/service/SDKWrapper.m @@ -0,0 +1,142 @@ +/**************************************************************************** + Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#import "SDKWrapper.h" + +@interface SDKWrapper () + +@property (nonatomic, strong) NSArray *serviceInstances; + +@end + +@implementation SDKWrapper + +#pragma mark - +#pragma mark Singleton + +static SDKWrapper *mInstace = nil; + ++ (instancetype)shared { + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + mInstace = [[super allocWithZone:NULL] init]; + [mInstace initSDKWrapper]; + }); + return mInstace; +} ++ (id)allocWithZone:(struct _NSZone *)zone { + return [SDKWrapper shared]; +} + ++ (id)copyWithZone:(struct _NSZone *)zone { + return [SDKWrapper shared]; +} + +#pragma mark - +#pragma mark private methods +- (void)initSDKWrapper { + [self loadSDKClass]; +} + +- (void)loadSDKClass { + NSMutableArray *sdks = [NSMutableArray array]; + @try { + NSString *path = [NSString stringWithFormat:@"%@/service.json", [[NSBundle mainBundle] resourcePath]]; + NSData *data = [NSData dataWithContentsOfFile:path options:NSDataReadingMappedIfSafe error:nil]; + id obj = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; + id dic = obj[@"serviceClasses"]; + if (dic == nil) @throw [[NSException alloc] initWithName:@"JSON Exception" reason:@"serviceClasses not found" userInfo:nil]; + for (NSString *str in dic) { + NSString *className = [[str componentsSeparatedByString:@"."] lastObject]; + Class clazz = NSClassFromString(className); + if (clazz == nil) @throw [[NSException alloc] initWithName:@"Cass Exception" + reason:[NSString stringWithFormat:@"class '%@' not found", className] + userInfo:nil]; + id sdk = [[clazz alloc] init]; + [sdks addObject:sdk]; + } + } @catch (NSException *e) { + } + self.serviceInstances = [NSArray arrayWithArray:sdks]; +} + +#pragma mark - +#pragma mark Application lifecycle +- (void)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(application:didFinishLaunchingWithOptions:)]) { + [sdk application:application didFinishLaunchingWithOptions:launchOptions]; + } + } + +} + +- (void)applicationDidBecomeActive:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationDidBecomeActive:)]) { + [sdk applicationDidBecomeActive:application]; + } + } +} + +- (void)applicationWillResignActive:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationWillResignActive:)]) { + [sdk applicationWillResignActive:application]; + } + } +} + +- (void)applicationDidEnterBackground:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationDidEnterBackground:)]) { + [sdk applicationDidEnterBackground:application]; + } + } +} + +- (void)applicationWillEnterForeground:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationWillEnterForeground:)]) { + [sdk applicationWillEnterForeground:application]; + } + } +} + +- (void)applicationWillTerminate:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationWillTerminate:)]) { + [sdk applicationWillTerminate:application]; + } + } +} + +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application { + for (id sdk in self.serviceInstances) { + if ([sdk respondsToSelector:@selector(applicationDidReceiveMemoryWarning:)]) { + [sdk applicationDidReceiveMemoryWarning:application]; + } + } +} + +@end diff --git a/cx3-demo/project/cxdemo.ios/mac/AppController.h b/cx3-demo/project/cxdemo.ios/mac/AppController.h new file mode 100644 index 0000000..2b5bd49 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/AppController.h @@ -0,0 +1,15 @@ +#import + +#import "ViewController.h" + +@interface AppController : NSObject +{ +} + +@property (strong, nonatomic) ViewController* viewController; + ++ (AppController *)ins; +- (void) removeLaunchImage; + +@end + diff --git a/cx3-demo/project/cxdemo.ios/mac/AppController.mm b/cx3-demo/project/cxdemo.ios/mac/AppController.mm new file mode 100644 index 0000000..1ac260d --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/AppController.mm @@ -0,0 +1,96 @@ +#import "AppController.h" +#import "Game.h" +#include + +@interface AppController () +{ + NSWindow* _window; + Game* _game; +} + +@end + +@implementation AppController + +static AppController* s_sharedAppController; ++ (AppController*)ins +{ + return s_sharedAppController; +} + +- (void)applicationDidFinishLaunching:(NSNotification *)aNotification +{ + s_sharedAppController = self; + +// NSRect rect = NSMakeRect(200, 200, 390, 844); //iphone12 pro + NSRect rect = NSMakeRect(200, 200, 375, 667); //iphone6s + _window = [[NSWindow alloc] initWithContentRect:rect + styleMask:NSWindowStyleMaskMiniaturizable | NSWindowStyleMaskTitled | NSWindowStyleMaskClosable | NSWindowStyleMaskResizable + backing:NSBackingStoreBuffered + defer:NO]; + if (!_window) { + NSLog(@"Failed to allocated the window."); + return; + } + + _window.title = @""; + + self.viewController = [[ViewController alloc] initWithSize: rect]; + _window.contentViewController = self.viewController; + _window.contentView = self.viewController.view; + [_window.contentView setWantsBestResolutionOpenGLSurface:YES]; + [_window makeKeyAndOrderFront:nil]; + + _game = new Game(rect.size.width, rect.size.height); + _game->init(); + + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(windowWillMiniaturizeNotification)name:NSWindowWillMiniaturizeNotification + object:_window]; + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(windowDidDeminiaturizeNotification)name:NSWindowDidDeminiaturizeNotification + object:_window]; + + NSImageView *backgroundView = [[NSImageView alloc] initWithFrame: NSMakeRect(0, 0, rect.size.width, rect.size.height)]; + backgroundView.imageAlignment = NSImageAlignCenter; + backgroundView.imageScaling = NSImageScaleNone; + backgroundView.image = [NSImage imageNamed:@"LaunchImage.png"]; + [self.viewController.view addSubview:backgroundView]; + +} + +- (void) removeLaunchImage +{ + for (NSView* subview in self.viewController.view.subviews) + { + if ([subview isKindOfClass:[NSImageView class]]) + [subview removeFromSuperview]; + } +} + +- (void)windowWillMiniaturizeNotification +{ + _game->onPause(); +} + +- (void)windowDidDeminiaturizeNotification +{ + _game->onResume(); +} + +- (NSWindow*)getWindow +{ + return _window; +} + +- (void)applicationWillTerminate:(NSNotification *)aNotification { + delete _game; + //FIXME: will crash if relase it here. + // [_window release]; +} + +- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication { + return YES; +} + +@end diff --git a/cx3-demo/project/cxdemo.ios/mac/Info.plist b/cx3-demo/project/cxdemo.ios/mac/Info.plist new file mode 100644 index 0000000..f0b08f8 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/Info.plist @@ -0,0 +1,39 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + + NSHumanReadableCopyright + Copyright © 2019 minggo. All rights reserved. + NSPrincipalClass + NSApplication + NSSupportsAutomaticTermination + + NSSupportsSuddenTermination + + + diff --git a/cx3-demo/project/cxdemo.ios/mac/LaunchImage.png b/cx3-demo/project/cxdemo.ios/mac/LaunchImage.png new file mode 100644 index 0000000..f7bd760 Binary files /dev/null and b/cx3-demo/project/cxdemo.ios/mac/LaunchImage.png differ diff --git a/cx3-demo/project/cxdemo.ios/mac/Prefix.pch b/cx3-demo/project/cxdemo.ios/mac/Prefix.pch new file mode 100644 index 0000000..46c36a7 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/Prefix.pch @@ -0,0 +1,7 @@ +// +// Prefix header for all source files of the 'Paralaxer' target in the 'Paralaxer' project +// + +#ifdef __OBJC__ + #import +#endif diff --git a/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.debug.xcconfig b/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.debug.xcconfig new file mode 100644 index 0000000..e32fe64 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.debug.xcconfig @@ -0,0 +1,4 @@ +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "/Users/minggo/sourcecode/creator/3d/editor-3d/resources/3d/cocos2d-x-lite/cocos/platform/mac/CCModuleConfigMac.debug.xcconfig" diff --git a/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.release.xcconfig b/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.release.xcconfig new file mode 100644 index 0000000..db3ec2a --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/UserConfigMac.release.xcconfig @@ -0,0 +1,4 @@ +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "/Users/minggo/sourcecode/creator/3d/editor-3d/resources/3d/cocos2d-x-lite/cocos/platform/mac/CCModuleConfigMac.release.xcconfig" diff --git a/cx3-demo/project/cxdemo.ios/mac/ViewController.h b/cx3-demo/project/cxdemo.ios/mac/ViewController.h new file mode 100644 index 0000000..cbb08ca --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/ViewController.h @@ -0,0 +1,7 @@ +#import +#import + +@interface ViewController : NSViewController +- (instancetype)initWithSize:(NSRect)rect; +@end + diff --git a/cx3-demo/project/cxdemo.ios/mac/ViewController.mm b/cx3-demo/project/cxdemo.ios/mac/ViewController.mm new file mode 100644 index 0000000..631658c --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/ViewController.mm @@ -0,0 +1,17 @@ +#import "ViewController.h" +#import "platform/mac/View.h" + +@implementation ViewController +{ + View* _view; +} + +- (instancetype)initWithSize:(NSRect)rect { + if (self = [super init]) { + _view = [[View alloc] initWithFrame:rect]; + self.view = _view; + } + return self; +} + +@end diff --git a/cx3-demo/project/cxdemo.ios/mac/gfx_tests.entitlements b/cx3-demo/project/cxdemo.ios/mac/gfx_tests.entitlements new file mode 100644 index 0000000..f2ef3ae --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/gfx_tests.entitlements @@ -0,0 +1,10 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.files.user-selected.read-only + + + diff --git a/cx3-demo/project/cxdemo.ios/mac/main.m b/cx3-demo/project/cxdemo.ios/mac/main.m new file mode 100644 index 0000000..4707163 --- /dev/null +++ b/cx3-demo/project/cxdemo.ios/mac/main.m @@ -0,0 +1,9 @@ +#import +#import "AppController.h" + +int main(int argc, const char * argv[]) +{ + id delegate = [[AppController alloc] init]; + NSApplication.sharedApplication.delegate = delegate; + return NSApplicationMain(argc, argv); +} diff --git a/cx3-demo/project/statics/1.mp4 b/cx3-demo/project/statics/1.mp4 new file mode 100644 index 0000000..8537b5f Binary files /dev/null and b/cx3-demo/project/statics/1.mp4 differ diff --git a/cx3-demo/project/statics/video_pause.png b/cx3-demo/project/statics/video_pause.png new file mode 100644 index 0000000..a0371ea Binary files /dev/null and b/cx3-demo/project/statics/video_pause.png differ diff --git a/cx3-demo/project/statics/video_play.png b/cx3-demo/project/statics/video_play.png new file mode 100644 index 0000000..cfe8e71 Binary files /dev/null and b/cx3-demo/project/statics/video_play.png differ diff --git a/cx3-demo/project/statics/video_stop.png b/cx3-demo/project/statics/video_stop.png new file mode 100644 index 0000000..5ec5bb2 Binary files /dev/null and b/cx3-demo/project/statics/video_stop.png differ diff --git a/cx3-demo/project/update.js b/cx3-demo/project/update.js new file mode 100644 index 0000000..8b15a1b --- /dev/null +++ b/cx3-demo/project/update.js @@ -0,0 +1,160 @@ + +//ex: node update.js -v 20210520 + +var remote_url = 'http://192.168.50.5:8080/cx-web/cx3-demo-update/'; //远程更新地址 + +var dest = './boot/'; +var src = './assets'; + +var fs = require('fs'); +var path = require('path'); +var crypto = require('crypto'); + +var manifest = +{ + packageUrl: remote_url + "assets/", //更新资源包所在目录 + remoteManifestUrl: remote_url + 'project.manifest', //资源版本描述文件地址 + remoteVersionUrl: remote_url + 'version.manifest', //版本描述文件地址 + version: '1.0', + assets: {}, + searchPaths: [] +}; + +var i = 2; +while(i < process.argv.length) +{ + var arg = process.argv[i]; + + switch(arg) + { + case '--url': + case '-u': + var url = process.argv[i + 1]; + manifest.packageUrl = url; + manifest.remoteManifestUrl = url + 'project.manifest'; + manifest.remoteVersionUrl = url + 'version.manifest'; + i += 2; + break; + case '--version': + case '-v': + manifest.version = process.argv[i + 1]; + i += 2; + break; + case '--src': + case '-s': + src = process.argv[i + 1]; + i += 2; + break; + case '--dest': + case '-d': + dest = process.argv[i + 1]; + i += 2; + break; + default: + i++; + break; + } +} + + +function readDir (dir, obj) +{ + var stat = fs.statSync(dir); + if(!stat.isDirectory()) + { + return; + } + var subpaths = fs.readdirSync(dir), subpath, size, md5, compressed, relative; + for(var i = 0; i < subpaths.length; ++i) + { + if(subpaths[i][0] === '.') + { + continue; + } + subpath = path.join(dir, subpaths[i]); + stat = fs.statSync(subpath); + if(stat.isDirectory()) + { + readDir(subpath, obj); + } + else if(stat.isFile()) + { + // Size in Bytes + size = stat['size']; + md5 = crypto.createHash('md5').update(fs.readFileSync(subpath)).digest('hex'); + compressed = path.extname(subpath).toLowerCase() === '.zip'; + + relative = path.relative(src, subpath); + relative = relative.replace(/\\/g, '/'); + relative = encodeURI(relative); + obj[relative] = { + 'size': size, + 'md5': md5 + }; + if(compressed) + { + obj[relative].compressed = true; + } + } + } +} + +// function readFile (dir, file, obj) +// { +// var stat = fs.statSync(dir + file); +// if (!stat.isFile()) +// { +// return; +// } +// var size, md5, compressed, relative; +// size = stat['size']; +// md5 = crypto.createHash('md5').update(fs.readFileSync(dir + file)).digest('hex'); +// compressed = path.extname(file).toLowerCase() === '.zip'; + +// relative = path.relative(src, dir + file); +// relative = relative.replace(/\\/g, '/'); +// relative = encodeURI(relative); +// obj[relative] = { +// 'size': size, +// 'md5': md5 +// }; +// if(compressed) +// { +// obj[relative].compressed = true; +// } +// } + +var mkdirSync = function(path) +{ + try + { + fs.mkdirSync(path); + } catch(e) + { + if(e.code != 'EEXIST') throw e; + } +} + +// Iterate assets and src folder +//readFile(src, 'settings.json', manifest.assets); +// readDir(path.join(src, 'assets'), manifest.assets); +readDir(src, manifest.assets); + +var destManifest = path.join(dest, 'project.manifest'); +var destVersion = path.join(dest, 'version.manifest'); + +mkdirSync(dest); + +fs.writeFile(destManifest, JSON.stringify(manifest), (err) => +{ + if (err) throw err; + console.log('Manifest successfully generated'); +}); + +delete manifest.assets; +delete manifest.searchPaths; +fs.writeFile(destVersion, JSON.stringify(manifest), (err) => +{ + if (err) throw err; + console.log('Version successfully generated'); +}); diff --git a/cx3-demo/settings/v2/packages/builder.json b/cx3-demo/settings/v2/packages/builder.json new file mode 100644 index 0000000..802f619 --- /dev/null +++ b/cx3-demo/settings/v2/packages/builder.json @@ -0,0 +1,8 @@ +{ + "__version__": "1.2.8", + "splash-setting": { + "totalTime": 0, + "displayWatermark": false, + "url": "/Users/blank/ccapp3/cx-framework3.1/cx/prefab/s_none.png" + } +} diff --git a/cx3-demo/settings/v2/packages/cocos-service.json b/cx3-demo/settings/v2/packages/cocos-service.json new file mode 100644 index 0000000..ca98aaf --- /dev/null +++ b/cx3-demo/settings/v2/packages/cocos-service.json @@ -0,0 +1,22 @@ +{ + "game": { + "name": "未知游戏", + "app_id": "UNKNOW", + "c_id": "0" + }, + "appConfigMaps": [ + { + "app_id": "UNKNOW", + "config_id": "389e04" + } + ], + "configs": [ + { + "app_id": "UNKNOW", + "config_id": "389e04", + "config_name": "Default", + "config_remarks": "", + "services": [] + } + ] +} diff --git a/cx3-demo/settings/v2/packages/device.json b/cx3-demo/settings/v2/packages/device.json new file mode 100644 index 0000000..70e599e --- /dev/null +++ b/cx3-demo/settings/v2/packages/device.json @@ -0,0 +1,3 @@ +{ + "__version__": "1.0.1" +} diff --git a/cx3-demo/settings/v2/packages/engine.json b/cx3-demo/settings/v2/packages/engine.json new file mode 100644 index 0000000..67519c9 --- /dev/null +++ b/cx3-demo/settings/v2/packages/engine.json @@ -0,0 +1,108 @@ +{ + "__version__": "1.0.5", + "modules": { + "cache": { + "base": { + "_value": true + }, + "graphcis": { + "_value": true + }, + "gfx-webgl": { + "_value": true + }, + "gfx-webgl2": { + "_value": false + }, + "3d": { + "_value": false + }, + "2d": { + "_value": true + }, + "ui": { + "_value": true + }, + "particle": { + "_value": false + }, + "physics": { + "_value": false, + "_option": "physics-ammo" + }, + "physics-ammo": { + "_value": false + }, + "physics-cannon": { + "_value": false + }, + "physics-physx": { + "_value": false + }, + "physics-builtin": { + "_value": false + }, + "physics-2d": { + "_value": false, + "_option": "physics-2d-box2d" + }, + "physics-2d-box2d": { + "_value": false + }, + "physics-2d-builtin": { + "_value": false + }, + "intersection-2d": { + "_value": false + }, + "primitive": { + "_value": false + }, + "profiler": { + "_value": false + }, + "particle-2d": { + "_value": false + }, + "audio": { + "_value": true + }, + "video": { + "_value": true + }, + "webview": { + "_value": true + }, + "tween": { + "_value": true + }, + "terrain": { + "_value": false + }, + "tiled-map": { + "_value": false + }, + "spine": { + "_value": false + }, + "dragon-bones": { + "_value": true + } + }, + "includeModules": [ + "base", + "gfx-webgl", + "2d", + "ui", + "audio", + "video", + "webview", + "tween", + "dragon-bones" + ], + "noDeprecatedFeatures": { + "value": true, + "version": "" + } + } +} diff --git a/cx3-demo/settings/v2/packages/program.json b/cx3-demo/settings/v2/packages/program.json new file mode 100644 index 0000000..4d87e97 --- /dev/null +++ b/cx3-demo/settings/v2/packages/program.json @@ -0,0 +1,3 @@ +{ + "__version__": "1.0.0" +} diff --git a/cx3-demo/settings/v2/packages/project.json b/cx3-demo/settings/v2/packages/project.json new file mode 100644 index 0000000..536c3bf --- /dev/null +++ b/cx3-demo/settings/v2/packages/project.json @@ -0,0 +1,9 @@ +{ + "__version__": "1.0.1", + "general": { + "designResolution": { + "width": 750, + "height": 1334 + } + } +} diff --git a/cx3-demo/tsconfig.json b/cx3-demo/tsconfig.json new file mode 100755 index 0000000..51fee10 --- /dev/null +++ b/cx3-demo/tsconfig.json @@ -0,0 +1,13 @@ +{ + /* Base configuration. Do not edit this field. */ + "extends": "./temp/tsconfig.cocos.json", + + /* Add your custom configuration here. */ + + "compilerOptions": + { + "types": [ + "../cx-framework3.1/cx", + ] + } +}