js制作一个摇点数前进后退的小游戏思路。

游戏规则:
小红点从1移动到14的格子算游戏过关。
点击『获取步数』得到一个随机数,比如我当前在1,得到5,需要逐步移动到5,不能直接一下到5。
『获取步数』有可能前进、后退、还有停止。
求完成思路,请大神们帮忙。

已邀请:
前进后退停止的问题可以比较当前数字和摇出来的数字
摇出来的数字大就是前进,递增循环设置当前的数字所在的格子为高亮样式,其他的都为不亮样式。摇出来的数字小就递减循环,相等就不动。

chenfulai

赞同来自:

获取随即点数,让移动到对应格数,每次得到的点数相加,大于格数,就让相加的值取余,移动问题,可以做一个循环,移动到对应格数,根据格数内的内容触发不同事件,= =感觉像大富翁啊

gongjizhu

赞同来自:

我觉得楼主其他地方已经比较清楚,但着重想要确认那个“不能直接一下,需要逐步”如何实现?

随机数为整数,可以为负,也可以为0,这样就有前进、后退、和停止。伪代码作为思路:

// 格子编号
var status = 0;

btn.onclick = function(){
    var delta = 生成随机数(),
    statusNew = status + delta,
    posNew = 根据格子编号得到坐标位置(statusNew);

    红点.animate(posNew, function(){

        // 表示“逐渐”的动画完成后的回调

        status = statusNew;

        // 这里还可以加一些边界检查

        // 再来看看是否过关了?
        if(status>=14){
            过关();
        }

    })
};

abc21243183

赞同来自:

描述的有点少了,没看的太懂。。。

要回复问题请先登录注册