From 5a813a75412ac9b8fadb90c9abd46dd95aee8e9b Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 29 Apr 2021 14:17:08 -0400 Subject: Removed data files from repo --- src/spellcasting.cc | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) (limited to 'src/spellcasting.cc') diff --git a/src/spellcasting.cc b/src/spellcasting.cc index e36fd5b..9b39741 100644 --- a/src/spellcasting.cc +++ b/src/spellcasting.cc @@ -12,47 +12,29 @@ namespace entry { return genText(*this, c); } - string toOrdinal(size_t number) { - string suffix = "th"; - if (number % 100 < 11 || number % 100 > 13) { - switch (number % 10) { - case 1: - suffix = "st"; - break; - case 2: - suffix = "nd"; - break; - case 3: - suffix = "rd"; - break; - } - } - return to_string(number) + suffix; - } - string genText(const Spellcasting& s, const creature::Creature& c) { stringstream text; text << genText(static_cast(s), c); - text << ": Spellcasting ability: " << s.getAbility().getFull(); + text << ": The " << c.getCreatureName() << "'s spellcasting ability is " << s.getAbility().getFull(); text << " (spell save DC " << 8 + c.getBonus(s.getAbility()) + c.getProficiency(); text << ", +" << c.getBonus(s.getAbility()) + c.getProficiency() << " to hit with spell attacks)."; if(s.isInnate()) { - text << " (spellcasting is innate)."; + text << " Spellcasting is innate."; } int levelNumber = 0; for(auto level : s.getSpellsBySlot()) { - text << "\n"; + text << endl; if(level.numSlots == 0) { if(s.isInnate()) { - text << "At will: "; + text << " At will: "; } else { - text << "Cantrips: "; + text << " Cantrips: "; } } else { if(s.isInnate()) { - text << level.numSlots << "/day each: "; + text << " " << level.numSlots << "/day each: "; } else { - text << toOrdinal(levelNumber) << " level (" << level.numSlots << " slots): "; + text << " " << utils::toOrdinal(levelNumber) << " level (" << level.numSlots << " slots): "; } } vector names; -- cgit v1.2.3