adds mana cost to the card tooltip

This commit is contained in:
2025-04-29 07:01:46 -04:00
parent 6eb80f768b
commit 31175b4ecd
4 changed files with 25 additions and 13 deletions

View File

@ -41,6 +41,7 @@ func _load_data() -> Error:
card.card_info["name"] = card_json["name"]
card.card_info["type"] = card_json["type_line"]
card.card_info["desc"] = card_json["oracle_text"]
card.card_info["cost"] = card_json["mana_cost"]
return OK

View File

@ -2,22 +2,24 @@ extends RichTextLabel
var mana_symbols: Dictionary
func _convert_text_to_symbol(_text: String):
var last_idx = 0
for symbol in mana_symbols:
last_idx = 0
while _text.find(symbol, last_idx) != -1:
_text = _text.replace(symbol, "[img]" + mana_symbols[symbol] + "[/img]")
last_idx = _text.find(symbol, last_idx) + symbol.length()
return _text
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
# shrink text if we use too much space for it, etc
text = "[b]" + card_info["name"] + "[/b]\n"
text = "[b]" + card_info["name"] + "[/b]\t"
text += _convert_text_to_symbol(card_info["cost"]) + "\n"
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()
text += oracle_text
text += _convert_text_to_symbol(card_info["desc"])
func _clear_tip_text() -> void: