Skip to content

Commit

Permalink
added ability to specify format on Icons, Maps and Cards
Browse files Browse the repository at this point in the history
  • Loading branch information
Eisenhuth committed Oct 21, 2024
1 parent 5c02df6 commit 1291e84
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 0 deletions.
12 changes: 12 additions & 0 deletions Sources/xivapi-swift/xivapi-api/Icon.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,18 @@ public struct Icon: Codable, Hashable {
}

public extension Icon {
@available(*, deprecated, message: "Use iconUrl(format:) instead.", renamed: "iconUrl()" )
var iconUrl: URL? { path != nil ? Endpoint.asset(at: path!, format: .jpg) : nil }
@available(*, deprecated, message: "Use iconUrlHD(format:) instead.", renamed: "iconUrlHD()" )
var iconUrlHD: URL? { path_hr1 != nil ? Endpoint.asset(at: path_hr1!, format: .jpg) : nil }

func iconUrl(format: Format = .jpg) -> URL? {
guard let path else { return nil }
return Endpoint.asset(at: path, format: format)
}

func iconUrlHD(format: Format = .jpg) -> URL? {
guard let path_hr1 else { return nil }
return Endpoint.asset(at: path_hr1, format: format)
}
}
7 changes: 7 additions & 0 deletions Sources/xivapi-swift/xivapi-api/Map.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,19 @@ public struct XivMap: Codable {
public extension XivMap {
var name: String { fields.PlaceName.fields.Name }
var region: String { fields.PlaceNameRegion.fields.Name }
@available(*, deprecated, message: "Use mapUrl(format:) instead.", renamed: "mapUrl()" )
var mapUrl: URL? {
let territoryId = fields.Id
let path = "ui/map/\(territoryId)/\(territoryId.replacingOccurrences(of: "/", with: ""))_m.tex"
return Endpoint.asset(at: path, format: .jpg)
}

func mapUrl(format: Format = .jpg) -> URL? {
let territoryId = fields.Id
let path = "ui/map/\(territoryId)/\(territoryId.replacingOccurrences(of: "/", with: ""))_m.tex"
return Endpoint.asset(at: path, format: format)
}

/// a map composed from the map and background textures
var compositedMapUrl: URL? {
let path = "map/\(fields.Id)"
Expand Down
11 changes: 11 additions & 0 deletions Sources/xivapi-swift/xivapi-api/TripleTriadCard.swift
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ public struct TripleTriadCardFields: Codable {
public extension TripleTriadCard {

var backgroundUrl: URL? { Endpoint.asset(at: "ui/uld/CardTripleTriad_hr1.tex") }
@available(*, deprecated, message: "Use imageUrl(format:) instead.", renamed: "imageUrl()" )
var imageUrl: URL? {

let cardNumber = row_id.description
Expand All @@ -23,5 +24,15 @@ public extension TripleTriadCard {
return url
}

func imageUrl(format: Format = .png) -> URL? {

let cardNumber = row_id.description
let paddedString = String(repeating: "0", count: 3 - cardNumber.count).appending(cardNumber)
let path = "ui/icon/087000/087\(paddedString)_hr1.tex"
let url = Endpoint.asset(at: path, format: format)

return url
}

//TODO: stats, category
}

0 comments on commit 1291e84

Please sign in to comment.