public override void OnActionClicked(ActionDefinition actionDefinition) { if (actionDefinition is UnitAction unitAction) { EventObservers.ForEach(o => o.IndicateUnitAction(this, unitAction)); } }
public override void OnActionClicked(ActionDefinition actionDefinition) { switch (actionDefinition) { case BuildAction buildAction: EventObservers.ForEach(o => o.IndicateBuildCell(buildAction, this)); break; case UpgradeAction upgradeAction: { var tech = upgradeAction.GetNextTech(); EventObservers.ForEach(o => o.AddTech(tech)); break; } default: Debug.LogError("only build and upgrade actions are defined for building cells"); break; } }