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

204 lines
8.4 KiB
JavaScript

let menuHSearchPos = new Pos2D(185, 80);
let NMH_GS_ini = Game_System.prototype.initialize;
Game_System.prototype.initialize = function () {
NMH_GS_ini.call(this);
this.SComeArr = [];
this.SBbsArr = [];
};
class SearchComment {
constructor(textArr, name , bbsData) {
this._TxtArr = textArr;
this._Name = name;
this._Vflg = false;
this._BbsData = bbsData;
}
}
class BbsData {
constructor(topic , text , picPath) {
this.topic = topic;
this.text = text;
this.picPath = picPath;
}
}
let AddCmnt = function (textArr, name) {
$gameSystem.SComeArr.push(new SearchComment(textArr, name , null));
}
let AddBbs = function (textArr, name , bbsTopic , bbsText , bbsPicPath) {
bbsPicPath = typeof bbsPicPath !== 'undefined' ? bbsPicPath : "";
$gameSystem.SBbsArr.push(new SearchComment(textArr, name , new BbsData(bbsTopic , bbsText , bbsPicPath)));
}
let ResetBbs = function () {
$gameSystem.SBbsArr = [];
menuHSearchPicArr = [];
menuHSearhDatas = [];
}
let setCommentArr = [];
let menuHSearchFlame = 0;
let Menu_H_SearchMode = 0;
let menuHSearchWinCount = 0;
let menuHSearchWinMaxCnt = 0;
let menuHSearchRndYArr = [];
var bbsFlg = false;
Game_Interpreter.prototype.Menu_H_SearchView = function (fadeInFlg) {
fadeInFlg = typeof fadeInFlg !== 'undefined' ? fadeInFlg : false;
ViewSpriteArr_Reset();
let setOpacity = 255;
if (fadeInFlg) {
menuHSearchFlame = 0;
if (!bbsFlg)
menuHSearchWinMaxCnt = $gameSystem.SComeArr.length - 1;
else
menuHSearchWinMaxCnt = $gameSystem.SBbsArr.length - 1;
if (menuHSearchWinMaxCnt >= 9) menuHSearchWinMaxCnt = 9;
menuHSearchWinCount = 0;
setOpacity = 0;
menuHSearchRndYArr = randomGetArr([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], 10);
}
if (!bbsFlg) {
this.SetSprite(PN_SBase, Menu_H_UIPath + "Search/SBase", menuHSearchPos._x, menuHSearchPos._y, setOpacity);
}
setCommentArr = [];
if (!bbsFlg) {
let startIndex = $gameSystem.SComeArr.length - 10;
if (startIndex < 0) startIndex = 0;
for (let i = startIndex; i <= $gameSystem.SComeArr.length - 1; i++) {
setCommentArr.push($gameSystem.SComeArr[i]);
}
} else {
let startIndex = $gameSystem.SBbsArr.length - 10;
if (startIndex < 0) startIndex = 0;
for (let i = startIndex; i <= $gameSystem.SBbsArr.length - 1; i++) {
setCommentArr.push($gameSystem.SBbsArr[i]);
}
}
for (let i = 0; i <= ViewSpriteArr.length - 1; i++) {
this.MoveSprite(ViewSpriteArr[i], true, true, 10, 255, true, true);
}
this.SetSpriteC(PN_BbsReload, Menu_H_UIPath + "Search/PN_BbsReload", menuHSearchPos._x + 544, menuHSearchPos._y + 671, 0);
this.MoveSprite(PN_BbsReload, true, true, 10, 255, true, true);
}
let menuHSearchSetRndX = 350;
let menuHSearchSetRndY = 376;
let menuHSearchPicArr = [];
let menuHSearhDatas = [];
Game_Interpreter.prototype.Menu_H_SearchUpdate = function () {
if (menuHSearchFlame == 1 && !bbsFlg) {
this.SetSprite(PN_SBack, Menu_H_UIPath + "Search/SBack", menuHSearchPos._x, menuHSearchPos._y, 0);
this.MoveSprite(PN_SBack, true, true, 60, 255, true, true);
menuHSearchPicArr = [];
menuHSearhDatas = [];
}
this.SpriteCngColor(PN_BbsReload);
if (overPointerSpCk(PN_BbsReload)) {
this.SpriteCngColor( PN_BbsReload , [100,100,100,0]);
if (TouchInput.isTriggered()) {
this.DelSpriteSpan(PN_SWinS , PN_BbsPicture);
menuHSearhDatas = [];
this.Menu_H_SearchView(true);
ShuffleArr(setCommentArr);
bbsDetailViewFlg = false;
}
}
if (menuHSearchFlame > 1 && menuHSearchFlame % 5 == 0 && menuHSearchWinCount <= setCommentArr.length - 1) {
let outLineStr = "\\ow[0]"
D_Text_Cng_font = "Makinas";
let setX = menuHSearchPos._x + 58 + (350 * (menuHSearchRndYArr[menuHSearchWinCount] / 9));
let setY = menuHSearchPos._y + 148 + (Math.random() * 376);
let setPicNo = PN_SWinS + (menuHSearchWinCount * 5);
let viewFlame = 10;
if (bbsFlg) {
setX -= 100;
menuHSearchPicArr.push(setPicNo);
menuHSearhDatas.push(setCommentArr[menuHSearchWinCount]._BbsData);
}
let _SPar = 1 - (0.5 * ((menuHSearchWinMaxCnt - menuHSearchWinCount) / menuHSearchWinMaxCnt));
if (menuHSearchWinMaxCnt <= 0) _SPar = 1;
this.SetSprite(setPicNo + 0, Menu_H_UIPath + "Search/SWin", setX, setY, 0, 100 * _SPar, 100 * _SPar);
this.MoveSprite(setPicNo + 0, true, true, viewFlame, 255, true, true);
for (let i = 0; i <= setCommentArr[menuHSearchWinCount]._TxtArr.length - 1; i++) {
this.SpriteStr(setPicNo + 1 + i, outLineStr + setCommentArr[menuHSearchWinCount]._TxtArr[i], 20 * _SPar,
setX + 20, setY + (22 + (i * 23)) * _SPar, 0, 100 * _SPar, 100 * _SPar);
this.MoveSprite(setPicNo + 1 + i, true, true, viewFlame, 255, true, true);
}
this.SpriteStrR(setPicNo + 4, outLineStr + setCommentArr[menuHSearchWinCount]._Name, 20 * _SPar,
setX + (330 * _SPar), setY + (88 * _SPar), 0, 100 * _SPar, 100 * _SPar);
this.MoveSprite(setPicNo + 4, true, true, viewFlame, 255, true, true);
menuHSearchWinCount++;
D_Text_Cng_font = "";
}
menuHSearchFlame++;
}
function randomGetArr(array, num) {
let a = array;
let t = [];
let r = [];
let l = a.length;
let n = num < l ? num : l;
while (n-- > 0) {
let i = Math.random() * l | 0;
r[n] = t[i] || a[i];
--l;
t[i] = t[l] || a[l];
}
return r;
}
Game_Interpreter.prototype.BBS_Viewer_Start = function () {
bbsFlg = true;
this.SetSprite(PN_SBack, Menu_H_UIPath + "Search/BbsBaseBack", 0 , 0 , 0);
this.MoveSprite(PN_SBack, true, true, 20, 255, true, true);
this.SetSprite(PN_SBack + 1, Menu_H_UIPath + "Search/BbsBase", 36 , 54 , 0);
this.MoveSprite(PN_SBack + 1, true, true, 20, 255, true, true);
this.SetSprite(PN_SBack + 2, Menu_H_UIPath + "Search/BbsBack", 36 , 54 , 0);
this.MoveSprite(PN_SBack + 2, true, true, 20, 255, true, true);
this.Menu_H_SearchView(true);
}
var bbsDetailViewFlg = false;
var bbsSelectPicNo = -1;
Game_Interpreter.prototype.BBS_Viewer_Update= function () {
this.Menu_H_SearchUpdate();
if (bbsDetailViewFlg) {
this.BBS_DetailData_Update();
return true;
}
this.SpriteCngColorArr(menuHSearchPicArr);
var ckPicNo = overPointerSpCkArr(menuHSearchPicArr);
if (ckPicNo != -1) {
this.SpriteCngColor(ckPicNo , [80,80,80,0]);
if (TouchInput.isTriggered()) {
for (let i = 0; i < menuHSearchPicArr.length; i++) {
if (ckPicNo == menuHSearchPicArr[i]) {
var ckData = menuHSearhDatas[i];
bbsSelectPicNo = menuHSearchPicArr[i];
this.BBS_DetailData_View(ckData);
bbsDetailViewFlg = true;
return true;
}
}
}
}
Menu禁止Flame = 5;
if (Input.isTriggered('menu') || TouchInput.isCancelled()) {
bbsFlg = false;
this.DelSpriteSpan(PN_SBack , PN_BbsPicture);
return false;
}
return true;
}
Game_Interpreter.prototype.BBS_DetailData_View = function (_viewData) {
this.SetSprite(PN_BbsDtl, Menu_H_UIPath + "Search/BbsDetail", 147 , 160)
let outLineStr = "\\ow[0]"
this.SpriteStr(PN_BbsTopic, outLineStr + _viewData.topic, 22, 200 , 225);
var addText = "";
for (let i = 0; i <= _viewData.text.length - 1; i++)
addText += _viewData.text[i] + "\n";
this.SpriteStr(PN_BbsText, outLineStr + addText, 17, 200 , 225 + 57);
if (_viewData.picPath != "")
this.SetSprite(PN_BbsPicture, Menu_H_UIPath + "Search/BbsDetailPic/" + _viewData.picPath , 147 , 160);
}
Game_Interpreter.prototype.BBS_DetailData_Update = function () {
if (Input.isTriggered('menu') || TouchInput.isCancelled()) {
this.DelSpriteSpan(PN_BbsDtl , PN_BbsPicture);
bbsDetailViewFlg = false;
this.DelSpriteSpan(bbsSelectPicNo , bbsSelectPicNo + 4);
}
}