Every zone is ?

This is a challenge script. Use it if you want every zone to look like ? zone. Be careful!!! You can get overleveled if you don't look at the map in the bottom right corner.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name        Every zone is ?
// @namespace   TankScript
// @match       https://florr.io/*
// @grant       unsafeWindow
// @version     Dev 0.5_1
// @author      -
// @description This is a challenge script. Use it if you want every zone to look like ? zone. Be careful!!! You can get overleveled if you don't look at the map in the bottom right corner.
// ==/UserScript==
const proxy = new Proxy(unsafeWindow.HTMLCanvasElement.prototype.getContext, {
  apply(target, thisArg, args) {
    const ctx = Reflect.apply(...arguments);

    const prototype = Object.getPrototypeOf(ctx);
    const descriptors = Object.getOwnPropertyDescriptors(prototype);

    Object.defineProperties(prototype, {
      fillStyle: {
        get() {
          // console.log("Getting fillStyle");
          return descriptors.fillStyle.get.call(this);
        },

        set(value) {
          // console.log(Setting fillStyle to ${value});
          if (value == "#1EA761") value = "#4D5E56"
          if (value == "#DECF7C") value = "#4D5E56"
          if (value == "#B06655") value = "#4D5E56"
          if (value == "#4D5E56") value = "#4D5E56"
          descriptors.fillStyle.set.call(this, value);
          }
      }
    });

    return ctx;
  }
});

unsafeWindow.HTMLCanvasElement.prototype.getContext = proxy;