diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2007-10-26 20:46:09 +0000 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2007-10-26 20:46:09 +0000 |
| commit | 4385af885daf460a18e236f08509358f764b2c8c (patch) | |
| tree | 6c2838312dd7f42769280e24e8abc16b53c165cb /pokemod/PokemonEvolution.cpp | |
| parent | 1f08afc80c73087bf9bde639754670548b89fc9f (diff) | |
| download | sigen-4385af885daf460a18e236f08509358f764b2c8c.tar.gz sigen-4385af885daf460a18e236f08509358f764b2c8c.tar.xz sigen-4385af885daf460a18e236f08509358f764b2c8c.zip | |
Reverted repo back to rev24 because committing of rev25 messed up
git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@26 6ecfd1a5-f3ed-3746-8530-beee90d26b22
Diffstat (limited to 'pokemod/PokemonEvolution.cpp')
| -rw-r--r-- | pokemod/PokemonEvolution.cpp | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/pokemod/PokemonEvolution.cpp b/pokemod/PokemonEvolution.cpp new file mode 100644 index 00000000..89abc22b --- /dev/null +++ b/pokemod/PokemonEvolution.cpp @@ -0,0 +1,143 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: pokemod/PokemonEvolution.cpp +// Purpose: Define an evolution that a Pokémon can go through +// Author: Ben Boeckel +// Modified by: Ben Boeckel +// Created: Tue Mar 20 18:45:29 2007 +// Copyright: ©2007 Ben Boeckel and Nerdy Productions +// Licence: +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program. If not, see <http://www.gnu.org/licenses/>. +///////////////////////////////////////////////////////////////////////////// + +#include "PokemonEvolution.h" + +PokeGen::PokeMod::PokemonEvolution::PokemonEvolution(const Pokemod* par, const unsigned _id) : + Object(_id, par), + species(UINT_MAX), + style(UINT_MAX), + val1(UINT_MAX), + val2(UINT_MAX), + level(0) +{ +} + +PokeGen::PokeMod::PokemonEvolution::PokemonEvolution(const Pokemod* par, Ini& ini, const unsigned _id) : + Object(_id, par) +{ + ImportIni(ini, _id); +} + +bool PokeGen::PokeMod::PokemonEvolution::Validate() +{ + pokemod->ValidationMsg(QString("------Evolution with id %1---").arg(id), Pokemod::V_Msg); + if (pokemod->GetPokemonByID(species) == UINT_MAX) + { + pokemod->ValidationMsg("Invalid species"); + isValid = false; + } + if (End <= style) + { + pokemod->ValidationMsg("Invalid style"); + isValid = false; + } + if (pokemod->GetMaxLevel() <= level) + { + pokemod->ValidationMsg("Invalid level"); + isValid = false; + } + return isValid; +} + +void PokeGen::PokeMod::PokemonEvolution::ImportIni(Ini& ini, const unsigned _id) +{ + if (_id == UINT_MAX) + ini.GetValue("id", id); + else + id = _id; + ini.GetValue("species", species); + ini.GetValue("style", style); + ini.GetValue("val1", val1); + ini.GetValue("val2", val2); + ini.GetValue("level", level, 0); +} + +void PokeGen::PokeMod::PokemonEvolution::ExportIni(QFile& fout, const QString& pokemon) const +{ + Ini exPokemonEvolution("pokemonEvolution " + pokemon); + exPokemonEvolution.AddField("id", id); + exPokemonEvolution.AddField("species", species); + exPokemonEvolution.AddField("style", style); + exPokemonEvolution.AddField("val1", val1); + exPokemonEvolution.AddField("val2", val2); + exPokemonEvolution.AddField("level", level); + exPokemonEvolution.Export(fout); +} + +bool PokeGen::PokeMod::PokemonEvolution::SetSpecies(const unsigned s) +{ + if (pokemod->GetPokemonByID(s) != UINT_MAX) + species = s; + return (species == s); +} + +bool PokeGen::PokeMod::PokemonEvolution::SetStyle(const unsigned s) +{ + if (s < End) + style = s; + return (style == s); +} + +bool PokeGen::PokeMod::PokemonEvolution::SetVal1(const unsigned v1) +{ + // TODO (Ben#1#): Val1 of PokemonEvolution + return (val1 == v1); +} + +bool PokeGen::PokeMod::PokemonEvolution::SetVal2(const unsigned v2) +{ + // TODO (Ben#1#): Val2 of PokemonEvolution + return (val2 == v2); +} + +bool PokeGen::PokeMod::PokemonEvolution::SetLevel(const unsigned l) +{ + if (l <= pokemod->GetMaxLevel()) + level = l; + return (level == l); +} + +unsigned PokeGen::PokeMod::PokemonEvolution::GetSpecies() const +{ + return species; +} + +unsigned PokeGen::PokeMod::PokemonEvolution::GetStyle() const +{ + return style; +} + +unsigned PokeGen::PokeMod::PokemonEvolution::GetVal1() const +{ + return val1; +} + +unsigned PokeGen::PokeMod::PokemonEvolution::GetVal2() const +{ + return val2; +} + +unsigned PokeGen::PokeMod::PokemonEvolution::GetLevel() const +{ + return level; +} |
