Beispiel #1
0
void Pokemon::setLevel(int level, bool printLevelUp)
{
	auto iv = 10;
	auto ev = 22850;
	auto newValueHP = ((((base_hitpoints_ + iv) * 2 + (sqrt(ev) / 4)) * level) / 100) + level + 10;
	auto newValueAP = ((((base_attackpoints_ + iv) * 2 + (sqrt(ev) / 4)) * level) / 100) + 5;
	auto newValueDP = ((((base_defensepoints_ + iv) * 2 + (sqrt(ev) / 4) ) * level ) / 100 ) + 5;

	setBaseHP(base_hitpoints_ + static_cast<int>(newValueHP));
	setAP(attackpoints_ + static_cast<int>(newValueAP));
	setDP(defensepoints_ + static_cast<int>(newValueDP));

	Unit::setLevel(level, printLevelUp);
}
Beispiel #2
0
Pokemon::Pokemon(int ID, string name, double lvl, PokeType pokeType, double baseHP, double baseAtt, double baseDef, double baseSpeed, double mana, string sprite, Move* move1, Move* move2, Move* move3, Move* move4)
{
	setPokemonID(ID);
	setName(name);
	setLevel(lvl);
	setPokeType(pokeType);
	setBaseHP(baseHP);
	setBaseAtt(baseAtt);
	setBaseDef(baseDef);
	setBaseSpeed(baseSpeed);
	SetStatsForLevel();
	setMana(mana);
	setCurrentMana(mana);
	setSprite(sprite);
	setMoves(move1, move2, move3, move4);
}