Teambuilder: Improve sprites

We now show sprites corresponding with the gen in the teambuilder, and
for gen 6, we now show ORASdex sprites.
This commit is contained in:
Guangcong Luo 2015-12-28 13:22:07 -05:00
parent f6e9f1ab79
commit 26c91d8134
2 changed files with 36 additions and 22 deletions

View File

@ -1340,12 +1340,12 @@ var Tools = {
return 'background:transparent url(' + Tools.resourcePrefix + 'sprites/' + (newSize ? 'xyicons-sheet.png?a1' : 'bwicons-sheet.png?g6') + ') no-repeat scroll -' + left + 'px -' + top + 'px' + fainted;
},
getTeambuilderSprite: function (pokemon) {
getTeambuilderSprite: function (pokemon, gen) {
if (!pokemon) return '';
var id = toId(pokemon.species);
var spriteid = pokemon.spriteid;
var template = Tools.getTemplate(pokemon.species);
if (pokemon.species && !spriteid) {
var template = Tools.getTemplate(pokemon.species);
if (template.spriteid) {
spriteid = template.spriteid;
} else {
@ -1356,25 +1356,39 @@ var Tools = {
return 'background-image:url(' + Tools.resourcePrefix + 'sprites/bw/0.png);background-position:10px 5px;background-repeat:no-repeat';
}
var shiny = (pokemon.shiny ? '-shiny' : '');
var sdata;
if (BattlePokemonSprites[id] && BattlePokemonSprites[id].front && !Tools.prefs('bwgfx')) {
if (BattlePokemonSprites[id].front.anif && pokemon.gender === 'F') {
spriteid += '-f';
sdata = BattlePokemonSprites[id].front.anif;
} else {
sdata = BattlePokemonSprites[id].front.ani;
}
} else {
return 'background-image:url(' + Tools.resourcePrefix + 'sprites/bw' + shiny + '/' + spriteid + '.png);background-position:10px 5px;background-repeat:no-repeat';
// var sdata;
// if (BattlePokemonSprites[id] && BattlePokemonSprites[id].front && !Tools.prefs('bwgfx')) {
// if (BattlePokemonSprites[id].front.anif && pokemon.gender === 'F') {
// spriteid += '-f';
// sdata = BattlePokemonSprites[id].front.anif;
// } else {
// sdata = BattlePokemonSprites[id].front.ani;
// }
// } else {
// return 'background-image:url(' + Tools.resourcePrefix + 'sprites/bw' + shiny + '/' + spriteid + '.png);background-position:10px 5px;background-repeat:no-repeat';
// }
if (Tools.prefs('nopastgens')) gen = 6;
if ((!gen || gen === 6) && !template.isNonstandard && !Tools.prefs('bwgfx')) {
var offset = '-2px -3px';
if (id.substr(0, 6) === 'arceus') offset = '-2px 7px';
if (id === 'garchomp') offset = '-2px 2px';
if (id === 'garchompmega') offset = '-2px 0px';
return 'background-image:url(' + Tools.resourcePrefix + 'sprites/xydex' + shiny + '/' + spriteid + '.png);background-position:' + offset + ';background-repeat:no-repeat';
}
var w = Math.round(57 - sdata.w / 2), h = Math.round(57 - sdata.h / 2);
if (id === 'altariamega' || id === 'dianciemega' || id === 'charizardmegay') h += 15;
if (id === 'gliscor' || id === 'gardevoirmega' || id === 'garchomp' || id === 'garchompmega' || id === 'lugia' || id === 'golurk') h += 8;
if (id === 'manectricmega') h -= 8;
if (id === 'giratinaorigin' || id === 'steelixmega') h -= 15;
if (id === 'lugia' || id === 'latiosmega' || id === 'latias' || id === 'garchompmega' || id === 'kyuremwhite') w += 8;
if (id === 'rayquazamega' || id === 'giratinaorigin' || id === 'wailord' || id === 'latiasmega') w += 15;
return 'background-image:url(' + Tools.resourcePrefix + 'sprites/xy' + shiny + '/' + spriteid + '.png);background-position:' + w + 'px ' + h + 'px;background-repeat:no-repeat';
var spriteDir = Tools.resourcePrefix + 'sprites/bw';
if (gen <= 1 && template.gen <= 1) spriteDir = Tools.resourcePrefix + 'sprites/rby';
else if (gen <= 2 && template.gen <= 2) spriteDir = Tools.resourcePrefix + 'sprites/gsc';
else if (gen <= 3 && template.gen <= 3) spriteDir = Tools.resourcePrefix + 'sprites/rse';
else if (gen <= 4 && template.gen <= 4) spriteDir = Tools.resourcePrefix + 'sprites/dpp';
return 'background-image:url(' + spriteDir + shiny + '/' + spriteid + '.png);background-position:10px 5px;background-repeat:no-repeat';
// var w = Math.round(57 - sdata.w / 2), h = Math.round(57 - sdata.h / 2);
// if (id === 'altariamega' || id === 'dianciemega' || id === 'charizardmegay') h += 15;
// if (id === 'gliscor' || id === 'gardevoirmega' || id === 'garchomp' || id === 'garchompmega' || id === 'lugia' || id === 'golurk') h += 8;
// if (id === 'manectricmega') h -= 8;
// if (id === 'giratinaorigin' || id === 'steelixmega') h -= 15;
// if (id === 'lugia' || id === 'latiosmega' || id === 'latias' || id === 'garchompmega' || id === 'kyuremwhite') w += 8;
// if (id === 'rayquazamega' || id === 'giratinaorigin' || id === 'wailord' || id === 'latiasmega') w += 15;
// return 'background-image:url(' + Tools.resourcePrefix + 'sprites/xy' + shiny + '/' + spriteid + '.png);background-position:' + w + 'px ' + h + 'px;background-repeat:no-repeat';
},
getItemIcon: function (item) {

View File

@ -1014,7 +1014,7 @@
buf += '<div class="setchart-nickname">';
buf += '<label>Nickname</label><input type="text" value="' + Tools.escapeHTML(set.name || set.species) + '" name="nickname" />';
buf += '</div>';
buf += '<div class="setchart" style="' + Tools.getTeambuilderSprite(set) + ';">';
buf += '<div class="setchart" style="' + Tools.getTeambuilderSprite(set, this.curTeam.gen) + ';">';
// icon
var itemicon = '<span class="itemicon"></span>';
@ -1448,7 +1448,7 @@
var set = this.curSet;
if (!set) return;
this.$('.setchart').attr('style', Tools.getTeambuilderSprite(set));
this.$('.setchart').attr('style', Tools.getTeambuilderSprite(set, this.curTeam.gen));
this.$('.pokemonicon-' + this.curSetLoc).css('background', Tools.getPokemonIcon(set).substr(11));