js:AAA狗粮批发1.2.4 (#1794)

* js:AAA狗粮批发1.2.4

* js:狗粮联机团购1.1.0
This commit is contained in:
mno
2025-09-02 10:14:16 +08:00
committed by GitHub
parent a62083617e
commit 028fb2280a
12 changed files with 1026 additions and 1248 deletions

View File

@@ -82,6 +82,8 @@ https://www.kdocs.cn/wo/sl/v13uXscL
## 更新日志
### 1.2.32025.09.01
1.修复了日期和时间计算的一个bug该bug曾导致每个月1号时断点续跑不生效
### 1.2.32025.08.31
1.修几条路线640,642,激活路线度假村/智障厅
### 1.2.22025.08.30

View File

@@ -245,12 +245,30 @@ async function readRecord(accountName) {
/* ---------- 判断今日是否运行(北京时间 04:00 分界,手动拼接 UTC 20 点) ---------- */
if (record.lastRunDate) {
const [y, m, d] = record.lastRunDate.split("/").map(Number);
// 东八区 04:00 对应 UTC 20:00
const lastRun4AM = new Date(`${y}-${String(m).padStart(2, '0')}-${String(d - 1).padStart(2, '0')}T20:00:00.000Z`).getTime();
const [y, m, d] = record.lastRunDate.split('/').map(Number);
// 1. 用 UTC 构造记录日期 00:00:00
const recordUtc = Date.UTC(y, m - 1, d); // 毫秒
// 2. 减 24 小时得到“前一天”
const prevUtc = recordUtc - 24 * 60 * 60 * 1000;
// 3. 从毫秒时间戳里取出 UTC 年月日
const prev = new Date(prevUtc);
const yy = prev.getUTCFullYear();
const mm = prev.getUTCMonth() + 1; // 1-based
const dd = prev.getUTCDate();
// 4. 严格按模板字符串拼成合法日期
const lastRun4AM = new Date(
`${yy}-${String(mm).padStart(2, '0')}-${String(dd).padStart(2, '0')}T20:00:00.000Z`
).getTime();
//log.info(`lastRun4AM = ${new Date(lastRun4AM).toISOString()}`);
const now = Date.now();
const now = Date.now(); // 当前毫秒时间戳
//log.info(`时间差为 ${now - lastRun4AM} ms`);
if (now - lastRun4AM < 24 * 60 * 60 * 1000) {
log.info("今日已经运行过狗粮");
state.runnedToday = true;

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 1,
"name": "AAA狗粮批发",
"version": "1.2.3",
"version": "1.2.4",
"tags": [
"狗粮"
],

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 1,
"name": "AAA狗粮联机团购",
"version": "1.0.7",
"version": "1.1.0",
"tags": [
"狗粮"
],

View File

@@ -1,8 +1,95 @@
[
{
"name": "runExtra",
"type": "checkbox",
"label": "运行额外路线,运行完联机收尾后单人运行时勾选\n勾选后处于单人世界时将运行额外路线\n如果选择自动进入模式则会在任务完成后运行额外路线"
},
{
"name": "groupMode",
"type": "select",
"label": "####################################################################\n联机运行配置\n\n运行模式",
"options": [
"手动进入后运行",
"按照下列配置自动进入并运行"
],
"default": "手动进入后运行"
},
{
"name": "yourIndex",
"type": "input-text",
"label": "该部分配置请仔细阅读readme后填写\n强烈建议联机运行的所有成员以下配置除你的序号外【完全相同】\n你的序号"
},
{
"name": "runningOrder",
"type": "input-text",
"label": "运行次序,将依次进入对应序号的成员的世界进行联机狗粮",
"default": "1234"
},
{
"name": "p1UID",
"type": "input-text",
"label": "1号的uid"
},
{
"name": "p1Name",
"type": "input-text",
"label": "1号的名称以游戏内实际显示为准有备注时填备注名"
},
{
"name": "p2UID",
"type": "input-text",
"label": "2号的uid"
},
{
"name": "p2Name",
"type": "input-text",
"label": "2号的名称以游戏内实际显示为准有备注时填备注名"
},
{
"name": "p3UID",
"type": "input-text",
"label": "3号的uid"
},
{
"name": "p3Name",
"type": "input-text",
"label": "3号的名称以游戏内实际显示为准有备注时填备注名"
},
{
"name": "p4UID",
"type": "input-text",
"label": "4号的uid"
},
{
"name": "p4Name",
"type": "input-text",
"label": "4号的名称以游戏内实际显示为准有备注时填备注名"
},
{
"name": "notify",
"type": "checkbox",
"label": "####################################################################\n其他配置\n\n是否通知信息"
},
{
"name": "forceGroupNumber",
"type": "input-text",
"label": "强制指定自己在队伍中的编号仅在识别异常时使用填0不指定",
"default": "0"
},
{
"name": "partyName",
"type": "input-text",
"label": "运行时使用队伍,将在进入联机模式前切换"
},
{
"name": "usingCharacter",
"type": "input-text",
"label": "运行时使用角色的序号\n将在进入联机模式前尝试切换到对应序号的角色"
},
{
"name": "p1EndingRoute",
"type": "select",
"label": "####################################################################\n收尾路线配置\n请确保每个人在该部分的选项【完全一致】\n\n1p收尾路线",
"label": "####################################################################\n收尾路线配置\n请确保每个人在该部分的选项【完全一致】\n非必要不建议更改\n\n1p收尾路线",
"options": [
"枫丹高塔",
"度假村",
@@ -48,46 +135,8 @@
"default": "踏鞴砂"
},
{
"name": "runExtra",
"name": "runDebug",
"type": "checkbox",
"label": "运行额外路线,运行完联机收尾后单人运行时勾选"
},
{
"name": "decomposeMode",
"type": "select",
"label": "####################################################################\n狗粮分解配置\n\n狗粮分解模式",
"options": [
"保留",
"分解(经验瓶)",
"销毁(摩拉)"
],
"default": "保留"
},
{
"name": "keep4Star",
"type": "checkbox",
"label": "是否保留四星(默认不保留)"
},
{
"name": "autoSalvage",
"type": "checkbox",
"label": "是否沿路自动分解(默认:否)"
},
{
"name": "notify",
"type": "checkbox",
"label": "####################################################################\n其他配置\n\n是否通知信息"
},
{
"name": "accountName",
"type": "input-text",
"label": "账户名称\n用于多账户运行时区分不同账户\n单账户无需修改",
"default": "默认账户"
},
{
"name": "forceGroupNumber",
"type": "input-text",
"label": "强制指定自己在队伍中的编号在识别异常时使用填0不指定",
"default": "0"
"label": "调试时勾选,跳过路线执行逻辑"
}
]

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB