From d0e356d09e30a11c1e072415a5088f829d5c0a04 Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 16 Jan 2022 21:32:01 -0500 Subject: Worked on features --- src/cmd_query.cc | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) delete mode 100644 src/cmd_query.cc (limited to 'src/cmd_query.cc') diff --git a/src/cmd_query.cc b/src/cmd_query.cc deleted file mode 100644 index e13876f..0000000 --- a/src/cmd_query.cc +++ /dev/null @@ -1,48 +0,0 @@ -#include "cmd.h" -#include "utils.h" -#include "creature.h" -#include "dice.h" -#include "weapon.h" -#include - -namespace cmd { - std::string attacks(std::vector args) { - std::stringstream text; - auto c = utils::instantiate(getTruePath(args[0])); - for(auto w : creature::getAttacks(*c)) { - text << w->getName() << std::endl; - } - return text.str(); - } - - std::string roll(std::vector args) { - std::stringstream text; - auto c = utils::instantiate(getTruePath(args[0])); - args.erase(args.begin()); - std::string rollName = utils::join(args, " "); - utils::lower(rollName); - int rolled = dice::roll(20); - // Search through skills, saves, and attacks to roll - if(rollName == "init" or rollName == "initiative") { - text << formatRoll("Initiative", "check", rolled, c->getInitiative()); - } - rules::Skill skill = rules::tryGetAbilityOrSkill(rollName); - rules::Ability ability = rules::tryGetAbilityOrSkill(rollName); - if(skill) { - text << formatRoll(skill.getName(), "check", rolled, c->getSkillBonus(skill)); - } else if(ability) { - text << formatRoll(ability.getFull(), "save", rolled, c->getAbilitySaveBonus(ability)); - } else { - for(auto w : creature::getAttacks(*c)) { - if(w->getName() == rollName) { - text << w->getText(*c) << std::endl; - int bonus = w->getToHitBonus(*c); - text << formatRoll(w->getName(), "attack", rolled, bonus); - text << " on hit: " << entry::formatDmg(*w, *c) << std::endl; - break; - } - } - } - return text.str(); - } -} -- cgit v1.2.3