技术点:
1. UGUI 事件的绑定 动画的制作
2. 创建preFab对象
3. 类对象的封装
4. 泛型集合List
实现效果:
在整个游戏开发过程中,游戏设计思路很重要,实现的方法其次,先是搭建游戏的场景,场景搭建完毕之后,创建敌人的预设和你的炮塔的预设,在这里面需要用到泛型集合List,以及封装类对象,产生类的对象集合,
封装类的对象 public Wave[] waves;
根据敌人的预设,不断产生敌人按照每波敌人产生,中间设置等待时间。
void Start() {
StartCoroutine(SpawnEnemy());
}
IEnumerator SpawnEnemy() {
foreach(Wave wave in waves ){
for (int i=0;i<wave.count ;i++ )
{
GameObject.Instantiate(wave.enemyPreFab,START.position,Quaternion.identity);
EnemyCount++;
yield return new WaitForSeconds(wave.rate);
}
while (EnemyCount>0)
{
yield return 0;
}
yield return new WaitForSeconds(waitTime);
}
}
等待敌人产生之后 设置敌人的运动轨迹,通过不带的设置坐标 实现敌人的轨迹行走
void Move() {
if (index > positions.Length - 1)
return;
transform.Translate((positions[index].position-transform.position).normalized*Time.deltaTime*speed);
if(Vector3.Distance(positions[index].position,transform.position)<0.2f)
{
index++;
}
if (index > positions.Length - 1)
{