第一個小游戲

【角色】
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class NewBehaviourScript : MonoBehaviour {
private Rigidbody Rd;
public int force = 5;
private int score = 0;
public Text text;
public GameObject winText;
void Start () {
Rd = GetComponent<Rigidbody>();
}

void Update () {
    float h = Input.GetAxis("Horizontal");
    float w = Input.GetAxis("Vertical");
    Rd.AddForce(new Vector3(h,0,w)*force);
}
//private void OnCollisionEnter(Collision collision)//獲取碰撞到的游戲物體上的Collision組件【碰撞器】
//{
// /*  string name = collision.collider.name;*///獲取碰撞到的游戲物體名字
//    //Debug.Log(name);
//    //GameObject obj = GameObject.FindWithTag("pikup");
//    if (collision.collider.tag=="pikup") {//判斷碰撞到的物體的tag是不是等于pikup,如果是就把他刪掉!
//        Destroy(collision.collider.gameObject,3f);//刪除物體(string,time)
//    }
//}
private void OnTriggerEnter(Collider collider)//獲取觸發的物體【不是碰撞】
{
    if (collider.tag == "pikup") {//【同理】
        score++;
        text.text = score.ToString();
        if (score == 16)//當score=11的時
        {
            winText.SetActive(true);//激活winText【原未激活狀態】
        }
        Destroy(collider.gameObject);
    }
}

}

【相機】
using UnityEngine;
using System.Collections;

public class FollowTarget : MonoBehaviour {

public Transform playerTransform;
private Vector3 lala;
void Start () {//只執行一次
    lala = transform.position - playerTransform.position;//讓相機的坐標減去玩家的坐標等于坐標差(向量)

}

// Update is called once per frame
void Update () {
    transform.position = playerTransform.position + lala;//把坐標差加玩家的坐標賦給相機,相機就會保持跟蹤
}

![Uploading 1_101583.jpg . . .]

}

【繞某點旋轉】
using UnityEngine;
using System.Collections;

public class PickUp : MonoBehaviour {

// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {
    transform.Rotate(new Vector3 (0,1,0));//物體圍繞某個點進行旋轉
}

}


1.jpg
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容