添加添加圣诞小镇附近掉落信息

This commit is contained in:
woohoo 2021-12-18 17:03:50 +08:00
parent ba0f9ca038
commit 8d794d8c66
3 changed files with 122 additions and 5 deletions

View File

@ -1,8 +1,8 @@
// ==UserScript== // ==UserScript==
// @lastmodified 202112161733 // @lastmodified 202112181703
// @name Torn翻译 // @name Torn翻译
// @namespace WOOH // @namespace WOOH
// @version 0.1.1216a // @version 0.1.1218a
// @description Torn UI翻译 // @description Torn UI翻译
// @author Woohoo-[2687093] sabrina_devil[2696209] // @author Woohoo-[2687093] sabrina_devil[2696209]
// @match https://www.torn.com/* // @match https://www.torn.com/*
@ -23,6 +23,11 @@
todo: true, todo: true,
cont: `baza npc商店 imarket及imarket搜索结果`, cont: `baza npc商店 imarket及imarket搜索结果`,
}, },
{
ver: '0.1.1218a',
date: '20211218',
cont: `添加添加圣诞小镇附近掉落信息`,
},
{ {
ver: '0.1.1216a', ver: '0.1.1216a',
date: '20211216', date: '20211216',
@ -5426,6 +5431,48 @@ margin: 0 0 3px;
}); });
} }
}); });
const chestTypeDict = {'1': '金', '2': '银', '3': '铜',};
const lootTypeDict = {'chests': '宝箱', 'gifts': '礼物箱',}
window.setInterval(() => {
const $city_wrapper = $root.querySelector('#ct-wrap');
if ($city_wrapper) {
const $wh_loot_container = $root.querySelector('#wh-loot-container');
if (!$wh_loot_container) {
const insert_html = `<div id="wh-loot-container" class="m-bottom10">
<div class="title-black"><span>附近物品</span></div>
<div id="wh-loot-container-main" class="cont-gray" style="padding: 0.5em">
<b>物品</b>
<div id="wh-loot-container-items"></div>
<b>箱子</b>
<div id="wh-loot-container-chests"></div>
</div>
</div>`;
$($city_wrapper).before(insert_html);
}
}
const items = $root.querySelectorAll('div.grid-layer div.items-layer div.ct-item');
let item_list = [];
items.forEach(e => {
const item_props = {x: 0, y: 0, name: '', type: ''};
item_props.x = parseInt(e.style.left.replaceAll('px', '')) / 30;
item_props.y = -parseInt(e.style.top.replaceAll('px', '')) / 30;
const srcSpl = e.firstElementChild.src.trim().split('/');
item_props.name = srcSpl[6];
item_props.type = srcSpl[8].slice(0, 1);
item_list[item_list.length] = item_props;
});
const $wh_loot_container_items = $root.querySelector('#wh-loot-container-items');
const $wh_loot_container_chests = $root.querySelector('#wh-loot-container-chests');
$wh_loot_container_items.innerHTML = ``;
$wh_loot_container_chests.innerHTML = ``;
item_list.forEach(e => {
if (e.name === 'chests') {
$wh_loot_container_chests.innerHTML += `<span>[${e.x},${e.y}] - ${chestTypeDict[e.type]}${lootTypeDict[e.name]}</span><br/>`
} else {
$wh_loot_container_items.innerHTML += `<span>[${e.x},${e.y}] - ${lootTypeDict[e.name] || '?钥匙'}</span><br/>`
}
});
}, 1200);
return; return;
} }
@ -6355,7 +6402,11 @@ ${htmlCont}</div></div></div></div><hr class="delimiter-999 m-top10 m-bottom10">
* 任务助手 * 任务助手
*/ */
function getTaskHint(task_name) { function getTaskHint(task_name) {
task_name = task_name.toLowerCase().replaceAll(' ', '_').replaceAll(',', ''); task_name = task_name
.toLowerCase()
.replaceAll(' ', '_')
.replaceAll('-', '_')
.replaceAll(',', '');
if (!missionDict._taskHint[task_name]) return '暂无,请联系开发者'; if (!missionDict._taskHint[task_name]) return '暂无,请联系开发者';
const task = missionDict._taskHint[task_name].task || null; const task = missionDict._taskHint[task_name].task || null;
const hint = missionDict._taskHint[task_name].hint || null; const hint = missionDict._taskHint[task_name].hint || null;

View File

@ -0,0 +1,66 @@
// ==UserScript==
// @name Torn圣诞小镇掉落物品坐标显示
// @namespace WH
// @version 0.1
// @description 在地图界面上方显示附近的宝箱、物品、钥匙坐标兼容手机APP Torn PDA及Alook
// @author Woohoo[2687093]
// @match https://www.torn.com/*
// @grant none
// ==/UserScript==
(function () {
'use strict';
const ___window___ = window || window.unsafeWindow;
if (___window___.WHLOOTPOS) return;
___window___.WHLOOTPOS = true;
const $ = ___window___.jQuery;
if (/christmas_town\.php/.test(window.location.href)) {
const $root = document.querySelector('#christmastownroot');
const chestTypeDict = {'1': '金', '2': '银', '3': '铜',};
const lootTypeDict = {'chests': '宝箱', 'gifts': '礼物箱',}
window.setInterval(() => {
const $city_wrapper = $root.querySelector('#ct-wrap');
if ($city_wrapper) {
const $wh_loot_container = $root.querySelector('#wh-loot-container');
if (!$wh_loot_container) {
const insert_html = `<div id="wh-loot-container" class="m-bottom10">
<div class="title-black"><span>附近物品</span></div>
<div id="wh-loot-container-main" class="cont-gray" style="padding: 0.5em">
<b>物品</b>
<div id="wh-loot-container-items"></div>
<b>箱子</b>
<div id="wh-loot-container-chests"></div>
</div>
</div>`;
$($city_wrapper).before(insert_html);
}
}
const items = $root.querySelectorAll('div.grid-layer div.items-layer div.ct-item');
let item_list = [];
items.forEach(e => {
const item_props = {x: 0, y: 0, name: '', type: ''};
item_props.x = parseInt(e.style.left.replaceAll('px', '')) / 30;
item_props.y = -parseInt(e.style.top.replaceAll('px', '')) / 30;
const srcSpl = e.firstElementChild.src.trim().split('/');
item_props.name = srcSpl[6];
item_props.type = srcSpl[8].slice(0, 1);
item_list[item_list.length] = item_props;
});
const $wh_loot_container_items = $root.querySelector('#wh-loot-container-items');
const $wh_loot_container_chests = $root.querySelector('#wh-loot-container-chests');
$wh_loot_container_items.innerHTML = ``;
$wh_loot_container_chests.innerHTML = ``;
item_list.forEach(e => {
if (e.name === 'chests') {
$wh_loot_container_chests.innerHTML += `<span>[${e.x},${e.y}] - ${chestTypeDict[e.type]}${lootTypeDict[e.name]}</span><br/>`
} else {
$wh_loot_container_items.innerHTML += `<span>[${e.x},${e.y}] - ${lootTypeDict[e.name] || '?钥匙'}</span><br/>`
}
});
}, 1200);
}
}());

View File

@ -1,7 +1,7 @@
// ==UserScript== // ==UserScript==
// @name Torn圣诞小镇解密攻略 // @name Torn圣诞小镇解密攻略
// @namespace WH // @namespace WH
// @version 0.1 // @version 0.1.1
// @description 显示解密攻略 // @description 显示解密攻略
// @author Woohoo[2687093] // @author Woohoo[2687093]
// @match https://www.torn.com/* // @match https://www.torn.com/*
@ -13,7 +13,7 @@
'use strict'; 'use strict';
const ___window___ = window || window.unsafeWindow; const ___window___ = window || window.unsafeWindow;
if (___window___.WHXMAS) return; if (___window___.WHXMAS) return;
___window___.WHXAMS = true; ___window___.WHXMAS = true;
const $ = ___window___.jQuery; const $ = ___window___.jQuery;