diff --git a/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs b/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs new file mode 100644 index 0000000..be1ce40 --- /dev/null +++ b/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs @@ -0,0 +1,5 @@ +using Darkmatter.App.LifetimeScopes; + +public class ColorBookLifetimeScope : BaseLifetimeScope +{ +} diff --git a/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs.meta b/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs.meta new file mode 100644 index 0000000..f0af676 --- /dev/null +++ b/Assets/Darkmatter/Code/App/LifetimeScopes/ColorBookLifetimeScope.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 8bbdb0f5cdf25c34086f816c59836c9d \ No newline at end of file diff --git a/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs b/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs new file mode 100644 index 0000000..8175f44 --- /dev/null +++ b/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs @@ -0,0 +1,6 @@ +using UnityEngine; + +namespace Darkmatter.Core +{ + public record struct OpenArtBookSignal; +} diff --git a/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs.meta b/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs.meta new file mode 100644 index 0000000..1f64629 --- /dev/null +++ b/Assets/Darkmatter/Code/Core/Data/Signals/Features/DrawingCatalog/OpenArtBookSignal.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: cf8582ced90151445a9fa7b610f59ce9 \ No newline at end of file diff --git a/Assets/Darkmatter/Code/Features/ColorbookFlow/UI.meta b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI.meta new file mode 100644 index 0000000..20b2be1 --- /dev/null +++ b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4c7aea1194f557e4db070c12db7d3ce6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs new file mode 100644 index 0000000..6325cc2 --- /dev/null +++ b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace Darkmatter.Features.Colorbook +{ + public class ColorBookPresenter + { + + } +} diff --git a/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs.meta b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs.meta new file mode 100644 index 0000000..2f3ef0c --- /dev/null +++ b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookPresenter.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 123e872ebf17096499bb4ff6f3a23e39 \ No newline at end of file diff --git a/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs new file mode 100644 index 0000000..94f8bf0 --- /dev/null +++ b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs @@ -0,0 +1,19 @@ +using UnityEngine; + +namespace Darkmatter.Features.Colorbook +{ + public class ColorBookView : MonoBehaviour + { + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start() + { + + } + + // Update is called once per frame + void Update() + { + + } + } +} diff --git a/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs.meta b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs.meta new file mode 100644 index 0000000..ee81084 --- /dev/null +++ b/Assets/Darkmatter/Code/Features/ColorbookFlow/UI/ColorBookView.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 34c79bc9b38a2f546950cba13d598af1 \ No newline at end of file diff --git a/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogPresenter.cs b/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogPresenter.cs index 5c7ed91..7b96692 100644 --- a/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogPresenter.cs +++ b/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogPresenter.cs @@ -26,9 +26,22 @@ namespace Darkmatter.Features.DrawingCatalog public void Start() { _view.OnItemClicked += OnItemClicked; + _view.OnBackClicked += OnBackBtnClicked; + _view.OnArtBookClicked += OnArtBookBtnClicked; + _controller.ListChanged += OnListChanged; } + private void OnArtBookBtnClicked() + { + + } + + private void OnBackBtnClicked() + { + throw new NotImplementedException(); + } + private void OnItemClicked(string id) => _controller.OnTemplateSelected(id); diff --git a/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogView.cs b/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogView.cs index 9936aaf..29bc1b5 100644 --- a/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogView.cs +++ b/Assets/Darkmatter/Code/Features/DrawingCatalog/UI/DrawingCatalogView.cs @@ -1,7 +1,9 @@ using System; using System.Collections.Generic; +using Darkmatter.Libs.Observer; using UnityEngine; using UnityEngine.Pool; +using UnityEngine.UI; namespace Darkmatter.Features.DrawingCatalog { @@ -9,9 +11,21 @@ namespace Darkmatter.Features.DrawingCatalog { [SerializeField] private RectTransform content; [SerializeField] private DrawingCatalogButton buttonPrefab; + + [Header("Buttons")] + [SerializeField] private Button backButton; + [SerializeField] private Button artBookButton; private readonly List _buttons = new(); public event Action OnItemClicked; + public event Action OnBackClicked; + public event Action OnArtBookClicked; + + public void Start() + { + backButton.onClick.AddListener(() => OnBackClicked?.Invoke()); + artBookButton.onClick.AddListener(() => OnArtBookClicked?.Invoke()); + } public void SetItems(IReadOnlyList items) { diff --git a/Assets/Darkmatter/Scenes/ColorBookScene.unity b/Assets/Darkmatter/Scenes/ColorBookScene.unity index 01d49cb..6eeec78 100644 --- a/Assets/Darkmatter/Scenes/ColorBookScene.unity +++ b/Assets/Darkmatter/Scenes/ColorBookScene.unity @@ -686,7 +686,7 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 526134094} - 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_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 @@ -694,12 +694,12 @@ RectTransform: - {fileID: 897161407} - {fileID: 2123251731} - {fileID: 669480396} - m_Father: {fileID: 1855107934} + m_Father: {fileID: 1095289319} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 17.662231, y: -79.90521} - m_SizeDelta: {x: -77.1025, y: -159.8165} + m_AnchoredPosition: {x: 16.531006, y: -357.9118} + m_SizeDelta: {x: -18.767784, y: 364.17032} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &526134096 MonoBehaviour: @@ -1242,6 +1242,50 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 669480395} m_CullTransparentMesh: 1 +--- !u!1 &774469003 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 774469004} + - component: {fileID: 774469005} + m_Layer: 0 + m_Name: ColorBookFeatureModule + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &774469004 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 774469003} + serializedVersion: 2 + 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: 1721810410} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &774469005 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 774469003} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 11fb2300ce74e014ebad85d334071008, type: 3} + m_Name: + m_EditorClassIdentifier: Features.ColorLevels::ColorLevelsFeatureModule --- !u!1 &810888431 GameObject: m_ObjectHideFlags: 0 @@ -1771,6 +1815,46 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1048149024} m_CullTransparentMesh: 1 +--- !u!1 &1095289318 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1095289319} + m_Layer: 5 + m_Name: ColorBookView + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1095289319 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1095289318} + 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: 1855107934} + - {fileID: 1139509439} + - {fileID: 526134095} + - {fileID: 1604482366} + - {fileID: 2040975075} + m_Father: {fileID: 2069155641} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 1.1312256, y: 278.0066} + m_SizeDelta: {x: -58.334717, y: -523.9868} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1139509438 GameObject: m_ObjectHideFlags: 0 @@ -1796,16 +1880,16 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1139509438} - 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_LocalScale: {x: 0.51398, y: 0.51398, z: 0.51398} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 1855107934} + m_Father: {fileID: 1095289319} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: -0.9267, y: -61.1969} + m_AnchoredPosition: {x: -2.0579257, y: -77.21008} m_SizeDelta: {x: 1308.6868, y: 300.44006} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1139509440 @@ -2178,6 +2262,56 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1173838253} m_CullTransparentMesh: 1 +--- !u!1 &1273192409 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1273192410} + - component: {fileID: 1273192411} + m_Layer: 0 + m_Name: ColorBookLifetimeScope + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1273192410 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273192409} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1091.9618, y: 178.78226, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1721810410} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1273192411 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273192409} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8bbdb0f5cdf25c34086f816c59836c9d, type: 3} + m_Name: + m_EditorClassIdentifier: Darkmatter.App::ColorBookLifetimeScope + parentReference: + TypeName: + autoRun: 1 + autoInjectGameObjects: [] + serviceModules: [] --- !u!1 &1490756344 GameObject: m_ObjectHideFlags: 0 @@ -2553,17 +2687,17 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1604482365} - 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_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1540054263} - m_Father: {fileID: 1855107934} + m_Father: {fileID: 1095289319} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 157.557, y: -67} + m_AnchoredPosition: {x: 127.25842, y: -83.01318} m_SizeDelta: {x: 254.51678, y: 148} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1604482367 @@ -2769,6 +2903,38 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1708860529} m_CullTransparentMesh: 1 +--- !u!1 &1721810409 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1721810410} + m_Layer: 0 + m_Name: ServiceModules + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1721810410 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1721810409} + serializedVersion: 2 + 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: 774469004} + m_Father: {fileID: 1273192410} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1811707690 GameObject: m_ObjectHideFlags: 0 @@ -2877,21 +3043,17 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1855107933} - 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_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1139509439} - - {fileID: 526134095} - - {fileID: 1604482366} - - {fileID: 2040975075} - m_Father: {fileID: 2069155641} + m_Children: [] + m_Father: {fileID: 1095289319} 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_AnchoredPosition: {x: -1.1312256, y: -278.0066} + m_SizeDelta: {x: 58.334717, y: 523.9868} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1855107935 MonoBehaviour: @@ -3169,17 +3331,17 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2040975074} - 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_LocalScale: {x: 0.7, y: 0.7, z: 0.7} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1890794682} - m_Father: {fileID: 1855107934} + m_Father: {fileID: 1095289319} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -193.84686, y: -68.53757} + m_AnchoredPosition: {x: -165.81073, y: -84.55075} m_SizeDelta: {x: 473.74487, y: 153.69641} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2040975076 @@ -3359,7 +3521,7 @@ RectTransform: m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1855107934} + - {fileID: 1095289319} - {fileID: 1499856800} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -3493,5 +3655,6 @@ CanvasRenderer: SceneRoots: m_ObjectHideFlags: 0 m_Roots: + - {fileID: 1273192410} - {fileID: 2069155641} - {fileID: 590523275} diff --git a/Assets/Darkmatter/Scenes/MainMenu.unity b/Assets/Darkmatter/Scenes/MainMenu.unity index 315e174..660f2af 100644 --- a/Assets/Darkmatter/Scenes/MainMenu.unity +++ b/Assets/Darkmatter/Scenes/MainMenu.unity @@ -6206,7 +6206,7 @@ GameObject: - component: {fileID: 1102850748} - component: {fileID: 1102850749} m_Layer: 0 - m_Name: MainmenuServiceModule + m_Name: MainmenuFeatureModule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0