消灭星星在线玩怎么玩?消灭星星在线玩好玩吗

消灭星星(Popstar)游戏是怎么开发实现的?难不难?
玩这个游戏最多的应该是女生和小孩了,我玩的不多!
按投票排序
@谢邀这是我在知乎第二次认真回答问题,第一次给了效果还不错。首先表明我是一个代码帝,喜欢用代码说话,轻砸。开发这样的游戏难不难,我觉得不难,玩通关比开发难多了,我一个礼拜才玩到第五关,开发两天就够了;有图有真相,我开发过逻辑实现基本的流程就是这样
创建10*10随机星星——触摸——检测颜色——消除星星——掉落移动——合并星星——检测死局——结束 大概如此代码实现是基于js编程语言,cocos2d-x游戏引擎实现的; 1
创建随机单个星星,并加入单个星星掉落动画MainLayer.prototype.getRandomStar = function (colIndex, rowIndex) {
this.starSize = 72;
var stars = PS_MAIN_TEXTURE.STARS;
var randomStar = stars[getRandom(stars.length)];
var starSprite = cc.Sprite.createWithSpriteFrameName(randomStar);
starSprite.setAnchorPoint(cc.p(0.5, 0.5));
starSprite.setPosition(cc.p(36 + colIndex * this.starSize,
starSprite.starData = {name: randomStar, indexOfColumn: colIndex, indexOfRow: rowIndex};
starSprite.setZOrder(100);
var flowTime = rowIndex / 10;
var fallAction = cc.MoveTo.create(flowTime, cc.p(36 + colIndex * this.starSize,
36 + rowIndex * this.starSize));
starSprite.runAction(fallAction);
return starS
2 根据表格位置初始化10*10星星群,产生星星从空中坠落的效果MainLayer.prototype.initStarTable = function () {
this.starTable = new Array(this.numX);
for (var i = 0; i & this.numX; i++) {
var sprites = new Array(this.numY);
for (var j = 0; j & this.numY; j++) {
var pSprite0 = this.getRandomStar(i, j);
if (pSprite0 != null) {
this.rootNode.addChild(pSprite0);
sprites[j] = pSprite0;
this.starTable[i] =
10*10星星群检测触摸事件,通过this.sameColorList.length可以判断是第一次触摸还是第二次触摸 ;数组长度
&1表示第二次触摸,这里又有分支,触摸的是刚才同一颜色区域还是其他区域?如果是原来颜色区域,删除this.removeSameColorStars(),如果不是原来颜色区域,恢复原状,然后新的检测;数组长度 &=1表示第一次触摸
直接检测颜色相同区域MainLayer.prototype.onTouchesBegan = function (touches, event) {
var loc = touches[0].getLocation();
this.ccTouchBeganPos =
for (var i = 0; i & this.starTable. i++) {
var sprites = this.starTable[i];
for (var j = 0; j & sprites. j++) {
var pSprite0 = sprites[j];
if (pSprite0) {
var ccRect = pSprite0.getBoundingBox();
if (isInRect(ccRect, this.ccTouchBeganPos)) {
if (this.sameColorList.length & 1) {
if (this.sameColorList.contains(pSprite0)) {
cc.AudioEngine.getInstance().playEffect(PS_MAIN_SOUNDS.broken, false);
this.removeSameColorStars();
for (var k = 0; k & this.sameColorList. k++) {
if (this.sameColorList[k]) {
this.sameColorList[k].runAction(cc.ScaleTo.create(0.1, 1));
this.checkSameColorStars(pSprite0);
if (this.sameColorList.length & 1) {
cc.AudioEngine.getInstance().playEffect(PS_MAIN_SOUNDS.select, false);
this.checkSameColorStars(pSprite0);
if (this.sameColorList.length & 1) {
cc.AudioEngine.getInstance().playEffect(PS_MAIN_SOUNDS.select, false);
4 建立单个星星的四个方向检测,上下左右,把颜色相同的放在一个数组里面,回调这个数组;其实最后用这个函数的时候主要是判断数组的大小;数组大于1,说明四周有相同颜色的;MainLayer.prototype.checkOneStarFourSide = function (sprite) {
if (sprite == null) {
// cc.log("checkOneStarFourSide");
var fourSideSpriteList = [];
var color = sprite.starData.
var col = sprite.starData.indexOfC
var row = sprite.starData.indexOfR
if (row & 9) {
var upSprite = this.starTable[col][row + 1];
if (upSprite != null && upSprite.starData.color == color) {
fourSideSpriteList.push(upSprite);
if (row & 0) {
var downSprite = this.starTable[col][row - 1];
if (downSprite != null && downSprite.starData.color == color) {
fourSideSpriteList.push(downSprite);
if (col & 0) {
var leftSprite = this.starTable[col - 1][row];
if (leftSprite != null && leftSprite.starData.color == color) {
fourSideSpriteList.push(leftSprite);
if (col & 9) {
var rightSprite = this.starTable[col + 1][row];
if (rightSprite != null && rightSprite.starData.color == color) {
fourSideSpriteList.push(rightSprite);
return fourSideSpriteL
5 检测相同颜色区域,这里的算法比较复杂;有两个数组this.sameColorList和newSameColorList,前者是全局星星数组,后者是每次扩展新加入的星星;比如这样情况,一个星星左右上有相同的星星,上面的上面还有一个星星,总共五个相同星星:三次检测情况是this.sameColorList为1---4----5 ,而newSameColorList为1--3--1,各种曲折,读者好好理解下;MainLayer.prototype.checkSameColorStars = function (sprite) {
if (sprite == null) {
this.sameColorList = [];
this.sameColorList.push(sprite);
var newSameColorList = [];
newSameColorList.push(sprite);
//by logic ,check the same color star list
while (newSameColorList.length & 0) {
for (var i = 0; i & newSameColorList. i++) {
var fourSide = this.checkOneStarFourSide(newSameColorList[i]);
if (fourSide.length & 0) {
for (var j = 0; j & fourSide. j++) {
if (!this.sameColorList.contains(fourSide[j])) {
this.sameColorList.push(fourSide[j]);
newSameColorList.push(fourSide[j]);
newSameColorList.splice(i, 1);
cc.log("sameColorList length==" + this.sameColorList.length);
if (this.sameColorList.length & 1) {
for (var k = 0; k & this.sameColorList. k++) {
var simpleStar = this.sameColorList[k];
if (simpleStar) {
simpleStar.runAction(cc.ScaleTo.create(0.1, 1.08));
移除刚才选中的相同颜色的星星,并产生爆炸粒子效果MainLayer.prototype.removeSameColorStars = function () {
for (var k = 0; k & this.sameColorList. k++) {
var simpleStar = this.sameColorList[k];
if (simpleStar) {
var col = simpleStar.starData.indexOfC
var row = simpleStar.starData.indexOfR
this.starTable[col].splice(row, 1, null);
this.rootNode.removeChild(simpleStar);
if (sys.platform != 'browser') {
var starParticle = cc.StarParticle.create(this.rootNode, (36 + col * this.starSize), (36 + row * this.starSize), "spark");
starParticle.runAction(cc.Sequence.create(cc.DelayTime.create(0.8), cc.CleanUp.create(starParticle)));
this.sameColorList = [];
this.fallStar();
7 星星掉落 填充空缺,主要是如果一个地方有空缺,就把它上面的星星位置和数据交换,用到数组的方法splice,可到网上查看js数组的一些方法应用MainLayer.prototype.fallStar = function () {
for (var i = 0; i & this.starTable. i++) {
var sprites = this.starTable[i];
var length = sprites.
for (var j = 0; j & j++) {
var pSprite0 = sprites[j];
if (pSprite0 == null) {
var k = j + 1;
while (k & length) {
var upSprite = sprites[k];
if (upSprite != null) {
upSprite.starData.indexOfColumn =
upSprite.starData.indexOfRow =
this.starTable[i].splice(j, 1, upSprite);
this.starTable[i].splice(k, 1, null);
var flowTime = 0.2;
var fallAction = cc.MoveTo.create(flowTime, cc.p(36 + i * this.starSize,
36 + j * this.starSize));
upSprite.runAction(fallAction);
this.deadStar();
// bineStar();
合并星星,如果最底部有空缺,星星必须向左合并,不能出现空缺bineStar = function () {
for (var m = 0; m & this.starTable. m++) {
var mSprite0 = this.starTable[m][0];
if (mSprite0 == null) {
if (m == (this.starTable.length - 1)) {
for (var j = 0; j & this.starTable[m]. j++) {
this.starTable[m].splice(j, 1, null);
for (var i = (m + 1); i & this.starTable. i++) {
// this.starTable.splice((i - 1), 1, this.starTable[i]);
for (var j = 0; j & this.starTable[i]. j++) {
var pSprite0 = this.starTable[i][j];
this.starTable[i - 1].splice(j, 1, pSprite0);
if (pSprite0 != null) {
pSprite0.starData.indexOfColumn = (i - 1);
var col = pSprite0.starData.indexOfC
var row = pSprite0.starData.indexOfR
var moveAction = cc.MoveTo.create(0.1, cc.p(36 + col * this.starSize,
36 + row * this.starSize));
pSprite0.runAction(moveAction);
this.deadStar();
游戏到最后 会发生死局情况,程序自动判断消除;这里主要是循环检测每一个星星,如果所有的星星四周都没有相同星星的时候,就确认为死局,程序自动消除星星 MainLayer.prototype.deadStar = function () {
var isDead =
for (var i = 0; i & this.starTable. i++) {
var sprites = this.starTable[i];
var length = sprites.
for (var j = 0; j & j++) {
var pSprite0 = sprites[j];
if (pSprite0 != null) {
if (this.checkOneStarFourSide(pSprite0).length & 0) {
if (isDead) {
for (var jj = 9; jj &= 0; jj--) {
for (var ii = 0; ii & 10; ii++) {
var pSprite0 = this.starTable[ii][jj];
if (pSprite0 != null) {
var delay = 4 + 0.3 * ii - 0.4 *
pSprite0.runAction(cc.Sequence.create(
cc.DelayTime.create(delay),
cc.CleanUp.create(pSprite0)
var starParticle = cc.StarParticle.create(this.rootNode, (36 + ii * this.starSize), (36 + jj * this.starSize), "spark");
starParticle.runAction(cc.Sequence.create(cc.ScaleTo.create(0, 0),
cc.DelayTime.create(delay), cc.ScaleTo.create(0, 1), cc.DelayTime.create(0.8),
cc.CleanUp.create(starParticle)));
基本就是这样想要源码到我博客里面找吧:
我身边同事都玩过一段时间,逻辑就是永远没有通关分数是一个没有尽头的数加星星全部消完的成就感!
我玩了一个学期,最高分玩到5万多,然后一直没有突破6万
大神 加你qq可好
大神,膜拜、当前位置: >
  好玩的游戏大家都会来玩,那么不知道的一些攻略大家也都会问起的啊,呵呵呵,看看消灭星星闯关模式玩法攻略是什么,这是今天小编想要为玩玩家们解释的事情的啊,希望玩家们能够游戏愉快的啊  游戏开始时分数是采用累积叠加的方式,由一千分累加到三千,然后持续添加上去的。  我们必须想办法将在消除星星的时候,达到这个分数,刚开始的时候总是简单的,但是也不要太掉以轻心噢。  因为现在的一点小分数很可能牵扯到之后的大分数啊!最开始的时候是从底层开始消除星星的,但是到第二关开始就不那么容易了,所以这边就要提醒大家不能太死板运用消除套路,要思考着换一种方式,从上向下开始消除星星。哈哈哈  希望今天的对于消灭星星闯关模式玩法攻略是什么的讲解没有让玩家们失望,呵呵呵,也希望玩家们早日的闯过卡住你们自己的那一关,哈哈哈,那么玩家们,你们现在可以去玩游戏罗
小技巧:百度搜索“”可找到本站
相关文章:
《消灭星星》
喜欢《消灭星星》就投她一票吧!
战斗方式-画面&&《PopStar消灭星星2》攻略
《PopStar消灭星星2》攻略
日 18:58&&&&&阅读(4843)&&&&&来源:牛游戏&&&&&编辑:雷神&&&&&
PopStar消灭星星2全新的玩法和成就模式,对于一些新手还是不够了解,PopStar消灭星星2新手如何快速进入&PopStar消灭星星2的世界,成为星星的一员,那下面牛游戏网带各位新手朋友一起看这个PopStar消灭星星2新手怎么玩?
PopStar消灭星星2新手入门攻略
1、需要下载安装PopStar消灭星星2,此过程我想大家都会。
下载地址:
2、安装好PopStar消灭星星2之后,进入游戏。
最下面一行按钮分别是成就系统、记录显示、游戏设置、关于游戏
上面就是开始游戏和游戏存档,点击开始游戏即可。
3、进入游戏会提示:“嗨,我是windy,大家想知道这个游戏怎么玩吗”&
4、游戏就是要消除星星,清除的星星越多,分数就会越高
5、第一步,点击要消除的星星
6、点击雪花星星,会改变颜色
7、再次点击雪花星星,如果颜色变成和相邻的星星是同样颜色,就会出现冰冻效果。
8、点击相邻冰冻的星星,会提示需要消除的星星!
相关小游戏:
相关攻略推荐
阅读(12)日
阅读(104)日
阅读(13)日
阅读(15)日
阅读(10)日
阅读(20)日
阅读(26)日
阅读(26)日
阅读(117)日
阅读(12)日
相关游戏推荐
单机游戏推荐
开发商Nicalis曾经开发过超人气游戏《以撒的结合》,《以撒的结 ...
10.042.8 MB
《模拟人生》系列是一款虚拟世界的模拟游戏,在这款游戏里面玩家 ...
10.010.9 GB
现在的冒险解谜游戏除了拥有独特的游戏剧情之外,还有着精致的游 ...
10.0198.7 MB
在赛车竞速当中,最为刺激的便属摩托竞速了。因为摩托车只有两个 ...
7.515.5 GB
国产游戏一直不被国人看好,除了少数人在支持国产三剑之外,已没 ...
8.877.2 MB
《永恒之柱》在早前就发布了测试版,即使是这样,玩家也玩的不亦 ...
《文明》系列作品大家都知道,是一款出色的策略游戏,在游戏中玩 ...
8.0630.5 MB
亲自动手,打造一个美好的城市,让人们过上幸福美满的生活,这些 ...
《死或生(生死格斗)》这款福利向格斗大作一直吸取着一群狼友的 ...
《奥日与黑暗森林(OriandtheBlindForest)》这款独立游戏在早前 ...
本站所有内容均来源于互联网,本站不负任何法律责任,如果侵犯您的版权,请及时告知我们 ,我们将在收到通知后72小时内删除
牛游戏网提供游戏(包括单机游戏,电视游戏,手机游戏,网页游戏,网络游戏等)资讯,下载,攻略,补丁,始终站在 的最前沿
CopyRight(C) WWW.NEWYX.NET All Right Reserved 湘ICP备号-1
牛游戏网温馨提示:适度游戏娱乐 沉迷游戏伤身 合理安排时间 享受单机游戏9U8U通行证登录(可使用发号账号登陆)
下次自动登录 |
使用合作网站账号登录
注册9U8U通行证
由数字,字母,下划线组成,长度为3-20位。
请输入您常用的邮箱地址
6~20个字符,区分大小写,推荐使用数字+字母组合
请再次填写密码
请填写图片中的4位数字
使用合作网站账号登录
您的位置:&>&&>& > 消灭星星中文版怎么玩 消灭星星中文版怎么样
消灭星星中文版怎么玩 消灭星星中文版怎么样
来源: | 作者: | 时间:
关键字:消灭星星中文版怎么玩 消灭星星中文版怎么样 
  更多游戏攻略,敬请关注游戏网
  小伙伴们,消灭星星中文版怎么玩 操作指南知道么?还在南消灭星星中文版怎么玩 操作指烦恼么?下面就让小编带领大家一起了解消灭星星中文版怎么玩
操作指南吧!
  消灭星星中文版
  类型:休闲小游戏|大小:404K|语言:中文
  标签:原创|女生|中文汉化|全鼠标操作|消除|轻松
  小游戏简介:彩色斑斓的星星小方块在魔法王国的天空中闪耀着点点光芒,可是璀璨的星空竟然把月亮婆婆给挡了起来。现在考验大家智慧的时候到了哦,赶快帮魔法王国的公民们消灭星星吧。
  小游戏目标:将相同颜色的星星消除,达到目标分数即可过关
  如何开始:游戏加载完成后点击&新游戏&
  操作指南:消除使用鼠标点击颜色相同的星星,如相连的星星大于2则可消除,相连数越多越好,最后如果剩余小于10则可以得到额外的加分
  以上就是小编为乃们分享消灭星星中文版怎么玩 操作指南的所有内容了哦,希望可以帮到小伙伴们哦!
网友评论仅代表其个人看法,并不代表9U8U同意其观点!
游戏排行榜
凤凰游戏今天5399今天5399今天37游戏今天37游戏今天1666今天5399今天17188今天7ewan今天5399今天
9U8U媒体视窗popstar消灭星星2粉碎糖果怎么玩 玩法介绍_魔方网PopStar消灭星星2专区
用户名/邮箱
快速登录:
您正在访问:
popstar消灭星星2粉碎糖果怎么玩 玩法介绍
&&&&&&popstar消灭星星2粉碎糖果怎么玩?很多玩家对这个问题很是疑问,小编今天给大家带来popstar消灭星星2粉碎糖果玩法介绍,不知道的玩家快来看看吧,希望大家喜欢。
  popstar消灭星星2粉碎糖果传奇玩法介绍由魔方小编为大家带来,那么粉碎糖果传奇都有哪些玩法呢?如果你还不知道,就来看看这篇popstar消灭星星2粉碎糖果玩法介绍吧,希望能够帮助到大家。
  游戏体验:画面甜蜜略模糊 音效可爱夹噪声
  既然是以糖果为主题,那游戏给人的体验效果,当然是腻死人的甜喽。怎么说呢,五颜六色、绚丽多彩的游戏画面,由大量的鲜艳颜色堆积起来。色彩用墨浓厚的缤纷糖果,简直是要甜死人不偿命的节奏啊。不过如此丰富的色彩,却更加凸显了其略显模糊的画质。可能开发者想用这种朦胧美,来衬托下甜蜜的梦幻感也说不定啊。对于益智游戏来说,欢快的背景音乐当然是必不可少的,简单的和弦使画面更加有跳动感。消除时的各种音效也相当活泼可爱。不过与画质的瑕疵相同,悦耳的声音中透露一丝浮躁。
  玩法操作:步数有限 分数无限
  虽然游戏名称叫做消灭星星2,不过玩法与一代还是有很大区别的,更偏向类似糖果粉碎传奇。通过手指滑动交换相邻图标,消除三个及以上的相同图标,来获得高分。不过每个关卡的移动步数是有规定的,玩家需要在规定范围内达到目标,比如目标分数、搜集糖果等等任务要求。尤其是越靠后面的关卡,难度相应也就越大,想要获得三星评价,也着实要费一番功夫呢。
  特殊糖果:QQ糖果力无穷
  在琳琅满目的纯色糖果中,夹杂着一些图案更漂亮的特殊糖果。这些糖果虽然外表可爱美丽,但是其威力效果可是绝不一般。比如那棒棒糖状的糖果,可以敲碎任意一块图标;还有带着条纹的糖果,可以消除一整行。不过这些糖果可不是从天而降的,需要玩家努力达到一定目标才能够解锁创建的。
  游戏关卡:满足你的挑战欲
  这种消除类的小游戏,虽然普通简单,却有种魔力,总能让人不知不觉的一直玩下去。如果关卡过少,玩家还没消的过瘾,就已经通关,那真是令人意犹未尽的一大憾事。不过在本作中,你完全不用存在这个担心。几百个关卡,难度逐渐增加,不仅步数与目标的比例在扩展,图标地形也愈发复杂。引人的挑战,绝对让你浑然不觉地一关关继续下去。
  体力系统:只要技术强 爱心永不掉
  本作中虽然也设有体力限制系统,不过其不是按照游戏局数了扣除的。每当挑战失败一次,才会减少一颗红心。每半个小时才恢复一颗的心心固然珍贵,不过相信想让各位大神玩家输光爱心,也绝不是一件容易的事情。尤其是前面的关卡,轻松过关不掉心,so easy!妈妈再也不用担心你的体力不够用啦~不过妈妈可能会担心你沉迷游戏,不能自拔哦。
  以上就是小编给大家带来的popstar消灭星星2粉碎糖果玩法介绍,希望大家喜欢,更多资讯敬请关注魔方网popstar消灭星星2专区。
  相关内容推荐:
引领手游时尚,畅爽手游囧途,尽在魔方陪你玩官方微信
扫描二维码关注我呦!

我要回帖

更多关于 消灭星星在线玩 的文章

 

随机推荐