> Player
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Player : MonoBehaviour
{
private Rigidbody rd; //声明一个钢体组件rd (通过rd去操作组件)
private int score = 0;
public Text text; // 调用组件 小 更细化
public GameObject winText; // 调用游戏物体 大
void Start()
{
rd = GetComponent<Rigidbody>(); //得到游戏物体的钢体组件并赋给rd
}
// Update is called once per frame
void Update()
{ //如何得到左右按键(A D)和前后按键(W S)
float h = Input.GetAxis("Horizontal");//得到水平轴的值 是个小数 h返回—1到1的值(负数A键)
float v = Input.GetAxis("Vertical");
rd.AddForce(new Vector3(h, 0, v)*7); // 让它一直运动 通过 . 去调用方法
//new Vector3(x,y,z)创建1个向量(一个向量有3个值)
//*5速度放大5倍
}
//碰撞检测
/* void OnCollisionEnter(Collision collision) {
//collision.collider 获取碰撞到的游戏物体身上的Collider组件
//string name = collision.collider.name;//获取碰撞到游戏物体的名字
//print(name);//把一个字符串输出显示到控制台
if (collision.collider.tag == "PickUp"){
Destroy(collision.collider.gameObject);
}
}
*/
//触发检测
void OnTriggerEnter(Collider collider){
if (collider.tag == "PickUp"){
score++;
text.text = score.ToString();
if (score == 10)
{
winText.SetActive(true); //激活游戏物体
}
Destroy(collider.gameObject);
}
}
}
> PickUp
using UnityEngine;
using System.Collections;
public class PickUp : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () { //1s 60次
transform.Rotate(new Vector3(0, 1, 0));
//transform组件 Rotate方法 围绕某个轴旋转
}
}
> FallowTarget
using UnityEngine;
using System.Collections;
public class FollowTarget : MonoBehaviour {
public Transform playerTransfrom;//Transform组件可得位置 定义主角的
public Vector3 offset;
// Use this for initialization
void Start (){ //只执行一次 用于初始化
offset = transform.position - playerTransfrom.position;
// 相机位置-主角位置=偏移
}
// Update is called once per frame
void Update () {
transform.position = playerTransfrom.position + offset;
// 相机位置=主角位置+偏移(主角位置一直在动)
}
}
全部历程:
01 Roll A Ball 小游戏(环境搭建)
02 Roll A Ball 刚体介绍和脚本的创建
03 Roll A Ball通过代码控制移动
04 Roll A Ball通过键盘按键控制小球的移动
05 Roll A Ball控制相机的跟随
06 Roll A Ball控制小球的移动范围
07 Roll A Ball如何创建可收集的食物
08 Roll A Ball控制食物的旋转
09 Roll A Ball 碰撞检测与触发检测
10 Roll A Ball显示分数和胜利检测
11 Roll A Ball游戏发布和运行
12 Roll A Ball全部代码