Animation Save Bug Fix

Discussion in 'JS Plugin Releases (RMMV)' started by Fogomax, Jan 15, 2017.

    Tags:
  1. Fogomax

    Fogomax Veteran Veteran

    Messages:
    36
    Likes Received:
    161
    First Language:
    Portuguese

    Animation Save Bug Fix


     


    Introduction
    This is a quick fix requisited by RHachicho, the plugin fixes fixes the bug that turns impossible to save the game while an event running in parallel mode is playing an animation on itself.
     
    How to use
    Save the plugin in a .js and move it to js/plugins folder.



    Plugin Code


    //=============================================================================
    // Animation Save Bug Fix (v1.2)
    // by Fogomax
    //=============================================================================

    /*:
    * @author Fogomax
    * @plugindesc This plugin fixes the bug that turns impossible to save the game
    * while an event running in parallel mode is playing an animation on itself.
    *
    * @help
    * ===========================================================================
    * » Description
    * ===========================================================================
    *
    * This plugin fixes the bug that turns impossible to save the game while
    * an event running in parallel mode is playing an animation on itself.
    *
    * It is plug-and-play, no configuration is required. Place this plugin on
    * the top of the plugin list.
    *
    * ===========================================================================
    * » License
    * ===========================================================================
    * WTFPL – Do What the frick You Want to Public License
    * http://www.wtfpl.net/txt/copying/
    */

    (function() {
    'use strict';

    //-----------------------------------------------------------------------------
    // DataManager
    //

    var _DataManager_makeSaveContents = DataManager.makeSaveContents;

    DataManager.makeSaveContents = function() {
    var contents = _DataManager_makeSaveContents.call(this);
    if (contents.map) {
    var events = contents.map._events;
    this.resolveCircularReference(events);
    }
    return contents;
    };

    DataManager.resolveCircularReference = function(events) {
    for (var i = 0; i < events.length; i++) {
    if (!events) continue;
    if (events._interpreter && events._interpreter._character === events) {
    events._interpreter._character = null;
    }
    }
    };

    })();


    Github: https://github.com/rafaelalmeidatk/JGSS/blob/master/AnimationSaveBugFix.js


    Changelog


    v1.2 - Fixed some typos


    v1.1 - Changed the fix to DataManager.makeSaveContents method instead of Scene_Map.prototype.terminate


    v1.0 - Creation of the plugin



    Usage
    This plugin is free for both commercial and non-commercial projects, no credits required.


    [​IMG]


     
     
    Last edited by a moderator: Jan 16, 2017
    #1

Share This Page