Add Cursor And AutoSave

main
xian18 2 years ago
parent a5a727c04c
commit 0f1786f1c5
Signed by: SaltedFish
GPG Key ID: B0C26448E9EF40CA

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

File diff suppressed because one or more lines are too long

@ -0,0 +1,191 @@
//=============================================================================
// SF_Cursor.js
/*:
* @plugindesc windows selectable cursor
* @author SaltedFish
*
* @help
* just trace on.
* Thanks galvs-scripts.com
* require img/system/cursor.png
* Change From GALV_CursorImage.js and MOG_MenuCursor
*/
//=============================================================================
(function () {
Cursor = {};
Cursor.imgUrl = "img/system/Cursor.png";
Cursor.offsetx = 0; // px
Cursor.offsety = 0; // px
Cursor.moveSpeed = 0.3; // px
Cursor.moveDirection = "horizontal"; //"horizontal" : x , "vertical" : y
Cursor.moveRange = 8; // px
Cursor.iIndent = 0; // Indent items and skills in menus to make room for the cursor if required
Cursor.cIndent = 0; //Indent commands in menus to make room for the cursor if required
// Spirit_Cursor
function Sprite_Cursor() {
this.initialize.apply(this, arguments);
}
Sprite_Cursor.prototype = Object.create(Sprite_Base.prototype);
Sprite_Cursor.prototype.constructor = Sprite_Cursor;
Sprite_Cursor.prototype.initialize = function (window) {
Sprite_Base.prototype.initialize.call(this);
this._window = window;
this.createImage();
this._ticker = 0;
this.offsetx = 0;
this.offsety = 0;
this.nowMoingDirction = 1; // 1,-1
this.moveDirection = null;
this.move_x = 0;
this.move_y = 0;
};
Sprite_Cursor.prototype.createImage = function () {
this.bitmap = ImageManager.loadNormalBitmap(Cursor.imgUrl);
this.opacity = 0;
};
Sprite_Cursor.prototype.update = function () {
Sprite_Base.prototype.update.call(this);
if (this._window.isCursorVisible() && !$gameSystem._cursorHidden) {
this.opacity = this._window.openness >= 255 ? 255 : 0;
this.updatePosition();
if (this._window.isHorizontal()) {
this.moveDirection = "vertical";
} else {
this.moveDirection = "horizontal";
}
if (this._window.active) this.updateMoving();
} else {
this.opacity = 0;
}
};
Sprite_Cursor.prototype.updatePosition = function () {
var rect = this._window._cursorRect;
var Direction = this.moveDirection ? this.moveDirection : Cursor.moveDirection;
if (Direction == "horizontal") {
this.y =
rect.y +
Cursor.offsety +
this.offsety +
this._window.standardPadding() +
this.yPos(rect.height) -
this.yPos(this.height);
this.x =
rect.x + Cursor.offsetx + this.offsetx - this.width - Cursor.moveRange + this._window.standardPadding();
if (this._window.position.x + this.x < 0) {
this.x = rect.x + Cursor.offsetx + this.offsetx + rect.width - this._window.standardPadding();
}
} else if (Direction == "vertical") {
this.y =
rect.y +
Cursor.offsety +
this.offsety -
this.height -
Cursor.moveRange +
this._window.standardPadding();
this.x =
rect.x +
Cursor.offsetx +
this.offsetx +
this._window.standardPadding() +
this.yPos(rect.width) -
this.yPos(this.width);
if (this.y + this._window.position.y < 0) {
this.y = rect.y + Cursor.offsety + this.offsety + rect.height - this._window.standardPadding();
}
}
};
Sprite_Cursor.prototype.yPos = function (height) {
return height / 2;
};
Sprite_Cursor.prototype.updateMoving = function () {
var Direction = this.moveDirection ? this.moveDirection : Cursor.moveDirection;
if (Direction == "horizontal") {
var offsetx = this.move_x + Cursor.moveSpeed * this.nowMoingDirction;
if (offsetx > Cursor.moveRange) {
offsetx = 2 * Cursor.moveRange - offsetx;
this.nowMoingDirction *= -1;
} else if (offsetx < -Cursor.moveRange) {
offsetx = -2 * Cursor.moveRange - offsetx;
this.nowMoingDirction *= -1;
}
this.x = this.x + offsetx;
this.move_x = offsetx;
} else if (Direction == "vertical") {
var offsety = this.move_y + Cursor.moveSpeed * this.nowMoingDirction;
if (offsety > Cursor.moveRange) {
offsety = 2 * Cursor.moveRange - offsety;
this.nowMoingDirction *= -1;
} else if (offsety < -Cursor.moveRange) {
offsety = -2 * Cursor.moveRange - offsety;
this.nowMoingDirction *= -1;
}
this.y = this.y + offsety;
this.move_y = offsety;
}
};
// Pre cache
Scene_Boot_loadSystemImages = Scene_Boot.loadSystemImages;
Scene_Boot.loadSystemImages = function () {
Scene_Boot_loadSystemImages.call(this);
ImageManager.loadNormalBitmap(Cursor.imgUrl);
};
Game_System_initialize = Game_System.prototype.initialize;
Game_System.prototype.initialize = function () {
Game_System_initialize.call(this);
this._cursorHidden = false;
};
Window_NumberInput.prototype.createSFCursor = function () {};
Window_ShopNumber.prototype.createSFCursor = function () {};
Window_BattleStatus.prototype.createSFCursor = function () {};
Window_Selectable.prototype.createSFCursor = function () {
this._SFCursor = new Sprite_Cursor(this);
this.addChild(this._SFCursor);
};
Window_BattleActor.prototype.createSFCursor = Window_Selectable.prototype.createSFCursor;
Window_Selectable_initialize = Window_Selectable.prototype.initialize;
Window_Selectable.prototype.initialize = function (x, y, width, height) {
Window_Selectable_initialize.call(this, x, y, width, height);
this.createSFCursor();
};
Window_Command_textPadding = Window_Command.prototype.textPadding;
Window_Command.prototype.textPadding = function () {
return Window_Command_textPadding.call(this) + Cursor.cIndent;
};
Window_EquipSlot_drawText = Window_EquipSlot.prototype.drawText;
Window_EquipSlot.prototype.drawText = function (text, x, y, maxWidth, align) {
x += Cursor.iIndent;
Window_EquipSlot_drawText.call(this, text, x, y, maxWidth, align);
};
Window_Selectable_drawItemName = Window_Selectable.prototype.drawItemName;
Window_Selectable.prototype.drawItemName = function (item, x, y, width) {
x += Cursor.iIndent;
Window_Selectable_drawItemName.call(this, item, x, y, width);
};
Window_EquipSlot_drawIcon = Window_EquipSlot.prototype.drawIcon;
Window_EquipSlot.prototype.drawIcon = function (iconIndex, x, y) {
x += Cursor.iIndent;
Window_EquipSlot_drawIcon.call(this, iconIndex, x, y);
};
})();

@ -0,0 +1,614 @@
//=============================================================================
// Yanfly Engine Plugins - Save Core Extension - Autosave
// YEP_X_Autosave.js
//=============================================================================
var Imported = Imported || {};
Imported.YEP_X_Autosave = true;
var Yanfly = Yanfly || {};
Yanfly.Autosave = Yanfly.Autosave || {};
Yanfly.Autosave.version = 1.00;
//=============================================================================
/*:
* @plugindesc v1.00 (Req YEP_SaveCore.js) Adds Autosave functionality to your
* RPG Maker game.
* @author Yanfly Engine Plugins
*
* @help
* ============================================================================
* Introduction
* ============================================================================
*
* This plugin requires YEP_SaveCore. Make sure this plugin is located under
* YEP_SaveCore in the plugin list.
*
* Autosave is a common feature found in standard RPG's nowadays. Games would
* save at certain triggers or upon changing maps so that the player won't lose
* any progress in case they forget to manually save. This plugin adds in an
* Autosave function to your game(s) and lets you control when to Autosave or
* set it to do it automatically under certain conditions.
*
* ============================================================================
* Instructions
* ============================================================================
*
* There are three ways to go about Autosave with this plugin. Please read them
* carefully and decide which one(s) is best suited for your game.
*
* ---
*
* Manual:
* - By default, Autosave does not happen automatically with this plugin. You,
* as the game dev, need to insert the Plugin Command: Autosave at the various
* points you want the Autosave to occur. This one gives you the most control
* over your game.
*
* ---
*
* Autosave on Map Load:
* - This is a Plugin Parameter. When it is set to true, the game will Autosave
* each time the map scene is loaded. This means entering a new map, coming out
* of a menu, or finishing a battle. All three of those conditions causes the
* Autosave function to activate.
*
* ---
*
* Autosave on Main Menu:
* - This is a Plugin Parameter. When it is set to true, the game will Autosave
* each time the player enters the Main Menu from the map scene. Autosave will
* NOT occur any other way regarding the Main Menu, meaning that coming out of
* the Item scene to the Main Menu will not activate Autosave.
*
* ---
*
* Autosaving will not occur if the player disables Autosave. If you don't want
* to give the player the ability to disable Autosave, you can set the Plugin
* Parameter "Show Option" to false.
*
* You can use all three methods of Autosaving together. You can have it done
* manually, Autosave on loading a map, and Autosave on calling the Main Menu
* to get the most coverage.
*
* *NOTE: Although you can use all three methods together, be mindful of your
* players. Sometimes, saving a game could induce a bit of lag depending on how
* big the save files are. Autosaving is no different. This is something that
* cannot be fixed by plugins.
*
* *NOTE: Autosaving will not occur until the player saved manually at least
* once in-game. After that, Autosave will take the slot that was used to save
* and continue saving to it or whichever save slot the player moved to later.
*
* ============================================================================
* Plugin Commands
* ============================================================================
*
* Autosave is manually done by the game developer using plugin commands. There
* are also other plugin commands that can control autosaving, too.
*
* Plugin Commands:
*
* Autosave
* - This will make the game automatically save in the last saved file
* slot used by the player. If the player has started a new game and did
* not save into a slot yet, nothing will happen. If autosave is disabled
* by the player through the Options menu or disabled by the system with
* a plugin command, nothing will happen either.
*
* EnableAutosave
* DisableAutosave
* - This will forcibly enable or disable autosaving done by the game.
* This will not bypass the player's option to disable Autosave if trying
* to enable it. The player's decision to disable Autosaving will take
* priority over the game dev's. If you wish to take this option away from
* the player, please change it in the plugin parameters.
*
* ============================================================================
* Options Core Settings - Adding the New Option
* ============================================================================
*
* If you are using YEP_OptionsCore.js, you can add a new Option using this
* plugin. Here's the following code/parameter settings you can use with it.
*
* ---------
* Settings:
* ---------
*
* Name:
* \i[231]Autosave
*
* Help Description:
* Enables \c[4]Autosaving\c[0] for your game if ON.
* You can still manually save your game.
*
* Symbol:
* autosave
*
* Show/Hide:
* show = Imported.AutosaveShowOpt;
*
* Enable:
* enabled = true;
*
* Ext:
* ext = 0;
*
* ----------
* Functions:
* ----------
*
* Make Option Code:
* this.addCommand(name, symbol, enabled, ext);
*
* Draw Option Code:
* var rect = this.itemRectForText(index);
* var statusWidth = this.statusWidth();
* var titleWidth = rect.width - statusWidth;
* this.resetTextColor();
* this.changePaintOpacity(this.isCommandEnabled(index));
* this.drawOptionsName(index);
* this.drawOptionsOnOff(index);
*
* Process OK Code:
* var index = this.index();
* var symbol = this.commandSymbol(index);
* var value = this.getConfigValue(symbol);
* this.changeValue(symbol, !value);
*
* Cursor Right Code:
* var index = this.index();
* var symbol = this.commandSymbol(index);
* var value = this.getConfigValue(symbol);
* this.changeValue(symbol, true);
*
* Cursor Left Code:
* var index = this.index();
* var symbol = this.commandSymbol(index);
* var value = this.getConfigValue(symbol);
* this.changeValue(symbol, false);
*
* Default Config Code:
* // Empty. Provided by this plugin.
*
* Save Config Code:
* // Empty. Provided by this plugin.
*
* Load Config Code:
* // Empty. Provided by this plugin.
*
* ============================================================================
* Changelog
* ============================================================================
*
* Version 1.00:
* - Finished Plugin!
*
* ============================================================================
* End of Helpfile
* ============================================================================
*
* @param ---Automatic---
* @default
*
* @param OnMapLoad
* @text Autosave on Map Load
* @parent ---Automatic---
* @type boolean
* @on YES
* @off NO
* @desc Autosave whenever the map is loaded.
* YES - true NO - false
* @default false
*
* @param OnMainMenu
* @text Autosave on Main Menu
* @parent ---Automatic---
* @type boolean
* @on YES
* @off NO
* @desc Autosave whenever main menu is called.
* YES - true NO - false
* @default false
*
* @param ---Option Menu---
* @default
*
* @param Show Option
* @parent ---Option Menu---
* @type boolean
* @on YES
* @off NO
* @desc Give player the option to enable or disable Autosave?
* YES - true NO - false
* @default true
*
* @param Option Name
* @parent ---Option Menu---
* @desc The option command text used in-game.
* @default Autosave
*
* @param Default
* @text Default Setting
* @parent ---Option Menu---
* @desc Do you want Autosaving to be enabled by default?
* YES - true NO - false
* @default true
*
* @param ---Visual---
* @default
*
* @param ShowAutosave
* @text Show Autosave Message
* @parent ---Visual---
* @type boolean
* @on YES
* @off NO
* @desc Show a message when Autosave happens?
* YES - true NO - false
* @default true
*
* @param AutosaveMsgSave
* @text Autosave Message On Save
* @parent ShowAutosave
* @desc Text used for the auto save message.
* Can use text codes.
* @default \i[83]Autosave Complete!
*
* @param AutosaveMsgLoad
* @text Autosave Message On Load
* @parent ShowAutosave
* @desc Text used for the auto save message.
* Can use text codes.
* @default \i[83]Autosave Loaded!
*
* @param MsgGradient1
* @text Message Gradient 1
* @parent ShowAutosave
* @desc Hex color used for the softer gradient color.
* rgba(0, 0, 0, 0) Reference: Red, Green, Blue, Alpha
* @default rgba(0, 0, 0, 0)
*
* @param MsgGradient2
* @text Message Gradient 2
* @parent ShowAutosave
* @desc Hex color used for the softer gradient color.
* rgba(0, 0, 0, 0) Reference: Red, Green, Blue, Alpha
* @default rgba(0, 0, 0, 0.6)
*
* @param MsgGradientCode
* @text Message Gradient Code
* @parent ShowAutosave
* @type note
* @desc JavaScript code for those who would like to tweak
* how the gradient is drawn.
* @default "var textWidth = this.textWidthEx(this.message());\nvar half = this.textPadding() + Math.ceil(textWidth / 2);\nvar height = this.lineHeight();\nvar color1 = Yanfly.Param.AutosaveMsgColor1;\nvar color2 = Yanfly.Param.AutosaveMsgColor2;\nthis.contents.gradientFillRect(0, 0, half, height, color1, color2);\nthis.contents.gradientFillRect(half, 0, this.width - half, height, color2, color1);"
*
* @param MsgX
* @text Message X
* @parent ShowAutosave
* @desc X position of the message.
* You can use code here.
* @default Graphics.boxWidth - 180
*
* @param MsgY
* @text Message Y
* @parent ShowAutosave
* @desc Y position of the message.
* You can use code here.
* @default Graphics.boxHeight - this.fittingHeight(1) * 2
*
* @param MsgDuration
* @text Message Duration
* @parent ShowAutosave
* @type number
* @desc Duration of the message in frames.
* @default 120
*
* @param FadeSpeed
* @text Message Fade Speed
* @parent ShowAutosave
* @desc Fade speed of the window.
* Lower - slower Higher - faster
* @default 16
*
*/
//=============================================================================
if (Imported.YEP_SaveCore) {
//=============================================================================
// Parameter Variables
//=============================================================================
Yanfly.Parameters = PluginManager.parameters('YEP_X_Autosave');
Yanfly.Param = Yanfly.Param || {};
Yanfly.Param.AutosaveOnMapLoad = eval(String(Yanfly.Parameters['OnMapLoad']));
Yanfly.Param.AutosaveOnMainMenu = eval(String(Yanfly.Parameters['OnMainMenu']));
Yanfly.Param.AutosaveShowOpt = eval(String(Yanfly.Parameters['Show Option']));
Yanfly.Param.AutosaveOptionCmd = String(Yanfly.Parameters['Option Name']);
Yanfly.Param.AutosaveDefault = eval(String(Yanfly.Parameters['Default']));
Yanfly.Param.AutosaveShowMsg = eval(String(Yanfly.Parameters['ShowAutosave']));
Yanfly.Param.AutosaveMsgSave = String(Yanfly.Parameters['AutosaveMsgSave']);
Yanfly.Param.AutosaveMsgLoad = String(Yanfly.Parameters['AutosaveMsgLoad']);
Yanfly.Param.AutosaveMsgColor1 = String(Yanfly.Parameters['MsgGradient1']);
Yanfly.Param.AutosaveMsgColor2 = String(Yanfly.Parameters['MsgGradient2']);
Yanfly.Param.AutosaveMsgCode = JSON.parse(Yanfly.Parameters['MsgGradientCode']);
Yanfly.Param.AutosaveMsgX = String(Yanfly.Parameters['MsgX']);
Yanfly.Param.AutosaveMsgY = String(Yanfly.Parameters['MsgY']);
Yanfly.Param.AutosaveMsgDur = Number(Yanfly.Parameters['MsgDuration']) || 120;
Yanfly.Param.AutosaveMsgFade = Number(Yanfly.Parameters['FadeSpeed']) || 16;
//=============================================================================
// ConfigManager
//=============================================================================
ConfigManager.autosave = Yanfly.Param.AutosaveDefault;
Yanfly.Autosave.ConfigManager_makeData = ConfigManager.makeData;
ConfigManager.makeData = function() {
var config = Yanfly.Autosave.ConfigManager_makeData.call(this);
config.autosave = this.autosave;
return config;
};
Yanfly.Autosave.ConfigManager_applyData = ConfigManager.applyData;
ConfigManager.applyData = function(config) {
Yanfly.Autosave.ConfigManager_applyData.call(this, config);
this.autosave = config['autosave'] || Yanfly.Param.AutosaveDefault;
};
//=============================================================================
// DataManager
//=============================================================================
Yanfly.Autosave.DataManager_setupNewGame = DataManager.setupNewGame;
DataManager.setupNewGame = function() {
Yanfly.Autosave.DataManager_setupNewGame.call(this);
StorageManager.setCurrentAutosaveSlot(this._lastAccessedId);
$gameTemp._autosaveNewGame = true;
$gameTemp._autosaveLoading = false;
};
Yanfly.Autosave.DataManager_saveGame = DataManager.saveGameWithoutRescue;
DataManager.saveGameWithoutRescue = function(savefileId) {
var value = Yanfly.Autosave.DataManager_saveGame.call(this, savefileId);
$gameTemp._autosaveNewGame = false;
$gameTemp._autosaveLoading = false;
StorageManager.setCurrentAutosaveSlot(savefileId);
return value;
};
Yanfly.Autosave.DataManager_loadGame = DataManager.loadGameWithoutRescue;
DataManager.loadGameWithoutRescue = function(savefileId) {
var value = Yanfly.Autosave.DataManager_loadGame.call(this, savefileId);
$gameTemp._autosaveNewGame = false;
$gameTemp._autosaveLoading = true;
StorageManager.setCurrentAutosaveSlot(savefileId);
return value;
};
//=============================================================================
// StorageManager
//=============================================================================
StorageManager.getCurrentAutosaveSlot = function() {
return this._currentAutosaveSlot;
};
StorageManager.setCurrentAutosaveSlot = function(savefileId) {
this._currentAutosaveSlot = savefileId;
};
StorageManager.performAutosave = function() {
if ($gameMap.mapId() <= 0) return;
if ($gameTemp._autosaveNewGame) return;
if (!$gameSystem.canAutosave()) return;
SceneManager._scene.performAutosave();
};
//=============================================================================
// Game_System
//=============================================================================
Yanfly.Autosave.Game_System_initialize = Game_System.prototype.initialize;
Game_System.prototype.initialize = function() {
Yanfly.Autosave.Game_System_initialize.call(this);
this.initAutosave();
};
Game_System.prototype.initAutosave = function() {
this._allowAutosave = true;
};
Game_System.prototype.canAutosave = function() {
if (this._allowAutosave === undefined) this.initAutosave();
return this._allowAutosave;
};
Game_System.prototype.setAutosave = function(value) {
if (this._allowAutosave === undefined) this.initAutosave();
this._allowAutosave = value;
};
//=============================================================================
// Game_Interpreter
//=============================================================================
Yanfly.Autosave.Game_Interpreter_pluginCommand =
Game_Interpreter.prototype.pluginCommand;
Game_Interpreter.prototype.pluginCommand = function(command, args) {
Yanfly.Autosave.Game_Interpreter_pluginCommand.call(this, command, args);
if (command.match(/EnableAutosave/i)) {
$gameSystem.setAutosave(true);
} else if (command.match(/DisableAutosave/i)) {
$gameSystem.setAutosave(false);
} else if (command.match(/Autosave/i)) {
StorageManager.performAutosave();
}
};
//=============================================================================
// Window_Options
//=============================================================================
Yanfly.Autosave.Window_Options_addGeneralOptions =
Window_Options.prototype.addGeneralOptions;
Window_Options.prototype.addGeneralOptions = function() {
Yanfly.Autosave.Window_Options_addGeneralOptions.call(this);
if (!Imported.YEP_OptionsCore && Yanfly.Param.AutosaveShowOpt) {
this.addCommand(Yanfly.Param.AutosaveOptionCmd, 'autosave');
}
};
//=============================================================================
// Window_Autosave
//=============================================================================
function Window_Autosave() {
this.initialize.apply(this, arguments);
}
Window_Autosave.prototype = Object.create(Window_Base.prototype);
Window_Autosave.prototype.constructor = Window_Autosave;
Window_Autosave.prototype.initialize = function() {
var width = this.windowWidth();
var height = this.windowHeight();
var x = eval(Yanfly.Param.AutosaveMsgX);
var y = eval(Yanfly.Param.AutosaveMsgY);
Window_Base.prototype.initialize.call(this, x, y, width, height);
this.opacity = 0;
this.contentsOpacity = 0;
this._showCount = 0;
this.refresh();
if ($gameTemp._autosaveLoading) {
this.reveal();
$gameTemp._autosaveLoading = false;
}
};
Window_Autosave.prototype.standardPadding = function() {
return 0;
};
Window_Autosave.prototype.windowWidth = function() {
return Graphics.boxWidth;
};
Window_Autosave.prototype.windowHeight = function() {
return this.fittingHeight(1);
};
Window_Autosave.prototype.update = function() {
Window_Base.prototype.update.call(this);
if (this._showCount > 0) {
this.updateFadeIn();
this._showCount--;
} else {
this.updateFadeOut();
}
};
Window_Autosave.prototype.updateFadeIn = function() {
this.contentsOpacity += Yanfly.Param.AutosaveMsgFade;
};
Window_Autosave.prototype.updateFadeOut = function() {
this.contentsOpacity -= Yanfly.Param.AutosaveMsgFade;
};
Window_Autosave.prototype.reveal = function() {
if (!Yanfly.Param.AutosaveShowMsg) return;
if (this._showCount > 0) return;
this._showCount = Yanfly.Param.AutosaveMsgDur;
this.refresh();
};
Window_Autosave.prototype.message = function() {
if ($gameTemp._autosaveLoading) {
return Yanfly.Param.AutosaveMsgLoad;
} else {
return Yanfly.Param.AutosaveMsgSave;
}
};
Window_Autosave.prototype.refresh = function() {
this.contents.clear();
this.drawGradient();
this.drawTextEx(this.message(), this.textPadding(), 0);
};
Window_Autosave.prototype.drawGradient = function() {
eval(Yanfly.Param.AutosaveMsgCode);
};
Window_Autosave.prototype.textWidthEx = function(text) {
return this.drawTextEx(text, 0, this.contents.height);
};
//=============================================================================
// Scene_Base
//=============================================================================
Scene_Base.prototype.performAutosave = function() {
};
//=============================================================================
// Scene_Map
//=============================================================================
Yanfly.Autosave.Scene_Map_createAllWindows =
Scene_Map.prototype.createAllWindows;
Scene_Map.prototype.createAllWindows = function() {
Yanfly.Autosave.Scene_Map_createAllWindows.call(this);
this.createAutosaveMessageWindow();
};
Scene_Map.prototype.createAutosaveMessageWindow = function() {
this._autosaveMsgWindow = new Window_Autosave();
this.addChild(this._autosaveMsgWindow);
};
Yanfly.Autosave.Scene_Map_onMapLoaded = Scene_Map.prototype.onMapLoaded;
Scene_Map.prototype.onMapLoaded = function() {
Yanfly.Autosave.Scene_Map_onMapLoaded.call(this);
if (Yanfly.Param.AutosaveOnMapLoad) StorageManager.performAutosave();
};
Yanfly.Autosave.Scene_Map_callMenu = Scene_Map.prototype.callMenu;
Scene_Map.prototype.callMenu = function() {
Yanfly.Autosave.Scene_Map_callMenu.call(this);
if (Yanfly.Param.AutosaveOnMainMenu) StorageManager.performAutosave();
};
Scene_Map.prototype.performAutosave = function() {
if ($gameMap.mapId() <= 0) return;
if ($gameTemp._autosaveNewGame) return;
if (!$gameSystem.canAutosave()) return;
$gameSystem.onBeforeSave();
DataManager.saveGameWithoutRescue(StorageManager.getCurrentAutosaveSlot());
if (this._autosaveMsgWindow) this._autosaveMsgWindow.reveal();
};
//=============================================================================
// Save Core Check
//=============================================================================
} else {
Imported.YEP_X_Autosave = false;
var text = '';
text += 'You are getting this error because you are trying to run ';
text += 'YEP_X_Autosave without the required plugins. Please visit ';
text += 'Yanfly.moe and install the required plugins neede for this plugin ';
text += 'found in this plugin\'s help file before you can use it.';
console.log(text);
require('nw.gui').Window.get().showDevTools();
}
//=============================================================================
// End of File
//=============================================================================
Loading…
Cancel
Save