formatting

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

View File

@ -68,5 +68,5 @@ func _on_mouse_exited() -> void:
Input.set_default_cursor_shape(Input.CURSOR_ARROW)
$TweenController.scale(1.0)
EventBus.emit_signal("card_on_unhover")

View File

@ -37,7 +37,7 @@ func _load_data() -> Error:
if card_json == null:
push_error("%s\nCard json data is could not be parsed as valid json" % card.error("DATA"))
return FAILED
card.card_info["name"] = card_json["name"]
card.card_info["type"] = card_json["type_line"]
card.card_info["desc"] = card_json["oracle_text"]
@ -46,7 +46,9 @@ func _load_data() -> 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():
push_error("%sCard on-board image was not found in cache" % card.error("CACHE"))
@ -58,9 +60,9 @@ func _load_image() -> Error:
if image_status != OK:
push_error("%sCard on-board image failed to load correctly" % card.error("IMAGE"))
return FAILED
card.cached_image = cache_image
var image = Image.new()
image_status = image.load_png_from_buffer(cached_img)
@ -77,5 +79,4 @@ func _load_image() -> Error:
var card_sprite = card.get_node("Sprite2D")
card_sprite.texture = image_texture
return OK

View File

@ -1,14 +1,17 @@
extends TextureRect
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)
var tex = ImageTexture.new()
tex.set_image(card_image)
texture = tex
func _clear_tip_image() -> void:
texture = null
func _ready() -> void:
EventBus.connect("card_on_hover", _set_tip_image)
EventBus.connect("card_on_unhover", _clear_tip_image)

View File

@ -2,6 +2,7 @@ extends RichTextLabel
var mana_symbols: Dictionary
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
# different sizes
@ -10,19 +11,22 @@ func _set_tip_text(card_info: Dictionary, _card_image: Image) -> void:
text += "[i]" + card_info["type"] + "[/i]\n"
var oracle_text = card_info["desc"]
var last_idx = 0
for symbol in mana_symbols:
last_idx = 0
while oracle_text.find(symbol, last_idx) != -1:
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()
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()
text += oracle_text
func _clear_tip_text() -> void:
text = ""
func _ready() -> void:
if !FileAccess.file_exists("res://symbol_cache/symbols.json"):
push_error("Symbols haven't been cached yet!")
@ -30,8 +34,8 @@ func _ready() -> void:
var file = FileAccess.open("res://symbol_cache/symbols.json", FileAccess.READ)
mana_symbols = JSON.parse_string(file.get_as_text())
file.close()
set_use_bbcode(true)
EventBus.connect("card_on_hover", _set_tip_text)
EventBus.connect("card_on_unhover", _clear_tip_text)