diff --git a/iidx@asphyxia/handlers/gamesystem.ts b/iidx@asphyxia/handlers/gamesystem.ts index ceb0694..b8f830f 100644 --- a/iidx@asphyxia/handlers/gamesystem.ts +++ b/iidx@asphyxia/handlers/gamesystem.ts @@ -131,6 +131,19 @@ export const gssysteminfo: EPR = async (info, data, send) => { } break; case 31: + let totalMetron = 0; + let eventData = await DB.Find(null, { + collection: "event_1", + version: version, + event_data: "myepo_map", + }); + + if (!_.isNil(eventData)) { + eventData.forEach((res: any) => { + totalMetron += Number(res.metron_total_get); + }); + } + result = { ...result, CommonBossPhase: K.ATTR({ val: String(3) }), @@ -144,7 +157,7 @@ export const gssysteminfo: EPR = async (info, data, send) => { BPLBattleOpenPhase: K.ATTR({ val: String(2) }), UnlockLeggendaria: K.ATTR({ val: String(1) }), BPLSerialCodePhase: K.ATTR({ val: String(0) }), - Event1AllPlayerTotalGetMetron: K.ATTR({ val: String(2500) }), + Event1AllPlayerTotalGetMetron: K.ATTR({ val: String(totalMetron) }), // total amount of all users metron // } break; diff --git a/iidx@asphyxia/handlers/pc.ts b/iidx@asphyxia/handlers/pc.ts index 12e71c3..86150e5 100644 --- a/iidx@asphyxia/handlers/pc.ts +++ b/iidx@asphyxia/handlers/pc.ts @@ -1023,7 +1023,7 @@ export const pcget: EPR = async (info, data, send) => { - 8 - 1 [notes_radar] - 10 - (none) - 11 - 1 - - 12 - (none) + - 12 - (none) [tourism?] - 13 - (none) [event] - 14 - 1 - 15 - (none) @@ -1035,56 +1035,81 @@ export const pcget: EPR = async (info, data, send) => { ***/ if (version >= 30 && badge.length > 0) { - let djLevel, clear, grade, step_up, visitor, notes_radar, event1, event2; + let djLevel, clear, grade, step_up, visitor, notes_radar, world_tourism, event1, event2; + + // visitor, notes_radar, world_tourism, step_up // + if (version == 30) { + // this keep sending back on save // + // possibly wrong category_id but at least doesn't show as new badges // + visitor = badge.filter((res) => res.category_name === "visitor"); + visitor.forEach((res) => { + bArray.push({ + id: 6, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + notes_radar = badge.filter((res) => res.category_name === "notes_radar"); + notes_radar.forEach((res) => { + bArray.push({ + id: 7, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + world_tourism = badge.filter((res) => res.category_name === "world_tourism"); + world_tourism.forEach((res) => { + bArray.push({ + id: 8, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + } else { + step_up = badge.filter((res) => res.category_name === "step_up"); + step_up.forEach((res) => { + bArray.push({ + id: 3, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + // this keep sending back on save // + // possibly wrong category_id but at least doesn't show as new badges // + visitor = badge.filter((res) => res.category_name === "visitor"); + visitor.forEach((res) => { + bArray.push({ + id: 7, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + notes_radar = badge.filter((res) => res.category_name === "notes_radar"); + notes_radar.forEach((res) => { + bArray.push({ + id: 8, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + world_tourism = badge.filter((res) => res.category_name === "world_tourism"); + world_tourism.forEach((res) => { + bArray.push({ + id: 12, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + } + + // event // switch (version) { case 30: - djLevel = badge.filter((res) => res.category_name === "djLevel"); - djLevel.forEach((res) => { - bArray.push({ - id: 0, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - clear = badge.filter((res) => res.category_name === "clear"); - clear.forEach((res) => { - bArray.push({ - id: 1, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - grade = badge.filter((res) => res.category_name === "grade"); - grade.forEach((res) => { - bArray.push({ - id: 2, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - // this keep sending back on save // - // possibly wrong category_id but at least doesn't show as new badges // - visitor = badge.filter((res) => res.category_name === "visitor"); - visitor.forEach((res) => { - bArray.push({ - id: 6, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - notes_radar = badge.filter((res) => res.category_name === "notes_radar"); - notes_radar.forEach((res) => { - bArray.push({ - id: 7, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - event1 = badge.filter((res) => res.category_name === "event1"); event1.forEach((res) => { bArray.push({ @@ -1095,62 +1120,6 @@ export const pcget: EPR = async (info, data, send) => { }); break; case 31: - djLevel = badge.filter((res) => res.category_name === "djLevel"); - djLevel.forEach((res) => { - bArray.push({ - id: 0, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - clear = badge.filter((res) => res.category_name === "clear"); - clear.forEach((res) => { - bArray.push({ - id: 1, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - grade = badge.filter((res) => res.category_name === "grade"); - grade.forEach((res) => { - bArray.push({ - id: 2, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - step_up = badge.filter((res) => res.category_name === "step_up"); - step_up.forEach((res) => { - bArray.push({ - id: 3, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - // this keep sending back on save // - // possibly wrong category_id but at least doesn't show as new badges // - visitor = badge.filter((res) => res.category_name === "visitor"); - visitor.forEach((res) => { - bArray.push({ - id: 7, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - - notes_radar = badge.filter((res) => res.category_name === "notes_radar"); - notes_radar.forEach((res) => { - bArray.push({ - id: 8, - flg_id: res.flg_id, - flg: res.flg, - }); - }); - event1 = badge.filter((res) => res.category_name === "event1"); event1.forEach((res) => { bArray.push({ @@ -1173,6 +1142,36 @@ export const pcget: EPR = async (info, data, send) => { default: break; } + + // default // + djLevel = badge.filter((res) => res.category_name === "djLevel"); + djLevel.forEach((res) => { + bArray.push({ + id: 0, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + clear = badge.filter((res) => res.category_name === "clear"); + clear.forEach((res) => { + bArray.push({ + id: 1, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + grade = badge.filter((res) => res.category_name === "grade"); + grade.forEach((res) => { + bArray.push({ + id: 2, + flg_id: res.flg_id, + flg: res.flg, + }); + }); + + bArray.sort((a, b) => a.id - b.id || a.flg_id - b.flg_id); } return send.pugFile(`pug/LDJ/${version}pcget.pug`, {