53 Star 322 Fork 211

TopDiscover / QuickFramework

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
AFL-3.0

CocosCreator 快速开发轻量级游戏框架

项目说明

本项目基于 cocos creator 3.7.2版本 以Asset Bundle为基础的大厅+子游戏示例 提供一个轻量级的游戏开发框架,让你的开发更加简单

示例地址

2.4.x 版本

3.7.x 版本

示例安装包请进群下载

注意:服务器配置低,进入时,可能时间比较长

cocos creator 升级

引擎修正插件可直接对 3.7.2 ~ 3.8.2 版本 项目中示例工程可自行按自己项目进行裁剪

升级步骤

1,升级后使用一次【引擎修正】插件

2,重新构建项目

完整工程拉取

进入tools 目录先执行 npm install 安装依赖

然后在tools目录下执行 npm run main

详细文档

更为详细的文档,请在本项目的doc中查看,由于个人原因,文档会逐步完成中,也同时欢迎进入我们的交流群中讨论,相互学习 同时也希望有更多的人参与,一起让creator的开发更加的简单。

关于QuickFramework

  • Q : 为什么使用单场景?

    • 保证视图在切换场景时正常弹出
    • 如下情况,如多场景情况下,A场景->B场景,A场景上请求网络数据希望在B场景上弹出,当收到网络返回时 还需要检查当前是否在B场景中,如果不在则压入到显示队列中,等进入B场景,检查当前是否有显示视图队列 如果有显示的视图,依次弹出,但如果采用单场景化,无须关心在哪一个场景,收到网络回复直接弹出。
    • 保护界面状态
    • 还是在多场景下,在切换场景时,必定会先把场景上所有视图关闭,清除数据,但若有需要在A场景下显示的 界面也希望在B场景下显示,此时场景的过渡,会先关闭界面,进入B场景时显示,但如果场景上有ListView类 似的控件,也希望在切换场景时,显示之前玩家操作显示的位置,那么必定会花费额外的工作去保存玩家在A场景 上操作界面的相关信息,再进入B场景时,恢复玩家对界面操作的所有状态,但如果只是单场景,可以模拟一个 场景的切换动作,直接隐藏掉界面,进入B场景,直接显示,无须保存界面的状态。
  • Q : 项目为什么不推荐使用在预置体中直接挂载脚本?

    • 方便重构
    • 如下情况,当你发现目录结构不合理,或者文件名取名有误时,但此时已经在预置上挂载了过多的组件,还有 些项目的子游戏是在不同的svn版本管理下,在开发时,并不会放入全量的代码进入开发,如果如果此时改名或 移动目录,可能会造成文件的uuid发生变化,Creator上只会显示该脚本为Misson状态,并不会显示之前挂载 的是哪一个脚本,若项目足够大,一个脚本的uuid变化,可能会造成大量预置体重新设置挂载脚本,提高了 维护的成本
  • Q : 为什么项目都采用预置体+UIView组件绑定方式?

    • 1,统一化管理,工厂式创建,方便实现统一的动画效果,一个公司的界面显示动画,可能大多数情况下是统一风格,如果我们要实现统一定制化 动画,只需要在UIView中统一处理,直接显示通过UIManager.open()方式调用
    • 2,把内存及资源的管理交到管理器处理,减少开发者对何时释放资源,何时加载资源的烦恼,只关注自己的 业务逻辑处理,无须关注资源的加载与释放
    • 3,接口统一,方便后期对界面的打开次数统计,以提供数据给运营人员,查看该模块的受欢迎程度
  • Q : 项目主要核心模块为什么都在管理器Manager上?

    • 提高可读性,新手上手快,拿到代码只能从Manager上直接了解整个项目的结构模块,尽量避免全局变量满天飞的情况 后面框架的使用者也可直接把全局的通过数据直接挂载到Manager中使用,减少全局变量的污染。
  • Q : 项目为什么推荐万事尽量保留类型?*

    • 个人观点,项目采用VSCode + Creator + typescript 方式进行开发,而typescript VSCode 都是Microsoft 公司 的产品,Microsoft公司在JavaScript 基础上加上了type,就是为了解决弱语言类型无类型化,可读性差,
    • 1,您可以清楚你的实际来自哪一个类型,跟继承的关系
    • 2,编辑友好加上VSCode的智能代码提示跟静态语法检查,让你在开发时,减少错误
    • 3,代码更严谨,可在传入参数中限制传入的类型,类型的检查交给VSCode处理
    • 4,方便重构,如果当你发现某个文件放置位置不对,可直接在VSCode中拖动到你想要的位置,VSCode会自动的更正你托动 代码所有引用的位置,或者对API 类名等修改操作,VSCode也会自动更改所有引用此类型的地方,降低重构的成本
    • 5,最后说一句,没有人比VSCode 更懂TypeScript ,TypeScript的重点在Type,无论什么情况,尽量保留类型。

框架定位

本框架主要为轻量级游戏打造的一个基础框架雏形,可适用于休闲类,小游戏类,棋牌类,文字游戏类等轻或中度型游戏的开发, 功能还在完善中,后面优化及功能的扩展继续进行中

分支说明

2.4.7

2.4.7 分支为 creator 版本在>=2.4.7版本以上使用,为2.4.x的对外分支

3.7.2

3.7.2 分支为 creator 版本在>=3.7.2版本以上使用,为3.x的对外分支

其它分支为开发中的分支,请不要轻易使用

如果您觉得我们的开源框架对你有所帮助,请扫下方二维码进群讨论

输入图片说明

Academic Free License (“AFL”) v. 3.0 This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following licensing notice adjacent to the copyright notice for the Original Work: Licensed under the Academic Free License version 3.0 1) Grant of Copyright License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, for the duration of the copyright, to do the following: a) to reproduce the Original Work in copies, either alone or as part of a collective work; b) to translate, adapt, alter, transform, modify, or arrange the Original Work, thereby creating derivative works ("Derivative Works") based upon the Original Work; c) to distribute or communicate copies of the Original Work and Derivative Works to the public, under any license of your choice that does not contradict the terms and conditions, including Licensor’s reserved rights and remedies, in this Academic Free License; d) to perform the Original Work publicly; and e) to display the Original Work publicly. 2) Grant of Patent License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, for the duration of the patents, to make, use, sell, offer for sale, have made, and import the Original Work and Derivative Works. 3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work. 4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior permission of the Licensor. Except as expressly stated herein, nothing in this License grants any license to Licensor’s trademarks, copyrights, patents, trade secrets or any other intellectual property. No patent license is granted to make, use, sell, offer for sale, have made, or import embodiments of any patent claims other than the licensed claims defined in Section 2. No license is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under terms different from this License any Original Work that Licensor otherwise would have a right to license. 5) External Deployment. The term "External Deployment" means the use, distribution, or communication of the Original Work or Derivative Works in any way such that the Original Work or Derivative Works may be used by anyone other than You, whether those works are distributed or communicated to those persons or made available as an application intended for use over a network. As an express condition for the grants of license hereunder, You must treat any External Deployment by You of the Original Work or a Derivative Work as a distribution under section 1(c). 6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent, or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work. 7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately preceding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of non-infringement, merchantability or fitness for a particular purpose. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to the Original Work is granted by this License except under this disclaimer. 8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to anyone for any indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to the extent applicable law prohibits such limitation. 9) Acceptance and Termination. If, at any time, You expressly assented to this License, that assent indicates your clear and irrevocable acceptance of this License and all of its terms and conditions. If You distribute or communicate copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. This License conditions your rights to undertake the activities listed in Section 1, including your right to create Derivative Works based upon the Original Work, and doing so without honoring these terms and conditions is prohibited by copyright law and international treaty. Nothing in this License is intended to affect copyright exceptions and limitations (including “fair use” or “fair dealing”). This License shall terminate immediately and You may no longer exercise any of the rights granted to You by this License upon your failure to honor the conditions in Section 1(c). 10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware. 11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of copyright or patent law in the appropriate jurisdiction. This section shall survive the termination of this License. 12) Attorneys’ Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License. 13) Miscellaneous. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. 14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. 15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You. 16) Modification of This License. This License is Copyright © 2005 Lawrence Rosen. Permission is granted to copy, distribute, or communicate this License without modification. Nothing in this License permits You to modify this License as applied to the Original Work or to Derivative Works. However, You may modify the text of this License and copy, distribute or communicate your modified version (the "Modified License") and apply it to other original works of authorship subject to the following conditions: (i) You may not indicate in any way that your Modified License is the "Academic Free License" or "AFL" and you may not use those names in the name of your Modified License; (ii) You must replace the notice specified in the first paragraph above with the notice "Licensed under <insert your license name here>" or with a notice of your own that is not confusingly similar to the notice in this License; and (iii) You may not claim that your original works are open source software unless your Modified License has been approved by Open Source Initiative (OSI) and You comply with its license review and certification process.

简介

轻量级大厅+子游戏 游戏框架 让你的游戏开发变得简单 展开 收起
TypeScript 等 5 种语言
AFL-3.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
TypeScript
1
https://gitee.com/top-discover/QuickFramework.git
git@gitee.com:top-discover/QuickFramework.git
top-discover
QuickFramework
QuickFramework
3.7.2

搜索帮助