getUserSkinInfo($userId); } /** * 切换用户皮肤 * * @param int $userId 用户ID * @param int $skinId 皮肤ID * @return Res 操作结果 */ public static function changeSkin(int $userId, int $skinId): Res { $logic = new SkinLogic(); return $logic->changeSkin($userId, $skinId); } /** * 为用户添加皮肤 * * @param int $userId 用户ID * @param int $skinId 皮肤ID * @return Res 操作结果 */ public static function addSkin(int $userId, int $skinId): Res { $logic = new SkinLogic(); return $logic->addSkin($userId, $skinId); } /** * 检查用户是否拥有指定皮肤 * * @param int $userId 用户ID * @param int $skinId 皮肤ID * @return bool 是否拥有 */ public static function hasSkin(int $userId, int $skinId): bool { $logic = new SkinLogic(); return $logic->hasSkin($userId, $skinId); } /** * 获取用户当前使用的皮肤ID * * @param int $userId 用户ID * @return int 当前皮肤ID,默认为1 */ public static function getCurrentSkinId(int $userId): int { $skinInfo = self::getUserSkinInfo($userId); return $skinInfo ? $skinInfo->currentSkinId : 1; } /** * 获取用户拥有的皮肤列表 * * @param int $userId 用户ID * @return array 拥有的皮肤ID数组 */ public static function getOwnedSkins(int $userId): array { $skinInfo = self::getUserSkinInfo($userId); return $skinInfo ? $skinInfo->ownedSkins : [1]; } /** * 初始化用户皮肤数据 * * @param int $userId 用户ID * @return Res 操作结果 */ public static function initUserSkin(int $userId): Res { $logic = new SkinLogic(); return $logic->initUserSkin($userId); } /** * 获取所有可用皮肤 * * @return array 皮肤列表 */ public static function getAllSkins(): array { return \App\Module\Game\Enums\SKIN::getValueDescription(); } /** * 获取皮肤名称 * * @param int $skinId 皮肤ID * @return string 皮肤名称 */ public static function getSkinName(int $skinId): string { $skins = self::getAllSkins(); return $skins[$skinId] ?? '未知皮肤'; } /** * 验证皮肤ID是否有效 * * @param int $skinId 皮肤ID * @return bool 是否有效 */ public static function isValidSkinId(int $skinId): bool { return $skinId >= 1 && $skinId <= 4; } }