diff --git a/js/spniCore.js b/js/spniCore.js index d6de5c7f4aa9d99fd59cc6d28be4a6b6480630cf..12d6b32615562ebc907df49e7d4d5fda0683a3fb 100644 --- a/js/spniCore.js +++ b/js/spniCore.js @@ -575,6 +575,7 @@ function Opponent (id, $metaXml, status, releaseNumber) { */ this.baseTags = $metaXml.find('tags').children().map(function() { return canonicalizeTag($(this).text()); }).get(); this.updateTags(); + this.searchTags = this.baseTags.slice(); /* Attempt to preload this opponent's picture for selection. */ new Image().src = 'opponents/'+id+'/'+this.image; diff --git a/js/spniSelect.js b/js/spniSelect.js index 0ffe065bd0246fba023a7a136389047972e0a2e4..687223e03f642ab5074b77172da6e006829007fb 100644 --- a/js/spniSelect.js +++ b/js/spniSelect.js @@ -586,7 +586,7 @@ function updateSelectableOpponents(autoclear) { } // filter by tag - if (tag && !opp.hasTag(tag)) { + if (tag && !(opp.searchTags && opp.searchTags.indexOf(canonicalizeTag(tag)) >= 0)) { return false; } @@ -760,7 +760,7 @@ function updateSelectableGroups(screen) { })) return false; if (tag && !group.opponents.some(function(opp) { - return opp.hasTag(tag); + return opp.searchTags && opp.searchTags.indexOf(canonicalizeTag(tag)) >= 0; })) return false; if ((chosenGroupGender == 2 || chosenGroupGender == 3)