Files
AppleHillsProduction/Assets/Scripts/Utils/PhotoCaptureConfig.cs
2025-12-15 15:24:17 +01:00

64 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
namespace Utils
{
/// <summary>
/// Capture types for different photo contexts
/// </summary>
public enum CaptureType
{
StatueMinigame,
DivingMinigame
}
/// <summary>
/// Configuration for a specific capture type
/// </summary>
[Serializable]
public class CaptureConfig
{
public string subFolder;
public string photoPrefix;
public CaptureConfig(string subFolder, string photoPrefix)
{
this.subFolder = subFolder;
this.photoPrefix = photoPrefix;
}
}
/// <summary>
/// Static configuration registry for all capture types
/// </summary>
public static class PhotoCaptureConfigs
{
private static readonly Dictionary<CaptureType, CaptureConfig> Configs = new Dictionary<CaptureType, CaptureConfig>
{
[CaptureType.StatueMinigame] = new CaptureConfig(
subFolder: "StatueMinigame",
photoPrefix: "Statue_"
),
[CaptureType.DivingMinigame] = new CaptureConfig(
subFolder: "DivingMinigame",
photoPrefix: "Diving_"
)
};
/// <summary>
/// Get configuration for a specific capture type
/// </summary>
public static CaptureConfig GetConfig(CaptureType type)
{
if (Configs.TryGetValue(type, out CaptureConfig config))
{
return config;
}
throw new ArgumentException($"No configuration found for CaptureType: {type}");
}
}
}