纯js 消灭星星游戏,js 消灭星星游戏实现原理,有道具的消灭星星

消灭星星游戏的几个核心逻辑用10*10的数组nums保存星星,1-5表示有星星,0表示已经消去1、初始化,5种颜色的星星分配。 1-5这个最容易,随机分配就好,产生1-100的随机数num,num%5 +12、判断游戏是否结束循环数组nums,判断每一个星星是否有相邻的同色星星,有相邻的游戏未结束。每个星星,最多只有4个相邻的星星,这个很容易判断。game.isEn
摘要由CSDN通过智能技术生成

消灭星星游戏的几个核心逻辑

用10*10的数组nums保存星星,1-5表示有星星,0表示已经消去

1、初始化,5种颜色的星星分配。 1-5

这个最容易,随机分配就好,产生1-100的随机数num,num%5 +1

2、判断游戏是否结束
循环数组nums,判断每一个星星是否有相邻的同色星星,有相邻的游戏未结束。每个星星,最多只有4个相邻的星星,这个很容易判断。

game.isEnd=function()
{
var ps;
for(var i=0;i<100;i++)
{
if(!game.nums[i])continue; // 已经消去的,跳过
ps=game.getPos(i); // 数组的索引转换成2维坐标 如;0=[0,0]; 10=[0,1]; 100=[9,9]
if( ps.y>0 && game.nums[i-10]==game.nums[i]){
return 0;
}
if( ps.y<9 &&  game.nums[i+10]==game.nums[i]){
return 0;
}
if( ps.x>
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值