Unity之小项目疑点总结

来源:互联网 发布:淘宝客服每日工作内容 编辑:程序博客网 时间:2024/06/05 00:07
1.用static 修饰的变量名字我们可以在另一个类中访问,如:

public class Move : MonoBehaviour {
public static float lifetime = 5;
}

在另一个类中访问

public class Wp_axe : MonoBehaviour {
void OnTriggerEnter(Collider col) {
        if (col.tag == "Player")
        {
            Move.lifetime--;//我们可以直接用类的名字(Move).用static修饰的变量(lifetime)
            if (Move.lifetime == 0)
            {
                Destroy(col.gameObject, 1f);
            }
        }

2.一个对象想要在一定范围内追踪另一个对象的位置,我们可以用Vector3.Distance

如:Vector3.Distance(transform.position, Player.position) < 4

解释:transform.position:是要追踪对象的位置
Player.position:是被追踪对象的位置
小于4:是两个对象在4米的范围内发生的事件

3.声明对象:public Transform Enmey;和public   GameObject mouse;调用对象里的坐标的区别

如:用Transform声明对象可以直接使用 Vector3.Distance(transform.position, Enmey.position)
用GameObject声明对象则要:Vector3.Distance(transform.position, Enmey.transform.position)

4.制作一个血条

public Texture2D blood_Red;//红色血条(这个图片是需要插入图片)
public Texture2D blood_Blue;//蓝色血条 (这个图片是需要插入图片)
public int HP = 100;//当前血值
int blood_width = blood_Red.width * HP / 100;//根据当前血量计算红色血条显示的宽度
GUI.DrawTexture(new Rect(50, 100, 100 ,20 ), blood_Blue);//绘制蓝色血条
GUI.DrawTexture(new Rect(50, 100, blood_width , 20), blood_Red);//绘制红色血条

解释:

blood_width:血条的宽度
blood_Red:红色血条
blood_Blue:蓝色血条

更多精彩关注:http://www.gopedu.com/

0 0
原创粉丝点击