1.场景搭建
2.创建folder,改名为barrier,创建刚体也就是障碍物3.创建不同的颜色
4.编写摄影机跟随代码(敲完代码,将代码移动到摄影机的位置)
5.编写player控制代码(将代码移动到player的位置)
6.编写石头控制代码(将代码移动到wall的位置)
7.编写刚体(障碍物)代码——障碍物生成和颜色生成(移动到刚体的位置)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class BarrierControl : MonoBehaviour {
public int barrierInterval=5;
public GameObject player;
public GameObject CurrentBarrier;
public GameObject BarrierPre;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
AutoCreatBarrier();
}
// 障碍物自动生成
public void AutoCreatBarrier()
{
if(player.transform.position.x>CurrentBarrier.transform.position.x)
{
//生成新的障碍物
float targetX = CurrentBarrier.transform.position.x + barrierInterval;
float targetY = RandomBarrierPosition();
Vector3 targetPos = new Vector3(targetX,targetY,0);
GameObject g = Instantiate(BarrierPre,targetPos,Quaternion.identity);
//随机大小
g.transform.localScale = new Vector3(g.transform.localScale.x, RandomBarrierSize((int)g.transform.position.y), g.transform.localScale.z);
//判断障碍更换
CurrentBarrier = g;
}
}
//障碍随机大小
public float RandomBarrierSize(int r)
{
int rAbs = Mathf.Abs(r);
if(rAbs==0)
{
return 6;
}
else
{
return (3-rAbs)*2+1;
}
}
//障碍物随机位置
public float RandomBarrierPosition()
{
int r = Random.Range(-3,3);
Debug.Log(r);
return r;
}
}
8.声音控制
9.游戏场景
碰到障碍物,游戏停止。