Auto Import Improvements

Automatically imports improvements if the import string is passed in as a comma separated string of values

  1. // ==UserScript==
  2. // @name Auto Import Improvements
  3. // @namespace https://politicsandwar.com/n/Talus
  4. // @match https://politicsandwar.com/city/improvements/import/id=*&c=*
  5. // @grant none
  6. // @version 1.0
  7. // @author Talus
  8. // @description Automatically imports improvements if the import string is passed in as a comma separated string of values
  9. // @license GPL-3.0-or-later
  10. // ==/UserScript==
  11.  
  12. if (document.querySelector('.alert.alert-success') != null) {
  13. // Import already performed
  14. return;
  15. }
  16. if (document.querySelector('.alert.alert-danger') != null) {
  17. // Check import requirements
  18. return;
  19. }
  20. var improvementNames = ["infra_needed","imp_total","imp_coalpower","imp_oilpower","imp_windpower","imp_nuclearpower","imp_coalmine","imp_oilwell","imp_uramine","imp_leadmine","imp_ironmine","imp_bauxitemine","imp_farm","imp_gasrefinery","imp_aluminumrefinery","imp_munitionsfactory","imp_steelmill","imp_policestation","imp_hospital","imp_recyclingcenter","imp_subway","imp_supermarket","imp_bank","imp_mall","imp_stadium","imp_barracks","imp_factory","imp_hangars","imp_drydock"];
  21. var urlParams = new URLSearchParams(window.location.href);
  22. var improvementsNumbers = urlParams.get('c');
  23. var improvementsArray = improvementsNumbers .split(',');
  24. var improvementsJson = {}
  25. for (var i = 0; i < improvementsArray .length; i++) {
  26. improvementsJson[improvementNames [i]] = improvementsArray [i];
  27. }
  28. document.querySelector('textarea[name="imp_import"]').value = JSON.stringify(improvementsJson);
  29. document.querySelector('input[name="imp_import_execute"]').click();