princess-synergy/www/js/plugins/JsScript150Set.js
2026-02-15 18:55:18 -06:00

304 lines
11 KiB
JavaScript

let _PLSelect_SUFlg = false;
let _Bef_SelNo = -1;
let _YPlsMFlg = false;
Game_Interpreter.prototype.RD_PLSelect_Cng = function () {
RD_Mode = EnRDMode.PL_Select;
_Bef_SelNo = -1;
_PLSelect_SUFlg = false;
_PLSelect_SU_Flame = 0;
_PLSelect_Flame = 0;
PL_Select_Mode = RDSelMode._通常;
this.RD_MapHPDraw();
}
Game_Interpreter.prototype.RD移動後共通処理 = function () {
this.TmpEvPCall("RD_All" , 1);
}
let _PLSelect_SU_Flame = 0;
Game_Interpreter.prototype.RD_PLSelect_SetUp = function () {
if (_PLSelect_SU_Flame == 0) {
this.RD_ClrUIDraw();
RD_EvMode = Em_RD_EvMode.CSelect;
console.log("ベースコモンイベント");
this.TmpEvPCall("RD" + RD_Id + "_0" , $gameVariables.value(VN_RdKaiso) + 1);
if (RDBtlSettingData.移動カード制限Turn > 0) RDBtlSettingData.移動カード制限Turn--;
}
let rdDrawCount = $gameSystem.RD_HandVar;
if (RDBtlSettingData.移動カード制限Turn > 0) {
rdDrawCount = RDBtlSettingData.移動カード制限枚数;
}
rdDrawCount += RDBtlSettingData.移動カードCng枚数;
if (rdDrawCount <= 0) rdDrawCount = 1;
if (_PLSelect_SU_Flame == 1) {
if ($gameSystem.RD_HandCard.length >= rdDrawCount) {
_PLSelect_SUFlg = true;
if (RD_ReloadCnt == 0 && RDBtlSettingData.移動カード制限Turn <= 0) {
this.RD_ReloadBtnOn();
}
} else {
this.RD_CardSetting();
this.RD_CardDrawMove();
}
}
if (_PLSelect_SU_Flame == 15) {
_PLSelect_SU_Flame = 0;
}
_PLSelect_SU_Flame++;
}
let _PLSelect_Flame = 0;
let _UseCardPNo = -1;
let PL_Select_Mode = 1;
let RDSelMode = {
_通常:1,
_状態:2,
_撤退:3,
_デッキ確認:4
};
let RD_KoudoZeroLoseFlg = false;
let rdSelectWait_flame = 0;
Game_Interpreter.prototype.RD_PL_Select_Update = function () {
if(rdSelectWait_flame > 0){
rdSelectWait_flame--;
return;
}
if(RD_Koudo <= 0) {
RD_LoseEndFlg = RD_KoudoZeroLoseFlg = true;
let setX = GetSpriteData(PN_rdPlayer)._x;
let setY = GetSpriteData(PN_rdPlayer)._y;
this.SetSpriteC(PN_rdPlayer , STY_MovePic_down , setX , setY , 255);
RD_ClearMode = EnRDClearMode.Faild;
this.RD_RDEnd_Cng();
this.RD_ClrUIDraw();
return;
}
this.RD_行動数描画Update();
if (!_PLSelect_SUFlg){
L2dTop($gameSystem.Btl_Chara.Live2D.Name);
this.RD_PLSelect_SetUp();
} else {
switch (PL_Select_Mode){
case RDSelMode._通常:
this.OpeUpdate();
this.RD_PLSelect_BaseUpdate();
break;
case RDSelMode._撤退:
this.RD_PLSelect_撤退Update();
break;
case RDSelMode._デッキ確認:
this.RD_PLSelect_デッキ確認Update();
break;
}
_PLSelect_Flame++;
}
}
Game_Interpreter.prototype.RD_PLSelect_BaseUpdate = function () {
if (TutorialDgn管理No == 1) {
this.SetCmnEvent(CN_RDチュートリアル用);
return;
}
let overPicArr = [];
for (let i = 0; i <= $gameSystem.RD_HandCard.length - 1; i++) {
overPicArr.push($gameSystem.RD_HandCard[i].setPNo);
}
let ckPicNo = overPointerCkArr(overPicArr);
if (ckPicNo != -1) {
for (let i = 0; i <= $gameSystem.RD_HandCard.length - 1; i++) {
if ($gameSystem.RD_HandCard[i].setPNo == ckPicNo) {
let selectCard = $gameSystem.RD_HandCard[i];
this.PicCngColor(selectCard.setPNo, [-20, -20, -20, 0]);
if (_Bef_SelNo != ckPicNo) {
this.PicCngColor(selectCard.setPNo);
this.RD_CardDrawMove(selectCard.setPNo);
SelRndRoot = selectCard.CardRoot;
this.RD_MoveMapDraw();
_Bef_SelNo = ckPicNo;
}
if (TouchInput.isPressed()) {
if (TutorialDgn管理No == 6 && $gameVariables.value(VN_rdSyori) == 6) {
return;
}
this.RD_DMapArr_Get();
this.PlaySe("card");
this.MoveSprite(ckPicNo, selectCard.XPos - 20, selectCard.YPos - 129, 20, 0, 80, 80);
if (RD_Koudo < 99) RD_Koudo--;
_UseCardPNo = ckPicNo;
$gameSystem.RD_HandCard.splice(i, 1);
this.RD_PLMove_Cng();
if (RD_ReloadCnt > 0 && RDBtlSettingData.移動カード制限Turn <= 0){
RD_ReloadCnt--;
//this.SpriteStr(PN_Reload + 1, RD_ReloadCnt, 18, 10, 570, 150);
}
if ($gameSystem.RD_LineX == 0) {
this.RD_ReloadBtnOff();
}
break;
}
}
}
}
this.RD_レリックUpdate();
if (RD無限マリガンCount > 0) {
this.CngSprite(PN_Reload , RdnPicPath + "PN_Reload_Non");
}
else {
this.CngSprite(PN_Reload , RdnPicPath + "PN_Reload");
}
this.SpriteCngColor(PN_Reload);
let ckPointer = overPointerSpCk(PN_Reload) && RD_ReloadCnt == 0 && RDBtlSettingData.移動カード制限Turn <= 0;
if (RD無限マリガンCount > 0) {
ckPointer = overPointerSpCk(PN_Reload) && RD無限マリガンCount > 0;
}
if (ckPointer) {
this.SpriteCngColor(PN_Reload, [100, 100, 100, 0]);
if (TouchInput.isPressed()) {
if (TutorialDgn管理No >= 1 && TutorialDgn管理No <= 4) return;
if (RD_Koudo > 1 || RD無限マリガンCount > 0) {
if (RD_Koudo < 99) {
if (RD無限マリガンCount <= 0) {
RD_Koudo--;
}
}
this.RD_MoveCardReloadSetup();
}
else {
console.log("行動数が0になってしまいます");
}
if (TutorialDgn管理No == 6) RD_ReloadCnt = 9;
}
}
this.RD_撤退BtnUpdate();
}
Game_Interpreter.prototype.RD_MoveCardReloadSetup = function () {
$gameSystem.RD_HandCard = [];
this.RD_ReloadBtnOff();
this.RD_PLSelect_Cng();
this.DelPict(PN_HandMax + 2);
this.RD_行動数描画Update();
}
Game_Interpreter.prototype.RD_ReloadBtnOn = function () {
RD_ReloadCnt = 0;
if (TutorialDgn管理No >= 1 && TutorialDgn管理No <= 4) return;
if (TutorialDgn管理No == 5) TutorialDgn管理No = 6;
this.MoveSprite(PN_Reload, 0, true, 7);
//this.MoveSprite(PN_Reload + 1, true, true, 7, 0);
}
let RD無限マリガンCount = 0;
Game_Interpreter.prototype.RD_ReloadBtnOff = function () {
RD_ReloadCnt = 0;
if ($gameSystem.RD_LineX == 0 && $gameActors._data[1].equips()[3].id == 8 || RD無限マリガンCount > 0) {
RD_ReloadCnt = 0;
}
if (RD無限マリガンCount > 0) {
RD無限マリガンCount--;
}
this.MoveSprite(PN_Reload, -192, true, 7);
}
Game_Interpreter.prototype.RD_撤退BtnUpdate = function () {
let ckPicArr = [PN_rdRtBtn + 0, PN_rdRtBtn + 1];
this.SpriteCngColorArr(ckPicArr);
let ckPicNo = overPointerSpCkArr(ckPicArr);
if (ckPicNo != -1){
this.SpriteCngColor(ckPicNo, [100, 100, 100, 0]);
if (TouchInput.isPressed()){
switch (ckPicNo - PN_rdRtBtn){
case 1:
this.RD_PLSelect_撤退View();
PL_Select_Mode = RDSelMode._撤退;
break;
}
}
}
this.SpriteCngColor( PN_BDeckBtn);
if(overPointerSpCk(PN_BDeckBtn)){
this.SpriteCngColor( PN_BDeckBtn , [150,150,150,0]);
if (TouchInput.isTriggered()) {
this.RD_PLelect_デッキ確認Cng();
}
}
}
const Rd_DeckPath = RdnPicPath + "Deck/";
Game_Interpreter.prototype.RD_PLelect_デッキ確認Cng = function () {
PL_Select_Mode = RDSelMode._デッキ確認;
this.Deck一覧View(PN_BDeckBack , $gameSystem.Btl_Chara.FDeck);
}
Game_Interpreter.prototype.RD_PLSelect_デッキ確認Update = function () {
if(this.Deck一覧Update()) {
rdSelectWait_flame = 10;
PL_Select_Mode = RDSelMode._通常;
}
};
Game_Interpreter.prototype.RD_PLSelect_撤退View = function () {
this.SetSprite(PN_rdMenu, RdnPicPath + "TettaiBase", 0, 0, 0);
this.MoveSprite(PN_rdMenu, true, true, 10);
RD_TettaiSelectNo = 1;
this.SetSpriteC(PN_rdMenu + 1, RdnPicPath + "TettaiSelect", 524 + (351 * RD_TettaiSelectNo), 461, 0);
this.MoveSprite(PN_rdMenu + 1, true, true, 10);
}
let _RdTettaiCM = [
[422, 422, 202, 78],
[750, 422, 249, 78]
];
let RD_TettaiSelectNo = 1;
Game_Interpreter.prototype.RD_PLSelect_撤退Update = function () {
let ckNo = overSpriteClickable(PN_rdMenu, _RdTettaiCM);
switch (ckNo){
case 0:
if (ckNo != RD_TettaiSelectNo){
RD_TettaiSelectNo = ckNo;
this.MoveSprite(PN_rdMenu + 1, 524 + (351 * RD_TettaiSelectNo), true, 5);
}
if (TouchInput.isPressed()) {
this.RD_RDEnd_Cng();
}
break;
case 1:
if (ckNo != RD_TettaiSelectNo) {
RD_TettaiSelectNo = ckNo;
this.MoveSprite(PN_rdMenu + 1, 524 + (351 * RD_TettaiSelectNo), true, 5);
}
if (TouchInput.isPressed()) {
PL_Select_Mode = 1;
this.RD_RTBtn_MenuDel();
}
break;
}
if (Input.isTriggered('menu') || TouchInput.isCancelled()) {
PL_Select_Mode = 1;
this.RD_RTBtn_MenuDel();
}
}
Game_Interpreter.prototype.RD_RTBtn_MenuDel = function () {
for (let i = 0; i <= 30; i++) {
this.DelPict(PN_rdMenu + i);
this.DelSprite(PN_rdMenu + i);
}
}
Game_Interpreter.prototype.RD_行動数描画Update = function () {
this.SetSprite(PN_rdKoudoCnt + 0, RdnPicPath + "PN_rdKoudoCnt", 0, 0);
let _cntStr = RD_Koudo;
if (_cntStr < 0) _cntStr = 0;
if (_cntStr > 9) _cntStr = 10;
this.SetSpriteC(PN_rdKoudoCnt + 1, BtlPicPath + "PN_EdCount" + _cntStr, 948, 654);
if (overPointerSpCkTm(PN_rdKoudoCnt + 0)) {
D_Text_Cng_font = "Makinas";
this.SetSpriteC(PN_dgnKodoWin, RdnPicPath + "PN_dgnKodoWin", 946, 569);
if (RD_Koudo >= 99) {
this.SpriteStrC( PN_dgnKodoWin + 1 , "Unlimited" , 24 , 946, 562);
} else {
this.SpriteStrC( PN_dgnKodoWin + 1 , "Left: " + RD_Koudo + " moves" , 24 , 946, 562);
}
D_Text_Cng_font = "";
} else {
this.DelSpriteSpan(PN_dgnKodoWin , PN_dgnKodoWin + 1);
}
}
let RD_Koudo_WinPlsCnt = 3;
Game_Interpreter.prototype.RD_戦闘勝利行動数増加量設定 = function (_setCnt) {
RD_Koudo_WinPlsCnt = _setCnt;
}
let RD_戦闘勝利行動数増加量Reset = function () {
RD_Koudo_WinPlsCnt = 3;
}
Game_Interpreter.prototype.RD_行動数変更 = function (_cngCnt) {
RD_Koudo += _cngCnt;
if (RD_Koudo < 0) RD_Koudo = 0;
}