/*:ja * @plugindesc */ let PL_direction = 0; let PL_realX = 0; let PL_realY = 0; let PL_winX = 0; let PL_winY = 0; let PL_MouseX = 0; let PL_MouseY = 0; class Pos2D { constructor(_setposx ,_setposy) { this._x = _setposx; this._y = _setposy; } } let Pos2DSaGet = function(_Pos1 , _Pos2){ let _SaX = Math.abs(_Pos1._x - _Pos2._x); let _SaY = Math.abs(_Pos1._y - _Pos2._y); return _SaX + _SaY; } let NUpdateFlame = 0; let Bef_PL_MouseX = 0; let Bef_PL_MouseY = 0; let MouseStopFlame = 0; Game_Interpreter.prototype.NUpdate = function () { PL_direction = this.character(-1)._direction; PL_realX = this.character(-1)._realX; PL_realY = this.character(-1)._realY; PL_winX = PL_realX * 48 - $gameMap._displayX * 48; PL_winY = PL_realY * 48 - $gameMap._displayY * 48; PL_MouseX = TouchInput.mouseX; PL_MouseY = TouchInput.mouseY; if (PL_MouseX == Bef_PL_MouseX && PL_MouseY == Bef_PL_MouseY) { MouseStopFlame++; } else { Bef_PL_MouseX = PL_MouseX; Bef_PL_MouseY = PL_MouseY; MouseStopFlame = 0; } NUpdateFlame++; } let NBB_performTransfer = Game_Player.prototype.performTransfer; Game_Player.prototype.performTransfer = function () { NBB_performTransfer.call(this); NUpdateFlame = 0; } let NBB_Flame = 0; let _NBB_Game_Screen_update = Game_Screen.prototype.update; Game_Screen.prototype.update = function () { _NBB_Game_Screen_update.call(this); NBB_Flame++; }; let _Nsprite_Skip = false; Game_Interpreter.prototype.NUpdateSc = function () { try { if(!_Nsprite_Skip){ this.spCmp_Update(); } } catch(e) { console.log("_Nsprite_Skip:Err"); _Nsprite_Skip = true; } KeyFlameUpdate(); } let tabDownFlame = 0; let okDownFlame = 0; let shiftDownFlame = 0; let controlDownFlame = 0; let escapeDownFlame = 0; let menuDownFlame = 0; let upDownFlame = 0; let downDownFlame = 0; let leftDownFlame = 0; let rightDownFlame = 0; let KeyFlameUpdate = function () { Input.isPressed('tab') ? tabDownFlame++ : tabDownFlame = 0; Input.isPressed('ok') ? okDownFlame++ : okDownFlame = 0; Input.isPressed('shift') ? shiftDownFlame++ : shiftDownFlame = 0; Input.isPressed('control') ? controlDownFlame++ : controlDownFlame = 0; Input.isPressed('escape') ? escapeDownFlame++ : escapeDownFlame = 0; Input.isPressed('menu') ? menuDownFlame++ : menuDownFlame = 0; Input.isPressed('up') ? upDownFlame++ : upDownFlame = 0; Input.isPressed('down') ? downDownFlame++ : downDownFlame = 0; Input.isPressed('left') ? leftDownFlame++ : leftDownFlame = 0; Input.isPressed('right') ? rightDownFlame++ : rightDownFlame = 0; } let NBB_Flame_ck = 0; let Nupu_Base_update = Game_Interpreter.prototype.update; Game_Interpreter.prototype.update = function () { Nupu_Base_update.call(this); if (NBB_Flame_ck != NBB_Flame){ this.NUpdateSc(); NBB_Flame_ck = NBB_Flame; } if (!MapInterpreterFlg) return; this.NUpdate(); } let MapInterpreterFlg = false; let NupuBase_Game_Map_updateInterpreter = Game_Map.prototype.updateInterpreter; Game_Map.prototype.updateInterpreter = function () { MapInterpreterFlg = true; NupuBase_Game_Map_updateInterpreter.call(this); MapInterpreterFlg = false; } let Nupu_Base_reserveTransfer = Game_Player.prototype.reserveTransfer; Game_Player.prototype.reserveTransfer = function (mapId, x, y, d, fadeType) { Nupu_Base_reserveTransfer.call(this, mapId, x, y, d, fadeType); NUpdateFlame = 0; }; let CopyArr = function (_copyArr) { return _copyArr.slice(0 , _copyArr.length); }; let ShuffleArr = function (_SetArr) { for (let i = _SetArr.length - 1; i > 0; i--) { let j = Math.floor(Math.random() * (i + 1)); let tmp = _SetArr[i]; _SetArr[i] = _SetArr[j]; _SetArr[j] = tmp; } } function ArrGetRandData(arrayData) { let arrayIndex = Math.floor(Math.random() * arrayData.length); return arrayData[arrayIndex]; } function ArrGetRandArr(arrayData, count) { count = count || 1; let result = []; for (let i = 0; i < count; i++) { let arrayIndex = Math.floor(Math.random() * arrayData.length); result[i] = arrayData[arrayIndex]; arrayData.splice(arrayIndex, 1); } return result; } function ArrRemoveArr(arrayData, delArr) { for (let i = 0; i <= arrayData.length - 1; i++) { for (let j = 0; j <= delArr.length - 1; j++) { if(arrayData[i] == delArr[j]) { arrayData.splice(i , 1); i--; } } } } Game_Interpreter.prototype.SetCmnEvent = function (CmnNo , _SkipFlg) { _SkipFlg = typeof _SkipFlg !== 'undefined' ? _SkipFlg : false; if (_SkipFlg) { console.log("SetCmnEvent:スキップ"); return; } //$gameTemp.reserveCommonEvent(CmnNo); try { this.setupChild($dataCommonEvents[CmnNo].list, 0); }catch(ex){ console.log("SetCmnEvent:Err"); } }; Game_Interpreter.prototype.SetCmnEventSc = function (CmnNo , _SkipFlg) { _SkipFlg = typeof _SkipFlg !== 'undefined' ? _SkipFlg : false; if (_SkipFlg) { console.log("SetCmnEventSc:スキップ"); return; } try { $gameTemp.reserveCommonEvent(CmnNo); } catch (ex) { console.log("SetCmnEventSc:Err"); } }; Game_Interpreter.prototype.LblJump = function (LblName) { for (let i = 0; i < this._list.length; i++) { if (this._list[i].parameters[0] == LblName) { this.jumpTo(i) } } }; //■指定した文字(seq)の文字位置を調べる■■■■■ let counter = function (str, seq) { try { return str.split(seq).length - 1; } catch (e) { return -1; } }; function isNumber(numVal) { let pattern = /^[-]?([1-9]\d*|0)(\.\d+)?$/; return pattern.test(numVal); } (function () { 'use strict'; let _TouchInput__onMouseMove = TouchInput._onMouseMove; TouchInput._onMouseMove = function (event) { _TouchInput__onMouseMove.apply(this, arguments); this.mouseX = Graphics.pageToCanvasX(event.pageX); this.mouseY = Graphics.pageToCanvasY(event.pageY); }; })(); TouchInput._onWheel = function (event) { try { this._events.wheelX += event.deltaX; this._events.wheelY += event.deltaY; //event.preventDefault(); } catch(e) { console.log(e); } }; Game_Interpreter.prototype.SetVN_Arr = function(_Arr , _Var) { for (let i = 0; i <= _Arr.length - 1; i++) { $gameVariables.setValue(_Arr[i] ,_Var) } } Game_Interpreter.prototype.SetVN_Span = function(_StartVn , _EndVn , _Var) { for (let i = _StartVn; i <= _EndVn; i++) { $gameVariables.setValue(i ,_Var) } } class N_Func { constructor(_Siki , _Func) { this._Siki = _Siki; this._Func = _Func; } } let RPG_NFunc_Function = function (_script) { let _Func = new Function("_ck_this" , _script.replace(/this./g, '_ck_this.')); let _NFunc = new N_Func(_script , _Func); return _NFunc; } let RPG_NFunc_Return = function (_script) { let _Func = new Function("_ck_this" , "return " + _script.replace(/this./g, '_ck_this.')); let _NFunc = new N_Func(_script , _Func); return _NFunc; } let _Cmd355_FuncArr = []; Game_Interpreter.prototype.command355_Check = function() { return false; } let _cmd355_keep = false; Game_Interpreter.prototype.command355 = function() { if (!_cmd355_keep) { let script = this.currentCommand().parameters[0] + '\n'; while (this.nextEventCode() === 655) { this._index++; script += this.currentCommand().parameters[0] + '\n'; } try { for (let i = 0; i <= _Cmd355_FuncArr.length - 1; i++) { if(_Cmd355_FuncArr[i]._Siki == script) { _Cmd355_FuncArr[i]._Func(this); _Cmd355_FuncArr.unshift(_Cmd355_FuncArr[i]); _Cmd355_FuncArr.splice(i + 1 , 1); return true; } } let _NFunc = RPG_NFunc_Function(script) _NFunc._Func(this); _Cmd355_FuncArr.unshift(_NFunc); } catch (e) { Yanfly.Util.displayError(e, script, 'SCRIPT CALL ERROR'); } _cmd355_keep = true; if(this.command355_Check()) return false; } else { if(this.command355_Check()) return false; } _cmd355_keep = false; return true; }; let _Cmd122_FuncArr = []; Yanfly.Core.Game_Interpreter_command122 = Game_Interpreter.prototype.command122; Game_Interpreter.prototype.command122 = function() { switch (this._params[3]) { case 4: let value = 0; let code = this._params[4]; try { //eval(script); //nupu::evalを使うとメモリに残り続けるため対応 let _AddFlg = true; for (let i = 0; i <= _Cmd122_FuncArr.length - 1; i++) { if(_Cmd122_FuncArr[i]._Siki == code) { value = _Cmd122_FuncArr[i]._Func(this); _Cmd122_FuncArr.unshift(_Cmd122_FuncArr[i]); _Cmd122_FuncArr.splice(i + 1 , 1); _AddFlg = false; } } if(_AddFlg){ let _NFunc = RPG_NFunc_Return(code) _Cmd122_FuncArr.unshift(_NFunc); value = _NFunc._Func(this); } } catch (e) { Yanfly.Util.displayError(e, code, 'CONTROL VARIABLE SCRIPT ERROR'); } for (let i = this._params[0]; i <= this._params[1]; i++) { this.operateVariable(i, this._params[2], value); } return true; } return Yanfly.Core.Game_Interpreter_command122.call(this); }; let _MoveCmd_FuncArr = []; Yanfly.Core.Game_Character_processMoveCommand = Game_Character.prototype.processMoveCommand; Game_Character.prototype.processMoveCommand = function(command) { let gc = Game_Character; let params = command.parameters; switch (command.code) { case gc.ROUTE_SCRIPT: try { let code = params[0]; //eval(script); //nupu::evalを使うとメモリに残り続けるため対応 let _AddFlg = true; for (let i = 0; i <= _MoveCmd_FuncArr.length - 1; i++) { if(_MoveCmd_FuncArr[i]._Siki == code) { value = _MoveCmd_FuncArr[i]._Func(this); _MoveCmd_FuncArr.unshift(_MoveCmd_FuncArr[i]); _MoveCmd_FuncArr.splice(i + 1 , 1); _AddFlg = false; } } if(_AddFlg){ let _NFunc = RPG_NFunc_Function(code) _MoveCmd_FuncArr.unshift(_NFunc); value = _NFunc._Func(this); } } catch (e) { Yanfly.Util.displayError(e, params[0], 'MOVE ROUTE SCRIPT ERROR'); } return; } return Yanfly.Core.Game_Character_processMoveCommand.call(this, command); }; //使用方法 this.N_Plgin([プラグインコマンドをカンマ区切り]) Game_Interpreter.prototype.N_Plgin = function (_CmndStr,_PlginArr) { let args = []; for (let i = 0; i <= _PlginArr.length - 1; i++) { args.push(String(_PlginArr[i])); } this.pluginCommand(String(_CmndStr), args); } let MetaChecker = function (_Obj, _metaStr, _undefineVal) { _undefineVal = typeof _undefineVal !== 'undefined' ? _undefineVal : ""; try { if (_Obj.meta[_metaStr] == undefined) return _undefineVal; return _Obj.meta[_metaStr]; }catch(ex){ return _undefineVal; } } let factorial = function(_Var , _回数){ _RtnVar = _Var; for (let i = 0; i <= _回数 - 1; i++) { _RtnVar *= _Var; } return _RtnVar; } let _以降文字削除 = function(_RtnStr , _ckStr) { let _Str = _RtnStr.split(_ckStr)[0]; return _Str; } let EventMetaGet = function (_EvID, _Tag, _undefineVal) { _undefineVal = typeof _undefineVal !== 'undefined' ? _undefineVal : ""; let _eventStr = String(_EvID); let noteVar = $dataMap.events[_eventStr].meta[_Tag]; if (noteVar == undefined) { return _undefineVal; } return noteVar; } let _NB_isNearTheScreen = Game_CharacterBase.prototype.isNearTheScreen; Game_CharacterBase.prototype.isNearTheScreen = function() { if(this._customResource == 'Parallax') return true; return _NB_isNearTheScreen.call(this); } class ModeBox { constructor(_name , _modeBoxArr = []){ this.name = _name; this.flame = 0; this.selModeNo = -1; this.modeBoxArr = _modeBoxArr; this.preSelModeNo = -1; this.modeBoxArr.forEach(_mode => { _mode.parent = this; }); this.resetModeName = ""; this.autoFlame = -1; this.autoKeepFlg = false; this.autoParentFlg = false; this.autoModeStr = ""; } get mode(){ return this.modeBoxArr[this.selModeNo]; } get modeName() { if(this.selModeNo == -1) return ""; return this.modeBoxArr[this.selModeNo].name; } get modeflame() { if(this.selModeNo == -1) return -1; return this.modeBoxArr[this.selModeNo].flame; } set modeflame(value) { this.modeBoxArr[this.selModeNo].flame = value; } ResetFlame() { this.modeBoxArr[this.selModeNo].flame = 0; } ModeFlameGet (_modeName) { this.modeBoxArr.forEach(_mode => { if(_mode.name == _modeName) { return _mode.flame; } }); return -1; } ModeCng(_modeStr , flameKeepFlg = false) { this.preSelModeNo = this.selModeNo; if(this.selModeNo != -1 && !flameKeepFlg) { this.modeBoxArr[this.selModeNo].Reset(); } for (let i = 0; i <= this.modeBoxArr.length - 1; i++) { if(this.modeBoxArr[i].name == _modeStr) { this.selModeNo = i; } } } ModeCng_Back(flameKeepFlg = false) { if(!flameKeepFlg) this.modeBoxArr[this.selModeNo].Reset(); for (let i = 0; i <= this.modeBoxArr.length - 1; i++) { if(this.modeBoxArr[i].name == _modeStr) { this.selModeNo = i; } } } ModeCng_Flame(_modeStr , _flame , _flameKeepFlg) { _flameKeepFlg = typeof _flameKeepFlg !== 'undefined' ? _flameKeepFlg : false; this.autoParentFlg = false; this.autoModeStr = _modeStr; this.autoFlame = _flame; this.autoKeepFlg = _flameKeepFlg; } ModeCngParent_Flame(_modeStr , _flame , _flameKeepFlg) { _flameKeepFlg = typeof _flameKeepFlg !== 'undefined' ? _flameKeepFlg : false; this.autoParentFlg = true; this.autoModeStr = _modeStr; this.autoFlame = _flame; this.autoKeepFlg = _flameKeepFlg; } Update() { if(this.selModeNo != -1) { this.modeBoxArr[this.selModeNo].Update(); } this.flame++; if(this.autoFlame > 0) { this.autoFlame--; if(this.autoFlame == 0) { if(this.autoParentFlg) { if(this.parent != undefined) { this.parent.ModeCng(this.autoModeStr); } } else { this.ModeCng(this.autoModeStr); } } } } Reset() { this.flame = 0; this.modeBoxArr.forEach( _mode => { _mode.Reset(); }); if(this.resetModeName != "") { this.ModeCng(this.resetModeName); } } } class Select_ModeBox extends ModeBox { constructor(_name , _modeBoxArr = []) { super(_name , _modeBoxArr); this.selecterResetFlg = false; this.selecterNo = 0; this.selectNoMax = 3; this.skipSelectNo = []; this.selecterLoopFlg = true; this.selectNoMax2 = 1; this.selecterNo2 = 0; this.selecterLoopFlg2 = true; this.selectGrid = []; this.selectNoMaxX = 2; this.selecterNoX = 0; this.selecterLoopFlgX = true; this.selecterNoY = 0; this.selectNoMaxY = 2; this.selecterLoopFlgY = true; this.befSelecterNo = -1; this.befSelecterNo2 = -1; this.befSelecterNoX = -1; this.befSelecterNoY = -1; this.n_Scroll = null; } selectNo_Up(_Action) { _Action = typeof _Action !== 'undefined' ? _Action : null; this.selecterNo--; if (this.n_Scroll != null) { if(this.selecterNo < 0) this.selecterNo = 0; let _ckSelNo = this.selecterNo - this.n_Scroll.ZureNo; if(_ckSelNo < 0) this.n_Scroll.ZureNo = this.selecterNo; return; } if (this.selecterNo < 0) { if (this.selecterLoopFlg) { this.selecterNo = this.selectNoMax; } else { this.selecterNo = 0; } } if (this.skipSelectNo.indexOf(this.selecterNo) != -1) { this.selectNo_Up(_Action); return; } if (_Action != null) _Action(); } selectNo_Down(_Action) { _Action = typeof _Action !== 'undefined' ? _Action : null; this.selecterNo++; if(this.n_Scroll != null) { if (this.selecterNo > this.selectNoMax) this.selecterNo = this.selectNoMax; let _ckSelNo = this.selecterNo - this.n_Scroll.ZureNo; if(_ckSelNo > this.n_Scroll.ViewCount - 1) { this.n_Scroll.ZureNo = (this.selecterNo - (this.n_Scroll.ViewCount - 1)); } return; } if(this.selecterNo > this.selectNoMax) { if(this.selecterLoopFlg) { this.selecterNo = 0; } else { this.selecterNo = this.selectNoMax; } } if(this.skipSelectNo.indexOf(this.selecterNo) != -1) { this.selectNo_Down(_Action); return; } if(_Action != null) _Action(); } selectNo_NoSet(_value) { this.selecterNo = _value; } get IsSelecterMove() { return this.befSelecterNo != this.selecterNo; } selectNo_Up2() { this.selecterNo2--; if(this.selecterNo2 < 0) { if(this.selecterLoopFlg2) { this.selecterNo2 = this.selectNoMax2; } else { this.selecterNo2 = 0; } } } selectNo_Down2() { this.selecterNo2++; if(this.selecterNo2 > this.selectNoMax2) { if(this.selecterLoopFlg2) { this.selecterNo2 = 0; } else { this.selecterNo2 = this.selectNoMax2; } } } selectNo_NoSet2(_value) { this.selecterNo2 = _value; } get IsSelecterMove2() { return this.befSelecterNo2 != this.selecterNo2; } selectGrid_Reset(_setBool) { _setBool = typeof _setBool !== 'undefined' ? _setBool : true; this.selectGrid = []; for (let i = 0; i <= this.selectNoMaxY; i++) { let _setArr = []; for (let j = 0; j <= this.selectNoMaxX; j++) { _setArr.push(_setBool); } this.selectGrid.push(_setArr); } } selecter_Right(){ var befX = this.selecterNoX; let _cnt = 0; while (true) { this.selecterNoX++; if (this.selectNoMaxX < this.selecterNoX) { if(this.selecterLoopFlgX) { this.selecterNoX = 0; } else { this.selecterNoX = this.selectNoMaxX; } } if(this.selectGrid[this.selecterNoY][this.selecterNoX]) { break; } if(this.selectNoMaxX < _cnt) { this.selecterNoX = befX; break; } _cnt++; } } selecter_Left(){ let _cnt = 0; while (true) { this.selecterNoX--; if (this.selecterNoX < 0) { if(this.selecterLoopFlgX) { this.selecterNoX = this.selectNoMaxX; } else { this.selecterNoX = 0; } } if(this.selectGrid[this.selecterNoY][this.selecterNoX]) { break; } if(this.selectNoMaxX < _cnt) break; _cnt++; } } selecter_Down(){ let _cnt = 0; while (true) { this.selecterNoY++; if (this.selectNoMaxY < this.selecterNoY) { if(this.selecterLoopFlgY) { this.selecterNoY = 0; } else { this.selecterNoY = this.selectNoMaxY; } } if(this.selectGrid[this.selecterNoY][this.selecterNoX]) { break; } if(this.selectNoMaxY < _cnt) break; _cnt++; } } selecter_Up(){ let _cnt = 0; while (true) { this.selecterNoY--; if (this.selecterNoY < 0) { if(this.selecterLoopFlgY) { this.selecterNoY = this.selectNoMaxY; } else { this.selecterNoY = 0; } } if(this.selectGrid[this.selecterNoY][this.selecterNoX]) { break; } if(this.selectNoMaxY < _cnt) break; _cnt++; } } get IsSelecterGridMove() { return this.befSelecterNoX != this.selecterNoX || this.befSelecterNoY != this.selecterNoY; } Update() { super.Update(); this.befSelecterNo = this.selecterNo; this.befSelecterNo2 = this.selecterNo2; this.befSelecterNoX = this.selecterNoX; this.befSelecterNoY = this.selecterNoY; } Reset() { super.Reset(); if(this.selecterResetFlg) { this.selecterNo = 0; this.selecterNo2 = 0; this.befSelecterNoX = 0; this.befSelecterNoY = 0; } } } class OneSelecter { constructor(_XMax) { this.selecterNo = 0; this.selectNoMax = _XMax; this.skipSelectNo = []; this.befSelecterNo = -1; this.loopFlg = true; this.n_Scroll = null; } selectNo_Up(_Action) { _Action = typeof _Action !== 'undefined' ? _Action : null; this.selecterNo--; if(this.n_Scroll != null) { if(this.selecterNo < 0) this.selecterNo = 0; let _ckSelNo = this.selecterNo - this.n_Scroll.ZureNo; if(_ckSelNo < 0) this.n_Scroll.ZureNo = this.selecterNo; return; } if(this.selecterNo < 0) { if(this.loopFlg) { this.selecterNo = this.selectNoMax; } else { this.selecterNo = 0; } } if(this.skipSelectNo.indexOf(this.selecterNo) != -1) { this.selectNo_Up(_Action); return; } if(_Action != null) _Action(); } selectNo_Down(_Action) { _Action = typeof _Action !== 'undefined' ? _Action : null; this.selecterNo++; if(this.n_Scroll != null) { if (this.selecterNo > this.selectNoMax) this.selecterNo = this.selectNoMax; let _ckSelNo = this.selecterNo - this.n_Scroll.ZureNo; if(_ckSelNo > this.n_Scroll.ViewCount - 1) { this.n_Scroll.ZureNo = (this.selecterNo - (this.n_Scroll.ViewCount - 1)); } return; } if(this.selecterNo > this.selectNoMax) { if(this.loopFlg) { this.selecterNo = 0; } else { this.selecterNo = this.selectNoMax; } } if(this.skipSelectNo.indexOf(this.selecterNo) != -1) { this.selectNo_Down(_Action); return; } if(_Action != null) _Action(); } selectNo_NoSet(_value) { this.selecterNo = _value; } get IsSelecterMove() { let rtnFlg = this.befSelecterNo != this.selecterNo; this.befSelecterNo = this.selecterNo; return rtnFlg; } } class ArrSelecter { constructor(_XMax , _YMax) { this.selectArr = []; this.setArr(_XMax , _YMax); this.selecterX = 0; this.selecterY = 0; this.befSelecterX = 0; this.befSelecterY = 0; this.loopFlg = true; } get IsSelecterMove() { let _rtnBool = this.selecterX != this.befSelecterX || this.selecterY != this.befSelecterY; this.befSelecterX = this.selecterX; this.befSelecterY = this.selecterY; return _rtnBool; } setArr(_XMax , _YMax) { this.selectArr = []; for (let i = 0; i <= _YMax - 1; i++) { let _xArr = []; for (let i = 0; i <= _XMax - 1; i++) { _xArr.push(false); } this.selectArr.push(_xArr); } } selecter_Up() { let befSelNo = this.selecterY; if(this.selecterY == 0 && !this.loopFlg) return false; while(true) { this.selecterY--; if (this.selecterY == -1) this.selecterY = this.selectArr.length - 1; if (this.selecterY == befSelNo) return false; if (this.selectArr[this.selecterY][this.selecterX]) return true; if (!this.loopFlg && this.selecterY == 0) { this.selecterY = befSelNo; return false; } } } selecter_Down() { let befSelNo = this.selecterY; if(this.selecterY == this.selectArr.length - 1 && !this.loopFlg) return false; while(true) { this.selecterY++; if (this.selecterY == this.selectArr.length) this.selecterY = 0; if (this.selecterY == befSelNo) return false; if (this.selectArr[this.selecterY][this.selecterX]) return true; if (!this.loopFlg && this.selecterY == this.selectArr.length) { this.selecterY = befSelNo; return false; } } } selecter_Left() { let befSelNo = this.selecterX if(this.selecterX == 0 && !this.loopFlg) return false; while(true) { this.selecterX--; if (this.selecterX == -1) this.selecterX = this.selectArr[this.selecterY].length - 1; if (this.selecterX == befSelNo) return false; if (this.selectArr[this.selecterY][this.selecterX]) return true; if (!this.loopFlg && this.selecterX == 0) { this.selecterX = befSelNo; return false; } } } selecter_Right() { let befSelNo = this.selecterX; if(this.selecterX == this.selectArr[this.selecterY].length - 1 && !this.loopFlg) return false; while(true) { this.selecterX++; if (this.selecterX == this.selectArr[this.selecterY].length) this.selecterX = 0; if (this.selecterX == befSelNo) return false; if (this.selectArr[this.selecterY][this.selecterX]) return true; if (!this.loopFlg && this.selecterX == this.selectArr.length) { this.selecterX = befSelNo; return false; } } } } class ModeArr { constructor () { this.Mode = []; this.ModeNo = -1; this.ModeName = ""; } Update () { if(this.ModeNo != -1) this.Mode[this.ModeNo].Update(); } ModeGet (_modeName) { for (let i = 0; i <= this.Mode.length - 1; i++) { if(this.Mode[i].name == _modeName) { return this.Mode[i]; } } } ModeAdd (_modeData) { this.Mode.push(_modeData); } ModeCng (_modeName) { if (this.ModeNo != -1) { if(this.Mode[this.ModeNo].OutAction != null) { this.Mode[this.ModeNo].OutAction(); } } for (let i = 0; i <= this.Mode.length - 1; i++) { if(this.Mode[i].name == _modeName) { this.ModeName = _modeName; this.ModeNo = i; if(this.Mode[this.ModeNo].InAction != null) { this.Mode[this.ModeNo].InAction(); } } } } } class ModeData { constructor(_name) { this.name = _name; this.flame = 0; this.InAction = null; this.OutAction = null; this.UpdateAction = null; } Update() { if (this.UpdateAction != null) this.UpdateAction(); this.flame++; } } let SaveVNArrNos = function (VNNo , no) { var ckNoStr = String(no); var strArr = GetVNArrNos(VNNo); if (strArr.indexOf(ckNoStr) == -1) strArr.push(ckNoStr); var seveStr = strArr.join(','); $gameVariables.setValue(VNNo , seveStr); } let GetVNArrNos = function (VNNo) { var ckStr = $gameVariables.value(VNNo); if (ckStr == 0) ckStr = ""; var strArr = ckStr.split(','); if (ckStr == "") strArr = []; return strArr; } class PhaseManager { constructor(gameInterpreter) { this.gi = gameInterpreter; this.doPhase = null; this.exitFlg = false; } CngPhase(setPhase) { if (this.doPhase != null) this.doPhase.Exit(this.gi); this.doPhase = setPhase; this.doPhase.Enter(this.gi); } Update() { if (this.doPhase != null) this.doPhase.Update(this.gi); } } class PhaseBase { constructor() { this.param = null; } Enter(gi) { } Update(gi) { } Exit(gi) { } SetParam(param) { this.param = param; } } /*---------------------------------------------------------------------------* * 2019/09/26 kido * Ver.1.0 古いPCでフィルタすると画面が拡大するのを抑止 *---------------------------------------------------------------------------*/ Sprite.voidFilter.padding = 0;