Card Tooltips and Improvements (#9115)

You can now draw from card decks and hands by clicking on them with an empty hand while it's in one of your hands.
    Mousing over a card that's next to you, or face-side-up, will show a tooltip of what it is.
    Drawing a card from a deck now draws a specific card. Dealing a card to someone will pick the first card of the deck, meaning that it has to be shuffled to be random.
This commit is contained in:
Geeves
2020-06-23 14:17:25 +02:00
committed by GitHub
parent 6d1c2bfdad
commit 04e7cfbe6f
4 changed files with 106 additions and 43 deletions

View File

@@ -367,7 +367,7 @@ var/datum/controller/subsystem/battle_monsters/SSbattlemonsters
else
return "Must sacrifice four monsters on your side of the field to summon."
/datum/controller/subsystem/battle_monsters/proc/FormatMonsterText(var/text,var/datum/battle_monsters/element/prefix_datum,var/datum/battle_monsters/monster/root_datum,var/datum/battle_monsters/title/suffix_datum)
/datum/controller/subsystem/battle_monsters/proc/FormatMonsterText(var/text,var/datum/battle_monsters/element/prefix_datum,var/datum/battle_monsters/monster/root_datum,var/datum/battle_monsters/title/suffix_datum, var/include_description = TRUE)
var/list/generated_stats = SSbattlemonsters.GenerateMonsterStats(prefix_datum,root_datum,suffix_datum)
@@ -399,6 +399,8 @@ var/datum/controller/subsystem/battle_monsters/SSbattlemonsters
"%SUMMON_REQUIREMENTS" = GetSummonRequirements(generated_stats["star_level"])
)
if(!include_description)
replacements -= "%DESCRIPTION"
for(var/word in replacements)
text = replacetext(text,word,replacements[word])
@@ -408,7 +410,7 @@ var/datum/controller/subsystem/battle_monsters/SSbattlemonsters
return text
/datum/controller/subsystem/battle_monsters/proc/FormatSpellText(var/text,var/datum/battle_monsters/spell_datum)
/datum/controller/subsystem/battle_monsters/proc/FormatSpellText(var/text,var/datum/battle_monsters/spell_datum,var/include_description = TRUE)
var/list/generated_stats = SSbattlemonsters.GenerateSpellStats(spell_datum)
if(!generated_stats || generated_stats.len == 0)
@@ -424,6 +426,8 @@ var/datum/controller/subsystem/battle_monsters/SSbattlemonsters
"%ELEMENT_OR" = GetElements(generated_stats["elements"], " or "),
"%ELEMENT_LIST" = GetElements(generated_stats["elements"], ", ")
)
if(!include_description)
replacements -= "%DESCRIPTION"
for(var/word in replacements)
text = replacetext(text,word,replacements[word])
@@ -433,23 +437,20 @@ var/datum/controller/subsystem/battle_monsters/SSbattlemonsters
return text
/datum/controller/subsystem/battle_monsters/proc/GetMonsterFormatting()
/datum/controller/subsystem/battle_monsters/proc/GetMonsterFormatting(var/include_description = TRUE)
return "<b>%NAME</b> | %STAR_LEVEL Star Monster | %ELEMENT_LIST %TYPE | %SPECIES_C<br>\
Keywords: %SPECIES_LIST<br>\
ATK: %ATTACK_POINTS | DEF: %DEFENSE_POINTS<br>\
Summoning Requirements: %SUMMON_REQUIREMENTS<br>\
%SPECIAL_EFFECTS<br>\
The card depicts %DESCRIPTION"
%SPECIAL_EFFECTS[include_description ? "<br>The card depicts %DESCRIPTION" : ""]"
/datum/controller/subsystem/battle_monsters/proc/GetSpellFormatting()
/datum/controller/subsystem/battle_monsters/proc/GetSpellFormatting(var/include_description = TRUE)
return "<b>%NAME</b> | Spell | %ELEMENT_LIST<br>\
%SPECIAL_EFFECTS<br>\
The card depicts %DESCRIPTION"
%SPECIAL_EFFECTS[include_description ? "<br>The card depicts %DESCRIPTION" : ""]"
/datum/controller/subsystem/battle_monsters/proc/GetTrapFormatting()
/datum/controller/subsystem/battle_monsters/proc/GetTrapFormatting(var/include_description = TRUE)
return "<b>%NAME</b> | Trap | %ELEMENT_LIST<br>\
%SPECIAL_EFFECTS<br>\
The card depicts %DESCRIPTION"
%SPECIAL_EFFECTS[include_description ? "<br>The card depicts %DESCRIPTION" : ""]"
/datum/controller/subsystem/battle_monsters/proc/ExamineMonsterCard(var/mob/user,var/datum/battle_monsters/element/prefix_datum,var/datum/battle_monsters/monster/root_datum,var/datum/battle_monsters/title/suffix_datum)
to_chat(user,FormatMonsterText(GetMonsterFormatting(),prefix_datum,root_datum,suffix_datum))