Skip to content

Instantly share code, notes, and snippets.

@InabaByakko
Last active October 12, 2016 03:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save InabaByakko/94d35749518482c0d76d461482f30078 to your computer and use it in GitHub Desktop.
Save InabaByakko/94d35749518482c0d76d461482f30078 to your computer and use it in GitHub Desktop.
TYPE74RX-T様のChange_BattleBack(in_Battle)を、最新のコアスクリプトのCanvasモードでも動作するように変更しました。
//=============================================================================
// 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