Added timer to Grimoire spells (Issue #136) with the help from @Hoten pull request (Issue #138) and fixed a very minor tooltip bug
This commit is contained in:
288
CookieMonster.js
288
CookieMonster.js
@@ -605,7 +605,7 @@ CM.Disp.FormatTime = function(time, format) {
|
||||
return str;
|
||||
}
|
||||
|
||||
CM.Disp.GetTimeColor = function(price, bank, cps) {
|
||||
CM.Disp.GetTimeColor = function(price, bank, cps, time) {
|
||||
var color;
|
||||
var text;
|
||||
if (bank >= price) {
|
||||
@@ -618,7 +618,12 @@ CM.Disp.GetTimeColor = function(price, bank, cps) {
|
||||
}
|
||||
}
|
||||
else {
|
||||
var time = (price - bank) / cps;
|
||||
if (typeof time !== 'undefined') {
|
||||
var time = time;
|
||||
}
|
||||
else {
|
||||
var time = (price - bank) / cps;
|
||||
}
|
||||
text = CM.Disp.FormatTime(time);
|
||||
if (time > 300) {
|
||||
color = CM.Disp.colorRed;
|
||||
@@ -2064,6 +2069,15 @@ CM.Disp.ToggleToolWarnCautPos = function() {
|
||||
}
|
||||
}
|
||||
|
||||
CM.Disp.CalculateGrimoireRefillTime = function(currentMagic, maxMagic, targetMagic) {
|
||||
var count = 0;
|
||||
while (currentMagic < targetMagic) {
|
||||
currentMagic += Math.max(0.002, Math.pow(currentMagic / Math.max(maxMagic, 100), 0.5)) * 0.002;
|
||||
count++;
|
||||
}
|
||||
return count / Game.fps;
|
||||
}
|
||||
|
||||
CM.Disp.AddTooltipBuild = function() {
|
||||
CM.Disp.TooltipBuildBack = [];
|
||||
for (var i in Game.Objects) {
|
||||
@@ -2086,6 +2100,18 @@ CM.Disp.AddTooltipUpgrade = function() {
|
||||
}
|
||||
}
|
||||
|
||||
CM.Disp.AddTooltipGrimoire = function() {
|
||||
if (Game.Objects['Wizard tower'].minigameLoaded) {
|
||||
CM.Disp.TooltipGrimoireBack = [];
|
||||
for (var i in Game.Objects['Wizard tower'].minigame.spellsById) {
|
||||
if (l('grimoireSpell' + i).onmouseover != null) {
|
||||
CM.Disp.TooltipGrimoireBack[i] = l('grimoireSpell' + i).onmouseover;
|
||||
eval('l(\'grimoireSpell\' + i).onmouseover = function() {Game.tooltip.dynamic = 1; Game.tooltip.draw(this, function() {return CM.Disp.Tooltip(\'g\', \'' + i + '\');}, \'this\'); Game.tooltip.wobble();}');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CM.Disp.Tooltip = function(type, name) {
|
||||
if (type == 'b') {
|
||||
l('tooltip').innerHTML = Game.Objects[name].tooltip();
|
||||
@@ -2120,16 +2146,19 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
}
|
||||
}
|
||||
}
|
||||
else { // Upgrades
|
||||
else if (type == 'u') {
|
||||
if (!Game.UpgradesInStore[name]) return '';
|
||||
l('tooltip').innerHTML = Game.crate(Game.UpgradesInStore[name], 'store', undefined, undefined, 1)();
|
||||
}
|
||||
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 != 'b' || Game.buyMode == 1)) {
|
||||
if (CM.Config.Tooltip == 1 && (type == 'u' || (type == 'b' && Game.buyMode == 1))) {
|
||||
l('tooltip').firstChild.style.paddingBottom = '4px';
|
||||
var tooltip = document.createElement('div');
|
||||
tooltip.style.border = '1px solid';
|
||||
@@ -2144,6 +2173,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';
|
||||
@@ -2160,7 +2190,7 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
time.id = 'CMTooltipTime';
|
||||
tooltip.appendChild(time);
|
||||
|
||||
l('tooltip').appendChild(tooltip);
|
||||
area.appendChild(tooltip);
|
||||
}
|
||||
|
||||
CM.Disp.tooltipType = type;
|
||||
@@ -2174,92 +2204,141 @@ CM.Disp.Tooltip = function(type, name) {
|
||||
CM.Disp.UpdateTooltip = function() {
|
||||
if (l('tooltipAnchor').style.display != 'none' && l('CMTooltipArea') != null) {
|
||||
|
||||
// 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')) {
|
||||
return;
|
||||
}
|
||||
var price;
|
||||
var bonus;
|
||||
if (CM.Disp.tooltipType == 'b') {
|
||||
var target = '';
|
||||
if (Game.buyMode == 1 && Game.buyBulk == 10) {
|
||||
target = 'Objects10';
|
||||
price = CM.Cache[target][CM.Disp.tooltipName].price;
|
||||
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')) {
|
||||
return;
|
||||
}
|
||||
else if (Game.buyMode == 1 && Game.buyBulk == 100) {
|
||||
target = 'Objects100';
|
||||
price = CM.Cache[target][CM.Disp.tooltipName].price;
|
||||
}
|
||||
else {
|
||||
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('CMTooltipPP').textContent = Beautify(CM.Cache[target][CM.Disp.tooltipName].pp, 2);
|
||||
l('CMTooltipPP').className = CM.Disp.colorTextPre + CM.Cache[target][CM.Disp.tooltipName].color;
|
||||
}
|
||||
}
|
||||
else { // Upgrades
|
||||
bonus = CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].bonus;
|
||||
price = Game.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].getPrice();
|
||||
if (CM.Config.Tooltip == 1) {
|
||||
l('CMTooltipBorder').className = CM.Disp.colorTextPre + CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].color;
|
||||
l('CMTooltipPP').textContent = Beautify(CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].pp, 2);
|
||||
l('CMTooltipPP').className = CM.Disp.colorTextPre + CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].color;
|
||||
}
|
||||
}
|
||||
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);
|
||||
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;
|
||||
}
|
||||
|
||||
if (CM.Config.ToolWarnCaut == 1) {
|
||||
var warn = CM.Cache.Lucky;
|
||||
if (CM.Config.ToolWarnCautBon == 1) {
|
||||
var bonusNoFren = bonus;
|
||||
bonusNoFren /= CM.Sim.getCPSBuffMult();
|
||||
warn += ((bonusNoFren * 60 * 15) / 0.15);
|
||||
}
|
||||
var caut = warn * 7;
|
||||
var amount = (Game.cookies + CM.Disp.GetWrinkConfigBank()) - price;
|
||||
if ((amount < warn || amount < caut) && (CM.Disp.tooltipType != 'b' || Game.buyMode == 1)) {
|
||||
if (CM.Config.ToolWarnCautPos == 0) {
|
||||
CM.Disp.TooltipWarnCaut.style.right = '0px';
|
||||
var price;
|
||||
var bonus;
|
||||
if (CM.Disp.tooltipType == 'b') {
|
||||
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 {
|
||||
CM.Disp.TooltipWarnCaut.style.top = (l('tooltip').offsetHeight) + 'px';
|
||||
target = 'Objects';
|
||||
price = Game.Objects[CM.Disp.tooltipName].getPrice();
|
||||
}
|
||||
CM.Disp.TooltipWarnCaut.style.width = (l('tooltip').offsetWidth - 6) + 'px';
|
||||
|
||||
if (amount < warn) {
|
||||
l('CMDispTooltipWarn').style.display = '';
|
||||
l('CMDispTooltipWarnText').textContent = Beautify(warn - amount) + ' (' + CM.Disp.FormatTime((warn - amount) / CM.Disp.GetCPS()) + ')';
|
||||
l('CMDispTooltipCaut').style.display = '';
|
||||
l('CMDispTooltipCautText').textContent = Beautify(caut - amount) + ' (' + CM.Disp.FormatTime((caut - amount) / CM.Disp.GetCPS()) + ')';
|
||||
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('CMTooltipPP').textContent = Beautify(CM.Cache[target][CM.Disp.tooltipName].pp, 2);
|
||||
l('CMTooltipPP').className = CM.Disp.colorTextPre + CM.Cache[target][CM.Disp.tooltipName].color;
|
||||
}
|
||||
else if (amount < caut) {
|
||||
l('CMDispTooltipCaut').style.display = '';
|
||||
l('CMDispTooltipCautText').textContent = Beautify(caut - amount) + ' (' + CM.Disp.FormatTime((caut - amount) / CM.Disp.GetCPS()) + ')';
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
}
|
||||
else { // Upgrades
|
||||
bonus = CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].bonus;
|
||||
price = Game.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].getPrice();
|
||||
if (CM.Config.Tooltip == 1) {
|
||||
l('CMTooltipBorder').className = CM.Disp.colorTextPre + CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].color;
|
||||
l('CMTooltipPP').textContent = Beautify(CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].pp, 2);
|
||||
l('CMTooltipPP').className = CM.Disp.colorTextPre + CM.Cache.Upgrades[Game.UpgradesInStore[CM.Disp.tooltipName].name].color;
|
||||
}
|
||||
}
|
||||
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);
|
||||
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;
|
||||
}
|
||||
|
||||
if (CM.Config.ToolWarnCaut == 1) {
|
||||
var warn = CM.Cache.Lucky;
|
||||
if (CM.Config.ToolWarnCautBon == 1) {
|
||||
var bonusNoFren = bonus;
|
||||
bonusNoFren /= CM.Sim.getCPSBuffMult();
|
||||
warn += ((bonusNoFren * 60 * 15) / 0.15);
|
||||
}
|
||||
var caut = warn * 7;
|
||||
var amount = (Game.cookies + CM.Disp.GetWrinkConfigBank()) - price;
|
||||
if ((amount < warn || amount < caut) && (CM.Disp.tooltipType != 'b' || Game.buyMode == 1)) {
|
||||
if (CM.Config.ToolWarnCautPos == 0) {
|
||||
CM.Disp.TooltipWarnCaut.style.right = '0px';
|
||||
}
|
||||
else {
|
||||
CM.Disp.TooltipWarnCaut.style.top = (l('tooltip').offsetHeight) + 'px';
|
||||
}
|
||||
CM.Disp.TooltipWarnCaut.style.width = (l('tooltip').offsetWidth - 6) + 'px';
|
||||
|
||||
if (amount < warn) {
|
||||
l('CMDispTooltipWarn').style.display = '';
|
||||
l('CMDispTooltipWarnText').textContent = Beautify(warn - amount) + ' (' + CM.Disp.FormatTime((warn - amount) / CM.Disp.GetCPS()) + ')';
|
||||
l('CMDispTooltipCaut').style.display = '';
|
||||
l('CMDispTooltipCautText').textContent = Beautify(caut - amount) + ' (' + CM.Disp.FormatTime((caut - amount) / CM.Disp.GetCPS()) + ')';
|
||||
}
|
||||
else if (amount < caut) {
|
||||
l('CMDispTooltipCaut').style.display = '';
|
||||
l('CMDispTooltipCautText').textContent = Beautify(caut - amount) + ' (' + CM.Disp.FormatTime((caut - amount) / CM.Disp.GetCPS()) + ')';
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
}
|
||||
else {
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
l('CMDispTooltipCaut').style.display = 'none';
|
||||
}
|
||||
}
|
||||
else {
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
l('CMDispTooltipCaut').style.display = 'none';
|
||||
}
|
||||
}
|
||||
else {
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
l('CMDispTooltipCaut').style.display = 'none';
|
||||
}
|
||||
else { // Grimoire
|
||||
l('CMDispTooltipWarn').style.display = 'none';
|
||||
l('CMDispTooltipCaut').style.display = 'none';
|
||||
|
||||
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';
|
||||
tooltip.style.padding = '4px';
|
||||
tooltip.style.margin = '0px -4px';
|
||||
tooltip.id = 'CMTooltipBorder';
|
||||
tooltip.className = CM.Disp.colorTextPre + CM.Disp.colorGray;
|
||||
|
||||
var header = function(text) {
|
||||
var div = document.createElement('div');
|
||||
div.style.fontWeight = 'bold';
|
||||
div.className = CM.Disp.colorTextPre + CM.Disp.colorBlue;
|
||||
div.textContent = text;
|
||||
return div;
|
||||
}
|
||||
|
||||
tooltip.appendChild(header('Time Left'));
|
||||
var time = document.createElement('div');
|
||||
time.id = 'CMTooltipTime';
|
||||
tooltip.appendChild(time);
|
||||
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');
|
||||
recover.id = 'CMTooltipRecover';
|
||||
tooltip.appendChild(recover);
|
||||
var recoverColor = CM.Disp.GetTimeColor(minigame.magic, Math.max(0, minigame.magic - spellCost), undefined, CM.Disp.CalculateGrimoireRefillTime(Math.max(0, minigame.magic - spellCost), minigame.magicM, minigame.magic));
|
||||
recover.textContent = recoverColor.text;
|
||||
recover.className = CM.Disp.colorTextPre + recoverColor.color;
|
||||
}
|
||||
|
||||
l('CMTooltipArea').appendChild(tooltip);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2460,7 +2539,15 @@ CM.ReplaceNative = function() {
|
||||
CM.Backup.UpdateSpecial();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Probably better to load per minigame
|
||||
CM.Backup.scriptLoaded = Game.scriptLoaded;
|
||||
Game.scriptLoaded = function(who, script) {
|
||||
CM.Backup.scriptLoaded(who, script);
|
||||
CM.Disp.AddTooltipGrimoire()
|
||||
CM.ReplaceNativeGrimoire();
|
||||
}
|
||||
|
||||
CM.Backup.RebuildUpgrades = Game.RebuildUpgrades;
|
||||
Game.RebuildUpgrades = function() {
|
||||
CM.Backup.RebuildUpgrades();
|
||||
@@ -2498,6 +2585,40 @@ CM.ReplaceNative = function() {
|
||||
}
|
||||
}
|
||||
|
||||
CM.ReplaceNativeGrimoire = function() {
|
||||
CM.ReplaceNativeGrimoireLaunch();
|
||||
CM.ReplaceNativeGrimoireDraw();
|
||||
}
|
||||
|
||||
CM.ReplaceNativeGrimoireLaunch = function() {
|
||||
if (!CM.HasReplaceNativeGrimoireLaunch && Game.Objects['Wizard tower'].minigameLoaded) {
|
||||
var minigame = Game.Objects['Wizard tower'].minigame;
|
||||
CM.Backup.GrimoireLaunch = minigame.launch;
|
||||
eval('CM.Backup.GrimoireLaunchMod = ' + minigame.launch.toString().split('=this').join('= Game.Objects[\'Wizard tower\'].minigame'));
|
||||
Game.Objects['Wizard tower'].minigame.launch = function() {
|
||||
CM.Backup.GrimoireLaunchMod();
|
||||
CM.Disp.AddTooltipGrimoire();
|
||||
CM.HasReplaceNativeGrimoireDraw = false;
|
||||
CM.ReplaceNativeGrimoireDraw();
|
||||
}
|
||||
CM.HasReplaceNativeGrimoireLaunch = true;
|
||||
}
|
||||
}
|
||||
|
||||
CM.ReplaceNativeGrimoireDraw = function() {
|
||||
if (!CM.HasReplaceNativeGrimoireDraw && Game.Objects['Wizard tower'].minigameLoaded) {
|
||||
var minigame = Game.Objects['Wizard tower'].minigame;
|
||||
CM.Backup.GrimoireDraw = minigame.draw;
|
||||
Game.Objects['Wizard tower'].minigame.draw = function() {
|
||||
CM.Backup.GrimoireDraw();
|
||||
if (minigame.magic < minigame.magicM) {
|
||||
minigame.magicBarTextL.innerHTML += ' (' + CM.Disp.FormatTime(CM.Disp.CalculateGrimoireRefillTime(minigame.magic, minigame.magicM, minigame.magicM)) + ')';
|
||||
}
|
||||
}
|
||||
CM.HasReplaceNativeGrimoireDraw = true;
|
||||
}
|
||||
}
|
||||
|
||||
CM.Loop = function() {
|
||||
if (CM.Disp.lastAscendState != Game.OnAscend) {
|
||||
CM.Disp.lastAscendState = Game.OnAscend;
|
||||
@@ -2604,9 +2725,11 @@ CM.DelayInit = function() {
|
||||
CM.Disp.CreateTooltip('ChoEggTooltipPlaceholder', 'The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamind slot, selling all buildings with Earth Shatterer aura, and then buying Chocolate egg', '360px');
|
||||
CM.Disp.CreateTooltipWarnCaut();
|
||||
CM.Disp.AddTooltipBuild();
|
||||
CM.Disp.AddTooltipGrimoire();
|
||||
CM.Disp.AddWrinklerAreaDetect();
|
||||
CM.Cache.InitCookiesDiff();
|
||||
CM.ReplaceNative();
|
||||
CM.ReplaceNativeGrimoire();
|
||||
Game.CalculateGains();
|
||||
CM.LoadConfig(); // Must be after all things are created!
|
||||
CM.Disp.lastAscendState = Game.OnAscend;
|
||||
@@ -2619,6 +2742,9 @@ CM.DelayInit = function() {
|
||||
Game.Win('Third-party');
|
||||
}
|
||||
|
||||
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, 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';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user