UI界面(Class EnterDialog)

1、为界面添加一些文本及按钮。

 //小狐狸经过物体门时会看到一个提示对话框public GameObject enterDialog;private void OnTriggerEnter2D(Collider2D collision) {if(collision.tag== "Player"){enterDialog.SetActive(true);}   }private void OnTriggerExit2D(Collider2D collsion) {enterDialog.SetActive(false);}
}

主菜单界面(Class Menu)

1、创建一个总UI代码并挂载到UI画布Canvas上:

 public GameObject pauseMenu;    //获取暂停对话框public AudioMixer aduioMixer;  //创建音频混音器//切换场景public void PlayGame(){SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex+1);}//退出游戏public void QuitGame(){Application.Quit();}//获取Hierarchy界面中的游戏项目public void UIName(){GameObject.Find("Canvas/Panel_2/UI").SetActive(true);}//暂停游戏public void PauseGame(){pauseMenu.SetActive(true);Time.timeScale= 0f;}//返回游戏public void ResumeGame(){pauseMenu.SetActive(false);Time.timeScale= 1f;}

2、在文件夹中新建一个AudioMixer:

2、将滑动条Inspector中的数值范围调整为跟AudioMixer相匹配,-80到0;并添加AdjustVolume()方法。

3、展开AudioMixer后打开Master的Inspector界面,需要将其中的数值变成代码。选中右侧界面中的Volume,点击右键选择“Expose’Volume (of Master)'to script”;在左侧界面Exposed Parameters (1)下拉框中选择MainVolume。现在我们可以在代码中调节AudioMixer中的数值了!在Class Menu中添加以下代码:

 //调节音量public void AdjustVolume(float value){aduioMixer.SetFloat("MainVolume",value);}

场景切换(Class SceneManagement)

using UnityEngine.SceneManagement;public class SwitchScene : MonoBehaviour
{void Update(){if(Input.GetKeyDown(KeyCode.E))  //按下键盘的E键切换场景{SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex+1);}}
}

声音控制(Class SoundManager)

1、创建一个空物体命名为“SoundManager”并赋予其一个代码来调取声音以免造成我们的小狐狸挂载的AudioSource组件过多。

 public static SoundManager instance;    //创建一个该类的静态变量,这样我们在其他类中也能调用该类中的方法public AudioSource audioSource;[SerializeField] //使我们的private变量可视化private AudioClip jumpAudio,hurtAudio,cherryAudio;private void Awake() {instance= this;}//跳跃音效public void JumpAudio(){audioSource.clip= jumpAudio;audioSource.Play();}//受伤音效public void HurtAudio(){audioSource.clip= hurtAudio;audioSource.Play();}//获得物品音效public void CherryAudio(){audioSource.clip= cherryAudio;audioSource.Play();}

视觉差(Class Parallax)

1、为了制造近、中、远景各自不同的移动速度,我们创建一个新代码

 public Transform cam;   //创建摄像机物体public float moveRate; //移动速率private float startPointX,startPointY;public bool lockY;  //falsevoid Start(){startPointX=transform.position.x;}void Update(){if(lockY){transform.position= new Vector2(startPointX+cam.position.x* moveRate,transform.position.y);}else{transform.position= new Vector2(startPointX+cam.position.x* moveRate,startPointY+cam.position.y*moveRate);}}

U3D学习项目一:2D横版小狐狸闯关游戏(代码部分二)相关推荐

  1. U3D学习项目一:2D横版小狐狸闯关游戏

    一.版权出处 该学习内容均来自B站up主:M_Studio 的教学视频,初衷是为了以后忘了某些流程方便检索,非商用!!!! 二.Cinemachine 1.通过Windows--Packages Ma ...

  2. Unity学习笔记2 简易2D横版RPG游戏制作(二)

    十二.敌人受攻击时的闪烁和Player的生命值的修正 上一篇中,我们利用Controller2D中的IEnumerator TakenDamage接口,使得我们的Player受到攻击时会进行闪烁,我们 ...

  3. Unity学习笔记3 简易2D横版RPG游戏制作(三)

    这一篇本来应该是在上一篇后面直接补进去的.不过因为排版的问题.所以我就另开一篇来整理了,好了,废话不多说,马上整理: 十八.关卡的锁定与解锁 前面我们已经解决了在游戏开始时可以选择关卡的问题,接下来我 ...

  4. unity3d游戏2d横版射击游戏完整项目源码分享

    unity3d游戏2d横版射击游戏完整项目源码分享 免费下载地址: 链接:https://pan.baidu.com/s/1YwhEy7DeKIHFU8pBLdJFPg 提取码:3wnx 复制这段内容 ...

  5. 2D横版冒险文字游戏Horror Book2项目总结

    前些时间接手了个烂尾的社团游戏,其实也没出什么事,就是上一个码农字面意思上的删码跑路了而已(想想也是蛮吓人的orz),美术他们手上只剩下一个仅做了标题界面的demo,没办法只能找新的猴子重构一个游戏出 ...

  6. 用Unity开发一款2D横版游戏demo

    # LanW Game Project 目录 (一) 介绍 (二) 安装教程 (三) 开发流程 1.  新建工程 2.  设置人物 3.  控制主角的移动 4.   添加切换动作的动画 5.   镜头 ...

  7. Unity 4 3 制作一个2D横版射击游戏 2

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在上一篇 ...

  8. 2D横版游戏Demo试做流程(Unity3D+Visual Studio C#)

    2D横版游戏Demo试做流程(Unity3D+Visual Studio C#) 目录 UI界面设置 游戏规则制定 Player角色(玩家可控制角色相关)(创建playerC#文件) 怪物类(各种怪物 ...

  9. Unity 2D横版通关 小游戏——幻城探险 C#

    Unity 2D横版通关 小游戏 C#  分辨率 1920*1980 点击这里下载项目工程 本项目,为个人练习demo,美术资源原创自合作美工. 本项目涉及到的功能: 1.UI:开始游戏按钮,游戏帮助 ...

  10. unity中实现经典的2d横版单向跳跃平台

    经常玩2d横版游戏的朋友们相信一定对这种单向跳跃平台很熟悉:我希望我的角色可以通过跳跃跳上平台,然后在平台之上按下键盘的下键后从平台上落下. 那么想要实现这样的效果具体要怎么做呢?我们还是先将想要实现 ...

最新文章

  1. python画图标题_使用pyplot.matshow()函数添加绘图标题
  2. 如何让决策树中有样本的索引
  3. 聊聊flink的AscendingTimestampExtractor
  4. Maven在windows下的安装
  5. compileReleaseJavaWithJavac
  6. 【hihocoder - offer编程练习赛60 B】最大顺子(双指针,思维)
  7. SpringCloud Hoxton版微服务-入门篇
  8. Java集合框架之三:HashMap源码解析
  9. python实现语义分割_如何用PyTorch进行语义分割?一文搞定
  10. 微软MCITP系列课程(十)WSUS服务器搭建
  11. python学习模型_python学习笔记(IO模型)
  12. Jenkins系列一Linux环境安装Jenkins
  13. 一些忘记了的....
  14. H5互动游戏营销方案策划
  15. 不会英语能学java_不会英语可以学java吗 不会英语怎么学java?
  16. Ubuntu18.04与RTX1080Ti安装深度学习框架
  17. Java脚本写的随机验证码
  18. 怎么找到公众微信上的视频链接
  19. 新手程序员编程必不可少的八大工具
  20. 微软“咸鱼翻身”:股价沉沦17年后创历史新高

热门文章

  1. 年金系数用计算机怎么算,年金系数是什么?怎么计算?
  2. markdown语法手册完整版
  3. 魔兽星期二服务器维护,魔兽世界例行维护,假如我星期一晚上通宵,在星期二凌晨五点维护时我没退出游戏,会被强制退出么?...
  4. VMware安装Linux详细教程
  5. Zoned-Storage - 对ZNS块设备进行基准测试
  6. python做数据透视表_Python pandas中强大的数据透视表
  7. Linux root密码暴力破解及重置的三种方式
  8. 第1节 基本数据类型分析
  9. C语言源码实现俄罗斯方块
  10. USB 的UVC协议分析