using System;

namespace Jovian.EncounterSystem {
    /// <summary>Data-only dialog option side effect. Handlers are registered on <see cref="EncounterResolver"/>.</summary>
    public interface IEncounterEvent {
    }

    [Serializable]
    public class ChainToEncounterEvent : IEncounterEvent {
        public string nextEncounterId;
    }

    [Serializable]
    public class StartCombatEvent : IEncounterEvent {
        public string combatEncounterId;
    }

    [Serializable]
    public class LogEvent : IEncounterEvent {
        public string message;
    }

    [Serializable]
    public class GiveRewardEvent : IEncounterEvent {
        public Reward reward;
    }
}
