')
.attr('id', typeof(options.id) != 'undefined' ? options.id : "BTN_" + Engine.getGuid())
.addClass('button')
.text(typeof(options.text) != 'undefined' ? options.text : "button")
- .click(function() {
+ .click(function() {
if(!$(this).hasClass('disabled')) {
Button.cooldown($(this));
$(this).data("handler")($(this));
@@ -21,9 +21,9 @@ var Button = {
.data("handler", typeof options.click == 'function' ? options.click : function() { Engine.log("click"); })
.data("remaining", 0)
.data("cooldown", typeof options.cooldown == 'number' ? options.cooldown : 0);
-
+
el.append($("
").addClass('cooldown'));
-
+
if(options.cost) {
var ttPos = options.ttPos ? options.ttPos : "bottom right";
var costTooltip = $('
').addClass('tooltip ' + ttPos);
@@ -35,14 +35,14 @@ var Button = {
costTooltip.appendTo(el);
}
}
-
+
if(options.width) {
el.css('width', options.width);
}
-
+
return el;
},
-
+
setDisabled: function(btn, disabled) {
if(btn) {
if(!disabled && !btn.data('onCooldown')) {
@@ -53,18 +53,23 @@ var Button = {
btn.data('disabled', disabled);
}
},
-
+
isDisabled: function(btn) {
if(btn) {
return btn.data('disabled') === true;
}
return false;
},
-
+
cooldown: function(btn) {
var cd = btn.data("cooldown");
if(cd > 0) {
- $('div.cooldown', btn).stop(true, true).width("100%").animate({width: '0%'}, cd * 1000, 'linear', function() {
+ milliseconds = cd * 1000;
+ if (Engine.options.doubleTime){
+ milliseconds /= 2;
+ }
+
+ $('div.cooldown', btn).stop(true, true).width("100%").animate({width: '0%'}, milliseconds, 'linear', function() {
var b = $(this).closest('.button');
b.data('onCooldown', false);
if(!b.data('disabled')) {
@@ -75,7 +80,7 @@ var Button = {
btn.data('onCooldown', true);
}
},
-
+
clearCooldown: function(btn) {
$('div.cooldown', btn).stop(true, true);
btn.data('onCooldown', false);
@@ -83,4 +88,4 @@ var Button = {
btn.removeClass('disabled');
}
}
-};
\ No newline at end of file
+};
diff --git a/script/dropbox.js b/script/dropbox.js
index 82f4d72..95d7c91 100644
--- a/script/dropbox.js
+++ b/script/dropbox.js
@@ -121,7 +121,7 @@
onChoose: function () {
DropboxConnector.log('Save to slot ' + n + ' initiated');
// timeout prevents error due to fade out animation of the previous event
- window.setTimeout(function () {
+ Engine.setTimeout(function () {
DropboxConnector.log('Save to slot ' + n);
DropboxConnector.saveGameToDropbox(n, DropboxConnector.savedtoDropboxEvent);
}, 1000);
@@ -150,7 +150,7 @@
onChoose: function () {
DropboxConnector.log('Load from slot ' + n + ' initiated');
// timeout prevents error due to fade out animation of the previous event
- window.setTimeout(function () {
+ Engine.setTimeout(function () {
DropboxConnector.log('Load from slot ' + n);
DropboxConnector.loadGameFromDropbox(n);
}, 1000);
diff --git a/script/state_manager.js b/script/state_manager.js
index c42b5c5..2c4590f 100644
--- a/script/state_manager.js
+++ b/script/state_manager.js
@@ -371,7 +371,7 @@ var StateManager = {
if(changed){
$SM.fireUpdate('income', true);
}
- Engine._incomeTimeout = setTimeout($SM.collectIncome, 1000);
+ Engine._incomeTimeout = Engine.setTimeout($SM.collectIncome, 1000);
},
//Thieves