消除蛋蛋派

2023-12-23 02:12
文章标签 消除 蛋蛋

本文主要是介绍消除蛋蛋派,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎来到程序小院

消除蛋蛋派

玩法:消除游戏,三个相同形状的蛋蛋连成一条直线即可消除,点击鼠标左键移动球球进行消除,
可以使用道具,共有50关卡,快去闯关吧^^。

开始游戏icon-default.png?t=N7T8https://www.ormcc.com/play/gameStart/225

html

  <div id="gameContainer" style="position: relative;"><div id = "game"></div></div>

css

*{margin:0;padding:0}
html, body
{-webkit-text-size-adjust:none;overflow: hidden;height:100%;
}

js

gameTimer : function(){this.gameTimeCounter++;if(this.gameTimeCounter == 1){this.automatedChecking();}if(!configObj.levelClear){if(this.monsterAnimIndex != undefined && this.monsterContainer[this.monsterAnimIndex]!= undefined && this.monsterContainer[this.monsterAnimIndex].type != "universal" && this.gameTimeCounter % 4 == 0){this.monsterContainer[this.monsterAnimIndex].animations.stop(true, false);}var index = Math.floor(Math.random() * 48);if(index != this.monsterAnimIndex && this.gameTimeCounter % 4 == 0 && this.monsterContainer[index] != undefined && this.monsterContainer[index].monsterType != "block"){this.monsterContainer[index].play('blinkEyes', 1.5, true);this.monsterAnimIndex = index;}if(this.startHintTimer){this.hintTimer++;if(this.hintTimer % 10 == 0 && this.startHintTimer){this.hintArray.splice(0, this.hintArray.length);this.showHint();this.startHintTimer = false;}}}
},
generateRandomNo : function(){this.setButtonState(true);for(var i = 0; i < configObj.totalRows; i++){for(var j = 0; j < configObj.totalCols; j++){this.randomNoContainer[i][j] = Math.floor(Math.random() * 6);}}this.verifyContainer();
},
verifyContainer : function(){for(var i = 0; i < configObj.totalRows; i++){for(var j = 0; j < configObj.totalCols; j++){if((j + 1)  < configObj.totalRows && this.randomNoContainer[i][j] == this.randomNoContainer[i][j + 1]){if((j + 2)  < configObj.totalRows && this.randomNoContainer[i][j + 1] == this.randomNoContainer[i][j + 2]){this.randomNoContainer[i][j + 2] = this.replaceValue(this.randomNoContainer[i][j + 2]);}}if((i + 1)  < configObj.totalCols && this.randomNoContainer[i][j] == this.randomNoContainer[i + 1][j]){if((i + 2)  < configObj.totalCols && this.randomNoContainer[i + 1][j] == this.randomNoContainer[i + 2][j]){this.randomNoContainer[i + 2][j] = this.replaceValue(this.randomNoContainer[i + 2][j]);}}}}this.generateMonsters();
},
generateMonsters : function(){if(this.inGameTutorial){this.MonsterState = " stady";}var xPos = configObj.gridStartXPos;for(var i = 0; i < configObj.totalRows; i++){for(var j = 0; j < configObj.totalCols; j++){if(this.currentLevelData.block.indexOf(this.index) != -1){this.monsterContainer[this.index] = configObj.game.add.sprite(xPos, this.gridStartYPos, "spriteAtlas1", "block_box.png");this.blockLayer.add(this.monsterContainer[this.index]);this.monsterContainer[this.index].imageId = 7;this.monsterContainer[this.index].anchor.setTo(1, 1);this.monsterContainer[this.index].monsterType = "block";}else if(this.powUpMonster.length > 0 && this.powUpMonster.hasOwnProperty(this.index)){if(this.powUpMonster[this.index].monsterType == "super"){this.monsterContainer[this.index] = configObj.game.add.sprite(xPos, 10, 'super'+this.powUpMonster[this.index].imageId);this.MonsterLayer.add(this.monsterContainer[this.index]);this.monsterContainer[this.index].loadTexture('super'+this.powUpMonster[this.index].imageId, 0);this.monsterContainer[this.index].animations.add('blinkEyes');this.monsterContainer[this.index].imageId = this.powUpMonster[this.index].imageId;//combination - Type -> 3 - Normal, 4 - superMonster,5 - universalMonster, Blockthis.monsterContainer[this.index].monsterType = "super";}else{this.monsterContainer[this.index] = configObj.game.add.sprite(xPos, 10, "universal");this.monsterContainer[this.index].imageId = 6;this.monsterContainer[this.index].monsterType = "universal";}this.monsterContainer[this.index].anchor.setTo(1, 1);this.monsterContainer[this.index].inputEnabled = true;this.monsterContainer[this.index].events.onInputDown.add(this.mouseDownCallBack.bind(this,this.monsterContainer[this.index]), this);this.monsterContainer[this.index].events.onInputUp.add(this.mouseUpCallBack.bind(this,this.monsterContainer[this.index]), this);}else{var temp = this.randomNoContainer[i][j];this.monsterContainer[this.index] = configObj.game.add.sprite(xPos, 10, 'monster'+temp);this.MonsterLayer.add(this.monsterContainer[this.index]);this.monsterContainer[this.index].loadTexture('monster'+temp, 0);this.monsterContainer[this.index].animations.add('blinkEyes');this.monsterContainer[this.index].imageId = temp;this.monsterContainer[this.index].anchor.setTo(1, 1);this.monsterContainer[this.index].inputEnabled = true;this.monsterContainer[this.index].events.onInputDown.add(this.mouseDownCallBack.bind(this,this.monsterContainer[this.index]), this);this.monsterContainer[this.index].events.onInputUp.add(this.mouseUpCallBack.bind(this,this.monsterContainer[this.index]), this);
//               combination - Type -> 3 - Normal, 4 - superMonster, 
5 - universalMonster, Blockthis.monsterContainer[this.index].monsterType = "normal";}configObj.objYPositionContainer.push(this.gridStartYPos);xPos += configObj.gapBetweenObj;this.index++;}this.gridStartYPos += configObj.gapBetweenObj;xPos = configObj.gridStartXPos;}this.powUpMonster.splice(0, this.powUpMonster.length);this.containerSize = this.monsterContainer.length;if(this.currentLevelData.jelly.length > 0 && this.jellyContianer.length == 0){for(var i = 0; i < this.currentLevelData.jelly.length; i++){this.jellyContianer[i] = configObj.game.add.sprite(this.monsterContainer[this.currentLevelData.jelly[i]].x, configObj.objYPositionContainer[this.currentLevelData.jelly[i]],"spriteAtlas1", "jelly.png");this.jellyContianer[i].anchor.setTo(1, 1);this.jellyLayer.add(this.jellyContianer[i]);this.jellyBreakContianer[i] = configObj.game.add.sprite(this.monsterContainer[this.currentLevelData.jelly[i]].x, configObj.objYPositionContainer[this.currentLevelData.jelly[i]], 'jelly_animation');this.jellyBreakContianer[i].anchor.setTo(0.6, 0.63);this.jellyBreakContianer[i].loadTexture('jelly_animation', 0);this.jellyBreakContianer[i].animations.add('jelly_animation');this.jellyBreakContianer[i].visible = false;this.jellyLayer.add(this.jellyBreakContianer[i]);}}this.startDropAnim();
},

源码

需要源码请关注添加好友哦^ ^

转载:欢迎来到本站,转载请注明文章出处https://ormcc.com/

这篇关于消除蛋蛋派的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/526363

相关文章

深入理解数据库的 4NF:多值依赖与消除数据异常

在数据库设计中, "范式" 是一个常常被提到的重要概念。许多初学者在学习数据库设计时,经常听到第一范式(1NF)、第二范式(2NF)、第三范式(3NF)以及 BCNF(Boyce-Codd范式)。这些范式都旨在通过消除数据冗余和异常来优化数据库结构。然而,当我们谈到 4NF(第四范式)时,事情变得更加复杂。本文将带你深入了解 多值依赖 和 4NF,帮助你在数据库设计中消除更高级别的异常。 什么是

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法   消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法 [转载]原地址:http://blog.csdn.net/x605940745/article/details/17911115 消除SDK更新时的“

Java | Leetcode Java题解之第390题消除游戏

题目: 题解: class Solution {public int lastRemaining(int n) {int a1 = 1;int k = 0, cnt = n, step = 1;while (cnt > 1) {if (k % 2 == 0) { // 正向a1 = a1 + step;} else { // 反向a1 = (cnt % 2 == 0) ? a1 : a1

大语言模型的32种消除幻觉的技术,你都了解吗?

大模型幻觉问题是计算机语言学中一个重要的研究方向。为减轻幻觉,研究人员提出了多种策略,比如反馈机制、外部信息检索等,但一直缺少一篇详细综述将近期关于幻觉的研究工作串联起来。 今天介绍的这篇文章详细梳理了大语言模型幻觉消除技术,将其系统的分为提示工程和模型开发两大类。 提示工程涉及基于检索增强的方法、基于反馈的策略或提示微调;模型开发则可分为多种方法,包括新的解码策略、基于知识图谱的优化、新增的

【行业报告】2023年消除类手游全球市场洞察

​更多消除内容: 长线消除游戏商业化设计案例:《梦幻花园》 - 游戏干饭之家 谈谈《开心消消乐》是如何做游戏商业化活动 - 游戏干饭之家 消除游戏展现了从简单的游戏玩法到复杂的社交互动,再到精细化运营的发展历程,其通过不断的创新和适应现代游戏的市场变化,依然活跃在市场的前沿 一、消除游戏分类定义 二、消除手游市场现状分析 消除手游近两年下载量增速表现优于整体手游表现,下

噪音消除模块调研

一.原理 1.1降噪 noisereduce 库的 reduce_noise 函数使用的是一种基于频谱减法的噪声消除算法。它通过分析音频的频谱,识别出噪声成分,并尝试将这些噪声成分从音频信号中去除,从而提升信号的清晰度。 1.2 动态范围压缩(预加重) 预加重(Pre-emphasis)是一种简单的信号处理技术,常用于音频处理中。它通过增强音频信号的高频成分来改善信噪比,特别是在某些编码技术

如何消除工人们对TPM管理培训的抵触情绪?

在探讨如何消除工人们对TPM管理培训抵触情绪的问题时,我们首先需要深入理解这种抵触情绪的根源,进而设计出一套既科学又人性化的策略来逐步化解。TPM作为一种旨在通过全员参与,实现设备综合效率最大化的管理模式,其成功实施离不开每一位员工的积极参与和深刻理解。然而,在实际推行过程中,工人们往往因为多种原因对这类培训产生抵触。本文,深圳天行健TPM管理咨询公司旨在分享如何打破僵局,让工人们从心底接受并热爱

Golang | Leetcode Golang题解之第390题消除游戏

题目: 题解: func lastRemaining(n int) int {a1 := 1k, cnt, step := 0, n, 1for cnt > 1 {if k%2 == 0 { // 正向a1 += step} else { // 反向if cnt%2 == 1 {a1 += step}}k++cnt >>= 1step <<= 1}return a1}

C语言 | Leetcode C语言题解之第390题消除游戏

题目: 题解: int lastRemaining(int n) {int a1 = 1;int k = 0, cnt = n, step = 1;while (cnt > 1) {if (k % 2 == 0) { // 正向a1 = a1 + step;} else { // 反向a1 = (cnt % 2 == 0) ? a1 : a1 + step;}k++;cnt = cnt >

【练习3】点击消除

地址:点击消除_牛客题霸_牛客网 (nowcoder.com) 分析: 消除的是“相邻且相等”的数,可以考虑用栈。这里使用StringBuilder来代替栈,好处是StringBuilder可以实现尾插和尾删的操作。 public class Main {public static void main(String[] args) {Scanner in = new Scanner