forked from Shardstone/trail-into-darkness
semantic changes
This commit is contained in:
42
Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs
Normal file
42
Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using Jovian.EncounterSystem;
|
||||
using System;
|
||||
|
||||
namespace Nox.Game {
|
||||
[Serializable]
|
||||
public class CombatKind : IEncounterKind {
|
||||
public string enemyGroupId;
|
||||
public string rewardTableId;
|
||||
}
|
||||
|
||||
[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 {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: abf01048c404a0240ad538b65a15f5fb
|
||||
30
Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs
Normal file
30
Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using Jovian.EncounterSystem;
|
||||
using System;
|
||||
|
||||
namespace Nox.Game {
|
||||
[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 {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7895041af87249e4c8458a07b0bc6b2c
|
||||
@@ -21,7 +21,7 @@ MonoBehaviour:
|
||||
description: 'You encounter a broken cart. At a closer examination you chose
|
||||
to:'
|
||||
<Kind>k__BackingField:
|
||||
rid: 1352971465325281422
|
||||
rid: 1352971521842741341
|
||||
<EncounterProperties>k__BackingField:
|
||||
difficulty: 0
|
||||
<EncounterVisuals>k__BackingField:
|
||||
@@ -32,8 +32,8 @@ MonoBehaviour:
|
||||
references:
|
||||
version: 2
|
||||
RefIds:
|
||||
- rid: 1352971465325281422
|
||||
type: {class: PuzzleKind, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
|
||||
- rid: 1352971521842741341
|
||||
type: {class: PuzzleKind, ns: Nox.Game, asm: Assembly-CSharp}
|
||||
data:
|
||||
puzzleId: borken_cart
|
||||
difficultyClass: 1
|
||||
puzzleId: cart
|
||||
difficultyClass: 0
|
||||
|
||||
@@ -15,12 +15,12 @@ MonoBehaviour:
|
||||
id: gold
|
||||
displayName: All Ze Money
|
||||
kind:
|
||||
rid: 1352971465325281413
|
||||
rid: 1352971521842741336
|
||||
references:
|
||||
version: 2
|
||||
RefIds:
|
||||
- rid: 1352971465325281413
|
||||
type: {class: CurrencyRewardKind, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
|
||||
- rid: 1352971521842741336
|
||||
type: {class: CurrencyRewardKind, ns: Nox.Game, asm: Assembly-CSharp}
|
||||
data:
|
||||
currencyId: gold
|
||||
amount: 100
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace Jovian.EncounterSystem {
|
||||
}
|
||||
|
||||
EnsureCache();
|
||||
return cache.TryGetValue(id, out var text) ? text : null;
|
||||
return cache.GetValueOrDefault(id);
|
||||
}
|
||||
|
||||
public void InvalidateCache() {
|
||||
|
||||
@@ -9,13 +9,11 @@ namespace Jovian.EncounterSystem {
|
||||
[TextArea(2, 6)] public string inlineText;
|
||||
|
||||
public string Resolve(DialogLineLibrary library) {
|
||||
if(library != null && !string.IsNullOrEmpty(id)) {
|
||||
var text = library.Resolve(id);
|
||||
if(!string.IsNullOrEmpty(text)) {
|
||||
return text;
|
||||
}
|
||||
if(!library || string.IsNullOrEmpty(id)) {
|
||||
return inlineText;
|
||||
}
|
||||
return inlineText;
|
||||
var text = library.Resolve(id);
|
||||
return !string.IsNullOrEmpty(text) ? text : inlineText;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Jovian.EncounterSystem {
|
||||
}
|
||||
|
||||
private void RenameToMatchId() {
|
||||
if(this == null || string.IsNullOrEmpty(id)) {
|
||||
if(!this || string.IsNullOrEmpty(id)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace Jovian.EncounterSystem {
|
||||
}
|
||||
|
||||
EnsureCache();
|
||||
return idCache.TryGetValue(internalId, out var encounter) ? encounter : null;
|
||||
return idCache.GetValueOrDefault(internalId);
|
||||
}
|
||||
|
||||
/// <summary>Force the id lookup cache to rebuild on next use.</summary>
|
||||
@@ -43,7 +43,7 @@ namespace Jovian.EncounterSystem {
|
||||
|
||||
IEncounter selected = null;
|
||||
var seen = 0;
|
||||
for(int i = 0; i < encounters.Count; i++) {
|
||||
for(var i = 0; i < encounters.Count; i++) {
|
||||
var encounter = encounters[i];
|
||||
if(encounter == null || encounter.GetType() != type) {
|
||||
continue;
|
||||
@@ -68,7 +68,7 @@ namespace Jovian.EncounterSystem {
|
||||
|
||||
IEncounter selected = null;
|
||||
var seen = 0;
|
||||
for(int i = 0; i < encounters.Count; i++) {
|
||||
for(var i = 0; i < encounters.Count; i++) {
|
||||
var encounter = encounters[i];
|
||||
if(encounter == null || !filter(encounter)) {
|
||||
continue;
|
||||
@@ -91,7 +91,7 @@ namespace Jovian.EncounterSystem {
|
||||
return;
|
||||
}
|
||||
|
||||
for(int i = 0; i < encounters.Count; i++) {
|
||||
for(var i = 0; i < encounters.Count; i++) {
|
||||
var encounter = encounters[i];
|
||||
var internalId = encounter?.EncounterDefinition?.internalId;
|
||||
if(!string.IsNullOrEmpty(internalId)) {
|
||||
|
||||
@@ -7,46 +7,7 @@ namespace Jovian.EncounterSystem {
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class CombatKind : IEncounterKind {
|
||||
public string enemyGroupId;
|
||||
public string rewardTableId;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class QuestKind : IEncounterKind {
|
||||
public partial 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 {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,30 +4,4 @@ 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 {
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user