您的位置:首页 > 移动开发 > Unity3D

Unity3D学习之(血条的制作以及声音的添加)

2015-01-08 23:51 423 查看
欢迎大家光临我的博客
知识点:
    1、为了让敌人和主角保持一定的距离,我们运用的是Vector3.Distance( )方法,Distance这个方法代表了两点之间的距离,调用这个方法可以让敌方在一定距离之内追踪我的位置。
 
    2、接下来是血条的制作,首先这个用到了GUI的知识点,首先在方法外面声明Texture2D,然后创建一个OnGUI方法,用GUI的DrawTexture来实现血条。
 
    3、小动作的声音的添加,比如攻击的动作发出的声音。
 
一、判断我和敌人的距离
//如果敌人的位置和我的位置小于4米
Vector3.Distance(transform.position, girl.position) < 4f
//然后就调用下面这个方法
AnimationToWalk();
agent.SetDestination(girl.position);
 
//否则如果他俩的距离大于4米
else if (Vector3.Distance(transform.position, girl.position) >4f)
            {
                AnimationToMode();                  //调用这个Mode方法
                agent.SetDestination(transform.position);  //然后让敌人自身停留在原地
            }
 
 
二、制作血条
先来看一下效果图:



 
    //先定义两个贴图,一个前景色,一个背景色,贴图自己可以随意选择
public Texture2D blood_Red;
    public Texture2D blood_Black;
public int HP = 100;   //当血值达到100时,血条充满状态
 
//把贴图一定记得添加↓



 
    //根据当前血量计算红色血条显示的宽度  
int blood_width = blood_Red.width * Girl.lifeTime / HP;
//绘制黑色血条  
GUI.DrawTexture(new Rect(20, 20, blood_Black.width, blood_Black.height), blood_Black);
//绘制红色血条  
GUI.DrawTexture(new Rect(20, 20, blood_width, blood_Red.height), blood_Red);
//给文字改一下颜色
GUI.color = Color.green;
//在左上角显示生命值
GUI.Label(new Rect(20, 20, 100, 35), "生命值为:" + girlLifeTime);
 
三、声音的添加
public AudioClip clip;                //声明一个clip音频
    private AudioSource girlAudio;        //声明一个静态的音频来源
    void Start()
    {
        girlAudio = this.audio;           //初始化一下
    }
    void OnTriggerEnter(Collider other)
    {
        if (other.tag == "Mouse")         //当主角碰到标签为Mouse的对象时执行下面的操作
        {
            girlAudio.audio.PlayOneShot(clip);     //播放clip这个音频
        }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: