이벤트 페이지 중에 어떤 조건(예를들어 스위치가 on이라거나 변수가 1이라거나)이 없는 조건문 페이지가 1개라도 없으면 오류가 납니다. 즉 모든 페이지가 조건문 페이지인 이벤트가 있으면 오류가 납니다.
var Imported = Imported || {};
Imported.TMTurnMove = true;
var TMPlugin = TMPlugin || {};
if (!TMPlugin.EventBase) {
TMPlugin.EventBase = true;
(function() {
var _Game_Event_setupPage = Game_Event.prototype.setupPage;
Game_Event.prototype.setupPage = function() {
_Game_Event_setupPage.call(this);
if (this._pageIndex >= 0) this.loadCommentParams();
};
Game_Event.prototype.loadCommentParams = function() {
this._commentParams = {};
var re = /<([^<>:]+)(:?)([^>]*)>/g;
var list = this.list();
for (var i = 0; i < list.length; i++) {
var command = list[i];
if (command && command.code == 108 || command.code == 408) {
for (;;) {
var match = re.exec(command.parameters[0]);
if (match) {
this._commentParams[match[1]] = match[2] === ':' ? match[3] : true;
} else {
break;
}
}
} else {
break;
}
}
};
Game_Event.prototype.loadTagParam = function(paramName) {
return this._commentParams[paramName] || this.event().meta[paramName];
};
})();
} // TMPlugin.EventBase
(function() {
//-----------------------------------------------------------------------------
// Game_Map
//
Game_Map.prototype.updateTurnMove = function() {
var events = this.events();
for (var i = 0; i < events.length; i++) {
events[i].updateTurnMove();
}
};
//-----------------------------------------------------------------------------
// Game_Player
//
Game_Player.prototype.disableTurnMove = function() {
this._turnMoveEnabled = false;
};
Game_Player.prototype.enableTurnMove = function() {
this._turnMoveEnabled = true;
};
var _Game_Player_increaseSteps = Game_Player.prototype.increaseSteps;
Game_Player.prototype.increaseSteps = function() {
_Game_Player_increaseSteps.call(this);
if (this._turnMoveEnabled == null) this._turnMoveEnabled = true;
if (this._turnMoveEnabled) $gameMap.updateTurnMove();
};
//-----------------------------------------------------------------------------
// Game_Event
//
var _Game_Event_setupPage = Game_Event.prototype.setupPage;
Game_Event.prototype.setupPage = function() {
_Game_Event_setupPage.call(this);
this._alwaysTurnMove = this.loadTagParam('alwaysTurnMove') ||
this.loadTagParam('常にターン移動');
this._turnMove = this._alwaysTurnMove || this.loadTagParam('turnMove') ||
this.loadTagParam('ターン移動');
this._turnMoveCount = 0;
};
var _Game_Event_isNearTheScreen = Game_Event.prototype.isNearTheScreen;
Game_Event.prototype.isNearTheScreen = function() {
if (this._alwaysTurnMove) return true;
return Game_Character.prototype.isNearTheScreen.call(this);
};
var _Game_Event_checkStop = Game_Event.prototype.checkStop;
Game_Event.prototype.checkStop = function(threshold) {
if (this._turnMove) {
if (this._turnMoveCount == null) this._turnMoveCount = 0;
if (this._turnMoveFlag) {
this._turnMoveCount += 60;
this._turnMoveFlag = false;
}
if (this._turnMoveCount < threshold) return false;
this._turnMoveCount -= threshold;
return true;
} else {
return _Game_Event_checkStop.call(this, threshold);
}
};
Game_Event.prototype.updateTurnMove = function() {
this._turnMoveFlag = true;
};
//-----------------------------------------------------------------------------
// Game_Interpreter
//
var _Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand;
Game_Interpreter.prototype.pluginCommand = function(command, args) {
_Game_Interpreter_pluginCommand.call(this, command, args);
if (command === 'stopTurnMove') {
$gamePlayer.disableTurnMove();
} else if (command === 'startTurnMove') {
$gamePlayer.enableTurnMove();
} else if (command === 'skipTurnMove') {
$gameMap.updateTurnMove();
}
};
})();
- 질문할 내용이 이 게시판이나 강좌에 이미 있는지 확인합니다.
- 하나의 게시물에는 하나의 질문만 합니다.
- 제목은 질문의 핵심 내용으로 작성합니다.
- 질문 내용은 답변자가 쉽게 이해할 수 있도록 최대한 상세하게 작성합니다.
- 스크립트의 전문이 필요할 경우 txt 파일 등으로 첨부해 주시기 바랍니다.
- 답변받은 게시물은 삭제하지 않습니다.
- 답변이 완료된 경우 해당 답변해주신 분들께 감사의 댓글을 달아줍니다.
- 처음 오신 분들은 공지 게시물을 반드시 읽어주세요!
※ 미준수시 사전경고 없이 게시물을 삭제합니다.