public AbstractTrapBehaviour GetTrapOfType(TrapType trapType) { var selectedTrapGo = AllTraps.FirstOrDefault(x => x.TrapType == trapType); selectedTrapGo.Model = TrapModel.GetTrapModelInfo(trapType); return(selectedTrapGo); }
public void CreateNewTrap(TrapType trapType) { var trapTemplate = trapsManager.GetTrapOfType(trapType); var newTrapGo = GameObject.Instantiate(trapTemplate); //this.CurrentTrap = newTrapGo; newTrapGo.SetTrapPlace(this); newTrapGo.Model = TrapModel.GetTrapModelInfo(trapType); TrapMenuGUI.StartClosingCurrentGui(); Debug.Log("Building " + trapType); GetComponentInChildren <SpriteRenderer>().gameObject.SetActive(false); var particle = GetComponentInChildren <ParticleSystem>(true); particle.gameObject.SetActive(true); var particleMain = particle.main; switch (newTrapGo.Model.AttackType) { case TrapAttackType.Fear: particleMain.startColor = new ParticleSystem.MinMaxGradient(new Color(110f / 255f, 18f / 255f, 223f / 255f)); break; case TrapAttackType.Light: particleMain.startColor = new ParticleSystem.MinMaxGradient(new Color(224f / 255f, 248f / 255f, 5f / 255f)); break; case TrapAttackType.Chaos: particleMain.startColor = new ParticleSystem.MinMaxGradient(new Color(51f / 255f, 135f / 255f, 44f / 255f)); break; case TrapAttackType.Poison: particleMain.startColor = new ParticleSystem.MinMaxGradient(new Color(55f / 255f, 165f / 255f, 165f / 255f)); break; default: throw new ArgumentOutOfRangeException(); } }
public void CreateNewTrap(TrapType trapType) { var toCreateTrap = TrapModel.GetTrapModelInfo(trapType); Money -= toCreateTrap.MoneyCost; }
public bool CanCreateTrap(TrapType trapType) { var toCreateTrap = TrapModel.GetTrapModelInfo(trapType); return(Money >= toCreateTrap.MoneyCost); }