princess-synergy/www/js/plugins/JsScript142Set.js

223 lines
9.3 KiB
JavaScript

const SkpPic = "pictures/ScenarioSkip/";
class SkpData {
constructor(_SyoStr){
this.SyoStr = _SyoStr;
this.StoryStr = [];
}
}
class _SkpStr {
constructor(_SaveNo , _Name){
this.SaveNo = _SaveNo;
this.Name = _Name;
}
}
let SkpDataArr = [];
let VN_SSkipNo = 1080;
let _skpNo = SkpDataArr.length - 1;
SkpDataArr.push(new SkpData("Prologue"));
_skpNo = SkpDataArr.length - 1;
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(1,"Romasha Becomes Controllable"));
SkpDataArr.push(new SkpData("Chapter 1"));
_skpNo = SkpDataArr.length - 1;
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(2,"Ch.1: Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(3,"Ch.1: Before Solitaire Escape"));
SkpDataArr.push(new SkpData("Chapter 2"));
_skpNo = SkpDataArr.length - 1;
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(4,"Ch.2: Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(5,"Ch.2: Goblin Part Start"));
SkpDataArr.push(new SkpData("Chapter 3"));
_skpNo = SkpDataArr.length - 1;
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(6,"Ch.3: Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(7,"Ch.3: Free Roam Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(8,"Ch.3: Before Tournament"));
SkpDataArr.push(new SkpData("Chapter 4"));
_skpNo = SkpDataArr.length - 1;
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(9,"Ch.4: Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(10,"Ch.4: Matrix Gathering Start"));
SkpDataArr[_skpNo].StoryStr.push(new _SkpStr(11,"Ch.4: After the Conference"));
let Skp_3SyoFlg = false;
let Skp_SyoSelNo = 0;
let Skp_SelNo = 0;
Game_Interpreter.prototype.Skp_Start = function () {
Skp_YesNo_Flg = false;
Skp_SyoSelNo = 0;
Skp_SelNo = 0;
this.SetPict(PN_SkpBase , SkpPic + "PN_SkpBase" , 0 , 0);
let _sSkipNo = $gameVariables.value(VN_SSkipNo);
_sSkipNo = 1000;
let _ckNo = 0;
if(_ckNo < _sSkipNo) this.SetPictC(PN_SkpMBtn + 0 , SkpPic + "PN_SkpMBtn_0" , 119 , 216);
_ckNo += SkpDataArr[0].StoryStr.length;
if(_ckNo < _sSkipNo) this.SetPictC(PN_SkpMBtn + 1 , SkpPic + "PN_SkpMBtn_1" , 160 , 314);
_ckNo += SkpDataArr[1].StoryStr.length;
if(_ckNo < _sSkipNo) this.SetPictC(PN_SkpMBtn + 2 , SkpPic + "PN_SkpMBtn_2" , 117 , 426);
_ckNo += SkpDataArr[2].StoryStr.length;
if(_ckNo < _sSkipNo) this.SetPictC(PN_SkpMBtn + 3 , SkpPic + "PN_SkpMBtn_3" , 160 , 534);
_ckNo += SkpDataArr[3].StoryStr.length;
if(_ckNo < _sSkipNo) this.SetPictC(PN_SkpMBtn + 4 , SkpPic + "PN_SkpMBtn_4" , 117 , 646);
this.Skp_Draw(0);
}
Game_Interpreter.prototype.Skp_Draw = function (_No) {
Skp_SyoSelNo = _No;
this.SetPicStr(PN_SkpMain , SkpDataArr[_No].SyoStr , 36 , 310 , 154);
this.DelPictSpan(PN_SkpSBtn , PN_SkpYNBtn + 1);
let _sSkipNo = $gameVariables.value(VN_SSkipNo);
_sSkipNo = 1000;
let _ckNo = 0;
for (let i = 0; i <= _No - 1; i++) {
_ckNo += SkpDataArr[i].StoryStr.length;
}
if(_ckNo < _sSkipNo){
this.SetPictFIn( PN_SkpPic , SkpPic + "PN_SkpImg_" + _No , 0 , 0 , 0 , 0 , 10);
} else {
this.SetPictFIn( PN_SkpPic , SkpPic + "PN_SkpImg_Rock" , 0 , 0 , 0 , 0 , 10);
}
for (let i = 0; i <= SkpDataArr[_No].StoryStr.length - 1; i++) {
if(_ckNo + i < _sSkipNo) {
this.SetPict(PN_SkpSBtn + i , SkpPic + "PN_SkpSBtn" , 329 , 251 + (i * 66));
this.SetPicStr(PN_SkpSBtnT + i , SkpDataArr[_No].StoryStr[i].Name,
24 , 329 + 30 , 251 + (i * 66) + 13);
}
}
switch (_No) {
case 0:
this.SetPict(PN_SkpSSel , SkpPic + "PN_SkpSSel_l" , 119 - 49 , 216 - 48 , 255,100,100,3);
break;
case 1:
this.SetPict(PN_SkpSSel , SkpPic + "PN_SkpSSel" , 160 - 79 , 314 - 80,255,100,100,3);
break;
case 2:
this.SetPict(PN_SkpSSel , SkpPic + "PN_SkpSSel" , 117 - 79 , 426 - 80,255,100,100,3);
break;
case 3:
this.SetPict(PN_SkpSSel , SkpPic + "PN_SkpSSel" , 160 - 79 , 534 - 80,255,100,100,3);
break;
case 4:
this.SetPict(PN_SkpSSel , SkpPic + "PN_SkpSSel" , 117 - 79 , 646 - 80,255,100,100,3);
break;
}
}
Game_Interpreter.prototype.Skp_Update = function () {
if (Skp_YesNo_Flg) {
this.Skp_YesNo_Update();
return true;
}
let _ckPicArr = []; let _ckNo = -1;
for (let i = 0; i <= 5 - 1; i++) {
_ckPicArr.push(PN_SkpMBtn + i);
}
this.PicCngColorArr(_ckPicArr);
_ckNo = overPointerCkArrTm_GetNo( _ckPicArr );
if(_ckNo != -1){
this.PicCngColor( PN_SkpMBtn + _ckNo , [150,150,150,0]);
if (TouchInput.isTriggered()) this.Skp_Draw(_ckNo);
}
_ckPicArr = [];
for (let i = 0; i <= 7 - 1; i++) {
_ckPicArr.push(PN_SkpSBtn + i);
}
this.PicCngColorArr(_ckPicArr);
_ckNo = overPointerCkArrTm_GetNo( _ckPicArr );
if(_ckNo != -1){
Skp_SelNo = _ckNo;
this.PicCngColor( PN_SkpSBtn + _ckNo , [150,150,150,0]);
if (TouchInput.isTriggered()) this.Skp_YesNo_Draw();
}
if (Input.isTriggered('menu') || TouchInput.isCancelled()) {
this.DelPictSpan(PN_SkpBase , PN_SkpYNBtn + 1);
return false;
}
return true;
}
let Skp_YesNo_Flg = false;
let Skp_YesNo_SelNo = -1;
Game_Interpreter.prototype.Skp_YesNo_Draw = function () {
Skp_YesNo_Flg = true; Skp_YesNo_SelNo = -1;
this.SetPict(PN_SkpYNBase , SkpPic + "PN_SkpYNBase" , 0 , 0);
this.SetPicStrC(PN_SkpYNTxt , SkpDataArr[Skp_SyoSelNo].StoryStr[Skp_SelNo].Name , 36 , 695 , 300);
this.SetPictC(PN_SkpYNBtn + 0 , SkpPic + "PN_SkpYNBtn_Y2" , 510 , 490);
this.SetPictC(PN_SkpYNBtn + 1 , SkpPic + "PN_SkpYNBtn_N2" , 510 + 368 , 490);
}
let SkipDeckKeep = [];
let SkipVNKeep = [];
let SkipSWKeep = [];
let SavedWeapons = null;
let SavedSyogoed = null;
let SaveSkipUseFlg = false;
let SaveSkip開発度維持Flg = false;
Game_Interpreter.prototype.Skp_YesNo_Update = function () {
let _ckNo = overPointerCkArr_GetNo( [PN_SkpYNBtn + 0 , PN_SkpYNBtn + 1] );
if (_ckNo != Skp_YesNo_SelNo) {
Skp_YesNo_SelNo = _ckNo;
switch (Skp_YesNo_SelNo) {
case 0:
this.SetPictC(PN_SkpYNBtn + 0 , SkpPic + "PN_SkpYNBtn_Y1" , 510 , 490);
this.SetPictC(PN_SkpYNBtn + 1 , SkpPic + "PN_SkpYNBtn_N2" , 510 + 368 , 490);
break;
case 1:
this.SetPictC(PN_SkpYNBtn + 0 , SkpPic + "PN_SkpYNBtn_Y2" , 510 , 490);
this.SetPictC(PN_SkpYNBtn + 1 , SkpPic + "PN_SkpYNBtn_N1" , 510 + 368 , 490);
break;
}
}
if (SaveSkip開発度維持Flg) {
this.SetPict(PN_SkpYNBase_Check , SkpPic + "PN_SkpYNBase_CheckOn" , 0 , 0);
} else {
this.SetPict(PN_SkpYNBase_Check , SkpPic + "PN_SkpYNBase_CheckOff" , 0 , 0);
}
if (overPointerCkTm(PN_SkpYNBase_Check) && TouchInput.isTriggered()) {
SaveSkip開発度維持Flg = !SaveSkip開発度維持Flg;
}
let _cancelFlg = false;
switch (_ckNo){
case 0:
if(TouchInput.isTriggered()) {
Skp_3SyoFlg = Skp_SyoSelNo == 3;
_LoadSelectNo = SkpDataArr[Skp_SyoSelNo].StoryStr[Skp_SelNo].SaveNo;
SkipDeckKeep = JSON.parse(JSON.stringify($gameSystem.DeckArr));
savedWeapons = JsonEx.makeDeepCopy($gameParty._weapons);
// for (let i = 0; i <= $dataArmors.length - 1; i++) {
// if ($gameActors.actor(1).hasArmor($dataArmors[i + 1])) { //装備
// $gameParty.gainItem($dataArmors[i + 1], 1);
//SavedSyogoed = JsonEx.makeDeepCopy($gameParty._armors);
SkipVNKeep = [];
if (SaveSkip開発度維持Flg) {
for (let i = 64; i <= 67; i++) {
SkipVNKeep.push([i , $gameVariables.value(i)]);
}
for (let i = 72; i <= 76; i++) {
SkipVNKeep.push([i , $gameVariables.value(i)]);
}
for (let i = 78; i <= 82; i++) {
SkipVNKeep.push([i , $gameVariables.value(i)]);
}
for (let i = 91; i <= 96; i++) {
SkipVNKeep.push([i , $gameVariables.value(i)]);
}
}
SkipSWKeep = [];
if (SaveSkip開発度維持Flg) {
for (let i = 161; i <= 169; i++) {
SkipSWKeep.push([i , $gameSwitches.value(i)]);
}
}
this.UTA_Save();
SaveSkipUseFlg = true;
SaveFolCngName = "save_skip";
_LoadStartingFlame = 0;
this.LoadStarting();
ClickCkFlg = false;
SSkipFlg = true;
Menu禁止Flg = false;
Menu禁止Flame = 5;
}
break;
case 1:
_cancelFlg = TouchInput.isTriggered();
break;
}
if (Input.isTriggered('menu') || TouchInput.isCancelled() || _cancelFlg) {
Skp_YesNo_Flg = false; Skp_YesNo_SelNo = -1;
this.DelPictSpan(PN_SkpYNBase , PN_SkpYNBtn + 1);
}
}