Added tooltip information and building colors for bulk buying/selling and fixed a bug in Chocolate Egg calculation (it's still wrong, but will fix more in next commit)

This commit is contained in:
Aktanusa
2016-03-03 21:26:25 -05:00
parent ddd52c9583
commit be4587a905
5 changed files with 228 additions and 162 deletions

View File

@@ -443,9 +443,19 @@ CM.Disp.UpdateBotTimerBarDisplay = function() {
}
CM.Disp.UpdateBuildings = function() {
if (CM.Config.BuildColor == 1) {
for (var i in CM.Cache.Objects) {
l('productPrice' + Game.Objects[i].id).style.color = CM.Config.Colors[CM.Cache.Objects[i].color];
if (CM.Config.BuildColor == 1 && Game.buyMode == 1) {
var target = '';
if (Game.buyBulk == 10) {
target = 'Objects10'
}
else if (Game.buyBulk == 100) {
target = 'Objects100'
}
else {
target = 'Objects'
}
for (var i in CM.Cache[target]) {
l('productPrice' + Game.Objects[i].id).style.color = CM.Config.Colors[CM.Cache[target][i].color];
}
}
else {
@@ -1145,7 +1155,7 @@ CM.Disp.AddMenuStats = function(title) {
if (Game.cpsSucked > 0) {
stats.appendChild(header('Wrinklers', 'Wrink'));
if (CM.Config.StatsPref.Wrink || (CM.Config.StatsPref.Sea && choEgg)) {
var totalSucked = 0;
var totalSucked = 0; // Used in Chocolate Egg calculation below also
for (var i in Game.wrinklers) {
var sucked = Game.wrinklers[i].sucked;
var toSuck = 1.1;
@@ -1275,7 +1285,7 @@ CM.Disp.AddMenuStats = function(title) {
choEggTitleFrag.appendChild(choEggTitleSpan);
var choEggTotal = Game.cookies + CM.Cache.SellAllTotal;
if (Game.cpsSucked > 0) {
choEggTotal += sucked;
choEggTotal += totalSucked;
}
choEggTotal *= 0.05;
stats.appendChild(listing(choEggTitleFrag, document.createTextNode(Beautify(choEggTotal))));
@@ -1409,36 +1419,33 @@ CM.Disp.AddTooltipUpgrade = function() {
}
}
CM.Disp.AddTooltipBuildExtra = function() {
for (var i in Game.Objects) {
var me = Game.Objects[i];
l('buttonBuy10-' + me.id).onmouseover = function() {CM.Disp.TooltipBuy10 = true;};
l('buttonBuy10-' + me.id).onmouseout = function() {CM.Disp.TooltipBuy10 = false;};
l('buttonSell-' + me.id).onmouseover = function() {CM.Disp.TooltipSell = true;};
l('buttonSell-' + me.id).onmouseout = function() {CM.Disp.TooltipSell = false;};
l('buttonSellAll-' + me.id).onmouseover = function() {CM.Disp.TooltipSellAll = true;};
l('buttonSellAll-' + me.id).onmouseout = function() {CM.Disp.TooltipSellAll = false;};
}
}
CM.Disp.Tooltip = function(type, name) {
if (type == 'b') {
l('tooltip').innerHTML = Game.Objects[name].tooltip();
if (CM.Config.TooltipAmor == 1) {
var buildPrice = CM.Sim.BuildingGetPrice(Game.Objects[name].basePrice, 0, Game.Objects[name].amount);
var buildPrice = CM.Sim.BuildingGetPrice(Game.Objects[name].basePrice, 0, Game.Objects[name].free, Game.Objects[name].amount);
var amortizeAmount = buildPrice - Game.Objects[name].totalCookies;
if (amortizeAmount > 0) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split('so far</div>').join('so far<br/>&bull; <b>' + Beautify(amortizeAmount) + '</b> ' + (Math.floor(amortizeAmount) == 1 ? 'cookie' : 'cookies') + ' left to amortize (' + CM.Disp.GetTimeColor(buildPrice, Game.Objects[name].totalCookies, (Game.Objects[name].storedTotalCps * Game.globalCpsMult)).text + ')</div>');
}
}
if (CM.Disp.TooltipBuy10) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split(Beautify(Game.Objects[name].getPrice())).join(Beautify(CM.Cache.Objects10[name].price));
if (Game.buyMode == 1) {
var target = '';
var change = false;
if (Game.buyBulk == 10) {
target = 'Objects10';
change = true;
}
else if (Game.buyBulk == 100) {
target = 'Objects100';
change = true;
}
if (change) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split(Beautify(Game.Objects[name].getPrice())).join(Beautify(CM.Cache[target][name].price));
}
}
if (CM.Disp.TooltipSell) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split(Beautify(Game.Objects[name].getPrice())).join('-' + Beautify(CM.Sim.BuildingSell(Game.Objects[name].basePrice, Game.Objects[name].amount, 1)));
}
if (CM.Disp.TooltipSellAll) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split(Beautify(Game.Objects[name].getPrice())).join('-' + Beautify(CM.Sim.BuildingSell(Game.Objects[name].basePrice, Game.Objects[name].amount, Game.Objects[name].amount)));
else if (Game.buyMode == -1) {
l('tooltip').innerHTML = l('tooltip').innerHTML.split(Beautify(Game.Objects[name].getPrice())).join('-' + l('productPrice' + Game.Objects[name].id).innerHTML);
}
}
else { // Upgrades
@@ -1450,7 +1457,7 @@ CM.Disp.Tooltip = function(type, name) {
area.id = 'CMTooltipArea';
l('tooltip').appendChild(area);
if (CM.Config.Tooltip == 1) {
if (CM.Config.Tooltip == 1 && (type != 'b' || Game.buyMode == 1)) {
l('tooltip').firstChild.style.paddingBottom = '4px';
var tooltip = document.createElement('div');
tooltip.style.border = '1px solid';
@@ -1497,23 +1504,24 @@ CM.Disp.UpdateTooltip = function() {
var price;
var bonus;
if (CM.Disp.tooltipType == 'b') {
if (!CM.Disp.TooltipBuy10) {
bonus = CM.Cache.Objects[CM.Disp.tooltipName].bonus;
price = Game.Objects[CM.Disp.tooltipName].getPrice();
if (CM.Config.Tooltip == 1) {
l('CMTooltipBorder').className = CM.Disp.colorTextPre + CM.Cache.Objects[CM.Disp.tooltipName].color;
l('CMTooltipBCI').textContent = Beautify(CM.Cache.Objects[CM.Disp.tooltipName].bci, 2);
l('CMTooltipBCI').className = CM.Disp.colorTextPre + CM.Cache.Objects[CM.Disp.tooltipName].color;
}
var target = '';
if (Game.buyMode == 1 && Game.buyBulk == 10) {
target = 'Objects10';
price = CM.Cache[target][CM.Disp.tooltipName].price;
}
else if (Game.buyMode == 1 && Game.buyBulk == 100) {
target = 'Objects100';
price = CM.Cache[target][CM.Disp.tooltipName].price;
}
else {
bonus = CM.Cache.Objects10[CM.Disp.tooltipName].bonus;
price = CM.Cache.Objects10[CM.Disp.tooltipName].price;
if (CM.Config.Tooltip == 1) {
l('CMTooltipBorder').className = CM.Disp.colorTextPre + CM.Cache.Objects10[CM.Disp.tooltipName].color;
l('CMTooltipBCI').textContent = Beautify(CM.Cache.Objects10[CM.Disp.tooltipName].bci, 2);
l('CMTooltipBCI').className = CM.Disp.colorTextPre + CM.Cache.Objects10[CM.Disp.tooltipName].color;
}
target = 'Objects';
price = Game.Objects[CM.Disp.tooltipName].getPrice();
}
bonus = CM.Cache[target][CM.Disp.tooltipName].bonus;
if (CM.Config.Tooltip == 1 && Game.buyMode == 1) {
l('CMTooltipBorder').className = CM.Disp.colorTextPre + CM.Cache[target][CM.Disp.tooltipName].color;
l('CMTooltipBCI').textContent = Beautify(CM.Cache[target][CM.Disp.tooltipName].bci, 2);
l('CMTooltipBCI').className = CM.Disp.colorTextPre + CM.Cache[target][CM.Disp.tooltipName].color;
}
}
else { // Upgrades
@@ -1525,7 +1533,7 @@ CM.Disp.UpdateTooltip = function() {
l('CMTooltipBCI').className = CM.Disp.colorTextPre + CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].color;
}
}
if (CM.Config.Tooltip == 1) {
if (CM.Config.Tooltip == 1 && (CM.Disp.tooltipType != 'b' || Game.buyMode == 1)) {
l('CMTooltipIncome').textContent = Beautify(bonus, 2);
var increase = Math.round(bonus / Game.cookiesPs * 10000);
@@ -1549,7 +1557,7 @@ CM.Disp.UpdateTooltip = function() {
}
var caut = warn * 7;
var amount = Game.cookies - price;
if (amount < warn || amount < caut) {
if ((amount < warn || amount < caut) && (CM.Disp.tooltipType != 'b' || Game.buyMode == 1)) {
if (CM.Config.ToolWarnCautPos == 0) {
CM.Disp.TooltipWarnCaut.style.right = '0px';
}
@@ -1714,13 +1722,13 @@ CM.Disp.colorBrown = 'Brown';
CM.Disp.colors = [CM.Disp.colorBlue, CM.Disp.colorGreen, CM.Disp.colorYellow, CM.Disp.colorOrange, CM.Disp.colorRed, CM.Disp.colorPurple, CM.Disp.colorGray, CM.Disp.colorPink, CM.Disp.colorBrown];
CM.Disp.lastGoldenCookieState = 'none';
CM.Disp.lastAscendState = -1;
CM.Disp.lastBuyMode = -1;
CM.Disp.lastBuyBulk = -1;
CM.Disp.metric = ['M', 'G', 'T', 'P', 'E', 'Z', 'Y'];
CM.Disp.shortScale = ['M', 'B', 'Tr', 'Quadr', 'Quint', 'Sext', 'Sept', 'Oct', 'Non', 'Dec', 'Undec', 'Duodec', 'Tredec'];
CM.Disp.TooltipBuy10 = false;
CM.Disp.TooltipSell = false;
CM.Disp.TooltipSellAll = false;
CM.Disp.TooltipWrinklerArea = 0;
CM.Disp.TooltipWrinkler = -1;