princess-synergy/www/js/plugins/JsScript148Set.js
2026-02-13 09:06:31 -06:00

261 lines
10 KiB
JavaScript

/* ■RDスタート処理■■■■■■■■■■■■■■■■■■■■■■■■ */
let RD_Id = -1;
let RD_休憩撤退Flg = false;
let RD_LeftStartFlg = false;
let RD_MikataSetup = false;
let RD_戦闘取得Gold = 0;
let RD_NoReDrawFlg = false;
Game_Interpreter.prototype.RD_Start = function (_RdId) {
NPlayer = [];
N_Sprite_DLayer = 0;
EasingStr = "";
RD_NowDungeonEcNo = [];
Bef_RD_SetAdSys = [];
rdEndFlg = false;
RD_救助人数 = 0;
$gameVariables.setValue(VN_次戦闘敵No ,0);
let b階層Flg = false;
if ($gameVariables.value(VN_RdKaiso) > 0) b階層Flg = true;
if ($gameSystem.RD_FstKoudo == undefined) $gameSystem.RD_FstKoudo = 5;
this.DelPictSpan(PN_LoadBase + 0 , PN_dpBar);
this.DelPictSpan(PN_MobB + 0, PN_MobT + 5);
this.DelSpriteSpan(PN_MobB + 0, PN_MobT + 5);
this.RD_相棒設定反映();
if (!b階層Flg) {
RD_Keep_NPlayer = null;
}
if (BtlRomashaFlg) {
this.PreLoadArr(RDPreLoadImgs);
$gameSystem.Btl_Chara = null;
this.Btl_Romasha_SetUp(b階層Flg);
}
this.DelSpriteSpan(PN_Reric , PN_Reric + 9);
this.DelSpriteSpan(PN_BReric , PN_BReric + 5);
if (!b階層Flg) {
RD_戦闘取得Gold = 0;
RD_EvStop = false;
RD_MikataSetup = false;
RD_休憩撤退Flg = false;
RD無限マリガンCount = 0;
RD_ReloadCnt = 0;
RD_Id = _RdId;
$gameActors.actor(1).setHp($gameActors.actor(1).mhp);
$gameVariables.setValue(VN_ThRitu, 0);
RDBtlSettingData = new RDBtlSettingClass();
}
SelRndRoot = null;
RD_BtlWinFlg = false;
RD_Flg = true;
RD_Stop = false;
this.SetCmnEvent(CN_RdStart);
this.RD_WalkImgSetting();
this.PreLoadArr(BtlPrePic);
if (!b階層Flg) {
RD_ClearArr = [];
RD_GainGold = 0;
RD_GainItem = [];
BtlKeepRDAdSysCT = [];
$gameVariables.setValue(VN_BossBrk, 0);
$gameVariables.setValue(VN_EmBrk, 0);
$gameVariables.setValue(VN_GetFotn, 0);
for (let i = 0; i <= 2; i++) {
$gameVariables.setValue(VN_rdSyori + i, 0);
}
} else {
this.RD_GainItem描画();
this.SetSpriteC(PN_rdOpeWin, RdnPicPath + "Ope/OpeWin", 906, 41, 255);
if ($gameSystem.Btl_Chara.Name != "spina_talk") {
$gameSystem.Btl_Chara.FDeck = CopyArr(RD階層KeepFDeck);
}
}
RD_LoseEndFlg = false;
WinSetFlg = false;
LoseSetFlg = false;
RD_DMapArr = [];
$gameSystem.RD_LineX = 0;
$gameSystem.RD_LineY = 100;
_RdPlX = 0;
_RdPlY = 2;
RD_ClearMode = EnRDClearMode.On;
RD_BadStCardAdds = [];
this.RD_PLStart_Cng();
$gameSystem.RD_HandCard = [];
MenuModeStr = _MMode.RdDungeon;
this.MapEnd();
$gameSystem.disableMenu();
if ($gameMap.mapId() != RdnMapId) {
$gameSystem.RD_BackMapData = new RD_MapPosSave(
$gameMap.mapId(), $gamePlayer.x, $gamePlayer.y, $gamePlayer._direction
);
$gamePlayer.reserveTransfer(RdnMapId, 0, 0, 2, 0);
}
if (!b階層Flg) {
this.RD_MoveDeck_Setting();
}
$gameSystem.RD_BaseData = RD_MasterData_Get(RD_Id);
RD_LeftStartFlg = $gameSystem.RD_BaseData.leftStartFlg;
if ($gameSystem.RD_BaseData.moveLimit == 0) $gameSystem.RD_BaseData.moveLimit = 5;
if ($gameSystem.RD_BaseData.moveLimit == -1) {
$gameSystem.RD_BaseData.moveLimit = 99;
}
RD_Koudo = $gameSystem.RD_BaseData.moveLimit;
if ($gameVariables.value(VN_RdKaiso) != 0) {
RD_KaisoData_Get(RD_Id);
}
RD_ClearGold = $gameSystem.RD_BaseData.hosyuGold;
RD_NoReDrawFlg = $gameSystem.RD_BaseData.noReDrawFlg;
var kaisoData = $gameSystem.RD_BaseData.kaisoDatas[$gameVariables.value(VN_RdKaiso)];
var _LineData = kaisoData.rowDatas.slice(0, kaisoData.rowDatas.length);
$gameSystem.RD_Map = [];
if (kaisoData.loopFlg) {
for (let i = 0; i <= 50 - 1; i++) {
for (let j = kaisoData.loopRowNo; j <= kaisoData.rowDatas.length - 1; j++) {
var rowData = kaisoData.rowDatas[j];
_LineData.push(rowData);
}
}
}
for (let i = 0; i <= _LineData.length - 1; i++) {
for (let j = 0; j <= _LineData[i].massList.length - 1; j++) {
_LineData[i].massList[j].KankakuCnt = _LineData[i].massList[j].putData.kankakuZure;
}
let _LCnt = 0;
let _SetLine = [];
while (_LCnt < 200) {
let addFlg = false;
for (let j = 0; j <= _LineData[i].massList.length - 1; j++) {
var massData = _LineData[i].massList[j];
switch (massData.putData.type) {
case "ライン":
_SetLine.push(massData);
addFlg = true;
break;
case "間隔":
if (_LineData[i].massList[j] != null) {
if (_LineData[i].massList[j].putData.kankaku <= _LineData[i].massList[j].KankakuCnt) {
_SetLine.push(massData);
addFlg = true;
_LineData[i].massList[j].KankakuCnt = 0;
}
_LineData[i].massList[j].KankakuCnt++;
}
break;
case "確率":
if (_LineData[i].massList[j].putData != null) {
let _ckPar = Math.random();
if (_LineData[i].massList[j].putData.kakuritu / 100 >= _ckPar) {
_SetLine.push(massData);
addFlg = true;
}
}
break;
}
}
if (!addFlg) _SetLine.push(null);
_LCnt++;
}
$gameSystem.RD_Map.push(_SetLine);
}
RD_Flame = 0;
$gameSystem.RD_Line = 0;
for (let j = 0; j < $gameSystem.AdSysCT.length; j++) {
$gameSystem.AdSysCT[j].ct = 0;
}
}
Game_Interpreter.prototype.RD_MoveDeck_Setting = function () {
if (BtlRomashaFlg) {
$gameTemp.reserveCommonEvent(CN_romasha_battale);
}
$gameSystem.RD_MoveDeck = CopyArr($gameSystem.Btl_Chara.FDeck);
$gameSystem.RD_MoveDeckBase = CopyArr($gameSystem.Btl_Chara.FDeck);
ShuffleArr($gameSystem.RD_MoveDeck);
}
Game_Interpreter.prototype.RD_PLStart_Cng = function () {
RD_Mode = EnRDMode.PL_Start;
_PLStart_Flame = 0;
}
let Rd_KaisoData = 1;
let 階層上昇 = function () {
Rd_KaisoData++;
}
let _PLStart_Flame = 0;
let _RdTPos = new Pos2D(720, 405);
Game_Interpreter.prototype.RD_PLStart_Update = function () {
if (_PLStart_Flame == 0) {
Rd_KaisoData = 1;
D_Text_Cng_font = "Makinas";
this.SetSpriteC(PN_rdStartWin + 0, RdnPicPath + "Win_MapStart", _RdTPos._x, _RdTPos._y, 0);
let kaisoName = $gameSystem.RD_BaseData.name + $gameSystem.RD_BaseData.kaisoDatas[$gameVariables.value(VN_RdKaiso)].kaisoName;
this.SpriteStrC(PN_rdStartWin + 1, "\\ow[7]" + kaisoName, 100, _RdTPos._x, _RdTPos._y, 0);
D_Text_Cng_font = "";
$gameScreen.startFadeIn(20);
this.EnFadeOut();
this.Ensyutu_Out();
}
if (_PLStart_Flame == 20) {
this.MoveSprite(PN_rdStartWin + 0, true, true, 30, 255);
this.MoveSprite(PN_rdStartWin + 1, true, true, 30, 255);
}
let _EndTime = 120;
if (_PLStart_Flame == _EndTime) {
this.MoveSprite(PN_rdStartWin + 0, true, true, 15, 0);
this.MoveSprite(PN_rdStartWin + 1, true, true, 15, 0);
this.RD_UIView();
this.RD_GainItem描画();
}
if (_PLStart_Flame == (_EndTime + 15)) {
this.RD_PLSelect_Cng();
this.DelPictSpan(PN_rdStartWin + 0, PN_rdStartWin + 1)
this.DelSpriteSpan(PN_rdStartWin + 0, PN_rdStartWin + 1)
}
_PLStart_Flame++;
}
Game_Interpreter.prototype.RD_FirstView = function () {
this.Set特殊暗転解除();
this.DelSpriteSpan(PNo_Map, PNo_HintStr);
if (BtlStatic.Battleback1 != "") {
this.SetSprite(PN_B_back, "battlebacks1/" + BtlStatic.Battleback1, 0, 0);
}
if (BtlStatic.Battleback2 != "") {
this.SetSprite(PN_B_back + 1, "battlebacks2/" + BtlStatic.Battleback2, 0, 0);
}
this.RD_Live2D_Draw();
//this.SetSprite(PN_UFuti, BtlPicPath + "PN_UFuti", 0, 0);
this.SetSprite(PN_DFuti, BtlPicPath + "PN_DFuti", 0, 507);
this.SetSprite(PN_rbBBack, RdnPicPath + "BackBlack", 0, 0);
this.RD_MapLineDraw(true, 0);
if (RD_NoReDrawFlg != true) {
this.SetSprite(PN_Reload, RdnPicPath + "PN_Reload", 0 - 192, 550);
}
this.RD_レリックDraw();
this.RD_MapHPDraw();
this.SetSprite(PN_BDeckBtn, RdnPicPath + "PN_BDeckCkBtn", 0, 650, 255);
this.SetSpriteC(PN_rdOpeWin, RdnPicPath + "Ope/OpeWin", 906, 41, 255);
$gameSystem.MasterDeck = CopyArr($gameSystem.DeckArr[$gameSystem.SelDeck]);
$gameSystem.MoveDeck = CopyArr($gameSystem.MasterDeck);
}
let STY_MovePic_l = "";
let STY_MovePic_t = "";
let STY_MovePic_d = "";
let STY_MovePic_r = "";
let STY_MovePic_down = "";
Game_Interpreter.prototype.RD_WalkImgSetting = function () {
if (BtlRomashaFlg) {
this.RD_PC_ImgSet();
} else {
Spn_FileLoad($gameSystem.Btl_Chara.Name);
RD_PlImg = $gameSystem.Btl_Chara.Name;
}
STY_MovePic_l = "pictures/UI_Dungeon/Ev/" + $gameSystem.Btl_Chara.Name + "/" + RD_PlImg + "_l";
STY_MovePic_t = "pictures/UI_Dungeon/Ev/" + $gameSystem.Btl_Chara.Name + "/" + RD_PlImg + "_t";
STY_MovePic_d = "pictures/UI_Dungeon/Ev/" + $gameSystem.Btl_Chara.Name + "/" + RD_PlImg + "_d";
STY_MovePic_r = "pictures/UI_Dungeon/Ev/" + $gameSystem.Btl_Chara.Name + "/" + RD_PlImg + "_r";
STY_MovePic_down = "pictures/UI_Dungeon/Ev/" + $gameSystem.Btl_Chara.Name + "/" + RD_PlImg + "_down";
this.PreLoadArr([
STY_MovePic_l, STY_MovePic_t, STY_MovePic_d , STY_MovePic_r, STY_MovePic_down
]);
}
Game_Interpreter.prototype.RD_FotoniaGetEffect = function () {
this.PlayPtcSc2Top("GetFotonia",952,700);
this.PlayPtcSc2Top("GetFotoniaChara",1100,400);
}