Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- javascript: /* @name: Rooftochten @author: Warre @new editor: Justin @description: Stuur je rooftochten snel en slim */
- var $content = $('#scavenge_screen');
- if ($content.length > 0) {
- $.get('game.php?screen=overview', function(html) {
- var bonus = 0;
- $(html).find('#show_effects').find('table').first().find('tr:contains("buit")').each(function() {
- bonus += parseInt($(this).text().match(/\d+/));
- });
- console.log(bonus);
- var $btns1 = $content.find('.unlock-button').not('.btn-disabled');
- var $popup = $('.scavenge-option-unlock-dialog');
- var $warn = $popup.find('.costs').find('.warn');
- var $cd = $('.unlock-countdown');
- if ($btns1.length == 0 || ($popup.length > 0 && $warn.length > 0) || $cd.length > 0) {
- if (localStorage.getItem('date_rooftochten'+game_data.player.name + game_data.world) == null) {
- function strpad00(s) {
- s = s + '';
- if (s.length === 1) s = '0' + s;
- return s;
- };
- var now = new Date();
- var currentDate_popup = now.getFullYear() + "-" + strpad00(now.getMonth() + 1) + "-" + strpad00(now.getDate()) + " " + strpad00(now.getHours()) + ":00:00";
- console.log(currentDate_popup);
- var date_rooftochten = prompt('Voer gewenste rooftochten terugkomst in \n JJJJ-MM-DD HH:MM:SS', currentDate_popup)
- if (!(/\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/.test(date_rooftochten))) {
- alert('Geen geldige datum en tijd, probeer het opnieuw');
- clear();
- } else {
- var date_to_timestamp = new Date(date_rooftochten).getTime();
- localStorage.setItem('date_rooftochten'+game_data.player.name + game_data.world, date_to_timestamp);
- }
- };
- var max_send_time = 43200; // 12 uur in secondes
- const countDownDate = localStorage.getItem('date_rooftochten'+game_data.player.name + game_data.world);
- var distance1 = 0;
- var distance = (countDownDate - Date.now()) / 1000;
- console.log(distance);
- if (distance < 1800) {
- alert('De minimale rooftochten loop tijd is 30 minutten'+game_data.player.name + game_data.world);
- clear();
- };
- if (distance > max_send_time) { // 2 uur
- if (localStorage.getItem('max_rooftochten_time'+game_data.player.name + game_data.world) == null) {
- var roof_hour = distance / 60 / 60;
- var max_rooftochten_time = prompt('Weet je zeker dat je ' + (Math.round(roof_hour * 10) / 10) + ' uur wilt roven ? \n \n Voer ja of nee/ in:', 'nee');
- if (/(ja|yes)/.test(max_rooftochten_time.toLowerCase())) {
- localStorage.setItem('max_rooftochten_time'+game_data.player.name + game_data.world, countDownDate);
- } else {
- clear();
- };
- } else {
- if (localStorage.getItem('max_rooftochten_time'+game_data.player.name + game_data.world) !== countDownDate) {
- clear();
- };
- };
- };
- if ((distance > 1800) && (distance < max_send_time) || (localStorage.getItem('max_rooftochten_time'+game_data.player.name + game_data.world) !== null)) {
- distance1 = distance
- };
- function clear() {
- localStorage.removeItem('date_rooftochten'+game_data.player.name + game_data.world);
- localStorage.removeItem('max_rooftochten_time'+game_data.player.name + game_data.world);
- location.reload()
- };
- // De eenheden die gebruikt mogen worden om te versturen met de nodige informatie (haul = hoe veel gs een eenheid kan dragen, type = off / def)
- var units = {
- 'spear': {'haul': 25, 'type': 'def'},
- 'sword': {'haul': 15, 'type': 'def'},
- 'axe': {'haul': 10, 'type': 'off'},
- 'archer': {'haul': 10, 'type': 'def'},
- 'marcher': {'haul': 50, 'type': 'off'},
- 'light': {'haul': 80, 'type': 'off'},
- 'heavy': {'haul': 50, 'type': 'def'}
- };
- var $btns = $content.find('.btn-default').not('.btn-disabled, .unlock-button');
- var haul = 0;
- var type = {'off': 0, 'def': 0};
- if (bonus > 0) for (var prop in units) units[prop].haul = (units[prop].haul + (units[prop].haul /100 * bonus));
- for (var prop in units) {
- var amount = parseInt($content.find('.units-entry-all[data-unit="' + prop + '"]').text().match(/\d+/));
- haul = haul + parseInt(amount * units[prop].haul);
- type[units[prop].type] = type[units[prop].type] + amount;
- }
- if ($btns.length > 0 && haul > 0) {
- var $btn = $btns.last();
- var current = $btn.closest('.scavenge-option').find('.title').text().trim();
- var scavengeObject = JSON.parse($('html').find('script:contains("ScavengeScreen")').html().match(/\{.*\:\{.*\:.*\}\}/g)[1]);
- var scavengeIndex = {
- 'Flegmatische Fielt': '1',
- 'Bescheiden Bandieten': '2',
- 'Slimme Speurders': '3',
- 'Reuze Rovers': '4'
- };
- var scavangeInfo = scavengeObject[scavengeIndex[current]];
- var troop_type = (type.off > type.def) ? 'off' : 'def';
- var loot = Math.pow(Math.pow(((distance1 / scavangeInfo.duration_factor) - scavangeInfo.duration_initial_seconds), (1 / scavangeInfo.duration_exponent)) / 100, 1 / 2) / scavangeInfo.loot_factor;
- var send = 0;
- for (var prop in units) {
- var ui = $('.unitsInput[name="' + prop + '"]');
- var needed = Math.round(loot / units[prop].haul);
- var max = parseInt($content.find('.units-entry-all[data-unit="' + prop + '"]').text().match(/\d+/));
- if (needed > max) {
- ui.val(max).trigger('change');
- loot = loot - (max * units[prop].haul);
- send = send + max;
- } else {
- ui.val(needed).trigger('change');
- send = send + needed;
- break;
- }
- }
- if (send >= 10) {
- $btn.trigger('click');
- } else {
- $('.arrowRight, .groupRight').trigger('click');
- }
- } else {
- $('.arrowRight, .groupRight').trigger('click');
- }
- } else {
- if ($popup.length > 0) {
- $popup.find('a').last().trigger('click');
- } else {
- $btns1.first().trigger('click');
- }
- }
- });
- } else {
- if (game_data.screen == 'settings') {
- var a = '<tr><td><a href="#"id="Delete" style="color:red;">Delete Rooftochten</a></td></tr>';
- $("#content_value td:contains('Data gebruik opties'):last").closest("tr").after(a)
- $('#Delete').on('click', function(){
- var Delete = confirm("Press a button!");
- if (Delete == true) {
- alert('De Rooftochten instellingen zijn verwijderd');
- localStorage.removeItem('date_rooftochten'+game_data.player.name + game_data.world);
- localStorage.removeItem('max_rooftochten_time'+game_data.player.name + game_data.world);
- location.reload()
- } else {
- alert('Je hebt de verwijdering van de rooftochten instellingen geanuleerd.!');
- }
- });
- } else {
- location.href = game_data.link_base_pure + 'place&mode=scavenge';
- }}
- void (0);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement