void pkmviewer::updategenderpic() { QPixmap * genderpix = new QPixmap(); QGraphicsScene * genderscene = new QGraphicsScene(); Genders::genders thegender = calcpkmgender(temppkm); if((thegender == Genders::male) || (thegender == Genders::female)) { *genderpix = getgenderpic(thegender); } genderscene->addPixmap(*genderpix); ui->pbGender->setScene(genderscene); }
void pkmviewer::on_cbPKMSpecies_currentIndexChanged(int index) { if((temppkm->species > 0) && ((temppkm->pid > 0) || (temppkm->checksum > 0))) { if(redisplayok) { temppkm->species = (Species::pkmspecies)(index+1); setpkmgender(temppkm,(int)calcpkmgender(temppkm)); updategenderpic(); if((index+1) != ui->sbSpecies->value()) { ui->sbSpecies->setValue(index+1); } pkmviewer::displayPKM(); } } }
void getspritesql(ostringstream& o, const pokemon_obj * pkm, int generation) { o << "SELECT pokemon_forms.form_identifier " << "FROM pokemon_forms " << " INNER JOIN pokemon_form_generations " << " ON pokemon_forms.id = pokemon_form_generations.pokemon_form_id " << " INNER JOIN pokemon " << " ON pokemon_forms.pokemon_id = pokemon.id " << "WHERE ( pokemon_form_generations.generation_id = " << generation << " ) " << " AND ( pokemon.species_id = " << (int)(pkm->species) << " ) " << " AND ( pokemon_form_generations.game_index = " << (int)(pkm->forms.form) << " ) "; // << "SELECT pokemon_forms.form_identifier " // << "FROM pokemon_form_names " // << " INNER JOIN pokemon_forms " // << " ON pokemon_form_names.pokemon_form_id = pokemon_forms.id " // << " INNER JOIN pokemon " // << " ON pokemon_forms.pokemon_id = pokemon.id " // << "WHERE ( pokemon.species_id = " << (int)(pkm.species) << " ) " // << " AND ( pokemon_form_names.local_language_id = " << langid << " ) " // << " AND ( pokemon_forms.form_order = " << (int)(pkm.forms.form) << " + 1 ) "; string formid = getastring(o); o.str(""); o.clear(); o << (int)(pkm->species); if(formid != "") { o << "-" << formid; } formid = o.str().c_str(); string tshiny = ""; if(getpkmshiny(pkm)) { tshiny = "shiny"; } else { tshiny = "normal"; } if(int(pkm->species) == int(Species::keldeo)) { switch(pkm->forms.form) { case 0: if(tshiny == "shiny") { formid = "647-regular"; } else { formid = "647-ordinary"; } break; case 1: formid = "647-resolution"; break; } } o.str(""); o.clear(); string tgender = ""; if((pkmhasgenddiff(pkm) && (calcpkmgender(pkm) == Genders::female)) & (int(pkm->species) != int(Species::torchic)) & (int(pkm->species) != int(Species::buizel)) & (int(pkm->species) != int(Species::floatzel))) { tgender = "female"; } else { tgender = "male"; } o << "SELECT image FROM front_" << tgender << "_" << tshiny << "_sprites WHERE (identifier = '" << formid << "')"; }
void geticonsql(ostringstream& o, const pokemon_obj * pkm, int generation) { string formid; if(pkm->ivs.isegg) { if(int(pkm->species) == int(Species::manaphy)) { o << "SELECT image FROM icons_male WHERE (identifier = \"egg-manaphy\")"; // It's a Manaphy egg. } else { o << "SELECT image FROM icons_male WHERE (identifier = \"egg\")"; // It's as regular egg. } } else { // int formint = pkm->forms.form; if(int(pkm->species) == int(Species::arceus)) { // formint = 0; formid = ""; } else { o << "SELECT pokemon_forms.form_identifier " << "FROM pokemon_forms " << " INNER JOIN pokemon_form_generations " << " ON pokemon_forms.id = pokemon_form_generations.pokemon_form_id " << " INNER JOIN pokemon " << " ON pokemon_forms.pokemon_id = pokemon.id " << "WHERE ( pokemon_form_generations.generation_id = " << generation << " ) " << " AND ( pokemon.species_id = " << (int)(pkm->species) << " ) " << " AND ( pokemon_form_generations.game_index = " << (int)(pkm->forms.form) << " ) "; // << "SELECT pokemon_forms.form_identifier " // << "FROM pokemon_form_names " // << " INNER JOIN pokemon_forms " // << " ON pokemon_form_names.pokemon_form_id = pokemon_forms.id " // << " INNER JOIN pokemon " // << " ON pokemon_forms.pokemon_id = pokemon.id " // << "WHERE ( pokemon.species_id = " << (int)(pkm.species) << " ) " // << " AND ( pokemon_form_names.local_language_id = " << langid << " ) " // << " AND ( pokemon_forms.form_order = " << (int)(pkm.forms.form) << " + 1 ) "; formid = getastring(o); o.str(""); o.clear(); } o << (int)(int(pkm->species)); if(formid != "") { o << "-" << formid; } formid = o.str().c_str(); o.str(""); o.clear(); string tgender = ""; if(((int(pkm->species) == 521) | (int(pkm->species) == 592) | (int(pkm->species) == 593)) && (calcpkmgender(pkm) == Genders::female)) { tgender = "fe"; } tgender += "male"; if(int(pkm->species) == int(Species::keldeo)) { switch(pkm->forms.form) { case 0: formid = "647-regular"; break; case 1: formid = "647-resolution"; break; } } if(int(pkm->species) == int(Species::kyurem) && pkm->forms.form != 0) { if(pkm->forms.form == 1) { formid = "646-white"; } else { formid = "646-black"; } } o << "SELECT image FROM icons_" << tgender << " WHERE (identifier = \"" << formid << "\")"; } }
bool comparebygenderasc(const pokemon_obj &a, const pokemon_obj &b) { return (int)(calcpkmgender(a)) < (int)(calcpkmgender(b)); }