Merge branch 'master' of github.com:redthefed/CookieMonster
This commit is contained in:
187
CookieMonster.js
187
CookieMonster.js
@@ -529,7 +529,7 @@ CM.ConfigData.SeaSoundURL = {label: 'Season Special Sound URL:', desc: 'URL of t
|
||||
CM.ConfigData.GCTimer = {label: ['Golden Cookie Timer OFF', 'Golden Cookie Timer ON'], desc: 'A timer on the Golden Cookie when it has been spawned', toggle: true, func: function() {CM.Disp.ToggleGCTimer();}};
|
||||
CM.ConfigData.Title = {label: ['Title OFF', 'Title ON', 'Title Pinned Tab Highlight'], desc: 'Update title with Golden Cookie/Season Popup timers; pinned tab highlight only changes the title when a Golden Cookie/Season Popup spawns', toggle: true};
|
||||
CM.ConfigData.Favicon = {label: ['Favicon OFF', 'Favicon ON'], desc: 'Update favicon with Golden/Wrath Cookie', toggle: true, func: function() {CM.Disp.UpdateFavicon();}};
|
||||
CM.ConfigData.Tooltip = {label: ['Tooltip Information OFF', 'Tooltip Information ON'], desc: 'Extra information in tooltip for buildings/upgrades/grimoire', toggle: true};
|
||||
CM.ConfigData.Tooltip = {label: ['Tooltip Information OFF', 'Tooltip Information ON'], desc: 'Extra information in tooltip for buildings/upgrades', toggle: true};
|
||||
CM.ConfigData.TooltipAmor = {label: ['Tooltip Amortization Information OFF', 'Tooltip Amortization Information ON'], desc: 'Add amortization information to buildings tooltip', toggle: true};
|
||||
CM.ConfigData.ToolWarnCaut = {label: ['Tooltip Warning/Caution OFF', 'Tooltip Warning/Caution ON'], desc: 'A warning/caution when buying if it will put the bank under the amount needed for max "Lucky!"/"Lucky!" (Frenzy) rewards', toggle: true, func: function() {CM.Disp.ToggleToolWarnCaut();}};
|
||||
CM.ConfigData.ToolWarnCautPos = {label: ['Tooltip Warning/Caution Position (Left)', 'Tooltip Warning/Caution Position (Bottom)'], desc: 'Placement of the warning/caution boxes', toggle: false, func: function() {CM.Disp.ToggleToolWarnCautPos();}};
|
||||
@@ -584,7 +584,7 @@ CM.Disp.FormatTime = function(time, format) {
|
||||
}
|
||||
str += s;
|
||||
} else {
|
||||
if (time > 777600000) return format ? 'Over 9000 days!' : '>9000d';
|
||||
if (time > 86400) return format ? 'Over 24 hours' : '>24h';
|
||||
time = Math.ceil(time);
|
||||
var d = Math.floor(time / 86400);
|
||||
var h = Math.floor(time % 86400 / 3600);
|
||||
@@ -614,7 +614,7 @@ CM.Disp.GetTimeColor = function(price, bank, cps, time) {
|
||||
text = '00:00:00:00:00';
|
||||
}
|
||||
else {
|
||||
text = 'Done!';
|
||||
text = 'Ready';
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -646,7 +646,7 @@ CM.Disp.Beautify = function(num, frac) {
|
||||
num = Math.abs(num);
|
||||
negative = true;
|
||||
}
|
||||
|
||||
|
||||
for (var i = (CM.Disp.shortScale.length - 1); i >= 0; i--) {
|
||||
if (i < CM.Disp.metric.length && CM.Config.Scale == 1) {
|
||||
if (num >= Math.pow(1000, i + 2)) {
|
||||
@@ -664,7 +664,7 @@ CM.Disp.Beautify = function(num, frac) {
|
||||
if (answer == '') {
|
||||
answer = CM.Backup.Beautify(num, frac);
|
||||
}
|
||||
|
||||
|
||||
if (negative) {
|
||||
answer = '-' + answer;
|
||||
}
|
||||
@@ -729,14 +729,16 @@ CM.Disp.CreateBotBar = function() {
|
||||
CM.Disp.BotBar.style.borderTop = '1px solid black';
|
||||
CM.Disp.BotBar.style.overflow = 'auto';
|
||||
CM.Disp.BotBar.style.textShadow = '-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black';
|
||||
|
||||
|
||||
var table = document.createElement('table');
|
||||
table.style.width = '100%';
|
||||
table.style.textAlign = 'center';
|
||||
table.style.whiteSpace = 'nowrap';
|
||||
table.style.tableLayout = 'fixed';
|
||||
table.style.overflow = 'hidden';
|
||||
var tbody = document.createElement('tbody');
|
||||
table.appendChild(tbody);
|
||||
|
||||
|
||||
var firstCol = function(text, color) {
|
||||
var td = document.createElement('td');
|
||||
td.style.textAlign = 'right';
|
||||
@@ -744,7 +746,7 @@ CM.Disp.CreateBotBar = function() {
|
||||
td.textContent = text;
|
||||
return td;
|
||||
}
|
||||
|
||||
|
||||
var type = document.createElement('tr');
|
||||
type.style.fontWeight = 'bold';
|
||||
type.appendChild(firstCol(CM.VersionMajor + '.' + CM.VersionMinor, CM.Disp.colorYellow));
|
||||
@@ -758,7 +760,7 @@ CM.Disp.CreateBotBar = function() {
|
||||
var time = document.createElement('tr');
|
||||
time.appendChild(firstCol('Time Left', CM.Disp.colorBlue));
|
||||
tbody.appendChild(time);
|
||||
|
||||
|
||||
for (var i in Game.Objects) {
|
||||
var header = document.createElement('td');
|
||||
header.appendChild(document.createTextNode((i.indexOf(' ') != -1 ? i.substring(0, i.indexOf(' ')) : i) + ' ('));
|
||||
@@ -770,11 +772,11 @@ CM.Disp.CreateBotBar = function() {
|
||||
bonus.appendChild(document.createElement('td'));
|
||||
pp.appendChild(document.createElement('td'));
|
||||
time.appendChild(document.createElement('td'));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.BotBar.appendChild(table);
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.BotBar);
|
||||
}
|
||||
|
||||
@@ -792,7 +794,7 @@ CM.Disp.ToggleBotBar = function() {
|
||||
CM.Disp.UpdateBotBarOther = function() {
|
||||
if (CM.Config.BotBar == 1) {
|
||||
var count = 0;
|
||||
|
||||
|
||||
for (var i in CM.Cache.Objects) {
|
||||
count++;
|
||||
CM.Disp.BotBar.firstChild.firstChild.childNodes[0].childNodes[count].childNodes[1].textContent = Game.Objects[i].amount;
|
||||
@@ -806,7 +808,7 @@ CM.Disp.UpdateBotBarOther = function() {
|
||||
CM.Disp.UpdateBotBarTime = function() {
|
||||
if (CM.Config.BotBar == 1) {
|
||||
var count = 0;
|
||||
|
||||
|
||||
for (var i in CM.Cache.Objects) {
|
||||
count++;
|
||||
var timeColor = CM.Disp.GetTimeColor(Game.Objects[i].getPrice(), (Game.cookies + CM.Disp.GetWrinkConfigBank()), CM.Disp.GetCPS());
|
||||
@@ -825,7 +827,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBar.style.fontSize = '10px';
|
||||
CM.Disp.TimerBar.style.fontWeight = 'bold';
|
||||
CM.Disp.TimerBar.style.backgroundColor = 'black';
|
||||
|
||||
|
||||
var bar = function(name, bars, time) {
|
||||
var div = document.createElement('div');
|
||||
div.style.width = '100%';
|
||||
@@ -836,7 +838,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
div.style.top = '0px';
|
||||
div.style.right = '0px';
|
||||
div.style.bottom = '0px';
|
||||
|
||||
|
||||
var type = document.createElement('span');
|
||||
type.style.display = 'inline-block';
|
||||
type.style.textAlign = 'right';
|
||||
@@ -845,7 +847,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
type.style.verticalAlign = 'text-top';
|
||||
type.textContent = name;
|
||||
div.appendChild(type);
|
||||
|
||||
|
||||
for (var i = 0; i < bars.length; i++) {
|
||||
var colorBar = document.createElement('span');
|
||||
colorBar.id = bars[i].id
|
||||
@@ -860,7 +862,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
}
|
||||
div.appendChild(colorBar);
|
||||
}
|
||||
|
||||
|
||||
var timer = document.createElement('span');
|
||||
timer.id = time;
|
||||
timer.style.marginLeft = '5px';
|
||||
@@ -868,7 +870,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
div.appendChild(timer);
|
||||
return div
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.TimerBarGC = document.createElement('div');
|
||||
CM.Disp.TimerBarGC.id = 'CMTimerBarGC';
|
||||
CM.Disp.TimerBarGC.style.height = '12px';
|
||||
@@ -876,7 +878,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarGC.style.position = 'relative';
|
||||
CM.Disp.TimerBarGC.appendChild(bar('Next Cookie', [{id: 'CMTimerBarGCMinBar', color: CM.Disp.colorGray}, {id: 'CMTimerBarGCBar', color: CM.Disp.colorPurple}], 'CMTimerBarGCTime'));
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarGC);
|
||||
|
||||
|
||||
CM.Disp.TimerBarRen = document.createElement('div');
|
||||
CM.Disp.TimerBarRen.id = 'CMTimerBarRen';
|
||||
CM.Disp.TimerBarRen.style.height = '12px';
|
||||
@@ -884,7 +886,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarRen.style.position = 'relative';
|
||||
CM.Disp.TimerBarRen.appendChild(bar('Next Reindeer', [{id: 'CMTimerBarRenMinBar', color: CM.Disp.colorGray}, {id: 'CMTimerBarRenBar', color: CM.Disp.colorOrange}], 'CMTimerBarRenTime'));
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarRen);
|
||||
|
||||
|
||||
CM.Disp.TimerBarBuff1 = document.createElement('div');
|
||||
CM.Disp.TimerBarBuff1.id = 'CMTimerBarBuff1';
|
||||
CM.Disp.TimerBarBuff1.style.height = '12px';
|
||||
@@ -893,7 +895,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff1.appendChild(bar('', [{id: 'CMTimerBarBuff1Bar'}], 'CMTimerBarBuff1Time'));
|
||||
CM.Disp.TimerBarBuff1.firstChild.firstChild.id = 'CMTimerBarBuff1Type';
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarBuff1);
|
||||
|
||||
|
||||
CM.Disp.TimerBarBuff2 = document.createElement('div');
|
||||
CM.Disp.TimerBarBuff2.id = 'CMTimerBarBuff2';
|
||||
CM.Disp.TimerBarBuff2.style.height = '12px';
|
||||
@@ -902,7 +904,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff2.appendChild(bar('', [{id: 'CMTimerBarBuff2Bar'}], 'CMTimerBarBuff2Time'));
|
||||
CM.Disp.TimerBarBuff2.firstChild.firstChild.id = 'CMTimerBarBuff2Type';
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarBuff2);
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.TimerBar);
|
||||
}
|
||||
|
||||
@@ -935,7 +937,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
// label width: 113, timer width: 26, div margin: 20
|
||||
var maxWidth = CM.Disp.TimerBar.offsetWidth - 159;
|
||||
var count = 0;
|
||||
|
||||
|
||||
if (Game.shimmerTypes['golden'].spawned == 0 && !Game.Has('Golden switch [off]')) {
|
||||
CM.Disp.TimerBarGC.style.display = '';
|
||||
l('CMTimerBarGCMinBar').style.width = Math.round(Math.max(0, Game.shimmerTypes['golden'].minTime - Game.shimmerTypes['golden'].time) * maxWidth / Game.shimmerTypes['golden'].maxTime) + 'px';
|
||||
@@ -954,7 +956,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarGC.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
if (Game.season == 'christmas' && Game.shimmerTypes['reindeer'].spawned == 0) {
|
||||
CM.Disp.TimerBarRen.style.display = '';
|
||||
l('CMTimerBarRenMinBar').style.width = Math.round(Math.max(0, Game.shimmerTypes['reindeer'].minTime - Game.shimmerTypes['reindeer'].time) * maxWidth / Game.shimmerTypes['reindeer'].maxTime) + 'px';
|
||||
@@ -965,7 +967,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarRen.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
var buffCount = 0;
|
||||
for (var i in Game.buffs) {
|
||||
if (Game.buffs[i]) {
|
||||
@@ -994,7 +996,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff1.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*if (Game.frenzy > 0) {
|
||||
CM.Disp.TimerBarBuff1.style.display = '';
|
||||
if (Game.frenzyPower == 7) {
|
||||
@@ -1020,7 +1022,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarBuff1.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
if (Game.clickFrenzy > 0) {
|
||||
CM.Disp.TimerBarBuff2.style.display = '';
|
||||
if (Game.clickFrenzyPower == 777) {
|
||||
@@ -1038,7 +1040,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarBuff2.style.display = 'none';
|
||||
}*/
|
||||
|
||||
|
||||
if (count != 0) {
|
||||
var height = 48 / count;
|
||||
CM.Disp.TimerBarGC.style.height = height + 'px';
|
||||
@@ -1064,14 +1066,14 @@ CM.Disp.UpdateBotTimerBarDisplay = function() {
|
||||
else { // No bars
|
||||
l('game').style.bottom = '0px';
|
||||
}
|
||||
|
||||
|
||||
if (CM.Config.TimerBar == 1 && CM.Config.TimerBarPos == 0) {
|
||||
l('sectionLeft').style.top = '48px';
|
||||
}
|
||||
else {
|
||||
l('sectionLeft').style.top = '';
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.UpdateBackground();
|
||||
}
|
||||
|
||||
@@ -1107,7 +1109,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
CM.Disp.UpgradeBar.style.fontWeight = 'bold';
|
||||
CM.Disp.UpgradeBar.style.display = 'none';
|
||||
CM.Disp.UpgradeBar.onmouseout = function() { Game.tooltip.hide(); };
|
||||
|
||||
|
||||
var placeholder = document.createElement('div');
|
||||
var legend = document.createElement('div');
|
||||
legend.style.minWidth = '330px';
|
||||
@@ -1117,7 +1119,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
title.style.marginBottom = '4px';
|
||||
title.textContent = 'Legend';
|
||||
legend.appendChild(title);
|
||||
|
||||
|
||||
var legendLine = function(color, text) {
|
||||
var div = document.createElement('div');
|
||||
div.style.verticalAlign = 'middle';
|
||||
@@ -1131,7 +1133,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
div.appendChild(document.createTextNode(text));
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
legend.appendChild(legendLine(CM.Disp.colorBlue, 'Better than best PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorGreen, 'Same as best PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorYellow, 'Between best and worst PP buildings closer to best'));
|
||||
@@ -1140,9 +1142,9 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
legend.appendChild(legendLine(CM.Disp.colorPurple, 'Worse than worst PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorGray, 'Negative or infinity PP'));
|
||||
placeholder.appendChild(legend);
|
||||
|
||||
|
||||
CM.Disp.UpgradeBar.onmouseover = function() {Game.tooltip.draw(this, escape(placeholder.innerHTML), 'store');};
|
||||
|
||||
|
||||
var upgradeNumber = function(id, color) {
|
||||
var span = document.createElement('span');
|
||||
span.id = id;
|
||||
@@ -1159,7 +1161,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarRed', CM.Disp.colorRed));
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarPurple', CM.Disp.colorPurple));
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarGray', CM.Disp.colorGray));
|
||||
|
||||
|
||||
l('upgrades').parentNode.insertBefore(CM.Disp.UpgradeBar, l('upgrades').parentNode.childNodes[3]);
|
||||
}
|
||||
|
||||
@@ -1244,7 +1246,7 @@ CM.Disp.CreateWhiteScreen = function() {
|
||||
CM.Disp.WhiteScreen.style.display = 'none';
|
||||
CM.Disp.WhiteScreen.style.zIndex = '9999999999';
|
||||
CM.Disp.WhiteScreen.style.position = 'absolute';
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.WhiteScreen);
|
||||
}
|
||||
|
||||
@@ -1327,7 +1329,7 @@ CM.Disp.CreateGCTimer = function() {
|
||||
CM.Disp.GCTimer.onclick = function () {CM.Disp.goldenShimmer.pop(); CM.Disp.GCTimer.style.display = 'none';};
|
||||
CM.Disp.GCTimer.onmouseover = function() {CM.Disp.goldenShimmer.l.style.filter = 'brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))'; CM.Disp.goldenShimmer.l.style.webkitFilter = 'brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))';};
|
||||
CM.Disp.GCTimer.onmouseout = function() {CM.Disp.goldenShimmer.l.style.filter = ''; CM.Disp.goldenShimmer.l.style.webkitFilter = '';};
|
||||
|
||||
|
||||
l('game').appendChild(CM.Disp.GCTimer);
|
||||
}
|
||||
|
||||
@@ -1355,7 +1357,7 @@ CM.Disp.CheckGoldenCookie = function() {
|
||||
CM.Disp.GCTimer.style.left = CM.Disp.goldenShimmer.l.style.left;
|
||||
CM.Disp.GCTimer.style.top = CM.Disp.goldenShimmer.l.style.top;
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.Flash(3);
|
||||
CM.Disp.PlaySound(CM.Config.GCSoundURL);
|
||||
}
|
||||
@@ -1380,7 +1382,7 @@ CM.Disp.CheckSeasonPopup = function() {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.Flash(3);
|
||||
CM.Disp.PlaySound(CM.Config.SeaSoundURL);
|
||||
}
|
||||
@@ -1393,7 +1395,7 @@ CM.Disp.UpdateTitle = function() {
|
||||
}
|
||||
else if (CM.Config.Title == 1) {
|
||||
var addSP = false;
|
||||
|
||||
|
||||
var titleGC;
|
||||
var titleSP;
|
||||
if (CM.Disp.lastGoldenCookieState) {
|
||||
@@ -1419,12 +1421,12 @@ CM.Disp.UpdateTitle = function() {
|
||||
titleSP = '[' + Math.ceil((Game.shimmerTypes['reindeer'].maxTime - Game.shimmerTypes['reindeer'].time) / Game.fps) + ']';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var str = CM.Cache.Title;
|
||||
if (str.charAt(0) == '[') {
|
||||
str = str.substring(str.lastIndexOf(']') + 1);
|
||||
}
|
||||
|
||||
|
||||
document.title = titleGC + (addSP ? titleSP : '') + ' ' + str;
|
||||
}
|
||||
else if (CM.Config.Title == 2) {
|
||||
@@ -1484,9 +1486,9 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
}
|
||||
|
||||
var frag = document.createDocumentFragment();
|
||||
|
||||
|
||||
frag.appendChild(title());
|
||||
|
||||
|
||||
var listing = function(config) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -1506,7 +1508,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var url = function(config) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -1532,7 +1534,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
frag.appendChild(header('Bars/Colors'));
|
||||
frag.appendChild(listing('BotBar'));
|
||||
frag.appendChild(listing('TimerBar'));
|
||||
@@ -1556,7 +1558,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
frag.appendChild(div);
|
||||
}
|
||||
|
||||
|
||||
frag.appendChild(header('Calculation'));
|
||||
frag.appendChild(listing('CalcWrink'));
|
||||
frag.appendChild(listing('CPSMode'));
|
||||
@@ -1566,7 +1568,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
|
||||
frag.appendChild(header('Golden Cookie/Season Popup Emphasis'));
|
||||
frag.appendChild(listing('Flash'));
|
||||
frag.appendChild(listing('Sound'));
|
||||
frag.appendChild(listing('Sound'));
|
||||
var volConfig = 'Volume';
|
||||
var volume = document.createElement('div');
|
||||
volume.className = 'listing';
|
||||
@@ -1593,22 +1595,22 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
frag.appendChild(listing('GCTimer'));
|
||||
frag.appendChild(listing('Title'));
|
||||
frag.appendChild(listing('Favicon'));
|
||||
|
||||
|
||||
frag.appendChild(header('Tooltip'));
|
||||
frag.appendChild(listing('Tooltip'));
|
||||
frag.appendChild(listing('TooltipAmor'));
|
||||
frag.appendChild(listing('ToolWarnCaut'));
|
||||
frag.appendChild(listing('ToolWarnCautPos'));
|
||||
frag.appendChild(listing('ToolWrink'));
|
||||
|
||||
|
||||
frag.appendChild(header('Statistics'));
|
||||
frag.appendChild(listing('Stats'));
|
||||
frag.appendChild(listing('UpStats'));
|
||||
frag.appendChild(listing('TimeFormat'));
|
||||
frag.appendChild(listing('SayTime'));
|
||||
|
||||
|
||||
frag.appendChild(header('Other'));
|
||||
frag.appendChild(listing('Scale'));
|
||||
frag.appendChild(listing('Scale'));
|
||||
var resDef = document.createElement('div');
|
||||
resDef.className = 'listing';
|
||||
var resDefBut = document.createElement('a');
|
||||
@@ -1617,9 +1619,9 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
resDefBut.textContent = 'Restore Default';
|
||||
resDef.appendChild(resDefBut);
|
||||
frag.appendChild(resDef);
|
||||
|
||||
|
||||
l('menu').childNodes[2].insertBefore(frag, l('menu').childNodes[2].childNodes[l('menu').childNodes[2].childNodes.length - 1]);
|
||||
|
||||
|
||||
CM.Disp.FormatButtonOnClickBak = l('formatButton').onclick;
|
||||
l('formatButton').onclick = function() {Game.Toggle('format', 'formatButton', 'Short numbers OFF', 'Short numbers ON', '1'); PlaySound('snd/tick.mp3'); CM.Disp.RefreshScale();};
|
||||
}
|
||||
@@ -1649,12 +1651,12 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
div.appendChild(span);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var stats = document.createElement('div');
|
||||
stats.className = 'subsection';
|
||||
|
||||
stats.appendChild(title());
|
||||
|
||||
|
||||
var listing = function(name, text) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -1666,7 +1668,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
div.appendChild(text);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var listingQuest = function(text, placeholder) {
|
||||
var frag = document.createDocumentFragment();
|
||||
frag.appendChild(document.createTextNode(text + ' '));
|
||||
@@ -1687,7 +1689,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
frag.appendChild(span);
|
||||
return frag;
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Lucky Cookies', 'Lucky'));
|
||||
if (CM.Config.StatsPref.Lucky) {
|
||||
var luckyColor = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.Lucky) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
@@ -1712,7 +1714,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
luckyCurWrath *= 1.1;
|
||||
}
|
||||
var luckySplit = luckyRewardMax != luckyRewardMaxWrath;
|
||||
|
||||
|
||||
var luckyReqFrag = document.createDocumentFragment();
|
||||
var luckyReqSpan = document.createElement('span');
|
||||
luckyReqSpan.style.fontWeight = 'bold';
|
||||
@@ -1741,7 +1743,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing(listingQuest('\"Lucky!\" Reward (MAX) (Frenzy)' + (luckySplit ? ' (Golden / Wrath)' : ''), 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(luckyRewardFrenzyMax) + (luckySplit ? (' / ' + Beautify(luckyRewardFrenzyMaxWrath)) : ''))));
|
||||
stats.appendChild(listing(listingQuest('\"Lucky!\" Reward (CUR)' + (luckySplit ? ' (Golden / Wrath)' : ''), 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(luckyCur) + (luckySplit ? (' / ' + Beautify(luckyCurWrath)) : ''))));
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Chain Cookies', 'Chain'));
|
||||
if (CM.Config.StatsPref.Chain) {
|
||||
var chainColor = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.Chain) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
@@ -1752,7 +1754,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
var chainWrathTime = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainWrath) ? CM.Disp.FormatTime((CM.Cache.ChainWrath - (Game.cookies + CM.Disp.GetWrinkConfigBank())) / CM.Disp.GetCPS()) : '';
|
||||
var chainWrathColorFrenzy = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainFrenzyWrath) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
var chainWrathTimeFrenzy = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainFrenzyWrath) ? CM.Disp.FormatTime((CM.Cache.ChainFrenzyWrath - (Game.cookies + CM.Disp.GetWrinkConfigBank())) / CM.Disp.GetCPS()) : '';
|
||||
|
||||
|
||||
var chainRewardMax = CM.Cache.ChainReward;
|
||||
var chainWrathRewardMax = CM.Cache.ChainWrathReward;
|
||||
var chainFrenzyRewardMax = CM.Cache.ChainFrenzyReward;
|
||||
@@ -1764,13 +1766,13 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
chainRewardMax *= 1.1;
|
||||
chainFrenzyRewardMax *= 1.1;
|
||||
chainCur *= 1.1;
|
||||
}
|
||||
}
|
||||
if (Game.hasAura('Unholy Dominion')) {
|
||||
chainWrathRewardMax *= 1.1;
|
||||
chainFrenzyWrathRewardMax *= 1.1;
|
||||
chainCurWrath *= 1.1;
|
||||
}
|
||||
|
||||
|
||||
var chainReqFrag = document.createDocumentFragment();
|
||||
var chainReqSpan = document.createElement('span');
|
||||
chainReqSpan.style.fontWeight = 'bold';
|
||||
@@ -1824,9 +1826,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing(listingQuest('\"Chain\" Reward (MAX) (Frenzy) (Golden / Wrath)', 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(chainFrenzyRewardMax) + ' / ' + Beautify(chainFrenzyWrathRewardMax))));
|
||||
stats.appendChild(listing(listingQuest('\"Chain\" Reward (CUR) (Golden / Wrath)', 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(chainCur) + ' / ' + Beautify(chainCurWrath))));
|
||||
}
|
||||
|
||||
|
||||
var choEgg = (Game.HasUnlocked('Chocolate egg') && !Game.Has('Chocolate egg')); // Needs to be done for the checking below
|
||||
|
||||
|
||||
stats.appendChild(header('Prestige', 'Prestige'));
|
||||
if (CM.Config.StatsPref.Prestige) {
|
||||
var possiblePresMax = Math.floor(Game.HowMuchPrestige(Game.cookiesEarned + Game.cookiesReset + CM.Cache.WrinkGodBank + (choEgg ? CM.Cache.lastChoEgg : 0)));
|
||||
@@ -1851,9 +1853,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
}
|
||||
stats.appendChild(listing(listingQuest('Reset Bonus Income', 'ResetTooltipPlaceholder'), resetFrag));
|
||||
}
|
||||
|
||||
|
||||
if (Game.cpsSucked > 0) {
|
||||
stats.appendChild(header('Wrinklers', 'Wrink'));
|
||||
stats.appendChild(header('Wrinklers', 'Wrink'));
|
||||
if (CM.Config.StatsPref.Wrink) {
|
||||
var popAllFrag = document.createDocumentFragment();
|
||||
popAllFrag.appendChild(document.createTextNode(Beautify(CM.Cache.WrinkBank) + ' '));
|
||||
@@ -1865,7 +1867,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing('Rewards of Popping', popAllFrag));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var specDisp = false;
|
||||
var halloCook = [];
|
||||
for (var i in CM.Data.HalloCookies) {
|
||||
@@ -1902,9 +1904,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
specDisp = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var centEgg = Game.Has('Century egg');
|
||||
|
||||
|
||||
if (Game.season == 'christmas' || specDisp || choEgg || centEgg) {
|
||||
stats.appendChild(header('Season Specials', 'Sea'));
|
||||
if (CM.Config.StatsPref.Sea) {
|
||||
@@ -1959,10 +1961,10 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
}
|
||||
if (centEgg) {
|
||||
stats.appendChild(listing('Century Egg Multiplier', document.createTextNode((Math.round((CM.Cache.CentEgg - 1) * 10000) / 100) + '%')));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Miscellaneous', 'Misc'));
|
||||
if (CM.Config.StatsPref.Misc) {
|
||||
stats.appendChild(listing('Average Cookies Per Second (Past ' + CM.Disp.times[CM.Config.AvgCPSHist] + (CM.Config.AvgCPSHist == 0 ? ' minute' : ' minutes') + ')', document.createTextNode(Beautify(CM.Cache.AvgCPS, 3))));
|
||||
@@ -1980,7 +1982,7 @@ CM.Disp.AddMenu = function() {
|
||||
div.textContent = 'Cookie Monster Goodies';
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
if (Game.onMenu == 'prefs') {
|
||||
CM.Disp.AddMenuPref(title);
|
||||
}
|
||||
@@ -2011,7 +2013,7 @@ CM.Disp.CreateTooltipWarnCaut = function() {
|
||||
CM.Disp.TooltipWarnCaut.style.display = 'none';
|
||||
CM.Disp.TooltipWarnCaut.style.left = 'auto';
|
||||
CM.Disp.TooltipWarnCaut.style.bottom = 'auto';
|
||||
|
||||
|
||||
var create = function(boxId, color, labelTextFront, labelTextBack, deficitId) {
|
||||
var box = document.createElement('div');
|
||||
box.id = boxId;
|
||||
@@ -2119,7 +2121,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
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/>• <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>');
|
||||
l('tooltip').innerHTML = l('tooltip').innerHTML.split('so far</div>').join('so far<br/>• <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 (Game.buyMode == 1) {
|
||||
@@ -2153,11 +2155,11 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
else { // Grimoire
|
||||
l('tooltip').innerHTML = Game.Objects['Wizard tower'].minigame.spellTooltip(name)();
|
||||
}
|
||||
|
||||
|
||||
var area = document.createElement('div');
|
||||
area.id = 'CMTooltipArea';
|
||||
l('tooltip').appendChild(area);
|
||||
|
||||
|
||||
if (CM.Config.Tooltip == 1 && (type == 'u' || (type == 'b' && Game.buyMode == 1))) {
|
||||
l('tooltip').firstChild.style.paddingBottom = '4px';
|
||||
var tooltip = document.createElement('div');
|
||||
@@ -2165,7 +2167,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
tooltip.style.padding = '4px';
|
||||
tooltip.style.margin = '0px -4px';
|
||||
tooltip.id = 'CMTooltipBorder';
|
||||
|
||||
|
||||
var header = function(text) {
|
||||
var div = document.createElement('div');
|
||||
div.style.fontWeight = 'bold';
|
||||
@@ -2173,7 +2175,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
div.textContent = text;
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
tooltip.appendChild(header('Bonus Income'));
|
||||
var income = document.createElement('div');
|
||||
income.style.marginBottom = '4px';
|
||||
@@ -2189,21 +2191,21 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
var time = document.createElement('div');
|
||||
time.id = 'CMTooltipTime';
|
||||
tooltip.appendChild(time);
|
||||
|
||||
|
||||
area.appendChild(tooltip);
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.tooltipType = type;
|
||||
CM.Disp.tooltipName = name;
|
||||
|
||||
CM.Disp.UpdateTooltip();
|
||||
|
||||
|
||||
return l('tooltip').innerHTML;
|
||||
}
|
||||
|
||||
CM.Disp.UpdateTooltip = function() {
|
||||
if (l('tooltipAnchor').style.display != 'none' && l('CMTooltipArea') != null) {
|
||||
|
||||
|
||||
if (CM.Disp.tooltipType == 'b' || CM.Disp.tooltipType == 'u') {
|
||||
// Error checking
|
||||
if (CM.Disp.tooltipType == 'u' && (typeof Game.UpgradesInStore[CM.Disp.tooltipName] === 'undefined' || typeof CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name] === 'undefined')) {
|
||||
@@ -2248,7 +2250,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
if (isFinite(increase) && increase != 0) {
|
||||
l('CMTooltipIncome').textContent += ' (' + (increase / 100) + '% of income)';
|
||||
}
|
||||
|
||||
|
||||
var timeColor = CM.Disp.GetTimeColor(price, (Game.cookies + CM.Disp.GetWrinkConfigBank()), CM.Disp.GetCPS());
|
||||
l('CMTooltipTime').textContent = timeColor.text;
|
||||
l('CMTooltipTime').className = CM.Disp.colorTextPre + timeColor.color;
|
||||
@@ -2300,10 +2302,10 @@ CM.Disp.UpdateTooltip = function() {
|
||||
|
||||
var minigame = Game.Objects['Wizard tower'].minigame;
|
||||
var spellCost = minigame.getSpellCost(minigame.spellsById[CM.Disp.tooltipName]);
|
||||
|
||||
|
||||
if (CM.Config.Tooltip == 1 && spellCost <= minigame.magicM) {
|
||||
l('CMTooltipArea').innerHTML = '';
|
||||
|
||||
|
||||
l('tooltip').firstChild.style.paddingBottom = '4px';
|
||||
var tooltip = document.createElement('div');
|
||||
tooltip.style.border = '1px solid';
|
||||
@@ -2319,7 +2321,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
div.textContent = text;
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
tooltip.appendChild(header('Time Left'));
|
||||
var time = document.createElement('div');
|
||||
time.id = 'CMTooltipTime';
|
||||
@@ -2327,7 +2329,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
var timeColor = CM.Disp.GetTimeColor(spellCost, minigame.magic, undefined, CM.Disp.CalculateGrimoireRefillTime(minigame.magic, minigame.magicM, spellCost));
|
||||
time.textContent = timeColor.text;
|
||||
time.className = CM.Disp.colorTextPre + timeColor.color;
|
||||
|
||||
|
||||
if (spellCost <= minigame.magic) {
|
||||
tooltip.appendChild(header('Recover Time'));
|
||||
var recover = document.createElement('div');
|
||||
@@ -2337,7 +2339,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
recover.textContent = recoverColor.text;
|
||||
recover.className = CM.Disp.colorTextPre + recoverColor.color;
|
||||
}
|
||||
|
||||
|
||||
l('CMTooltipArea').appendChild(tooltip);
|
||||
}
|
||||
}
|
||||
@@ -2495,7 +2497,6 @@ CM.Disp.TooltipWrinklerCache = [];
|
||||
for (var i in Game.wrinklers) {
|
||||
CM.Disp.TooltipWrinklerCache[i] = 0;
|
||||
}
|
||||
|
||||
/********
|
||||
* Main *
|
||||
********/
|
||||
@@ -2749,7 +2750,7 @@ CM.ConfigDefault = {BotBar: 1, TimerBar: 1, TimerBarPos: 0, BuildColor: 1, BulkB
|
||||
CM.ConfigPrefix = 'CMConfig';
|
||||
|
||||
CM.VersionMajor = '2.0042';
|
||||
CM.VersionMinor = '3';
|
||||
CM.VersionMinor = '2';
|
||||
|
||||
/*******
|
||||
* Sim *
|
||||
|
||||
@@ -133,14 +133,6 @@ CM.Cache.RemakePP = function() {
|
||||
CM.Cache.RemakeBuildingsOtherPP(100, 'Objects100');
|
||||
}
|
||||
|
||||
CM.Cache.RemakeMultiple = function () {
|
||||
for (var i in CM.Cache.Objects) {
|
||||
var nextMultiple = 50 - Game.Objects[i].amount % 50;
|
||||
CM.Cache.Objects[i].multiple_quantity = nextMultiple;
|
||||
CM.Cache.Objects[i].multiple_price = CM.Sim.BuildingGetPrice(Game.Objects[i].basePrice, Game.Objects[i].amount, Game.Objects[i].free, nextMultiple);
|
||||
}
|
||||
}
|
||||
|
||||
CM.Cache.RemakeLucky = function() {
|
||||
CM.Cache.Lucky = (CM.Cache.NoGoldSwitchCookiesPS * 60 * 15) / 0.15;
|
||||
CM.Cache.Lucky /= CM.Sim.getCPSBuffMult();
|
||||
|
||||
@@ -137,9 +137,8 @@ CM.ConfigData.SeaSoundURL = {label: 'Season Special Sound URL:', desc: 'URL of t
|
||||
CM.ConfigData.GCTimer = {label: ['Golden Cookie Timer OFF', 'Golden Cookie Timer ON'], desc: 'A timer on the Golden Cookie when it has been spawned', toggle: true, func: function() {CM.Disp.ToggleGCTimer();}};
|
||||
CM.ConfigData.Title = {label: ['Title OFF', 'Title ON', 'Title Pinned Tab Highlight'], desc: 'Update title with Golden Cookie/Season Popup timers; pinned tab highlight only changes the title when a Golden Cookie/Season Popup spawns', toggle: true};
|
||||
CM.ConfigData.Favicon = {label: ['Favicon OFF', 'Favicon ON'], desc: 'Update favicon with Golden/Wrath Cookie', toggle: true, func: function() {CM.Disp.UpdateFavicon();}};
|
||||
CM.ConfigData.Tooltip = {label: ['Tooltip Information OFF', 'Tooltip Information ON'], desc: 'Extra information in tooltip for buildings/upgrades/grimoire', toggle: true};
|
||||
CM.ConfigData.Tooltip = {label: ['Tooltip Information OFF', 'Tooltip Information ON'], desc: 'Extra information in tooltip for buildings/upgrades', toggle: true};
|
||||
CM.ConfigData.TooltipAmor = {label: ['Tooltip Amortization Information OFF', 'Tooltip Amortization Information ON'], desc: 'Add amortization information to buildings tooltip', toggle: true};
|
||||
CM.ConfigData.TooltipNextMultiple = {label: ['Tooltip Next Multiple of 50 Information OFF', 'Tooltip Next Multiple of 50 Information ON'], desc: 'Add the total price necessary to reach the next multiple of 50 buildings of a kind to buildings tooltip', toggle: true};
|
||||
CM.ConfigData.ToolWarnCaut = {label: ['Tooltip Warning/Caution OFF', 'Tooltip Warning/Caution ON'], desc: 'A warning/caution when buying if it will put the bank under the amount needed for max "Lucky!"/"Lucky!" (Frenzy) rewards', toggle: true, func: function() {CM.Disp.ToggleToolWarnCaut();}};
|
||||
CM.ConfigData.ToolWarnCautPos = {label: ['Tooltip Warning/Caution Position (Left)', 'Tooltip Warning/Caution Position (Bottom)'], desc: 'Placement of the warning/caution boxes', toggle: false, func: function() {CM.Disp.ToggleToolWarnCautPos();}};
|
||||
CM.ConfigData.ToolWrink = {label: ['Wrinkler Tooltip OFF', 'Wrinkler Tooltip ON'], desc: 'Shows the amount of cookies a wrinkler will give when popping it', toggle: true};
|
||||
|
||||
192
src/Disp.js
192
src/Disp.js
@@ -34,7 +34,7 @@ CM.Disp.FormatTime = function(time, format) {
|
||||
}
|
||||
str += s;
|
||||
} else {
|
||||
if (time > 777600000) return format ? 'Over 9000 days!' : '>9000d';
|
||||
if (time > 86400) return format ? 'Over 24 hours' : '>24h';
|
||||
time = Math.ceil(time);
|
||||
var d = Math.floor(time / 86400);
|
||||
var h = Math.floor(time % 86400 / 3600);
|
||||
@@ -64,7 +64,7 @@ CM.Disp.GetTimeColor = function(price, bank, cps, time) {
|
||||
text = '00:00:00:00:00';
|
||||
}
|
||||
else {
|
||||
text = 'Done!';
|
||||
text = 'Ready';
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -96,7 +96,7 @@ CM.Disp.Beautify = function(num, frac) {
|
||||
num = Math.abs(num);
|
||||
negative = true;
|
||||
}
|
||||
|
||||
|
||||
for (var i = (CM.Disp.shortScale.length - 1); i >= 0; i--) {
|
||||
if (i < CM.Disp.metric.length && CM.Config.Scale == 1) {
|
||||
if (num >= Math.pow(1000, i + 2)) {
|
||||
@@ -114,7 +114,7 @@ CM.Disp.Beautify = function(num, frac) {
|
||||
if (answer == '') {
|
||||
answer = CM.Backup.Beautify(num, frac);
|
||||
}
|
||||
|
||||
|
||||
if (negative) {
|
||||
answer = '-' + answer;
|
||||
}
|
||||
@@ -179,14 +179,16 @@ CM.Disp.CreateBotBar = function() {
|
||||
CM.Disp.BotBar.style.borderTop = '1px solid black';
|
||||
CM.Disp.BotBar.style.overflow = 'auto';
|
||||
CM.Disp.BotBar.style.textShadow = '-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black';
|
||||
|
||||
|
||||
var table = document.createElement('table');
|
||||
table.style.width = '100%';
|
||||
table.style.textAlign = 'center';
|
||||
table.style.whiteSpace = 'nowrap';
|
||||
table.style.tableLayout = 'fixed';
|
||||
table.style.overflow = 'hidden';
|
||||
var tbody = document.createElement('tbody');
|
||||
table.appendChild(tbody);
|
||||
|
||||
|
||||
var firstCol = function(text, color) {
|
||||
var td = document.createElement('td');
|
||||
td.style.textAlign = 'right';
|
||||
@@ -194,7 +196,7 @@ CM.Disp.CreateBotBar = function() {
|
||||
td.textContent = text;
|
||||
return td;
|
||||
}
|
||||
|
||||
|
||||
var type = document.createElement('tr');
|
||||
type.style.fontWeight = 'bold';
|
||||
type.appendChild(firstCol(CM.VersionMajor + '.' + CM.VersionMinor, CM.Disp.colorYellow));
|
||||
@@ -208,7 +210,7 @@ CM.Disp.CreateBotBar = function() {
|
||||
var time = document.createElement('tr');
|
||||
time.appendChild(firstCol('Time Left', CM.Disp.colorBlue));
|
||||
tbody.appendChild(time);
|
||||
|
||||
|
||||
for (var i in Game.Objects) {
|
||||
var header = document.createElement('td');
|
||||
header.appendChild(document.createTextNode((i.indexOf(' ') != -1 ? i.substring(0, i.indexOf(' ')) : i) + ' ('));
|
||||
@@ -220,11 +222,11 @@ CM.Disp.CreateBotBar = function() {
|
||||
bonus.appendChild(document.createElement('td'));
|
||||
pp.appendChild(document.createElement('td'));
|
||||
time.appendChild(document.createElement('td'));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.BotBar.appendChild(table);
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.BotBar);
|
||||
}
|
||||
|
||||
@@ -242,7 +244,7 @@ CM.Disp.ToggleBotBar = function() {
|
||||
CM.Disp.UpdateBotBarOther = function() {
|
||||
if (CM.Config.BotBar == 1) {
|
||||
var count = 0;
|
||||
|
||||
|
||||
for (var i in CM.Cache.Objects) {
|
||||
count++;
|
||||
CM.Disp.BotBar.firstChild.firstChild.childNodes[0].childNodes[count].childNodes[1].textContent = Game.Objects[i].amount;
|
||||
@@ -256,7 +258,7 @@ CM.Disp.UpdateBotBarOther = function() {
|
||||
CM.Disp.UpdateBotBarTime = function() {
|
||||
if (CM.Config.BotBar == 1) {
|
||||
var count = 0;
|
||||
|
||||
|
||||
for (var i in CM.Cache.Objects) {
|
||||
count++;
|
||||
var timeColor = CM.Disp.GetTimeColor(Game.Objects[i].getPrice(), (Game.cookies + CM.Disp.GetWrinkConfigBank()), CM.Disp.GetCPS());
|
||||
@@ -275,7 +277,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBar.style.fontSize = '10px';
|
||||
CM.Disp.TimerBar.style.fontWeight = 'bold';
|
||||
CM.Disp.TimerBar.style.backgroundColor = 'black';
|
||||
|
||||
|
||||
var bar = function(name, bars, time) {
|
||||
var div = document.createElement('div');
|
||||
div.style.width = '100%';
|
||||
@@ -286,7 +288,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
div.style.top = '0px';
|
||||
div.style.right = '0px';
|
||||
div.style.bottom = '0px';
|
||||
|
||||
|
||||
var type = document.createElement('span');
|
||||
type.style.display = 'inline-block';
|
||||
type.style.textAlign = 'right';
|
||||
@@ -295,7 +297,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
type.style.verticalAlign = 'text-top';
|
||||
type.textContent = name;
|
||||
div.appendChild(type);
|
||||
|
||||
|
||||
for (var i = 0; i < bars.length; i++) {
|
||||
var colorBar = document.createElement('span');
|
||||
colorBar.id = bars[i].id
|
||||
@@ -310,7 +312,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
}
|
||||
div.appendChild(colorBar);
|
||||
}
|
||||
|
||||
|
||||
var timer = document.createElement('span');
|
||||
timer.id = time;
|
||||
timer.style.marginLeft = '5px';
|
||||
@@ -318,7 +320,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
div.appendChild(timer);
|
||||
return div
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.TimerBarGC = document.createElement('div');
|
||||
CM.Disp.TimerBarGC.id = 'CMTimerBarGC';
|
||||
CM.Disp.TimerBarGC.style.height = '12px';
|
||||
@@ -326,7 +328,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarGC.style.position = 'relative';
|
||||
CM.Disp.TimerBarGC.appendChild(bar('Next Cookie', [{id: 'CMTimerBarGCMinBar', color: CM.Disp.colorGray}, {id: 'CMTimerBarGCBar', color: CM.Disp.colorPurple}], 'CMTimerBarGCTime'));
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarGC);
|
||||
|
||||
|
||||
CM.Disp.TimerBarRen = document.createElement('div');
|
||||
CM.Disp.TimerBarRen.id = 'CMTimerBarRen';
|
||||
CM.Disp.TimerBarRen.style.height = '12px';
|
||||
@@ -334,7 +336,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarRen.style.position = 'relative';
|
||||
CM.Disp.TimerBarRen.appendChild(bar('Next Reindeer', [{id: 'CMTimerBarRenMinBar', color: CM.Disp.colorGray}, {id: 'CMTimerBarRenBar', color: CM.Disp.colorOrange}], 'CMTimerBarRenTime'));
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarRen);
|
||||
|
||||
|
||||
CM.Disp.TimerBarBuff1 = document.createElement('div');
|
||||
CM.Disp.TimerBarBuff1.id = 'CMTimerBarBuff1';
|
||||
CM.Disp.TimerBarBuff1.style.height = '12px';
|
||||
@@ -343,7 +345,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff1.appendChild(bar('', [{id: 'CMTimerBarBuff1Bar'}], 'CMTimerBarBuff1Time'));
|
||||
CM.Disp.TimerBarBuff1.firstChild.firstChild.id = 'CMTimerBarBuff1Type';
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarBuff1);
|
||||
|
||||
|
||||
CM.Disp.TimerBarBuff2 = document.createElement('div');
|
||||
CM.Disp.TimerBarBuff2.id = 'CMTimerBarBuff2';
|
||||
CM.Disp.TimerBarBuff2.style.height = '12px';
|
||||
@@ -352,7 +354,7 @@ CM.Disp.CreateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff2.appendChild(bar('', [{id: 'CMTimerBarBuff2Bar'}], 'CMTimerBarBuff2Time'));
|
||||
CM.Disp.TimerBarBuff2.firstChild.firstChild.id = 'CMTimerBarBuff2Type';
|
||||
CM.Disp.TimerBar.appendChild(CM.Disp.TimerBarBuff2);
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.TimerBar);
|
||||
}
|
||||
|
||||
@@ -385,7 +387,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
// label width: 113, timer width: 26, div margin: 20
|
||||
var maxWidth = CM.Disp.TimerBar.offsetWidth - 159;
|
||||
var count = 0;
|
||||
|
||||
|
||||
if (Game.shimmerTypes['golden'].spawned == 0 && !Game.Has('Golden switch [off]')) {
|
||||
CM.Disp.TimerBarGC.style.display = '';
|
||||
l('CMTimerBarGCMinBar').style.width = Math.round(Math.max(0, Game.shimmerTypes['golden'].minTime - Game.shimmerTypes['golden'].time) * maxWidth / Game.shimmerTypes['golden'].maxTime) + 'px';
|
||||
@@ -404,7 +406,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarGC.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
if (Game.season == 'christmas' && Game.shimmerTypes['reindeer'].spawned == 0) {
|
||||
CM.Disp.TimerBarRen.style.display = '';
|
||||
l('CMTimerBarRenMinBar').style.width = Math.round(Math.max(0, Game.shimmerTypes['reindeer'].minTime - Game.shimmerTypes['reindeer'].time) * maxWidth / Game.shimmerTypes['reindeer'].maxTime) + 'px';
|
||||
@@ -415,7 +417,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarRen.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
var buffCount = 0;
|
||||
for (var i in Game.buffs) {
|
||||
if (Game.buffs[i]) {
|
||||
@@ -444,7 +446,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
CM.Disp.TimerBarBuff1.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*if (Game.frenzy > 0) {
|
||||
CM.Disp.TimerBarBuff1.style.display = '';
|
||||
if (Game.frenzyPower == 7) {
|
||||
@@ -470,7 +472,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarBuff1.style.display = 'none';
|
||||
}
|
||||
|
||||
|
||||
if (Game.clickFrenzy > 0) {
|
||||
CM.Disp.TimerBarBuff2.style.display = '';
|
||||
if (Game.clickFrenzyPower == 777) {
|
||||
@@ -488,7 +490,7 @@ CM.Disp.UpdateTimerBar = function() {
|
||||
else {
|
||||
CM.Disp.TimerBarBuff2.style.display = 'none';
|
||||
}*/
|
||||
|
||||
|
||||
if (count != 0) {
|
||||
var height = 48 / count;
|
||||
CM.Disp.TimerBarGC.style.height = height + 'px';
|
||||
@@ -514,14 +516,14 @@ CM.Disp.UpdateBotTimerBarDisplay = function() {
|
||||
else { // No bars
|
||||
l('game').style.bottom = '0px';
|
||||
}
|
||||
|
||||
|
||||
if (CM.Config.TimerBar == 1 && CM.Config.TimerBarPos == 0) {
|
||||
l('sectionLeft').style.top = '48px';
|
||||
}
|
||||
else {
|
||||
l('sectionLeft').style.top = '';
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.UpdateBackground();
|
||||
}
|
||||
|
||||
@@ -557,7 +559,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
CM.Disp.UpgradeBar.style.fontWeight = 'bold';
|
||||
CM.Disp.UpgradeBar.style.display = 'none';
|
||||
CM.Disp.UpgradeBar.onmouseout = function() { Game.tooltip.hide(); };
|
||||
|
||||
|
||||
var placeholder = document.createElement('div');
|
||||
var legend = document.createElement('div');
|
||||
legend.style.minWidth = '330px';
|
||||
@@ -567,7 +569,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
title.style.marginBottom = '4px';
|
||||
title.textContent = 'Legend';
|
||||
legend.appendChild(title);
|
||||
|
||||
|
||||
var legendLine = function(color, text) {
|
||||
var div = document.createElement('div');
|
||||
div.style.verticalAlign = 'middle';
|
||||
@@ -581,7 +583,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
div.appendChild(document.createTextNode(text));
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
legend.appendChild(legendLine(CM.Disp.colorBlue, 'Better than best PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorGreen, 'Same as best PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorYellow, 'Between best and worst PP buildings closer to best'));
|
||||
@@ -590,9 +592,9 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
legend.appendChild(legendLine(CM.Disp.colorPurple, 'Worse than worst PP building'));
|
||||
legend.appendChild(legendLine(CM.Disp.colorGray, 'Negative or infinity PP'));
|
||||
placeholder.appendChild(legend);
|
||||
|
||||
|
||||
CM.Disp.UpgradeBar.onmouseover = function() {Game.tooltip.draw(this, escape(placeholder.innerHTML), 'store');};
|
||||
|
||||
|
||||
var upgradeNumber = function(id, color) {
|
||||
var span = document.createElement('span');
|
||||
span.id = id;
|
||||
@@ -609,7 +611,7 @@ CM.Disp.CreateUpgradeBar = function() {
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarRed', CM.Disp.colorRed));
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarPurple', CM.Disp.colorPurple));
|
||||
CM.Disp.UpgradeBar.appendChild(upgradeNumber('CMUpgradeBarGray', CM.Disp.colorGray));
|
||||
|
||||
|
||||
l('upgrades').parentNode.insertBefore(CM.Disp.UpgradeBar, l('upgrades').parentNode.childNodes[3]);
|
||||
}
|
||||
|
||||
@@ -694,7 +696,7 @@ CM.Disp.CreateWhiteScreen = function() {
|
||||
CM.Disp.WhiteScreen.style.display = 'none';
|
||||
CM.Disp.WhiteScreen.style.zIndex = '9999999999';
|
||||
CM.Disp.WhiteScreen.style.position = 'absolute';
|
||||
|
||||
|
||||
l('wrapper').appendChild(CM.Disp.WhiteScreen);
|
||||
}
|
||||
|
||||
@@ -777,7 +779,7 @@ CM.Disp.CreateGCTimer = function() {
|
||||
CM.Disp.GCTimer.onclick = function () {CM.Disp.goldenShimmer.pop(); CM.Disp.GCTimer.style.display = 'none';};
|
||||
CM.Disp.GCTimer.onmouseover = function() {CM.Disp.goldenShimmer.l.style.filter = 'brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))'; CM.Disp.goldenShimmer.l.style.webkitFilter = 'brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))';};
|
||||
CM.Disp.GCTimer.onmouseout = function() {CM.Disp.goldenShimmer.l.style.filter = ''; CM.Disp.goldenShimmer.l.style.webkitFilter = '';};
|
||||
|
||||
|
||||
l('game').appendChild(CM.Disp.GCTimer);
|
||||
}
|
||||
|
||||
@@ -805,7 +807,7 @@ CM.Disp.CheckGoldenCookie = function() {
|
||||
CM.Disp.GCTimer.style.left = CM.Disp.goldenShimmer.l.style.left;
|
||||
CM.Disp.GCTimer.style.top = CM.Disp.goldenShimmer.l.style.top;
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.Flash(3);
|
||||
CM.Disp.PlaySound(CM.Config.GCSoundURL);
|
||||
}
|
||||
@@ -830,7 +832,7 @@ CM.Disp.CheckSeasonPopup = function() {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.Flash(3);
|
||||
CM.Disp.PlaySound(CM.Config.SeaSoundURL);
|
||||
}
|
||||
@@ -843,7 +845,7 @@ CM.Disp.UpdateTitle = function() {
|
||||
}
|
||||
else if (CM.Config.Title == 1) {
|
||||
var addSP = false;
|
||||
|
||||
|
||||
var titleGC;
|
||||
var titleSP;
|
||||
if (CM.Disp.lastGoldenCookieState) {
|
||||
@@ -869,12 +871,12 @@ CM.Disp.UpdateTitle = function() {
|
||||
titleSP = '[' + Math.ceil((Game.shimmerTypes['reindeer'].maxTime - Game.shimmerTypes['reindeer'].time) / Game.fps) + ']';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var str = CM.Cache.Title;
|
||||
if (str.charAt(0) == '[') {
|
||||
str = str.substring(str.lastIndexOf(']') + 1);
|
||||
}
|
||||
|
||||
|
||||
document.title = titleGC + (addSP ? titleSP : '') + ' ' + str;
|
||||
}
|
||||
else if (CM.Config.Title == 2) {
|
||||
@@ -934,9 +936,9 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
}
|
||||
|
||||
var frag = document.createDocumentFragment();
|
||||
|
||||
|
||||
frag.appendChild(title());
|
||||
|
||||
|
||||
var listing = function(config) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -956,7 +958,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var url = function(config) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -982,7 +984,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
frag.appendChild(header('Bars/Colors'));
|
||||
frag.appendChild(listing('BotBar'));
|
||||
frag.appendChild(listing('TimerBar'));
|
||||
@@ -1006,7 +1008,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
div.appendChild(label);
|
||||
frag.appendChild(div);
|
||||
}
|
||||
|
||||
|
||||
frag.appendChild(header('Calculation'));
|
||||
frag.appendChild(listing('CalcWrink'));
|
||||
frag.appendChild(listing('CPSMode'));
|
||||
@@ -1016,7 +1018,7 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
|
||||
frag.appendChild(header('Golden Cookie/Season Popup Emphasis'));
|
||||
frag.appendChild(listing('Flash'));
|
||||
frag.appendChild(listing('Sound'));
|
||||
frag.appendChild(listing('Sound'));
|
||||
var volConfig = 'Volume';
|
||||
var volume = document.createElement('div');
|
||||
volume.className = 'listing';
|
||||
@@ -1043,23 +1045,22 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
frag.appendChild(listing('GCTimer'));
|
||||
frag.appendChild(listing('Title'));
|
||||
frag.appendChild(listing('Favicon'));
|
||||
|
||||
|
||||
frag.appendChild(header('Tooltip'));
|
||||
frag.appendChild(listing('Tooltip'));
|
||||
frag.appendChild(listing('TooltipAmor'));
|
||||
frag.appendChild(listing('TooltipNextMultiple'));
|
||||
frag.appendChild(listing('ToolWarnCaut'));
|
||||
frag.appendChild(listing('ToolWarnCautPos'));
|
||||
frag.appendChild(listing('ToolWrink'));
|
||||
|
||||
|
||||
frag.appendChild(header('Statistics'));
|
||||
frag.appendChild(listing('Stats'));
|
||||
frag.appendChild(listing('UpStats'));
|
||||
frag.appendChild(listing('TimeFormat'));
|
||||
frag.appendChild(listing('SayTime'));
|
||||
|
||||
|
||||
frag.appendChild(header('Other'));
|
||||
frag.appendChild(listing('Scale'));
|
||||
frag.appendChild(listing('Scale'));
|
||||
var resDef = document.createElement('div');
|
||||
resDef.className = 'listing';
|
||||
var resDefBut = document.createElement('a');
|
||||
@@ -1068,9 +1069,9 @@ CM.Disp.AddMenuPref = function(title) {
|
||||
resDefBut.textContent = 'Restore Default';
|
||||
resDef.appendChild(resDefBut);
|
||||
frag.appendChild(resDef);
|
||||
|
||||
|
||||
l('menu').childNodes[2].insertBefore(frag, l('menu').childNodes[2].childNodes[l('menu').childNodes[2].childNodes.length - 1]);
|
||||
|
||||
|
||||
CM.Disp.FormatButtonOnClickBak = l('formatButton').onclick;
|
||||
l('formatButton').onclick = function() {Game.Toggle('format', 'formatButton', 'Short numbers OFF', 'Short numbers ON', '1'); PlaySound('snd/tick.mp3'); CM.Disp.RefreshScale();};
|
||||
}
|
||||
@@ -1100,12 +1101,12 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
div.appendChild(span);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var stats = document.createElement('div');
|
||||
stats.className = 'subsection';
|
||||
|
||||
stats.appendChild(title());
|
||||
|
||||
|
||||
var listing = function(name, text) {
|
||||
var div = document.createElement('div');
|
||||
div.className = 'listing';
|
||||
@@ -1117,7 +1118,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
div.appendChild(text);
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
var listingQuest = function(text, placeholder) {
|
||||
var frag = document.createDocumentFragment();
|
||||
frag.appendChild(document.createTextNode(text + ' '));
|
||||
@@ -1138,7 +1139,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
frag.appendChild(span);
|
||||
return frag;
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Lucky Cookies', 'Lucky'));
|
||||
if (CM.Config.StatsPref.Lucky) {
|
||||
var luckyColor = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.Lucky) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
@@ -1163,7 +1164,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
luckyCurWrath *= 1.1;
|
||||
}
|
||||
var luckySplit = luckyRewardMax != luckyRewardMaxWrath;
|
||||
|
||||
|
||||
var luckyReqFrag = document.createDocumentFragment();
|
||||
var luckyReqSpan = document.createElement('span');
|
||||
luckyReqSpan.style.fontWeight = 'bold';
|
||||
@@ -1192,7 +1193,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing(listingQuest('\"Lucky!\" Reward (MAX) (Frenzy)' + (luckySplit ? ' (Golden / Wrath)' : ''), 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(luckyRewardFrenzyMax) + (luckySplit ? (' / ' + Beautify(luckyRewardFrenzyMaxWrath)) : ''))));
|
||||
stats.appendChild(listing(listingQuest('\"Lucky!\" Reward (CUR)' + (luckySplit ? ' (Golden / Wrath)' : ''), 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(luckyCur) + (luckySplit ? (' / ' + Beautify(luckyCurWrath)) : ''))));
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Chain Cookies', 'Chain'));
|
||||
if (CM.Config.StatsPref.Chain) {
|
||||
var chainColor = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.Chain) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
@@ -1203,7 +1204,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
var chainWrathTime = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainWrath) ? CM.Disp.FormatTime((CM.Cache.ChainWrath - (Game.cookies + CM.Disp.GetWrinkConfigBank())) / CM.Disp.GetCPS()) : '';
|
||||
var chainWrathColorFrenzy = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainFrenzyWrath) ? CM.Disp.colorRed : CM.Disp.colorGreen;
|
||||
var chainWrathTimeFrenzy = ((Game.cookies + CM.Disp.GetWrinkConfigBank()) < CM.Cache.ChainFrenzyWrath) ? CM.Disp.FormatTime((CM.Cache.ChainFrenzyWrath - (Game.cookies + CM.Disp.GetWrinkConfigBank())) / CM.Disp.GetCPS()) : '';
|
||||
|
||||
|
||||
var chainRewardMax = CM.Cache.ChainReward;
|
||||
var chainWrathRewardMax = CM.Cache.ChainWrathReward;
|
||||
var chainFrenzyRewardMax = CM.Cache.ChainFrenzyReward;
|
||||
@@ -1215,13 +1216,13 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
chainRewardMax *= 1.1;
|
||||
chainFrenzyRewardMax *= 1.1;
|
||||
chainCur *= 1.1;
|
||||
}
|
||||
}
|
||||
if (Game.hasAura('Unholy Dominion')) {
|
||||
chainWrathRewardMax *= 1.1;
|
||||
chainFrenzyWrathRewardMax *= 1.1;
|
||||
chainCurWrath *= 1.1;
|
||||
}
|
||||
|
||||
|
||||
var chainReqFrag = document.createDocumentFragment();
|
||||
var chainReqSpan = document.createElement('span');
|
||||
chainReqSpan.style.fontWeight = 'bold';
|
||||
@@ -1275,9 +1276,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing(listingQuest('\"Chain\" Reward (MAX) (Frenzy) (Golden / Wrath)', 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(chainFrenzyRewardMax) + ' / ' + Beautify(chainFrenzyWrathRewardMax))));
|
||||
stats.appendChild(listing(listingQuest('\"Chain\" Reward (CUR) (Golden / Wrath)', 'GoldCookTooltipPlaceholder'), document.createTextNode(Beautify(chainCur) + ' / ' + Beautify(chainCurWrath))));
|
||||
}
|
||||
|
||||
|
||||
var choEgg = (Game.HasUnlocked('Chocolate egg') && !Game.Has('Chocolate egg')); // Needs to be done for the checking below
|
||||
|
||||
|
||||
stats.appendChild(header('Prestige', 'Prestige'));
|
||||
if (CM.Config.StatsPref.Prestige) {
|
||||
var possiblePresMax = Math.floor(Game.HowMuchPrestige(Game.cookiesEarned + Game.cookiesReset + CM.Cache.WrinkGodBank + (choEgg ? CM.Cache.lastChoEgg : 0)));
|
||||
@@ -1302,9 +1303,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
}
|
||||
stats.appendChild(listing(listingQuest('Reset Bonus Income', 'ResetTooltipPlaceholder'), resetFrag));
|
||||
}
|
||||
|
||||
|
||||
if (Game.cpsSucked > 0) {
|
||||
stats.appendChild(header('Wrinklers', 'Wrink'));
|
||||
stats.appendChild(header('Wrinklers', 'Wrink'));
|
||||
if (CM.Config.StatsPref.Wrink) {
|
||||
var popAllFrag = document.createDocumentFragment();
|
||||
popAllFrag.appendChild(document.createTextNode(Beautify(CM.Cache.WrinkBank) + ' '));
|
||||
@@ -1316,7 +1317,7 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
stats.appendChild(listing('Rewards of Popping', popAllFrag));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var specDisp = false;
|
||||
var halloCook = [];
|
||||
for (var i in CM.Data.HalloCookies) {
|
||||
@@ -1353,9 +1354,9 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
specDisp = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var centEgg = Game.Has('Century egg');
|
||||
|
||||
|
||||
if (Game.season == 'christmas' || specDisp || choEgg || centEgg) {
|
||||
stats.appendChild(header('Season Specials', 'Sea'));
|
||||
if (CM.Config.StatsPref.Sea) {
|
||||
@@ -1410,10 +1411,10 @@ CM.Disp.AddMenuStats = function(title) {
|
||||
}
|
||||
if (centEgg) {
|
||||
stats.appendChild(listing('Century Egg Multiplier', document.createTextNode((Math.round((CM.Cache.CentEgg - 1) * 10000) / 100) + '%')));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
stats.appendChild(header('Miscellaneous', 'Misc'));
|
||||
if (CM.Config.StatsPref.Misc) {
|
||||
stats.appendChild(listing('Average Cookies Per Second (Past ' + CM.Disp.times[CM.Config.AvgCPSHist] + (CM.Config.AvgCPSHist == 0 ? ' minute' : ' minutes') + ')', document.createTextNode(Beautify(CM.Cache.AvgCPS, 3))));
|
||||
@@ -1431,7 +1432,7 @@ CM.Disp.AddMenu = function() {
|
||||
div.textContent = 'Cookie Monster Goodies';
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
if (Game.onMenu == 'prefs') {
|
||||
CM.Disp.AddMenuPref(title);
|
||||
}
|
||||
@@ -1462,7 +1463,7 @@ CM.Disp.CreateTooltipWarnCaut = function() {
|
||||
CM.Disp.TooltipWarnCaut.style.display = 'none';
|
||||
CM.Disp.TooltipWarnCaut.style.left = 'auto';
|
||||
CM.Disp.TooltipWarnCaut.style.bottom = 'auto';
|
||||
|
||||
|
||||
var create = function(boxId, color, labelTextFront, labelTextBack, deficitId) {
|
||||
var box = document.createElement('div');
|
||||
box.id = boxId;
|
||||
@@ -1566,23 +1567,13 @@ CM.Disp.AddTooltipGrimoire = function() {
|
||||
CM.Disp.Tooltip = function(type, name) {
|
||||
if (type == 'b') {
|
||||
l('tooltip').innerHTML = Game.Objects[name].tooltip();
|
||||
var addedAmor = false;
|
||||
|
||||
if (CM.Config.TooltipAmor == 1) {
|
||||
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) {
|
||||
addedAmor = true;
|
||||
l('tooltip').innerHTML = l('tooltip').innerHTML.split('so far</div>').join('so far<br/>• <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.Config.TooltipNextMultiple == 1) {
|
||||
var marker = addedAmor ? ')' : 'so far';
|
||||
var multiple_quantity = CM.Cache.Objects[name].multiple_quantity;
|
||||
l('tooltip').innerHTML = l('tooltip').innerHTML.split(marker + '</div>').join(marker + '<br/>• <b>' + multiple_quantity + '</b> ' + (multiple_quantity == 1 ? Game.Objects[name].single : Game.Objects[name].plural) + ' left to reach <b>' + (Game.Objects[name].amount + multiple_quantity) + '</b>, <b>' + Beautify(CM.Cache.Objects[name].multiple_price, 2) + '</b> cookies in total (' + CM.Disp.GetTimeColor(CM.Cache.Objects[name].multiple_price, (Game.cookies + CM.Disp.GetWrinkConfigBank()), CM.Disp.GetCPS()).text + ')</div>');
|
||||
}
|
||||
|
||||
if (Game.buyMode == 1) {
|
||||
var target = '';
|
||||
var change = false;
|
||||
@@ -1614,11 +1605,11 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
else { // Grimoire
|
||||
l('tooltip').innerHTML = Game.Objects['Wizard tower'].minigame.spellTooltip(name)();
|
||||
}
|
||||
|
||||
|
||||
var area = document.createElement('div');
|
||||
area.id = 'CMTooltipArea';
|
||||
l('tooltip').appendChild(area);
|
||||
|
||||
|
||||
if (CM.Config.Tooltip == 1 && (type == 'u' || (type == 'b' && Game.buyMode == 1))) {
|
||||
l('tooltip').firstChild.style.paddingBottom = '4px';
|
||||
var tooltip = document.createElement('div');
|
||||
@@ -1626,7 +1617,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
tooltip.style.padding = '4px';
|
||||
tooltip.style.margin = '0px -4px';
|
||||
tooltip.id = 'CMTooltipBorder';
|
||||
|
||||
|
||||
var header = function(text) {
|
||||
var div = document.createElement('div');
|
||||
div.style.fontWeight = 'bold';
|
||||
@@ -1634,7 +1625,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
div.textContent = text;
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
tooltip.appendChild(header('Bonus Income'));
|
||||
var income = document.createElement('div');
|
||||
income.style.marginBottom = '4px';
|
||||
@@ -1650,21 +1641,21 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
var time = document.createElement('div');
|
||||
time.id = 'CMTooltipTime';
|
||||
tooltip.appendChild(time);
|
||||
|
||||
|
||||
area.appendChild(tooltip);
|
||||
}
|
||||
|
||||
|
||||
CM.Disp.tooltipType = type;
|
||||
CM.Disp.tooltipName = name;
|
||||
|
||||
CM.Disp.UpdateTooltip();
|
||||
|
||||
|
||||
return l('tooltip').innerHTML;
|
||||
}
|
||||
|
||||
CM.Disp.UpdateTooltip = function() {
|
||||
if (l('tooltipAnchor').style.display != 'none' && l('CMTooltipArea') != null) {
|
||||
|
||||
|
||||
if (CM.Disp.tooltipType == 'b' || CM.Disp.tooltipType == 'u') {
|
||||
// Error checking
|
||||
if (CM.Disp.tooltipType == 'u' && (typeof Game.UpgradesInStore[CM.Disp.tooltipName] === 'undefined' || typeof CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name] === 'undefined')) {
|
||||
@@ -1709,7 +1700,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
if (isFinite(increase) && increase != 0) {
|
||||
l('CMTooltipIncome').textContent += ' (' + (increase / 100) + '% of income)';
|
||||
}
|
||||
|
||||
|
||||
var timeColor = CM.Disp.GetTimeColor(price, (Game.cookies + CM.Disp.GetWrinkConfigBank()), CM.Disp.GetCPS());
|
||||
l('CMTooltipTime').textContent = timeColor.text;
|
||||
l('CMTooltipTime').className = CM.Disp.colorTextPre + timeColor.color;
|
||||
@@ -1761,10 +1752,10 @@ CM.Disp.UpdateTooltip = function() {
|
||||
|
||||
var minigame = Game.Objects['Wizard tower'].minigame;
|
||||
var spellCost = minigame.getSpellCost(minigame.spellsById[CM.Disp.tooltipName]);
|
||||
|
||||
|
||||
if (CM.Config.Tooltip == 1 && spellCost <= minigame.magicM) {
|
||||
l('CMTooltipArea').innerHTML = '';
|
||||
|
||||
|
||||
l('tooltip').firstChild.style.paddingBottom = '4px';
|
||||
var tooltip = document.createElement('div');
|
||||
tooltip.style.border = '1px solid';
|
||||
@@ -1780,7 +1771,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
div.textContent = text;
|
||||
return div;
|
||||
}
|
||||
|
||||
|
||||
tooltip.appendChild(header('Time Left'));
|
||||
var time = document.createElement('div');
|
||||
time.id = 'CMTooltipTime';
|
||||
@@ -1788,7 +1779,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
var timeColor = CM.Disp.GetTimeColor(spellCost, minigame.magic, undefined, CM.Disp.CalculateGrimoireRefillTime(minigame.magic, minigame.magicM, spellCost));
|
||||
time.textContent = timeColor.text;
|
||||
time.className = CM.Disp.colorTextPre + timeColor.color;
|
||||
|
||||
|
||||
if (spellCost <= minigame.magic) {
|
||||
tooltip.appendChild(header('Recover Time'));
|
||||
var recover = document.createElement('div');
|
||||
@@ -1798,7 +1789,7 @@ CM.Disp.UpdateTooltip = function() {
|
||||
recover.textContent = recoverColor.text;
|
||||
recover.className = CM.Disp.colorTextPre + recoverColor.color;
|
||||
}
|
||||
|
||||
|
||||
l('CMTooltipArea').appendChild(tooltip);
|
||||
}
|
||||
}
|
||||
@@ -1956,4 +1947,3 @@ CM.Disp.TooltipWrinklerCache = [];
|
||||
for (var i in Game.wrinklers) {
|
||||
CM.Disp.TooltipWrinklerCache[i] = 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -162,10 +162,6 @@ CM.Loop = function() {
|
||||
// Calculate PP
|
||||
CM.Cache.RemakePP();
|
||||
|
||||
// Calculate total price until reaching next multiple of 50
|
||||
// for each building
|
||||
CM.Cache.RemakeMultiple();
|
||||
|
||||
// Update colors
|
||||
CM.Disp.UpdateBotBarOther();
|
||||
CM.Disp.UpdateBuildings();
|
||||
@@ -251,9 +247,9 @@ CM.DelayInit = function() {
|
||||
CM.HasReplaceNativeGrimoireLaunch = false;
|
||||
CM.HasReplaceNativeGrimoireDraw = false;
|
||||
|
||||
CM.ConfigDefault = {BotBar: 1, TimerBar: 1, TimerBarPos: 0, BuildColor: 1, BulkBuildColor: 0, UpBarColor: 1, CalcWrink: 0, CPSMode: 1, AvgCPSHist: 0, AvgClicksHist: 0, ToolWarnCautBon: 0, Flash: 1, Sound: 1, Volume: 100, GCSoundURL: 'http://freesound.org/data/previews/66/66717_931655-lq.mp3', SeaSoundURL: 'http://www.freesound.org/data/previews/121/121099_2193266-lq.mp3', GCTimer: 1, Title: 1, Favicon: 1, Tooltip: 1, TooltipAmor: 0, TooltipNextMultiple: 0, ToolWarnCaut: 1, ToolWarnCautPos: 1, ToolWrink: 1, Stats: 1, UpStats: 1, TimeFormat: 0, SayTime: 1, Scale: 2, StatsPref: {Lucky: 1, Chain: 1, Prestige: 1, Wrink: 1, Sea: 1, Misc: 1}, Colors : {Blue: '#4bb8f0', Green: '#00ff00', Yellow: '#ffff00', Orange: '#ff7f00', Red: '#ff0000', Purple: '#ff00ff', Gray: '#b3b3b3', Pink: '#ff1493', Brown: '#8b4513'}};
|
||||
CM.ConfigDefault = {BotBar: 1, TimerBar: 1, TimerBarPos: 0, BuildColor: 1, BulkBuildColor: 0, UpBarColor: 1, CalcWrink: 0, CPSMode: 1, AvgCPSHist: 0, AvgClicksHist: 0, ToolWarnCautBon: 0, Flash: 1, Sound: 1, Volume: 100, GCSoundURL: 'http://freesound.org/data/previews/66/66717_931655-lq.mp3', SeaSoundURL: 'http://www.freesound.org/data/previews/121/121099_2193266-lq.mp3', GCTimer: 1, Title: 1, Favicon: 1, Tooltip: 1, TooltipAmor: 0, ToolWarnCaut: 1, ToolWarnCautPos: 1, ToolWrink: 1, Stats: 1, UpStats: 1, TimeFormat: 0, SayTime: 1, Scale: 2, StatsPref: {Lucky: 1, Chain: 1, Prestige: 1, Wrink: 1, Sea: 1, Misc: 1}, Colors : {Blue: '#4bb8f0', Green: '#00ff00', Yellow: '#ffff00', Orange: '#ff7f00', Red: '#ff0000', Purple: '#ff00ff', Gray: '#b3b3b3', Pink: '#ff1493', Brown: '#8b4513'}};
|
||||
CM.ConfigPrefix = 'CMConfig';
|
||||
|
||||
CM.VersionMajor = '2.0042';
|
||||
CM.VersionMinor = '3';
|
||||
CM.VersionMinor = '2';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user