//============================================================================= 
// Torigoya_ReplaceDeadMember.js 
//============================================================================= 
 
/*: 
 * @plugindesc Replace a back member from dead actors in BattleScene. 
 * @author ru_shalm 
 */ 
 
/*:ja 
 * @plugindesc 戦闘中、死亡したメンバーを自動的に控えメンバーに入れ替えます。 
 * @author ru_shalm 
 */ 
 
( function  ( global)  { 
    // 生存メンバーが先頭に集まるように並び替え 
    var  sortDeadMember = function  ( )  { 
        var  allMembers = $gameParty.allMembers ( ) ;
        for  ( var  i = 0 ; i < allMembers.length  - 1 ; ++i)  { 
            if  ( !allMembers[ i] .isDead ( ) )  continue ;
 
            for  ( var  j = i + 1 ; j < allMembers.length ; ++j)  { 
                if  ( allMembers[ j] .isDead ( ) )  continue ;
                $gameParty.swapOrder ( i, j) ;
                allMembers = $gameParty.allMembers ( ) ; // 取り直す 
                break ;
            } 
        } 
    } ;
 
    // 死んだ戦闘参加中メンバーを控えと入れ替え 
    var  swapDeadMember = function  ( )  { 
        var  allMembers = $gameParty.allMembers ( ) ;
        for  ( var  i = 0 ; i < $gameParty.maxBattleMembers ( ) ; ++i)  { 
            if  ( !allMembers[ i] )  break ;
            if  ( !allMembers[ i] .isDead ( ) )  continue ;
 
            for  ( var  j = $gameParty.maxBattleMembers ( ) ; j < allMembers.length ; ++j)  { 
                if  ( allMembers[ j] .isDead ( ) )  continue ;
                $gameParty.swapOrder ( i, j) ;
                allMembers = $gameParty.allMembers ( ) ; // 取り直す 
                break ;
            } 
        } 
    } ;
 
    var  upstream_BattleManager_initMembers = BattleManager.initMembers ;
    BattleManager.initMembers  = function  ( )  { 
        sortDeadMember( ) ;
        upstream_BattleManager_initMembers.bind ( this ) ( ) ;
    } ;
 
    var  upstream_BattleManager_endAction = BattleManager.endAction ;
    BattleManager.endAction  = function  ( )  { 
        swapDeadMember( ) ;
        upstream_BattleManager_endAction.bind ( this ) ( ) ;
    } ;
 
    global.Torigoya  = ( global.Torigoya  || { } ) ;
    global.Torigoya .ReplaceDeadMember  = { } ;
} ) ( this ) ;
//============================================================================= 
 
// Torigoya_ReplaceDeadMember.js 
 
//============================================================================= 
 
 
 
/*: 
 
 * @plugindesc Replace a back member from dead actors in BattleScene. 
 
 * @author ru_shalm 
 
 */ 
 
 
 
/*:ja 
 
 * @plugindesc 戦闘中、死亡したメンバーを自動的に控えメンバーに入れ替えます。 
 
 * @author ru_shalm 
 
 */ 
 
 
 
( function  ( global)  { 
 
    // 生存メンバーが先頭に集まるように並び替え 
 
    var  sortDeadMember = function  ( )  { 
 
        var  allMembers = $gameParty.allMembers ( ) ;
 
        for  ( var  i = 0 ; i < allMembers.length  - 1 ; ++i)  { 
 
            if  ( !allMembers[ i] .isDead ( ) )  continue ;
 
 
 
            for  ( var  j = i + 1 ; j < allMembers.length ; ++j)  { 
 
                if  ( allMembers[ j] .isDead ( ) )  continue ;
 
                $gameParty.swapOrder ( i, j) ;
 
                allMembers = $gameParty.allMembers ( ) ; // 取り直す 
 
                break ;
 
            } 
 
        } 
 
    } ;
 
 
 
    // 死んだ戦闘参加中メンバーを控えと入れ替え 
 
    var  swapDeadMember = function  ( )  { 
 
        var  allMembers = $gameParty.allMembers ( ) ;
 
        for  ( var  i = 0 ; i < $gameParty.maxBattleMembers ( ) ; ++i)  { 
 
            if  ( !allMembers[ i] )  break ;
 
            if  ( !allMembers[ i] .isDead ( ) )  continue ;
 
 
 
            for  ( var  j = $gameParty.maxBattleMembers ( ) ; j < allMembers.length ; ++j)  { 
 
                if  ( allMembers[ j] .isDead ( ) )  continue ;
 
                $gameParty.swapOrder ( i, j) ;
 
                allMembers = $gameParty.allMembers ( ) ; // 取り直す 
 
                break ;
 
            } 
 
        } 
 
    } ;
 
 
 
    var  upstream_BattleManager_initMembers = BattleManager.initMembers ;
 
    BattleManager.initMembers  = function  ( )  { 
 
        sortDeadMember( ) ;
 
        upstream_BattleManager_initMembers.bind ( this ) ( ) ;
 
    } ;
 
 
 
    var  upstream_BattleManager_endAction = BattleManager.endAction ;
 
    BattleManager.endAction  = function  ( )  { 
 
        swapDeadMember( ) ;
 
        upstream_BattleManager_endAction.bind ( this ) ( ) ;
 
    } ;
 
 
 
    global.Torigoya  = ( global.Torigoya  || { } ) ;
 
    global.Torigoya .ReplaceDeadMember  = { } ;
 
} ) ( this ) ;