summaryrefslogtreecommitdiffstats
path: root/sigencore/TeamMember.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigencore/TeamMember.cpp')
-rw-r--r--sigencore/TeamMember.cpp89
1 files changed, 47 insertions, 42 deletions
diff --git a/sigencore/TeamMember.cpp b/sigencore/TeamMember.cpp
index ba0c9cce..663645ba 100644
--- a/sigencore/TeamMember.cpp
+++ b/sigencore/TeamMember.cpp
@@ -51,6 +51,11 @@
// C includes
#include <cmath>
+using namespace Sigcore;
+using namespace Sigmod;
+using namespace Sigscript;
+using namespace Sigencore;
+
int Sigencore::actionPriority(TeamMember* teamMember, const TeamMember::Action& action)
{
int priority = INT_MAX;
@@ -93,24 +98,24 @@ int Sigencore::actionPriority(TeamMember* teamMember, const TeamMember::Action&
return priority;
}
-Sigencore::TeamMember::TeamMember(Sigscript::SpeciesWrapper* species, const int level, Team* team, const bool isWild, const bool suppressInitialization) :
+TeamMember::TeamMember(SpeciesWrapper* species, const int level, Team* team, const bool isWild, const bool suppressInitialization) :
Creature(species, level, team, suppressInitialization),
m_team(team),
m_arena(NULL),
m_isWild(isWild)
{
- for (int i = 0; i < (Sigmod::ST_SpecialDefense - Sigmod::ST_Attack + 1); ++i)
+ for (int i = 0; i < (ST_SpecialDefense - ST_Attack + 1); ++i)
m_stages[i] = 0;
}
-Sigencore::TeamMember::~TeamMember()
+TeamMember::~TeamMember()
{
if (m_arena)
exitArena();
// TODO: Clean up scripts
}
-bool Sigencore::TeamMember::setContainment(Containment* containment)
+bool TeamMember::setContainment(Containment* containment)
{
Team* team = qobject_cast<Team*>(containment);
if (team)
@@ -119,7 +124,7 @@ bool Sigencore::TeamMember::setContainment(Containment* containment)
m_containment = containment;
}
-bool Sigencore::TeamMember::setTeam(Team* team)
+bool TeamMember::setTeam(Team* team)
{
if (m_team && m_team->removeTeamMember(this))
{
@@ -130,51 +135,51 @@ bool Sigencore::TeamMember::setTeam(Team* team)
return false;
}
-Sigencore::Team* Sigencore::TeamMember::team() const
+Team* TeamMember::team() const
{
return m_team;
}
-bool Sigencore::TeamMember::setStatStage(const Sigmod::Stat stat, const int stage)
+bool TeamMember::setStatStage(const Stat stat, const int stage)
{
- if (stat == Sigmod::ST_HP)
+ if (stat == ST_HP)
return false;
if (m_game->rules()->maxStages() < qAbs(stage))
return false;
- m_stages[stat - Sigmod::ST_Attack] = stage;
+ m_stages[stat - ST_Attack] = stage;
emit(statStageChanged(stat, stage));
return true;
}
-bool Sigencore::TeamMember::giveStatStages(const Sigmod::Stat stat, const int stages)
+bool TeamMember::giveStatStages(const Stat stat, const int stages)
{
- if (stat == Sigmod::ST_HP)
+ if (stat == ST_HP)
return false;
- return setStatStage(stat, m_stages[stat - Sigmod::ST_Attack] + stages);
+ return setStatStage(stat, m_stages[stat - ST_Attack] + stages);
}
-int Sigencore::TeamMember::statStage(const Sigmod::Stat stat) const
+int TeamMember::statStage(const Stat stat) const
{
int stages;
- if (stat == Sigmod::ST_HP)
+ if (stat == ST_HP)
return 0;
- if (valueOfType(QString("stat-stages-%1").arg((m_game->rules()->specialSplit() ? Sigmod::StatGSCStr : Sigmod::StatRBYStr)[stat]), &stages) && (qAbs(stages) <= m_game->rules()->maxStages()))
+ if (valueOfType(QString("stat-stages-%1").arg((m_game->rules()->specialSplit() ? StatGSCStr : StatRBYStr)[stat]), &stages) && (qAbs(stages) <= m_game->rules()->maxStages()))
return stages;
- return m_stages[stat - Sigmod::ST_Attack];
+ return m_stages[stat - ST_Attack];
}
-int Sigencore::TeamMember::statValue(const Sigmod::Stat stat) const
+int TeamMember::statValue(const Stat stat) const
{
- Sigcore::Fraction multiplier;
+ Fraction multiplier;
const int stage = statStage(stat);
if (0 < stage)
- multiplier *= Sigcore::Fraction(stage + 2, 2);
+ multiplier *= Fraction(stage + 2, 2);
else if (stage < 0)
- multiplier *= Sigcore::Fraction(2, stage + 2);
+ multiplier *= Fraction(2, stage + 2);
return multiplier * Creature::statValue(stat);
}
-bool Sigencore::TeamMember::addAbility(Sigscript::AbilityWrapper* ability)
+bool TeamMember::addAbility(AbilityWrapper* ability)
{
if ((m_abilities.size() < m_game->rules()->maxAbilities()) && !m_abilities.contains(ability))
{
@@ -210,7 +215,7 @@ bool Sigencore::TeamMember::addAbility(Sigscript::AbilityWrapper* ability)
return false;
}
-bool Sigencore::TeamMember::removeAbility(Sigscript::AbilityWrapper* ability)
+bool TeamMember::removeAbility(AbilityWrapper* ability)
{
if (m_abilities.contains(ability))
{
@@ -225,12 +230,12 @@ bool Sigencore::TeamMember::removeAbility(Sigscript::AbilityWrapper* ability)
return false;
}
-bool Sigencore::TeamMember::addItems(Sigscript::ItemWrapper* item, const int count, const bool allOrNothing)
+bool TeamMember::addItems(ItemWrapper* item, const int count, const bool allOrNothing)
{
// TODO: Handle scripts
}
-bool Sigencore::TeamMember::addMove(Sigscript::MoveWrapper* move)
+bool TeamMember::addMove(MoveWrapper* move)
{
bool canLearn = false;
for (int i = 0; !canLearn && (i < m_species->moveCount()); ++i)
@@ -260,7 +265,7 @@ bool Sigencore::TeamMember::addMove(Sigscript::MoveWrapper* move)
return false;
}
-bool Sigencore::TeamMember::removeMove(Sigscript::MoveWrapper* move)
+bool TeamMember::removeMove(MoveWrapper* move)
{
if (m_moves.contains(move) && (1 < m_moves.size()))
{
@@ -275,7 +280,7 @@ bool Sigencore::TeamMember::removeMove(Sigscript::MoveWrapper* move)
return false;
}
-bool Sigencore::TeamMember::addNature(Sigscript::NatureWrapper* nature)
+bool TeamMember::addNature(NatureWrapper* nature)
{
if ((m_natures.size() < m_game->rules()->maxNatures()) && !m_natures.contains(nature))
{
@@ -286,7 +291,7 @@ bool Sigencore::TeamMember::addNature(Sigscript::NatureWrapper* nature)
return false;
}
-bool Sigencore::TeamMember::removeNature(Sigscript::NatureWrapper* nature)
+bool TeamMember::removeNature(NatureWrapper* nature)
{
if (m_natures.contains(nature))
{
@@ -297,7 +302,7 @@ bool Sigencore::TeamMember::removeNature(Sigscript::NatureWrapper* nature)
return false;
}
-bool Sigencore::TeamMember::addStatus(Sigscript::StatusWrapper* status)
+bool TeamMember::addStatus(StatusWrapper* status)
{
if (!m_status.contains(status))
{
@@ -333,7 +338,7 @@ bool Sigencore::TeamMember::addStatus(Sigscript::StatusWrapper* status)
return false;
}
-bool Sigencore::TeamMember::removeStatus(Sigscript::StatusWrapper* status)
+bool TeamMember::removeStatus(StatusWrapper* status)
{
if (m_status.contains(status))
{
@@ -348,13 +353,13 @@ bool Sigencore::TeamMember::removeStatus(Sigscript::StatusWrapper* status)
return false;
}
-void Sigencore::TeamMember::makeActive(Arena* arena)
+void TeamMember::makeActive(Arena* arena)
{
// TODO
Team* team = qobject_cast<Team*>(this->containment());
- foreach (Sigscript::StatusWrapper* status, m_status)
+ foreach (StatusWrapper* status, m_status)
{
- const Sigcore::Script script = status->battleScript();
+ const Script script = status->battleScript();
if (!script.script().isEmpty())
{
ObjectMap objects;
@@ -368,9 +373,9 @@ void Sigencore::TeamMember::makeActive(Arena* arena)
action->trigger();
}
}
- foreach (Sigscript::AbilityWrapper* ability, m_abilities)
+ foreach (AbilityWrapper* ability, m_abilities)
{
- const Sigcore::Script script = ability->battleScript();
+ const Script script = ability->battleScript();
if (!script.script().isEmpty())
{
ObjectMap objects;
@@ -387,27 +392,27 @@ void Sigencore::TeamMember::makeActive(Arena* arena)
m_arena = arena;
}
-void Sigencore::TeamMember::exitArena()
+void TeamMember::exitArena()
{
qDeleteAll(m_statusBattleScriptsMap.values());
m_statusBattleScriptsMap.clear();
qDeleteAll(m_abilityBattleScriptsMap.values());
m_abilityBattleScriptsMap.clear();
- for (int i = Sigmod::ST_Attack; i <= Sigmod::ST_Evasion; ++i)
+ for (int i = ST_Attack; i <= ST_Evasion; ++i)
{
- const QString entry = QString("stat-stages-%1").arg((m_game->rules()->specialSplit() ? Sigmod::StatGSCStr : Sigmod::StatRBYStr)[i]);
+ const QString entry = QString("stat-stages-%1").arg((m_game->rules()->specialSplit() ? StatGSCStr : StatRBYStr)[i]);
if (options(entry) & Temporary)
removeValue(entry, false);
}
m_arena = NULL;
}
-void Sigencore::TeamMember::completeMoves()
+void TeamMember::completeMoves()
{
- QMap<int, Sigscript::MoveWrapper*> moves;
+ QMap<int, MoveWrapper*> moves;
for (int i = 0; i < m_species->moveCount(); ++i)
{
- Sigscript::SpeciesMoveWrapper* move = m_species->move(i);
+ SpeciesMoveWrapper* move = m_species->move(i);
const int level = m_isWild ? move->wild() : move->level();
if ((0 <= level) && (level <= m_level))
moves[level] = move->move();
@@ -415,8 +420,8 @@ void Sigencore::TeamMember::completeMoves()
// TODO: give the moves to the creature
}
-void Sigencore::TeamMember::makeConnections()
+void TeamMember::makeConnections()
{
- connect(this, SIGNAL(statStageChanged(Sigmod::Stat, int)), SLOT(recalcStat(Sigmod::Stat)));
+ connect(this, SIGNAL(statStageChanged(Stat, int)), SLOT(recalcStat(Stat)));
Creature::makeConnections();
}