Files
tiny_tackle_heroes/Assets/_Project/Scripts/Constants/Defense25DRunHudConstants.cs
T
2026-09-28 11:07:17 +09:00

63 lines
2.5 KiB
C#

using UnityEngine;
namespace BumpCombat.Constants
{
[CreateAssetMenu(menuName = "BumpCombat/Constants/Defense 2.5D Run HUD")]
public sealed class Defense25DRunHudConstants : ScriptableObject
{
public const float ReferenceWidth = 1920f;
public const float ReferenceHeight = 1080f;
[Header("Combat status")]
public Vector2 CombatHudBottomLeft = new(24f, 24f);
public Vector2 CombatHudSize = new(392f, 136f);
public Vector2 HealthTrackSize = new(352f, 12f);
public Vector2 ArtifactGaugeSize = new(352f, 18f);
public Vector2 ExperienceTrackSize = new(352f, 8f);
public float TrackSpacing = 2f;
public float ArtifactSlotSize = 60f;
public float ArtifactSlotSpacing = 62f;
public int MaximumArtifactSlots = 3;
public Vector2 GuardTrackSize = new(18f, 94f);
public Vector2 GuardFillSize = new(14f, 90f);
public float GuardRightOffset = 32f;
[Header("Run status")]
public Vector2 TimerSize = new(220f, 66f);
public float TimerTop = 24f;
public Vector2 WaveSummarySize = new(700f, 76f);
public float WaveSummaryTop = 98f;
[Header("Map and portals")]
public Vector2 MinimapSize = new(300f, 162f);
public Vector2 MinimapContentSize = new(288f, 150f);
public float MinimapRight = 24f;
public float MinimapTop = 24f;
public Vector2 PortalListSize = new(320f, 300f);
public float PortalListRight = 24f;
public float PortalListTop = 194f;
public float PortalRowHeight = 24f;
public int PortalCount = 12;
public Vector2 MissionPanelSize = new(320f, 126f);
public float MissionPanelRight = 24f;
public float MissionPanelTop = 502f;
public int MissionCount = 3;
[Header("Context panels")]
public Vector2 ConstructionSize = new(360f, 300f);
public float ConstructionLeft = 24f;
public float ConstructionTop = 420f;
public Vector2 ModalMaximumSize = new(1040f, 420f);
public int HeaderFontSize = 24;
public int BodyFontSize = 18;
public int SmallFontSize = 14;
public static bool IsValidViewport(Rect viewport) =>
viewport.width > 0f && viewport.height > 0f;
public static float ScaleForViewport(Rect viewport) => IsValidViewport(viewport)
? Mathf.Min(viewport.width / ReferenceWidth, viewport.height / ReferenceHeight)
: 0f;
}
}