forked from Shardstone/trail-into-darkness
added encounter system
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
using System;
|
||||
|
||||
namespace Jovian.EncounterSystem {
|
||||
/// <summary>Polymorphic payload on an <see cref="IEncounter"/>. Add a new kind by implementing
|
||||
/// this interface; the SubclassSelector drawer surfaces it automatically.</summary>
|
||||
public interface IEncounterKind {
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class CombatKind : IEncounterKind {
|
||||
public string enemyGroupId;
|
||||
public string rewardTableId;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class QuestKind : IEncounterKind {
|
||||
public EncounterLink nextEncounter;
|
||||
public string questTitle;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class SocialKind : IEncounterKind {
|
||||
public string npcId;
|
||||
public string factionId;
|
||||
public int reputationDelta;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class PuzzleKind : IEncounterKind {
|
||||
public string puzzleId;
|
||||
public int difficultyClass;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class ExplorationKind : IEncounterKind {
|
||||
public int perceptionDC;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class TutorialKind : IEncounterKind {
|
||||
public string tutorialId;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class HazardKind : IEncounterKind {
|
||||
public int damageAmount;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class OtherKind : IEncounterKind {
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user