Legacy
This commit is contained in:
parent
4b3aaa2c6c
commit
61afcfe5fe
940
cookie.html
Normal file
940
cookie.html
Normal file
|
@ -0,0 +1,940 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script type="text/javascript">
|
||||
window.cookieconsent_options = {"message":"Unsurprisingly, this website uses cookies for ads and traffic analysis.","dismiss":"Got it!","learnMore":"Learn more","link":"http://orteil.dashnet.org/cookieconsentpolicy.html","target":"_blank","theme":"http://orteil.dashnet.org/cookieconsent.css","domain":"dashnet.org"};
|
||||
</script>
|
||||
<script type="text/javascript" src="../cdnjs.cloudflare.com/ajax/libs/cookieconsent2/1.0.9/www_subdomain/cookieconsent.min.js"></script>
|
||||
<title>Cookie Clicker</title>
|
||||
<!--
|
||||
Code and graphics are copyright Orteil, 2013
|
||||
this code is bad don't look
|
||||
to add :
|
||||
-achievements
|
||||
-off-focus running
|
||||
-fix cookie algo
|
||||
-add counter to each purchasable
|
||||
-add counter for general cookie-generation
|
||||
-upgrades
|
||||
-milk (?)
|
||||
January 2014 edit : Cookie Clicker is now viral, welp
|
||||
Remember, cheated cookies taste awful!
|
||||
-->
|
||||
<style>
|
||||
body,html
|
||||
{
|
||||
padding:0px;
|
||||
margin:0px;
|
||||
}
|
||||
body
|
||||
{
|
||||
font-family:Courier new,monospace;
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: moz-none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
background:#ccc;
|
||||
overflow-y:auto;
|
||||
}
|
||||
body::selection{background:transparent;}
|
||||
body::-moz-selection{background:transparent;}
|
||||
#cookie
|
||||
{
|
||||
width:128px;
|
||||
height:128px;
|
||||
background:url(../experiments/cookie/cookie.png);
|
||||
position:absolute;
|
||||
left:-64px;
|
||||
cursor:pointer;
|
||||
}
|
||||
#cookie:hover
|
||||
{
|
||||
background-position:-128px;
|
||||
}
|
||||
#cookie:active
|
||||
{
|
||||
background-position:-256px;
|
||||
}
|
||||
#cookie .cursor
|
||||
{
|
||||
width:32px;
|
||||
height:32px;
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/cursor.png);
|
||||
}
|
||||
#pops
|
||||
{
|
||||
position:absolute;
|
||||
left:0px;
|
||||
top:0px;
|
||||
z-index:10000;
|
||||
pointer-events:none;
|
||||
}
|
||||
.pop
|
||||
{
|
||||
font-weight:bold;
|
||||
color:#fff;
|
||||
width:200px;
|
||||
height:20px;
|
||||
font-size:20px;
|
||||
text-align:center;
|
||||
}
|
||||
#rightPanel
|
||||
{
|
||||
position:absolute;
|
||||
right:0px;
|
||||
top:0px;
|
||||
z-index:100000;
|
||||
}
|
||||
#store
|
||||
{
|
||||
position:relative;
|
||||
}
|
||||
#store>div
|
||||
{
|
||||
background:#eee no-repeat;
|
||||
width:256px;
|
||||
height:64px;
|
||||
padding-left:72px;
|
||||
cursor:pointer;
|
||||
border:#000 2px solid;
|
||||
position:relative;
|
||||
}
|
||||
#store>div:hover
|
||||
{
|
||||
background-color:#fff;
|
||||
}
|
||||
#store>div:active
|
||||
{
|
||||
background-color:#ccc;
|
||||
}
|
||||
#store>div b
|
||||
{
|
||||
display:block;
|
||||
}
|
||||
#store>div.grayed
|
||||
{
|
||||
background-color:#666;
|
||||
color:#f00;
|
||||
}
|
||||
#store>div .amount
|
||||
{
|
||||
position:absolute;
|
||||
right:8px;
|
||||
top:8px;
|
||||
font-size:48px;
|
||||
color:#000;
|
||||
opacity:0.2;
|
||||
}
|
||||
#money
|
||||
{
|
||||
background:url(../experiments/cookie/currency.png) no-repeat;
|
||||
background-color:#fff;
|
||||
background-color:rgba(255,255,255,0.75);
|
||||
border-radius:18px;
|
||||
position:absolute;
|
||||
left:0px;
|
||||
top:0px;
|
||||
margin:16px;
|
||||
height:28px;
|
||||
padding:4px 4px 0px 36px;
|
||||
font-weight:bold;
|
||||
font-size:24px;
|
||||
z-index:100;
|
||||
}
|
||||
#saveMenu
|
||||
{
|
||||
position:absolute;
|
||||
left:0px;
|
||||
top:45px;
|
||||
margin:10px 16px;
|
||||
padding:2px 6px;
|
||||
font-weight:bold;
|
||||
font-size:14px;
|
||||
background:#fff;
|
||||
background:rgba(255,255,255,0.75);
|
||||
border-radius:8px;
|
||||
line-height:125%;
|
||||
z-index:100;
|
||||
font-size:12px;
|
||||
}
|
||||
#saveMenu .button
|
||||
{
|
||||
text-decoration:underline;
|
||||
cursor:pointer;
|
||||
font-size:14px;
|
||||
}
|
||||
#updateLog
|
||||
{
|
||||
position:fixed;
|
||||
left:0px;
|
||||
bottom:20px;
|
||||
margin:16px;
|
||||
padding:6px;
|
||||
font-weight:bold;
|
||||
font-size:12px;
|
||||
color:#666;
|
||||
background:#fff;
|
||||
background:rgba(255,255,255,0.75);
|
||||
border-radius:8px;
|
||||
line-height:125%;
|
||||
width:250px;
|
||||
height:300px;
|
||||
overflow-y:auto;
|
||||
z-index:100;
|
||||
}
|
||||
#updateLog b {color:#000;}
|
||||
moni
|
||||
{
|
||||
background:url(../experiments/cookie/currencysmall.png) no-repeat;
|
||||
width:16px;
|
||||
height:16px;
|
||||
display:inline-block;
|
||||
position:relative;
|
||||
top:4px;
|
||||
margin-right:-8px;
|
||||
}
|
||||
#grandmas
|
||||
{
|
||||
position:absolute;
|
||||
left:100px;
|
||||
width:240px;
|
||||
}
|
||||
.grandma
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/grandma.png);
|
||||
width:24px;
|
||||
height:48px;
|
||||
}
|
||||
.goldengrandma{background:url(golden../experiments/cookie/grandma.png);}
|
||||
.factorygrandma{background:url(factory../experiments/cookie/grandma.png);}
|
||||
.minegrandma{background:url(mine../experiments/cookie/grandma.png);}
|
||||
.shipmentgrandma{background:url(shipment../experiments/cookie/grandma.png);}
|
||||
.portalgrandma{background:url(portal../experiments/cookie/grandma.png);}
|
||||
.pledgedgrandma{background:url(pledged../experiments/cookie/grandma.png);}
|
||||
.timegrandma{background:url(time../experiments/cookie/grandma.png);}
|
||||
#factories
|
||||
{
|
||||
position:absolute;
|
||||
left:-420px;
|
||||
width:320px;
|
||||
}
|
||||
.factory
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/factory.png);
|
||||
width:32px;
|
||||
height:48px;
|
||||
}
|
||||
#mines
|
||||
{
|
||||
position:absolute;
|
||||
left:100px;
|
||||
width:160px;
|
||||
top:100px;
|
||||
}
|
||||
.mine
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/mine.png);
|
||||
width:32px;
|
||||
height:32px;
|
||||
}
|
||||
#shipments
|
||||
{
|
||||
position:absolute;
|
||||
left:-340px;
|
||||
width:240px;
|
||||
top:100px;
|
||||
}
|
||||
.shipment
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/shipment.png);
|
||||
width:48px;
|
||||
height:48px;
|
||||
}
|
||||
#labs
|
||||
{
|
||||
position:absolute;
|
||||
left:-120px;
|
||||
width:240px;
|
||||
top:180px;
|
||||
}
|
||||
.lab
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/lab.png);
|
||||
width:24px;
|
||||
height:32px;
|
||||
}
|
||||
#portals
|
||||
{
|
||||
position:absolute;
|
||||
left:-340px;
|
||||
width:240px;
|
||||
top:180px;
|
||||
}
|
||||
.portal
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/portal.png);
|
||||
width:48px;
|
||||
height:48px;
|
||||
}
|
||||
#times
|
||||
{
|
||||
position:absolute;
|
||||
left:100px;
|
||||
width:240px;
|
||||
top:180px;
|
||||
}
|
||||
.time
|
||||
{
|
||||
position:absolute;
|
||||
background:url(../experiments/cookie/timemachine.png);
|
||||
width:48px;
|
||||
height:48px;
|
||||
}
|
||||
#comment
|
||||
{
|
||||
position:absolute;
|
||||
left:-200px;
|
||||
top:-115px;
|
||||
width:400px;
|
||||
font-weight:bold;
|
||||
font-size:16px;
|
||||
text-align:center;
|
||||
background-color:#fff;
|
||||
background-color:rgba(255,255,255,0.75);
|
||||
border-radius:18px;
|
||||
}
|
||||
#middle
|
||||
{
|
||||
position:absolute;
|
||||
left:50%;
|
||||
top:150px;
|
||||
width:0px;
|
||||
}
|
||||
#credits
|
||||
{
|
||||
width:100%;
|
||||
height:20px;
|
||||
background:#666;
|
||||
color:#fff;
|
||||
position:fixed;
|
||||
bottom:0px;
|
||||
margin:0px;
|
||||
font-size:12px;
|
||||
border-top:2px solid #999;
|
||||
z-index:100000;
|
||||
}
|
||||
#credits span
|
||||
{
|
||||
margin:4px;
|
||||
}
|
||||
a {color:#fff;}
|
||||
#alert
|
||||
{
|
||||
background-color:#666;
|
||||
color:#fff;
|
||||
border:2px solid #000;
|
||||
position:fixed;
|
||||
right:0px;
|
||||
bottom:0px;
|
||||
padding:8px;
|
||||
z-index:20000000;
|
||||
visibility:hidden;
|
||||
font-size:14px;
|
||||
}
|
||||
#ads
|
||||
{
|
||||
width:332px;
|
||||
text-align:center;
|
||||
margin-top:16px;
|
||||
}
|
||||
#tip
|
||||
{
|
||||
position:fixed;
|
||||
left:0px;
|
||||
bottom:20px;
|
||||
width:100%;
|
||||
height:20px;
|
||||
}
|
||||
</style>
|
||||
<script src="../experiments/cookie/ajax.js"></script>
|
||||
<link rel="shortcut icon" href="favicon.ico" />
|
||||
</head>
|
||||
<body id="whole">
|
||||
<div id="hiddenLoader" style="display:none;"></div>
|
||||
<div id="credits">
|
||||
<span><b>Cookie Clicker</b> © <a href="../index.html">Orteil</a>, 2013 - hosted by <a href="http://dashnet.org">DashNet</a> | check out my <a href="http://twitter.com/orteil42">twitter</a> and <a href="http://orteil42.tumblr.com">tumblr</a> | also : <a href="../nested.html">Nested</a> | the big update is <a href="../cookieclicker.html" target="blank">out</a>!</span>
|
||||
</div>
|
||||
<div id="game">
|
||||
<div id="log"></div>
|
||||
<div id="updateLog">
|
||||
<b>06/09/2013</b><br>
|
||||
<b>0.126</b><br>
|
||||
-technical fixes<br>
|
||||
-better servers!<br>
|
||||
<div style="background:#666;color:#fff;padding:4px 0px;"><b style="color:#fff;">24/08/2013 : the big update is finally out!<br>
|
||||
<a href="../cookieclicker.html" target="blank">Check it out!</a></b></div>
|
||||
<b>0.125</b><br>
|
||||
-added a new object<br>
|
||||
-added option to disable flashing<br>
|
||||
-welp I'm going back to work<br>
|
||||
<b>0.124</b><br>
|
||||
-elder pledge is cheaper and now buffs grandmas and clicking while active<br>
|
||||
-page title now displays cookies<br>
|
||||
<b>0.123</b><br>
|
||||
-added cookies per second<br>
|
||||
-reworked grandmas<br>
|
||||
-still not the big update<br>
|
||||
<br>
|
||||
<b>13/08/2013</b> : this isn't the big update, just a couple features that have been requested often.<br>
|
||||
<b>0.122</b><br>
|
||||
-fixed background flashing<br>
|
||||
-added a new secret end-game item to counter the grandmapocalypse<br>
|
||||
<b>0.121</b><br>
|
||||
-import/export save<br>
|
||||
-ask confirm on reset<br>
|
||||
-speed tweaks<br>
|
||||
</div>
|
||||
<div id="money"></div>
|
||||
<div id="saveMenu">
|
||||
<div id="cps"></div>
|
||||
<div class="button" id="exportSave" onclick="exportSave();">Export save</div>
|
||||
<div class="button" id="importSave" onclick="importSave();">Import save</div>
|
||||
<div class="button" id="reset" onclick="Reset();">Reset</div>
|
||||
<br>
|
||||
<div class="button" id="toggleNumbers" onclick="ToggleNumbers();">Numbers On</div>
|
||||
<div class="button" id="toggleFlash" onclick="ToggleFlash();">Flashing On</div>
|
||||
<br>
|
||||
<div id="version"></div>
|
||||
</div>
|
||||
<div id="rightPanel">
|
||||
<div id="store">
|
||||
</div>
|
||||
<!--
|
||||
<div id="ads">
|
||||
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="donate" style="margin:0px 16px;">
|
||||
<--<small style="opacity:0.5;">it ain't gonna host itself</small><br>->
|
||||
<input type="hidden" name="cmd" value="_s-xclick">
|
||||
<input type="hidden" name="hosted_button_id" value="BBN2WL3TC6QH4">
|
||||
<input type="image" src="https://www.paypalobjects.com/en_GB/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal The safer, easier way to pay online.">
|
||||
<img alt="" border="0" src="https://www.paypalobjects.com/nl_NL/i/scr/pixel.gif" width="1" height="1">
|
||||
</form>
|
||||
<script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<-- Cookie Clicker ->
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:120px;height:240px"
|
||||
data-ad-client="ca-pub-8491708950677704"
|
||||
data-ad-slot="3046382095"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
<script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<-- Cookie Clicker ->
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:120px;height:240px"
|
||||
data-ad-client="ca-pub-8491708950677704"
|
||||
data-ad-slot="3046382095"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
</div>
|
||||
-->
|
||||
</div>
|
||||
<div id="middle">
|
||||
<div id="grandmas"></div>
|
||||
<div id="factories"></div>
|
||||
<div id="mines"></div>
|
||||
<div id="shipments"></div>
|
||||
<div id="labs"></div>
|
||||
<div id="portals"></div>
|
||||
<div id="times"></div>
|
||||
<div id="comment">Loading...</div>
|
||||
<div id="cookie" onmouseup="ClickCookie();" onmouseover="HoverCookie();"></div>
|
||||
</div>
|
||||
<div id="pops"></div>
|
||||
</div>
|
||||
<div id="alert"></div>
|
||||
<script>
|
||||
function eventFire(el, etype){
|
||||
if (el.fireEvent) {
|
||||
(el.fireEvent('on' + etype));
|
||||
} else {
|
||||
var evObj = document.createEvent('Events');
|
||||
evObj.initEvent(etype, true, false);
|
||||
el.dispatchEvent(evObj);
|
||||
}
|
||||
}
|
||||
function l(what) {return document.getElementById(what);}
|
||||
Game=l('game');
|
||||
Version=0.1251;
|
||||
l('version').innerHTML='running v.'+Version;
|
||||
Loaded=0;
|
||||
function Beautify(what)//turns 9999999 into 9,999,999
|
||||
{
|
||||
var str='';
|
||||
what=Math.floor(what);
|
||||
what=(what+'').split('').reverse();
|
||||
for (var i in what)
|
||||
{
|
||||
if (i%3==0 && i>0) str=','+str;
|
||||
str=what[i]+str;
|
||||
}
|
||||
return str;
|
||||
}
|
||||
//CookieSave='<?php echo ($_COOKIE['CookieClickerSave']?('1|'.$_COOKIE['CookieClickerSave']):'0'); ?>';
|
||||
var str='';
|
||||
var pics=['cursor','grandma','mine','factory','lab','shipment','goldengrandma','grandmaiconinvert','grandmaiconlustful','portal','skellington','kaleigrandma','factorygrandma','minegrandma','shipmentgrandma','portalgrandma','pledgedgrandma','pledgeicon','timemachine','timegrandma'];
|
||||
for (var i in pics) {str+='<img src="'+pics[i]+'.png"/>';}
|
||||
l('hiddenLoader').innerHTML=str;
|
||||
Cookies=0;
|
||||
CookiesDisplay=0;
|
||||
Clicking=0;
|
||||
Hovering=0;
|
||||
T=0;
|
||||
Cursors=0;
|
||||
Grandmas=0;
|
||||
Factories=0;
|
||||
Mines=0;
|
||||
Shipments=0;
|
||||
Labs=0;
|
||||
Portals=0;
|
||||
Times=0;
|
||||
Pledge=0;
|
||||
NumbersOn=1;
|
||||
Flashing=1;
|
||||
StoreToRebuild=0;
|
||||
function ToggleNumbers()
|
||||
{
|
||||
if (NumbersOn) {NumbersOn=0;l('toggleNumbers').innerHTML='Numbers Off';}
|
||||
else if (!NumbersOn) {NumbersOn=1;l('toggleNumbers').innerHTML='Numbers On';}
|
||||
}
|
||||
function ToggleFlash()
|
||||
{
|
||||
if (Flashing) {Flashing=0;l('toggleFlash').innerHTML='Flashing Off';}
|
||||
else if (!Flashing) {Flashing=1;l('toggleFlash').innerHTML='Flashing On';}
|
||||
}
|
||||
importSave=function()
|
||||
{
|
||||
var save=prompt('Please paste in the text that was given to you on save export.','');
|
||||
if (save && save!='') ImportResponse('1|'+save);
|
||||
Save();
|
||||
}
|
||||
exportSave=function()
|
||||
{
|
||||
var save=prompt('Copypaste this text and keep it somewhere safe! (yes, it\'s easy to edit - but remember : cheated cookies taste terrible!)',MakeSaveString());
|
||||
}
|
||||
ImportResponse=function(response)
|
||||
{
|
||||
var r=response.split('|');
|
||||
if (response!='0' && response)
|
||||
{
|
||||
if (r[0]=='1')
|
||||
{
|
||||
Cookies=parseInt(r[2]);
|
||||
Pledge=0;
|
||||
Cursors=Math.min(1000,parseInt(r[3]));Buyables['Cursor'].price=parseInt(r[4]);
|
||||
Grandmas=Math.min(1000,parseInt(r[5]));Buyables['Grandma'].price=parseInt(r[6]);
|
||||
Factories=Math.min(1000,parseInt(r[7]));Buyables['Factory'].price=parseInt(r[8]);
|
||||
Mines=Math.min(1000,parseInt(r[9]));Buyables['Mine'].price=parseInt(r[10]);
|
||||
Shipments=Math.min(1000,parseInt(r[11]));Buyables['Shipment'].price=parseInt(r[12]);
|
||||
Labs=Math.min(1000,parseInt(r[13]));Buyables['Alchemy lab'].price=parseInt(r[14]);
|
||||
if (r[15]) {Portals=Math.min(1000,parseInt(r[15]));Buyables['Portal'].price=parseInt(r[16]);}
|
||||
if (r[17]) {Times=Math.min(1000,parseInt(r[17]));Buyables['Time machine'].price=parseInt(r[18]);}
|
||||
Buyables['Grandma'].func(0);
|
||||
Buyables['Factory'].func(0);
|
||||
Buyables['Mine'].func(0);
|
||||
Buyables['Shipment'].func(0);
|
||||
Buyables['Alchemy lab'].func(0);
|
||||
Buyables['Portal'].func(0);
|
||||
Buyables['Time machine'].func(0);
|
||||
StoreToRebuild=1;
|
||||
}
|
||||
}
|
||||
new Pop('credits','Imported.');
|
||||
}
|
||||
Reset=function()
|
||||
{
|
||||
if (confirm('Do you REALLY want to start over?'))
|
||||
{
|
||||
document.cookie='CookieClickerSave=0; expires=Fri, 3 Aug 2001 20:47:11 UTC;';
|
||||
ResetResponse();
|
||||
}
|
||||
//ajax('backend.php?q=reset',ResetResponse);
|
||||
}
|
||||
ResetResponse=function()
|
||||
{
|
||||
location.reload(true);
|
||||
}
|
||||
MakeSaveString=function()
|
||||
{
|
||||
var str='';
|
||||
str+=Version+'|'+parseInt(Cookies)+'|'+
|
||||
parseInt(Cursors)+'|'+parseInt(Buyables['Cursor'].price)+'|'+
|
||||
parseInt(Grandmas)+'|'+parseInt(Buyables['Grandma'].price)+'|'+
|
||||
parseInt(Factories)+'|'+parseInt(Buyables['Factory'].price)+'|'+
|
||||
parseInt(Mines)+'|'+parseInt(Buyables['Mine'].price)+'|'+
|
||||
parseInt(Shipments)+'|'+parseInt(Buyables['Shipment'].price)+'|'+
|
||||
parseInt(Labs)+'|'+parseInt(Buyables['Alchemy lab'].price)+'|'+
|
||||
parseInt(Portals)+'|'+parseInt(Buyables['Portal'].price)+'|'+
|
||||
parseInt(Times)+'|'+parseInt(Buyables['Time machine'].price);
|
||||
return str;
|
||||
}
|
||||
SaveTimer=30*60;
|
||||
Save=function()
|
||||
{
|
||||
var str=MakeSaveString();
|
||||
//ajax('backend.php?q=save|'+str,SaveResponse);
|
||||
var now=new Date();//we storin dis for 5 years, people
|
||||
now.setFullYear(now.getFullYear()+5);//mmh stale cookies
|
||||
str='CookieClickerSave='+escape(str)+'; expires='+now.toUTCString()+';';
|
||||
document.cookie=str;//aaand save
|
||||
//alert(document.cookie);
|
||||
if (document.cookie.indexOf('CookieClickerSave')<0) Pop('credits','<span style="color:#f00;">Error while saving.<br>Export your save instead!</span>');
|
||||
else Pop('credits','Saved');
|
||||
SaveTimer=30*60;
|
||||
}
|
||||
SaveResponse=function(response)
|
||||
{
|
||||
var r=response.split('|');
|
||||
if (r[0]=='1' && parseFloat(r[1])>Version)
|
||||
{
|
||||
l('alert').style.visibility='visible';
|
||||
l('alert').innerHTML='New version available ('+r[1]+').<br>Please refresh to see it!';
|
||||
}
|
||||
if (r[0]=='1') new Pop('credits','Saved');
|
||||
else new Pop('credits','<span style="color:#f00;">Error while saving</span>');
|
||||
}
|
||||
Load=function()
|
||||
{
|
||||
var str='0';
|
||||
if (document.cookie.indexOf('CookieClickerSave')>=0) str='1|'+unescape(document.cookie.split('CookieClickerSave=')[1]);//get cookie here
|
||||
//ajax('backend.php?q=load',LoadResponse);
|
||||
LoadResponse(str);
|
||||
l('comment').innerHTML='Loading cookie...';
|
||||
//LoadResponse(CookieSave);
|
||||
}
|
||||
LoadResponse=function(response)
|
||||
{
|
||||
var r=response.split('|');
|
||||
if (response!='0' && response)
|
||||
{
|
||||
if (r[0]=='1')
|
||||
{
|
||||
Cookies=parseInt(r[2]);
|
||||
Pledge=0;
|
||||
Cursors=Math.min(1000,parseInt(r[3]));Buyables['Cursor'].price=parseInt(r[4]);
|
||||
Grandmas=Math.min(1000,parseInt(r[5]));Buyables['Grandma'].price=parseInt(r[6]);
|
||||
Factories=Math.min(1000,parseInt(r[7]));Buyables['Factory'].price=parseInt(r[8]);
|
||||
Mines=Math.min(1000,parseInt(r[9]));Buyables['Mine'].price=parseInt(r[10]);
|
||||
Shipments=Math.min(1000,parseInt(r[11]));Buyables['Shipment'].price=parseInt(r[12]);
|
||||
Labs=Math.min(1000,parseInt(r[13]));Buyables['Alchemy lab'].price=parseInt(r[14]);
|
||||
if (r[15]) {Portals=Math.min(1000,parseInt(r[15]));Buyables['Portal'].price=parseInt(r[16]);}
|
||||
if (r[17]) {Times=Math.min(1000,parseInt(r[17]));Buyables['Time machine'].price=parseInt(r[18]);}
|
||||
Buyables['Grandma'].func(0);
|
||||
Buyables['Factory'].func(0);
|
||||
Buyables['Mine'].func(0);
|
||||
Buyables['Shipment'].func(0);
|
||||
Buyables['Alchemy lab'].func(0);
|
||||
Buyables['Portal'].func(0);
|
||||
Buyables['Time machine'].func(0);
|
||||
StoreToRebuild=1;
|
||||
}
|
||||
}
|
||||
new Pop('credits','Loaded.');
|
||||
Loaded=1;
|
||||
Main();
|
||||
}
|
||||
ClickCookie=function()
|
||||
{
|
||||
var howmany=(Pledge>0?Math.ceil(Cursors*1.5):1);
|
||||
Cookies+=howmany;
|
||||
if (Pops.length<260 && NumbersOn) new Pop('cookie','+'+howmany);
|
||||
Clicking=1;
|
||||
}
|
||||
HoverCookie=function()
|
||||
{
|
||||
Hovering=1;
|
||||
}
|
||||
AddCookie=function(howmany,el)
|
||||
{
|
||||
Cookies+=howmany;
|
||||
if (el && Pops.length<250 && NumbersOn) new Pop(el,'+'+howmany);
|
||||
}
|
||||
RebuildStore=function()
|
||||
{
|
||||
var str='';
|
||||
for (var i in Buyables)
|
||||
{
|
||||
var amount=0;
|
||||
if (Buyables[i].name=='Cursor') amount=Cursors;
|
||||
else if (Buyables[i].name=='Grandma') amount=Grandmas;
|
||||
else if (Buyables[i].name=='Factory') amount=Factories;
|
||||
else if (Buyables[i].name=='Mine') amount=Mines;
|
||||
else if (Buyables[i].name=='Shipment') amount=Shipments;
|
||||
else if (Buyables[i].name=='Alchemy lab') amount=Labs;
|
||||
else if (Buyables[i].name=='Portal') amount=Portals;
|
||||
else if (Buyables[i].name=='Time machine') amount=Times;
|
||||
str+='<div id="buy'+Buyables[i].name+'" onclick="Buy(\''+Buyables[i].name+'\');" style="'+(Buyables[i].name=='Elder Pledge'?'display:none;':'')+(Buyables[i].name=='Time machine'?'font-size:90%;':'')+'background-image:url('+Buyables[i].pic+'.png);"><b>'+Buyables[i].name+' - <moni></moni> '+Beautify(Buyables[i].price)+'</b>'+Buyables[i].desc+''+(amount>0?('<div class="amount">'+amount+'</div>'):'')+'</div>';
|
||||
}
|
||||
l('store').innerHTML=str;
|
||||
StoreToRebuild=0;
|
||||
}
|
||||
Buyables=[];
|
||||
Buyable=function(name,desc,pic,price,func)
|
||||
{
|
||||
this.name=name;
|
||||
this.desc=desc;
|
||||
this.pic=pic;
|
||||
this.price=price;
|
||||
this.func=func;
|
||||
Buyables[name]=this;
|
||||
this.Buy=function()
|
||||
{
|
||||
if (Cookies>=this.price && Loaded)
|
||||
{
|
||||
Cookies-=this.price;
|
||||
this.price=Math.ceil(this.price*1.1);
|
||||
this.func(1);
|
||||
//Buyables[this.name]=0;
|
||||
StoreToRebuild=1;
|
||||
}
|
||||
}
|
||||
StoreToRebuild=1;
|
||||
}
|
||||
Buy=function(what)
|
||||
{
|
||||
Buyables[what].Buy();
|
||||
}
|
||||
new Buyable('Cursor','Autoclicks every 5 seconds.','cursoricon',15,function(){Cursors++;});
|
||||
new Buyable('Grandma','A nice grandma to bake more cookies.','grandmaicon',100,function(buy)
|
||||
{
|
||||
if (buy) Grandmas++;
|
||||
var str='';
|
||||
for (var i=0;i<Grandmas;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*24);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*24);
|
||||
var cl=0;
|
||||
if (Labs && Math.random()<0.2) cl='goldengrandma';
|
||||
if (Factories && Math.random()<0.2) cl='factorygrandma';
|
||||
if (Mines && Math.random()<0.2) cl='minegrandma';
|
||||
if (Shipments && Math.random()<0.2) cl='shipmentgrandma';
|
||||
if (Portals && Pledge<=0 && Math.random()<0.2) cl='portalgrandma';
|
||||
if (Times && Math.random()<0.2) cl='timegrandma';
|
||||
if (Pledge && Math.random()<0.2) cl='pledgedgrandma';
|
||||
str+='<div class="'+(cl?cl+' ':'')+'grandma" style="left:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('grandmas').innerHTML=str;
|
||||
});
|
||||
new Buyable('Factory','Produces large quantities of cookies.','factoryicon',500,function(buy)
|
||||
{
|
||||
if (buy) Factories++;
|
||||
if (buy && Factories==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Factories;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*32);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*24);
|
||||
str+='<div class="factory" style="right:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('factories').innerHTML=str;
|
||||
});
|
||||
new Buyable('Mine','Mines out cookie dough and chocolate chips.','mineicon',2000,function(buy)
|
||||
{
|
||||
if (buy) Mines++;
|
||||
if (buy && Mines==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Mines;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*16);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*16);
|
||||
str+='<div class="mine" style="left:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('mines').innerHTML=str;
|
||||
});
|
||||
new Buyable('Shipment','Brings in fresh cookies from the cookie planet.','shipmenticon',7000,function(buy)
|
||||
{
|
||||
if (buy) Shipments++;
|
||||
if (buy && Shipments==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Shipments;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*24);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*24);
|
||||
str+='<div class="shipment" style="right:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('shipments').innerHTML=str;
|
||||
});
|
||||
new Buyable('Alchemy lab','Turns gold into cookies!','labicon',50000,function(buy)
|
||||
{
|
||||
if (buy) Labs++;
|
||||
if (buy && Labs==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Labs;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*24);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*16);
|
||||
str+='<div class="lab" style="right:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('labs').innerHTML=str;
|
||||
});
|
||||
new Buyable('Portal','Opens a door to the Cookieverse.','portalicon',1000000,function(buy)
|
||||
{
|
||||
if (buy) Portals++;
|
||||
if (buy && Portals==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Portals;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*24);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*24);
|
||||
str+='<div class="portal" style="right:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('portals').innerHTML=str;
|
||||
});
|
||||
new Buyable('Time machine','<span style="font-size:80%;">Brings cookies from the past, before they were even eaten.</span>','timemachineicon',123456789,function(buy)
|
||||
{
|
||||
if (buy) Times++;
|
||||
if (buy && Times==1) Buyables['Grandma'].func();
|
||||
var str='';
|
||||
for (var i=0;i<Times;i++)
|
||||
{
|
||||
var x=Math.floor(Math.random()*20+(i%10)*24);
|
||||
var y=Math.floor(Math.random()*20+Math.floor(i/10)*24);
|
||||
str+='<div class="time" style="right:'+x+'px;top:'+y+'px;"></div>';
|
||||
}
|
||||
l('times').innerHTML=str;
|
||||
});
|
||||
new Buyable('Elder Pledge','<span style="font-size:80%;">Puts an end to the Ancients\' wrath, at least for a while.</span>','pledgeicon',666666,function(buy)
|
||||
{
|
||||
if (buy) {Pledge*=2;Pledge+=30*60*10;}
|
||||
if (buy) Buyables['Grandma'].func();
|
||||
l('buyElder Pledge').style.display='none';
|
||||
});
|
||||
Pops=[];
|
||||
Pop=function(el,str)
|
||||
{
|
||||
this.el=el;
|
||||
this.str=str;
|
||||
this.life=0;
|
||||
this.offx=Math.floor(Math.random()*20-10);
|
||||
this.offy=Math.floor(Math.random()*20-10);
|
||||
Pops.push(this);
|
||||
}
|
||||
Main=function()
|
||||
{
|
||||
var str='';
|
||||
if (StoreToRebuild)
|
||||
{
|
||||
RebuildStore();
|
||||
StoreToRebuild=0;
|
||||
}
|
||||
for (var i in Pops)
|
||||
{
|
||||
var rect=l(Pops[i].el).getBoundingClientRect();
|
||||
var x=Math.floor((rect.left+rect.right)/2+Pops[i].offx)-100;
|
||||
var y=Math.floor((rect.top+rect.bottom)/2-Math.pow(Pops[i].life/100,0.5)*100+Pops[i].offy)-10;
|
||||
var opacity=1-(Math.max(Pops[i].life,80)-80)/20;
|
||||
str+='<div class="pop" style="position:absolute;left:'+x+'px;top:'+y+'px;opacity:'+opacity+';">'+Pops[i].str+'</div>';
|
||||
Pops[i].life+=2;
|
||||
if (Pops[i].life>=100) Pops.splice(i,1);
|
||||
}
|
||||
l('pops').innerHTML=str;
|
||||
var str='';
|
||||
for (var i=0;i<Cursors;i++)
|
||||
{
|
||||
var rot=-Math.floor((360/Cursors)*i);
|
||||
var x=Math.floor(64+Math.sin((Math.PI*2/Cursors)*i)*64)-16;
|
||||
var y=Math.floor(64+Math.cos((Math.PI*2/Cursors)*i)*64)-16;
|
||||
if ((T)%150==Math.ceil((150/Cursors)*i)) y+=2;
|
||||
str+='<div class="cursor" style="left:'+x+'px;top:'+y+'px;transform:rotate('+rot+'deg);-webkit-transform:rotate('+rot+'deg);-moz-transform:rotate('+rot+'deg);-ms-transform:rotate('+rot+'deg);"></div>';
|
||||
}
|
||||
l('cookie').innerHTML=str;
|
||||
var grandmaGain=Math.ceil(4+(Factories?1:0)+(Mines?2:0)+(Shipments?3:0)+(Labs?4:0)+(Portals?(Pledge?5+Portals*0.5:5):0)+(Times?6:0));
|
||||
var cursorGain=(Pledge>0?Math.ceil(Cursors*1.5):1);
|
||||
if (Times && T%Math.ceil(150/Times)==0) AddCookie(123456,'times');
|
||||
if (Portals && T%Math.ceil(150/Portals)==0) AddCookie(6666,'portals');
|
||||
if (Labs && T%Math.ceil(150/Labs)==0) AddCookie(500,'labs');
|
||||
if (Shipments && T%Math.ceil(150/Shipments)==0) AddCookie(100,'shipments');
|
||||
if (Mines && T%Math.ceil(150/Mines)==0) AddCookie(50,'mines');
|
||||
if (Factories && T%Math.ceil(150/Factories)==0) AddCookie(20,'factories');
|
||||
if (Grandmas && T%Math.ceil(150/Grandmas)==0) AddCookie(grandmaGain,'grandmas');
|
||||
if (Cursors && T%Math.ceil(150/Cursors)==0) eventFire(l('cookie'),'mouseup');
|
||||
var cps=0;
|
||||
cps+=Times*123456/5;
|
||||
cps+=Portals*6666/5;
|
||||
cps+=Labs*500/5;
|
||||
cps+=Shipments*100/5;
|
||||
cps+=Mines*50/5;
|
||||
cps+=Factories*20/5;
|
||||
cps+=Grandmas*grandmaGain/5;
|
||||
cps+=Cursors*cursorGain/5;
|
||||
var floater=Math.round(cps*10-Math.floor(cps)*10);
|
||||
cps=Beautify(cps)+(floater?('.'+floater):'');
|
||||
l('cps').innerHTML='cookies/second : '+cps;
|
||||
for (var i in Buyables)
|
||||
{
|
||||
if (Cookies>=Buyables[i].price) l('buy'+Buyables[i].name).className=''; else l('buy'+Buyables[i].name).className='grayed';
|
||||
}
|
||||
CookiesDisplay+=(Cookies-CookiesDisplay)*0.5;
|
||||
l('money').innerHTML=Beautify(Math.round(CookiesDisplay));
|
||||
var str='';
|
||||
if (Cookies<5) str='You feel like making cookies.<br>But nobody wants to eat your cookies.';
|
||||
else if (Cookies<25) str='Your cookies are popular<br>with your dog.';
|
||||
else if (Cookies<50) str='Your cookies are popular<br>with your family.';
|
||||
else if (Cookies<100) str='Your cookies are popular<br>in the neighborhood.';
|
||||
else if (Cookies<500) str='Your cookies are renowned<br>in the whole town!';
|
||||
else if (Cookies<2000) str='Your cookies are worth<br>a lot of money.';
|
||||
else if (Cookies<5000) str='Your cookies bring<br>all the boys to the yard.';
|
||||
else if (Cookies<10000) str='People come from very far away<br>to get a taste of your cookies.';
|
||||
else if (Cookies<17000) str='Kings and queens from all over the world<br>are enjoying your cookies.';
|
||||
else if (Cookies<30000) str='Your cookies have been named<br>a part of the world wonders.';
|
||||
else if (Cookies<60000) str='Your cookies have been placed<br>under government surveillance.';
|
||||
else if (Cookies<100000) str='The whole planet is<br>enjoying your cookies!';
|
||||
else if (Cookies<150000) str='Creatures from neighboring planets<br>wish to try your cookies.';
|
||||
else if (Cookies<250000) str='Elder gods from the whole cosmos<br>have awoken to taste your cookies.';
|
||||
else if (Cookies<400000) str='Your cookies have achieved sentience.';
|
||||
else if (Cookies<1000000) str='The universe has now turned into<br>cookie dough, to the molecular level.';
|
||||
else if (Cookies<1000000000) str='A local news station runs<br>a 10-minute segment about your cookies. Success!<br><span style="font-size:50%;">(you win a cookie)</span>';
|
||||
else str='it\'s time to stop playing<br><span style="font-size:50%;">(more fun milestones in the next update I promise)</span>';
|
||||
l('comment').innerHTML=str;
|
||||
if (Pledge>0) Pledge--;
|
||||
if (Cookies>=1000000 && Pledge<=0 && Flashing)
|
||||
{
|
||||
var r=(Cookies-1000000)/2000000;
|
||||
var r2=Math.max(0,(Cookies-100000000)/400000000);
|
||||
var icon='grandmaicon';
|
||||
if (Cookies>=2000000)
|
||||
{
|
||||
l('buyElder Pledge').style.display='block';
|
||||
if (Math.random()<0.02) icon='grandmaiconinvert';
|
||||
else if (Math.random()<0.02) icon='grandmaiconlustful';
|
||||
}
|
||||
if (Cookies>=10000000 && Math.random()<0.02) icon='skellington';
|
||||
if (Cookies>=1000000000) l('whole').style.background='url(kalei../experiments/cookie/grandma.png) '+Math.floor(T*0.2)+'px -'+Math.floor(T*0.1)+'px';
|
||||
else if (Math.random()<r)
|
||||
{
|
||||
l('whole').style.background='url('+icon+'.png) '+Math.floor(Math.random()*4)+'px '+Math.floor(Math.random()*4)+'px';
|
||||
l('whole').style.backgroundSize=Math.floor(r2*Math.random()*64+64)+'px '+Math.floor(r2*Math.random()*64+64)+'px ';
|
||||
}
|
||||
}//sorry
|
||||
else l('whole').style.background='#ccc';
|
||||
if (T%30==0 && Loaded) document.title=Beautify(Cookies)+' cookies - Cookie Clicker';
|
||||
Clicking=0;
|
||||
Hovering=0;
|
||||
SaveTimer--;
|
||||
if (SaveTimer==0 && Loaded) Save();
|
||||
T++;
|
||||
setTimeout(Main,1000/30);
|
||||
}
|
||||
Load();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user