PkmnLib/tests/TestLibrary/TestLibrary.cpp

84 lines
5.1 KiB
C++
Raw Normal View History

2019-12-29 14:29:52 +00:00
#include "TestLibrary.hpp"
2020-07-04 13:50:30 +00:00
#include <Arbutils/StringView.hpp>
PkmnLib::Battling::BattleLibrary* TestLibrary::_library = nullptr;
PkmnLib::Library::SpeciesLibrary* TestLibrary::BuildSpeciesLibrary(CreatureLib::Library::TalentLibrary* talentLibrary) {
2020-01-05 14:18:30 +00:00
auto lib = new PkmnLib::Library::SpeciesLibrary();
2022-05-16 16:16:15 +00:00
lib->Insert("testSpecies"_cnc,
new PkmnLib::Library::PokemonSpecies(
1, "testSpecies"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 1.0f, 1.0f, 236, {0},
CreatureLib::Library::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
2020-08-08 16:41:27 +00:00
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2022-05-16 16:16:15 +00:00
lib->Insert("testSpecies2"_cnc,
new PkmnLib::Library::PokemonSpecies(
2, "testSpecies2"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 1.0f, 1.0f, 306, {0},
CreatureLib::Library::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
2020-08-08 16:41:27 +00:00
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2022-05-16 16:16:15 +00:00
lib->Insert("statTestSpecies1"_cnc,
new PkmnLib::Library::PokemonSpecies(
3, "statTestSpecies1"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 1.0f, 1.0f, 236, {0},
CreatureLib::Library::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
2020-08-08 16:41:27 +00:00
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2022-05-16 16:16:15 +00:00
lib->Insert("testSpecies3"_cnc,
new PkmnLib::Library::PokemonSpecies(
2020-08-30 11:53:15 +00:00
4, "testSpecies3"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 1.0f, 1.0f, 236, {0, 4},
CreatureLib::Library::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
2020-08-08 16:41:27 +00:00
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2020-01-05 14:18:30 +00:00
2022-05-16 16:16:15 +00:00
lib->Insert("testCharizard"_cnc,
new PkmnLib::Library::PokemonSpecies(
5, "testCharizard"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 1.7f, 90.5f, 240, {0, 4},
CreatureLib::Library::StatisticSet<uint16_t>(78, 84, 78, 109, 85, 100),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2022-05-16 16:16:15 +00:00
lib->Insert("testVenusaur"_cnc,
new PkmnLib::Library::PokemonSpecies(
6, "testVenusaur"_cnc,
new PkmnLib::Library::PokemonForme(
"default"_cnc, 2.0f, 100.0f, 236, {0, 4},
CreatureLib::Library::StatisticSet<uint16_t>(80, 82, 83, 100, 100, 80),
{talentLibrary->Get("testAbility"_cnc)}, {talentLibrary->Get("testHiddenAbility"_cnc)},
new PkmnLib::Library::LearnableMoves(100)),
0.5f, "testGrowthRate"_cnc, 100, 100, {"testEggGroup"_cnc}));
2020-01-05 14:18:30 +00:00
return lib;
}
PkmnLib::Library::MoveLibrary* TestLibrary::BuildMoveLibrary() {
auto lib = new PkmnLib::Library::MoveLibrary();
2022-05-16 16:16:15 +00:00
lib->Insert("testMove"_cnc,
new PkmnLib::Library::MoveData("testMove"_cnc, 0, PkmnLib::Library::MoveCategory::Physical, 50, 100, 20,
CreatureLib::Library::AttackTarget::Adjacent, 0,
2020-04-10 20:27:40 +00:00
new CreatureLib::Library::SecondaryEffect(), {}));
2022-05-16 16:16:15 +00:00
lib->Insert("testMove2"_cnc,
new PkmnLib::Library::MoveData("testMove2"_cnc, 0, PkmnLib::Library::MoveCategory::Special, 30, 100, 10,
CreatureLib::Library::AttackTarget::Adjacent, 0,
2020-04-10 20:27:40 +00:00
new CreatureLib::Library::SecondaryEffect(), {}));
return lib;
}
PkmnLib::Library::ItemLibrary* TestLibrary::BuildItemLibrary() {
auto lib = new PkmnLib::Library::ItemLibrary();
2022-05-16 16:16:15 +00:00
lib->Insert("testItem"_cnc,
2020-08-30 11:53:15 +00:00
new PkmnLib::Library::Item("testItem"_cnc, CreatureLib::Library::ItemCategory::MiscItem,
2022-02-19 13:04:43 +00:00
CreatureLib::Library::BattleItemCategory::None, 0, nullptr, nullptr, {}, 0));
return lib;
}