- namespace MyCollections.Stats
- {
- public enum StatType
- {
- Attack,
- Defense,
- Health,
- Mana
- }
- public class Stats
- {
- private readonly StatsMediator mediator;
- private readonly PlayerController controller;
- public StatsMediator Mediator => mediator;
- public int Attack
- {
- get
- {
- Query query = new Query(StatType.Attack, controller.CurrentPlayerAttack);
- mediator.PerformQuery(this, query);
- return (int)query.value;
- }
- }
- public int Defense
- {
- get
- {
- Query query = new Query(StatType.Defense, controller.CurrentPlayerAttack);
- mediator.PerformQuery(this, query);
- return (int)query.value;
- }
- }
- public Stats(StatsMediator mediator, PlayerController controller)
- {
- this.mediator = mediator;
- this.controller = controller;
- }
-
- public override string ToString() => $"Attack: {Attack}, Defende: {Defense}";
- }
- }