الجمعة 25 أكتوبر 2013 - الساعة الآن 00:03:39 صباحاً

السبت، 27 سبتمبر، 2014

jj


// vars
var times_goal_reached = 0;
var last_time_goal_reached = null;
var current_goal_tipped = 0;

cb.settings_choices = [
{name: 'tokens', type: 'int', minValue: 1, default: 100},
{name: 'goal_description', type: 'str', minLength: 1, maxLength: 255}
];

// handlers
cb.onTip(function(tip) {
current_goal_tipped += tip['amount']
if (current_goal_tipped >= cb.settings.tokens) {
goalReached();
}

update_subject();
cb.drawPanel();
});


cb.onDrawPanel(function(user) {
if (times_goal_reached == 0) {
return {
'template': '3_rows_of_labels',
'row1_label': 'Received / Goal (Total):',
'row1_value': '' + current_goal_tipped + ' / ' + cb.settings.tokens + ' (' + ((times_goal_reached * cb.settings.tokens) + current_goal_tipped) + ')',
'row2_label': 'Hit Goal For:',
'row2_value': '' + times_goal_reached + ' times',
'row3_label': 'Last Reached:',
'row3_value': 'Never'
};
} else {
return {
'template': '3_rows_of_labels',
'row1_label': 'Received / Goal (Total):',
'row1_value': '' + current_goal_tipped + ' / ' + cb.settings.tokens + ' (' + ((times_goal_reached * cb.settings.tokens) + current_goal_tipped) + ')',
'row2_label': 'Hit Goal For:',
'row2_value': '' + times_goal_reached + ' times',
'row3_label': 'Last Reached:',
'row3_value': '' + Math.floor(((new Date()).getTime() - last_time_goal_reached.getTime()) / 60000) + ' minutes ago'
};
}
});

// Functions

function refresh() {
cb.log("Refresh called");
cb.setTimeout(refresh, 20000);
cb.drawPanel();
}

function update_subject() {
var new_subject = cb.settings.goal_description +
" [" + tips_remaining() + " tokens remaining]";
cb.log("Changing subject to: " + new_subject);
cb.changeRoomSubject(new_subject);
}

function goalReached() {
last_time_goal_reached = new Date();

var curr_times_reached = Math.floor(current_goal_tipped / cb.settings.tokens);

for (var i = 0; i < curr_times_reached; i++) {
times_goal_reached++;
current_goal_tipped -= cb.settings.tokens;
cb.chatNotice("Goal was reached for the " + getNumberString(times_goal_reached) + " time!");
}
}

function getNumberString(number) {
var numberString = null;

if (number == 1) {
numberString = "1st";
} else if (number == 2) {
numberString = "2nd";
} else if (number == 3) {
numberString = "3rd";
} else {
numberString = "" + number + "th";
}

return (numberString);
}

function tips_remaining() {
var r = cb.settings.tokens - current_goal_tipped;
if (r < 0) {
return 0;
} else {
return r;
}
}

function init() {
update_subject();
}

init();
cb.setTimeout(refresh, 20000);
جميع الحقوق محفوظة مدونة الإبداع 2016
حقوق النشر محفوظة لـ : مدونة الإبداع ©