checkGameOwnership method

  1. @override
Future<bool> checkGameOwnership()
override

Implementation

@override
Future<bool> checkGameOwnership() async {
  if (_minecraftToken == null) {
    throw Exception('No Minecraft token available');
  }

  final response = await _httpClient.get(
    Uri.parse('https://api.minecraftservices.com/entitlements/mcstore'),
    headers: {'Authorization': 'Bearer $_minecraftToken'},
  );

  if (response.statusCode == 200) {
    final jsonResponse = jsonDecode(response.body);
    if (jsonResponse['items'] != null) {
      final items = jsonResponse['items'] as List;
      return items.isNotEmpty;
    }
    return false;
  } else {
    throw Exception('Failed to check game ownership: ${response.body}');
  }
}