Fixed rare but bad tooltip bug and fixed some toggle upgrades graphical glitches

This commit is contained in:
Aktanusa
2015-12-27 21:44:50 -05:00
parent f36869d528
commit 14c1afa30d
3 changed files with 20 additions and 6 deletions

View File

@@ -64,6 +64,7 @@ CM.Cache.RemakeBuildingsBCI = function() {
CM.Cache.RemakeUpgradeBCI = function() { CM.Cache.RemakeUpgradeBCI = function() {
for (var i in CM.Cache.Upgrades) { for (var i in CM.Cache.Upgrades) {
CM.Cache.Upgrades[i].bci = Game.Upgrades[i].getPrice() / CM.Cache.Upgrades[i].bonus; CM.Cache.Upgrades[i].bci = Game.Upgrades[i].getPrice() / CM.Cache.Upgrades[i].bonus;
if (isNaN(CM.Cache.Upgrades[i].bci)) CM.Cache.Upgrades[i].bci = 'Infinity';
var color = ''; var color = '';
if (CM.Cache.Upgrades[i].bci <= 0 || CM.Cache.Upgrades[i].bci == 'Infinity') color = CM.Disp.colorGray; if (CM.Cache.Upgrades[i].bci <= 0 || CM.Cache.Upgrades[i].bci == 'Infinity') color = CM.Disp.colorGray;
else if (CM.Cache.Upgrades[i].bci < CM.Disp.min) color = CM.Disp.colorBlue; else if (CM.Cache.Upgrades[i].bci < CM.Disp.min) color = CM.Disp.colorBlue;
@@ -881,10 +882,15 @@ CM.Disp.UpdateUpgrades = function() {
for (var i in Game.UpgradesInStore) { for (var i in Game.UpgradesInStore) {
var me = Game.UpgradesInStore[i]; var me = Game.UpgradesInStore[i];
if (l('upgrade' + i).childNodes.length > 0) { var addedColor = false;
l('upgrade' + i).childNodes[0].className = CM.Disp.colorBackPre + CM.Cache.Upgrades[me.name].color; for (var j = 0; j < l('upgrade' + i).childNodes.length; j++) {
if (l('upgrade' + i).childNodes[j].className.indexOf(CM.Disp.colorBackPre) != -1) {
l('upgrade' + i).childNodes[j].className = CM.Disp.colorBackPre + CM.Cache.Upgrades[me.name].color;
addedColor = true;
break;
} }
else { }
if (!addedColor) {
var div = document.createElement('div'); var div = document.createElement('div');
div.style.width = '10px'; div.style.width = '10px';
div.style.height = '10px'; div.style.height = '10px';
@@ -1683,6 +1689,7 @@ CM.Disp.Tooltip = function(type, name) {
} }
} }
else { // Upgrades else { // Upgrades
if (!Game.UpgradesInStore[name]) return '';
l('tooltip').innerHTML = Game.crate(Game.UpgradesInStore[name], 'store', undefined, undefined, 1)(); l('tooltip').innerHTML = Game.crate(Game.UpgradesInStore[name], 'store', undefined, undefined, 1)();
} }

View File

@@ -44,6 +44,7 @@ CM.Cache.RemakeBuildingsBCI = function() {
CM.Cache.RemakeUpgradeBCI = function() { CM.Cache.RemakeUpgradeBCI = function() {
for (var i in CM.Cache.Upgrades) { for (var i in CM.Cache.Upgrades) {
CM.Cache.Upgrades[i].bci = Game.Upgrades[i].getPrice() / CM.Cache.Upgrades[i].bonus; CM.Cache.Upgrades[i].bci = Game.Upgrades[i].getPrice() / CM.Cache.Upgrades[i].bonus;
if (isNaN(CM.Cache.Upgrades[i].bci)) CM.Cache.Upgrades[i].bci = 'Infinity';
var color = ''; var color = '';
if (CM.Cache.Upgrades[i].bci <= 0 || CM.Cache.Upgrades[i].bci == 'Infinity') color = CM.Disp.colorGray; if (CM.Cache.Upgrades[i].bci <= 0 || CM.Cache.Upgrades[i].bci == 'Infinity') color = CM.Disp.colorGray;
else if (CM.Cache.Upgrades[i].bci < CM.Disp.min) color = CM.Disp.colorBlue; else if (CM.Cache.Upgrades[i].bci < CM.Disp.min) color = CM.Disp.colorBlue;

View File

@@ -543,10 +543,15 @@ CM.Disp.UpdateUpgrades = function() {
for (var i in Game.UpgradesInStore) { for (var i in Game.UpgradesInStore) {
var me = Game.UpgradesInStore[i]; var me = Game.UpgradesInStore[i];
if (l('upgrade' + i).childNodes.length > 0) { var addedColor = false;
l('upgrade' + i).childNodes[0].className = CM.Disp.colorBackPre + CM.Cache.Upgrades[me.name].color; for (var j = 0; j < l('upgrade' + i).childNodes.length; j++) {
if (l('upgrade' + i).childNodes[j].className.indexOf(CM.Disp.colorBackPre) != -1) {
l('upgrade' + i).childNodes[j].className = CM.Disp.colorBackPre + CM.Cache.Upgrades[me.name].color;
addedColor = true;
break;
} }
else { }
if (!addedColor) {
var div = document.createElement('div'); var div = document.createElement('div');
div.style.width = '10px'; div.style.width = '10px';
div.style.height = '10px'; div.style.height = '10px';
@@ -1345,6 +1350,7 @@ CM.Disp.Tooltip = function(type, name) {
} }
} }
else { // Upgrades else { // Upgrades
if (!Game.UpgradesInStore[name]) return '';
l('tooltip').innerHTML = Game.crate(Game.UpgradesInStore[name], 'store', undefined, undefined, 1)(); l('tooltip').innerHTML = Game.crate(Game.UpgradesInStore[name], 'store', undefined, undefined, 1)();
} }