formatting

This commit is contained in:
ShyProton 2025-04-29 00:24:42 -04:00
parent 6eb80f768b
commit 76a23aab5c
6 changed files with 39 additions and 24 deletions

View File

@ -47,7 +47,6 @@ func _init() -> void:
fetch_start.connect(_on_start_emit) fetch_start.connect(_on_start_emit)
func _on_start_emit() -> void: func _on_start_emit() -> void:
_emitted_start += 1 _emitted_start += 1
@ -132,6 +131,7 @@ func _get_card_data_from_bulk(dict_entry: Dictionary) -> Dictionary:
return dict_entry return dict_entry
func _get_mana_img(symbol: String, img_url: String) -> Error: func _get_mana_img(symbol: String, img_url: String) -> Error:
fetch_start.emit() fetch_start.emit()
if FileAccess.file_exists("res://symbol_cache/" + symbol + ".svg"): if FileAccess.file_exists("res://symbol_cache/" + symbol + ".svg"):
@ -152,7 +152,9 @@ func _get_mana_img(symbol: String, img_url: String) -> Error:
push_error(_cache_error("IMG_LOADING") + "Couldn't load the image.") push_error(_cache_error("IMG_LOADING") + "Couldn't load the image.")
return FAILED return FAILED
img.save_png("res://symbol_cache/" + symbol.replace("/", "-").replace("{", "").replace("}", "") + ".png") img.save_png(
"res://symbol_cache/" + symbol.replace("/", "-").replace("{", "").replace("}", "") + ".png"
)
img = null img = null
fetch_done.emit() fetch_done.emit()
@ -182,7 +184,11 @@ func _fetch_mana_symbols() -> Error:
err = await _get_mana_img(icon["symbol"], icon["svg_uri"]) err = await _get_mana_img(icon["symbol"], icon["svg_uri"])
if err != OK: if err != OK:
push_error("Couldn't fetch mana symbol " + icon["symbol"]) push_error("Couldn't fetch mana symbol " + icon["symbol"])
mana_symbols[icon["symbol"]] = "res://symbol_cache/" + icon["symbol"].replace("/", "-").replace("{", "").replace("}", "") + ".png" mana_symbols[icon["symbol"]] = (
"res://symbol_cache/"
+ icon["symbol"].replace("/", "-").replace("{", "").replace("}", "")
+ ".png"
)
print(icon["symbol"] + " image cached.") print(icon["symbol"] + " image cached.")
var file = FileAccess.open("res://symbol_cache/symbols.json", FileAccess.WRITE) var file = FileAccess.open("res://symbol_cache/symbols.json", FileAccess.WRITE)
@ -192,6 +198,7 @@ func _fetch_mana_symbols() -> Error:
print("Done caching mana symbols.") print("Done caching mana symbols.")
return OK return OK
func _fetch_card_img(data: Dictionary) -> Error: func _fetch_card_img(data: Dictionary) -> Error:
fetch_start.emit() fetch_start.emit()
if FileAccess.file_exists("user://card_cache/" + data["id"] + "card.png"): if FileAccess.file_exists("user://card_cache/" + data["id"] + "card.png"):

View File

@ -3,4 +3,4 @@ extends Node
@warning_ignore("unused_signal") @warning_ignore("unused_signal")
signal card_on_hover(card_info, card_image) signal card_on_hover(card_info, card_image)
@warning_ignore("unused_signal") @warning_ignore("unused_signal")
signal card_on_unhover() signal card_on_unhover

View File

@ -46,7 +46,9 @@ func _load_data() -> Error:
func _load_image() -> Error: func _load_image() -> Error:
var cached_img = FileAccess.get_file_as_bytes("user://card_cache/" + card.card_info["id"] + "/card.png") var cached_img = FileAccess.get_file_as_bytes(
"user://card_cache/" + card.card_info["id"] + "/card.png"
)
if cached_img.is_empty(): if cached_img.is_empty():
push_error("%sCard on-board image was not found in cache" % card.error("CACHE")) push_error("%sCard on-board image was not found in cache" % card.error("CACHE"))
@ -77,5 +79,4 @@ func _load_image() -> Error:
var card_sprite = card.get_node("Sprite2D") var card_sprite = card.get_node("Sprite2D")
card_sprite.texture = image_texture card_sprite.texture = image_texture
return OK return OK

View File

@ -1,14 +1,17 @@
extends TextureRect extends TextureRect
func _set_tip_image(_card_info: Dictionary, card_image: Image) -> void: func _set_tip_image(_card_info: Dictionary, card_image: Image) -> void:
card_image.resize(int(size.x / 1.75), int(size.y), Image.INTERPOLATE_LANCZOS) card_image.resize(int(size.x / 1.75), int(size.y), Image.INTERPOLATE_LANCZOS)
var tex = ImageTexture.new() var tex = ImageTexture.new()
tex.set_image(card_image) tex.set_image(card_image)
texture = tex texture = tex
func _clear_tip_image() -> void: func _clear_tip_image() -> void:
texture = null texture = null
func _ready() -> void: func _ready() -> void:
EventBus.connect("card_on_hover", _set_tip_image) EventBus.connect("card_on_hover", _set_tip_image)
EventBus.connect("card_on_unhover", _clear_tip_image) EventBus.connect("card_on_unhover", _clear_tip_image)

View File

@ -2,6 +2,7 @@ extends RichTextLabel
var mana_symbols: Dictionary var mana_symbols: Dictionary
func _set_tip_text(card_info: Dictionary, _card_image: Image) -> void: func _set_tip_text(card_info: Dictionary, _card_image: Image) -> void:
# TODO: add more card formatting, check all of the logos, very niche icons will be affected i believe since they're # TODO: add more card formatting, check all of the logos, very niche icons will be affected i believe since they're
# different sizes # different sizes
@ -14,7 +15,9 @@ func _set_tip_text(card_info: Dictionary, _card_image: Image) -> void:
for symbol in mana_symbols: for symbol in mana_symbols:
last_idx = 0 last_idx = 0
while oracle_text.find(symbol, last_idx) != -1: while oracle_text.find(symbol, last_idx) != -1:
oracle_text = oracle_text.replace(symbol, "[img width=\"16\" height=\"16\"]" + mana_symbols[symbol] + "[/img]") oracle_text = oracle_text.replace(
symbol, '[img width="16" height="16"]' + mana_symbols[symbol] + "[/img]"
)
last_idx = oracle_text.find(symbol, last_idx) + symbol.length() last_idx = oracle_text.find(symbol, last_idx) + symbol.length()
text += oracle_text text += oracle_text
@ -23,6 +26,7 @@ func _set_tip_text(card_info: Dictionary, _card_image: Image) -> void:
func _clear_tip_text() -> void: func _clear_tip_text() -> void:
text = "" text = ""
func _ready() -> void: func _ready() -> void:
if !FileAccess.file_exists("res://symbol_cache/symbols.json"): if !FileAccess.file_exists("res://symbol_cache/symbols.json"):
push_error("Symbols haven't been cached yet!") push_error("Symbols haven't been cached yet!")