http://rpgmaker-script-wiki.xyz/bitmap_sprite_kowazamv.php#6
ここのサイトを参考に、3Dマップぽい画面を作るコードを書き直したんですけど、
addChildで追加した画像がうまく更新?できなくてこまっています。
ESCキーを押してメニュー画面を表示させてから、メニュー画面を消して3Dマップっぽい画面にもどると更新?されてる状態です。
コード: 全て選択
(function() {
'use strict';
var _Spriteset_Map_createLowerLayer = Spriteset_Map.prototype.createLowerLayer;
Spriteset_Map.prototype.createLowerLayer = function() {
_Spriteset_Map_createLowerLayer.call(this);
if ($gameMap.mapId() === 1) {
var ThreeDMapImage_opening = new Sprite();
ThreeDMapImage_opening.bitmap = ImageManager.loadPicture('opening');
ThreeDMapImage_opening.x = 0;
ThreeDMapImage_opening.y = 0;
ThreeDMapImage_opening.z = 3;
this._tilemap.addChild(ThreeDMapImage_opening);
} else {
var ThreeDMapImage_background = new Sprite();
ThreeDMapImage_background.bitmap = ImageManager.loadPicture('background');
ThreeDMapImage_background.x = 0;
ThreeDMapImage_background.y = 0;
ThreeDMapImage_background.z = 4.0;
this._tilemap.addChild(ThreeDMapImage_background);
var ThreeDMapImage_wall_center0 = new Sprite();
ThreeDMapImage_wall_center0.bitmap = ImageManager.loadPicture('wall_center0');
ThreeDMapImage_wall_center0.x = 97;
ThreeDMapImage_wall_center0.y = 97;
ThreeDMapImage_wall_center0.z = 4.5;
this._tilemap.addChild(ThreeDMapImage_wall_center0);
var ThreeDMapImage_wall_left0 = new Sprite();
ThreeDMapImage_wall_left0.bitmap = ImageManager.loadPicture('wall_left0');
ThreeDMapImage_wall_left0.x = 0;
ThreeDMapImage_wall_left0.y = 3;
ThreeDMapImage_wall_left0.z = 4.5;
this._tilemap.addChild(ThreeDMapImage_wall_left0);
var ThreeDMapImage_wall_right0 = new Sprite();
ThreeDMapImage_wall_right0.bitmap = ImageManager.loadPicture('wall_right0');
ThreeDMapImage_wall_right0.x = 526;
ThreeDMapImage_wall_right0.y = 3;
ThreeDMapImage_wall_right0.z = 4.5;
this._tilemap.addChild(ThreeDMapImage_wall_right0);
}; // if
}; // Spriteset_Map.prototype.createLowerLayer
var _Spriteset_Map_update = Spriteset_Map.prototype.update;
Spriteset_Map.prototype.update = function() {
_Spriteset_Map_update.call(this);
if (Input.isTriggered('up') || Input.isTriggered('down') || Input.isTriggered('left') || Input.isTriggered('right')) {
var ThreeDMapImage_background = new Sprite();
ThreeDMapImage_background.bitmap = ImageManager.loadPicture('background');
ThreeDMapImage_background.x = 0;
ThreeDMapImage_background.y = 0;
ThreeDMapImage_background.z = 5.0;
this._tilemap.addChild(ThreeDMapImage_background);
var ThreeDMapImage_wall_center0 = new Sprite();
ThreeDMapImage_wall_center0.bitmap = ImageManager.loadPicture('wall_center0');
ThreeDMapImage_wall_center0.x = 97;
ThreeDMapImage_wall_center0.y = 97;
ThreeDMapImage_wall_center0.z = 5.5;
this._tilemap.addChild(ThreeDMapImage_wall_center0);
this.removeChild(ThreeDMapImage_wall_center0);
var ThreeDMapImage_wall_left0 = new Sprite();
ThreeDMapImage_wall_left0.bitmap = ImageManager.loadPicture('wall_left0');
ThreeDMapImage_wall_left0.x = 0;
ThreeDMapImage_wall_left0.y = 3;
ThreeDMapImage_wall_left0.z = 5.5;
this._tilemap.addChild(ThreeDMapImage_wall_left0);
var ThreeDMapImage_wall_right0 = new Sprite();
ThreeDMapImage_wall_right0.bitmap = ImageManager.loadPicture('wall_right0');
ThreeDMapImage_wall_right0.x = 526;
ThreeDMapImage_wall_right0.y = 3;
ThreeDMapImage_wall_right0.z = 5.5;
this._tilemap.addChild(ThreeDMapImage_wall_right0);
}; // if
}; // Spriteset_Map.prototype.update
})();
Spriteset_Map.prototype.updateのところで、方向キーが押された段階で、
見える方向の3Dマップっぽい画像を更新させようとしています。
アドバイスいただけるとたすかります。
よろしくお願いします。