34 lines
784 B
C#
34 lines
784 B
C#
using System;
|
|
|
|
namespace Jovian.EncounterSystem {
|
|
/// <summary>Polymorphic payload on a <see cref="Reward"/>. Add a new kind by implementing this interface.</summary>
|
|
public interface IRewardKind {
|
|
}
|
|
|
|
[Serializable]
|
|
public class CurrencyRewardKind : IRewardKind {
|
|
public string currencyId;
|
|
public int amount;
|
|
}
|
|
|
|
[Serializable]
|
|
public class ItemRewardKind : IRewardKind {
|
|
public string itemId;
|
|
public int quantity;
|
|
}
|
|
|
|
[Serializable]
|
|
public class ExperienceRewardKind : IRewardKind {
|
|
public int amount;
|
|
}
|
|
|
|
[Serializable]
|
|
public class UnlockableRewardKind : IRewardKind {
|
|
public string unlockableId;
|
|
}
|
|
|
|
[Serializable]
|
|
public class OtherRewardKind : IRewardKind {
|
|
}
|
|
}
|