Unity 按钮音效管理【悬浮和按下】
删除按钮上的Buton组件,在按钮上挂载以下两个脚本
using UnityEngine.EventSystems;
using UnityEngine.UI;namespace MT_Button
{public class M_ButtonWithSound : Button{private bool pointerWasUp;private M_ButtonSounds buttonSounds;protected override void Awake(){base.Awake();buttonSounds = GetComponent<M_ButtonSounds>();}public override void OnPointerClick(PointerEventData eventData){if (buttonSounds != null){buttonSounds.PlayPressedSound();}base.OnPointerClick(eventData);}public override void OnPointerUp(PointerEventData eventData){pointerWasUp = true;base.OnPointerUp(eventData);}public override void OnPointerEnter(PointerEventData eventData){if (pointerWasUp){pointerWasUp = false;base.OnPointerEnter(eventData);}else{if (buttonSounds != null){buttonSounds.PlayHoverSound();}base.OnPointerEnter(eventData);}}public override void OnPointerExit(PointerEventData eventData){pointerWasUp = false;base.OnPointerExit(eventData);}}
}
using UnityEngine;namespace MT_Button
{[RequireComponent(typeof(AudioSource))]public class M_ButtonSounds : MonoBehaviour{/// <summary>/// 悬浮时音效/// </summary>public AudioClip hoverSound;/// <summary>/// 按下时音效/// </summary>public AudioClip pressedSound;private AudioSource audioSource;private void Awake(){audioSource = GetComponent<AudioSource>();}public void PlayPressedSound(){audioSource.clip = pressedSound;audioSource.Play();}public void PlayHoverSound(){audioSource.clip = hoverSound;audioSource.Play();}}
}
Unity 按钮音效管理【悬浮和按下】相关推荐
- 关于 Unity 音乐音效管理
本文转载自:http://blog.csdn.net/microsoftMSDNNET/article/details/47273239 在实战项目中,音乐音效的好坏肯定是一个玩家对此项目评定的一个因 ...
- 关于Unity音乐音效管理
在实战项目中,音乐音效的好坏肯定是一个玩家对此项目评定的一个因素之一.所以,有必要对音乐音效做出一个统一的管理. 首先,我把几个音效放到了Resouces的Audios文件夹下,方便动态加载. 之后, ...
- Unity 工具类 之 编辑扩展器 之 简单的音效管理编辑扩展器面板实现
Unity 工具类 之 编辑扩展器 之 简单的音效管理编辑扩展器面板实现 目录 Unity 工具类 之 编辑扩展器 之 简单的音效管理编辑扩展器面板实现 一.简单介绍 二.实现原理 三.注意事项 四. ...
- 【Unity植物大战僵尸】音效管理器开发(二十四)
42.音效管理器开发 导入资源 整理一下GameManager.cs,因为这个脚本要在两个场景中都共用,所以需要把CurrLV相关的移植到LVManager.cs中去,这里就不显示了,说下如何共用,首 ...
- U3D客户端框架之 音效管理器 与 Fmod介绍安装导入Unity
一.Fmod介绍与安装导入Unity 1.Fmod与Unity内置Audio播放器对比 Unity内置的Audio底层使用的是FMOD,但是功能不够齐全,高级一点的功能如混合(Mix)等无法使用: 音 ...
- Unity程序基础框架__音效管理模块
音效管理模块 作用:统一管理音乐音效相关 以前处理音效播放的时候就是哪儿需要播放音效就在哪儿去添加相关的代码段,弄得项目代码不简洁,也很冗杂,为了解决这个问题,整理了一个音效管理的模块,我们在哪儿需要 ...
- unity音效管理器
unity游戏制作时,经常需要播放音效,如果没有一个音效管理类,随时随地都可以播放音乐,不利于代码的管理.我们可以将所有关于音效集中到一个管理类当中,可以将这个音效管理器写成单例,也可以将它当作一个模 ...
- Unity 音效管理器编辑窗口的创建和Manager的创建
一.音效管理器面板的创建 1.首先要继承EditorWindow,然后再静态方法里创建窗口编辑器. [MenuItem("Manager/AudioManager")] stati ...
- Unity 音效管理
创建一个音效管理脚本, 把想要播放的音效放在Resources目录下,需要播放的时候一行代码就可以搞定 话不多说,看脚本 using System.Collections; using System. ...
最新文章
- 基础 | 深度学习与神经网络-介绍
- 借鉴人类,跨越模态 | NLP和预训练模型未来的发展之路
- [转]DPM2012系列之四:配置邮件报警功能
- 【安全牛学习笔记】SQLMAP自动注入-REQUEST
- 特征工程(1):特征提取、特征构建、特征选择的区别
- AsyncTask的基础讲解
- 2.5.PHP7.1 狐教程-【数据类型】
- 张孝祥《Java就业培训教程》读书笔记
- PHP银行卡信息基类大全
- gps数据解析程序c语言,GPS数据采集分析要点
- C#添加 / 创建本地数据库连接
- 求解不定方程 (扩展欧几里得算法)
- ping、arping、fping、hping、hping3、nping
- html支持bmp格式,bmp和jpg的区别是什么?
- 小程序UI框架推荐:Vant让你优雅的飞
- 自走棋服务器没有响应,从爆火到凉凉,多多自走棋宣布停服,加入腾讯属于无奈?...
- 避免使用宏#define定义常量
- php mysql webim_webim(icomet) 使用
- [SDOI2008]Sue的小球(区间Dp)
- Scrapy图片分类异步下载