Unity迷宫中吃金币

这篇具有很好参考价值的文章主要介绍了Unity迷宫中吃金币。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、新建3D项目-->命名并创建项目Unity迷宫中吃金币

 2、右键点击3D Object新建平面Plane,调整平面大小,并且平面不要设置太大,否则后期小球会穿墙,在Assert中选择一个迷宫的贴图并将它给平面。

Unity迷宫中吃金币

3、创建Cube,将它设置的和下边的迷宫图重合,还可以给Cube添加材质Material,换上自己喜欢的颜色

Unity迷宫中吃金币

 4、添加Sphere,修改名字为player,调整小球的位置,并设置材质。

Unity迷宫中吃金币

 5、添加move脚本,将脚本拖给小球,使小球能够通过WASD或上下左右移动。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;


public class move : MonoBehaviour
{
	public float speed=1;
    // Start is called before the first frame update
    void Start()
    {   

    }
  // Update is called once per frame
    void Update()
    {
        float v = Input.GetAxis("Vertical"); //按‘W’'S'键返回垂直方向[-1,1]的值
        float h = Input.GetAxis("Horizontal");//按‘A’'D'键返回水平方向[-1,1]的值      
        transform.Translate(h * speed * Time.deltaTime, 0, v * speed * Time.deltaTime);
      
    } 
}

6、选中小球,选择右侧的Add Component,搜索Rigidbody,选择然后选中Use Gravity,点开Constrains,将这些打勾,否则小球会乱转。

Unity迷宫中吃金币

7、添加金币,将其放在迷宫的各个位置,新建一个create empty,改名为coin,将所有小球放在coin里,添加rorate脚本,选中一个小球,点shift,点击最后一个小球,就可选中所有的小球,将脚本给所有小球,让所有小球旋转。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class rorate : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        this.transform.Rotate(Vector3.up,Space.World);
    }
}

8、给move脚本添加内容,使小球碰到金币就会吃掉它。给所有小球添加tag ,命名为coin,并选择,然后添加is Trigger,这样就实现小球移动,金币旋转,和小球吃掉金币的效果。

 private void OnTriggerEnter(Collider other)
    {
        if (other.tag == "coin")
        {
            Destroy(other.gameObject);
                 
        }
    }

9、新建一个Panel,实现计时和得分的效果,添加text文本,修改文本为score和time,再设置win和fail的文本。

Unity迷宫中吃金币Unity迷宫中吃金币

 10、继续在move里面添加代码,当吃掉小球时,进行计分。并新建一个空项目,设置倒计时,新建倒计时TimeDown的脚本将其给新建的空项目。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;


public class move : MonoBehaviour
{
	public float speed=1;
	private int score_num = 0;
	public Text score;
	public GameObject win;
  
    // Start is called before the first frame update
    void Start()
    {
        win.SetActive(false);

       

    }

    // Update is called once per frame
    void Update()
    {
        float v = Input.GetAxis("Vertical"); //按‘W’'S'键返回垂直方向[-1,1]的值
        float h = Input.GetAxis("Horizontal");//按‘A’'D'键返回水平方向[-1,1]的值      
        transform.Translate(h * speed * Time.deltaTime, 0, v * speed * Time.deltaTime);
        if (Input.GetKeyDown(KeyCode.R))
        {
            SceneManager.LoadScene(0);
            Time.timeScale = 1;
            return;
        }
    }

    private void OnTriggerEnter(Collider other)
    {
        if (other.tag == "coin")
        {

        	score_num++;
            score.text = "score: " + score_num.ToString();//显示字符串,字符串控制符
          
            Destroy(other.gameObject);
            
               if (score_num == 10)
            {
            	win.SetActive(true);
                Time.timeScale = 0;//运行时间倍率,0代表游戏停滞
               
            }

        }
    }

}

 倒计时脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class TimeDown : MonoBehaviour
{

	private float CountDownTime = 29f;
	private float GameTime;
	private float timer = 0;
	public Text GameCountTimeText;
	public GameObject over;
	private AudioSource au;

	private void Start()
	{
		GameTime = CountDownTime;
		over.SetActive(false);
		au = GetComponent<AudioSource>();
	}
	private void Update()
	{

		int M = (int)(GameTime / 60);
		float S = GameTime % 60;
		timer += Time.deltaTime;

		if (timer >= 1f)
			{
				timer = 0;
				GameTime--;
				GameCountTimeText.text = "time"+M + ":" + string.Format("{0:00}", S);
				if (S <= 0)
				{
					//au.Play();
					over.SetActive(true);
				//结束游戏操作
					Time.timeScale = 0;
					
				}
			}

		

	}
	
}

11、给小球添加游戏音效和吃掉金币的音效。

保存并运行,便可以运行游戏了。

还可以添加游戏开始和游戏结束的页面。

Unity迷宫中吃金币文章来源地址https://www.toymoban.com/news/detail-476106.html

到了这里,关于Unity迷宫中吃金币的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity关于无法新建项目的可能解决办法

    PISCOMAI ,1 年前 发布于异常报错 有的朋友无法新建项目,可能会闪退,卡在新建界面加载,路径不存在等错误,下面我为大家提供几个解决办法,请大家逐一尝试,并希望在该帖子下留下你们的问题与解决办法,帮助其他开发者!!! 1 尝试退出登录然后重新登陆 2 有开发者

    2023年04月10日
    浏览(37)
  • gitLab创建项目无分支,本地新建module提交gitLab教程

    两套方案: 第一套:git创建空项目,然后把里面的git文件拷贝到本地项目里面,本地项目可以实现版本控制. 第二,idea fetach下,把git的manage project里面的远程地址路径核对一下,以及右下角git项目里面有项目名称为止 第三,把本地项目add为git文件,然后提交且推送,如果成

    2024年01月16日
    浏览(46)
  • 在 Qt Creator 上创建 ROS 项目并新建/导入 ROS 包

    ⚠️ 在开始之前,您需要确保您已经为 Qt 配置好了 ROS 开发环境了。如果您还没有配置好,可以参考这篇文章 本文将着手探讨如何在 Qt Creator 上编辑 ROS 项目(工作空间)。 Ubuntu 20.04.6 LTS ROS Noetic Ninjemys LTS Qt 6.2.4 LTS Qt Creator 10.0.1 在(零)基础概念篇介绍 ROS 工作空间 时曾说

    2024年01月23日
    浏览(43)
  • Unity——金币飞行效果

    使用的工具:dotween 效果展示: 金币飞行    CoinParent是起点,TargetPos是目标终点,金币从CoinParent炸开并飞向终点。      

    2024年02月05日
    浏览(40)
  • Unity制作 小球吃金币 游戏

    工程源文件下载地址-百度网盘 1. 新建一个项目 2. 新建一个平面对象 3. 新建一个材质球 为材质球设置颜色 5. 将材质球拖拽赋值给平面 6.  创建立方体对象,拉伸至平面宽度 7. 再复制三个立方体、调整位置、添加材质,用四个调整过的立方体将平面围起来 8. 创建一个球体(

    2024年01月15日
    浏览(48)
  • unity小球吃金币小游戏

    链接放在这里 unity小球吃金币小游戏-Unity3D文档类资源-CSDN下载 这是我在学完虚拟现实技术这门课程后利用unity所做的小球吃金币小游戏,里面有源码和作品源文件,用u更多下载资源、学习资料请访问CSDN下载频道. https://download.csdn.net/download/m0_57324918/85604051 1创建Roll A Ball小球吃

    2023年04月08日
    浏览(48)
  • 【Unity2D】实现打怪掉落物品(如爆金币等)的功能

    本文章记录实现打怪掉落物品的功能,以下代码为2D实现,3D模式稍加修改即可。 目录 一、代码部分 二、注意事项 三、效果展示 创建一个C#脚本命名为Item,并将该脚本挂载到需要掉落的物品上。 1.需要禁用掉落物品与自身和其他人物之间的碰撞(否则可能被物品撞飞)。

    2024年02月11日
    浏览(38)
  • python项目分享 接金币小游戏设计与实现 (源码)

    🔥 Hi,各位同学好呀,这里是L学长! 🥇今天向大家分享一个今年(2022)最新完成的毕业设计项目作品 python小游戏毕设 接金币小游戏设计与实现 (源码) 🥇 学长根据实现的难度和等级对项目进行评分(最低0分,满分5分) 难度系数:3分 工作量:3分 创新点:3分 项目获取: htt

    2024年03月09日
    浏览(54)
  • python项目分享 - 接金币小游戏设计与实现 (源码)

    🔥 Hi,各位同学好呀,这里是L学长! 🥇今天向大家分享一个今年(2022)最新完成的毕业设计项目作品 python小游戏毕设 接金币小游戏设计与实现 (源码) 🥇 学长根据实现的难度和等级对项目进行评分(最低0分,满分5分) 难度系数:3分 工作量:3分 创新点:3分 项目获取: htt

    2024年02月22日
    浏览(50)
  • Python实战项目:吃金币(源码分享)(文章较短,直接上代码)

     ✌ 作者简介:信年✘ ✌,大家可以叫我 ❤信年❤ ,一位精通五门语言的博主 ✌ 🏆 CSDN博客专家认证、华为云享专家、阿里云专家博主 、掘金创作榜No.1 📫 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀 💬 人生格言:没有我不会的语言,没有你

    2024年02月10日
    浏览(91)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包