35 Commits

Author SHA1 Message Date
Sebastian Bularca
a49a21c0cb cleaning 2026-05-17 22:44:17 +02:00
Sebastian Bularca
7be3499f14 some work on wiring in the encounters 2026-05-17 19:49:42 +02:00
Sebastian Bularca
3d13dac256 added tag systempackage 2026-05-17 18:49:35 +02:00
Sebastian Bularca
a239e6286b ada 2026-05-17 18:38:30 +02:00
Sebastian Bularca
b9985eaa71 add tag system 2026-05-17 18:37:35 +02:00
Sebastian Bularca
e5771b113a package update and prefabs applied 2026-05-17 18:30:41 +02:00
Sebastian Bularca
50ec5d44a8 will handle editor cleaning later 2026-05-08 01:16:58 +02:00
Sebastian Bularca
1e4aeb0e5b Merge branch 'main' of https://git.quiludet.com/uzihead/trail-into-darkness 2026-05-08 01:13:33 +02:00
Sebastian Bularca
e7f7da985b minor fixes 2026-05-08 01:13:30 +02:00
Sebastian Bularca
09fe607aab should trigger encounters now 2026-05-06 11:29:50 +02:00
Sebastian Bularca
356e07939a removed tag system 2026-05-04 21:55:18 +02:00
Sebastian Bularca
0ab806d281 ignore 2026-04-27 10:08:10 +02:00
Sebastian Bularca
ac32a6887c ignore 2026-04-27 10:08:00 +02:00
Sebastian Bularca
c1a3231559 leftovers 2026-04-27 00:11:12 +02:00
Sebastian Bularca
ea6c28bfba Added part of the encounter triggering system 2026-04-27 00:01:15 +02:00
Sebastian Bularca
f117ddb914 added tag system support 2026-04-21 00:42:58 +02:00
Sebastian Bularca
dbe799dd73 semantic changes 2026-04-21 00:13:52 +02:00
Sebastian Bularca
2445781f33 performance optimizations 2026-04-20 08:07:24 +02:00
Sebastian Bularca
f055250ca6 Some encounter testing and working 2026-04-19 18:34:22 +02:00
Sebastian Bularca
8861bdc5eb added encounter system 2026-04-19 12:46:44 +02:00
Sebastian Bularca
c1b5d0e9e0 Adedd some testing zones 2026-04-18 11:58:07 +02:00
Sebastian Bularca
90b66f26fd dadded package sync 2026-04-12 19:22:35 +02:00
Sebastian Bularca
34f99434b9 finished readme 2026-04-12 19:19:04 +02:00
Sebastian Bularca
0e00e798fd Added a custom calendar system 2026-04-12 19:14:37 +02:00
Sebastian Bularca
3428f168f9 some cosmetic changes 2026-04-12 17:19:38 +02:00
Sebastian Bularca
993929bede settings stuff 2026-04-12 17:00:25 +02:00
Sebastian Bularca
cfe202da44 Made the popup system a lot more generic 2026-04-06 20:38:58 +02:00
Sebastian Bularca
fa7659d905 added pooling for the gui portraits 2026-04-06 17:41:35 +02:00
Sebastian Bularca
f42885830a added documentation, fixed some bugs 2026-04-06 17:30:09 +02:00
Sebastian Bularca
333539eb0e popup actually working 2026-04-06 15:02:09 +02:00
Sebastian Bularca
9488b98f54 popup sort of works 2026-04-06 14:59:43 +02:00
Sebastian Bularca
b8fa26865d added a disfunctionalk popup system 2026-04-06 12:28:01 +02:00
Sebastian Bularca
cbf9f384d9 popup changes 2026-04-06 10:44:16 +02:00
Sebastian Bularca
61ca3701ae Added a popup system 2026-04-06 10:06:09 +02:00
Sebastian Bularca
a807405585 som qol fixes 2026-04-06 01:35:15 +02:00
328 changed files with 35301 additions and 5218 deletions

View File

@@ -22,7 +22,11 @@
"Bash(xxd Packages/com.jovian.ingame-logging/Runtime/GameLogStore.cs)", "Bash(xxd Packages/com.jovian.ingame-logging/Runtime/GameLogStore.cs)",
"Bash(find D:/repos/trail-into-darkness/Assets -name *.asmdef)", "Bash(find D:/repos/trail-into-darkness/Assets -name *.asmdef)",
"Bash(grep -E \"\\\\.\\(prefab|unity\\)$\")", "Bash(grep -E \"\\\\.\\(prefab|unity\\)$\")",
"Bash(python3:*)" "Bash(python3:*)",
"WebSearch",
"Bash(mkdir -p \"D:/repos/trail-into-darkness/Packages/com.jovian.worldtime/Runtime\")",
"Bash(mkdir -p \"D:/repos/trail-into-darkness/Packages/com.jovian.worldtime/Editor\")",
"Bash(mkdir -p \"D:/repos/trail-into-darkness/Packages/com.jovian.worldtime/Samples~\")"
] ]
} }
} }

81
AGENTS.md Normal file
View File

@@ -0,0 +1,81 @@
# AGENTS.md
## Project
Nox — Unity 6 party-based RPG. Code lives under `Assets/Code/` with namespaces `Nox.Core`, `Nox.Game`, `Nox.Input`, `Nox.Platform`, `Nox.Util`. In-house packages under `Packages/com.jovian.*` are first-party code, not third-party.
## Unity & Tools
- **Unity**: 6000.3.7f1 (C# 9.0, .NET Framework 4.7.1)
- **URP**: 17.3.0
- **Input System**: 1.18.0 (com.unity.inputsystem)
- **Editor only** — no CI/CD, no CLI build command. Build via Unity Editor → Windows target `Nox.exe`.
- **Solution**: `trail-into-darkness.sln` at root. Rider is primary IDE (`com.unity.ide.rider`).
## Boot Sequence
1. `Boot.cs` `[RuntimeInitializeOnLoadMethod]` loads `"Initializer"` addressable prefab (or `"Startup"` scene in FullBoot mode)
2. `EntryPoint.Start()` coroutine initializes platform, creates game states, adds `GameStateRunner` MonoBehaviour
3. `GameStateRunner` ticks current state: `SplashGameState``MainMenuGameState``GameModeGameState`
Editor-only: `BootMode.cs` (`Nox.EditorCode`) controls boot mode (Full Boot, Scene Boot, Unity Default).
## State Architecture
Dual-layer state:
- **Game States** (`IGameState`): Application flow. Lifecycle: `EnterGameState()``Tick()`/`LateTick()``ExitGameState()``Dispose()`
- **Play Modes** (`IPlayMode`): GameModes inside `GameModeGameState`. Same tick lifecycle.
Central store: `GameDataState` holds `ActiveGameState`, `ActivePlayMode`, `ActiveParty`, `platformSelector`, `activeSessionId`.
Scene authoring: `SceneReference` MonoBehaviour per scene sets initial `GameState`. Enables standalone scene playback in editor.
## Addressable Keys
Assets loaded by string key. Do not change keys without checking all callers: `"Initializer"`, `"AdventureMapPrefabs"`, `"PauseMenuPrefabs"`, `"AdventureSettings"`, `"CharacterBaseSettings"`, `"PerkRegistry"`, `"CharacterRegistry"`, `"BootstrapReferences"`.
## Character System
Factory chain initialized from ScriptableObjects: `CharacterSystemsFactory.Create()` builds `PerkFactory``CharacterAttributesFactory``CharacterStatsFactory``CharacterFactory``PartyFactory`. Config loaded via Addressables.
## Persistence
`Jovian.SaveSystem` package handles JSON serialization to `Application.persistentDataPath`. Nox wrapper: `NoxSaveData.RestoreSavedData()` loads `NoxSavedDataSet` (playMode, party, position, adventure data, game log). Save slots managed by `SaveSlotManager`.
## Platform Abstraction
`IPlatform` interface with `DesktopPlatform` and `UnityEditorPlatform` implementations. Each initializes platform-specific `IInput`. Switched via `PlatformSelector`.
## In-House Jovian Packages
- `com.jovian.savesystem` — JSON persistence
- `com.jovian.encounter-system` — data-driven encounters, `IEncounterKind` payloads, `EncounterLink` refs, `QuestProgress` gating. Designer tool: `Jovian → Encounters → Encounter Browser`
- `com.jovian.calendar` — in-game calendar
- `com.jovian.ingame-logging` — runtime game log
- `com.jovian.popup-system` — popup/dialog UI
- `com.jovian.zonesystem` — zone/region management
- `com.jovian.logger` — dev logging
- `com.jovian.utilities` / `com.jovian.inspector-tools` — editor utilities
## C# Style (from .editorconfig)
- 4 spaces, LF endings
- `var` preferred when type is apparent
- Target-typed `new()` when type is evident
- No space after keywords in control flow: `if(` not `if (`
- Braces on same line; `else`/`catch`/`finally` on new line
- Block-scoped namespaces, usings outside namespace
- PascalCase types/methods/properties, camelCase all fields (public and private), `I` prefix interfaces
- Expression-bodied: yes for properties/accessors/lambdas; no for constructors/methods/operators/local functions
- No `this.` qualifier; language keywords (`int` not `Int32`)
## Planning Docs
Non-trivial features planned in `docs/plans/` as paired files: `{date}-{name}-design.md` + `{date}-{name}-implementation.md`. Check here before starting new feature work.
## Gotchas
- No test suite exists despite `com.unity.test-framework` in manifest
- No runtime build/lint/typecheck commands — all validation happens in Unity Editor
- Generated `.csproj` files are Unity output, not source of truth for assembly structure
- `Assets/Code/` is the only code location to modify; never edit `Packages/com.jovian.*` core unless working on that package

View File

@@ -13,7 +13,6 @@ MonoBehaviour:
m_Name: AddressableAssetGroupSortSettings m_Name: AddressableAssetGroupSortSettings
m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.GroupSchemas.AddressableAssetGroupSortSettings m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.GroupSchemas.AddressableAssetGroupSortSettings
sortOrder: sortOrder:
- 05b724f967e7d40e69a2f8086a7d78cd
- d7f58d36cc4da874fa45d38c0070c2c2 - d7f58d36cc4da874fa45d38c0070c2c2
- e6a1448ac7179f9469ae917578605c81 - e6a1448ac7179f9469ae917578605c81
- a8838bd8f2db41d4c894d2cf8403f207 - a8838bd8f2db41d4c894d2cf8403f207

View File

@@ -12,10 +12,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 468a46d0ae32c3544b7d98094e6448a9, type: 3} m_Script: {fileID: 11500000, guid: 468a46d0ae32c3544b7d98094e6448a9, type: 3}
m_Name: AddressableAssetSettings m_Name: AddressableAssetSettings
m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.AddressableAssetSettings m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.AddressableAssetSettings
m_DefaultGroup: 05b724f967e7d40e69a2f8086a7d78cd m_DefaultGroup: d7f58d36cc4da874fa45d38c0070c2c2
m_currentHash: m_currentHash:
serializedVersion: 2 serializedVersion: 2
Hash: 00000000000000000000000000000000 Hash: a9de470e3ae86c2ab2d0ba2a6812fa41
m_OptimizeCatalogSize: 0 m_OptimizeCatalogSize: 0
m_BuildRemoteCatalog: 0 m_BuildRemoteCatalog: 0
m_CatalogRequestsTimeout: 0 m_CatalogRequestsTimeout: 0
@@ -60,7 +60,6 @@ MonoBehaviour:
m_BuildAddressablesWithPlayerBuild: 0 m_BuildAddressablesWithPlayerBuild: 0
m_overridePlayerVersion: '[UnityEditor.PlayerSettings.bundleVersion]' m_overridePlayerVersion: '[UnityEditor.PlayerSettings.bundleVersion]'
m_GroupAssets: m_GroupAssets:
- {fileID: 11400000, guid: 6c79f6f00c1f84b1c854543c84d05d0f, type: 2}
- {fileID: 11400000, guid: 8aabd2323ded16346970904048573037, type: 2} - {fileID: 11400000, guid: 8aabd2323ded16346970904048573037, type: 2}
- {fileID: 11400000, guid: 643aef87ff0fa05488c1a0982ec49f26, type: 2} - {fileID: 11400000, guid: 643aef87ff0fa05488c1a0982ec49f26, type: 2}
- {fileID: 11400000, guid: 2ddfa0c67160cbe4f9669d176f0ee01b, type: 2} - {fileID: 11400000, guid: 2ddfa0c67160cbe4f9669d176f0ee01b, type: 2}

View File

@@ -40,11 +40,21 @@ MonoBehaviour:
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 15529a69a8231ac43b1108efbaad83b6
m_Address: Assets/Prefabs/UI/CharacterCreationReference.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 21833c6afc1e0b047a3c49dc9ea35996 - m_GUID: 21833c6afc1e0b047a3c49dc9ea35996
m_Address: Assets/Art/UI/portait_hero_05.png m_Address: Assets/Art/UI/portait_hero_05.png
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 2dfcc209b5aff734d863147e5614563c
m_Address: PopupReferencePrefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 3225768f79644af4dbda96b8f9d57ed2 - m_GUID: 3225768f79644af4dbda96b8f9d57ed2
m_Address: Assets/Art/UI/menu_supply_bar_full.png m_Address: Assets/Art/UI/menu_supply_bar_full.png
m_ReadOnly: 0 m_ReadOnly: 0
@@ -75,6 +85,11 @@ MonoBehaviour:
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 571f2dd77fb442d499cdc9c2afe9f98d
m_Address: PopupSettings
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 60a7c1e10ed7ff94cbe191d9d3e305ed - m_GUID: 60a7c1e10ed7ff94cbe191d9d3e305ed
m_Address: Assets/Art/UI/menu_corner.png m_Address: Assets/Art/UI/menu_corner.png
m_ReadOnly: 0 m_ReadOnly: 0
@@ -100,6 +115,16 @@ MonoBehaviour:
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 7a17d50d1abe3764695c6cd9598487ca
m_Address: EncounterRegistry
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 7b5e9961dadecea4bba3be6de61909f3
m_Address: CalendarSettings
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 7e443a969de292045b2224c779d96139 - m_GUID: 7e443a969de292045b2224c779d96139
m_Address: Assets/Art/UI/menu_bar_left.png m_Address: Assets/Art/UI/menu_bar_left.png
m_ReadOnly: 0 m_ReadOnly: 0
@@ -206,11 +231,26 @@ MonoBehaviour:
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: ed9b80145a89c8a4f8d456971d242c3c
m_Address: PortraitsHolder
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: f37df040ec9864f4dbafe3f5e6dfe4d9 - m_GUID: f37df040ec9864f4dbafe3f5e6dfe4d9
m_Address: DefaultPartySettings m_Address: DefaultPartySettings
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: f7becfd0b70554e46b4e04fa25a75341
m_Address: JovianTagsSettings
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: fdfc8d602281a0b45bbd7c08cb41f727
m_Address: EncounterPrefabs
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: fe393ace9b354375a9cb14cdbbc28be4 - m_GUID: fe393ace9b354375a9cb14cdbbc28be4
m_Address: Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader m_Address: Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader
m_ReadOnly: 0 m_ReadOnly: 0

View File

@@ -1,33 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
m_Name: Default Local Group
m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.AddressableAssetGroup
m_GroupName: Default Local Group
m_GUID: 05b724f967e7d40e69a2f8086a7d78cd
m_SerializeEntries:
- m_GUID: 15529a69a8231ac43b1108efbaad83b6
m_Address: Assets/Prefabs/UI/CharacterCreationReference.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: ed9b80145a89c8a4f8d456971d242c3c
m_Address: PortraitsHolder
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
m_ReadOnly: 0
m_Settings: {fileID: 11400000, guid: 7e98b357dd76a43e191428299c44eef2, type: 2}
m_SchemaSet:
m_Schemas:
- {fileID: 11400000, guid: 5b53a1ca29cdf45fdb72fa3e94514b82, type: 2}
- {fileID: 11400000, guid: 9148d31c5a1d74102a17c9d6be0baf0e, type: 2}

View File

@@ -1,48 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
m_Name: Default Local Group_BundledAssetGroupSchema
m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.GroupSchemas.BundledAssetGroupSchema
m_Group: {fileID: 11400000, guid: 6c79f6f00c1f84b1c854543c84d05d0f, type: 2}
m_InternalBundleIdMode: 1
m_Compression: 1
m_IncludeAddressInCatalog: 1
m_IncludeGUIDInCatalog: 1
m_IncludeLabelsInCatalog: 1
m_InternalIdNamingMode: 0
m_CacheClearBehavior: 0
m_IncludeInBuild: 1
m_BundledAssetProviderType:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
m_StripDownloadOptions: 0
m_ForceUniqueProvider: 0
m_UseAssetBundleCache: 1
m_UseAssetBundleCrc: 1
m_UseAssetBundleCrcForCachedBundles: 1
m_UseUWRForLocalBundles: 0
m_Timeout: 0
m_ChunkedTransfer: 0
m_RedirectLimit: -1
m_RetryCount: 0
m_BuildPath:
m_Id: 8fbce5c7cea8b47209ad27b2e4685031
m_LoadPath:
m_Id: 8e5cf788c2f044c5ba2465efea14a827
m_BundleMode: 0
m_AssetBundleProviderType:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
m_UseDefaultSchemaSettings: 0
m_SelectedPathPairIndex: 0
m_BundleNaming: 0
m_AssetLoadMode: 0

View File

@@ -1,16 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
m_Name: Default Local Group_ContentUpdateGroupSchema
m_EditorClassIdentifier: Unity.Addressables.Editor::UnityEditor.AddressableAssets.Settings.GroupSchemas.ContentUpdateGroupSchema
m_Group: {fileID: 11400000, guid: 6c79f6f00c1f84b1c854543c84d05d0f, type: 2}
m_StaticContent: 0

View File

@@ -49,7 +49,7 @@ TextureImporter:
alignment: 0 alignment: 0
spritePivot: {x: 0.5, y: 0.5} spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100 spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteBorder: {x: 0, y: 1, z: 1, w: 0}
spriteGenerateFallbackPhysicsShape: 1 spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1 alphaUsage: 1
alphaIsTransparency: 1 alphaIsTransparency: 1
@@ -93,6 +93,19 @@ TextureImporter:
ignorePlatformSupport: 0 ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@@ -101,7 +114,7 @@ TextureImporter:
physicsShape: [] physicsShape: []
bones: [] bones: []
spriteID: 5e97eb03825dee720800000000000000 spriteID: 5e97eb03825dee720800000000000000
internalID: 0 internalID: 1537655665
vertices: [] vertices: []
indices: indices:
edges: [] edges: []

View File

@@ -23,14 +23,14 @@ namespace Nox.Game {
} }
var healthModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Health); var healthModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Health);
var staminaModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Mana); var manaModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Mana);
var levelModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Level); var levelModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Level);
var experienceModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Experience); var experienceModifiers = modifierResolver.CollectModifiers(entityDefinition, StatType.Experience);
return new EntityStats { return new EntityStats {
stats = new[] { stats = new[] {
new Stat(StatType.Health, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Health), healthModifiers, entityDefinition)), new Stat(StatType.Health, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Health), healthModifiers, entityDefinition)),
new Stat(StatType.Mana, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Mana), staminaModifiers, entityDefinition)), new Stat(StatType.Mana, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Mana), manaModifiers, entityDefinition)),
new Stat(StatType.Level, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Level), levelModifiers, entityDefinition)), new Stat(StatType.Level, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Level), levelModifiers, entityDefinition)),
new Stat(StatType.Experience, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Experience), experienceModifiers, entityDefinition)) new Stat(StatType.Experience, modifierResolver.Resolve(baseSettings.defaultEntityStats.GetValue(StatType.Experience), experienceModifiers, entityDefinition))
} }

View File

@@ -1,12 +1,16 @@
using Jovian.Calendar;
using Jovian.EncounterSystem;
using Jovian.PopupSystem;
using Jovian.PopupSystem.UI;
using Jovian.SaveSystem; using Jovian.SaveSystem;
using Jovian.ZoneSystem; using Jovian.ZoneSystem;
using Nox.Core; using Nox.Core;
using Nox.Platform; using Nox.Platform;
using Nox.Game.UI; using Nox.Game.UI;
using Nox.UI; using Nox.UI;
using ZLinq;
using UnityEngine; using UnityEngine;
using UnityEngine.AddressableAssets; using UnityEngine.AddressableAssets;
using ZLinq;
using PlayMode = Nox.Core.PlayMode; using PlayMode = Nox.Core.PlayMode;
namespace Nox.Game { namespace Nox.Game {
@@ -23,7 +27,8 @@ namespace Nox.Game {
private readonly PlayModeSettings bootstrapSettings; private readonly PlayModeSettings bootstrapSettings;
private readonly GameDataState gameDataState; private readonly GameDataState gameDataState;
private readonly ISaveSystem saveSystem; private readonly ISaveSystem saveSystem;
private PartyDefinition partyDefinition; private readonly PartyDefinition partyDefinition;
private readonly AdventureSettings adventureSettings;
private AdventureData adventureData; private AdventureData adventureData;
private AdventureModePrefabs scenePrefabs; private AdventureModePrefabs scenePrefabs;
private ICameraController cameraController; private ICameraController cameraController;
@@ -35,10 +40,13 @@ namespace Nox.Game {
private AdventureView adventureView; private AdventureView adventureView;
private ZoneSystem zoneSystem; private ZoneSystem zoneSystem;
private GuiReferences guiReferences; private GuiReferences guiReferences;
private AdventureSettings adventureSettings;
private TimeHandler timeHandler; private TimeHandler timeHandler;
private PartyInventoryHandler partyInventoryHandler; private PartyInventoryHandler partyInventoryHandler;
private PartyGuiView partyGuiView; private PartyGuiView partyGuiView;
private IPopupSystem popupSystem;
private EncounterRegistry encounterRegistry;
private EncounterHandler encounterHandler;
private EncounterPrefabs encounterPrefabs;
public AdventurePlayMode( public AdventurePlayMode(
PlatformSettings platformSettings, PlatformSettings platformSettings,
@@ -76,30 +84,15 @@ namespace Nox.Game {
inputActions.UI.PauseMenu.Enable(); inputActions.UI.PauseMenu.Enable();
Debug.Log("Entering Adventure Play Mode"); Debug.Log("Entering Adventure Play Mode");
if(partyDefinition == null) { if(partyDefinition == null) {
var sessions = saveSystem.GetAllSessions().AsValueEnumerable().OrderByDescending(s => s.lastSaveDateUtc).ToList(); var restoreResult = NoxSaveData.RestoreSavedData(saveSystem, gameDataState, ref adventureData);
if(sessions.Count == 0) { if(restoreResult == null) {
return; Debug.LogError("AdventurePlayMode: no save data found for auto-recovery. Party will be null.");
} }
var latestSession = sessions[0];
var slots = saveSystem.GetSlots(latestSession.sessionId).AsValueEnumerable().OrderByDescending(s => s.timestampUtc).ToList();
if(slots.Count == 0) {
return;
}
var latestSlot = slots[0];
var saveData = saveSystem.Load<NoxSaveData>(latestSlot);
Debug.Log($"Loaded save {latestSlot.DisplayLabel}");
if(saveData == null) {
Debug.LogError("Failed to load save data");
return;
}
NoxSaveData.RestoreSavedData(saveSystem, gameDataState, ref adventureData);
Debug.LogWarning("AdventurePlayMode started from the Adventure Scene. Loading the last Autosave");
} }
encounterRegistry ??= Addressables.LoadAssetAsync<EncounterRegistry>("EncounterRegistry").WaitForCompletion();
scenePrefabs ??= Addressables.LoadAssetAsync<AdventureModePrefabs>("AdventureMapPrefabs").WaitForCompletion(); scenePrefabs ??= Addressables.LoadAssetAsync<AdventureModePrefabs>("AdventureMapPrefabs").WaitForCompletion();
encounterPrefabs = Addressables.LoadAssetAsync<EncounterPrefabs>("EncounterPrefabs").WaitForCompletion();
mapRef ??= Object.FindFirstObjectByType<MapReference>(); mapRef ??= Object.FindFirstObjectByType<MapReference>();
partyRef ??= Object.FindFirstObjectByType<PartyReference>(); partyRef ??= Object.FindFirstObjectByType<PartyReference>();
if(partyRef && gameDataState.savedPartyPosition.HasValue) { if(partyRef && gameDataState.savedPartyPosition.HasValue) {
@@ -122,19 +115,38 @@ namespace Nox.Game {
partyInventoryHandler ??= new PartyInventoryHandler(adventureData, adventureSettings); partyInventoryHandler ??= new PartyInventoryHandler(adventureData, adventureSettings);
partyInventoryHandler.Initialize(); partyInventoryHandler.Initialize();
timeHandler ??= new TimeHandler(adventureSettings, adventureData); var calendarSettings = Addressables.LoadAssetAsync<CalendarSettings>("CalendarSettings").WaitForCompletion();
zoneSystem ??= new ZoneSystem(mapRef.zonesObjectHolder); var worldClock = new WorldClock(calendarSettings);
timeHandler ??= new TimeHandler(adventureSettings, adventureData, worldClock);
partyMovementHandler ??= new PartyMovementHandler(partyRef, cameraController, mapLocationsReference, platformSettings.inputSettings, zoneSystem, adventureData, adventureSettings); zoneSystem ??= new ZoneSystem(mapRef.zonesObjectHolder);
encounterHandler = new EncounterHandler(zoneSystem, encounterRegistry, encounterPrefabs);
partyMovementHandler ??= new PartyMovementHandler(
partyRef,
cameraController,
mapLocationsReference,
platformSettings.inputSettings,
encounterHandler,
adventureData,
adventureSettings);
partyMovementHandler.Initialize(); partyMovementHandler.Initialize();
guiReferences ??= Object.FindFirstObjectByType<GuiReferences>(); guiReferences ??= Object.FindFirstObjectByType<GuiReferences>();
adventureView ??= new AdventureView(gameDataState, guiReferences, inputActions, adventureData, adventureSettings); adventureView ??= new AdventureView(gameDataState, guiReferences, inputActions, adventureData, adventureSettings, worldClock);
adventureView.Initialize(); adventureView.Initialize();
if(partyGuiView == null && guiReferences.partyMemberSlotPrefab != null) { if(partyGuiView == null && guiReferences.partyMemberSlotPrefab != null) {
var portraitsHolder = Addressables.LoadAssetAsync<PortraitsHolder>("PortraitsHolder").WaitForCompletion(); var portraitsHolder = Addressables.LoadAssetAsync<PortraitsHolder>("PortraitsHolder").WaitForCompletion();
partyGuiView = new PartyGuiView(guiReferences.portraitsContainer, guiReferences.partyMemberSlotPrefab, portraitsHolder);
if(popupSystem == null) {
var popupSettings = Addressables.LoadAssetAsync<PopupSettings>("PopupSettings").WaitForCompletion();
var popupViewPrefab = Addressables.LoadAssetAsync<GameObject>("PopupReferencePrefab").WaitForCompletion().GetComponent<PopupReference>();
var guiCanvas = guiReferences.GetComponentInParent<Canvas>().transform;
popupSystem = new PopupSystem(popupSettings, popupViewPrefab, guiCanvas);
popupSystem.RegisterCategory(PopupCategory.Character, priority: 10);
}
partyGuiView = new PartyGuiView(guiReferences.portraitsContainer, guiReferences.partyMemberSlotPrefab, portraitsHolder, popupSystem);
partyGuiView.Initialize(partyDefinition); partyGuiView.Initialize(partyDefinition);
} }
@@ -142,15 +154,17 @@ namespace Nox.Game {
} }
public void Tick() { public void Tick() {
if(!IsGameModeInitialized) { if(!IsGameModeInitialized || gameDataState.ActiveParty == null) {
return; return;
} }
timeHandler.Tick(); timeHandler.Tick();
partyInventoryHandler.Tick(); partyInventoryHandler.Tick();
partyMovementHandler.Tick(); partyMovementHandler.Tick();
encounterHandler.Tick();
adventureView.Tick(); adventureView.Tick();
partyGuiView?.Tick(); partyGuiView?.Tick();
popupSystem?.Tick(Time.deltaTime);
if(inputActions.UI.PauseMenu.WasPerformedThisFrame()) { if(inputActions.UI.PauseMenu.WasPerformedThisFrame()) {
gameDataState.ChangePlayMode(PlayMode.PauseMenu); gameDataState.ChangePlayMode(PlayMode.PauseMenu);
@@ -166,7 +180,8 @@ namespace Nox.Game {
return new NoxSavedDataSet { return new NoxSavedDataSet {
activePlayMode = PlayMode.Adventure, activePlayMode = PlayMode.Adventure,
activeParty = partyDefinition, activeParty = partyDefinition,
partyPosition = partyRef ? SerializableVector3.FromVector3(partyRef.transform.position) : SerializableVector3.Zero partyPosition = partyRef ? SerializableVector3.FromVector3(partyRef.transform.position) : SerializableVector3.Zero,
adventureData = this.adventureData
}; };
} }
@@ -174,10 +189,15 @@ namespace Nox.Game {
inputActions.Player.Disable(); inputActions.Player.Disable();
inputActions.UI.PauseMenu.Disable(); inputActions.UI.PauseMenu.Disable();
} }
public void Dispose() { public void Dispose() {
partyGuiView?.Dispose();
popupSystem?.Dispose();
cameraController?.Dispose(); cameraController?.Dispose();
partyMovementHandler?.Dispose(); partyMovementHandler?.Dispose();
partyGuiView?.Dispose(); encounterHandler?.Dispose();
encounterRegistry = null;
Resources.UnloadUnusedAssets();
} }
} }

View File

@@ -1,3 +1,4 @@
using System;
using UnityEngine; using UnityEngine;
namespace Nox.Game { namespace Nox.Game {

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: d6216fd41db9494aaa6c127d9d790b93
timeCreated: 1776506857

View File

@@ -0,0 +1,11 @@
using TMPro;
using UnityEngine;
using UnityEngine.UI;
namespace Nox.Game {
public class AnswerReference : MonoBehaviour {
public TextMeshProUGUI number;
public TextMeshProUGUI dialogText;
public Button button;
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 0c14350aeeed44a28d98d22c6ef048dc
timeCreated: 1777235448

View File

@@ -0,0 +1,146 @@
using Jovian.EncounterSystem;
using Jovian.ZoneSystem;
using UnityEngine;
namespace Nox.Game {
public class EncounterHandler {
private readonly ZoneSystem zoneSystem;
private readonly EncounterRegistry encounterRegistry;
private readonly EncounterView encounterView;
private string previousZoneId;
private IEncounter activeEncounter;
public EncounterHandler(ZoneSystem zoneSystem, EncounterRegistry encounterRegistry, EncounterPrefabs encounterPrefabs) {
this.zoneSystem = zoneSystem;
this.encounterRegistry = encounterRegistry;
encounterView = new EncounterView(encounterPrefabs);
encounterView.OptionSelected += OnOptionSelected;
}
public bool AskForRandomEncounter(ZoneContext zoneContext, string encounterTableId, out IEncounter encounter) {
return ResolveEncounter(zoneContext, encounterTableId, out encounter);
}
public bool AskForRandomEncounterOfType(ZoneContext zoneContext, string encounterTableId, out IEncounter encounter, IEncounterKind encounterKind) {
return ResolveEncounter(zoneContext, encounterTableId, out encounter, encounterKind);
}
public bool AskForEncounter(string encounterId, out IEncounter encounter) {
return encounterRegistry.GetEncounters().TryGetValue(encounterId, out encounter);
}
private bool ResolveEncounter(ZoneContext zoneContext, string encounterTableId, out IEncounter encounter, IEncounterKind encounterKind = null) {
encounter = null;
if(zoneContext.isSafe) {
return false;
}
var randomChance = Random.Range(0f, 1f);
var shouldTrigger = randomChance <= zoneContext.finalEncounterChance;
if(!shouldTrigger) {
Debug.Log($"Rolled for encounter '{encounterTableId}': {randomChance:F2}/{zoneContext.finalEncounterChance:F2} -> none");
return false;
}
encounter = encounterKind == null
? encounterRegistry.GetRandomEncounter(encounterTableId)
: encounterRegistry.GetRandomEncounter(encounterTableId, encounterKind);
var resultName = encounter?.EncounterDefinition?.name ?? "none";
Debug.Log($"Rolled for encounter '{encounterTableId}': {randomChance:F2}/{zoneContext.finalEncounterChance:F2} -> {resultName}");
return encounter != null;
}
private void VerifyZones(Vector3 position) {
var zoneContext = zoneSystem.QueryZone(position);
if(string.IsNullOrEmpty(zoneContext.resolvedZoneId)) {
return;
}
var currentZoneId = zoneContext.resolvedZoneId;
if(currentZoneId != previousZoneId) {
if(!string.IsNullOrEmpty(currentZoneId)) {
Debug.Log($"Entered zone: {currentZoneId} (encounter: {zoneContext.encounterTableId}, safe: {zoneContext.isSafe})");
if(ResolveEncounter(zoneContext, zoneContext.encounterTableId, out var encounter)) {
TriggerEncounter(encounter);
}
}
else if(!string.IsNullOrEmpty(previousZoneId)) {
Debug.Log($"Left zone: {previousZoneId}");
}
previousZoneId = currentZoneId;
}
}
private void TriggerEncounter(IEncounter encounter) {
switch(encounter.EncounterDefinition.Kind) {
case CombatKind:
return;
default:
activeEncounter = encounter;
encounterView?.SetCurrentEncounter(encounter);
encounterView?.Show();
break;
}
}
private void OnOptionSelected(int optionIndex) {
if(activeEncounter == null) {
return;
}
var options = activeEncounter.EncounterDialogOptionSet?.options;
if(options == null || optionIndex < 0 || optionIndex >= options.Count) {
return;
}
ResolveOption(activeEncounter, options[optionIndex]);
encounterView?.Hide();
activeEncounter = null;
}
private void ResolveOption(IEncounter encounter, EncounterDialogOption option) {
if(option?.events == null) {
return;
}
for(var i = 0; i < option.events.Count; i++) {
var encounterEvent = option.events[i];
if(encounterEvent == null) {
continue;
}
switch(encounterEvent) {
case ChainToEncounterEvent chain:
if(AskForEncounter(chain.nextEncounterId, out var next)) {
TriggerEncounter(next);
return;
}
break;
case LogEvent log:
Debug.Log($"[Encounter '{encounter.EncounterDefinition.id}'] {log.message}");
break;
case StartCombatEvent _:
case GiveRewardEvent _:
Debug.Log($"[Encounter] unhandled event {encounterEvent.GetType().Name}");
break;
}
}
}
public void CheckForEncounters(Vector3 position) {
VerifyZones(position);
}
public void Tick() { }
public void Dispose() {
if(encounterView != null) {
encounterView.OptionSelected -= OnOptionSelected;
encounterView.Dispose();
}
activeEncounter = null;
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 523274f9158f453dbfac02601a77c3f7
timeCreated: 1776506833

View File

@@ -0,0 +1,25 @@
using Jovian.EncounterSystem;
using System;
namespace Nox.Game {
[Serializable]
public class CombatKind : IEncounterKind { }
[Serializable]
public class SocialKind : IEncounterKind { }
[Serializable]
public class PuzzleKind : IEncounterKind { }
[Serializable]
public class ExplorationKind : IEncounterKind { }
[Serializable]
public class TutorialKind : IEncounterKind { }
[Serializable]
public class HazardKind : IEncounterKind { }
[Serializable]
public class OtherKind : IEncounterKind { }
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: abf01048c404a0240ad538b65a15f5fb

View File

@@ -0,0 +1,18 @@
using Jovian.EncounterSystem;
using System;
using UnityEngine;
namespace Nox.Game {
[CreateAssetMenu(fileName = "EncounterPrefabs", menuName = "Nox/EncounterPrefabs")]
public class EncounterPrefabs : ScriptableObject {
public EncounterSet[] encounterSets;
}
[Serializable]
public class EncounterSet {
[field: SerializeReference, SubclassSelector]
public IEncounterKind encounterKind;
public EncounterReference encounterReference;
public AnswerReference answerReference;
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7fc36c84acd04836b1280aba57a64e24
timeCreated: 1777229589

View File

@@ -0,0 +1,167 @@
using Jovian.EncounterSystem;
using Nox.Game.UI;
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
namespace Nox.Game {
public class EncounterView : IMenuView {
private const int MaxAnswers = 4;
private readonly EncounterPrefabs encounterPrefabs;
private readonly Dictionary<Type, EncounterReference> kindToReference = new();
private readonly Dictionary<Type, List<AnswerReference>> kindToAnswerPool = new();
private IEncounter currentEncounter;
private EncounterReference currentReference;
private List<AnswerReference> currentAnswerPool;
public event Action<int> OptionSelected;
public EncounterView(EncounterPrefabs encounterPrefabs) {
this.encounterPrefabs = encounterPrefabs;
}
public void SetCurrentEncounter(IEncounter encounter) {
currentEncounter = encounter;
}
public void Initialize() { }
public void Show() {
if(currentEncounter?.EncounterDefinition?.Kind == null) {
return;
}
if(currentReference) {
currentReference.gameObject.SetActive(false);
}
var kindType = currentEncounter.EncounterDefinition.Kind.GetType();
var set = encounterPrefabs.encounterSets
.FirstOrDefault(s => s.encounterKind != null && s.encounterKind.GetType() == kindType);
if(set == null || !set.encounterReference) {
return;
}
if(!kindToReference.TryGetValue(kindType, out var reference) || !reference) {
reference = UnityEngine.Object.Instantiate(set.encounterReference);
kindToReference[kindType] = reference;
}
currentReference = reference;
currentAnswerPool = GetOrBuildAnswerPool(kindType, set);
PopulateEncounterReference();
currentReference.gameObject.SetActive(true);
}
public void Hide() {
if(currentReference) {
currentReference.gameObject.SetActive(false);
}
DeactivateAnswers(currentAnswerPool);
}
public void Tick() { }
private List<AnswerReference> GetOrBuildAnswerPool(Type kindType, EncounterSet set) {
if(kindToAnswerPool.TryGetValue(kindType, out var pool) && pool != null) {
return pool;
}
pool = new List<AnswerReference>(MaxAnswers);
kindToAnswerPool[kindType] = pool;
if(!set.answerReference || !currentReference.encounterOptionsContainer) {
return pool;
}
for(var i = 0; i < MaxAnswers; i++) {
var answer = UnityEngine.Object.Instantiate(set.answerReference, currentReference.encounterOptionsContainer);
answer.gameObject.SetActive(false);
pool.Add(answer);
}
return pool;
}
private void PopulateEncounterReference() {
var definition = currentEncounter.EncounterDefinition;
var visuals = currentEncounter.EncounterVisuals;
if(currentReference.encounterName) {
currentReference.encounterName.text = definition.name;
}
if(currentReference.encounterDescription) {
currentReference.encounterDescription.text = definition.description;
}
if(currentReference.encounterArt && visuals != null) {
currentReference.encounterArt.sprite = visuals.encounterArt;
}
PopulateAnswers();
}
private void PopulateAnswers() {
DeactivateAnswers(currentAnswerPool);
var optionSet = currentEncounter.EncounterDialogOptionSet;
if(currentAnswerPool == null || optionSet?.options == null) {
return;
}
var count = Mathf.Min(optionSet.options.Count, currentAnswerPool.Count);
for(var i = 0; i < count; i++) {
var option = optionSet.options[i];
var answer = currentAnswerPool[i];
if(option == null || !answer) {
continue;
}
if(answer.number) {
answer.number.text = (i + 1).ToString();
}
if(answer.dialogText) {
answer.dialogText.text = option.text.Resolve(optionSet.library);
}
BindAnswerButton(answer, i);
answer.gameObject.SetActive(true);
}
}
private void BindAnswerButton(AnswerReference answer, int optionIndex) {
var button = answer.button ? answer.button : answer.GetComponentInChildren<UnityEngine.UI.Button>(true);
if(!button) {
return;
}
button.onClick.RemoveAllListeners();
button.onClick.AddListener(() => OptionSelected?.Invoke(optionIndex));
}
private static void DeactivateAnswers(List<AnswerReference> pool) {
if(pool == null) {
return;
}
for(var i = 0; i < pool.Count; i++) {
if(pool[i]) {
pool[i].gameObject.SetActive(false);
}
}
}
public void Dispose() {
foreach(var reference in kindToReference.Values) {
if(reference) {
UnityEngine.Object.Destroy(reference.gameObject);
}
}
kindToReference.Clear();
kindToAnswerPool.Clear();
currentReference = null;
currentAnswerPool = null;
currentEncounter = null;
OptionSelected = null;
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: b69490c9f1d8471a84b4594d1b1be117
timeCreated: 1776590016

View 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 {
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7895041af87249e4c8458a07b0bc6b2c

View File

@@ -1,4 +1,3 @@
using Jovian.ZoneSystem;
using UnityEngine; using UnityEngine;
using UnityEngine.EventSystems; using UnityEngine.EventSystems;
using UnityEngine.InputSystem; using UnityEngine.InputSystem;
@@ -9,17 +8,15 @@ namespace Nox.Game {
private readonly ICameraController cameraController; private readonly ICameraController cameraController;
private readonly InputSystem_Actions inputActions; private readonly InputSystem_Actions inputActions;
private readonly MapLocationsReference mapLocationsReference; private readonly MapLocationsReference mapLocationsReference;
private readonly ZoneSystem zoneSystem; private readonly EncounterHandler encounterHandler;
private readonly AdventureSettings adventureSettings; private readonly AdventureSettings adventureSettings;
private readonly float maxDistance = 100f; private readonly float maxDistance = 100f;
private readonly AdventureData adventureData;
private AdventureData adventureData;
private bool partyCanMove; private bool partyCanMove;
private Vector3 targetPosition; private Vector3 targetPosition;
private bool shouldHover; private bool shouldHover;
private MapLocation currentSelectedPoi; private MapLocation currentSelectedPoi;
private string previousZoneId;
private bool hasClicked; private bool hasClicked;
private bool skipNextClick; private bool skipNextClick;
@@ -31,16 +28,15 @@ namespace Nox.Game {
ICameraController cameraController, ICameraController cameraController,
MapLocationsReference mapLocationsReference, MapLocationsReference mapLocationsReference,
Input.InputSettings inputSettings, Input.InputSettings inputSettings,
ZoneSystem zoneSystem, EncounterHandler encounterHandler,
AdventureData adventureData, AdventureData adventureData,
AdventureSettings adventureSettings) { AdventureSettings adventureSettings) {
this.partyReference = partyReference; this.partyReference = partyReference;
this.cameraController = cameraController; this.cameraController = cameraController;
this.mapLocationsReference = mapLocationsReference; this.mapLocationsReference = mapLocationsReference;
this.zoneSystem = zoneSystem; this.encounterHandler = encounterHandler;
this.adventureData = adventureData; this.adventureData = adventureData;
this.adventureSettings = adventureSettings; this.adventureSettings = adventureSettings;
inputActions = inputSettings.inputActions; inputActions = inputSettings.inputActions;
} }
@@ -77,10 +73,14 @@ namespace Nox.Game {
if(!clickHit.collider.gameObject.transform.parent.TryGetComponent(out MapReference mapReference)) { if(!clickHit.collider.gameObject.transform.parent.TryGetComponent(out MapReference mapReference)) {
return; return;
} }
//if(mapReference.ValidateMoveLocation(hitInfoPoint)) { if(ValidateMoveLocation(clickHit)) {
targetPosition = clickHit.point; targetPosition = clickHit.point;
partyCanMove = true; partyCanMove = true;
//} }
}
private bool ValidateMoveLocation(object hitInfoPoint) {
return true;
} }
public void Tick() { public void Tick() {
@@ -109,9 +109,13 @@ namespace Nox.Game {
VerifyPointsOfInterest(); VerifyPointsOfInterest();
partyCanMove = false; partyCanMove = false;
} }
adventureData.isPartyMoving = true; adventureData.isPartyMoving = true;
partyReference.transform.position = Vector3.MoveTowards(new Vector3(partyReference.transform.position.x, 0, partyReference.transform.position.z), targetPosition, Time.deltaTime * adventureSettings.partyBaseSpeed); partyReference.transform.position = Vector3.MoveTowards(
VerifyZones(partyReference.transform.position); new Vector3(partyReference.transform.position.x, 0,
partyReference.transform.position.z), targetPosition,
Time.deltaTime * adventureSettings.partyBaseSpeed);
encounterHandler?.CheckForEncounters(partyReference.transform.position);
} }
private void HandleHover() { private void HandleHover() {
@@ -128,20 +132,6 @@ namespace Nox.Game {
currentSelectedPoi = null; currentSelectedPoi = null;
} }
} }
private void VerifyZones(Vector3 position) {
var zoneContext = zoneSystem.QueryZone(position);
var currentZoneId = zoneContext.resolvedZoneId;
if(currentZoneId != previousZoneId) {
if(!string.IsNullOrEmpty(currentZoneId)) {
Debug.Log($"Entered zone: {currentZoneId} (encounter: {zoneContext.encounterTableId}, safe: {zoneContext.isSafe})");
}
else if(!string.IsNullOrEmpty(previousZoneId)) {
Debug.Log($"Left zone: {previousZoneId}");
}
previousZoneId = currentZoneId;
}
}
private void VerifyPointsOfInterest() { private void VerifyPointsOfInterest() {
foreach(var location in mapLocationsReference.mapLocations) { foreach(var location in mapLocationsReference.mapLocations) {
@@ -156,5 +146,4 @@ namespace Nox.Game {
inputActions.Player.ClickOnMap.performed -= OnClickOnMap; inputActions.Player.ClickOnMap.performed -= OnClickOnMap;
} }
} }
} }

View File

@@ -1,3 +1,4 @@
using Jovian.Calendar;
using UnityEngine; using UnityEngine;
namespace Nox.Game { namespace Nox.Game {
@@ -13,6 +14,7 @@ namespace Nox.Game {
public class TimeHandler { public class TimeHandler {
private readonly AdventureSettings adventureSettings; private readonly AdventureSettings adventureSettings;
private readonly AdventureData adventureData; private readonly AdventureData adventureData;
private readonly WorldClock worldClock;
private float localTime; private float localTime;
@@ -23,34 +25,44 @@ namespace Nox.Game {
(0.25f, DayPhase.Morning), (0.25f, DayPhase.Morning),
(0.50f, DayPhase.Afternoon), (0.50f, DayPhase.Afternoon),
(0.75f, DayPhase.Dusk), (0.75f, DayPhase.Dusk),
(0.90f, DayPhase.Night), (0.90f, DayPhase.Night)
}; };
public TimeHandler(AdventureSettings adventureSettings, AdventureData adventureData) { public TimeHandler(AdventureSettings adventureSettings, AdventureData adventureData, WorldClock worldClock) {
this.adventureSettings = adventureSettings; this.adventureSettings = adventureSettings;
this.adventureData = adventureData; this.adventureData = adventureData;
this.worldClock = worldClock;
localTime = adventureData.currentTime * adventureSettings.dayLength; localTime = adventureData.currentTime * adventureSettings.dayLength;
} }
public void Tick() { public void Tick() {
if (!adventureData.isPartyMoving) return; if(!adventureData.isPartyMoving) {
return;
}
localTime += Time.deltaTime; localTime += Time.deltaTime;
if(localTime >= adventureSettings.dayLength) { if(localTime >= adventureSettings.dayLength) {
localTime -= adventureSettings.dayLength; localTime -= adventureSettings.dayLength;
adventureData.currentDay++;
} }
adventureData.currentTime = localTime / adventureSettings.dayLength; var normalized = localTime / adventureSettings.dayLength;
adventureData.currentDayPhase = GetPhase(adventureData.currentTime);
worldClock.Tick(normalized);
adventureData.currentTime = normalized;
adventureData.currentDayPhase = GetPhase(normalized);
} }
private static DayPhase GetPhase(float t) { private static DayPhase GetPhase(float t) {
var phase = DayPhase.Midnight; var phase = DayPhase.Midnight;
foreach(var (start, p) in PhaseThresholds) { foreach(var (start, p) in PhaseThresholds) {
if (t >= start) phase = p; if(t >= start) {
else break; phase = p;
}
else {
break;
}
} }
return phase; return phase;
} }

View File

@@ -1,3 +1,4 @@
using Jovian.Calendar;
using Nox.Core; using Nox.Core;
namespace Nox.Game.UI { namespace Nox.Game.UI {
@@ -7,20 +8,22 @@ namespace Nox.Game.UI {
private readonly InputSystem_Actions inputActions; private readonly InputSystem_Actions inputActions;
private readonly AdventureData adventureData; private readonly AdventureData adventureData;
private readonly AdventureSettings adventureSettings; private readonly AdventureSettings adventureSettings;
private DayPhase dayPhase = DayPhase.Midnight; private readonly WorldClock worldClock;
private int currentDay; private int currentDay;
private int previousTime;
public AdventureView( public AdventureView(GameDataState gameDataState,
GameDataState gameDataState,
GuiReferences guiReferences, GuiReferences guiReferences,
InputSystem_Actions inputActions, InputSystem_Actions inputActions,
AdventureData adventureData, AdventureData adventureData,
AdventureSettings adventureSettings) { AdventureSettings adventureSettings,
WorldClock worldClock) {
this.gameDataState = gameDataState; this.gameDataState = gameDataState;
this.guiReferences = guiReferences; this.guiReferences = guiReferences;
this.inputActions = inputActions; this.inputActions = inputActions;
this.adventureData = adventureData; this.adventureData = adventureData;
this.adventureSettings = adventureSettings; this.adventureSettings = adventureSettings;
this.worldClock = worldClock;
} }
private void InvokePauseMenu() { private void InvokePauseMenu() {
gameDataState.ChangePlayMode(PlayMode.PauseMenu); gameDataState.ChangePlayMode(PlayMode.PauseMenu);
@@ -28,7 +31,8 @@ namespace Nox.Game.UI {
public void Initialize() { public void Initialize() {
guiReferences.pauseMenuButton.onClick.AddListener(InvokePauseMenu); guiReferences.pauseMenuButton.onClick.AddListener(InvokePauseMenu);
guiReferences.dayText.text = $"Day {adventureData.currentDay}, {adventureData.currentDayPhase.ToString()}"; guiReferences.dayText.text = $"{worldClock.FullStringNamed()}";
previousTime = -1;
guiReferences.suppliesBar.fillAmount = (float)adventureData.suppliesAvailable / adventureSettings.maxSupplies; guiReferences.suppliesBar.fillAmount = (float)adventureData.suppliesAvailable / adventureSettings.maxSupplies;
guiReferences.suppliesText.text = $"{adventureData.suppliesAvailable}/{adventureSettings.maxSupplies}"; guiReferences.suppliesText.text = $"{adventureData.suppliesAvailable}/{adventureSettings.maxSupplies}";
} }
@@ -40,14 +44,14 @@ namespace Nox.Game.UI {
throw new System.NotImplementedException(); throw new System.NotImplementedException();
} }
public void Tick() { public void Tick() {
if(dayPhase != adventureData.currentDayPhase) { var time = worldClock.Now.minute;
dayPhase = adventureData.currentDayPhase; if (time != previousTime) {
guiReferences.dayText.text = $"Day {adventureData.currentDay}, {adventureData.currentDayPhase.ToString()}"; previousTime = time;
} }
guiReferences.dayText.text = $"{worldClock.FullStringNamed()}";
if(currentDay != adventureData.currentDay) { if(currentDay != adventureData.currentDay) {
currentDay = adventureData.currentDay; currentDay = adventureData.currentDay;
guiReferences.dayText.text = $"Day {adventureData.currentDay}, {adventureData.currentDayPhase.ToString()}";
guiReferences.suppliesBar.fillAmount = (float)adventureData.suppliesAvailable / adventureSettings.maxSupplies; guiReferences.suppliesBar.fillAmount = (float)adventureData.suppliesAvailable / adventureSettings.maxSupplies;
guiReferences.suppliesText.text = $"{adventureData.suppliesAvailable}/{adventureSettings.maxSupplies}"; guiReferences.suppliesText.text = $"{adventureData.suppliesAvailable}/{adventureSettings.maxSupplies}";
} }

View File

@@ -35,7 +35,7 @@ namespace Nox.UI {
private int remainingPoints; private int remainingPoints;
private readonly int[] allocatedPoints = new int[4]; // Might, Reflex, Knowledge, Perception (AttributeType 1-4) private readonly int[] allocatedPoints = new int[4]; // Might, Reflex, Knowledge, Perception (AttributeType 1-4)
private int previousHealth; private int previousHealth;
private int previousStamina; private int previousMana;
// Modifier source tracking // Modifier source tracking
private PerksData racialPerks = new(); private PerksData racialPerks = new();
@@ -87,8 +87,11 @@ namespace Nox.UI {
var canStart = characterCreationRequests is { Count: > 0 }; var canStart = characterCreationRequests is { Count: > 0 };
characterCreationReference.startGameButton.interactable = canStart; characterCreationReference.startGameButton.interactable = canStart;
}; };
characterCreationReference.startGameButton.interactable = false;
characterCreationReference.startGameButton.onClick.AddListener(() => { characterCreationReference.startGameButton.onClick.AddListener(() => {
if(characterCreationRequests == null || characterCreationRequests.Count == 0) {
inGameLogger.Log("You must accept your character before starting the game.", "#FF4444");
return;
}
Hide(); Hide();
menuGameStateData.startGameRequests?.Invoke(PlayMode.Adventure); menuGameStateData.startGameRequests?.Invoke(PlayMode.Adventure);
}); });
@@ -182,7 +185,7 @@ namespace Nox.UI {
// Initialize previous values so first change doesn't log a delta from 0 // Initialize previous values so first change doesn't log a delta from 0
previousHealth = workingStats.GetValue(StatType.Health); previousHealth = workingStats.GetValue(StatType.Health);
previousStamina = workingStats.GetValue(StatType.Mana); previousMana = workingStats.GetValue(StatType.Mana);
} }
private void ApplyRacialBonuses() { private void ApplyRacialBonuses() {
@@ -291,19 +294,19 @@ namespace Nox.UI {
// 10. Log stat deltas // 10. Log stat deltas
var newHealth = workingStats.GetValue(StatType.Health); var newHealth = workingStats.GetValue(StatType.Health);
var newStamina = workingStats.GetValue(StatType.Mana); var newMana = workingStats.GetValue(StatType.Mana);
if(newHealth != previousHealth && previousHealth != 0) { if(newHealth != previousHealth && previousHealth != 0) {
var delta = newHealth - previousHealth; var delta = newHealth - previousHealth;
var sign = delta > 0 ? "+" : ""; var sign = delta > 0 ? "+" : "";
inGameLogger.Log($"Health: {previousHealth} -> {newHealth} ({sign}{delta})", "#87CEEB"); inGameLogger.Log($"Health: {previousHealth} -> {newHealth} ({sign}{delta})", "#87CEEB");
} }
if(newStamina != previousStamina && previousStamina != 0) { if(newMana != previousMana && previousMana != 0) {
var delta = newStamina - previousStamina; var delta = newMana - previousMana;
var sign = delta > 0 ? "+" : ""; var sign = delta > 0 ? "+" : "";
inGameLogger.Log($"Stamina: {previousStamina} -> {newStamina} ({sign}{delta})", "#FFFF99"); inGameLogger.Log($"Mana: {previousMana} -> {newMana} ({sign}{delta})", "#FFFF99");
} }
previousHealth = newHealth; previousHealth = newHealth;
previousStamina = newStamina; previousMana = newMana;
} }
private PerksData BuildCombinedPerks() { private PerksData BuildCombinedPerks() {

View File

@@ -1,28 +1,42 @@
using System.Collections.Generic; using System.Collections.Generic;
using Jovian.PopupSystem;
using Nox.UI; using Nox.UI;
using UnityEngine; using UnityEngine;
using Object = UnityEngine.Object; using Object = UnityEngine.Object;
namespace Nox.Game.UI { namespace Nox.Game.UI {
public class PartyGuiView { public class PartyGuiView {
private const int PoolSize = 4;
private readonly Transform portraitsContainer; private readonly Transform portraitsContainer;
private readonly PartyMemberSlot slotPrefab; private readonly PartyMemberSlot slotPrefab;
private readonly PortraitsHolder portraitsHolder; private readonly PortraitsHolder portraitsHolder;
private readonly List<PartyMemberSlot> activeSlots = new(); private readonly IPopupSystem popupSystem;
private readonly PartyMemberSlot[] slotPool = new PartyMemberSlot[PoolSize];
private PartyDefinition trackedParty; private PartyDefinition trackedParty;
private int trackedMemberCount; private int activeCount;
public PartyGuiView(Transform portraitsContainer, PartyMemberSlot slotPrefab, PortraitsHolder portraitsHolder) { public PartyGuiView(Transform portraitsContainer, PartyMemberSlot slotPrefab, PortraitsHolder portraitsHolder, IPopupSystem popupSystem = null) {
this.portraitsContainer = portraitsContainer; this.portraitsContainer = portraitsContainer;
this.slotPrefab = slotPrefab; this.slotPrefab = slotPrefab;
this.portraitsHolder = portraitsHolder; this.portraitsHolder = portraitsHolder;
this.popupSystem = popupSystem;
} }
public void Initialize(PartyDefinition party) { public void Initialize(PartyDefinition party) {
trackedParty = party; trackedParty = party;
trackedMemberCount = 0; activeCount = 0;
RebuildSlots();
// Pre-create all slots (deactivated)
for(int i = 0; i < PoolSize; i++) {
if(slotPool[i] == null) {
slotPool[i] = Object.Instantiate(slotPrefab, portraitsContainer);
}
slotPool[i].gameObject.SetActive(false);
}
PopulateSlots();
} }
public void Tick() { public void Tick() {
@@ -31,33 +45,30 @@ namespace Nox.Game.UI {
} }
// Rebuild if member count changed // Rebuild if member count changed
if(trackedParty.members.Count != trackedMemberCount) { if(trackedParty.members.Count != activeCount) {
RebuildSlots(); PopulateSlots();
} }
// Update dynamic values (health, mana) // Update dynamic values
for(int i = 0; i < activeSlots.Count && i < trackedParty.members.Count; i++) { var memberCount = Mathf.Min(activeCount, trackedParty.members.Count);
for(int i = 0; i < memberCount; i++) {
UpdateSlotStats(slotPool[i], trackedParty.members[i]);
}
}
private void PopulateSlots() {
var memberCount = trackedParty?.members != null
? Mathf.Min(trackedParty.members.Count, PoolSize)
: 0;
// Activate slots for current members, deactivate the rest
for(var i = 0; i < PoolSize; i++) {
var slot = slotPool[i];
if(i < memberCount && trackedParty?.members != null) {
var member = trackedParty.members[i]; var member = trackedParty.members[i];
var slot = activeSlots[i]; if(member == null) {
UpdateSlotStats(slot, member); continue;
} }
}
private void RebuildSlots() {
// Clear existing
foreach(var slot in activeSlots) {
Object.Destroy(slot.gameObject);
}
activeSlots.Clear();
if(trackedParty?.members == null) {
return;
}
trackedMemberCount = trackedParty.members.Count;
foreach(var member in trackedParty.members) {
var slot = Object.Instantiate(slotPrefab, portraitsContainer);
slot.gameObject.SetActive(true); slot.gameObject.SetActive(true);
// Portrait // Portrait
@@ -66,13 +77,80 @@ namespace Nox.Game.UI {
slot.portrait.sprite = portraitsHolder.portraits[idx]; slot.portrait.sprite = portraitsHolder.portraits[idx];
} }
// Name UpdateSlotStats(slot, member);
if(slot.nameText != null) { }
slot.nameText.text = member.Name; else {
slot.gameObject.SetActive(false);
}
} }
UpdateSlotStats(slot, member); activeCount = memberCount;
activeSlots.Add(slot);
// Initialize popup triggers
popupSystem?.InitializeTriggersInChildren(portraitsContainer, (trigger, view) => {
var slot = trigger.GetComponentInParent<PartyMemberSlot>();
if(!slot) {
return;
}
var slotIndex = System.Array.IndexOf(slotPool, slot);
if(slotIndex < 0 || slotIndex >= activeCount) {
return;
}
var member = trackedParty.members[slotIndex];
view.SetContent(builder => BuildCharacterPopup(builder, member));
});
}
private void BuildCharacterPopup(PopupContentBuilder builder, CharacterDefinition member) {
// Header
builder
.AddText(member.Name, PopupElementType.Header)
.AddText($"{member.Race} {member.Class}", "#CCCCCC", PopupElementType.Text)
.AddText($"Role: {member.Role}", PopupElementType.Text)
.AddSeparator(PopupElementType.Separator);
// Stats
if(member.Stats?.stats != null) {
var level = member.Stats.GetValue(StatType.Level);
var xp = member.Stats.GetValue(StatType.Experience);
var health = member.Stats.GetValue(StatType.Health);
var mana = member.Stats.GetValue(StatType.Mana);
builder
.AddNameValue("Level", level, PopupElementType.LabelValueText)
.AddNameValue("XP", xp, PopupElementType.LabelValueText)
.AddSeparator(PopupElementType.Separator)
.AddNameValue("Health", health, PopupElementType.LabelValueText)
.AddNameValue("Mana", mana, PopupElementType.LabelValueText)
.AddSeparator(PopupElementType.Separator);
}
// Attributes
if(member.Attributes?.attributes != null) {
foreach(var attr in member.Attributes.attributes) {
if(attr.attribute == AttributeType.None) {
continue;
}
builder.AddNameValue(attr.attribute.ToString(), attr.value, PopupElementType.LabelValueText);
}
}
builder.AddSeparator(PopupElementType.Separator);
// Perks
if(member.Perks?.perks is { Count: > 0 }) {
builder.AddText("Perks", "#FFD700", PopupElementType.Text);
foreach(var perk in member.Perks.perks) {
builder.AddText($" {perk.Name}", PopupElementType.Text);
}
builder.AddSeparator(PopupElementType.Separator);
}
// Modifiers
if(member.Modifiers?.modifiers is { Count: > 0 }) {
builder.AddText("Modifiers", "#87CEEB", PopupElementType.Text);
foreach(var mod in member.Modifiers.modifiers) {
var target = mod.Target != null ? mod.Target.ToString() : "";
builder.AddText($" {mod.Name} ({mod.Operation} {mod.Value} {target})", PopupElementType.Text);
}
} }
} }
@@ -83,25 +161,20 @@ namespace Nox.Game.UI {
if(slot.healthBar != null) { if(slot.healthBar != null) {
slot.healthBar.fillAmount = Mathf.Clamp01(health / 100f); slot.healthBar.fillAmount = Mathf.Clamp01(health / 100f);
} }
if(slot.healthText != null) {
slot.healthText.text = health.ToString();
}
if(slot.manaBar != null) { if(slot.manaBar != null) {
slot.manaBar.fillAmount = Mathf.Clamp01(mana / 100f); slot.manaBar.fillAmount = Mathf.Clamp01(mana / 100f);
} }
if(slot.manaText != null) {
slot.manaText.text = mana.ToString();
}
} }
public void Dispose() { public void Dispose() {
foreach(var slot in activeSlots) { for(int i = 0; i < PoolSize; i++) {
if(slot != null) { if(slotPool[i] != null) {
Object.Destroy(slot.gameObject); Object.Destroy(slotPool[i].gameObject);
slotPool[i] = null;
} }
} }
activeSlots.Clear(); activeCount = 0;
} }
} }
} }

View File

@@ -1,4 +1,3 @@
using TMPro;
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
@@ -7,8 +6,5 @@ namespace Nox.Game.UI {
public Image portrait; public Image portrait;
public Image healthBar; public Image healthBar;
public Image manaBar; public Image manaBar;
public TextMeshProUGUI nameText;
public TextMeshProUGUI healthText;
public TextMeshProUGUI manaText;
} }
} }

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 83509b822db37ec4e863ff7a2b4c01ae
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,81 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7fc36c84acd04836b1280aba57a64e24, type: 3}
m_Name: EncounterPrefabs
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterPrefabs
encounterSets:
- encounterKind:
rid: 1352971649185742937
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610525
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610527
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610528
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610529
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610530
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610531
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610532
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
- encounterKind:
rid: 696918149227610532
encounterReference: {fileID: 3705563528526877357, guid: 62525e62adc83b84abde85d78828de2b, type: 3}
answerReference: {fileID: -3146704326252051464, guid: cbecff27dee2cf7448a05a89ecb018b4, type: 3}
references:
version: 2
RefIds:
- rid: 696918149227610525
type: {class: CombatKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 696918149227610527
type: {class: QuestKind, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
nextEncounter:
table: {fileID: 0}
internalId:
- rid: 696918149227610528
type: {class: SocialKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 696918149227610529
type: {class: TutorialKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 696918149227610530
type: {class: HazardKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 696918149227610531
type: {class: OtherKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 696918149227610532
type: {class: PuzzleKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
- rid: 1352971649185742937
type: {class: ExplorationKind, ns: Nox.Game, asm: Assembly-CSharp}
data:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 9148d31c5a1d74102a17c9d6be0baf0e guid: fdfc8d602281a0b45bbd7c08cb41f727
NativeFormatImporter: NativeFormatImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000 mainObjectFileID: 11400000

View File

@@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0dfee180882d49c9a3d4474f389d4905, type: 3}
m_Name: EncounterRegistry
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterRegistry
encounterCollections:
- {fileID: 11400000, guid: b3c3371ae34b4e34ea57a013b5125022, type: 2}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 6c79f6f00c1f84b1c854543c84d05d0f guid: 7a17d50d1abe3764695c6cd9598487ca
NativeFormatImporter: NativeFormatImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000 mainObjectFileID: 11400000

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 453cbe825e21cba41b61175034c2b5d1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 65c1422c9083d1b4d9721cf275cfe7f3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,22 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 142d6e5b0f6a6cb41beddeae92b56fee, type: 3}
m_Name: DialogLineLibrary
m_EditorClassIdentifier: Jovian.EncounterSystem::Jovian.EncounterSystem.DialogLineLibrary
lines:
- id: test_you_die
text: Click me and see what happens. MIght all your dreams com true?
- id: click_to_continue
text: This is a test like that should you click it, it will continue and record
quest progress
- id: right_choice
text: You have chose right, padwan, here is 4 RON!

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 5b53a1ca29cdf45fdb72fa3e94514b82 guid: 11b94daa76442834198b68996afe0013
NativeFormatImporter: NativeFormatImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000 mainObjectFileID: 11400000

View File

@@ -0,0 +1,29 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c47caaa92bb94eeca3e47dd86fd010cf, type: 3}
m_Name: Dialog_Set_0
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterDialogOptionSet
id: Dialog_Set_0
library: {fileID: 11400000, guid: 11b94daa76442834198b68996afe0013, type: 2}
options:
- text:
id: click_to_continue
inlineText:
events:
- rid: 1352971465325281416
references:
version: 2
RefIds:
- rid: 1352971465325281416
type: {class: LogEvent, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
message: An thus, you continue...

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7bc554ae0760bbb4796a1b3acef22cb3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,38 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c47caaa92bb94eeca3e47dd86fd010cf, type: 3}
m_Name: Dialog_Set_1
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterDialogOptionSet
id: Dialog_Set_1
library: {fileID: 11400000, guid: 11b94daa76442834198b68996afe0013, type: 2}
options:
- text:
id: test_you_die
inlineText:
events:
- rid: 1352971465325281414
- text:
id: right_choice
inlineText:
events:
- rid: 1352971465325281412
references:
version: 2
RefIds:
- rid: 1352971465325281412
type: {class: GiveRewardEvent, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
reward: {fileID: 11400000, guid: 2c02212ce09c5a246a8fe11a5253bfd4, type: 2}
- rid: 1352971465325281414
type: {class: LogEvent, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
message: You died! HAhahAhaha!

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9496570aa3d05624a9b8bbbf6009c453
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,39 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e480a30007b949679b8ca1e0e6088675, type: 3}
m_Name: TestEncounterTable
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterTable
id: TestEncounterTable
encounters:
- <EncounterDefinition>k__BackingField:
internalId: 169489f1-892d-475b-8c32-fc760da28929
id: simple_puzzle
name: Fix a Broken Cart
description: 'You encounter a broken cart. At a closer examination you chose
to:'
<Kind>k__BackingField:
rid: 1352971521842741341
<EncounterProperties>k__BackingField:
difficulty: 0
<EncounterVisuals>k__BackingField:
icon: {fileID: 0}
encounterColor: {r: 0, g: 0, b: 0, a: 0}
encounterArt: {fileID: 0}
<EncounterDialogOptionSet>k__BackingField: {fileID: 0}
references:
version: 2
RefIds:
- rid: 1352971521842741341
type: {class: PuzzleKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
puzzleId: cart
difficultyClass: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0d6735c0d1617b243a1f6c8c5070028c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,62 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e480a30007b949679b8ca1e0e6088675, type: 3}
m_Name: TestQuestTable
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncounterTable
id: TestEncounterTable
encounters:
- <EncounterDefinition>k__BackingField:
internalId: adce0a09-6402-4c2e-b24a-db7c9c67e3e5
id: test_quest_1
name: Test Quest Stage I
description: An encounter like no other which leads to another encounter like
no other
<Kind>k__BackingField:
rid: 1352971465325281417
<EncounterProperties>k__BackingField:
difficulty: 0
<EncounterVisuals>k__BackingField:
icon: {fileID: 21300000, guid: ea02ea44fa86ee445be0f7ca82098b75, type: 3}
encounterColor: {r: 0, g: 0, b: 0, a: 0}
encounterArt: {fileID: 21300000, guid: a9c4c7681315e25419b9381d28aa9d80, type: 3}
<EncounterDialogOptionSet>k__BackingField: {fileID: 11400000, guid: 9496570aa3d05624a9b8bbbf6009c453, type: 2}
- <EncounterDefinition>k__BackingField:
internalId: 882ecaa9-29d9-452e-aa88-beb533f97882
id: test_quest_2
name: Test Quest Stage II
description: An encounter like no other which should be now completed
<Kind>k__BackingField:
rid: 1352971465325281421
<EncounterProperties>k__BackingField:
difficulty: 0
<EncounterVisuals>k__BackingField:
icon: {fileID: 21300000, guid: ea02ea44fa86ee445be0f7ca82098b75, type: 3}
encounterColor: {r: 0, g: 0, b: 0, a: 0}
encounterArt: {fileID: 21300000, guid: 819d7a244820ad84585a1de7566bf9d0, type: 3}
<EncounterDialogOptionSet>k__BackingField: {fileID: 11400000, guid: 9496570aa3d05624a9b8bbbf6009c453, type: 2}
references:
version: 2
RefIds:
- rid: 1352971465325281417
type: {class: QuestKind, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
nextEncounter:
table: {fileID: 11400000}
internalId: 882ecaa9-29d9-452e-aa88-beb533f97882
questTitle:
- rid: 1352971465325281421
type: {class: QuestKind, ns: Jovian.EncounterSystem, asm: Jovian.EncounterSystem}
data:
nextEncounter:
table: {fileID: 0}
internalId:
questTitle:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 396a5409178bf0d4b938094eefe22cca
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 57820b3b9a698e24393172741670d8fe
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,26 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ce47d4bfb319877429589295ac214255, type: 3}
m_Name: Reward
m_EditorClassIdentifier: Jovian.EncounterSystem::Jovian.EncounterSystem.Reward
id: gold
displayName: All Ze Money
kind:
rid: 1352971521842741336
references:
version: 2
RefIds:
- rid: 1352971521842741336
type: {class: CurrencyRewardKind, ns: Nox.Game, asm: Assembly-CSharp}
data:
currencyId: gold
amount: 100

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2c02212ce09c5a246a8fe11a5253bfd4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,17 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 96ab08e2592347f68b8ad2e6e8d45187, type: 3}
m_Name: TestEncountersCollection
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.EncountersCollection
encounterTables:
- {fileID: 11400000, guid: 396a5409178bf0d4b938094eefe22cca, type: 2}
- {fileID: 11400000, guid: 0d6735c0d1617b243a1f6c8c5070028c, type: 2}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b3c3371ae34b4e34ea57a013b5125022
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -12,6 +12,8 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1d2424482c4843c0b7a33a9cc67411b2, type: 3} m_Script: {fileID: 11500000, guid: 1d2424482c4843c0b7a33a9cc67411b2, type: 3}
m_Name: AdventureSettings m_Name: AdventureSettings
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.AdventureSettings m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.AdventureSettings
startingDate: 2026-04-12
startingTime: 08:00:00
dayLength: 20 dayLength: 20
maxSupplies: 20 maxSupplies: 20
partyBaseSpeed: 0.3 partyBaseSpeed: 0.3

View File

@@ -0,0 +1,29 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e3a6df85a820d0a4db469ae8a20ea773, type: 3}
m_Name: CalendarSettings
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.CalendarSettings
secondsPerFullDay: 60
hoursPerDay: 24
minutesPerHour: 60
daysPerMonth: 5a0000005a0000005a0000005a000000
monthNames:
- Ashveil
- Thornmere
- Duskhollow
- 'Frosthollow '
daysPerWeek: 7
startYear: 4232
startMonth: 1
startDay: 1
startHour: 8
startMinute: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7b5e9961dadecea4bba3be6de61909f3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 32e658688044a8f469e0c311f9c4facb, type: 3}
m_Name: JovianTagsSettings
m_EditorClassIdentifier: Jovian.TagSystem::Jovian.TagSystem.JovianTagsSettings
gameTags: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f7becfd0b70554e46b4e04fa25a75341
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,43 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8497d766078e5764a9c7c0dd5d671561, type: 3}
m_Name: Codrii_Vasluiului
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneData
zoneId: forest_1
zoneName: Codrii Vasluiului
role: 0
priority: 5
debugColor: {r: 0, g: 0.7563188, b: 1, a: 0.25}
encounterTableId: Forest_Easy
baseDifficultyTier: 2
baseEncounterChance: 0.35
encounterChanceMultiplier: 1
difficultyTierBonus: 0
isSafeZone: 0
overrideEncounterTableId:
overrideEncounterChance: 1
overrideDifficultyTier: 4
shape: 2
circleRadius: 2
polygon:
- {x: 12.236091, y: 1.6645191}
- {x: 6.1699877, y: 1.8335454}
- {x: 4.4582586, y: 13.148059}
- {x: -6.042471, y: 13.081609}
- {x: -4.9572964, y: 7.6616793}
- {x: -4.7374926, y: 2.7339745}
- {x: -5.4721823, y: -0.8101535}
- {x: -8.5348425, y: -7.156863}
- {x: -5.730815, y: -7.9851418}
- {x: -1.2216358, y: -9.166967}
- {x: 4.660077, y: -10.403753}
- {x: 9.102275, y: -8.908843}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4eefe490fd756c947b300b6f3d697df4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,43 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8497d766078e5764a9c7c0dd5d671561, type: 3}
m_Name: RedMystEast_1
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneData
zoneId: redmysteast_1
zoneName: RedMystEast_1
role: 2
priority: 1
debugColor: {r: 1, g: 0, b: 0.70456123, a: 0.28235295}
encounterTableId:
baseDifficultyTier: 1
baseEncounterChance: 0.2
encounterChanceMultiplier: 1
difficultyTierBonus: 0
isSafeZone: 0
overrideEncounterTableId: Mys_Generic
overrideEncounterChance: 0.5
overrideDifficultyTier: 2
shape: 2
circleRadius: 2
polygon:
- {x: 13.724243, y: -0.19157219}
- {x: 7.0784187, y: -2.0174198}
- {x: 1.8911858, y: -2.108677}
- {x: -0.8943138, y: -1.4471855}
- {x: -2.439663, y: -0.7384167}
- {x: -4.3616867, y: 0.1630249}
- {x: -4.843336, y: -1.959795}
- {x: -4.2144585, y: -3.5807629}
- {x: -1.4249802, y: -3.6347256}
- {x: 2.9196434, y: -3.987339}
- {x: 7.422428, y: -4.7113047}
- {x: 13.624405, y: -4.2200985}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b8ae323df4686334d91ad4d9b22f4159
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,43 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8497d766078e5764a9c7c0dd5d671561, type: 3}
m_Name: South_Road
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneData
zoneId: adventure_generic_!
zoneName: South Road
role: 0
priority: 10
debugColor: {r: 0, g: 0.7563188, b: 1, a: 0.25}
encounterTableId: Adventure_Random_Easy
baseDifficultyTier: 1
baseEncounterChance: 1
encounterChanceMultiplier: 1
difficultyTierBonus: 0
isSafeZone: 0
overrideEncounterTableId:
overrideEncounterChance: 1
overrideDifficultyTier: 4
shape: 2
circleRadius: 2
polygon:
- {x: 0.384861, y: 24.29522}
- {x: -15.640621, y: 34.511837}
- {x: -30.113129, y: 27.246357}
- {x: -31.496538, y: 21.42181}
- {x: -27.24808, y: 14.641392}
- {x: -20.353535, y: 8.758091}
- {x: -17.977764, y: 1.1894388}
- {x: -16.602146, y: -6.5378437}
- {x: -4.461025, y: -6.983674}
- {x: 0.00000003577464, y: -3}
- {x: 5.9418945, y: 1.2338381}
- {x: 5.1053047, y: 12.924463}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 263de6ccb4b79c340883df4a1d555220
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,35 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8497d766078e5764a9c7c0dd5d671561, type: 3}
m_Name: Thievs_Corener
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneData
zoneId: thieves_corner
zoneName: Thievs Corener
role: 1
priority: 1
debugColor: {r: 0.18546152, g: 1, b: 0, a: 0.25}
encounterTableId:
baseDifficultyTier: 1
baseEncounterChance: 0.2
encounterChanceMultiplier: 1.3
difficultyTierBonus: 2
isSafeZone: 0
overrideEncounterTableId:
overrideEncounterChance: 1
overrideDifficultyTier: 4
shape: 0
circleRadius: 2
polygon:
- {x: -1.2897816, y: -1.2319221}
- {x: -3.3127394, y: 4.1323624}
- {x: 3.03339, y: 5.764496}
- {x: 4.5610886, y: -0.49201393}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 499c88e149852754ab0a9a5d551f7eea
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,44 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e38e313f3665d464b82b22699b2a4634, type: 3}
m_Name: PopupSettings
m_EditorClassIdentifier: Jovian.PopupSystem::Jovian.PopupSystem.PopupSettings
popupDelay: 0.2
fadeDuration: 0.2
defaultAnchorSide: 2
screenEdgePadding: 10
maxPopupWidth: 400
sortingOrder: 100
followMouseOffset: {x: 15, y: -15}
touchHoldDuration: 0.6
gamepadFocusTrigger: 1
elementPrefabs:
- type:
id: header
prefab: {fileID: 7034836061828108288, guid: dfc1bc0bd5b4905409615c3e770a5b77, type: 3}
- type:
id: image
prefab: {fileID: 5887814251614319338, guid: 5e715f4b614d02b4fa0b4d3fcfe3c053, type: 3}
- type:
id: label_value_text
prefab: {fileID: 6246834368258800846, guid: 5882db210c62d8647858933649f64c29, type: 3}
- type:
id: separator
prefab: {fileID: 6770634903822758885, guid: 7ccdfa1a2079db044be4b1684303ec7f, type: 3}
- type:
id: text
prefab: {fileID: 3157287847714375358, guid: bfa97c92d1878cc448ddc7dc456f4b17, type: 3}
categoryPriorities:
- category:
id: Character
priority: 0
categoryDelayOverrides: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 571f2dd77fb442d499cdc9c2afe9f98d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -27,7 +27,7 @@ Transform:
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 6.8, y: 0.036, z: 3.2} m_LocalPosition: {x: 6.8, y: 0.036, z: 3.2}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 5, y: 5, z: 5}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 561419057474875478} - {fileID: 561419057474875478}

View File

@@ -27,7 +27,7 @@ Transform:
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 5, y: 5, z: 5}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 2570389272920721074} - {fileID: 2570389272920721074}
@@ -160,7 +160,7 @@ BoxCollider:
serializedVersion: 3 serializedVersion: 3
m_Size: {x: 10, y: 0.1, z: 10} m_Size: {x: 10, y: 0.1, z: 10}
m_Center: {x: 0, y: -0.05, z: 0} m_Center: {x: 0, y: -0.05, z: 0}
--- !u!1 &6524685290382203959 --- !u!1 &2956314392319795661
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -168,44 +168,44 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 150169694567605380} - component: {fileID: 553836549156001377}
- component: {fileID: 2034157458128204794} - component: {fileID: 2776493244321975856}
m_Layer: 0 m_Layer: 0
m_Name: Wilderness m_Name: South Road
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!4 &150169694567605380 --- !u!4 &553836549156001377
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6524685290382203959} m_GameObject: {fileID: 2956314392319795661}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 6.95, y: 0, z: 1.7}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 926535160506351424} m_Father: {fileID: 926535160506351424}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &2034157458128204794 --- !u!114 &2776493244321975856
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6524685290382203959} m_GameObject: {fileID: 2956314392319795661}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3} m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp-firstpass::Jovian.ZoneSystem.ZoneInstance m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneInstance
data: {fileID: 11400000, guid: b90063b33444d214fb0dd99845d20da0, type: 2} data: {fileID: 11400000, guid: 263de6ccb4b79c340883df4a1d555220, type: 2}
--- !u!1 &7700777388891455207 --- !u!1 &6249518700168291789
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -213,43 +213,133 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 6771033229695015998} - component: {fileID: 1941104781230840099}
- component: {fileID: 961106205653816651} - component: {fileID: 2137196945385592953}
m_Layer: 0 m_Layer: 0
m_Name: RedMist m_Name: Codrii Vasluiului
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!4 &6771033229695015998 --- !u!4 &1941104781230840099
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7700777388891455207} m_GameObject: {fileID: 6249518700168291789}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 2.46, y: 0, z: 0.06}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 926535160506351424} m_Father: {fileID: 926535160506351424}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &961106205653816651 --- !u!114 &2137196945385592953
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7700777388891455207} m_GameObject: {fileID: 6249518700168291789}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3} m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp-firstpass::Jovian.ZoneSystem.ZoneInstance m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneInstance
data: {fileID: 11400000, guid: 6ae6794d84d30a64393cdac41f6bd89c, type: 2} data: {fileID: 11400000, guid: 4eefe490fd756c947b300b6f3d697df4, type: 2}
--- !u!1 &6403256874069463078
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2399577652422057350}
- component: {fileID: 8103982541836116775}
m_Layer: 0
m_Name: RedMystEast_1
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2399577652422057350
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6403256874069463078}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 7.289, y: 0, z: 3.48}
m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 926535160506351424}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &8103982541836116775
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6403256874069463078}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3}
m_Name:
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneInstance
data: {fileID: 11400000, guid: b8ae323df4686334d91ad4d9b22f4159, type: 2}
--- !u!1 &8299370824322124813
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2976819594879442214}
- component: {fileID: 5245688421302175395}
m_Layer: 0
m_Name: Thievs Corener
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2976819594879442214
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8299370824322124813}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 3.31, y: 0, z: 6.1}
m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 926535160506351424}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &5245688421302175395
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8299370824322124813}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95af4f7ff0649854598833eabd84f131, type: 3}
m_Name:
m_EditorClassIdentifier: Jovian.ZoneSystem::Jovian.ZoneSystem.ZoneInstance
data: {fileID: 11400000, guid: 499c88e149852754ab0a9a5d551f7eea, type: 2}
--- !u!1 &8990714869477060382 --- !u!1 &8990714869477060382
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -280,8 +370,10 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 150169694567605380} - {fileID: 2399577652422057350}
- {fileID: 6771033229695015998} - {fileID: 553836549156001377}
- {fileID: 1941104781230840099}
- {fileID: 2976819594879442214}
m_Father: {fileID: 3836152601157972426} m_Father: {fileID: 3836152601157972426}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &2165519840843418706 --- !u!114 &2165519840843418706

View File

@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 3883127191764828975} - component: {fileID: 3883127191764828975}
- component: {fileID: 5653379054112650511} - component: {fileID: 5653379054112650511}
- component: {fileID: 6148308834396474161} - component: {fileID: 6148308834396474161}
m_Layer: 0 m_Layer: 9
m_Name: Panel m_Name: Panel
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@@ -86,7 +86,7 @@ GameObject:
- component: {fileID: 4012222738582012437} - component: {fileID: 4012222738582012437}
- component: {fileID: 3249071694086606283} - component: {fileID: 3249071694086606283}
- component: {fileID: 729116634618204491} - component: {fileID: 729116634618204491}
m_Layer: 0 m_Layer: 9
m_Name: Text (TMP) m_Name: Text (TMP)
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@@ -222,7 +222,7 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 660494562578339291} - component: {fileID: 660494562578339291}
- component: {fileID: 1480157237527998548} - component: {fileID: 1480157237527998548}
m_Layer: 0 m_Layer: 9
m_Name: Party m_Name: Party
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@@ -239,7 +239,7 @@ Transform:
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.07, y: 0.036, z: 1.95} m_LocalPosition: {x: 1.07, y: 0.036, z: 1.95}
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 4401955371165223074} - {fileID: 4401955371165223074}
@@ -268,7 +268,7 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 4401955371165223074} - component: {fileID: 4401955371165223074}
- component: {fileID: 3916039184069698551} - component: {fileID: 3916039184069698551}
m_Layer: 0 m_Layer: 9
m_Name: Square m_Name: Square
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@@ -361,7 +361,7 @@ GameObject:
- component: {fileID: 1438956083575921239} - component: {fileID: 1438956083575921239}
- component: {fileID: 846436570382128832} - component: {fileID: 846436570382128832}
- component: {fileID: 3223447814727493591} - component: {fileID: 3223447814727493591}
m_Layer: 0 m_Layer: 9
m_Name: Canvas m_Name: Canvas
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}

View File

@@ -0,0 +1,481 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1774939147060596866
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1760747944163223242}
- component: {fileID: 3503963276009221598}
- component: {fileID: 572009535857796838}
m_Layer: 5
m_Name: nr
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1760747944163223242
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1774939147060596866}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5249586234698548752}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 33.7117, y: -11.996}
m_SizeDelta: {x: 21.0224, y: 24.1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3503963276009221598
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1774939147060596866}
m_CullTransparentMesh: 1
--- !u!114 &572009535857796838
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1774939147060596866}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: 1.
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_sharedMaterial: {fileID: 9074173216178389243, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4278783248
m_fontColor: {r: 0.0627451, g: 0.050980397, b: 0.03529412, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 12
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 2.6
m_fontSizeMax: 12
m_fontStyle: 0
m_HorizontalAlignment: 4
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 2.668274, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &5634975795126131359
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7922870055581323619}
- component: {fileID: 8449579385697103291}
- component: {fileID: 680329226197598615}
- component: {fileID: 4831999132806256115}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7922870055581323619
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5634975795126131359}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5249586234698548752}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0.16499329, y: 0.000025749207}
m_SizeDelta: {x: 0.32999, y: 0.046}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8449579385697103291
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5634975795126131359}
m_CullTransparentMesh: 1
--- !u!114 &680329226197598615
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5634975795126131359}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &4831999132806256115
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5634975795126131359}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 0}
m_HighlightedColor: {r: 0, g: 0, b: 0, a: 0.31764707}
m_PressedColor: {r: 0, g: 0, b: 0, a: 0.4627451}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 680329226197598615}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &5906514193138747816
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5249586234698548752}
- component: {fileID: 6966740546070481897}
- component: {fileID: 1953891385698885950}
- component: {fileID: -3146704326252051464}
m_Layer: 5
m_Name: AnswerReference
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5249586234698548752
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5906514193138747816}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1760747944163223242}
- {fileID: 7428637175488290741}
- {fileID: 7922870055581323619}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 192.33157, y: -11.602112}
m_SizeDelta: {x: 384.6631, y: 24.0463}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6966740546070481897
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5906514193138747816}
m_CullTransparentMesh: 1
--- !u!114 &1953891385698885950
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5906514193138747816}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.LayoutElement
m_IgnoreLayout: 0
m_MinWidth: -1
m_MinHeight: -1
m_PreferredWidth: -1
m_PreferredHeight: -1
m_FlexibleWidth: -1
m_FlexibleHeight: -1
m_LayoutPriority: 1
--- !u!114 &-3146704326252051464
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5906514193138747816}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0c14350aeeed44a28d98d22c6ef048dc, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Nox.Game.AnswerPrefab
number: {fileID: 572009535857796838}
dialogText: {fileID: 3412282869295099737}
button: {fileID: 4831999132806256115}
--- !u!1 &6684607543305325759
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7428637175488290741}
- component: {fileID: 8466763491809017645}
- component: {fileID: 3412282869295099737}
m_Layer: 5
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7428637175488290741
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6684607543305325759}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5249586234698548752}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 214.33, y: -12.023}
m_SizeDelta: {x: 340.22, y: 24.046}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8466763491809017645
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6684607543305325759}
m_CullTransparentMesh: 1
--- !u!114 &3412282869295099737
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6684607543305325759}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Charge The Line Charge The Line Charge The Line Charge The Line Charge
The Line Charge The Line Charge The Line Charge The Line Charge The Line Charge
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_sharedMaterial: {fileID: 9074173216178389243, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4278783248
m_fontColor: {r: 0.0627451, g: 0.050980397, b: 0.03529412, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 8.9
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 2.6
m_fontSizeMax: 12
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 7.1723022, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: cbecff27dee2cf7448a05a89ecb018b4
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 75a4a222ad797a54aac8ff58761899cf
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,697 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3617559978782513519
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8477970123459414041}
- component: {fileID: 3077754775864774321}
- component: {fileID: 3649549507639781181}
m_Layer: 5
m_Name: Mask
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &8477970123459414041
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3617559978782513519}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 7039252932434566139}
m_Father: {fileID: 7107336662030716891}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3077754775864774321
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3617559978782513519}
m_CullTransparentMesh: 1
--- !u!114 &3649549507639781181
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3617559978782513519}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &3853719035858582054
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4900680696536290555}
- component: {fileID: 502023626210869990}
- component: {fileID: 6074527782412359595}
m_Layer: 5
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4900680696536290555
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3853719035858582054}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7039252932434566139}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.43427482}
m_AnchorMax: {x: 0.6627312, y: 0.8264123}
m_AnchoredPosition: {x: 0.9819946, y: 1.0250015}
m_SizeDelta: {x: 1.62, y: 0.68299866}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &502023626210869990
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3853719035858582054}
m_CullTransparentMesh: 1
--- !u!114 &6074527782412359595
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3853719035858582054}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: A group of Gargoyles has blocked the road. They are chanting abd blah
bla
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_sharedMaterial: {fileID: 9074173216178389243, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4279507489
m_fontColor: {r: 0.12941177, g: 0.10196079, b: 0.078431375, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 15.55
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 7.8
m_fontSizeMax: 15.55
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 36.54596, y: 6.367523, z: 6.807068, w: 7.7981873}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &4043707640276751891
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 565728455484042611}
- component: {fileID: 2681516528620939688}
- component: {fileID: 1883240519542694916}
m_Layer: 5
m_Name: Art
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &565728455484042611
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4043707640276751891}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7039252932434566139}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.6627312, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -14.5, y: 0.000030517578}
m_SizeDelta: {x: -32.578293, y: -65.75531}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2681516528620939688
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4043707640276751891}
m_CullTransparentMesh: 1
--- !u!114 &1883240519542694916
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4043707640276751891}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 6cb6255ee69dbf04abe2eac591388adf, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4690676139639527418
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5610124364099563801}
- component: {fileID: 3458576624150439327}
- component: {fileID: 1362417063745413028}
m_Layer: 5
m_Name: Title
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5610124364099563801
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4690676139639527418}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7039252932434566139}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.8264123}
m_AnchorMax: {x: 0.6627312, y: 1}
m_AnchoredPosition: {x: -0.80999756, y: -15.642975}
m_SizeDelta: {x: 1.62, y: -33.7364}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3458576624150439327
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4690676139639527418}
m_CullTransparentMesh: 1
--- !u!114 &1362417063745413028
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4690676139639527418}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Encounter Title
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_sharedMaterial: {fileID: 9074173216178389243, guid: a0ee74bf6f853704a8a568d5ef638ee9, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4279507489
m_fontColor: {r: 0.12941177, g: 0.10196079, b: 0.078431375, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 45.4
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 13.94
m_fontSizeMax: 45.4
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 21.254028, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &4791155219053449426
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4897385661531424469}
- component: {fileID: 7326620177005582428}
- component: {fileID: 7295291249677778017}
m_Layer: 5
m_Name: AnswersContainer
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4897385661531424469
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4791155219053449426}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7039252932434566139}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.057000004}
m_AnchorMax: {x: 0.6627312, y: 0.43427482}
m_AnchoredPosition: {x: 0.9819946, y: -0.81417847}
m_SizeDelta: {x: 1.62, y: 1.3798008}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7326620177005582428
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4791155219053449426}
m_CullTransparentMesh: 1
--- !u!114 &7295291249677778017
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4791155219053449426}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.VerticalLayoutGroup
m_Padding:
m_Left: 0
m_Right: 0
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 0
m_Spacing: 1
m_ChildForceExpandWidth: 1
m_ChildForceExpandHeight: 0
m_ChildControlWidth: 1
m_ChildControlHeight: 0
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
--- !u!1 &6989683072839887398
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7107336662030716891}
- component: {fileID: 5489237150592293923}
- component: {fileID: 5723139269595044}
- component: {fileID: 1343977848673373576}
- component: {fileID: 3705563528526877357}
m_Layer: 5
m_Name: EncounterReference
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7107336662030716891
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6989683072839887398}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 8477970123459414041}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!223 &5489237150592293923
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6989683072839887398}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 0
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 1
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 100
m_TargetDisplay: 0
--- !u!114 &5723139269595044
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6989683072839887398}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.CanvasScaler
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &1343977848673373576
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6989683072839887398}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GraphicRaycaster
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!114 &3705563528526877357
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6989683072839887398}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0173ea7fbf1e45b1932694938ecd3058, type: 3}
m_Name:
m_EditorClassIdentifier: Jovian.EncounterSystem::Jovian.EncounterSystem.EncounterReference
encounterName: {fileID: 1362417063745413028}
encounterDescription: {fileID: 6074527782412359595}
encounterArt: {fileID: 1883240519542694916}
encounterOptionsContainer: {fileID: 4897385661531424469}
--- !u!1 &8084146734087207726
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7039252932434566139}
- component: {fileID: 7810011449154573601}
- component: {fileID: 4925850881383289972}
m_Layer: 5
m_Name: Background
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7039252932434566139
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8084146734087207726}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 565728455484042611}
- {fileID: 5610124364099563801}
- {fileID: 4900680696536290555}
- {fileID: 4897385661531424469}
m_Father: {fileID: 8477970123459414041}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -12.132874, y: 7.188507}
m_SizeDelta: {x: -534.61, y: -277.0435}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7810011449154573601
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8084146734087207726}
m_CullTransparentMesh: 1
--- !u!114 &4925850881383289972
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8084146734087207726}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0.7882353}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 52125a3c3df558448a5af5a04dbf8d2d, type: 3}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 62525e62adc83b84abde85d78828de2b
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b57e33c3f937ba146a2a13d68b0ce173
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1124,14 +1124,14 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 36 m_fontSize: 32.83
m_fontSizeBase: 36 m_fontSizeBase: 36
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 0 m_enableAutoSizing: 1
m_fontSizeMin: 18 m_fontSizeMin: 4.7
m_fontSizeMax: 72 m_fontSizeMax: 32.83
m_fontStyle: 33 m_fontStyle: 33
m_HorizontalAlignment: 4 m_HorizontalAlignment: 2
m_VerticalAlignment: 512 m_VerticalAlignment: 512
m_textAlignment: 65535 m_textAlignment: 65535
m_characterSpacing: 0 m_characterSpacing: 0
@@ -1429,10 +1429,10 @@ RectTransform:
- {fileID: 8599248206773371971} - {fileID: 8599248206773371971}
m_Father: {fileID: 8590246171855584120} m_Father: {fileID: 8590246171855584120}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.10939136, y: 0.5} m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0.32239145, y: 0.5} m_AnchorMax: {x: 0.32239145, y: 0.5}
m_AnchoredPosition: {x: -23.35254, y: 0.80260015} m_AnchoredPosition: {x: -24.620117, y: 2.125}
m_SizeDelta: {x: -48.2798, y: 86.361} m_SizeDelta: {x: -45.73, y: 60.911}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &542021207025892353 --- !u!222 &542021207025892353
CanvasRenderer: CanvasRenderer:

View File

@@ -59,7 +59,7 @@ MonoBehaviour:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0} m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1} m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1 m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1 m_Maskable: 1
m_OnCullStateChanged: m_OnCullStateChanged:
@@ -92,7 +92,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!224 &7663002820715980796 --- !u!224 &7663002820715980796
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -229,7 +229,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!224 &8741529769002405325 --- !u!224 &8741529769002405325
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -408,8 +408,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0} m_Material: {fileID: 0}
m_Color: {r: 0.6156863, g: 0.6509804, b: 0.63529414, a: 1} m_Color: {r: 0.9818833, g: 1, b: 0, a: 1}
m_RaycastTarget: 1 m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1 m_Maskable: 1
m_OnCullStateChanged: m_OnCullStateChanged:
@@ -442,7 +442,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!224 &32220060764936852 --- !u!224 &32220060764936852
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -573,6 +573,7 @@ GameObject:
- component: {fileID: 635472993512454406} - component: {fileID: 635472993512454406}
- component: {fileID: 713960887884573537} - component: {fileID: 713960887884573537}
- component: {fileID: 1445432521138085750} - component: {fileID: 1445432521138085750}
- component: {fileID: 250019032835520348}
m_Layer: 5 m_Layer: 5
m_Name: HeroPortrait m_Name: HeroPortrait
m_TagString: Untagged m_TagString: Untagged
@@ -598,8 +599,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.041302264} m_AnchorMin: {x: 0, y: 0.041302264}
m_AnchorMax: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -0.19400787, y: -0.000015258789} m_AnchoredPosition: {x: -0.0000076293945, y: -0.000015258789}
m_SizeDelta: {x: -0.38810003, y: 0} m_SizeDelta: {x: 0.000022888, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &713960887884573537 --- !u!222 &713960887884573537
CanvasRenderer: CanvasRenderer:
@@ -639,6 +640,22 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &250019032835520348
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5596812297104419965}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4ef9d21a19cd4db4f9d5491202547c05, type: 3}
m_Name:
m_EditorClassIdentifier: Jovian.PopupSystem::Jovian.PopupSystem.UI.PopupTrigger
category:
id: Character
anchorSide: 3
positionMode: 0
--- !u!1 &7521504480723579343 --- !u!1 &7521504480723579343
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -703,9 +720,6 @@ MonoBehaviour:
portrait: {fileID: 1445432521138085750} portrait: {fileID: 1445432521138085750}
healthBar: {fileID: 4550488616099254946} healthBar: {fileID: 4550488616099254946}
manaBar: {fileID: 4614622083837966787} manaBar: {fileID: 4614622083837966787}
nameText: {fileID: 7895725010274726425}
healthText: {fileID: 2204466678496895551}
manaText: {fileID: 1991527881912334546}
--- !u!114 &3828666794624103248 --- !u!114 &3828666794624103248
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -761,8 +775,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.041302264} m_AnchorMin: {x: 0, y: 0.041302264}
m_AnchorMax: {x: 1, y: 0.041302264} m_AnchorMax: {x: 1, y: 0.041302264}
m_AnchoredPosition: {x: -0.19399261, y: -1.4669495} m_AnchoredPosition: {x: -0.19453812, y: -2.3094025}
m_SizeDelta: {x: -0.3880005, y: 2.6903992} m_SizeDelta: {x: -0.38894, y: 4.3752}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2223287144791830491 --- !u!222 &2223287144791830491
CanvasRenderer: CanvasRenderer:
@@ -785,8 +799,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0} m_Material: {fileID: 0}
m_Color: {r: 0.48627454, g: 0.06666667, b: 0.08627451, a: 1} m_Color: {r: 0.19131038, g: 0.06666666, b: 0.4862745, a: 1}
m_RaycastTarget: 1 m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1 m_Maskable: 1
m_OnCullStateChanged: m_OnCullStateChanged:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 80b7de964780c3a4d91efbe9df16d961
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More