NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name Castle Age Stat Box // @namespace CA Stats // @oujs:author Yack // @description A box with your current stats, updates after every click. // @require http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js // @include https://web3.castleagegame.com/castle_ws/* // @exclude https://web3.castleagegame.com/castle_ws/connect_login.php // @version 1.03 // ==/UserScript== var Energy, Stamina, Health, Gold, Xp; var globalContainer = document.querySelector('#globalContainer'); $(globalContainer).ready(function() { process_box(); }); globalContainer.addEventListener('click', function(event) { Energy = $("#energy_current_value")[0].textContent; Stamina = $("#stamina_current_value")[0].textContent; Health = $("#health_current_value")[0].textContent; Goldx = $('#headerPersistGoldRefill > div > div:nth-child(2) > div > div:nth-child(2)')[0].textContent; Gold = Goldx.substring(38,Goldx.indexOf(" gold")); Xp = document.getElementById("header_player_xp_needed").childNodes[1].textContent; Levels = $("#main_sts_container")[0].innerHTML; Level = Levels.substring(Levels.indexOf('#ffffff">Level:')+16,Levels.indexOf('</div></a> </div>')); $("#ener")[0].innerHTML = Energy; $("#hp")[0].innerHTML = Health; $("#stam")[0].innerHTML = Stamina; $("#gold")[0].innerHTML = Gold; $("#xp")[0].innerHTML = Xp; $("#lvl")[0].innerHTML = Level; }, true); function process_box(){ var navbar = document.getElementById('globalContainer'); var box = document.createElement("div"); Energy = $("#energy_current_value")[0].textContent; Stamina = $("#stamina_current_value")[0].textContent; Health = $("#health_current_value")[0].textContent; Goldx = $('#headerPersistGoldRefill > div > div:nth-child(2) > div > div:nth-child(2)')[0].textContent; Gold = Goldx.substring(38,Goldx.indexOf(" gold")); Xp = document.getElementById("header_player_xp_needed").childNodes[1].textContent; Levels = $("#main_sts_container")[0].innerHTML; Level = Levels.substring(Levels.indexOf('#ffffff">Level:')+16,Levels.indexOf('</div></a> </div>')); box.innerHTML = '<div id="myBoxOfStats" style="position:fixed;top:40%;left:50px; float: left; font-family: Verdana; text-align:left;'+ 'font-size: 0.2em !important; font-variant:small-caps; background-color: grey; border:0.2em solid black; ' + 'color: black;" >' + '<table border="0" bordercolor="" width="0" bgcolor="">' + '<tr>' + '<td>' + 'Level: ' + '</td>' + '<td id="lvl">' + Level + '</td>' + '</tr>' + '<tr>'+ '<td>' + 'Health: ' + '</td>' + '<td id="hp">' + Health + '</td>' + '</tr>' + '<tr>'+ '<td>' + 'Energy: ' + '</td>' + '<td id="ener">' + Energy + '</td>' + '</tr>' + '<tr>'+ '<td>' + 'Stamina: ' + '</td>' + '<td id="stam">' + Stamina + '</td>' + '</tr>' + '<tr>'+ '<td>' + 'Gold: ' + '</td>' + '<td id="gold">' + Gold + '</td>' +'</tr>'+ '<tr>'+ '<td>' + 'XP Needed: ' + '</td>' + '<td id="xp">' + Xp + '</td>' +'</tr>'+ '</table>' + '</div>'; navbar.parentNode.insertBefore(box, navbar); }