public GameObject ObjectToPool(PhotonPool pool) { if (pool.creep) { return(pool.creep.Prefab); } if (pool.tower) { return(pool.tower.prefab); } return(pool.gameObj ? pool.gameObj : null); }
private static void SetObjectData(GameObject obj, PhotonPool pool) { if (obj.Equals(null)) { Debug.LogWarning(obj + " does not have a data set! Check the PoolManager."); return; } var creep = obj.GetComponent <MatchSystem.Creep>(); var turret = obj.GetComponent <Turret>(); var proj = obj.GetComponent <Projectile>(); if (creep) { creep.Health = pool.creep.Health; creep.Attack = pool.creep.Attack; creep.Defense = pool.creep.Defense; creep.CreepName = pool.creep.Prefab.name; creep.Income = pool.creep.Income; creep.CreepCost = pool.creep.Cost; creep.RefreshSendRate = pool.creep.RefreshSendRate; creep.SendLimit = pool.creep.SendLimit; return; } if (turret) { turret.damage = pool.tower.damage; turret.fireRate = pool.tower.fireRate; turret.range = pool.tower.range; turret.projectilePrefab = pool.tower.projectilePrefab; turret.projectileSpeed = pool.tower.projectileSpeed; turret.shootEffect = pool.tower.shootEffect; turret.impactEffect = pool.tower.impactEffect; turret.towerName = pool.tower.prefab.name; turret.TowerCost = pool.tower.cost; return; } if (proj) { proj.ProjectileName = pool.gameObj.name; return; } }