Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Distribution capital "améliorée"
- // @version 0.1b
- // @author WhiteSlash
- // @match http://leekwars.com/*
- // @grant $
- // ==/UserScript==
- var aInputsToSubmit = [];
- var aSelectors = ['#add-force', '#add-life', '#add-agility', '#add-wisdom'];
- var processQueue = false;
- var labelGo = "Repartir les points !";
- var labelStop = "STOP !!!";
- function addInput(sSourceSelector){
- sHtmlInput = $('<input class="custom-stat-input" data-linked-add="'+sSourceSelector+'" value="0" type="text" style="width:50px"/>');
- $(sSourceSelector)./*hide().*/after(sHtmlInput).after($('<br>'));
- aInputsToSubmit.push(sHtmlInput);
- }
- function isAddable(sSelector){
- return !$(sSelector).hasClass('locked') && $(sSelector).is(':visible');
- }
- $(function(){
- //Ajout des input et du champs "go"
- for(var i=0; i < aSelectors.length ;i++){
- if(isAddable(aSelectors[i])){
- addInput(aSelectors[i]);
- }
- }
- if(aInputsToSubmit.length){
- //addInputEvents
- for(var i = 0 ; i < aInputsToSubmit.length; i++){
- addInputEvents(aInputsToSubmit[i]);
- }
- $('#capital').after('<div id="custom-stat-submit" class="button">'+labelGo+'</div>');
- //addSubmitEvents
- addSubmitEvents($('#custom-stat-submit'));
- }
- setInterval(function(){
- if(!processQueue)
- return;
- for(var i = 0 ; i < aInputsToSubmit.length; i++){
- var valueBefore = 0;
- if( (valueBefore = parseInt(aInputsToSubmit[i].val(),10)) != 0){
- $( aInputsToSubmit[i].attr('data-linked-add') ).click();
- aInputsToSubmit[i].val(valueBefore-1);
- return;
- }
- }
- $('#custom-stat-submit').text(labelGo);
- processQueue=false;
- }, 100);
- });//end dom ready
- function getTotalCapitalAvailable(){
- var total = parseInt( $('#capital-count').text(), 10);
- //console.log('getTotalCapitalAvailable(): returns ' + total);
- return total;
- }
- function getCapitaAlreadyUsedButNotBy(target){
- var totalUsed = 0;
- for(var i = 0 ; i < aInputsToSubmit.length; i++){
- if(target.attr('data-linked-add') != aInputsToSubmit[i].attr('data-linked-add')){
- totalUsed += parseInt(aInputsToSubmit[i].val(), 10);
- }
- }
- //console.log('getCapitaAlreadyUsedButNotBy(): returns ' + totalUsed);
- return totalUsed;
- }
- function addInputEvents(target){
- target.bind('keyup', function(){
- if($(this).val()=='')
- return true;//on vient de tout effacer
- var value = parseInt($(this).val(),10);
- if(isNaN(value) || value < 0)
- value=0;
- if(value + getCapitaAlreadyUsedButNotBy($(this)) > getTotalCapitalAvailable() )
- value = getTotalCapitalAvailable() - getCapitaAlreadyUsedButNotBy($(this));
- $(this).val(value);
- return true;
- });
- }
- function addSubmitEvents(target){
- target.click(function(){
- if($(this).text() == labelGo){
- processQueue = true;
- $(this).text(labelStop);
- }
- else if($(this).text() == labelStop){
- processQueue = false;
- $(this).text(labelGo);
- }
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement