Added 'time left' to ascend tooltip #80
This commit is contained in:
1 parent
fd77e84a90
commit
af5a44eb9a
4 files changed
+56
-38
No files matched your search
+1
-1
@@ -1 +1 @@
|
|||||||
const CM={Backup:{},Cache:{},Config:{},Data:{Config:{}},Disp:{},Footer:{},Main:{},Options:{},Sim:{},VersionMajor:"2.031",VersionMinor:"3"};CM.Cache.InitCache=function(){CM.Cache.CacheDragonAuras();CM.Cache.CacheWrinklers();CM.Cache.CacheStats();CM.Cache.CacheGoldenAndWrathCookiesMults();CM.Cache.CacheChain();CM.Cache.CacheMissingUpgrades();CM.Cache.CacheSeaSpec();CM.Cache.InitCookiesDiff();CM.Cache.CacheAvgCPS();CM.Cache.CacheIncome();CM.Cache.CacheBuildingsPrices();CM.Cache.CachePP()};CM.Cache.CacheDragonAuras=function(){CM.Cache.dragonAura=Game.dragonAura;CM.Cache.dragonAura2=Game.dragonAura2};CM.Cache.CacheWrinklers=function(){CM.Cache.WrinklersTotal=0;CM.Cache.WrinklersNormal=0;CM.Cache.WrinklersFattest=[0,null];for(let i=0;i<Game.wrinklers.length;i++){let sucked=Game.wrinklers[i].sucked;let toSuck=1.1;if(Game.Has("Sacrilegious corruption"))toSuck*=1.05;if(Game.wrinklers[i].type==1)toSuck*=3;sucked*=toSuck;if(Game.Has("Wrinklerspawn"))sucked*=1.05;if(CM.Sim.Objects.Temple.minigameLoaded){let godLvl=Game.hasGod("scorn");if(godLvl===1)sucked*=1.15;else if(godLvl===2)sucked*=1.1;else if(godLvl===3)sucked*=1.05}CM.Cache.WrinklersTotal+=sucked;if(Game.wrinklers[i].type===0){CM.Cache.WrinklersNormal+=sucked;if(sucked>CM.Cache.WrinklersFattest[0])CM.Cache.WrinklersFattest=[sucked,i]}}};CM.Cache.CacheStats=function(){CM.Cache.Lucky=CM.Cache.NoGoldSwitchCookiesPS*900/.15;CM.Cache.Lucky*=CM.Cache.DragonsFortuneMultAdjustment;let cpsBuffMult=CM.Cache.getCPSBuffMult();if(cpsBuffMult>0)CM.Cache.Lucky/=cpsBuffMult;else CM.Cache.Lucky=0;CM.Cache.LuckyReward=CM.Cache.GoldenCookiesMult*(CM.Cache.Lucky*.15)+13;CM.Cache.LuckyWrathReward=CM.Cache.WrathCookiesMult*(CM.Cache.Lucky*.15)+13;CM.Cache.LuckyFrenzy=CM.Cache.Lucky*7;CM.Cache.LuckyRewardFrenzy=CM.Cache.GoldenCookiesMult*(CM.Cache.LuckyFrenzy*.15)+13;CM.Cache.LuckyWrathRewardFrenzy=CM.Cache.WrathCookiesMult*(CM.Cache.LuckyFrenzy*.15)+13;CM.Cache.Conjure=CM.Cache.Lucky*2;CM.Cache.ConjureReward=CM.Cache.Conjure*.15;CM.Cache.Edifice=0;let max=0;let n=0;for(let i of Object.keys(Game.Objects)){if(Game.Objects[i].amount>max)max=Game.Objects[i].amount;if(Game.Objects[i].amount>0)n++}for(let i of Object.keys(Game.Objects)){if((Game.Objects[i].amount<max||n===1)&&Game.Objects[i].amount<400&&Game.Objects[i].price*2>CM.Cache.Edifice){CM.Cache.Edifice=Game.Objects[i].price*2;CM.Cache.EdificeBuilding=i}}};CM.Cache.CacheGoldenAndWrathCookiesMults=function(){if(CM.Footer.isInitzializing){CM.Cache.GoldenCookiesMult=1;CM.Cache.WrathCookiesMult=1;CM.Cache.DragonsFortuneMultAdjustment=1}else{let goldenMult=1;let wrathMult=1;let mult=1;if(CM.Sim.Has("Green yeast digestives"))mult*=1.01;if(CM.Sim.Has("Dragon fang"))mult*=1.03;goldenMult*=1+Game.auraMult("Ancestral Metamorphosis")*.1;goldenMult*=Game.eff("goldenCookieGain");wrathMult*=1+Game.auraMult("Unholy Dominion")*.1;wrathMult*=Game.eff("wrathCookieGain");CM.Cache.GoldenCookiesMult=mult*goldenMult;CM.Cache.WrathCookiesMult=mult*wrathMult;CM.Cache.DragonsFortuneMultAdjustment=1;if(Game.shimmerTypes.golden.n===0){CM.Cache.DragonsFortuneMultAdjustment*=1+Game.auraMult("Dragon's Fortune")*1.23}}};CM.Cache.MaxChainCookieReward=function(digit,maxPayout,mult){let totalFromChain=0;let moni=0;let nextMoni=0;let chain=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);while(nextMoni<maxPayout){moni=Math.max(digit,Math.min(Math.floor(1/9*Math.pow(10,chain)*digit*mult),maxPayout));nextMoni=Math.max(digit,Math.min(Math.floor(1/9*Math.pow(10,chain+1)*digit*mult),maxPayout));totalFromChain+=moni;chain++}return[totalFromChain,nextMoni]};CM.Cache.CacheChain=function(){let maxPayout=CM.Cache.NoGoldSwitchCookiesPS*60*60*6*CM.Cache.DragonsFortuneMultAdjustment;let cpsBuffMult=CM.Cache.getCPSBuffMult();if(cpsBuffMult>0)maxPayout/=cpsBuffMult;else maxPayout=0;CM.Cache.ChainReward=CM.Cache.MaxChainCookieReward(7,maxPayout*CM.Cache.GoldenCookiesMult,CM.Cache.GoldenCookiesMult);CM.Cache.ChainRequired=CM.Cache.ChainReward[0]*2;CM.Cache.ChainRequiredNext=CM.Cache.ChainReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment;CM.Cache.ChainWrathReward=CM.Cache.MaxChainCookieReward(6,maxPayout*CM.Cache.WrathCookiesMult,CM.Cache.WrathCookiesMult);CM.Cache.ChainWrathRequired=CM.Cache.ChainWrathReward[0]*2;CM.Cache.ChainWrathRequiredNext=CM.Cache.ChainWrathReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment;CM.Cache.ChainFrenzyReward=CM.Cache.MaxChainCookieReward(7,maxPayout*7*CM.Cache.GoldenCookiesMult,CM.Cache.GoldenCookiesMult);CM.Cache.ChainFrenzyRequired=CM.Cache.ChainFrenzyReward[0]*2;CM.Cache.ChainFrenzyRequiredNext=CM.Cache.ChainFrenzyReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment;CM.Cache.ChainFrenzyWrathReward=CM.Cache.MaxChainCookieReward(6,maxPayout*7*CM.Cache.WrathCookiesMult,CM.Cache.WrathCookiesMult);CM.Cache.ChainFrenzyWrathRequired=CM.Cache.ChainFrenzyReward[0]*2;CM.Cache.ChainFrenzyWrathRequiredNext=CM.Cache.ChainFrenzyReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment};CM.Cache.CacheMissingUpgrades=function(){CM.Cache.MLine truncated
|
const CM={Backup:{},Cache:{},Config:{},Data:{Config:{}},Disp:{},Footer:{},Main:{},Options:{},Sim:{},VersionMajor:"2.031",VersionMinor:"3"};CM.Cache.InitCache=function(){CM.Cache.CacheDragonAuras();CM.Cache.CacheWrinklers();CM.Cache.CacheStats();CM.Cache.CacheGoldenAndWrathCookiesMults();CM.Cache.CacheChain();CM.Cache.CacheMissingUpgrades();CM.Cache.CacheSeaSpec();CM.Cache.InitCookiesDiff();CM.Cache.CacheAvgCPS();CM.Cache.CacheIncome();CM.Cache.CacheBuildingsPrices();CM.Cache.CachePP()};CM.Cache.LoopCache=function(){CM.Cache.CacheWrinklers();CM.Cache.CachePP();CM.Cache.CacheCurrWrinklerCPS();CM.Cache.CacheAvgCPS();let cookiesToNext=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);CM.Cache.TimeTillNextPrestige=CM.Disp.FormatTime(cookiesToNext/CM.Cache.AvgCPS)};CM.Cache.CacheDragonAuras=function(){CM.Cache.dragonAura=Game.dragonAura;CM.Cache.dragonAura2=Game.dragonAura2};CM.Cache.CacheWrinklers=function(){CM.Cache.WrinklersTotal=0;CM.Cache.WrinklersNormal=0;CM.Cache.WrinklersFattest=[0,null];for(let i=0;i<Game.wrinklers.length;i++){let sucked=Game.wrinklers[i].sucked;let toSuck=1.1;if(Game.Has("Sacrilegious corruption"))toSuck*=1.05;if(Game.wrinklers[i].type==1)toSuck*=3;sucked*=toSuck;if(Game.Has("Wrinklerspawn"))sucked*=1.05;if(CM.Sim.Objects.Temple.minigameLoaded){let godLvl=Game.hasGod("scorn");if(godLvl===1)sucked*=1.15;else if(godLvl===2)sucked*=1.1;else if(godLvl===3)sucked*=1.05}CM.Cache.WrinklersTotal+=sucked;if(Game.wrinklers[i].type===0){CM.Cache.WrinklersNormal+=sucked;if(sucked>CM.Cache.WrinklersFattest[0])CM.Cache.WrinklersFattest=[sucked,i]}}};CM.Cache.CacheStats=function(){CM.Cache.Lucky=CM.Cache.NoGoldSwitchCookiesPS*900/.15;CM.Cache.Lucky*=CM.Cache.DragonsFortuneMultAdjustment;let cpsBuffMult=CM.Cache.getCPSBuffMult();if(cpsBuffMult>0)CM.Cache.Lucky/=cpsBuffMult;else CM.Cache.Lucky=0;CM.Cache.LuckyReward=CM.Cache.GoldenCookiesMult*(CM.Cache.Lucky*.15)+13;CM.Cache.LuckyWrathReward=CM.Cache.WrathCookiesMult*(CM.Cache.Lucky*.15)+13;CM.Cache.LuckyFrenzy=CM.Cache.Lucky*7;CM.Cache.LuckyRewardFrenzy=CM.Cache.GoldenCookiesMult*(CM.Cache.LuckyFrenzy*.15)+13;CM.Cache.LuckyWrathRewardFrenzy=CM.Cache.WrathCookiesMult*(CM.Cache.LuckyFrenzy*.15)+13;CM.Cache.Conjure=CM.Cache.Lucky*2;CM.Cache.ConjureReward=CM.Cache.Conjure*.15;CM.Cache.Edifice=0;let max=0;let n=0;for(let i of Object.keys(Game.Objects)){if(Game.Objects[i].amount>max)max=Game.Objects[i].amount;if(Game.Objects[i].amount>0)n++}for(let i of Object.keys(Game.Objects)){if((Game.Objects[i].amount<max||n===1)&&Game.Objects[i].amount<400&&Game.Objects[i].price*2>CM.Cache.Edifice){CM.Cache.Edifice=Game.Objects[i].price*2;CM.Cache.EdificeBuilding=i}}};CM.Cache.CacheGoldenAndWrathCookiesMults=function(){if(CM.Footer.isInitzializing){CM.Cache.GoldenCookiesMult=1;CM.Cache.WrathCookiesMult=1;CM.Cache.DragonsFortuneMultAdjustment=1}else{let goldenMult=1;let wrathMult=1;let mult=1;if(CM.Sim.Has("Green yeast digestives"))mult*=1.01;if(CM.Sim.Has("Dragon fang"))mult*=1.03;goldenMult*=1+Game.auraMult("Ancestral Metamorphosis")*.1;goldenMult*=Game.eff("goldenCookieGain");wrathMult*=1+Game.auraMult("Unholy Dominion")*.1;wrathMult*=Game.eff("wrathCookieGain");CM.Cache.GoldenCookiesMult=mult*goldenMult;CM.Cache.WrathCookiesMult=mult*wrathMult;CM.Cache.DragonsFortuneMultAdjustment=1;if(Game.shimmerTypes.golden.n===0){CM.Cache.DragonsFortuneMultAdjustment*=1+Game.auraMult("Dragon's Fortune")*1.23}}};CM.Cache.MaxChainCookieReward=function(digit,maxPayout,mult){let totalFromChain=0;let moni=0;let nextMoni=0;let chain=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);while(nextMoni<maxPayout){moni=Math.max(digit,Math.min(Math.floor(1/9*Math.pow(10,chain)*digit*mult),maxPayout));nextMoni=Math.max(digit,Math.min(Math.floor(1/9*Math.pow(10,chain+1)*digit*mult),maxPayout));totalFromChain+=moni;chain++}return[totalFromChain,nextMoni]};CM.Cache.CacheChain=function(){let maxPayout=CM.Cache.NoGoldSwitchCookiesPS*60*60*6*CM.Cache.DragonsFortuneMultAdjustment;let cpsBuffMult=CM.Cache.getCPSBuffMult();if(cpsBuffMult>0)maxPayout/=cpsBuffMult;else maxPayout=0;CM.Cache.ChainReward=CM.Cache.MaxChainCookieReward(7,maxPayout*CM.Cache.GoldenCookiesMult,CM.Cache.GoldenCookiesMult);CM.Cache.ChainRequired=CM.Cache.ChainReward[0]*2;CM.Cache.ChainRequiredNext=CM.Cache.ChainReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment;CM.Cache.ChainWrathReward=CM.Cache.MaxChainCookieReward(6,maxPayout*CM.Cache.WrathCookiesMult,CM.Cache.WrathCookiesMult);CM.Cache.ChainWrathRequired=CM.Cache.ChainWrathReward[0]*2;CM.Cache.ChainWrathRequiredNext=CM.Cache.ChainWrathReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjustment;CM.Cache.ChainFrenzyReward=CM.Cache.MaxChainCookieReward(7,maxPayout*7*CM.Cache.GoldenCookiesMult,CM.Cache.GoldenCookiesMult);CM.Cache.ChainFrenzyRequired=CM.Cache.ChainFrenzyReward[0]*2;CM.Cache.ChainFrenzyRequiredNext=CM.Cache.ChainFrenzyReward[1]/60/60/6/CM.Cache.DragonsFortuneMultAdjusLine truncated
|
||||||
+26
-5
@@ -25,6 +25,27 @@ CM.Cache.InitCache = function() {
|
|||||||
CM.Cache.CachePP();
|
CM.Cache.CachePP();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This functions caches variables that are needed every loop
|
||||||
|
* It is called by CM.Main.Loop()
|
||||||
|
* @global {string} CM.Cache.TimeTillNextPrestige Time requried till next prestige level
|
||||||
|
*/
|
||||||
|
CM.Cache.LoopCache = function() {
|
||||||
|
// Update Wrinkler Bank
|
||||||
|
CM.Cache.CacheWrinklers();
|
||||||
|
|
||||||
|
// Calculate PP
|
||||||
|
CM.Cache.CachePP();
|
||||||
|
|
||||||
|
// Cache average CPS
|
||||||
|
CM.Cache.CacheCurrWrinklerCPS();
|
||||||
|
CM.Cache.CacheAvgCPS();
|
||||||
|
|
||||||
|
let cookiesToNext = Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset + Game.cookiesEarned)) + 1) - (Game.cookiesEarned + Game.cookiesReset);
|
||||||
|
CM.Cache.TimeTillNextPrestige = CM.Disp.FormatTime(cookiesToNext / CM.Cache.AvgCPS);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/********
|
/********
|
||||||
* Section: Functions related to Dragon Auras */
|
* Section: Functions related to Dragon Auras */
|
||||||
|
|
||||||
@@ -45,7 +66,7 @@ CM.Cache.CacheDragonAuras = function() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This functions caches data related to Wrinklers
|
* This functions caches data related to Wrinklers
|
||||||
* It is called by CM.Main.Loop() and CM.Cache.InitCache()
|
* It is called by CM.Cache.LoopCache() and CM.Cache.InitCache()
|
||||||
* @global {number} CM.Cache.WrinklersTotal The cookies of all wrinklers
|
* @global {number} CM.Cache.WrinklersTotal The cookies of all wrinklers
|
||||||
* @global {number} CM.Cache.WrinklersNormal The cookies of all normal wrinklers
|
* @global {number} CM.Cache.WrinklersNormal The cookies of all normal wrinklers
|
||||||
* @global {[{number}, {number}]} CM.Cache.WrinklersFattest A list containing the cookies and the id of the fattest non-shiny wrinkler
|
* @global {[{number}, {number}]} CM.Cache.WrinklersFattest A list containing the cookies and the id of the fattest non-shiny wrinkler
|
||||||
@@ -79,7 +100,7 @@ CM.Cache.CacheWrinklers = function() {
|
|||||||
* Section: Functions related to Caching stats */
|
* Section: Functions related to Caching stats */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This functions caches variables related to the stats apge
|
* This functions caches variables related to the stats page
|
||||||
* It is called by CM.Main.Loop() upon changes to cps and CM.Cache.InitCache()
|
* It is called by CM.Main.Loop() upon changes to cps and CM.Cache.InitCache()
|
||||||
* @global {number} CM.Cache.Lucky Cookies required for max Lucky
|
* @global {number} CM.Cache.Lucky Cookies required for max Lucky
|
||||||
* @global {number} CM.Cache.LuckyReward Reward for max normal Lucky
|
* @global {number} CM.Cache.LuckyReward Reward for max normal Lucky
|
||||||
@@ -335,7 +356,7 @@ CM.Cache.InitCookiesDiff = function() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This functions caches two variables related average CPS and Clicks
|
* This functions caches two variables related average CPS and Clicks
|
||||||
* It is called by CM.Main.Loop()
|
* It is called by CM.Cache.LoopCache()
|
||||||
* @global {number} CM.Cache.RealCookiesEarned Cookies earned including the Chocolate Egg
|
* @global {number} CM.Cache.RealCookiesEarned Cookies earned including the Chocolate Egg
|
||||||
* @global {number} CM.Cache.AvgCPS Average cookies over time-period as defined by AvgCPSHist
|
* @global {number} CM.Cache.AvgCPS Average cookies over time-period as defined by AvgCPSHist
|
||||||
* @global {number} CM.Cache.AverageClicks Average cookies from clicking over time-period as defined by AvgClicksHist
|
* @global {number} CM.Cache.AverageClicks Average cookies from clicking over time-period as defined by AvgClicksHist
|
||||||
@@ -418,7 +439,7 @@ CM.Cache.CacheSellForChoEgg = function() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This functions caches the current Wrinkler CPS multiplier
|
* This functions caches the current Wrinkler CPS multiplier
|
||||||
* It is called by CM.Main.Loop(). Variables are mostly used by CM.Disp.GetCPS().
|
* It is called by CM.Cache.LoopCache(). Variables are mostly used by CM.Disp.GetCPS().
|
||||||
* @global {number} CM.Cache.CurrWrinklerCount Current number of wrinklers
|
* @global {number} CM.Cache.CurrWrinklerCount Current number of wrinklers
|
||||||
* @global {number} CM.Cache.CurrWrinklerCPSMult Current multiplier of CPS because of wrinklers (excluding their negative sucking effect)
|
* @global {number} CM.Cache.CurrWrinklerCPSMult Current multiplier of CPS because of wrinklers (excluding their negative sucking effect)
|
||||||
*/
|
*/
|
||||||
@@ -590,7 +611,7 @@ CM.Cache.CacheBuildingsPrices = function() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This functions caches the PP of each building and upgrade and stores it in the cache
|
* This functions caches the PP of each building and upgrade and stores it in the cache
|
||||||
* It is called by CM.Main.Loop() and CM.Cache.InitCache()
|
* It is called by CM.Cache.LoopCache() and CM.Cache.InitCache()
|
||||||
*/
|
*/
|
||||||
CM.Cache.CachePP = function() {
|
CM.Cache.CachePP = function() {
|
||||||
CM.Cache.CacheBuildingsPP();
|
CM.Cache.CacheBuildingsPP();
|
||||||
|
|||||||
+3
-1
@@ -86,7 +86,7 @@ CM.Data.ConfigGroups = {
|
|||||||
BarsColors: "Bars/Colors",
|
BarsColors: "Bars/Colors",
|
||||||
Calculation: "Calculation",
|
Calculation: "Calculation",
|
||||||
Notification: "Notification",
|
Notification: "Notification",
|
||||||
Tooltip: "Tooltips",
|
Tooltip: "Tooltips and additional insights",
|
||||||
Statistics: "Statistics",
|
Statistics: "Statistics",
|
||||||
Notation: "Notation",
|
Notation: "Notation",
|
||||||
Miscellaneous: "Miscellaneous"
|
Miscellaneous: "Miscellaneous"
|
||||||
@@ -223,6 +223,7 @@ CM.Data.Config.TooltipWrink = {type: 'bool', group: 'Tooltip', label: ['Wrinkler
|
|||||||
CM.Data.Config.TooltipLump = {type: 'bool', group: 'Tooltip', label: ['Sugar Lump Tooltip OFF', 'Sugar Lump Tooltip ON'], desc: 'Shows the current Sugar Lump type in Sugar lump tooltip.', toggle: true};
|
CM.Data.Config.TooltipLump = {type: 'bool', group: 'Tooltip', label: ['Sugar Lump Tooltip OFF', 'Sugar Lump Tooltip ON'], desc: 'Shows the current Sugar Lump type in Sugar lump tooltip.', toggle: true};
|
||||||
CM.Data.Config.TooltipPlots = {type: 'bool', group: 'Tooltip', label: ['Garden Plots Tooltip OFF', 'Garden Plots Tooltip ON'], desc: 'Shows a tooltip for plants that have a cookie reward.', toggle: true};
|
CM.Data.Config.TooltipPlots = {type: 'bool', group: 'Tooltip', label: ['Garden Plots Tooltip OFF', 'Garden Plots Tooltip ON'], desc: 'Shows a tooltip for plants that have a cookie reward.', toggle: true};
|
||||||
CM.Data.Config.DragonAuraInfo = {type: 'bool', group: 'Tooltip', label: ['Extra Dragon Aura Info OFF', 'Extra Dragon Aura Info ON'], desc: 'Shows information about changes in CPS and costs in the dragon aura interface.', toggle: true};
|
CM.Data.Config.DragonAuraInfo = {type: 'bool', group: 'Tooltip', label: ['Extra Dragon Aura Info OFF', 'Extra Dragon Aura Info ON'], desc: 'Shows information about changes in CPS and costs in the dragon aura interface.', toggle: true};
|
||||||
|
CM.Data.Config.TooltipAscendButton = {type: 'bool', group: 'Tooltip', label: ['Show Time Left Ascend Tooltip OFF', 'Show Time Left Ascend Tooltip ON'], desc: 'Shows the time left in the ascend tooltip until next heavenly cookie.', toggle: true};
|
||||||
|
|
||||||
// Statistics
|
// Statistics
|
||||||
CM.Data.Config.Stats = {type: 'bool', group: 'Statistics', label: ['Statistics OFF', 'Statistics ON'], desc: 'Extra Cookie Monster statistics!', toggle: true};
|
CM.Data.Config.Stats = {type: 'bool', group: 'Statistics', label: ['Statistics OFF', 'Statistics ON'], desc: 'Extra Cookie Monster statistics!', toggle: true};
|
||||||
@@ -313,6 +314,7 @@ CM.Data.ConfigDefault = {
|
|||||||
TooltipLump: 1,
|
TooltipLump: 1,
|
||||||
TooltipPlots: 1,
|
TooltipPlots: 1,
|
||||||
DragonAuraInfo: 1,
|
DragonAuraInfo: 1,
|
||||||
|
TooltipAscendButton: 1,
|
||||||
Stats: 1,
|
Stats: 1,
|
||||||
MissingUpgrades: 1,
|
MissingUpgrades: 1,
|
||||||
UpStats: 1,
|
UpStats: 1,
|
||||||
|
|||||||
+26
-31
@@ -48,24 +48,16 @@ CM.Main.Loop = function() {
|
|||||||
CM.Cache.DoRemakeBuildPrices = 0;
|
CM.Cache.DoRemakeBuildPrices = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update Wrinkler Bank
|
CM.Cache.LoopCache();
|
||||||
CM.Cache.CacheWrinklers();
|
|
||||||
|
|
||||||
// Calculate PP
|
// Check all changing minigames and game-states
|
||||||
CM.Cache.CachePP();
|
CM.Main.CheckGoldenCookie();
|
||||||
|
CM.Main.CheckTickerFortune();
|
||||||
|
CM.Main.CheckSeasonPopup();
|
||||||
|
CM.Main.CheckGardenTick();
|
||||||
|
CM.Main.CheckMagicMeter();
|
||||||
|
CM.Main.CheckWrinklerCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check all changing minigames and game-states
|
|
||||||
CM.Main.CheckGoldenCookie();
|
|
||||||
CM.Main.CheckTickerFortune();
|
|
||||||
CM.Main.CheckSeasonPopup();
|
|
||||||
CM.Main.CheckGardenTick();
|
|
||||||
CM.Main.CheckMagicMeter();
|
|
||||||
CM.Main.CheckWrinklerCount();
|
|
||||||
|
|
||||||
// Cache average CPS
|
|
||||||
CM.Cache.CacheCurrWrinklerCPS();
|
|
||||||
CM.Cache.CacheAvgCPS();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -202,9 +194,12 @@ CM.Main.ReplaceNative = function() {
|
|||||||
if (isNaN(time) || time <= 0) return CM.Backup.sayTime(time, detail);
|
if (isNaN(time) || time <= 0) return CM.Backup.sayTime(time, detail);
|
||||||
else return CM.Disp.FormatTime(time / Game.fps, 1);
|
else return CM.Disp.FormatTime(time / Game.fps, 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Since the Ascend Tooltip is not actually a tooltip we need to add our additional info here...
|
||||||
CM.Backup.Logic = Game.Logic;
|
CM.Backup.Logic = Game.Logic;
|
||||||
eval('CM.Backup.LogicMod = ' + Game.Logic.toString().split('document.title').join('CM.Disp.Title'));
|
eval('CM.Backup.LogicMod = ' + Game.Logic.toString()
|
||||||
|
.split('document.title').join('CM.Disp.Title')
|
||||||
|
.split("' more cookies</b> for the next level.<br>';").join("` more cookies</b> for the next level.<br>${CM.Options.TooltipAscendButton ? `<div class='line'></div>You need ${CM.Cache.TimeTillNextPrestige} for the next level.<br>` : ``}`;"));
|
||||||
Game.Logic = function() {
|
Game.Logic = function() {
|
||||||
CM.Backup.LogicMod();
|
CM.Backup.LogicMod();
|
||||||
// Update Title
|
// Update Title
|
||||||
@@ -267,7 +262,7 @@ CM.Main.ReplaceNativeGrimoireDraw = function() {
|
|||||||
*/
|
*/
|
||||||
CM.Main.ReplaceTooltips = function() {
|
CM.Main.ReplaceTooltips = function() {
|
||||||
CM.Main.ReplaceTooltipBuild();
|
CM.Main.ReplaceTooltipBuild();
|
||||||
CM.Main.ReplaceTooltipLump();
|
CM.Main.ReplaceTooltipLump();
|
||||||
|
|
||||||
// Replace Tooltips of Minigames. Nesting it in LoadMinigames makes sure to replace them even if
|
// Replace Tooltips of Minigames. Nesting it in LoadMinigames makes sure to replace them even if
|
||||||
// they were not loaded initially
|
// they were not loaded initially
|
||||||
@@ -300,6 +295,18 @@ CM.Main.ReplaceTooltipBuild = function() {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function replaces the original .onmouseover functions of sugar lumps so that it calls CM.Disp.Tooltip()
|
||||||
|
* CM.Disp.Tooltip() sets the tooltip type to 's'
|
||||||
|
* It is called by CM.Main.ReplaceTooltips()
|
||||||
|
*/
|
||||||
|
CM.Main.ReplaceTooltipLump = function() {
|
||||||
|
if (Game.canLumps()) {
|
||||||
|
CM.Main.TooltipLumpBackup = l('lumps').onmouseover;
|
||||||
|
eval('l(\'lumps\').onmouseover = function() {Game.tooltip.dynamic = 1; Game.tooltip.draw(this, function() {return CM.Disp.Tooltip(\'s\', \'Lump\');}, \'this\'); Game.tooltip.wobble();}');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function replaces the original .onmouseover functions of the Grimoire minigame so that it calls CM.Disp.Tooltip()
|
* This function replaces the original .onmouseover functions of the Grimoire minigame so that it calls CM.Disp.Tooltip()
|
||||||
* CM.Disp.Tooltip() sets the tooltip type to 'g'
|
* CM.Disp.Tooltip() sets the tooltip type to 'g'
|
||||||
@@ -317,18 +324,6 @@ CM.Main.ReplaceTooltipGrimoire = function() {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* This function replaces the original .onmouseover functions of sugar lumps so that it calls CM.Disp.Tooltip()
|
|
||||||
* CM.Disp.Tooltip() sets the tooltip type to 's'
|
|
||||||
* It is called by CM.Main.ReplaceTooltips()
|
|
||||||
*/
|
|
||||||
CM.Main.ReplaceTooltipLump = function() {
|
|
||||||
if (Game.canLumps()) {
|
|
||||||
CM.Main.TooltipLumpBackup = l('lumps').onmouseover;
|
|
||||||
eval('l(\'lumps\').onmouseover = function() {Game.tooltip.dynamic = 1; Game.tooltip.draw(this, function() {return CM.Disp.Tooltip(\'s\', \'Lump\');}, \'this\'); Game.tooltip.wobble();}');
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function replaces the original .onmouseover functions of all garden plants so that it calls CM.Disp.Tooltip()
|
* This function replaces the original .onmouseover functions of all garden plants so that it calls CM.Disp.Tooltip()
|
||||||
* CM.Disp.Tooltip() sets the tooltip type to 'p'
|
* CM.Disp.Tooltip() sets the tooltip type to 'p'
|
||||||
|
|||||||
Reference in new issue
Block a user