626 lines
No EOL
21 KiB
JavaScript
626 lines
No EOL
21 KiB
JavaScript
//============================================================================
|
||
// MOG_PictureEffects.js
|
||
// Translate to Japanese : fungamemake.com
|
||
//============================================================================
|
||
|
||
/*:
|
||
* @plugindesc (v1.4) Adiciona novas funções no sistema de mostrar imagens.
|
||
* @author Moghunter
|
||
*
|
||
* @help
|
||
* ===========================================================================
|
||
* +++ MOG - Picture Effects (v1.4) +++
|
||
* By Moghunter
|
||
* https://atelierrgss.wordpress.com/
|
||
* ===========================================================================
|
||
* Adiciona novas funções no sistema de mostrar imagens.
|
||
* ===========================================================================
|
||
* UTILIZAÇÃO.
|
||
* ===========================================================================
|
||
* Utilize os comandos através do Plugin Command.
|
||
*
|
||
* ===========================================================================
|
||
* * POSITIONS *
|
||
* ===========================================================================
|
||
* --- > Posição da imagem no player. < ----
|
||
*
|
||
* picture_player_position : PICTURE_ID
|
||
*
|
||
* --- > Posição da imagem no evento. < ----
|
||
*
|
||
* picture_event_position : PICTURE_ID : EVENT_ID
|
||
*
|
||
* --- > Posição fixa no mapa. < ----
|
||
*
|
||
* picture_map_position : PICTURE_ID
|
||
*
|
||
*
|
||
* (NOTA - A função MOVE não funciona nos efeitos de Posição.)
|
||
*
|
||
* ===========================================================================
|
||
* * EFFECTS *
|
||
* ===========================================================================
|
||
* ---> Efeito Respirar < -----
|
||
*
|
||
* pic_breath : PICTURE ID : true : Power : Speed
|
||
*
|
||
* ---> Efeito Flutuar < -----
|
||
*
|
||
* pic_float : PICTURE ID : true
|
||
*
|
||
* ---> Efeito Tremer < -----
|
||
*
|
||
* pic_shake : PICTURE ID : true : Power
|
||
*
|
||
* ---> Efeito Tremer 2 < -----
|
||
*
|
||
* pic_shake2 : PICTURE ID : true : Power
|
||
*
|
||
* ---> Efeito Smooth < -----
|
||
*
|
||
* pic_smooth : PICTURE ID : true : Power : Speed
|
||
*
|
||
* ===========================================================================
|
||
* * ANIMATED *
|
||
* ===========================================================================
|
||
*
|
||
* picture_animated : PICTURE_ID : NUMBER_OF_FRAMES : ANIMATION_SPEED
|
||
*
|
||
* (NOTA - A largura da imagem é dividida pelo numero de frames.)
|
||
*
|
||
*
|
||
* ===========================================================================
|
||
* * HISTÓRICO *
|
||
* ===========================================================================
|
||
* (1.4) - Compatibilidade com Rpg Maker MV 1.6+
|
||
* (1.3) - Adicionado o efeito Smooth.
|
||
* - Adicionado as opções de definir o poder e velocidade dos efeitos.
|
||
* (1.2) - Adicionado a função de tremer no modo 2.
|
||
*
|
||
*/
|
||
/*:ja
|
||
* @plugindesc (v1.4) ピクチャ表示システムに新しい機能を追加します。
|
||
* @author Moghunter
|
||
*
|
||
* @help
|
||
* 翻訳:ムノクラ
|
||
* https://fungamemake.com/
|
||
* https://twitter.com/munokura/
|
||
*
|
||
* ===========================================================================
|
||
* +++ MOG - Picture Effects (v1.4) +++
|
||
* By Moghunter
|
||
* https://atelierrgss.wordpress.com/
|
||
* ===========================================================================
|
||
* ピクチャ表示システムに新しい機能を追加します。
|
||
* ===========================================================================
|
||
* 使用方法
|
||
* ===========================================================================
|
||
* プラグインコマンドを使用します。
|
||
*
|
||
* ===========================================================================
|
||
* * 位置 *
|
||
* ===========================================================================
|
||
* --- > ピクチャの位置をプレーヤーへ(追尾) < ----
|
||
*
|
||
* picture_player_position : PICTURE_ID
|
||
*
|
||
* --- > ピクチャの位置をイベントへ(追尾) < ----
|
||
*
|
||
* picture_event_position : PICTURE_ID : EVENT_ID
|
||
*
|
||
* --- > ピクチャの位置をマップの初期表示位置へ < ----
|
||
*
|
||
* picture_map_position : PICTURE_ID
|
||
*
|
||
*
|
||
* (注-ピクチャの移動後は、各エフェクトは相対的に移動します。)
|
||
*
|
||
* ===========================================================================
|
||
* * エフェクト *
|
||
* ===========================================================================
|
||
* ---> 呼吸エフェクト < -----
|
||
*
|
||
* pic_breath : PICTURE ID : true : Power : Speed
|
||
*
|
||
* ---> フロートエフェクト < -----
|
||
*
|
||
* pic_float : PICTURE ID : true
|
||
*
|
||
* ---> シェイクエフェクト < -----
|
||
*
|
||
* pic_shake : PICTURE ID : true : Power
|
||
*
|
||
* ---> シェイクエフェクト 2 < -----
|
||
*
|
||
* pic_shake2 : PICTURE ID : true : Power
|
||
*
|
||
* ---> 滑らかなエフェクト < -----
|
||
*
|
||
* pic_smooth : PICTURE ID : true : Power : Speed
|
||
*
|
||
* ===========================================================================
|
||
* * アニメーション *
|
||
* ===========================================================================
|
||
*
|
||
* picture_animated : PICTURE_ID : NUMBER_OF_FRAMES : ANIMATION_SPEED
|
||
*
|
||
* (注-ピクチャの幅はフレーム数で除算されます。)
|
||
*
|
||
*
|
||
* ===========================================================================
|
||
* * 更新履歴 *
|
||
* ===========================================================================
|
||
* (1.4) - Rpg Maker MV 1.6+との互換性
|
||
* (1.3) - スムーズエフェクトを追加
|
||
* - エフェクトのパワーと速度を設定するオプションが追加
|
||
* (1.2) - モード2でシェーキング機能を追加
|
||
*
|
||
*/
|
||
|
||
//============================================================================
|
||
// ** PLUGIN PARAMETERS
|
||
//============================================================================
|
||
var Imported = Imported || {};
|
||
Imported.MOG_PictureEffects = true;
|
||
var Moghunter = Moghunter || {};
|
||
|
||
Moghunter.parameters = PluginManager.parameters('MOG_PictureEffects');
|
||
|
||
//============================================================================
|
||
// ** Game_Interpreter
|
||
//============================================================================
|
||
|
||
//==============================
|
||
// * PluginCommand
|
||
//==============================
|
||
var _alias_mog_picefc_pluginCommand = Game_Interpreter.prototype.pluginCommand
|
||
Game_Interpreter.prototype.pluginCommand = function (command, args) {
|
||
_alias_mog_picefc_pluginCommand.call(this, command, args);
|
||
if ($gameScreen.picture(Number(args[1]))) { this.setPictureEffects(command, args) };
|
||
return true;
|
||
};
|
||
|
||
//==============================
|
||
// * Set Picture Effets
|
||
//==============================
|
||
Game_Interpreter.prototype.setPictureEffects = function (command, args) {
|
||
this.picEfctSetPos(command, args);
|
||
if (args[3]) { this.picEfctSetAni(command, args) };
|
||
};
|
||
|
||
//==============================
|
||
// * pict Effect Set Pos
|
||
//==============================
|
||
Game_Interpreter.prototype.picEfctSetPos = function (command, args) {
|
||
if (command === "picture_player_position") {
|
||
$gameScreen.picture(Number(args[1]))._positionData[0] = 1;
|
||
} else if (command === "picture_map_position") {
|
||
$gameScreen.picture(Number(args[1]))._positionData[0] = 3;
|
||
} else if (command === "picture_event_position" && args[3]) {
|
||
$gameMap.events().forEach(function (event) {
|
||
if (!event._erased && event.eventId() === Number(args[3])) {
|
||
$gameScreen.picture(Number(args[1]))._positionData[0] = 2;
|
||
$gameScreen.picture(Number(args[1]))._positionData[4] = args[3];
|
||
$gameScreen.picture(Number(args[1]))._positionData[5] = $gameMap._mapId
|
||
};
|
||
}, this);
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * pict Effet Set Ani
|
||
//==============================
|
||
Game_Interpreter.prototype.picEfctSetAni = function (command, args) {
|
||
var enable = String(args[3]) === "true" ? true : false;
|
||
if (command == "pic_animated") {
|
||
var frm = Math.min(Math.max(Number(args[3]), 1), 999);
|
||
var speed = args[5] ? Number(args[5]) : 20;
|
||
$gameScreen.picture(Number(args[1]))._animeData = [true, frm, 9999, 0, speed];
|
||
};
|
||
if (command == "pic_shake") {
|
||
var pw = args[5] ? Number(args[5]) : 10;
|
||
$gameScreen.picture(Number(args[1]))._shake = [enable, 20, 0, 0, pw];
|
||
} else if (command === "pic_shake2") {
|
||
var pw = args[5] ? Number(args[5]) : 10;
|
||
$gameScreen.picture(Number(args[1]))._shake2 = [enable, 20, 0, 0, pw, 0, 0];
|
||
};
|
||
if (command == "pic_breath") {
|
||
var pw = args[5] ? Number(args[5]) : 1;
|
||
var pw = pw * 0.01
|
||
var pw2 = args[7] ? Number(args[7]) : 5;
|
||
var pw2 = 1 + (pw2 * 0.1);
|
||
$gameScreen.picture(Number(args[1]))._breathEffect = [enable, 0, 0, 0, pw, pw2];
|
||
};
|
||
if (command == "pic_float") {
|
||
var pw = args[5] ? Number(args[5]) : 1;
|
||
var pw = pw * 0.1;
|
||
var pw2 = args[7] ? Number(args[7]) : 15;
|
||
$gameScreen.picture(Number(args[1]))._floatEffect = [enable, 0, 0, 0, pw2, pw];
|
||
};
|
||
if (command == "pic_smooth") {
|
||
var pw = args[5] ? Number(args[5]) : 20;
|
||
var pw2 = args[7] ? Number(args[7]) : 160;
|
||
var pw2 = pw2 * 0.01;
|
||
$gameScreen.picture(Number(args[1]))._moveEffect = [enable, 0, 0, 160, 0, 0, pw, pw2, 160];
|
||
};
|
||
};
|
||
|
||
//============================================================================
|
||
// ** Game Character Base
|
||
//============================================================================
|
||
|
||
//==============================
|
||
// * Screen RealX
|
||
//==============================
|
||
Game_CharacterBase.prototype.screen_realX = function () {
|
||
return this.scrolledX() * $gameMap.tileWidth()
|
||
};
|
||
|
||
//==============================
|
||
// * Screen RealY
|
||
//==============================
|
||
Game_CharacterBase.prototype.screen_realY = function () {
|
||
return this.scrolledY() * $gameMap.tileHeight()
|
||
};
|
||
|
||
//==============================
|
||
// * Pict FX
|
||
//==============================
|
||
Game_Map.prototype.pictFX = function () {
|
||
return this._displayX * this.tileWidth();
|
||
};
|
||
|
||
//==============================
|
||
// * Pict FY
|
||
//==============================
|
||
Game_Map.prototype.pictFY = function () {
|
||
return this._displayY * this.tileHeight();
|
||
};
|
||
|
||
//============================================================================
|
||
// ** Game Picture
|
||
//============================================================================
|
||
|
||
//==============================
|
||
// * initBasic
|
||
//==============================
|
||
var _mog_pect_gpicture_initBasic = Game_Picture.prototype.initBasic;
|
||
Game_Picture.prototype.initBasic = function () {
|
||
_mog_pect_gpicture_initBasic.call(this);
|
||
this.initPicEffectBasic();
|
||
};
|
||
|
||
//==============================
|
||
// * initPicEffectBasic
|
||
//==============================
|
||
Game_Picture.prototype.initPicEffectBasic = function () {
|
||
this._position = [0, 0];
|
||
this._zoom = [100, 100];
|
||
this._effectType = 0;
|
||
this._shake = [false, 0, 0, 0, 0];
|
||
this._shake2 = [false, 0, 0, 0, 0, 0, 0];
|
||
this._breathEffect = [false, 0, 0, 0, 0];
|
||
this._breathEffect2 = [false, 0, 0, 0, 0];
|
||
this._floatEffect = [false, 0, 0, 0];
|
||
this._positionData = [0, 0, 0, 0, 0, 0, 0];
|
||
this._animeData = [false, 0, 0, 0, 0];
|
||
this._moveEffect = [false, 0, 0, 0, 0, 0, 0, 0, 0];
|
||
};
|
||
|
||
//==============================
|
||
// * Pic X
|
||
//==============================
|
||
Game_Picture.prototype.picX = function () {
|
||
return this._position[0] + this._positionData[1] + this._shake[2] + this._shake2[2] + this._moveEffect[1];
|
||
};
|
||
|
||
//==============================
|
||
// * Pic Y
|
||
//==============================
|
||
Game_Picture.prototype.picY = function () {
|
||
return this._position[1] + this._positionData[2] + this._shake[3] + this._shake2[3] + this._floatEffect[3] + this._moveEffect[2];
|
||
};
|
||
|
||
//==============================
|
||
// * Zoom X
|
||
//==============================
|
||
Game_Picture.prototype.zoomX = function () {
|
||
return this._zoom[0] + this._breathEffect[2];
|
||
};
|
||
|
||
//==============================
|
||
// * Zoom Y
|
||
//==============================
|
||
Game_Picture.prototype.zoomY = function () {
|
||
return this._zoom[1] + this._breathEffect[3];
|
||
};
|
||
|
||
//==============================
|
||
// * Opacity
|
||
//==============================
|
||
Game_Picture.prototype.opacity = function () {
|
||
return this._opacity;
|
||
};
|
||
|
||
//==============================
|
||
// * Angle
|
||
//==============================
|
||
Game_Picture.prototype.angle = function () {
|
||
return this._angle + this._shake2[5];
|
||
};
|
||
|
||
//==============================
|
||
// * Erase
|
||
//==============================
|
||
var _mog_pect_gpicture_erase = Game_Picture.prototype.erase;
|
||
Game_Picture.prototype.erase = function () {
|
||
_mog_pect_gpicture_erase.call(this);
|
||
this.initPicEffectBasic();
|
||
};
|
||
|
||
//==============================
|
||
// * Show
|
||
//==============================
|
||
var _mog_pect_gpicture_show = Game_Picture.prototype.show;
|
||
Game_Picture.prototype.show = function (name, origin, x, y, scaleX, scaleY, opacity, blendMode) {
|
||
_mog_pect_gpicture_show.call(this, name, origin, x, y, scaleX, scaleY, opacity, blendMode)
|
||
this.initPicEffectBasic();
|
||
this._position[0] = x;
|
||
this._position[1] = y;
|
||
this._positionData[1] = x;
|
||
this._positionData[2] = y;
|
||
this._zoom[0] = scaleX;
|
||
this._zoom[1] = scaleY;
|
||
if (this._breathEffect[0]) {
|
||
this._breathEffect[3] = (Math.random() * 0.20).toFixed(2);
|
||
};
|
||
if (this._floatEffect[0]) {
|
||
this._floatEffect[3] = -(Math.random() * 15).toFixed(2);
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Move
|
||
//==============================
|
||
var _mog_pect_gpicture_move = Game_Picture.prototype.move;
|
||
Game_Picture.prototype.move = function (origin, x, y, scaleX, scaleY, opacity, blendMode, duration) {
|
||
_mog_pect_gpicture_move.call(this, origin, x, y, scaleX, scaleY, opacity, blendMode, duration)
|
||
this._positionData[1] = x;
|
||
this._positionData[2] = y;
|
||
};
|
||
|
||
//==============================
|
||
// * update Move
|
||
//==============================
|
||
Game_Picture.prototype.updateMove = function () {
|
||
if (this._duration > 0) {
|
||
var d = this._duration;
|
||
if (this._positionData[0] === 0) {
|
||
this._x = (this._x * (d - 1) + this._targetX) / d;
|
||
this._y = (this._y * (d - 1) + this._targetY) / d;
|
||
};
|
||
this._zoom[0] = (this._scaleX * (d - 1) + this._targetScaleX) / d;
|
||
this._zoom[1] = (this._scaleY * (d - 1) + this._targetScaleY) / d;
|
||
this._opacity = (this._opacity * (d - 1) + this._targetOpacity) / d;
|
||
this._duration--;
|
||
this.updatePictureEffects();
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Game Picture
|
||
//==============================
|
||
var _mog_pect_gpicture_update = Game_Picture.prototype.update;
|
||
Game_Picture.prototype.update = function () {
|
||
_mog_pect_gpicture_update.call(this);
|
||
this.updatePictureEffects();
|
||
};
|
||
|
||
//==============================
|
||
// * Update Picture Effects
|
||
//==============================
|
||
Game_Picture.prototype.updatePictureEffects = function () {
|
||
if (this._shake[1] > 0) { this.updateShake() };
|
||
if (this._shake2[1] > 0) { this.updateShake2() };
|
||
if (this._breathEffect[0]) { this.updateBreathEffect() };
|
||
if (this._floatEffect[0]) { this.updateFloatEffect() };
|
||
if (this._positionData[0] > 0) { this.updatePicPosEfct() };
|
||
if (this._moveEffect[0]) { this.updateMoveEfct() };
|
||
this._scaleX = this.zoomX();
|
||
this._scaleY = this.zoomY();
|
||
};
|
||
|
||
//==============================
|
||
// * Update Move Effect
|
||
//==============================
|
||
Game_Picture.prototype.updateMoveEfct = function () {
|
||
this._moveEffect[3]++;
|
||
this._moveEffect[1] = this.movePictureEfc(this._moveEffect[1], this._moveEffect[4], this._moveEffect[7]);
|
||
this._moveEffect[2] = this.movePictureEfc(this._moveEffect[2], this._moveEffect[5], this._moveEffect[7]);
|
||
this._x = this.picX();
|
||
this._y = this.picY();
|
||
if (this._moveEffect[3] < 30) { return };
|
||
this._moveEffect[3] = 0;
|
||
var r = Math.randomInt(2);
|
||
this._moveEffect[4] = r === 0 ? Math.randomInt(this._moveEffect[6]) : -Math.randomInt(this._moveEffect[6]);
|
||
var r = Math.randomInt(2);
|
||
this._moveEffect[5] = r === 0 ? Math.randomInt(this._moveEffect[6]) : -Math.randomInt(this._moveEffect[6]);
|
||
};
|
||
|
||
//==============================
|
||
// * Move Picture Effect
|
||
//==============================
|
||
Game_Picture.prototype.movePictureEfc = function (value, real_value, speed) {
|
||
if (value == real_value) { return value };
|
||
var dnspeed = (0.1 + speed) + (Math.abs(value - real_value) / 160);
|
||
if (value > real_value) {
|
||
value -= dnspeed;
|
||
if (value < real_value) { value = real_value };
|
||
}
|
||
else if (value < real_value) {
|
||
value += dnspeed;
|
||
if (value > real_value) { value = real_value };
|
||
};
|
||
return value;
|
||
};
|
||
|
||
//==============================
|
||
// * Update Breath Effect
|
||
//==============================
|
||
Game_Picture.prototype.updateBreathEffect = function () {
|
||
if (this._duration > 0) { return };
|
||
if (this._breathEffect[1] === 0) {
|
||
this._breathEffect[3] += this._breathEffect[4];
|
||
if (this._breathEffect[3] >= this._breathEffect[5]) {
|
||
this._breathEffect[3] = this._breathEffect[5];
|
||
this._breathEffect[1] = 1;
|
||
};
|
||
} else {
|
||
this._breathEffect[3] -= this._breathEffect[4];
|
||
if (this._breathEffect[3] <= 0) {
|
||
this._breathEffect[3] = 0;
|
||
this._breathEffect[1] = 0;
|
||
};
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Update Float Effect
|
||
//==============================
|
||
Game_Picture.prototype.updateFloatEffect = function () {
|
||
if (this._duration > 0) { return };
|
||
if (this._floatEffect[1] === 0) {
|
||
this._floatEffect[3] -= this._floatEffect[5];
|
||
if (this._floatEffect[3] <= -this._floatEffect[4]) { this._floatEffect[1] = 1 };
|
||
} else {
|
||
this._floatEffect[3] += this._floatEffect[5];
|
||
if (this._floatEffect[3] >= 0) { this._floatEffect[1] = 0 };
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Update Shake
|
||
//==============================
|
||
Game_Picture.prototype.updateShake = function () {
|
||
this._shake[1]--
|
||
this._shake[2] = Math.random() * this._shake[4];
|
||
this._shake[3] = Math.random() * this._shake[4];
|
||
if (this._shake[1] <= 0) {
|
||
if (this._shake[0]) {
|
||
this._shake[1] = 20
|
||
} else {
|
||
this._shake[2] = 0;
|
||
this._shake[3] = 0;
|
||
};
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Update Shake
|
||
//==============================
|
||
Game_Picture.prototype.updateShake2 = function () {
|
||
this._shake2[6]++;
|
||
if (this._shake2[6] < 3) { return };
|
||
this._shake2[6] = 0;
|
||
this._shake2[1]--;
|
||
this._shake2[2] = Math.random() * this._shake2[4];
|
||
this._shake2[3] = Math.random() * this._shake2[4];
|
||
var r = Math.randomInt(2)
|
||
this._shake2[5] = r === 1 ? Math.randomInt(5) : -Math.randomInt(5);
|
||
if (this._shake2[1] <= 0) {
|
||
if (this._shake2[0]) {
|
||
this._shake2[1] = 20
|
||
} else {
|
||
this._shake2[2] = 0;
|
||
this._shake2[3] = 0;
|
||
};
|
||
};
|
||
};
|
||
|
||
//==============================
|
||
// * Update Picture Pos Effct
|
||
//==============================
|
||
Game_Picture.prototype.updatePicPosEfct = function () {
|
||
if (this._positionData[0] === 1) {
|
||
this._position[0] = $gamePlayer.screenX();
|
||
this._position[1] = $gamePlayer.screenY();
|
||
} else if (this._positionData[0] === 2) {
|
||
var event = $gameMap.events()[this._positionData[4] - 1]
|
||
if (event && !event._erased && this._positionData[5] === $gameMap._mapId) {
|
||
this._position[0] = event.screenX();
|
||
this._position[1] = event.screenY();
|
||
} else {
|
||
this._position[0] = $gamePlayer.screenX();
|
||
this._position[1] = $gamePlayer.screenY();
|
||
};
|
||
} else {
|
||
this._position[0] = -$gameMap.pictFX();
|
||
this._position[1] = -$gameMap.pictFY();
|
||
};
|
||
this._x = this.picX();
|
||
this._y = this.picY();
|
||
};
|
||
|
||
//============================================================================
|
||
// ** Sprite Picture
|
||
//============================================================================
|
||
|
||
//==============================
|
||
// * Update Bitmap
|
||
//==============================
|
||
var _mog_picefc_sprpic_updateBitmap = Sprite_Picture.prototype.updateBitmap;
|
||
Sprite_Picture.prototype.updateBitmap = function () {
|
||
_mog_picefc_sprpic_updateBitmap.call(this);
|
||
if (this.picture() && this.picture()._animeData[0]) { this.updateFrames(this.picture()) };
|
||
};
|
||
|
||
//==============================
|
||
// * Update Frames
|
||
//==============================
|
||
Sprite_Picture.prototype.updateFrames = function (picture) {
|
||
if (!this.bitmap.isReady()) { this.visible = false; return };
|
||
this.visible = true
|
||
if (!this._picFrames) { this.setPicFrames(picture) };
|
||
picture._animeData[2]++
|
||
if (picture._animeData[2] < picture._animeData[4]) { return };
|
||
picture._animeData[2] = 0
|
||
this.setFrame(picture._animeData[3] * this._picFrames[3], 0, this._picFrames[3], this._picFrames[4])
|
||
picture._animeData[3]++
|
||
if (picture._animeData[3] >= this._picFrames[0]) { picture._animeData[3] = 0 }
|
||
};
|
||
|
||
//==============================
|
||
// * set PicFrames
|
||
//==============================
|
||
Sprite_Picture.prototype.setPicFrames = function (picture) {
|
||
var w = this.bitmap.width / picture._animeData[1]
|
||
var h = this.bitmap.height;
|
||
this._picFrames = [picture._animeData[1], 0, 0, w, h];
|
||
this.setFrame(picture._animeData[3] * this._picFrames[3], 0, this._picFrames[3], this._picFrames[4]);
|
||
};
|
||
|
||
//==============================
|
||
// * Update Origin
|
||
//==============================
|
||
var _mog_picefc_sprpic_updateOther = Sprite_Picture.prototype.updateOther;
|
||
Sprite_Picture.prototype.updateOther = function () {
|
||
_mog_picefc_sprpic_updateOther.call(this)
|
||
this.updatePicEffect();
|
||
};
|
||
|
||
//==============================
|
||
// * Update Pic Effect
|
||
//==============================
|
||
Sprite_Picture.prototype.updatePicEffect = function () {
|
||
if (this.picture()._breathEffect[0]) {
|
||
this.anchor.x = 0.5;
|
||
this.anchor.y = 1;
|
||
this.y += this.height / 2;
|
||
};
|
||
if (this.picture()._positionData[0] === 0) {
|
||
this.x += this.picture()._shake[2] + this.picture()._shake2[2];
|
||
this.y += this.picture()._shake[3] + this.picture()._shake2[3];
|
||
if (this.picture()._floatEffect[0]) { this.y += this.picture()._floatEffect[3] };
|
||
};
|
||
}; |