unity吃豆人小游戏,迷宫实现

unity吃豆人小游戏,迷宫实现

展示效果
在这里插入图片描述

这个小游戏主要是做了主角的移动,场景切换,碰撞检测。

1主角移动

 		int n = 6;
        float H = Input.GetAxis("Horizontal") * Time.deltaTime * n;
        float V = Input.GetAxis("Vertical") * Time.deltaTime * n;
        this.gameObject.transform.Translate(H, V, 0);//移动函数

2场景切换

 					  a.transform.localPosition = new Vector3(-100F, 10.3F, -0.87F);
                      b.transform.localPosition = new Vector3(0, 0, -0);
                      this.gameObject.transform.localPosition = new Vector3(-22.1F, 10.3F, -0.87F);

大家仔细看gif图片,我level1和level2上面的切换非常流畅。因为我并不是替换scene。对于一些小游戏来说,尽量不要随便用scene的切换,不然会感觉有卡顿。我这里只是做了位置的主体转变而已。

3碰撞检测

    //碰撞函数
    void OnTriggerEnter(Collider other)
    {
    
    

    
          //碰到的是球
          if (other.name == "ball")
          {
    
    
              Destroy(other.gameObject);
              print(ballcount);
              ballcount -= 1;
    
          
              if (ballcount == 0 )
              {
    
    
                  if (guanqia == 1)//下一关
                  {
    
    
                      a.transform.localPosition = new Vector3(-100F, 10.3F, -0.87F);
                      b.transform.localPosition = new Vector3(0, 0, -0);
                      this.gameObject.transform.localPosition = new Vector3(-22.1F, 10.3F, -0.87F);
                      ballcount = 3;
                      //关卡+1
                      guanqia = guanqia + 1;
                  }
                  else//赢了
                  {
    
    
                      print("赢了");
                  }
    
              }
      
          }
          //碰到的是墙
          else
          {
    
    
              //返回原来的位置
              this.gameObject.transform.localPosition = new Vector3(-22.1F, 10.3F, -0.87F);
          
          }
      }

这里要是碰到小球就算分数,进入下一关。要是碰到的是墙,就要回到原来的位置。

有需要源码的小伙伴可以联系我。也欢迎其他小伙伴留言交流学习

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u011718690/article/details/114367535