您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Makes Infinite Craft save instances
- // ==UserScript==
- // @name IC Save Instances
- // @namespace http://tampermonkey.net/
- // @version 1.0
- // @license MIT
- // @description Makes Infinite Craft save instances
- // @icon https://i.imgur.com/WlkWOkU.png
- // @author @activetutorial on discord
- // @match https://neal.fun/infinite-craft/
- // @run-at document-end
- // @grant none
- // ==/UserScript==
- (function () {
- 'use strict';
- (window.AT ||= {}).saveinstances = {
- infinitecraft: null,
- saveItems: function () {
- localStorage.setItem(
- "infinite-craft-data",
- JSON.stringify({
- elements: this.elements,
- instances: this.instances,
- darkMode: this.isDarkMode,
- })
- );
- },
- loadInstances: function () {
- const savedItems = JSON.parse(
- localStorage.getItem("infinite-craft-data")
- );
- const instances = savedItems.instances;
- this.infinitecraft.instances = [];
- instances?.forEach(this.infinitecraft.duplicateInstance);
- },
- start: function () {
- if (document.querySelector(".container").__vue__) { // Wait for Nuxt
- this.infinitecraft = document.querySelector(".container").__vue__;
- this.infinitecraft.saveItems = this.saveItems;
- this.loadInstances();
- const originalPlay = window.Howl.prototype.play;
- window.Howl.prototype.play = function(...args) {
- const result = originalPlay.apply(this, args);
- window.AT.saveinstances.infinitecraft.saveItems();
- return result;
- };
- const originalDropElement = this.infinitecraft.dropElement;
- this.infinitecraft.dropElement = function(...args) {
- const result = originalDropElement.apply(this, args);
- window.AT.saveinstances.infinitecraft.saveItems();
- return result;
- }
- } else {
- setTimeout(this.start.bind(this), 200);
- }
- }
- };
- window.AT.saveinstances.start();
- })();