XPlus ContingameIME

# XPlus ContingameIME

An unofficial continuation of an unofficial continuation of [IngameIME](https://github.com/Windmill-City/IngameIME-Minecraft). An unofficial update of [ContingameIME](https://github.com/ThinkingStudios/ContingameIME).

Use input method in full screen Minecraft.

# Preview

### Window Mode

![](https://cdn-raw.modrinth.com/data/5Z2YdwIT/images/6c501fcda77c5e6619a75762bdb41e98c751a9e3.gif)

### Full screen Mode

![](https://cdn-raw.modrinth.com/data/5Z2YdwIT/images/1e2b0a16e2e2ef1338507579d969690340ec8c26.gif)

# Toggle Key

– Click the hotkey to switch between **temporary input state** and **closed state**
– Double-click the hot key to switch to **open mode**
– **temporary input state** switch to **closed State** when mouse move and something was committed

## Dependencies

– *Forge* (Not Supported ATM)
– [Kotlin for Forge](https://www.curseforge.com/minecraft/mc-mods/kotlin-for-forge)
– [Cloth Config API (Forge)](https://www.curseforge.com/minecraft/mc-mods/cloth-config)
– [Architectury API (Forge)](https://www.curseforge.com/minecraft/mc-mods/architectury-api)

– Fabric
– [Fabric Language Kotlin](https://www.curseforge.com/minecraft/mc-mods/fabric-language-kotlin)
– [Cloth Config API (Fabric)](https://www.curseforge.com/minecraft/mc-mods/cloth-config)
– [Architectury API (Fabric)](https://www.curseforge.com/minecraft/mc-mods/architectury-api)
– [Satin API](https://www.curseforge.com/minecraft/mc-mods/satin-api) **(Optional, conflicts with OptiFine)**

### This Mod requires VCRuntime141 to run, download it on the official website of Microsoft [Download Link](https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist)

# This mod code reference/use

– [Xieecao/C2GIME](https://github.com/Xieecao/C2GIME) (LGPL-2.1)
– [ThinkingStudios/ContingameIME](https://github.com/ThinkingStudios/ContingameIME) (LGPL-2.1)
– [Windmill-City/IngameIME-Minecraft](https://github.com/Windmill-City/IngameIME-Minecraft) (LGPL-2.1)
– [Wybxc/IngameIME-Minecraft](https://github.com/Wybxc/IngameIME-Minecraft) (LGPL-2.1)

XPlayerKits

banner

It’s a plugin that allows you to create kits for your players.
This plugin was created due to the lack of an optimized solution for this feature.
It uses very little RAM and is highly customizable.

| XPlayerKits | XLeaderboards | StellarProtect |
| — | — | — |

feature

**Unlike other plugins that load the data of every single player registered on your server (wasting precious resources), XPlayerKits takes a smarter approach.**
It only loads player data when they actually join, and keeps just the essential information cached. This means **significantly lower RAM usage** without sacrificing performance.

On top of that, XPlayerKits comes with **built-in SQLite support right out of the box**, giving you a reliable and lightweight database solution. No more dealing with the limitations and issues of storing player data in messy YML files.

features

### Features
– **Migration:** Migrate data and kits from another plugin to save resources and avoid inventory exploits.
– **Kit placeholder requirements:** Use a system to check placeholder conditions.
– **Fully editable inventory:** Customize the kit inventory with an item name system for icons.
– **Claim/Deny actions:** Set actions when claiming or denying a kit, such as commands or sounds.
– **In-game GUI:** Edit kits directly in-game, including properties, icons, and content.
– **One-Time Kits:** Create kits that can only be claimed once, stored in player data.
– **First Join Kit:** Deliver a kit to players the first time they join your server.
– **Database support:** MongoDB, MySQL, and SQLite are supported (Recommended: MongoDB).

commands

### Commands
– `/xkits editor` – Opens the editor for quick kit creation.
– `/xkits kits` – Opens the kit selection menu.
– `/xkits open [rotation/category]` – Opens the kit selection with category or rotation kits.
– `/xkits preview [player]` – Opens preview menu.
– `/xkits give ` – Give kits directly to players without checks.
– `/xkits claim ` – Give kits to players with checks.
– `/xkits reset ` – Reset a player’s data for a specific kit.
– `/xkits resetall ` – Reset all data for a player.
– `/xkits delete ` – Delete a kit.
– `/xkits migrate playerkits2_yml/playerkits2_mysql` – Migrate data from other plugins.
– `/xkits migratekits playerkits2` – Migrate kits from other plugins.

permissions

### Permissions
– `xkits.admin` – Allows players to use the `/xkits editor` and `/xkits slots` commands.
– `xkits.preview` – Allows players to use `/xkits preview`.
– `xkits.countdown.bypass` – Allows players to bypass kit countdowns.
– `xkits.onetime.bypass` – Allows players to bypass one-time restrictions.

placeholders

### Placeholders
– `%xplayerkits_cooldown_%` – Show the time to next claim.
– `%xplayerkits_claimed_onetime_%` – Return yes or no if the kit of player is claimed.
– `%xplayerkits_claimed_cooldown_%` – Return yes or no if the kit of player is in cooldown.

actions

### Actions
| Action | Description | Example |
|————————-|———————————————–|———————————————————–|
| console | Executes a command from the console. | `console:say test` |
| command | Executes a command as the player. | `command:dm open main` |
| sound | Plays a sound to the player. | `sound:ENTITY_ENDERMAN_TELEPORT;1.0f;1.0f` |
| playsound_resource_pack | Plays a sound from a resource pack. | `playsound_resource_pack:ENTITY_ENDERMAN_TELEPORT;1.0f;1.0f` |
| message | Sends a chat message to the player. | `message:You can’t claim this kit.` |
| center_message | Sends a centered message to the player. | `center_message:You can’t claim this kit.` |
| mini_message | Sends a MiniMessage formatted message. | `mini_message:You can’t claim this kit.` |
| broadcast | Sends a message to all players. | `broadcast:You can’t claim this kit.` |
| titles | Sends a title and subtitle to the player. | `titles:Kit Claimed!;<subtitle>Enjoy your rewards!`|<br /> | wait_ticks | Waits before executing the next action. | `wait_ticks:40` |</p> <p align="center"> <img decoding="async" src="https://i.imgur.com/OosO7SC.jpeg" alt="links"> </p> <p>| <a href="https://discord.gg/4R9teKVcbM" target="_blank"><img decoding="async" src="https://i.imgur.com/5mATCrI.jpeg" alt="Discord" /></a> | <a href="https://www.patreon.com/c/insideranh" target="_blank"><img decoding="async" src="https://i.imgur.com/G31oZIG.jpeg" alt="Patreon" /></a> | <a href="https://www.insideranh.dev/docs/xplayerkits" target="_blank"><img decoding="async" src="https://i.imgur.com/zdRGBIY.jpeg" alt="Wiki" /></a> |<br /> | — | — | — |</p> </article> <article> <h1>XpHearts by LinusYaw</h1> <p>This datapack adds the “XpHearts” feature.<br /> This gives you an additional heart. 30 experience levels are required to trigger it.<br /> /trigger ApplyHeart</p> <p>This was made by @LinusYaw<br /> https://www.youtube.com/@LinusYaw<br /> Make sure to sub him, would be nice!</p> <p>This also add a recipe for the entchanted golden apple.<br /> (Look Galery)<br /> Also add a custom Advantsments, which require to eat 64 Notch-Apples.<br /> Good Luck!</p> </article> <article> <h1>XP Stacker</h1> <p>🎉 **XPStacker: Let Your Server Breathe!** 🎉<br /> Is your server slowing down because of all the scattered XP orbs? 🐢 XPStacker offers a sleek and effective solution to this problem. This lightweight plugin automatically merges nearby XP orbs into a single one, significantly reducing server load while providing a smoother experience for players.</p> <p>✨ **Key Features:**</p> <p>– **Lag Reduction:** 💨 Drastically reduces server lag by merging hundreds of scattered XP orbs into a single orb.</p> <p>– **Automatic Merging:** 🤝 New XP orbs automatically merge with nearby ones. No player action is required.</p> <p>– **Configurable Radius:** ⚙️ Easily adjust the merge radius of XP orbs in the config.yml file.</p> <p>– **Lightweight and Stable:** 🔋 Operates with minimal resource usage and does not affect your server’s other features.</p> <p>Add XPStacker to your server now and let your players collect XP without any lag! 💎</p> <p>✨ **Check Out Our Other Plugins!** ✨<br /> If you enjoy the **XPStacker** plugin, don’t forget to check out our other high-quality plugins for your server!</p> <p>– **BuildByBit**: https://builtbybit.com/creators/fisfiskoray.600970<br /> – **PolyMart:** https://polymart.org/user/57522/fisfiskoray<br /> – **Modrinth:** https://modrinth.com/user/FisFisKoray</p> </article> <article> <h1>XP Placeholder</h1> <p># XPPlaceholder Plugin<br /> **Author**: Petrichor2_<br /> **Version**: *1.0*</p> <p>## Overview<br /> XPPlaceholder integrates with **PlaceholderAPI** to provide XP-related placeholders for your servers. It allows dynamic display of player XP stats like level, total XP, and progress.</p> <p>## Features<br /> – **`%xp_level%`**: Player’s current XP level.<br /> – **`%xp_total%`**: Total XP accumulated.<br /> – **`%xp_current%`**: Current XP value toward the next level.<br /> – **`%xp_to_next%`**: XP required to level up.<br /> – **`%xp_progress%`**: Progress percentage of the XP bar.</p> <p>## Dependencies<br /> – **[Placeholder API](https://www.spigotmc.org/resources/placeholderapi.6245/)**</p> <p>## Notes<br /> – Compatible with **Paper** or **Spigot** servers.<br /> – Does not modify gameplay mechanics.<br /> – This is made in free time, suggestions are welcome.</p> </article> <article> <h1>xolotelx’s Expanded Vanilla</h1> <p>Welcome to xolotelx’s Expanded Vanilla! This is a small-ish modpack that I created with the help of a few of my friends that I feel helps expand and enhance the base Minecraft experience. </p> <p>Key mods include:<br /> – Performace mods (Sodium, Iris, and the like)<br /> – Worldgen mods like Blooming Biosphere, Amplified Nether, and Caves and Canyons<br /> – Scout, to assist in inventory management<br /> – Structure mods such as Explorify<br /> – Visual mods like Astrocraft and Falling Leaves<br /> – Animation mods including Fresh Animations and Fresh Moves<br /> – Many resource packs, including AL’s Creepers Revamped and Even Better Enchants<br /> – And True Ending, to make the final battle that much more epic!</p> <p>Shader compatibility is a bit iffy until Astrocraft updates to support them, just turn Astrocraft off in the config if you want to use shaders without visual bugs.<br /> Vanilla Tweaks link (Despite it only being used in older versions): [https://vanillatweaks.net/picker/resource-packs/](https://vanillatweaks.net/picker/resource-packs/)</p> </article> <article> <h1>xl universe</h1> <p>[![Modrinth](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/available/modrinth_vector.svg)](https://modrinth.com/modpack/xluniverse)<br /> [![Discord](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/social/discord-plural_vector.svg)](https://discord.gg/uTVVsn5b6j)<br /> # ☕Modpack for playing servers<br /> >This modpack is supporting all Minecraft players, who play servers.<br /> – Why us?<br /> > We have optimized the modpack for you so that you can enjoy playing without FPS drops.<br /> > We have also added many effects, mods and other cosmetic changes that will help you feel that same vanilla and enjoyable game on Minecraft servers.<br /> > Also we have added many popular mods for you ♥️<br /> – Tested on<br /> > xl servers, #СП, #СПм, dmc, NELI</p> <details> <summary>🧩SPONSORED BY</summary> <p>> This project sponsored by xl servers – Russian Minecraft private server, vanilla+ with story and exclusive mechanics.<br /> </details> </article> <article> <h1>xLogin</h1> <p># 🛡️ xLogin – Simple, Lightweight & Powerful Authentication</p> <p>![banner-es](https://cdn.modrinth.com/data/cached_images/694ac454be5c859a82ded0fb53c1839a6af34045_0.webp)</p> <p>**xLogin** is an all-in-one authentication system designed for servers that want maximum security without the bloat. Forget about complex external database setups; xLogin is optimized to work locally, fast, and secure out of the box, whether you run a standalone server or a massive Proxy network.</p> <p>> Note: /premium is only available for networks and proxies. Compatible with Bungeecord, Velocity, Waterfall, and others.<br /> How do I activate proxy mode?<br /> Go to config.yml and enable proxy mode, then download and install the add-on for your proxy, and you’re all set!</p> <p>—</p> <p>## 🚀 Key Features</p> <p>* **🌐 Smart Network & Proxy Ready:** Fully compatible with **BungeeCord** and **Velocity**. Features auto-detection to enable secure UUID verification and includes an automatic Auth-Lobby redirect system to send players to a specific server upon successful login.<br /> * **📦 Local-First Storage & Backups:** High-performance, thread-safe H2 database system (`data.mv.db`). No need for MySQL to get professional network-level performance. Easily create instant database backups via in-game commands!<br /> * **💎 Smart Premium System:** Using an official Minecraft account? Players can use `/premium` to enable auto-login. The plugin uses real Mojang validation (via your Proxy) to ensure nobody can steal a premium identity.<br /> * **🧠 Industrial-Grade Security:**<br /> * **BCrypt Hashing:** Passwords are encrypted with the industry standard, making them virtually impossible to crack.<br /> * **Premium Name Impersonation Protection:** Automatically kicks non-premium players trying to join with the username of an official purchased account.<br /> * **Anti-Bot Captcha:** A visual verification system during registration to stop bot attacks in their tracks.<br /> * **Total Protection:** Blindness, immobilization, and block/damage protection until the user is authenticated.<br /> * **Asynchronous Logging:** Keeps a silent, detailed history of logins, registrations, and admin actions.<br /> * **🖼️ Ultimate Admin Control:** Manage everything from the console or in-game. Features an intuitive visual GUI menu with player heads, plus a massive arsenal of commands to purge inactive users, force logins, change UUIDs, and more.<br /> * **📱 Bedrock Support (Geyser):** Fully compatible with console and mobile players via Floodgate integration. Bedrock players authenticated via Xbox Live can automatically bypass the login screen (100% configurable).<br /> * **⚡ Performance Optimized:** Fully asynchronous database operations ensure your TPS stays at 20.0, no matter how many players are joining.</p> <p>—</p> <p>## 🛠️ Commands & Permissions</p> <p>### Player Commands<br /> | Command | Description | Permission |<br /> | :— | :— | :— |<br /> | `/login <pass>` | Log in to your account. | None |<br /> | `/register <pass> <pass>` | Create a new account with captcha. | None |<br /> | `/premium [confirm]` | Toggle Auto-login (Premium Mode). | None |<br /> | `/changepassword <old> <new>` | Securely change your current password. | None |<br /> | `/captcha <code>` | Solve the registration captcha. | None |</p> <p>### Admin Commands (`xlogin.admin`)<br /> | Command | Description |<br /> | :--- | :--- |<br /> | `/xlogin gui` | Open the visual administration menu. |<br /> | `/xlogin backup` | Create an instant backup of the database. |<br /> | `/xlogin purge <days>` | Delete all accounts inactive for `<days>`. |<br /> | `/xlogin verify <user>` | View a player's UUID, IP, Premium status, & last login. |<br /> | `/xlogin forcelogin <user>` | Forcefully log a player into the server. |<br /> | `/xlogin setspawn` / `spawn` | Set or teleport to the login spawn location. |<br /> | `/xlogin changepass <user> <pass>` | Forcefully change a player's password. |<br /> | `/xlogin changeuuid <user> <uuid>` | Manually update a player's registered UUID. |<br /> | `/xlogin unpremium <user>` | Remove the premium auto-login status from an account. |<br /> | `/xlogin unban <ip>` | Remove an IP from the registration blacklist. |<br /> | `/xlogin unregister <user>` | Completely delete a player's account. |<br /> | `/xlogin reload` | Reload the plugin configuration and messages. |</p> <p>---</p> <p>## ⚙️ Simplified Configuration</p> <p>We've stripped the config down to the essentials so you don't waste time, while giving you absolute control over your network.</p> <p>### `config.yml`</p> <p>```yaml<br /> # -------------------------------------------------------<br /> # __ _<br /> # __ __ / / ___ __ _(_)_ __<br /> # / // / / _ / _` | | '_ Made by xPlugins<br /> # > </ /__| (_) | (_| | | | | | Fork: Paper # /_/_____/___/ __, |_|_| |_| # |___/ Release v1.0.6 # # Wiki: [https://xplugins.es/xlogin](https://xplugins.es/xlogin) # 24/7 Support: [https://discord.gg/AH5k9YE78b](https://discord.gg/AH5k9YE78b) # ------------------------------------------------------- settings: # The default language (es, en). It will load messages_es.yml or messages_en.yml language: "en" protection: # Block everything before logging in (movement, chat, etc.) general-protection: true # Visual effects upon joining the server effects: blindness: true security: # Auto-register premium users detected by the proxy (Requires BungeeCord/Velocity) auto-premium-registration: false # Prevents Non-Premium players from using premium account names (Requires BungeeCord/Velocity) prevent-premium-name-impersonation: false # Allowed commands BEFORE logging in allowed-commands-before-login: - "/help" - "/rules" - "/discord" passwords: size: min: 6 max: 20 # ___ _ _ # / __ ___ __| |_ __ ___ ___| | __ # /__/// _ / _` | '__/ _ / __| |/ / # / / __/ (_| | | | (_) | (__| < # _____/___|__,_|_| ___/ ___|_|_ geyser-support: # If true, Bedrock players (Floodgate) join without needing to login. auto-login-bedrock: true # __ _ _ # / ___| |___ _____ _ __| | __ # / / / _ __ / / / _ | '__| |/ / # / / / __/ |_ V V / (_) | | | < # _ / ___|__| _/_/ ___/|_| |_|_ proxy-redirect: # Send the player to the target server after a successful login (ideal for Auth&Lobby) enabled: false target-server: "Lobby" captcha: enabled: true timeout-seconds: 120 ui: titles: before-login: title: '&#A9DFBFWelcome!' subtitle: '&fUse /login <password>'<br /> before-register:<br /> title: '&#FAD7A0Register!'<br /> subtitle: '&fUse /register <password> <password>'<br /> after-login:<br /> title: '&#A9DFBFSuccess!'<br /> subtitle: '&fEnjoy your stay'<br /> incorrect-password:<br /> title: '&#F1948AIncorrect Password!'<br /> subtitle: '&7Please try again'</p> <p>logging:<br /> enabled: true<br /> log-successful-logins: true<br /> log-registrations: true<br /> log-failed-attempts: true<br /> log-admin-actions: true</p> </article> <article> <h1>jbmc</h1> <p>the modpack makes the game run at the best fps possible but with some features like shaders and better f3 menu and fullbrightness toggle and optifine like dynamic lighting and ofc zoom and if you put minecraft in the background for lets say watching youtube its gonna change its fps and lowering it so you can watch youtube without problems/laging</p> <p>and you have to go in modmenu and change lampdynamiclights mod from fancy to fast to get better fps</p> </article> <article> <h1>[XM] xK0KLIN Modpack’s</h1> <p>![x](https://cdn.modrinth.com/data/cached_images/ff01977f0c0483e74727ce2f87a267f365bc1e39.png) </p> <p> xK0KLIN’s Modpack is a content-heavy Minecraft modpack focused on FULL EXPANSION, combining magic, technology, exploration, and intense combat.</p> <p>this is not about being lightweight — it’s about having as much content as possible.</p> <p>_**WHAT YOU’LL FIND HERE**_<br /> – ⚔️ new mobs, bosses, and dangerous creatures<br /> – 🧙‍♂️ deep and complete magic systems<br /> – ⚙️ machines, energy, and automation<br /> – 🏰 massive structures across the world<br /> – 🌍 richer biomes and world generation<br /> – 🎮 harder and more chaotic gameplay</p> <p>_**MAIN FEATURES**_<br /> – 🛠️ advanced automation with Create and addons<br /> – 🧪 magic systems like Ars Nouveau and Occultism<br /> – 🐉 epic creatures from Ice and Fire and more<br /> – ⚔️ more intense combat with new enemies<br /> – 🏗️ expanded building and decoration options</p> <p>_**ENHANCED EXPLORATION**_<br /> – 🗺️ dungeons, ruins, and unique structures<br /> – 🏕️ a world full of things to discover<br /> – 🌄 improved terrain and biome generation<br /> – 🌌 extra content and special areas</p> <p>_**VISUALS & IMMERSION**_<br /> – 🌅 shader support<br /> – 💡 dynamic lighting<br /> – 🎧 improved ambient sounds<br /> – 🖼️ full support for advanced resource packs</p> <p>_**CONSTANT UPDATES**_<br /> “`<br /> – this modpack is actively updated with new mods, fixes, balance changes, and improvements to keep the experience fresh and evolving.<br /> “`</p> <p>🧪 modpack goal<br /> this modpack is made for players who want a LOT of content and don’t mind higher hardware requirements.</p> <p>it’s not lightweight. it’s not for low-end pcs. it’s for a completely different minecraft experience.</p> <p>💻 hardware requirements</p> <p>⚠️ realistic estimates to avoid _**frustration**_</p> <p>minimum (30 FPS playable)</p> <p>– CPU: i5 4th gen / Ryzen 3 1200<br /> – RAM: 8GB (absolute minimum)<br /> – GPU: GTX 750 Ti / Vega 8<br /> – storage: SSD recommended<br /> – settings: low + no shaders</p> <p>recommended (60 FPS stable)</p> <p>– CPU: i5 8th gen / Ryzen 5 2600<br /> – RAM: 16GB<br /> – GPU: GTX 1060 / RX 580<br /> – storage: SSD required<br /> – settings: medium / light shaders</p> </article> </main> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/minecraft/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <div class="gtranslate_wrapper" id="gt-wrapper-59937724"></div><script id="gt_widget_script_59937724-js-before"> window.gtranslateSettings = /* document.write */ window.gtranslateSettings || {};window.gtranslateSettings['59937724'] = {"default_language":"en","languages":["ar","az","bn","bg","hr","cs","da","nl","en","fi","fr","de","el","hu","id","it","ja","kk","ko","fa","pl","pt","ro","ru","sl","es","sv","th","uk","uz","vi"],"url_structure":"sub_directory","flag_style":"2d","wrapper_selector":"#gt-wrapper-59937724","alt_flags":[],"custom_domains":{"ru":"minecraft.vpesports.games"},"float_switcher_open_direction":"top","switcher_horizontal_position":"left","switcher_vertical_position":"bottom","flags_location":"\/wp-content\/plugins\/gtranslate\/flags\/"}; //# sourceURL=gt_widget_script_59937724-js-before </script><script src="https://minecraft.vpesports.com/wp-content/plugins/gtranslate/js/float.js?ver=3.1.1" data-no-optimize="1" data-no-minify="1" data-gt-orig-url="/mod-category/optimization/page/16/" data-gt-orig-domain="minecraft.vpesports.com" data-gt-widget-id="59937724" defer></script><script id="wp-emoji-settings" type="application/json"> {"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://minecraft.vpesports.com/wp-includes/js/wp-emoji-release.min.js?ver=7.0"}} </script> <script type="module"> /*! This file is auto-generated */ const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))}); //# sourceURL=https://minecraft.vpesports.com/wp-includes/js/wp-emoji-loader.min.js </script> </body> </html>