From dbe799dd733985d25c2b178021053ee4c15fd7a8 Mon Sep 17 00:00:00 2001 From: Sebastian Bularca Date: Tue, 21 Apr 2026 00:13:52 +0200 Subject: [PATCH] semantic changes --- .../PlayModes/Encounters/EncounterKind.cs | 42 +++++++++++++++++++ .../Encounters/EncounterKind.cs.meta | 2 + .../PlayModes/Encounters/RewardKind.cs | 30 +++++++++++++ .../PlayModes/Encounters/RewardKind.cs.meta | 2 + .../EncounterTables/TestEncounterTable.asset | 10 ++--- .../Database/Encounters/Rewards/Reward.asset | 6 +-- .../Runtime/DialogLineLibrary.cs | 2 +- .../Runtime/DialogLineRef.cs | 10 ++--- .../Runtime/EncounterDialogOptionSet.cs | 2 +- .../Runtime/EncounterTable.cs | 8 ++-- .../Runtime/IEncounterKind.cs | 41 +----------------- .../Runtime/IRewardKind.cs | 26 ------------ 12 files changed, 95 insertions(+), 86 deletions(-) create mode 100644 Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs create mode 100644 Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs.meta create mode 100644 Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs create mode 100644 Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs.meta diff --git a/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs b/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs new file mode 100644 index 0000000..af7f0ab --- /dev/null +++ b/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs @@ -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 { + } +} diff --git a/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs.meta b/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs.meta new file mode 100644 index 0000000..1ea2f35 --- /dev/null +++ b/Assets/Code/GameState/PlayModes/Encounters/EncounterKind.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: abf01048c404a0240ad538b65a15f5fb diff --git a/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs b/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs new file mode 100644 index 0000000..c825880 --- /dev/null +++ b/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs @@ -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 { + } +} diff --git a/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs.meta b/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs.meta new file mode 100644 index 0000000..c33ee2f --- /dev/null +++ b/Assets/Code/GameState/PlayModes/Encounters/RewardKind.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 7895041af87249e4c8458a07b0bc6b2c diff --git a/Assets/Database/Encounters/EncounterTables/TestEncounterTable.asset b/Assets/Database/Encounters/EncounterTables/TestEncounterTable.asset index f08aa33..3807014 100644 --- a/Assets/Database/Encounters/EncounterTables/TestEncounterTable.asset +++ b/Assets/Database/Encounters/EncounterTables/TestEncounterTable.asset @@ -21,7 +21,7 @@ MonoBehaviour: description: 'You encounter a broken cart. At a closer examination you chose to:' k__BackingField: - rid: 1352971465325281422 + rid: 1352971521842741341 k__BackingField: difficulty: 0 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 diff --git a/Assets/Database/Encounters/Rewards/Reward.asset b/Assets/Database/Encounters/Rewards/Reward.asset index 93db044..d5c81c9 100644 --- a/Assets/Database/Encounters/Rewards/Reward.asset +++ b/Assets/Database/Encounters/Rewards/Reward.asset @@ -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 diff --git a/Packages/com.jovian.encounter-system/Runtime/DialogLineLibrary.cs b/Packages/com.jovian.encounter-system/Runtime/DialogLineLibrary.cs index 467cc04..e1138cc 100644 --- a/Packages/com.jovian.encounter-system/Runtime/DialogLineLibrary.cs +++ b/Packages/com.jovian.encounter-system/Runtime/DialogLineLibrary.cs @@ -22,7 +22,7 @@ namespace Jovian.EncounterSystem { } EnsureCache(); - return cache.TryGetValue(id, out var text) ? text : null; + return cache.GetValueOrDefault(id); } public void InvalidateCache() { diff --git a/Packages/com.jovian.encounter-system/Runtime/DialogLineRef.cs b/Packages/com.jovian.encounter-system/Runtime/DialogLineRef.cs index dc4da81..447e299 100644 --- a/Packages/com.jovian.encounter-system/Runtime/DialogLineRef.cs +++ b/Packages/com.jovian.encounter-system/Runtime/DialogLineRef.cs @@ -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; } } } diff --git a/Packages/com.jovian.encounter-system/Runtime/EncounterDialogOptionSet.cs b/Packages/com.jovian.encounter-system/Runtime/EncounterDialogOptionSet.cs index 5bba2d9..a16bda8 100644 --- a/Packages/com.jovian.encounter-system/Runtime/EncounterDialogOptionSet.cs +++ b/Packages/com.jovian.encounter-system/Runtime/EncounterDialogOptionSet.cs @@ -23,7 +23,7 @@ namespace Jovian.EncounterSystem { } private void RenameToMatchId() { - if(this == null || string.IsNullOrEmpty(id)) { + if(!this || string.IsNullOrEmpty(id)) { return; } diff --git a/Packages/com.jovian.encounter-system/Runtime/EncounterTable.cs b/Packages/com.jovian.encounter-system/Runtime/EncounterTable.cs index 35245ab..1142d3f 100644 --- a/Packages/com.jovian.encounter-system/Runtime/EncounterTable.cs +++ b/Packages/com.jovian.encounter-system/Runtime/EncounterTable.cs @@ -18,7 +18,7 @@ namespace Jovian.EncounterSystem { } EnsureCache(); - return idCache.TryGetValue(internalId, out var encounter) ? encounter : null; + return idCache.GetValueOrDefault(internalId); } /// Force the id lookup cache to rebuild on next use. @@ -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)) { diff --git a/Packages/com.jovian.encounter-system/Runtime/IEncounterKind.cs b/Packages/com.jovian.encounter-system/Runtime/IEncounterKind.cs index 725e5d1..d61a30c 100644 --- a/Packages/com.jovian.encounter-system/Runtime/IEncounterKind.cs +++ b/Packages/com.jovian.encounter-system/Runtime/IEncounterKind.cs @@ -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 { } } diff --git a/Packages/com.jovian.encounter-system/Runtime/IRewardKind.cs b/Packages/com.jovian.encounter-system/Runtime/IRewardKind.cs index c1060ca..ad5fff3 100644 --- a/Packages/com.jovian.encounter-system/Runtime/IRewardKind.cs +++ b/Packages/com.jovian.encounter-system/Runtime/IRewardKind.cs @@ -4,30 +4,4 @@ namespace Jovian.EncounterSystem { /// Polymorphic payload on a . Add a new kind by implementing this interface. 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 { - } }