public void Sell() { StopAllCoroutines(); SpriteEffect effect = null; if (PoolManager.Instance != null && PoolManager.Instance.GetEffectFromPool((int)EffectTable.eEffectType.Type_Tower_Sell, out effect)) { effect.Init(transform); } else { EffectTable.TableRow effectTable = null; if (EffectTable.Instance.FindTable((int)EffectTable.eEffectType.Type_Tower_Sell, out effectTable)) { LoadAssetbundle.LoadPrefabCB loadPrefabCB = new LoadAssetbundle.LoadPrefabCB(LoadDestroyEffectCompleteCB); PrefabManager.Instance.LoadPrefab(effectTable.effectPath, System.Guid.NewGuid(), loadPrefabCB, effectTable); } } if (TowerManager.Instance != null) { TowerManager.Instance.RemoveTowerList(this); } if (PoolManager.Instance != null) { PoolManager.Instance.AddTowerPool(this); } if (GameManager.Instance != null) { GameManager.Instance.AddGameGold(status.GetSellPrice); } }
private void SetDamageEffect(DamageParam param) { SpriteEffect effect = null; if (PoolManager.Instance != null && PoolManager.Instance.GetEffectFromPool(param.GetDamageEffectID, out effect)) { effect.Init(effectDummy); } else { EffectTable.TableRow effectTable = null; if (EffectTable.Instance.FindTable(param.GetDamageEffectID, out effectTable)) { LoadAssetbundle.LoadPrefabCB loadDamageEffectPrefabCB = new LoadAssetbundle.LoadPrefabCB(LoadDamageEffectCompleteCB); PrefabManager.Instance.LoadPrefab(effectTable.effectPath, System.Guid.NewGuid(), loadDamageEffectPrefabCB, effectTable); } } }