协程开始和结束的时候参数要保存格式一致,都用字符串或者是协程,用字符串的情况可以用stop随时停止协程,用协程的话要等待线程的结束后才能终止
协程开始和结束的时候参数要保存格式一致,都用字符串或者是协程,用字符串的情况可以用stop随时停止协程,用协程的话要等待线程的结束后才能终止
Messhage
ExplosionEffect
FirePosition
BuildEffect
Animations
Build
Laser Turret Switch
LaserTurret
Enemy Spawner
Waypoints
Scripts
ViewController
Start
Tower Defense Project
Material Prefab
2021.3版本的OnDestory方法需要自己调用一下才可以执行,应该是版本问题
怎么设计UI的变化
有些同学遇到的中间道路也变色的话 可以给中间的加上Way标签 然后用如下的代码
void OnMouseEnter() {
if (turretGo == null && EventSystem.current.IsPointerOverGameObject()==false && this.tag !="Way") {
renderer.material.color = Color.red;
}
}
void OnMouseExit() {
if (turretGo == null && EventSystem.current.IsPointerOverGameObject() == false && this.tag != "Way") {
renderer.material.color = Color.white;
}
}
更新敌人集合可以使用如下代码 只需要一次循环
void UpdateEnemys() {
List<GameObject> newEnemys = new List<GameObject>();
for (int index = 0; index < enemys.Count; index++) {
if (enemys[index] != null) {
newEnemys.Add(enemys[index]);
}
}
enemys = newEnemys;
}
停止敌人生成
public void Stop()
{
StopAllCoroutines();
}
if (laserRenderer.enabled==false)
{
laserRenderer.enabled = true;
laserEffect.SetActive(true);
}
我写成了 laserEffect.SetActive(false);卡了我很久