GameGlobal.canvas = wx.createCanvas();

const windowInfo = wx.getWindowInfo ? wx.getWindowInfo() : wx.getSystemInfoSync();

canvas.width = windowInfo.screenWidth;
canvas.height = windowInfo.screenHeight;

export const SCREEN_WIDTH = windowInfo.screenWidth;
export const SCREEN_HEIGHT = windowInfo.screenHeight;

// 安全区域适配：刘海/状态栏(顶部)、底部手势条(仅有时才有)
const safeArea = windowInfo.safeArea;
export const SAFE_AREA_TOP = safeArea ? safeArea.top : 0;
export const SAFE_AREA_BOTTOM = safeArea ? (windowInfo.screenHeight - safeArea.bottom) : 0;

// ─── iPad 适配判断 ──────────────────────────────────────────
// 手机竖屏比例约 9:16 ≈ 0.5625，iPad 约 3:4 = 0.75
// 宽高比超过 0.6 视为矮胖屏（iPad 等平板）
export const IS_PAD = SCREEN_WIDTH / SCREEN_HEIGHT > 0.6;

// UI 缩放因子：以 iPhone 375px 为基准设计，iPad 上等比放大
// 手机上 UI_SCALE = 1（不影响），iPad 上 ≈ 2（768/375 ≈ 2.05）
export const UI_SCALE = IS_PAD ? SCREEN_WIDTH / 375 : 1;

// UI 基准宽度：用于替代 SCREEN_WIDTH 做 UI 元素尺寸计算
// 手机上 = SCREEN_WIDTH（不影响），iPad 上 = 375 * UI_SCALE（限制等比）
// 效果：SCREEN_WIDTH * 0.12 → UI_BASE * 0.12，iPad 上不会因宽度暴增而过大
export const UI_BASE = IS_PAD ? SCREEN_HEIGHT * (9 / 16) : SCREEN_WIDTH;