void Battle::addText(Pokemon a_user, Move a_move) { D3DXCOLOR tempcolor = D3DXCOLOR(0.0f,0.0f,0.0f,1.0f); swprintf_s(charactertempthingy[curtextincrement], a_user.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// User's name battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 300; battletext[curtextincrement].rec.right = 500; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"used"); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// Used battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 425; battletext[curtextincrement].rec.right = 625; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], a_move.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// User's move's name battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 575; battletext[curtextincrement].rec.right = 775; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; }
void displayArr(Pokemon arr[], int numGenPokemon, int genNum) { Pokemon tempPoke; int nameLength = 0; string tempName; for (int i = 0; i < numGenPokemon; i++) { tempPoke = arr[i]; if(genNum == 0 && i % 10 == 0) cout << endl << endl; //National Dex line breaks else if (genNum != 0 && i % 6 == 0) cout << endl << endl; // All other region line breaks if(tempPoke.getRevealed()) tempName = tempPoke.getName(); else tempName = tempPoke.getID(); printSpace(MAX_SPACE); nameLength = tempName.size(); cout << tempName; while(nameLength < MAX_SPACE){ printSpace(1); nameLength++; } } }
std::vector<std::string> AttackAction::execute() { Pokemon *defendingPokemon = defendingTrainer->getActivePokemon(); // float effectiveness = 1; float effectiveness = Effectiveness::attackingxDefendingChart[attack->getType()][defendingPokemon->getType()] *Effectiveness::attackingxDefendingChart[attack->getType()][defendingPokemon->getType2()]; float damage = attack->getBaseDamage() * effectiveness; int newHp = round(defendingPokemon->getCurrentHp() - damage); std::string attackingPokemonName = attackingPokemon->getName(); std::string defendingPokemonName = defendingPokemon->getName(); std::ostringstream damageAmount; //retVal.push_back(attackingPokemonName + " dealt " + damageAmount.str() + " damage to " + defendingPokemonName); retVal.push_back(attackingPokemonName + " used " + attack->getName()); if (effectiveness == 0) { retVal.push_back("It's ineffective..."); } else if (effectiveness == 0.5 || effectiveness == 0.25) { retVal.push_back("It's not very effective..."); } else if (effectiveness == 2 || effectiveness == 4) { retVal.push_back("It's super effective!"); } if(newHp < 0) { newHp = 0; defendingPokemon->setCurrentHp(newHp); retVal.push_back(defendingPokemonName + " died!"); } defendingPokemon->setCurrentHp(newHp); attack->setCurrentPp(attack->getCurrentPp()-1); damageAmount << attack->getBaseDamage(); return retVal; }
void Battle::addText(Pokemon a_user, Move a_move) { D3DXCOLOR tempcolor = D3DXCOLOR(0.0f,0.0f,0.0f,1.0f); battletext[curtextincrement].text = a_user.getName();// User's name battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 300; battletext[curtextincrement].rec.right = 500; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = L"used";// Used battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 425; battletext[curtextincrement].rec.right = 625; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = a_move.getName();// User's move's name battletext[curtextincrement].rec.top = 375; battletext[curtextincrement].rec.bottom = 450; battletext[curtextincrement].rec.left = 575; battletext[curtextincrement].rec.right = 775; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; }
void Battle::menuReset(Pokemon a_pikachu, Pokemon a_enemy) { battlemenu.battleReset(); //wchar_t tempwchar_t[256]; D3DXCOLOR tempcolor = D3DXCOLOR(0.0f,0.0f,0.0f,1.0f); curtextincrement = 0; swprintf_s(charactertempthingy[curtextincrement], a_pikachu.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// Pikachu's name battletext[curtextincrement].rec.top = 450; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 600; battletext[curtextincrement].rec.right = 800; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"hp:"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's hp: battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 490; battletext[curtextincrement].rec.right = 720; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getCurHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // Pikachu's curhp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 555; battletext[curtextincrement].rec.right = 750; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's slash battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 610; battletext[curtextincrement].rec.right = 780; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMaxHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikach's max hp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 660; battletext[curtextincrement].rec.right = 800; ++curtextincrement; // enemy start swprintf_s(charactertempthingy[curtextincrement], a_enemy.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// Enemy's name battletext[curtextincrement].rec.top = 75; battletext[curtextincrement].rec.bottom = 0; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 200; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"hp:"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's hp: battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 100; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_enemy.getCurHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // enemy's curhp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 160; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's slash battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_enemy.getMaxHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // enemy's max hp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 60; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; }
void Battle::menuResetWithMoves(Pokemon a_pikachu, Pokemon a_enemy) { battlemenu.battleResetWithMoves(a_pikachu); D3DXCOLOR tempcolor = D3DXCOLOR(0.0f,0.0f,0.0f,1.0f); curtextincrement = 0; swprintf_s(charactertempthingy[curtextincrement], a_pikachu.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// Pikachu's name battletext[curtextincrement].rec.top = 450; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 600; battletext[curtextincrement].rec.right = 800; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"hp:"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's hp: battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 490; battletext[curtextincrement].rec.right = 720; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getCurHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // Pikachu's curhp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 555; battletext[curtextincrement].rec.right = 750; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's slash battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 610; battletext[curtextincrement].rec.right = 780; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMaxHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikach's max hp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 660; battletext[curtextincrement].rec.right = 800; ++curtextincrement; // enemy start swprintf_s(charactertempthingy[curtextincrement], a_enemy.getName()); battletext[curtextincrement].text = charactertempthingy[curtextincrement];// Enemy's name battletext[curtextincrement].rec.top = 75; battletext[curtextincrement].rec.bottom = 0; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 200; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"hp:"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's hp: battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 100; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_enemy.getCurHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // enemy's curhp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 160; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // hp's slash battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_enemy.getMaxHP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // enemy's max hp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 60; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; // Start move pp's swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(0).getCurPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 1st move's curpp battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 160; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = L"/"; // pikachu's 1st move's slash battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 210; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(0).getMaxPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 1st move's maxpp battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 60; battletext[curtextincrement].rec.right = 210; ++curtextincrement; // second move swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(1).getCurPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 2nd move's curpp battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 210; battletext[curtextincrement].rec.right = 360; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 2nd move's slash battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 210; battletext[curtextincrement].rec.right = 410; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(1).getMaxPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 2nd move's maxpp battletext[curtextincrement].rec.top = 480; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 260; battletext[curtextincrement].rec.right = 410; ++curtextincrement; // third move pp swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(2).getCurPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 3rd move's curpp battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 160; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 3rd move's slash battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 210; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(2).getMaxPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 3rd move's maxpp battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 60; battletext[curtextincrement].rec.right = 210; ++curtextincrement; // fourth move swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(3).getCurPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 4th move's curpp battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 210; battletext[curtextincrement].rec.right = 360; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"/"); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's fortuh move's slash battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 210; battletext[curtextincrement].rec.right = 410; ++curtextincrement; swprintf_s(charactertempthingy[curtextincrement], L"%d", a_pikachu.getMove(3).getMaxPP()); battletext[curtextincrement].text = charactertempthingy[curtextincrement]; // pikachu's 4th move's maxpp battletext[curtextincrement].rec.top = 565; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 260; battletext[curtextincrement].rec.right = 410; ++curtextincrement; }
void Battle::menuReset(Pokemon a_pikachu, Pokemon a_enemy) { battlemenu.battleReset(); //wchar_t tempwchar_t[256]; D3DXCOLOR tempcolor = D3DXCOLOR(0.0f,0.0f,0.0f,1.0f); curtextincrement = 0; battletext[curtextincrement].text = a_pikachu.getName();// Pikachu's name battletext[curtextincrement].rec.top = 450; battletext[curtextincrement].rec.bottom = 525; battletext[curtextincrement].rec.left = 600; battletext[curtextincrement].rec.right = 800; ++curtextincrement; battletext[curtextincrement].text = L"hp:"; // hp's hp: battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 490; battletext[curtextincrement].rec.right = 720; ++curtextincrement; battletext[curtextincrement].text = terribleJankyIntToLPCWSTR(a_pikachu.getCurHP()); // Pikachu's curhp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 555; battletext[curtextincrement].rec.right = 750; ++curtextincrement; battletext[curtextincrement].text = L"/"; // hp's slash battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 610; battletext[curtextincrement].rec.right = 780; ++curtextincrement; battletext[curtextincrement].text = terribleJankyIntToLPCWSTR(a_pikachu.getMaxHP()); // pikach's max hp battletext[curtextincrement].rec.top = 525; battletext[curtextincrement].rec.bottom = 600; battletext[curtextincrement].rec.left = 660; battletext[curtextincrement].rec.right = 800; ++curtextincrement; // enemy start battletext[curtextincrement].text = a_enemy.getName();// Enemy's name battletext[curtextincrement].rec.top = 75; battletext[curtextincrement].rec.bottom = 0; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 200; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = L"hp:"; // hp's hp: battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 0; battletext[curtextincrement].rec.right = 100; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = terribleJankyIntToLPCWSTR(a_enemy.getCurHP()); // enemy's curhp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 160; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = L"/"; // hp's slash battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 10; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; battletext[curtextincrement].text = terribleJankyIntToLPCWSTR(a_enemy.getMaxHP()); // enemy's max hp battletext[curtextincrement].rec.top = 150; battletext[curtextincrement].rec.bottom = 75; battletext[curtextincrement].rec.left = 60; battletext[curtextincrement].rec.right = 210; battletext[curtextincrement].textColor = tempcolor; ++curtextincrement; }