Last active
October 12, 2016 03:11
-
-
Save InabaByakko/94d35749518482c0d76d461482f30078 to your computer and use it in GitHub Desktop.
TYPE74RX-T様のChange_BattleBack(in_Battle)を、最新のコアスクリプトのCanvasモードでも動作するように変更しました。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//============================================================================= | |
// Plugin_Name : RX_T_Change_BattleBack(in_Battle) | |
// File_Name : RX_T_Change_BattleBack(in_Battle).js | |
// Version : 1.02 | |
// Copylight : 2015 TYPE74RX-T | |
//============================================================================= | |
//============================================================================= | |
/*: | |
* @plugindesc イベントコマンド「戦闘背景の変更」を戦闘中でも行えるようになります。 | |
* @author TYPE74RX-T | |
* @help 戦闘背景の変更EX | |
* ============================================================================ | |
* * 戦闘背景の変更EX・ヘルプ | |
* ============================================================================ | |
* イベントコマンド「戦闘背景の変更」を戦闘中でも行えるようになります。 | |
* ============================================================================ | |
* * 更新履歴 | |
* ============================================================================ | |
* 2016/10/11(Ver 1.02) | |
* ・Canvasモードでの動作において戦闘背景の変更コマンドが発動しない不具合を修正 | |
* 2015/10/29(Ver 1.01) | |
* ・一部不要な変数の定義をしていたのを削除。 | |
* ・競合を軽減するため一部変数名を変更。 | |
* ============================================================================ | |
* * 使い方 | |
* ============================================================================ | |
* プラグインを導入すれば、あとはバトルイベントで | |
* イベントコマンド「戦闘背景の変更」を選択して | |
* 変更したい背景に変更すればOKです。 | |
* ============================================================================ | |
* * ドキュメント終了 | |
* ============================================================================ | |
*/ | |
(function() { | |
//Game_Temp | |
var rx_t_gtp151026_initialize = Game_Temp.prototype.initialize; | |
Game_Temp.prototype.initialize = function() { | |
rx_t_gtp151026_initialize.call(this); | |
this._rx_changeBatBack_in_battle = false; | |
}; | |
//Game_Map | |
var rx_t_gmpp151026_changeBattleback = Game_Map.prototype.changeBattleback; | |
Game_Map.prototype.changeBattleback = function(battleback1Name, battleback2Name) { | |
rx_t_gmpp151026_changeBattleback.call(this, battleback1Name, battleback2Name); | |
if (BattleManager.isBattleTest()) { | |
$dataSystem.battleback1Name = battleback1Name | |
$dataSystem.battleback2Name = battleback2Name | |
} | |
if ($gameParty.inBattle() && !$gameTemp._rx_changeBatBack_in_battle) { | |
$gameTemp._rx_changeBatBack_in_battle = true; | |
} | |
}; | |
//Spriteset_battle | |
var rx_t_spbp151026_updateBattleback = Spriteset_Battle.prototype.updateBattleback; | |
Spriteset_Battle.prototype.updateBattleback = function() { | |
rx_t_spbp151026_updateBattleback.call(this); | |
if ($gameParty.inBattle() && $gameTemp._rx_changeBatBack_in_battle){ | |
if (this.battleback1Bitmap().isReady() && this.battleback2Bitmap().isReady()) { | |
$gameTemp._rx_changeBatBack_in_battle = false; | |
if ((this._back1Sprite.bitmap || this._back2Sprite.bitmap) && Graphics.isWebGL() != true) { | |
this._canvasReAddBattleback(); | |
} else { | |
this._back1Sprite.bitmap = this.battleback1Bitmap(); | |
this._back2Sprite.bitmap = this.battleback2Bitmap(); | |
} | |
} | |
} | |
}; | |
Spriteset_Battle.prototype._canvasReAddBattleback = function() { | |
var margin = 32; | |
var x = -this._battleField.x - margin; | |
var y = -this._battleField.y - margin; | |
var width = Graphics.width + margin * 2; | |
var height = Graphics.height + margin * 2; | |
var index = this._battleField.children.indexOf(this._back1Sprite); | |
this._battleField.removeChild(this._back1Sprite); | |
this._back1Sprite = null; | |
this._back1Sprite = new TilingSprite(); | |
this._back1Sprite.move(x, y, width, height); | |
this._back1Sprite.bitmap = this.battleback1Bitmap(); | |
this._battleField.addChildAt(this._back1Sprite, index); | |
index = this._battleField.children.indexOf(this._back2Sprite); | |
this._battleField.removeChild(this._back2Sprite); | |
this._back2Sprite = null; | |
this._back2Sprite = new TilingSprite(); | |
this._back2Sprite.move(x, y, width, height); | |
this._back2Sprite.bitmap = this.battleback2Bitmap(); | |
this._battleField.addChildAt(this._back2Sprite, index); | |
this.locateBattleback(); | |
}; | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment