/ ‘grepolis.user.js’
This commit is contained in:
@ -10,7 +10,7 @@
|
||||
//
|
||||
// @match http://*.grepolis.com/game/*
|
||||
//
|
||||
// @version 1.0.29
|
||||
// @version 1.0.30
|
||||
// @updateURL http://git.javil.eu/jan/userscripts/raw/master/grepolis.user.js
|
||||
// ==/UserScript==
|
||||
|
||||
@ -35,54 +35,65 @@
|
||||
};
|
||||
|
||||
console.log("Initializing...");
|
||||
windows = {};
|
||||
farm_ids = [1225, 1226, 1229, 1230, 1231];
|
||||
console.log("Setting timer to 5s");
|
||||
farm_ids.forEach(function(xFarmId) {
|
||||
console.log("Setting timer to 5s for Farm " + xFarmId);
|
||||
setTimeout(getWaresTick(xFarmId), 5000);
|
||||
});
|
||||
|
||||
setTimeout(getWaresTick, 5000);
|
||||
function getWaresTick() {
|
||||
var d = new Date();
|
||||
var dformat = "[" + [d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds()].join(':') + "]";
|
||||
$('.town_name').text(dformat);
|
||||
console.log($.map($(".indicator .amount"),function(v){return $(v).text()}).join(", "));
|
||||
mood = 0;
|
||||
if(!buttonIsInitialized() || w(btn[0]) == null) {
|
||||
console.log("Need to get btn again");
|
||||
if(GPWindowMgr.is_open(GPWindowMgr.TYPE_FARM_TOWN) < 1) {
|
||||
function getWaresTick(xFarmId) {
|
||||
return function() {
|
||||
var d = new Date();
|
||||
var dformat = "[" + [d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds()].join(':') + "]";
|
||||
$('.town_name').text(dformat);
|
||||
console.log($.map($(".indicator .amount"),function(v){return $(v).text()}).join(", "));
|
||||
|
||||
var windowId = windows[xFarmId];
|
||||
if(windowId == undefined){
|
||||
console.log("Opening new Window");
|
||||
getWaresWindow = GPWindowMgr.Create(
|
||||
var wnd = GPWindowMgr.Create(
|
||||
GPWindowMgr.TYPE_FARM_TOWN,
|
||||
'',
|
||||
{'action': "claim_info"},
|
||||
1225);
|
||||
setTimeout(getWaresTick, 500);
|
||||
xFarmId);
|
||||
windows[xFarmId] = wnd.getID();
|
||||
setTimeout(getWaresTick(xFarmId), 500);
|
||||
return;
|
||||
}
|
||||
btn = $(".farm_claim_box .farm_claim_res0 + div + a");
|
||||
mood = parseFloat($('#mood1').siblings().last().text());
|
||||
}
|
||||
if(btn.hasClass("farm_claim_button_inactive")) {
|
||||
var ts = $(".farm_next_claim_time").text();
|
||||
var minutes = ts.substring(2,4);
|
||||
var seconds = minutes * 60 + ts.substring(5,7) * 1;
|
||||
setTimeout(getWaresTick, seconds * 1000 + 1000);
|
||||
|
||||
$('.town_name').text(dformat + " +" + seconds + "s");
|
||||
console.log("btn is inactive, trying again in " + seconds + " seconds");
|
||||
if(getWaresWindow != null) {
|
||||
getWaresWindow.close();
|
||||
getWaresWindow = null;
|
||||
var wnd = GPWindowMgr.getWindowById(windowId);
|
||||
if(windowId == undefined){
|
||||
console.log("Window not open any more");
|
||||
setTimeout(getWaresTick(xFarmId), 50);
|
||||
return;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
var wndElemend = wnd.getElement();
|
||||
var btn = $(wndElement).find(".farm_claim_box .farm_claim_res0 + div + a");
|
||||
var mood = parseFloat($(wndElement).find('#mood1').siblings().last().text());
|
||||
|
||||
getWares(btn[0], mood);
|
||||
setTimeout(getWaresTick, 60 * 1000);
|
||||
}
|
||||
|
||||
function getWares(xGetWaresButton, xMood) {
|
||||
farm_ids.forEach(function(xFarmId) {
|
||||
getWaresFromFarm(xGetWaresButton, xMood, xFarmId);
|
||||
});
|
||||
if(btn.hasClass("farm_claim_button_inactive")) {
|
||||
var ts = $(".farm_next_claim_time").text();
|
||||
|
||||
if(ts != "bereit") {
|
||||
var minutes = ts.substring(2,4);
|
||||
var seconds = minutes * 60 + ts.substring(5,7) * 1;
|
||||
|
||||
|
||||
$('.town_name').text(dformat + " +" + seconds + "s");
|
||||
console.log("btn is inactive, trying again in " + seconds + " seconds");
|
||||
wnd.close();
|
||||
|
||||
setTimeout(getWaresTick(xFarmId), seconds * 1000 + 1000);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
getWaresFromFarm(btn[0], mood, xFarmId);
|
||||
setTimeout(getWaresTick(xFarmId), 60 * 1000);
|
||||
}
|
||||
}
|
||||
|
||||
function getWaresFromFarm(xGetWaresButton, xMood, xFarmId) {
|
||||
|
Reference in New Issue
Block a user