DC City Redux

Amélioration graphique de la ville de Dreadcast

当前为 2024-10-07 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name DC City Redux
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1.3
  5. // @description Amélioration graphique de la ville de Dreadcast
  6. // @author M0lly
  7. // @match https://www.dreadcast.net/Main
  8. // @grant none
  9. // @license A definir
  10. // ==/UserScript==
  11.  
  12. // TEST UPDATE FORK
  13.  
  14. (function() {
  15. 'use strict';
  16.  
  17. // URL des fichiers .gif avec les bâtiments personnalisés
  18. const newBuildingGif = 'https://dc-buldings.netlify.app/carte_batiments.gif';
  19. const newRoadGif = 'https://dc-buldings.netlify.app/carte_rues_s1.png';
  20.  
  21. //Fonction updateImages() pour remplacer à la fois les lignes avec la classe .case_map (pour les batiments) et la div avec l'url de la map des rues du S1
  22. const updateImages = () => {
  23. document.querySelectorAll('.case_map').forEach(el => {
  24. el.style.backgroundImage = `url(${newBuildingGif})`;
  25. });
  26. document.querySelectorAll('div[style*="images/carte/carte_rues_s1.png"]').forEach(div => {
  27. div.style.backgroundImage = `url(${newRoadGif})`;
  28. });
  29. };
  30.  
  31. // Initialisaton de l'update des images au lancement du script
  32. updateImages();
  33.  
  34. // Creation d'un MutationObserver pour catch les changements du DOM.
  35. const observer = new MutationObserver(mutations => {
  36. let shouldUpdate = false;
  37. for (let mutation of mutations) {
  38. if (mutation.addedNodes.length > 0) {
  39. shouldUpdate = true;
  40. break;
  41. }
  42. }
  43. if (shouldUpdate) updateImages();
  44. });
  45.  
  46. observer.observe(document.body, { childList: true, subtree: true });
  47.  
  48. //
  49. // const updateLoop = () => {
  50. // updateImages();
  51. // requestAnimationFrame(updateLoop);
  52. // };
  53. // requestAnimationFrame(updateLoop);
  54. })();