Advertisement
Guest User

Untitled

a guest
Jan 24th, 2020
343
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 2.79 KB | None | 0 0
  1. // ==UserScript==
  2. // @name         Wykresy TWStats w profilu
  3. // @version      1.1
  4. // @author       domi1948 (adaptacja "pod małpę" PabloCanaletto)
  5. // @match        *://*.plemiona.pl/game.php?*screen=info_player*
  6. // ==/UserScript==
  7.  
  8. (function() {
  9.     'use strict';
  10.  
  11.     var app = {
  12.         _config: null,
  13.  
  14.         load(config) {
  15.             this._config = config;
  16.  
  17.             // Create available options
  18.             let options = "";
  19.             Object.keys(this._config.stats)
  20.                 .forEach((s) => options +=
  21.                          `<option value="${s}">${this._config.stats[s]}</option>`);
  22.  
  23.             // Load all required elements
  24.             $('#player_info')
  25.                 .parent()
  26.                 .next()
  27.                 .prepend(`
  28.                     <table class="vis" width="100%"> \
  29.                         <tbody>
  30.                             <tr>
  31.                                 <th colspan="2">
  32.                                     <span style="padding-top: 20px; vertical-align: middle;">Statystyki gracza</span>
  33.  
  34.                                     <select id="change-stats" class="float_right">${options}</select>
  35.                                 </th>
  36.                            </tr>
  37.                            <tr>
  38.                                <td colspan="2" align="center">
  39.                                    <img id="profile-stats-img" src="${this.getImage("points")}" alt="Obraz">
  40.                                </td>
  41.                            </tr>
  42.                        </tbody>
  43.                    </table>
  44.                 `);
  45.  
  46.             $("#change-stats")
  47.                 .on('change', (e) => {
  48.                 let stat = $(e.delegateTarget)
  49.                 .val();
  50.  
  51.                 $('#profile-stats-img')
  52.                     .attr("src", app.getImage(stat));
  53.             });
  54.         },
  55.  
  56.         getImage(stat) {
  57.             let id = game_data.player.id;
  58.             let params = window.location.href
  59.             .split('?')[1]
  60.             .split('#')[0]
  61.             .split('&')
  62.             .forEach((e) => {
  63.                 if (e.includes("id")) {
  64.                     id = e.split('=')[1];
  65.                 }
  66.             });
  67.  
  68.  
  69.             let url = this._config.server
  70.             .replace("{world}", game_data.world)
  71.             .replace("{graph_type}", stat)
  72.             .replace("{player_id}", id);
  73.  
  74.             return url;
  75.         }
  76.     };
  77.  
  78.     app.load({
  79.         server: "http://pl.twstats.com/{world}/image.php?type=playergraph&graph={graph_type}&id={player_id}",
  80.         stats: {
  81.             "points": "Punkty",
  82.             "villages": "Wioski",
  83.             "od": "Pokonani",
  84.             "oda": "Pokonani atakujÄ…cy",
  85.             "odd": "Pokonani obroÅ„cy",
  86.             "rank": "Ranking"
  87.         }
  88.     });
  89. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement