made it work for new format
This commit is contained in:
Lncvrt committed 2025-06-22 12:55:08 -07:00
1 parent 5ea2fabae8
commit 7828d258e7
3 files changed
+6 -13

No files matched your search

+2 -2
View File
@@ -393,7 +393,7 @@
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 13.5;
MARKETING_VERSION = 1.0.1;
MARKETING_VERSION = 1.0.2;
PRODUCT_BUNDLE_IDENTIFIER = "xyz.lncvrt.Berry-Leaderboards";
PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = YES;
@@ -432,7 +432,7 @@
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 13.5;
MARKETING_VERSION = 1.0.1;
MARKETING_VERSION = 1.0.2;
PRODUCT_BUNDLE_IDENTIFIER = "xyz.lncvrt.Berry-Leaderboards";
PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = YES;
+1 -1
View File
@@ -40,7 +40,7 @@ struct ContentView: View {
.padding()
}
List(players) { player in
List(players, id: \.username) { player in
HStack {
Text(player.username)
Spacer()
+3 -10
View File
@@ -7,19 +7,12 @@
import Foundation
struct Player: Identifiable {
let id = UUID()
struct Player: Codable {
let username: String
let score: Int
}
func parseLeaderboard(_ raw: String) -> [Player] {
raw.split(separator: ";").compactMap { entry in
let parts = entry.split(separator: ":")
guard parts.count == 2,
let nameData = Data(base64Encoded: String(parts[0])),
let username = String(data: nameData, encoding: .utf8),
let score = Int(parts[1]) else { return nil }
return Player(username: username, score: score)
}
guard let data = raw.data(using: .utf8) else { return [] }
return (try? JSONDecoder().decode([Player].self, from: data)) ?? []
}