[原创]unity教程之2048游戏03

本文详细介绍了如何在Unity中实现2048游戏的方块移动功能,包括按键控制、方块位置更新、移动动画以及合并逻辑。通过监听键盘输入,更新方块位置,并在相邻相同数值的方块相遇时进行合并,展示了2048游戏的关键代码实现。
摘要由CSDN通过智能技术生成
前面讲完了,游戏一开始生成两个方块在随机的位置(而且是2和4的随机数字)。
  那么完成了随机生成方块,现在要实现移动方块了。按键上下左右(wsad)来移动方块。
1,前面的第6点已经给出方块的完整的代码了,这里把思路讲讲。
  1-1,首先是newPos = transform.position;,这里newPos 就是我们用来控制移动的
 
void Update () {
            transform.position=Vector3.MoveTowards(transform.position,newPos,25.0f);

            }
当newPos改变的时候,方块就朝newPos的位置移动。
  1-2,那么怎么改变newPos 呢,或者说什么样的情况下改变呢,我们通过建立changePos()这里函数来改变,带有参数的,到时候要用到
 
    public void changePos(int temIndex){
            newPos.x = -132f + temIndex * 88f;//这个是根据实际图片的尺寸知道的,当temIndex等于0的时候,
//,也就是newPos.x=-132f,所以这个方块的位置是[0]
            if(needsetz){
            newPos.z = 1;//这个是让他显示在上层,作用不大
                  needsetz=false;
            }

2,好了,回到public class gmmanager : MonoBehaviour {。
  建立这么一个函数
private void MoveNum(){
if (Input.GetKey (KeyCode.W)) {
                  return;
            }
            if (Input.GetKey (KeyCode.S)) {
                  return;
            }
            if (Input.GetKeyDown (KeyCode.A)) {
return;

if (Input.GetKeyDown (KeyCode.D)) {}

3,然后我们在if (Input.GetKeyDown (Ke
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值