diff --git a/iidx@asphyxia/handlers/pc.ts b/iidx@asphyxia/handlers/pc.ts index 1c897e8..351e055 100644 --- a/iidx@asphyxia/handlers/pc.ts +++ b/iidx@asphyxia/handlers/pc.ts @@ -9,6 +9,7 @@ import { world_tourism } from "../models/worldtourism"; import { shop_data } from "../models/shop"; import { tutorial } from "../models/tutorial"; import { expert } from "../models/ranking"; +import { blueboss } from "../models/event"; export const pccommon: EPR = async (info, data, send) => { const version = GetVersion(info); @@ -24,6 +25,7 @@ export const pccommon: EPR = async (info, data, send) => { // exposing these to plugin setting or use static value // switch (version) { case 15: + break; case 16: result = { ...result, @@ -593,14 +595,16 @@ export const pcget: EPR = async (info, data, send) => { else if (version == 20) { if (!_.isNil(pcdata.st_stamp)) pcdata.st_stamp = Base64toBuffer(pcdata.st_stamp).toString("hex"); if (!_.isNil(pcdata.st_help)) pcdata.st_help = Base64toBuffer(pcdata.st_help).toString("hex"); - if (_.isNil(pcdata.st_stamp)) pcdata.st_stamp = ""; // temp // let link5 = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "link5" }); let tricolettepark = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "tricolettepark" }); let redboss = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "redboss" }); + let blueboss = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "blueboss" }); let yellowboss = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "yellowboss" }); + if (!_.isNil(blueboss)) blueboss.durability = Base64toBuffer(blueboss.durability).toString("hex"); + return send.pugFile("pug/LDJ/pcget.pug", { profile, pcdata, @@ -611,6 +615,7 @@ export const pcget: EPR = async (info, data, send) => { link5, tricolettepark, redboss, + blueboss, yellowboss, shop_data, }); @@ -1446,6 +1451,53 @@ export const pcsave: EPR = async (info, data, send) => { pcdata.orb += parseInt($(data).attr("commonboss").orb); } + if (!_.isNil($(data).element("redboss"))) { + let event_data = { + progress: parseInt($(data).attr("redboss").progress), + crush: parseInt($(data).attr("redboss").crush), + open: parseInt($(data).attr("redboss").open), + } + + await DB.Upsert(refid, + { + collection: "event_1", + version: version, + event_name: "redboss", + }, + { + $set: event_data, + } + ); + } + + if (!_.isNil($(data).element("blueboss"))) { + let event_data: blueboss = { + level: Number($(data).attr("blueboss").level), + gauge: Number($(data).attr("blueboss").gauge), + item: Number($(data).attr("blueboss").item), + item_flg: Number($(data).attr("blueboss").item_flg), + row0: Number($(data).attr("blueboss").row0), + row1: Number($(data).attr("blueboss").row1), + column0: Number($(data).attr("blueboss").column0), + column1: Number($(data).attr("blueboss").column1), + general: Number($(data).attr("blueboss").general), + first_flg: Number($(data).element("blueboss").bool("first_flg")), + sector: Number($(data).element("blueboss").bool("sector")), + durability: $(data).element("blueboss").buffer("durability").toString("base64"), + } + + await DB.Upsert(refid, + { + collection: "event_1", + version: version, + event_name: "blueboss", + }, + { + $set: event_data, + } + ); + } + if (!_.isNil($(data).element("yellowboss"))) { let yellowboss = await DB.FindOne(refid, { collection: "event_1", version: version, event_name: "yellowboss" }); let event_data; @@ -1477,7 +1529,7 @@ export const pcsave: EPR = async (info, data, send) => { event_data.pbest_attack[a] = Math.max(event_data.pbest_attack[a], p_attack[a]); } } - + await DB.Upsert(refid, { @@ -1490,25 +1542,6 @@ export const pcsave: EPR = async (info, data, send) => { } ); } - - if (!_.isNil($(data).element("redboss"))) { - let event_data = { - progress: parseInt($(data).attr("redboss").progress), - crush: parseInt($(data).attr("redboss").crush), - open: parseInt($(data).attr("redboss").open), - } - - await DB.Upsert(refid, - { - collection: "event_1", - version: version, - event_name: "redboss", - }, - { - $set: event_data, - } - ); - } } else if (version == 21) { pcdata.rtype = parseInt($(data).attr().rtype); diff --git a/iidx@asphyxia/models/event.ts b/iidx@asphyxia/models/event.ts new file mode 100644 index 0000000..784db38 --- /dev/null +++ b/iidx@asphyxia/models/event.ts @@ -0,0 +1,14 @@ +export interface blueboss { + level: number; + gauge: number; + item: number; + item_flg: number; + row0: number; + row1: number; + column0: number; + column1: number; + general: number; + first_flg: number; + sector: number; + durability: string; +} diff --git a/iidx@asphyxia/pug/LDJ/pcget.pug b/iidx@asphyxia/pug/LDJ/pcget.pug index 0ba682b..f3a3269 100644 --- a/iidx@asphyxia/pug/LDJ/pcget.pug +++ b/iidx@asphyxia/pug/LDJ/pcget.pug @@ -38,7 +38,9 @@ pc(status="0") commonboss(deller=pcdata.deller orb=pcdata.orb baron="0") if redboss != null redboss(progress=redboss.progress crush=redboss.crush open=redboss.open) - //-blueboss(level gauge item item_flg column0 column1 sector first_flg general) + if blueboss != null + blueboss(level=blueboss.level gauge=blueboss.gauge item=blueboss.item item_flg=blueboss.item_flg row0=blueboss.row0 row1=blueboss.row1 column0=blueboss.column0 column1=blueboss.column1 sector=blueboss.sector first_flg=blueboss.first_flg general=blueboss.general) + durability(__type="bin") #{blueboss.durability} if yellowboss != null yellowboss(join_num="1" first_flg=yellowboss.first_flg level=yellowboss.level heroic0=yellowboss.heroic0 heroic1=yellowboss.heroic1 critical=yellowboss.critical destiny="0" last_select=yellowboss.last_select shop_message="SHOP MESSAGE" special_move="SPECIAL MOVE") //-shop_damage(__type="s32" __count="7")