技术心得记录:怎么更快地合成大西瓜?搞懂游戏的源码,闭着眼睛都能成功!

简介: 技术心得记录:怎么更快地合成大西瓜?搞懂游戏的源码,闭着眼睛都能成功!

“年纪轻轻的,千万别玩合成大西瓜。”


值此过年前无心干活的特殊时期,玩法简单并伴随着魔力极强的「病毒」属性的H5小游戏《合成大西瓜》一夜爆红,到处都有人晒出自己三更半夜不睡觉,一心合成大西瓜的战果。


这款小游戏于1月22日上线,合成大西瓜由于魔性的玩法和音效,还蹭上开年大瓜的热点,一上线就火爆席卷朋友圈,现在出了多种山寨版本合魔改版本,题材五花八门甚至有些变态得让人想去洗眼睛(别学坏)……截至日前,#合成大西瓜#微博话题目前累计阅读数17.4亿,讨论43.2万,曝光量不逊于顶流明星。


这款游戏被很多玩家和程序员进行了改版,现在这款游戏成了大家可以随便更改机制的游戏,今天小编为大家带来合成大西瓜代码分享,一起来看看吧!


合成大西瓜代码一览


if (false) {


BK.Script.loadlib('');


}


var loadingBool = true;


var loadingNum = 0;


window.boot = function () {


var settings = window._CCSettings;


window._CCSettings = undefined;


if ( !settings.debug ) {


var uuids = settings.uuids;


var rawAssets = settings.rawAssets;


var //代码效果参考:http://www.jhylw.com.cn/121232701.html

assetTypes = settings.assetTypes;

var realRawAssets = settings.rawAssets = {};


for (var mount in rawAssets) {


var entries = rawAssets【mount】;


var realEntries = realRawAssets【mount】 = {};


for (var id in entries) {


var entry = entries【id】;


var type = entry【1】;


// retrieve minified raw asset


if (typeof type === 'number') {


entry【1】 = assetTypes【type】;


}


// retrieve uuid


realEntries【uuids【id】 || id】 = entry;


}


}


var scenes = settings.scenes;


for (var i = 0; i < scenes.length; ++i) {


var scene = scenes【i】;


if (typeof scene.uuid === 'number') {


scene.uuid = uuids【scene.uuid】;


}


}


var packedAssets = settings.packedAssets;


for (var packId in packedAssets) {


var packedIds = packedAssets【packId】;


for (var j = 0; j < packedIds.length; ++j) {


if (typeof packedIds【j】 === 'number') {


packedIds【j】 = uuids【packedIds【j】】;


}


}


}


var subpackages = settings.subpackages;


for (var subId in subpackages) {


var uuidArray = subpackages【subId】.uuids;


if (uuidArray) {


for (var k = 0, l = uuidArray.length; k < l; k++) {


if (typeof uuidArray【k】 === 'number') {


uuidArray【k】 = uuids【uuidArray【k】】;


}


}


}


}


}


function setLoadingDisplay () {


// Loading splash scene


var splash = document.getElementById('splash');


// var progressBar = splash.querySelector('.progress-bar span');


cc.loader.onProgress = function (completedCount, totalCount, item) {


loadData.completedCount = completedCount;


loadData.totalCount = totalCount;


if(loadingBool){


var loadintT = document.getElementById("loadingText")


}


var percent = 100 completedCount / totalCount;


if(loadingBool && loadingNum >= 1 && totalCount > 1){


if(percent.toFixed(0) >= 100){


loadintT.innerHTML = 'loading......100' + '%';


setTimeout(function(){


loadingBool = false;


loadintT.remove();


},0.1 1000);


clearInterval(timer);


}


}


loadingNum ++;


// if(loadingBool){


// var loadintT = document.getElementById("loadingText")


// }


// var percent = 100 completedCount / totalCount;


// if(loadingBool && loadingNum >= 1){


// console.log("dskpi",loadingNum);


// loadintT.innerHTML = 'loading......' + parseInt(percent) + '%';


// if(percent.toFixed(0) >= 100){


// loadingBool = false;


// loadintT.remove();


// }


// }


// loadingNum ++;


// var percent = 100 completedCount / totalCount;


// if (progressBar) {


// progressBar.style.width = percent.toFixed(2) + '%';


// }


};


splash.style.display = 'block';


// progressBar.style.width = '0%';


cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () {


splash.style.display = 'none';


});


}


var onStart = function () {


cc.loader.downloader._subpackages = settings.subpackages;


cc.view.enableRetina(true);


cc.view.resizeWithBrowserSize(true);


if (!false && !false) {


if (cc.sys.isBrowser) {


setLoadingDisplay();


}


if (cc.sys.isMobile) {


if (settings.orientation === 'landscape') {


cc.view.setOrientation(cc.macro.ORIENTATION_LANDSCAPE);


}


else if (settings.orientation === 'portrait') {


cc.view.setOrientation(cc.macro.ORIENTATION_PORTRAIT);


}


// cc.view.enableAutoFullScreen(【


// cc.sys.BROWSER_TYPE_BAIDU,


// cc.sys.BROWSER_TYPE_WECHAT,


// cc.sys.BROWSER_TYPE_MIUI,


// 】.indexOf(cc.sys.browserType) < 0);


cc.view.enableAutoFullScreen(false);


}


// Limit downloading max concurrent task to 2,


// more tasks simultaneously may cause performance draw back on some android system / browsers.


// You can adjust the number based on your own test result, you have to set it before any loading process to take effect.


if (cc.sys.isBrowser && cc.sys.os === cc.sys.OS_ANDROID) {


cc.macro.DOWNLOAD_MAX_CONCURRENT = 2;


}


}


// function loadScene(launchScene) {


// cc.director.loadScene(launchScene, null,


// function () {


// if (cc.sys.isBrowser) {


// // show canvas


// var canvas = document.getElementById('GameCanvas');


// canvas.style.visibility = '';


// var div = document.getElementById('GameDiv');


// if (div) {


// div.style.backgroundImage = '';


// }


// }


// cc.loader.onProgress = null;


// console.log('Success to load scene: ' + launchScene);


// }


// );


// }


var launchScene = settings.launchScene;


// load scene


// loadScene(launchScene);


var canvas;


if (cc.sys.isBrowser) {


canvas = document.getElementById('GameCanvas');


}


var launchScene = settings.launchScene;


console.log("landscape,",launchScene);


var MainManger = __require("MainManage");


MainManger.init(launchScene,cc.sys.isBrowser,canvas.style.visibility);


};


// jsList


var jsList = settings.jsList;


if (false) {


BK.Script.loadlib();


}


else {


var bundledScript = settings.debug ? 'src/project.dev.js' : 'src/project.js';


if (jsList) {


jsList = jsList.map(function (x) {


return 'src/' + x;


});


jsList.push(bundledScript);


}


else {


jsList = 【bundledScript】;


}


}


var option = {


id: 'GameCanvas',


scenes: settings.scenes,


debugMode: settings.debug ? cc.debug.DebugMode.INFO : cc.debug.DebugMode.ERROR,


showFPS: !false && settings.debug,


frameRate: 60,


jsList: jsList,


groupList: settings.groupList,


collisionMatrix: settings.collisionMatrix,


}


// init assets


cc.AssetLibrary.init({


libraryPath: 'res/import',


rawAssetsBase: 'res/raw-',


rawAssets: settings.rawAssets,


packedAssets: settings.packedAssets,


md5AssetsMap: settings.md5AssetsMap,


subpackages: settings.subpackages


});


cc.game.run(option, onStart);


};


if (false) {


BK.Script.loadlib('');


BK.Script.loadlib();


BK.Script.loadlib('');


var ORIENTATIONS = {


'portrait': 1,


'landscape left': 2,


'landscape right': 3


};


BK.Director.screenMode = ORIENTATIONS【window._CCSettings.orientation】;


initAdapter();


cc.game.once(cc.game.EVENT_ENGINE_INITED, function () {


initRendererAdapter();


});


var prevPipe = cc.loader.md5Pipe || cc.loader.assetLoader;


window.boot();


}


else if (window.jsb) {


var isRuntime = (typeof loadRuntime === 'function');


if (isRuntime) {


require('src/settings.js');


require('src/cocos2d-runtime.js');


require('jsb-adapter/engine/index.js');


}


else {


require('src/settings.js');


require('src/cocos2d-jsb.js');


require('jsb-adapter/jsb-engine.js');


}


cc.macro.CLEANUP_IMAGE_CACHE = true;


window.boot();


}


这是一款非常好玩的合成游戏,通过将两球球堆砌在一起,合成更加大的球球,要注意会随时滚动的球哦,你能合成多少个呢?


最后,如果你在学习编程遇到瓶颈,感到迷茫,困惑,可以加入【C语言C++学习企鹅圈】


学习交流,技术探讨,面试指导,简历修改...还有超多源码素材等学习资料,零基础的视频等着你!

相关文章
|
数据可视化 索引
elasticsearch head、kibana 安装和使用
elasticsearch head、kibana 安装和使用
326 1
|
前端开发
CocosCreator 面试题(九)什么是异步加载资源
CocosCreator 面试题(九)什么是异步加载资源
365 0
|
存储
CocosCreator3.8研究笔记(十一)CocosCreator Prefab(预制件)理解
CocosCreator3.8研究笔记(十一)CocosCreator Prefab(预制件)理解
985 0
|
安全 网络安全 数据安全/隐私保护
CocosCreator 面试题(十四)Cocos Creator WebSocket 、Socket.IO分别是什么?
CocosCreator 面试题(十四)Cocos Creator WebSocket 、Socket.IO分别是什么?
741 0
|
3月前
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器4核8G配置:ECS实例规格、CPU型号及使用场景说明
阿里云4核8G服务器ECS提供多种实例规格,包括高主频计算型hfc8i、计算型c8i、通用算力型u1、经济型e等。各规格配备不同CPU型号与主频性能,适用于机器学习、数据分析、游戏服务器、Web前端等多种场景。用户可根据需求选择Intel或AMD处理器,如第四代Xeon或AMD EPYC系列,满足高性能计算及企业级应用要求。更多详情参见阿里云官方文档。
330 1
|
10月前
|
开发者
在代码维护中,Qwen-coder可以通过多种方式提升编程效率和代码质量
Qwen-coder在代码维护中发挥着重要作用,帮助开发者提高代码质量,减少错误,提升开发效率。这些功能使得Qwen-coder成为代码维护和开发过程中的有力助手。
415 52
|
10月前
|
监控 Unix Linux
|
存储 分布式计算 分布式数据库
大数据技术原理与应用 期末复习 知识点全总结(林子雨版
大数据技术原理与应用 期末复习 知识点全总结(林子雨版
2555 1
ZLMediakit-method ANNOUNCE failed: 401 Unauthorized
ZLMediakit-method ANNOUNCE failed: 401 Unauthorized
360 0
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器架构X86、ARM、GPU/FPGA、裸金属、超级计算详解
阿里云服务器架构X86计算_ARM_GPU/FPGA/ASIC_裸金属_超级计算集群
557 0