Make a generic booster pack giver

This commit is contained in:
Michal Pikulski
2025-12-15 11:59:40 +01:00
parent e2b74b1ea5
commit bb332933ec
64 changed files with 1228 additions and 312 deletions

View File

@@ -1,6 +1,7 @@
using System.Collections.Generic;
using Core;
using Core.Lifecycle;
using Core.Settings;
using Minigames.StatueDressup.Data;
using UnityEngine;
using UnityEngine.ResourceManagement.AsyncOperations;
@@ -18,7 +19,7 @@ namespace Minigames.StatueDressup.Controllers
// Static callback queue for when instance doesn't exist yet
private static readonly List<System.Action> PendingCallbacks = new List<System.Action>();
private AppleHills.Core.Settings.IStatueDressupSettings settings;
private IStatueDressupSettings settings;
private Dictionary<string, DecorationData> decorationDataDict;
private AsyncOperationHandle<System.Collections.Generic.IList<DecorationData>> decorationDataHandle;
private bool isLoaded;
@@ -26,7 +27,7 @@ namespace Minigames.StatueDressup.Controllers
/// <summary>
/// Get the settings instance
/// </summary>
public AppleHills.Core.Settings.IStatueDressupSettings Settings => settings;
public IStatueDressupSettings Settings => settings;
/// <summary>
/// Check if data is loaded and ready (implements IReadyNotifier)
@@ -102,7 +103,7 @@ namespace Minigames.StatueDressup.Controllers
Logging.Debug("[DecorationDataManager] Waiting for GameManager to be accessible...");
// Wait until GameManager is accessible and settings can be retrieved
settings = GameManager.GetSettingsObject<AppleHills.Core.Settings.IStatueDressupSettings>();
settings = GameManager.GetSettingsObject<IStatueDressupSettings>();
Logging.Debug("[DecorationDataManager] Settings loaded successfully");

View File

@@ -1,4 +1,5 @@
using Minigames.StatueDressup.Data;
using Core.Settings;
using Minigames.StatueDressup.Data;
using UnityEngine;
namespace Minigames.StatueDressup.DragDrop
@@ -37,7 +38,7 @@ namespace Minigames.StatueDressup.DragDrop
/// <summary>
/// Settings for the minigame
/// </summary>
public AppleHills.Core.Settings.IStatueDressupSettings Settings { get; set; }
public IStatueDressupSettings Settings { get; set; }
/// <summary>
/// Callback when drag operation finishes (success or failure)
@@ -67,7 +68,7 @@ namespace Minigames.StatueDressup.DragDrop
RectTransform statueOutline,
Transform statueParent,
Controllers.StatueDecorationController controller,
AppleHills.Core.Settings.IStatueDressupSettings settings,
IStatueDressupSettings settings,
System.Action onFinished,
System.Action onShowOutline,
System.Action onHideOutline)
@@ -92,7 +93,7 @@ namespace Minigames.StatueDressup.DragDrop
public static DecorationDragContext CreateForPlaced(
DecorationData data,
Controllers.StatueDecorationController controller,
AppleHills.Core.Settings.IStatueDressupSettings settings,
IStatueDressupSettings settings,
RectTransform statueOutline = null,
Transform canvasParent = null,
System.Action onShowOutline = null,

View File

@@ -1,4 +1,5 @@
using Core;
using Core.Settings;
using Minigames.StatueDressup.Controllers;
using Minigames.StatueDressup.Data;
using Minigames.StatueDressup.Events;
@@ -28,7 +29,7 @@ namespace Minigames.StatueDressup.DragDrop
private RectTransform _statueOutline;
private Transform _statueParent;
private StatueDecorationController _controller;
private AppleHills.Core.Settings.IStatueDressupSettings _settings;
private IStatueDressupSettings _settings;
private System.Action _onFinishedCallback;
private System.Action _onShowOutlineCallback;
private System.Action _onHideOutlineCallback;
@@ -123,7 +124,7 @@ namespace Minigames.StatueDressup.DragDrop
/// </summary>
[System.Obsolete("Use InitializeWithContext instead")]
public void Initialize(DecorationData data, RectTransform pStatueOutline, Transform pStatueParent,
StatueDecorationController pController, AppleHills.Core.Settings.IStatueDressupSettings pSettings,
StatueDecorationController pController, IStatueDressupSettings pSettings,
System.Action pOnFinishedCallback, System.Action onShowOutline = null, System.Action onHideOutline = null)
{
var context = DecorationDragContext.CreateForNewDrag(
@@ -138,7 +139,7 @@ namespace Minigames.StatueDressup.DragDrop
/// </summary>
[System.Obsolete("Use InitializeWithContext instead")]
public void InitializeAsPlaced(DecorationData data, StatueDecorationController pController,
AppleHills.Core.Settings.IStatueDressupSettings pSettings, RectTransform pStatueOutline = null,
IStatueDressupSettings pSettings, RectTransform pStatueOutline = null,
Transform pCanvasParent = null, System.Action onShowOutline = null, System.Action onHideOutline = null,
System.Action onFinished = null)
{

View File

@@ -1,4 +1,5 @@
using Core;
using Core.Settings;
using Minigames.StatueDressup.Controllers;
using Minigames.StatueDressup.DragDrop;
using UnityEngine;
@@ -24,7 +25,7 @@ namespace Minigames.StatueDressup.UI
[SerializeField] private int activeDecorationSortOrder = 100;
private DecorationDraggableInstance _targetDecoration;
private AppleHills.Core.Settings.IStatueDressupSettings _settings;
private IStatueDressupSettings _settings;
private bool _isInitialized;
// Canvas management for rendering order