refactor: restructure plugins per MTSS standard, consolidate assets to res/
Per docs/plugin-audit-report.md (plugins normalized to Trigger(handlers) → Service(services) → Model(repository/models) + utils): - Split monolithic __init__.py into handlers/services/utils across dailywife, deer_pipe, dice, galgame_card, helldivers_tools, huoziyinshua, learning_chat, makeaquote, mc_server_status, ncm_saying, picfinder_take, picstatus, random_jm_code, regif, steam_info, video_analysis, group_tools - Move static assets under res/: deer_pipe font/img, makeaquote font, helldivers img/templates, huoziyinshua HuoZiYinShua - Add config.py + register_config_items to ncm_saying, random_jm_code, group_tools; learning_chat unified config bridge - Remove deprecated: voice_trans plugin, bf_bot/test.py, dead code in dailywife/deer_pipe, empty dirs, debug scripts under helldivers temp - Disable brash_general_supercredits_tools (stub comment only) - bot.py: optional stdout/stderr redirect to log file for Web log viewer, force ANSI colorize on non-TTY sinks - Move runtime data (jm_code.json) out of plugin dir into hexi/data - Docs: plugin-audit-report.md; README reflects removed plugins Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
1 parent
25bc30611f
commit
9371a28e35
2389 files changed
+5100
-10127
No files matched your search
@@ -1,20 +1,22 @@
|
||||
import httpx
|
||||
from nonebot import logger
|
||||
from nonebot.internal.params import ArgPlainText
|
||||
from nonebot.typing import T_State
|
||||
from nonebot import on_command
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, Bot, MessageSegment
|
||||
from nonebot.plugin import PluginMetadata
|
||||
from typing import Optional, Union
|
||||
"""绝地潜兵小助手 —— 入口(元数据 + 依赖 + 配置/Web 注册)。"""
|
||||
|
||||
from .equipment import get_random_equipment, get_equipment_by_combination
|
||||
from .hd2_api import get_briefing_data
|
||||
from .war_renderer import render_war_briefing
|
||||
from .utils import *
|
||||
from .equipment_store import init_db as _init_equipment_db
|
||||
from . import stratagem_admin as _stratagem_admin
|
||||
import os
|
||||
|
||||
import httpx # noqa: F401
|
||||
from nonebot import logger
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent # noqa: F401
|
||||
from nonebot.internal.params import ArgPlainText # noqa: F401
|
||||
from nonebot.typing import T_State # noqa: F401
|
||||
from nonebot import on_command # noqa: F401
|
||||
from nonebot.plugin import PluginMetadata
|
||||
|
||||
from .services.equipment import get_random_equipment, get_equipment_by_combination # noqa: F401
|
||||
from .services.hd2_api import get_briefing_data # noqa: F401
|
||||
from .utils.war_renderer import render_war_briefing # noqa: F401
|
||||
from .utils import gen_ms_img, pic2b64 # noqa: F401
|
||||
from .services.equipment_store import init_db as _init_equipment_db
|
||||
from .web import stratagem_admin as _stratagem_admin
|
||||
from hexi.web_plugin_registry import register_web_plugin
|
||||
from nonebot.matcher import Matcher
|
||||
|
||||
__plugin_meta__ = PluginMetadata(
|
||||
name="绝地潜兵小助手",
|
||||
@@ -24,12 +26,12 @@ __plugin_meta__ = PluginMetadata(
|
||||
"随机战备:让机器人帮你随机一套战备\n"
|
||||
"战备管理后台:/hub/ 统一管理台内可视化编辑",
|
||||
type="application",
|
||||
homepage="https://github.com/sansenhoshi/nonebot_plugin_helldivers_tools"
|
||||
homepage="https://github.com/sansenhoshi/nonebot_plugin_helldivers_tools",
|
||||
)
|
||||
|
||||
basic_path = os.path.dirname(__file__)
|
||||
save_path = os.path.join(basic_path, "temp")
|
||||
img_path = os.path.join(basic_path, "img")
|
||||
img_path = os.path.join(basic_path, "res", "img")
|
||||
data_path = os.path.join(basic_path, "data")
|
||||
|
||||
|
||||
@@ -74,131 +76,4 @@ register_model_config(
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
async def _send_war_card(matcher: Matcher, ev: MessageEvent, top_per_race: Optional[int]) -> None:
|
||||
await matcher.send("正在获取前线战况,请民主的等待!")
|
||||
try:
|
||||
data = await get_briefing_data()
|
||||
png = await render_war_briefing(data, top_per_race)
|
||||
except Exception as e:
|
||||
logger.exception("获取战况失败")
|
||||
await matcher.finish(
|
||||
MessageSegment.reply(ev.message_id)
|
||||
+ f"战况获取失败:{type(e).__name__}:{e}"
|
||||
)
|
||||
return
|
||||
mes = (MessageSegment.reply(ev.message_id), gen_ms_img(png))
|
||||
await matcher.send(mes)
|
||||
|
||||
|
||||
war_situation = on_command("简报", aliases={"简报"})
|
||||
war_detail = on_command("详报", aliases={"详报"})
|
||||
|
||||
|
||||
@war_situation.handle()
|
||||
async def get_war_info(ev: MessageEvent):
|
||||
await _send_war_card(war_situation, ev, top_per_race=4)
|
||||
|
||||
|
||||
@war_detail.handle()
|
||||
async def get_war_detail(ev: MessageEvent):
|
||||
await _send_war_card(war_detail, ev, top_per_race=None)
|
||||
|
||||
|
||||
async def download_url(url: str) -> bytes | None:
|
||||
async with httpx.AsyncClient() as client:
|
||||
for i in range(3):
|
||||
try:
|
||||
resp = await client.get(url)
|
||||
if resp.status_code != 200:
|
||||
continue
|
||||
return resp.content
|
||||
except Exception as e:
|
||||
print(f"Error downloading {url}, retry {i}/3: {str(e)}")
|
||||
return None
|
||||
|
||||
|
||||
random_helldivers = on_command("随机战备", aliases={"随机战备"}, block=True)
|
||||
|
||||
# PROMPT = """ ***超级地球武装部***
|
||||
# 请发送你需要的随机规则
|
||||
#
|
||||
# 1:纯随机(不推荐)
|
||||
#
|
||||
# 套路随机(按一定规则随机)
|
||||
#
|
||||
# 2:2红/1蓝/1绿
|
||||
# 3:2绿/1红/1蓝
|
||||
# 4:2蓝/1绿/1红
|
||||
#
|
||||
# 5:3红/1蓝
|
||||
# 6:3绿/1蓝
|
||||
#
|
||||
# 7:2红/2蓝
|
||||
# 8:2蓝/2绿
|
||||
# 9:2绿/2红
|
||||
#
|
||||
# 10:4红
|
||||
# 11:4绿"""
|
||||
|
||||
board_path = f"{img_path}/board2.png"
|
||||
|
||||
PROMPT = MessageSegment.image(pic2b64(Image.open(board_path)))
|
||||
|
||||
error_count = 0
|
||||
|
||||
|
||||
# 用户选择
|
||||
@random_helldivers.got("pick_type", prompt=PROMPT)
|
||||
async def got_random_helldivers(event: MessageEvent, pick_type: str = ArgPlainText()):
|
||||
global error_count
|
||||
if error_count >= 2:
|
||||
await random_helldivers.finish("已回归平民生活——")
|
||||
logger.info("持续输错退出随机战备")
|
||||
error_count = 0
|
||||
return
|
||||
logger.info(f"用户选择的战备类型: {pick_type}")
|
||||
if not is_number(pick_type):
|
||||
error_count += 1
|
||||
await random_helldivers.reject(f"您输入的 {pick_type} 非数字,请重新输入1到11,或者输入0退出")
|
||||
elif int(pick_type) not in range(12):
|
||||
error_count += 1
|
||||
await random_helldivers.reject(f"您输入的 {pick_type} 不在范围内,请重新输入1到11,或者输入0退出")
|
||||
elif int(pick_type) == 0:
|
||||
await random_helldivers.finish("已回归平民生活——")
|
||||
logger.info("用户选择退出随机战备")
|
||||
error_count = 0
|
||||
return
|
||||
|
||||
mix_msg = (MessageSegment.reply(event.message_id),)
|
||||
|
||||
type_combinations = {
|
||||
2: {'red': 2, 'blue': 1, 'green': 1},
|
||||
3: {'green': 2, 'red': 1, 'blue': 1},
|
||||
4: {'blue': 2, 'green': 1, 'red': 1},
|
||||
5: {'red': 3, 'blue': 1},
|
||||
6: {'green': 3, 'blue': 1},
|
||||
7: {'red': 2, 'blue': 2},
|
||||
8: {'blue': 2, 'green': 2},
|
||||
9: {'green': 2, 'red': 2},
|
||||
10: {'red': 4},
|
||||
11: {'green': 4}
|
||||
}
|
||||
|
||||
if int(pick_type) == 1:
|
||||
logger.info("用户选择纯随机战备")
|
||||
result = await get_random_equipment(4) # 4 random equipments
|
||||
else:
|
||||
combination = type_combinations.get(int(pick_type))
|
||||
logger.info(f"用户选择的战备组合: {combination}")
|
||||
result = await get_equipment_by_combination(combination)
|
||||
|
||||
final_msg = MessageSegment.text("您的随机结果是:\n")
|
||||
image_tuple = gen_ms_img(result)
|
||||
mix_msg += (final_msg, image_tuple)
|
||||
|
||||
await random_helldivers.finish(mix_msg)
|
||||
|
||||
|
||||
def is_number(s):
|
||||
return bool(re.match(r'^[0-9]+$', s))
|
||||
from . import handlers as _handlers # noqa: E402,F401
|
||||
@@ -1,487 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<base href="file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/" />
|
||||
<style>
|
||||
@font-face{font-family:'HC Sinclair';src:url(data/font/HCSinclair-Normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HC Sinclair';src:url(data/font/HCSinclair-Medium.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'FS Sinclair';src:url(data/font/FSSinclair-Bold.ttf) format('ttf');font-weight:700;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Planet';src:url(data/font/HD2S字体包/商用免费/爱点风雅黑/爱点风雅黑.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sector';src:url(data/font/HD2S字体包/商用授权/造字工坊尚黑/造字工房尚黑G0v1常规体.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Display';src:url(data/font/HD2S字体包/商用免费/创客贴金刚体/ChuangKeTieJinGangTi-2.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Body';src:url(data/font/HD2S字体包/商用免费/一品创享体/一品创享体 1.20.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sans';src:url(data/font/HD2S字体包/商用免费/思源黑体/SourceHanSansCN-Regular.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
||||
body { background: #070707; font-family: "HC Sinclair", "FS Sinclair", "HD2 Body", "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; color: #fbfaf5; padding: 16px; }
|
||||
.card { width: 750px; background: linear-gradient(165deg, #0f0f0f 0%, #0a0a0a 100%); border: 1px solid #262626; border-radius: 16px; padding: 24px 26px; }
|
||||
.header { display: flex; align-items: center; margin-bottom: 20px; }
|
||||
.brief-overview { margin-bottom: 20px; }
|
||||
.brief-overview .order { margin-bottom: 12px; }
|
||||
.brief-overview > .box:last-child { margin-bottom: 0; }
|
||||
.header .logo { width: 56px; height: 56px; margin-right: 16px; }
|
||||
.header .title { font-size: 34px; font-weight: 700; color: #FFE710; letter-spacing: 3px; text-transform: uppercase; }
|
||||
.header .subtitle { font-size: 13px; color: #9a9a90; margin-top: 4px; letter-spacing: 1px; }
|
||||
/* 标题用 HD2 军事硬朗中文字体(创客贴金刚体),正文回落系统黑体 */
|
||||
.box-title, .order-title, .header .title { font-family: "HD2 Display", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 中文用途字体:星球名=爱点风雅黑,星系名=造字工房尚黑 */
|
||||
.planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.sector-name { font-family: "HD2 Sector", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 小标签用思源黑体;line-height:1 收紧行框,避免中文大行高导致文字视觉偏下 */
|
||||
.efx, .stat .k, .chip, .order-meta { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; line-height: 1; }
|
||||
/* 星系战况(stat)用思源黑体,数字/统计更清晰平直 */
|
||||
.stat .v, .stat .k { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.box { background: #161616; border: 1px solid #2a2a2a; border-radius: 12px; padding: 18px 20px; margin-bottom: 20px; }
|
||||
.box-title { display: flex; align-items: center; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 14px; }
|
||||
.box-title .dot { width: 8px; height: 8px; border-radius: 50%; background: #FFE710; margin-right: 9px; box-shadow: 0 0 10px #FFE710; }
|
||||
.ic { display: inline-block; flex: none; }
|
||||
.empty { color: #9a9a90; font-size: 15px; }
|
||||
.order { border-left: 3px solid #FFE710; background: linear-gradient(90deg, #1a1a17 0%, #161616 100%); }
|
||||
.order-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
|
||||
.order-title2 { display: flex; align-items: center; gap: 6px; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; }
|
||||
.order-remain { font-size: 14px; font-weight: 700; color: #FFE710; }
|
||||
.order-desc { font-size: 15px; color: #d9d6c8; line-height: 1.7; }
|
||||
.order-ov { margin-top: 12px; }
|
||||
.order-ov-title { font-size: 13px; color: #9a9a90; letter-spacing: 1px; margin-bottom: 6px; }
|
||||
.order-target { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; }
|
||||
.ot-dot { flex: none; width: 10px; height: 10px; border-radius: 3px; }
|
||||
.ot-main { flex: 1; min-width: 0; }
|
||||
.ot-name { display: block; min-width: 0; color: #fbfaf5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
/* 重要指令目标:格子型进度条(双色交战,解放=蓝领先/防守=敌色侵占蓝条) */
|
||||
.otseg { height: 7px; margin: 5px 0 0; gap: 2px; }
|
||||
.otseg i { box-shadow: inset 0 0 0 1px rgba(0,0,0,0.3); }
|
||||
.ot-pct { flex: none; min-width: 50px; text-align: right; color: #fbfaf5; }
|
||||
.order-meta { display: flex; gap: 26px; margin-top: 12px; font-size: 14px; color: #CBCBCD; }
|
||||
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: #101010; border: 1px solid #2a2a2a; border-radius: 10px; overflow: hidden; }
|
||||
.stat { position: relative; min-width: 0; background: transparent; border: 0; border-radius: 0; padding: 13px 8px 11px; text-align: center; }
|
||||
.stat:nth-child(4n + 2), .stat:nth-child(4n + 3), .stat:nth-child(4n + 4) { border-left: 1px solid #2d2d2a; }
|
||||
.stat:nth-child(n + 5) { border-top: 1px solid #2d2d2a; }
|
||||
.stat .v { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 25px; line-height: 1; font-weight: 700; color: #fbfaf5; letter-spacing: 1px; }
|
||||
.stat .k { font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 11px; color: #8d8d85; margin-top: 7px; letter-spacing: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
.camps { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
|
||||
.campsec { margin-top: 16px; }
|
||||
.campsec:first-child { margin-top: 0; }
|
||||
.campsec-title { display: flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 700; letter-spacing: 1px; margin-bottom: 10px; }
|
||||
.campsec-title .campsec-sub { margin-left: auto; font-size: 12px; color: #9a9a90; font-weight: 400; }
|
||||
/* 单卡(参考图样式,缩放到两列网格的紧凑 tile) */
|
||||
.camp { position: relative; display: flex; background: #0c0c0c; background-size: cover; background-position: center top; border: 1px solid #2a2a2a; border-radius: 14px; overflow: hidden; min-height: 300px; box-shadow: 0 8px 22px rgba(0,0,0,0.5); }
|
||||
.camp-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,5,5,0.30) 0%, rgba(5,5,5,0.56) 46%, rgba(5,5,5,0.94) 100%); pointer-events: none; }
|
||||
.camp-rail { position: relative; z-index: 3; width: 42px; flex: none; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 12px 0 14px; gap: 9px; background: linear-gradient(180deg, #151515 0%, #0a0a0a 100%); border-right: 1px solid rgba(255,255,255,0.08); box-shadow: inset 3px 0 12px rgba(0,0,0,0.6); }
|
||||
.camp-rail::before { content: ""; position: absolute; left: 1px; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--rc), rgba(0,0,0,0)); }
|
||||
.rail-icon { display: flex; align-items: center; justify-content: center; width: 100%; height: 28px; margin-top: 4px; }
|
||||
.rail-icon .ic { width: 24px; height: 24px; margin-right: 0; display: block; }
|
||||
.rail-text { writing-mode: vertical-rl; text-align: center; letter-spacing: 3px; line-height: 1; font-size: 13px; font-weight: 700; color: #fbfaf5; opacity: 0.92; margin-top: 10px; text-shadow: 0 1px 4px rgba(0,0,0,0.8); }
|
||||
.rail-dots { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-top: auto; }
|
||||
.rail-dots i { width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,0.35); }
|
||||
.camp-body { position: relative; z-index: 2; flex: 1; min-width: 0; padding: 12px 12px 12px 11px; }
|
||||
.camp-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
|
||||
.camp-title { min-width: 0; }
|
||||
.camp .planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 19px; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 2px 6px rgba(0,0,0,0.9); line-height: 1.1; }
|
||||
.camp-faction { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; margin-top: 5px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-prog { flex: none; text-align: right; }
|
||||
.camp-pct { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 22px; font-weight: 700; line-height: 1; color: #fff; text-shadow: 0 2px 6px rgba(0,0,0,0.9); }
|
||||
.camp-prog-label { font-size: 11px; color: #c9c9c0; margin-top: 4px; letter-spacing: 1px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.segbar { display: flex; gap: 3px; height: 9px; margin: 12px 0 0; }
|
||||
.segbar i { flex: 1; background: rgba(255,255,255,0.10); border-radius: 2px; }
|
||||
/* 双色交战进度条:两股颜色争地盘,谁段多谁占优 */
|
||||
.segbar-duo i { box-shadow: inset 0 0 0 1px rgba(0,0,0,0.35); border-radius: 2px; }
|
||||
.camp-remain { font-size: 12px; color: #d9d6c8; margin-top: 7px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-remain b { color: #fbfaf5; font-weight: 700; }
|
||||
.info-rows { margin-top: 11px; border-top: 1px solid rgba(255,255,255,0.08); }
|
||||
.irow { display: flex; align-items: center; gap: 7px; padding: 8px 2px; border-bottom: 1px solid rgba(255,255,255,0.06); }
|
||||
.irow-ic { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; color: #b0b0a8; }
|
||||
.irow-ic .ic { width: 15px !important; height: 15px !important; margin-right: 0; }
|
||||
.irow-label { flex: none; min-width: 52px; font-size: 11px; color: #9a9a90; letter-spacing: 1px; }
|
||||
.irow-val { flex: 1; text-align: right; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.haz-val { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 3px 10px; }
|
||||
.hzt { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
|
||||
.hzt .ic { display: inline-block; }
|
||||
.feat-row { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; }
|
||||
.feat-label { display: inline-flex; align-items: center; gap: 5px; flex: none; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.feat-tags { display: flex; flex-wrap: wrap; gap: 5px; flex: 1; min-width: 0; }
|
||||
/* 星球效果 徽章(复用 efx,尺寸放大适配单卡) */
|
||||
.efx { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; background: rgba(224,196,106,0.12); border: 1px solid; border-radius: 20px; padding: 1px 9px; }
|
||||
.feat-tags .efx { padding: 4px 10px; font-size: 12px; font-weight: 700; }
|
||||
/* 民主空间站(DSS)增益标识:会动的星球,驻扎给该星球带来 buff;字体用思源黑体(HD2 Sans) */
|
||||
.dss { margin: 0 0 6px; padding: 6px 10px; background: linear-gradient(90deg, #6bb7ea28, #6bb7ea0c); border: 1px solid #6bb7ea55; border-radius: 8px; font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.dss-head { display: flex; align-items: center; gap: 6px; }
|
||||
.dss-ic { display: inline-flex; flex: none; }
|
||||
.dss-tx { font-size: 13px; font-weight: 700; color: #6bb7ea; letter-spacing: 1px; }
|
||||
.dss-actions { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 3px 0 0 22px; font-size: 13px; color: #6bb7ea; }
|
||||
.dss-inherent { margin: 3px 0 0 22px; font-size: 13px; color: #6bb7ea; line-height: 1.4; word-break: break-word; }
|
||||
.dss-b { display: inline-flex; align-items: center; gap: 3px; }
|
||||
.dss-b .ic { width: 13px; height: 13px; }
|
||||
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
|
||||
.chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid; border-radius: 20px; padding: 6px 16px; font-size: 14px; font-weight: 700; background: #101010; letter-spacing: 1px; }
|
||||
.foot { text-align: center; font-size: 12px; color: #5a5a52; margin-top: 4px; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="card">
|
||||
|
||||
<div class="header">
|
||||
<img class="logo" src="img/super earth.png" alt="logo" />
|
||||
<div class="title">超级地球战况简报</div>
|
||||
<div class="subtitle">Galactic War Briefing · 2026-08-28 19:01</div>
|
||||
</div>
|
||||
|
||||
<div class="brief-overview">
|
||||
|
||||
<div class="box order">
|
||||
<div class="order-head">
|
||||
<span class="order-title2"><span class="dot"></span><svg class="ic" viewBox="0 0 1000 1000" style="width:1.2em;height:1.2em;color:#FFE710;vertical-align:middle;"> <g style=" pointer-events: none; " class="noselect notouch svelte-1fita6j" opacity="1"><g transform="scale(1 1)" class="svelte-1fita6j"><g transform="translate(500 500) scale(1 1)" class="svelte-1fita6j"><g opacity="1" transform="translate(-500 -500)" class="svelte-1fita6j"><g clip-path="url('#svgIc_clipShape_36')"><g style="color: ;"><path class="anim_target svelte-1fita6j" id="icPath136i0" d="M512,220c115,5,213,80,251,183H575ZM425,402l62-182c-115,5-213,80-251,183ZM379,544,229,427a281,281,0,0,0,96,293Zm121,88L347,736a281,281,0,0,0,307,0Zm121-88,54,177a281,281,0,0,0,96-293Z" style="pointer-events: none;" stroke-miterlimit="1.77" fill="currentColor" stroke="currentColor" stroke-width="0" stroke-linecap="round" stroke-linejoin="miter" transform="translate(-400 -400) scale(1.8)"></path></g></g></g></g></g></g></svg>重要指令</span>
|
||||
<span class="order-remain">剩余:73小时1分</span>
|
||||
</div>
|
||||
<div class="order-desc">解放指定的敌方星球,这些星球极有可能藏匿着破坏TCS+的异见分子。</div>
|
||||
<div class="order-ov"><div class="order-ov-title">指令目标</div><div class='order-target'><span class='ot-dot' style='background:#FFE710'></span><span class='ot-main'><span class='ot-name'>十字架一</span></span><span class='ot-pct'>—</span></div><div class='order-target'><span class='ot-dot' style='background:#6bb7ea'></span><span class='ot-main'><span class='ot-name'>轧尔哈伦</span><div class='segbar segbar-duo otseg'><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i></div></span><span class='ot-pct'>90%</span></div><div class='order-target'><span class='ot-dot' style='background:#FFE710'></span><span class='ot-main'><span class='ot-name'>富源</span></span><span class='ot-pct'>—</span></div></div>
|
||||
<div class="order-meta"><span>奖励:50奖章</span></div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="box">
|
||||
<div class="box-title"><span class="dot"></span>星系战况</div>
|
||||
<div class="stats"><div class='stat'><div class='v'>56.9K</div><div class='k'>参战潜兵</div></div><div class='stat'><div class='v'>91%</div><div class='k'>任务完成率</div></div><div class='stat'><div class='v'>35</div><div class='k'>当前战役数</div></div><div class='stat'><div class='v'>216.6B</div><div class='k'>终结族总击杀</div></div><div class='stat'><div class='v'>115.0B</div><div class='k'>机器人总击杀</div></div><div class='stat'><div class='v'>75.8B</div><div class='k'>光能族总击杀</div></div><div class='stat'><div class='v'>8.7B</div><div class='k'>潜兵总阵亡</div></div><div class='stat'><div class='v'>1.0B</div><div class='k'>任务完成总数</div></div></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="box">
|
||||
<div class="box-title"><span class="dot"></span>进行中的战役</div>
|
||||
|
||||
<div class="campsec">
|
||||
<div class="campsec-title" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 10<span class="campsec-sub">玩家 4.9万</span></div>
|
||||
<div class="camps">
|
||||
<div class="camp" style="background-image:url(img/assets/planets/gar-haren.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#ff9900">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">轧尔哈伦</div>
|
||||
<div class="camp-faction" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">90%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='dss'><div class='dss-head'><span class='dss-ic'><img class='ic' src='img/assets/icons/effect-dss.png' style='width:16px;height:16px;color:#6bb7ea;vertical-align:middle;'></span><span class='dss-tx'>民主空间站</span></div><div class='dss-inherent'>行动支持 · 外骨骼装甲储备</div><div class='dss-actions'><span class='dss-b'><img class='ic' src='img/assets/icons/effect-dss-blockade.png' style='width:13px;height:13px;color:#6bb7ea;vertical-align:middle;'>轨道封锁</span></div></div>
|
||||
<div class='segbar segbar-duo '><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>锦栖分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>3.5万</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>幽祟沼泽</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/achernar-secundus.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#6bb7ea">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-super-earth.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">保卫战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">水委一次星</div>
|
||||
<div class="camp-faction" style="color:#6bb7ea"><img class='ic' src='img/assets/icons/faction-super-earth.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'>超级地球 · 防守</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">72%</div>
|
||||
<div class="camp-prog-label">入侵进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i></div>
|
||||
<div class='camp-remain'>剩余时间:<b>1小时3分</b></div>
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#6bb7ea;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>博格斯分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#6bb7ea;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>5,416</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#6bb7ea;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>平原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#6bb7ea;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#6bb7ea1f;border-color:#6bb7ea66;color:#6bb7ea'><img class='ic' src='img/assets/icons/effect-factory-hub.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'> 工厂枢纽</span><span class='efx' style='background:#e0c46a1f;border-color:#e0c46a66;color:#e0c46a'><img class='ic' src='img/assets/icons/effect-tcs-plus.png' style='width:1.2em;height:1.2em;color:#e0c46a;vertical-align:middle;'> 终结族遏制体系+</span><span class='efx' style='background:#ff99001f;border-color:#ff990066;color:#ff9900'><img class='ic' src='img/assets/icons/effect-predator-strain.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'> 掠食变种</span><span class='efx' style='background:#6bb7ea1f;border-color:#6bb7ea66;color:#6bb7ea'><img class='ic' src='img/assets/icons/effect-heavy-seaf.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'> 超级地球武装部队驻守</span></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/phact-bay.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#ff9900">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">丈人一湾</div>
|
||||
<div class="camp-faction" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>锦栖分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>3,126</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>沙漠沙丘</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'><img class='ic' src='img/assets/icons/hazard-sandstorms.png' style='width:13px;height:13px;color:#ff9900;vertical-align:middle;'>沙暴</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/gatria.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#ff9900">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">盖尔崔亚</div>
|
||||
<div class="camp-faction" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>锦栖分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>2,414</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>离子绯红之地</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'><img class='ic' src='img/assets/icons/hazard-ion-storms.png' style='width:13px;height:13px;color:#ff9900;vertical-align:middle;'>离子风暴</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div></div>
|
||||
</div>
|
||||
<div class="campsec">
|
||||
<div class="campsec-title" style="color:#fe6d6a"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'>机器人 · 9<span class="campsec-sub">玩家 4,537</span></div>
|
||||
<div class="camps">
|
||||
<div class="camp" style="background-image:url(img/assets/planets/matar-bay.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#fe6d6a">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">玛塔</div>
|
||||
<div class="camp-faction" style="color:#fe6d6a"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'>机器人 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>仙女座分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>1,420</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>平原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/aurora-bay.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#fe6d6a">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">极光湾</div>
|
||||
<div class="camp-faction" style="color:#fe6d6a"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'>机器人 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>瓦尔迪斯分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>661</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>苔原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#fe6d6a;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#fe6d6a1f;border-color:#fe6d6a66;color:#fe6d6a'><img class='ic' src='img/assets/icons/effect-jet-brigade-factory.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'> 喷气旅孵化厂</span></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/martale.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#fe6d6a">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">玛尔特</div>
|
||||
<div class="camp-faction" style="color:#fe6d6a"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'>机器人 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>仙女座分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>603</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>苔原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/choohe.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#fe6d6a">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">丘伊</div>
|
||||
<div class="camp-faction" style="color:#fe6d6a"><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'>机器人 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i><i style='background:#fe6d6a'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>拉凯欧分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>564</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>沙漠沙丘</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#fe6d6a;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'><img class='ic' src='img/assets/icons/hazard-sandstorms.png' style='width:13px;height:13px;color:#fe6d6a;vertical-align:middle;'>沙暴</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div></div>
|
||||
</div>
|
||||
<div class="campsec">
|
||||
<div class="campsec-title" style="color:#CF64F8"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'>光能族 · 16<span class="campsec-sub">玩家 1,905</span></div>
|
||||
<div class="camps">
|
||||
<div class="camp" style="background-image:url(img/assets/planets/karlia.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#CF64F8">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">可利亚</div>
|
||||
<div class="camp-faction" style="color:#CF64F8"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'>光能族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">9%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>欧米茄分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>564</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>焦土荒原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'><img class='ic' src='img/assets/icons/hazard-fire-tornados.png' style='width:13px;height:13px;color:#CF64F8;vertical-align:middle;'>烈焰龙卷</span></span></div></div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#CF64F8;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#CF64F81f;border-color:#CF64F866;color:#CF64F8'><img class='ic' src='img/assets/icons/effect-vote-snatchers.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'> 窃票者</span></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="background-image:url(img/assets/planets/alaraph.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#CF64F8">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">右执法</div>
|
||||
<div class="camp-faction" style="color:#CF64F8"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'>光能族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">3%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#6bb7ea'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>阿基拉分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>254</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>死寂之地</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#CF64F8;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#CF64F81f;border-color:#CF64F866;color:#CF64F8'><img class='ic' src='img/assets/icons/effect-vote-snatchers.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'> 窃票者</span></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#CF64F8">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">格拉夫米尔</div>
|
||||
<div class="camp-faction" style="color:#CF64F8"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'>光能族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>瑞克图斯分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>207</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>骸骨之地</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'>无</span></span></div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="camp" style="">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#CF64F8">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">新戈23</div>
|
||||
<div class="camp-faction" style="color:#CF64F8"><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'>光能族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">0%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar segbar-duo '><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i><i style='background:#CF64F8'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>欧米茄分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>174</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>岩质峡谷</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#CF64F8;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val haz-val'><span class='hzt'><img class='ic' src='img/assets/icons/hazard-tremors.png' style='width:13px;height:13px;color:#CF64F8;vertical-align:middle;'>地震</span></span></div></div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#CF64F8;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#CF64F81f;border-color:#CF64F866;color:#CF64F8'><img class='ic' src='img/assets/icons/effect-invasion-fleet.webp' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'> 入侵舰队</span><span class='efx' style='background:#CF64F81f;border-color:#CF64F866;color:#CF64F8'><img class='ic' src='img/assets/icons/effect-appropriators.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'> 占领者</span></span></div>
|
||||
</div>
|
||||
</div></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="box">
|
||||
<div class="box-title"><span class="dot"></span>星系控制</div>
|
||||
<div class="chips"><span class='chip' style='border-color:#6bb7ea;color:#6bb7ea'><img class='ic' src='img/assets/icons/faction-super-earth.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'> 超级地球 209</span><span class='chip' style='border-color:#ff9900;color:#ff9900'><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'> 终结族 25</span><span class='chip' style='border-color:#fe6d6a;color:#fe6d6a'><img class='ic' src='img/assets/icons/faction-automaton.png' style='width:1.2em;height:1.2em;color:#fe6d6a;vertical-align:middle;'> 机器人 14</span><span class='chip' style='border-color:#CF64F8;color:#CF64F8'><img class='ic' src='img/assets/icons/faction-illuminate.png' style='width:1.2em;height:1.2em;color:#CF64F8;vertical-align:middle;'> 光能族 25</span></div>
|
||||
</div>
|
||||
|
||||
<div class="foot">数据来源:helldivers-2/api 社区接口 · 仅供娱乐</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,152 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN"><head><meta charset="utf-8">
|
||||
<base href="file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/" />
|
||||
<style>
|
||||
@font-face{font-family:'HC Sinclair';src:url(data/font/HCSinclair-Normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HC Sinclair';src:url(data/font/HCSinclair-Medium.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'FS Sinclair';src:url(data/font/FSSinclair-Bold.ttf) format('ttf');font-weight:700;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Planet';src:url(data/font/HD2S字体包/商用免费/爱点风雅黑/爱点风雅黑.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sector';src:url(data/font/HD2S字体包/商用授权/造字工坊尚黑/造字工房尚黑G0v1常规体.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Display';src:url(data/font/HD2S字体包/商用免费/创客贴金刚体/ChuangKeTieJinGangTi-2.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Body';src:url(data/font/HD2S字体包/商用免费/一品创享体/一品创享体 1.20.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sans';src:url(data/font/HD2S字体包/商用免费/思源黑体/SourceHanSansCN-Regular.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
||||
body { background: #070707; font-family: "HC Sinclair", "FS Sinclair", "HD2 Body", "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; color: #fbfaf5; padding: 16px; }
|
||||
.card { width: 750px; background: linear-gradient(165deg, #0f0f0f 0%, #0a0a0a 100%); border: 1px solid #262626; border-radius: 16px; padding: 24px 26px; }
|
||||
.header { display: flex; align-items: center; margin-bottom: 20px; }
|
||||
.brief-overview { margin-bottom: 20px; }
|
||||
.brief-overview .order { margin-bottom: 12px; }
|
||||
.brief-overview > .box:last-child { margin-bottom: 0; }
|
||||
.header .logo { width: 56px; height: 56px; margin-right: 16px; }
|
||||
.header .title { font-size: 34px; font-weight: 700; color: #FFE710; letter-spacing: 3px; text-transform: uppercase; }
|
||||
.header .subtitle { font-size: 13px; color: #9a9a90; margin-top: 4px; letter-spacing: 1px; }
|
||||
/* 标题用 HD2 军事硬朗中文字体(创客贴金刚体),正文回落系统黑体 */
|
||||
.box-title, .order-title, .header .title { font-family: "HD2 Display", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 中文用途字体:星球名=爱点风雅黑,星系名=造字工房尚黑 */
|
||||
.planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.sector-name { font-family: "HD2 Sector", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 小标签用思源黑体;line-height:1 收紧行框,避免中文大行高导致文字视觉偏下 */
|
||||
.efx, .stat .k, .chip, .order-meta { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; line-height: 1; }
|
||||
/* 星系战况(stat)用思源黑体,数字/统计更清晰平直 */
|
||||
.stat .v, .stat .k { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.box { background: #161616; border: 1px solid #2a2a2a; border-radius: 12px; padding: 18px 20px; margin-bottom: 20px; }
|
||||
.box-title { display: flex; align-items: center; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 14px; }
|
||||
.box-title .dot { width: 8px; height: 8px; border-radius: 50%; background: #FFE710; margin-right: 9px; box-shadow: 0 0 10px #FFE710; }
|
||||
.ic { display: inline-block; flex: none; }
|
||||
.empty { color: #9a9a90; font-size: 15px; }
|
||||
.order { border-left: 3px solid #FFE710; background: linear-gradient(90deg, #1a1a17 0%, #161616 100%); }
|
||||
.order-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
|
||||
.order-title2 { display: flex; align-items: center; gap: 6px; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; }
|
||||
.order-remain { font-size: 14px; font-weight: 700; color: #FFE710; }
|
||||
.order-desc { font-size: 15px; color: #d9d6c8; line-height: 1.7; }
|
||||
.order-ov { margin-top: 12px; }
|
||||
.order-ov-title { font-size: 13px; color: #9a9a90; letter-spacing: 1px; margin-bottom: 6px; }
|
||||
.order-target { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; }
|
||||
.ot-dot { flex: none; width: 10px; height: 10px; border-radius: 3px; }
|
||||
.ot-main { flex: 1; min-width: 0; }
|
||||
.ot-name { display: block; min-width: 0; color: #fbfaf5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
/* 重要指令目标:格子型进度条(双色交战,解放=蓝领先/防守=敌色侵占蓝条) */
|
||||
.otseg { height: 7px; margin: 5px 0 0; gap: 2px; }
|
||||
.otseg i { box-shadow: inset 0 0 0 1px rgba(0,0,0,0.3); }
|
||||
.ot-pct { flex: none; min-width: 50px; text-align: right; color: #fbfaf5; }
|
||||
.order-meta { display: flex; gap: 26px; margin-top: 12px; font-size: 14px; color: #CBCBCD; }
|
||||
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: #101010; border: 1px solid #2a2a2a; border-radius: 10px; overflow: hidden; }
|
||||
.stat { position: relative; min-width: 0; background: transparent; border: 0; border-radius: 0; padding: 13px 8px 11px; text-align: center; }
|
||||
.stat:nth-child(4n + 2), .stat:nth-child(4n + 3), .stat:nth-child(4n + 4) { border-left: 1px solid #2d2d2a; }
|
||||
.stat:nth-child(n + 5) { border-top: 1px solid #2d2d2a; }
|
||||
.stat .v { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 25px; line-height: 1; font-weight: 700; color: #fbfaf5; letter-spacing: 1px; }
|
||||
.stat .k { font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 11px; color: #8d8d85; margin-top: 7px; letter-spacing: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
.camps { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
|
||||
.campsec { margin-top: 16px; }
|
||||
.campsec:first-child { margin-top: 0; }
|
||||
.campsec-title { display: flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 700; letter-spacing: 1px; margin-bottom: 10px; }
|
||||
.campsec-title .campsec-sub { margin-left: auto; font-size: 12px; color: #9a9a90; font-weight: 400; }
|
||||
/* 单卡(参考图样式,缩放到两列网格的紧凑 tile) */
|
||||
.camp { position: relative; display: flex; background: #0c0c0c; background-size: cover; background-position: center top; border: 1px solid #2a2a2a; border-radius: 14px; overflow: hidden; min-height: 300px; box-shadow: 0 8px 22px rgba(0,0,0,0.5); }
|
||||
.camp-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,5,5,0.30) 0%, rgba(5,5,5,0.56) 46%, rgba(5,5,5,0.94) 100%); pointer-events: none; }
|
||||
.camp-rail { position: relative; z-index: 3; width: 42px; flex: none; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 12px 0 14px; gap: 9px; background: linear-gradient(180deg, #151515 0%, #0a0a0a 100%); border-right: 1px solid rgba(255,255,255,0.08); box-shadow: inset 3px 0 12px rgba(0,0,0,0.6); }
|
||||
.camp-rail::before { content: ""; position: absolute; left: 1px; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--rc), rgba(0,0,0,0)); }
|
||||
.rail-icon { display: flex; align-items: center; justify-content: center; width: 100%; height: 28px; margin-top: 4px; }
|
||||
.rail-icon .ic { width: 24px; height: 24px; margin-right: 0; display: block; }
|
||||
.rail-text { writing-mode: vertical-rl; text-align: center; letter-spacing: 3px; line-height: 1; font-size: 13px; font-weight: 700; color: #fbfaf5; opacity: 0.92; margin-top: 10px; text-shadow: 0 1px 4px rgba(0,0,0,0.8); }
|
||||
.rail-dots { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-top: auto; }
|
||||
.rail-dots i { width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,0.35); }
|
||||
.camp-body { position: relative; z-index: 2; flex: 1; min-width: 0; padding: 12px 12px 12px 11px; }
|
||||
.camp-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
|
||||
.camp-title { min-width: 0; }
|
||||
.camp .planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 19px; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 2px 6px rgba(0,0,0,0.9); line-height: 1.1; }
|
||||
.camp-faction { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; margin-top: 5px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-prog { flex: none; text-align: right; }
|
||||
.camp-pct { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 22px; font-weight: 700; line-height: 1; color: #fff; text-shadow: 0 2px 6px rgba(0,0,0,0.9); }
|
||||
.camp-prog-label { font-size: 11px; color: #c9c9c0; margin-top: 4px; letter-spacing: 1px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.segbar { display: flex; gap: 3px; height: 9px; margin: 12px 0 0; }
|
||||
.segbar i { flex: 1; background: rgba(255,255,255,0.10); border-radius: 2px; }
|
||||
/* 双色交战进度条:两股颜色争地盘,谁段多谁占优 */
|
||||
.segbar-duo i { box-shadow: inset 0 0 0 1px rgba(0,0,0,0.35); border-radius: 2px; }
|
||||
.camp-remain { font-size: 12px; color: #d9d6c8; margin-top: 7px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-remain b { color: #fbfaf5; font-weight: 700; }
|
||||
.info-rows { margin-top: 11px; border-top: 1px solid rgba(255,255,255,0.08); }
|
||||
.irow { display: flex; align-items: center; gap: 7px; padding: 8px 2px; border-bottom: 1px solid rgba(255,255,255,0.06); }
|
||||
.irow-ic { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; color: #b0b0a8; }
|
||||
.irow-ic .ic { width: 15px !important; height: 15px !important; margin-right: 0; }
|
||||
.irow-label { flex: none; min-width: 52px; font-size: 11px; color: #9a9a90; letter-spacing: 1px; }
|
||||
.irow-val { flex: 1; text-align: right; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.feat-row { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; }
|
||||
.feat-label { display: inline-flex; align-items: center; gap: 5px; flex: none; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.feat-tags { display: flex; flex-wrap: wrap; gap: 5px; flex: 1; min-width: 0; }
|
||||
/* 星球效果 徽章(复用 efx,尺寸放大适配单卡) */
|
||||
.efx { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; background: rgba(224,196,106,0.12); border: 1px solid; border-radius: 20px; padding: 1px 9px; }
|
||||
.feat-tags .efx { padding: 4px 10px; font-size: 12px; font-weight: 700; }
|
||||
/* 民主空间站(DSS)增益标识:会动的星球,驻扎给该星球带来 buff;字体用思源黑体(HD2 Sans) */
|
||||
.dss { margin: 0 0 6px; padding: 6px 10px; background: linear-gradient(90deg, #6bb7ea28, #6bb7ea0c); border: 1px solid #6bb7ea55; border-radius: 8px; font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.dss-head { display: flex; align-items: center; gap: 6px; }
|
||||
.dss-ic { display: inline-flex; flex: none; }
|
||||
.dss-tx { font-size: 13px; font-weight: 700; color: #6bb7ea; letter-spacing: 1px; }
|
||||
.dss-actions { display: flex; flex-wrap: wrap; gap: 5px 8px; margin-top: 3px; }
|
||||
.dss-inherent { margin-top: 3px; font-size: 11px; color: #9fd0f5; line-height: 1.4; word-break: break-word; }
|
||||
.dss-b { display: inline-flex; align-items: center; gap: 3px; }
|
||||
.dss-b .ic { width: 13px; height: 13px; }
|
||||
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
|
||||
.chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid; border-radius: 20px; padding: 6px 16px; font-size: 14px; font-weight: 700; background: #101010; letter-spacing: 1px; }
|
||||
.foot { text-align: center; font-size: 12px; color: #5a5a52; margin-top: 4px; }
|
||||
|
||||
body { background:#000; }
|
||||
#sb .box-title { display:none; }
|
||||
#sb .box { margin:0; padding:24px 26px; }
|
||||
</style></head>
|
||||
<body><div class="card" style="width:760px;margin:16px auto;"><div id="sb">
|
||||
<div class="box">
|
||||
<div class="box-title"><span class="dot"></span>进行中的战役</div>
|
||||
|
||||
<div class="campsec">
|
||||
<div class="campsec-title" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 1<span class="campsec-sub">玩家 3.3万</span></div>
|
||||
<div class="camps">
|
||||
<div class="camp" style="background-image:url(img/assets/planets/gar-haren.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#ff9900">
|
||||
<span class="rail-icon"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">解放战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">轧尔哈伦</div>
|
||||
<div class="camp-faction" style="color:#ff9900"><img class='ic' src='img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 解放</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">87%</div>
|
||||
<div class="camp-prog-label">解放进度</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='dss'><div class='dss-head'><span class='dss-ic'><img class='ic' src='img/assets/icons/effect-dss.png' style='width:16px;height:16px;color:#6bb7ea;vertical-align:middle;'></span><span class='dss-tx'>民主空间站</span></div><div class='dss-inherent'>行动支持 · 外骨骼装甲储备</div><div class='dss-actions'><span class='dss-b'><img class='ic' src='img/assets/icons/effect-dss-eagle.png' style='width:13px;height:13px;color:#6bb7ea;vertical-align:middle;'>飞鹰风暴</span><span class='dss-b'><img class='ic' src='img/assets/icons/effect-dss-heavy-ordnance.png' style='width:13px;height:13px;color:#6bb7ea;vertical-align:middle;'>轰炸解放推进</span></div></div>
|
||||
<div class='segbar segbar-duo '><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#6bb7ea'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i><i style='background:#ff9900'></i></div>
|
||||
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>锦栖分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>3.3万</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>幽祟沼泽</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:15px;height:15px;color:#ff9900;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val'>无</span></div></div>
|
||||
|
||||
</div>
|
||||
</div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></body></html>
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,178 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<style>
|
||||
@font-face{font-family:'HC Sinclair';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HCSinclair-Normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HC Sinclair';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HCSinclair-Medium.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'FS Sinclair';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/FSSinclair-Bold.ttf) format('ttf');font-weight:700;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Planet';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HD2S%E5%AD%97%E4%BD%93%E5%8C%85/%E5%95%86%E7%94%A8%E5%85%8D%E8%B4%B9/%E7%88%B1%E7%82%B9%E9%A3%8E%E9%9B%85%E9%BB%91/%E7%88%B1%E7%82%B9%E9%A3%8E%E9%9B%85%E9%BB%91.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sector';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HD2S%E5%AD%97%E4%BD%93%E5%8C%85/%E5%95%86%E7%94%A8%E6%8E%88%E6%9D%83/%E9%80%A0%E5%AD%97%E5%B7%A5%E5%9D%8A%E5%B0%9A%E9%BB%91/%E9%80%A0%E5%AD%97%E5%B7%A5%E6%88%BF%E5%B0%9A%E9%BB%91G0v1%E5%B8%B8%E8%A7%84%E4%BD%93.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Display';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HD2S%E5%AD%97%E4%BD%93%E5%8C%85/%E5%95%86%E7%94%A8%E5%85%8D%E8%B4%B9/%E5%88%9B%E5%AE%A2%E8%B4%B4%E9%87%91%E5%88%9A%E4%BD%93/ChuangKeTieJinGangTi-2.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Body';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HD2S%E5%AD%97%E4%BD%93%E5%8C%85/%E5%95%86%E7%94%A8%E5%85%8D%E8%B4%B9/%E4%B8%80%E5%93%81%E5%88%9B%E4%BA%AB%E4%BD%93/%E4%B8%80%E5%93%81%E5%88%9B%E4%BA%AB%E4%BD%93%201.20.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
@font-face{font-family:'HD2 Sans';src:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/data/font/HD2S%E5%AD%97%E4%BD%93%E5%8C%85/%E5%95%86%E7%94%A8%E5%85%8D%E8%B4%B9/%E6%80%9D%E6%BA%90%E9%BB%91%E4%BD%93/SourceHanSansCN-Regular.otf) format('opentype');font-weight:100 900;font-style:normal;font-display:swap;}
|
||||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
||||
body { background: #070707; font-family: "HC Sinclair", "FS Sinclair", "HD2 Body", "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; color: #fbfaf5; padding: 16px; }
|
||||
.card { width: 750px; background: linear-gradient(165deg, #0f0f0f 0%, #0a0a0a 100%); border: 1px solid #262626; border-radius: 16px; padding: 24px 26px; }
|
||||
.header { display: flex; align-items: center; margin-bottom: 20px; }
|
||||
.brief-overview { margin-bottom: 20px; }
|
||||
.brief-overview .order { margin-bottom: 12px; }
|
||||
.brief-overview > .box:last-child { margin-bottom: 0; }
|
||||
.header .logo { width: 56px; height: 56px; margin-right: 16px; }
|
||||
.header .title { font-size: 34px; font-weight: 700; color: #FFE710; letter-spacing: 3px; text-transform: uppercase; }
|
||||
.header .subtitle { font-size: 13px; color: #9a9a90; margin-top: 4px; letter-spacing: 1px; }
|
||||
/* 标题用 HD2 军事硬朗中文字体(创客贴金刚体),正文回落系统黑体 */
|
||||
.box-title, .order-title, .header .title { font-family: "HD2 Display", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 中文用途字体:星球名=爱点风雅黑,星系名=造字工房尚黑 */
|
||||
.planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.sector-name { font-family: "HD2 Sector", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
/* 小标签用思源黑体;line-height:1 收紧行框,避免中文大行高导致文字视觉偏下 */
|
||||
.camp .kind, .camp .owner, .camp-sub, .camp-env, .efx, .camp-event, .stat .k, .chip, .env-i, .order-meta { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; line-height: 1; }
|
||||
/* 星系战况(stat)用思源黑体,数字/统计更清晰平直 */
|
||||
.stat .v, .stat .k { font-family: "HD2 Sans", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.box { background: #161616; border: 1px solid #2a2a2a; border-radius: 12px; padding: 18px 20px; margin-bottom: 20px; }
|
||||
.box-title { display: flex; align-items: center; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 14px; }
|
||||
.box-title .dot { width: 8px; height: 8px; border-radius: 50%; background: #FFE710; margin-right: 9px; box-shadow: 0 0 10px #FFE710; }
|
||||
.ic { display: inline-block; flex: none; margin-right: 5px; }
|
||||
.empty { color: #9a9a90; font-size: 15px; }
|
||||
.order { border-left: 3px solid #FFE710; background: linear-gradient(90deg, #1a1a17 0%, #161616 100%); }
|
||||
.order-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
|
||||
.order-title2 { display: flex; align-items: center; font-size: 17px; font-weight: 700; color: #fbfaf5; text-transform: uppercase; letter-spacing: 1px; }
|
||||
.order-remain { font-size: 14px; font-weight: 700; color: #FFE710; }
|
||||
.order-desc { font-size: 15px; color: #d9d6c8; line-height: 1.7; }
|
||||
.order-ov { margin-top: 12px; }
|
||||
.order-ov-title { font-size: 13px; color: #9a9a90; letter-spacing: 1px; margin-bottom: 6px; }
|
||||
.order-target { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; }
|
||||
.ot-dot { flex: none; width: 10px; height: 10px; border-radius: 3px; }
|
||||
.ot-main { flex: 1; min-width: 0; }
|
||||
.ot-name { display: block; min-width: 0; color: #fbfaf5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
.ot-bar { display: block; height: 5px; margin-top: 5px; background: rgba(42,42,42,0.85); border-radius: 4px; overflow: hidden; }
|
||||
.ot-bar i { display: block; height: 100%; border-radius: 4px; }
|
||||
.ot-pct { flex: none; min-width: 50px; text-align: right; color: #fbfaf5; }
|
||||
.order-meta { display: flex; gap: 26px; margin-top: 12px; font-size: 14px; color: #CBCBCD; }
|
||||
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: #101010; border: 1px solid #2a2a2a; border-radius: 10px; overflow: hidden; }
|
||||
.stat { position: relative; min-width: 0; background: transparent; border: 0; border-radius: 0; padding: 13px 8px 11px; text-align: center; }
|
||||
.stat:nth-child(4n + 2), .stat:nth-child(4n + 3), .stat:nth-child(4n + 4) { border-left: 1px solid #2d2d2a; }
|
||||
.stat:nth-child(n + 5) { border-top: 1px solid #2d2d2a; }
|
||||
.stat .v { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 25px; line-height: 1; font-weight: 700; color: #fbfaf5; letter-spacing: 1px; }
|
||||
.stat .k { font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 11px; color: #8d8d85; margin-top: 7px; letter-spacing: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||||
.camps { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
|
||||
.campsec { margin-top: 16px; }
|
||||
.campsec:first-child { margin-top: 0; }
|
||||
.campsec-title { display: flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 700; letter-spacing: 1px; margin-bottom: 10px; }
|
||||
.campsec-title .campsec-sub { margin-left: auto; font-size: 12px; color: #9a9a90; font-weight: 400; }
|
||||
/* 单卡(参考图样式,缩放到两列网格的紧凑 tile) */
|
||||
.camp { position: relative; display: flex; background: #0c0c0c; background-size: cover; background-position: center top; border: 1px solid #2a2a2a; border-radius: 14px; overflow: hidden; min-height: 300px; box-shadow: 0 8px 22px rgba(0,0,0,0.5); }
|
||||
.camp-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,5,5,0.30) 0%, rgba(5,5,5,0.56) 46%, rgba(5,5,5,0.94) 100%); pointer-events: none; }
|
||||
.camp-rail { position: relative; z-index: 3; width: 42px; flex: none; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 12px 0 14px; gap: 9px; background: linear-gradient(180deg, #151515 0%, #0a0a0a 100%); border-right: 1px solid rgba(255,255,255,0.08); box-shadow: inset 3px 0 12px rgba(0,0,0,0.6); }
|
||||
.camp-rail::before { content: ""; position: absolute; left: 1px; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--rc), rgba(0,0,0,0)); }
|
||||
.rail-icon { display: flex; align-items: center; justify-content: center; width: 100%; height: 28px; margin-top: 4px; }
|
||||
.rail-icon .ic { width: 24px; height: 24px; }
|
||||
.rail-text { writing-mode: vertical-rl; letter-spacing: 3px; line-height: 1; font-size: 13px; font-weight: 700; color: #fbfaf5; opacity: 0.92; margin-top: 10px; text-shadow: 0 1px 4px rgba(0,0,0,0.8); }
|
||||
.rail-dots { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-top: auto; }
|
||||
.rail-dots i { width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,0.35); }
|
||||
.camp-body { position: relative; z-index: 2; flex: 1; min-width: 0; padding: 12px 12px 12px 11px; }
|
||||
.camp-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
|
||||
.camp-title { min-width: 0; }
|
||||
.camp .planet { font-family: "HD2 Planet", "HC Sinclair", "Microsoft YaHei", "Noto Sans SC", sans-serif; font-size: 19px; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 2px 6px rgba(0,0,0,0.9); line-height: 1.1; }
|
||||
.camp-faction { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; margin-top: 5px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-prog { flex: none; text-align: right; }
|
||||
.camp-pct { font-family: "FS Sinclair", "HC Sinclair", sans-serif; font-size: 22px; font-weight: 700; line-height: 1; color: #fff; text-shadow: 0 2px 6px rgba(0,0,0,0.9); }
|
||||
.camp-prog-label { font-size: 11px; color: #c9c9c0; margin-top: 4px; letter-spacing: 1px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.segbar { display: flex; gap: 3px; height: 9px; margin: 12px 0 0; }
|
||||
.segbar i { flex: 1; background: rgba(255,255,255,0.10); border-radius: 2px; }
|
||||
.segbar i.on { background: var(--segc, #FFE710); box-shadow: 0 0 8px var(--segc); }
|
||||
.camp-remain { font-size: 12px; color: #d9d6c8; margin-top: 7px; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
|
||||
.camp-remain b { color: #fbfaf5; font-weight: 700; }
|
||||
.info-rows { margin-top: 11px; border-top: 1px solid rgba(255,255,255,0.08); }
|
||||
.irow { display: flex; align-items: center; gap: 7px; padding: 8px 2px; border-bottom: 1px solid rgba(255,255,255,0.06); }
|
||||
.irow-ic { flex: none; display: inline-flex; align-items: center; color: #b0b0a8; }
|
||||
.irow-label { flex: none; min-width: 52px; font-size: 11px; color: #9a9a90; letter-spacing: 1px; }
|
||||
.irow-val { flex: 1; text-align: right; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.maj { margin-top: 12px; border: 1px solid rgba(255,255,255,0.14); border-radius: 10px; padding: 10px 11px; background: rgba(10,10,10,0.55); }
|
||||
.maj-head { display: flex; align-items: center; justify-content: space-between; }
|
||||
.maj-title { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.maj-time { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: #9a9a90; }
|
||||
.maj-body { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
|
||||
.maj-desc { font-size: 12px; color: #c9c8bd; }
|
||||
.maj-pct { flex: none; font-size: 15px; font-weight: 700; }
|
||||
.segbar-s { height: 8px; margin: 9px 0 0; }
|
||||
.feat-row { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; }
|
||||
.feat-label { display: inline-flex; align-items: center; gap: 5px; flex: none; font-size: 13px; font-weight: 700; color: #fbfaf5; }
|
||||
.feat-tags { display: flex; flex-wrap: wrap; gap: 5px; }
|
||||
.feat-none { color: #7a7a70; font-size: 12px; }
|
||||
/* 战场特征/主动事件 徽章(复用 efx,尺寸放大适配单卡) */
|
||||
.efx { display: inline-flex; align-items: center; background: rgba(224,196,106,0.12); border: 1px solid; border-radius: 20px; padding: 1px 9px; }
|
||||
.feat-tags .efx { gap: 5px; padding: 4px 10px; font-size: 12px; font-weight: 700; }
|
||||
/* 民主空间站(DSS)增益标识:会动的星球,驻扎给该星球带来 buff;字体用思源黑体(HD2 Sans) */
|
||||
.dss { display: flex; align-items: center; gap: 6px; margin: 0 0 6px; padding: 6px 10px; background: linear-gradient(90deg, #6bb7ea28, #6bb7ea0c); border: 1px solid #6bb7ea55; border-radius: 8px; font-family: "HD2 Sans", "Microsoft YaHei", "Noto Sans SC", sans-serif; }
|
||||
.dss-ic { display: inline-flex; flex: none; }
|
||||
.dss-tx { font-size: 13px; font-weight: 700; color: #6bb7ea; letter-spacing: 1px; }
|
||||
.dss-sub { font-size: 11px; color: #9fd0f5; margin-left: auto; text-align: right; }
|
||||
.env { display: inline-flex; align-items: center; gap: 4px; }
|
||||
.env .ic { margin-right: 3px; }
|
||||
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
|
||||
.chip { display: inline-flex; align-items: center; border: 1px solid; border-radius: 20px; padding: 6px 16px; font-size: 14px; font-weight: 700; background: #101010; letter-spacing: 1px; }
|
||||
.foot { text-align: center; font-size: 12px; color: #5a5a52; margin-top: 4px; }
|
||||
|
||||
body { background:#000; }
|
||||
/* 隐藏预览页外围 box 的标题,聚焦单卡本身 */
|
||||
#singlebox .box-title { display:none; }
|
||||
#singlebox .box { margin:0; padding:24px 26px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="card" style="width:760px;margin:16px auto;">
|
||||
<div id="singlebox">
|
||||
|
||||
<div class="box">
|
||||
<div class="box-title"><span class="dot"></span>进行中的战役</div>
|
||||
|
||||
<div class="campsec">
|
||||
<div class="campsec-title" style="color:#ff9900"><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/faction-terminid.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'>终结族 · 1<span class="campsec-sub">玩家 5,399</span></div>
|
||||
<div class="camps">
|
||||
<div class="camp" style="background-image:url(file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/planets/achernar-secundus.png);">
|
||||
<div class="camp-veil"></div>
|
||||
<div class="camp-rail" style="--rc:#6bb7ea">
|
||||
<span class="rail-icon"><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/faction-super-earth.png' style='width:24px;height:24px;color:#fbfaf5;vertical-align:middle;'></span>
|
||||
<span class="rail-text">保卫战</span>
|
||||
<span class="rail-dots"><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
<div class="camp-body">
|
||||
|
||||
<div class="camp-head">
|
||||
<div class="camp-title">
|
||||
<div class="planet">水委一次星</div>
|
||||
<div class="camp-faction" style="color:#6bb7ea"><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/faction-super-earth.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'>超级地球 · 防守</div>
|
||||
</div>
|
||||
<div class="camp-prog">
|
||||
<div class="camp-pct">100%</div>
|
||||
<div class="camp-prog-label">防御进度</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='segbar ' style='--segc:#6bb7ea'><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i></div>
|
||||
<div class='camp-remain'>剩余时间:<b>3小时42分</b></div>
|
||||
<div class="info-rows"><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><circle cx="12" cy="12" r="9" fill="none" stroke="currentColor" stroke-width="1.5"/><path d="M3 12h18M12 3c2.6 2.4 4 5.6 4 9s-1.4 6.6-4 9c-2.6-2.4-4-5.6-4-9s1.4-6.6 4-9Z" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span><span class='irow-label'>所属星系</span><span class='irow-val'>博格斯分区</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><path d="M12 2c2.5 0 4.7 2 4.7 4.6 0 1.6-.7 3-1.8 3.9 4.8 1.5 7.3 5 7.3 8.9v.6h-2.4v-.6c0-2.7-1.7-5.2-5-6.6.3.6.5 1.3.5 2 0 .5-.3.7-.7.4-.5-.3-1.2-.8-1.9-.8s-1.4.5-1.9.8c-.4.3-.7.1-.7-.4 0-.7.2-1.4.5-2-3.3 1.4-5 3.9-5 6.6v.6H3v-.6c0-3.9 2.5-7.4 7.3-8.9-1.1-.9-1.8-2.3-1.8-3.9C8.5 4 9.5 2 12 2Z" fill="currentColor"/></svg></span><span class='irow-label'>部署潜兵</span><span class='irow-val'>5,399</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><path d="M3 19 9 7l4 7 3-4 5 9H3Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="9.5" cy="5.5" r="1.4" fill="currentColor"/></svg></span><span class='irow-label'>地形特征</span><span class='irow-val'>平原</span></div><div class='irow'><span class='irow-ic'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><path d="M7 18a4 4 0 0 1 0-8 5 5 0 0 1 9.6-1.5A4.5 4.5 0 0 1 17.5 18H7Z" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span><span class='irow-label'>环境事件</span><span class='irow-val'>无</span></div></div>
|
||||
|
||||
<div class="maj">
|
||||
<div class="maj-head">
|
||||
<span class="maj-title"><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#ff9900;vertical-align:middle;'><circle cx="12" cy="12" r="6.5" fill="none" stroke="currentColor" stroke-width="1.6"/><path d="M12 1.5v4M12 18.5v4M1.5 12h4M18.5 12h4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round"/></svg>主要战役:保卫战</span>
|
||||
<span class="maj-time"><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#9a9a90;vertical-align:middle;'><circle cx="12" cy="12" r="8.5" fill="none" stroke="currentColor" stroke-width="1.6"/><path d="M12 7.5V12l3 2" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>3小时42分</span>
|
||||
</div>
|
||||
<div class="maj-body">
|
||||
<span class="maj-desc">终结族正在进攻,超级地球军民正在保卫该星球</span>
|
||||
<span class="maj-pct" style="color:#ff9900">73%</span>
|
||||
</div>
|
||||
<div class='segbar segbar-s' style='--segc:#ff9900'><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i class='on'></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i></div>
|
||||
</div>
|
||||
<div class='feat-row'><span class='feat-label'><svg class='ic' viewBox='0 0 24 24' style='width:1em;height:1em;color:#6bb7ea;vertical-align:middle;'><rect x="2.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="2.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="2.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/><rect x="13.5" y="13.5" width="8" height="8" rx="1.2" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>星球效果</span><span class='feat-tags'><span class='efx' style='background:#6bb7ea1f;border-color:#6bb7ea66;color:#6bb7ea'><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/effect-factory-hub.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'> 工厂枢纽</span><span class='efx' style='background:#e0c46a1f;border-color:#e0c46a66;color:#e0c46a'><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/effect-tcs-plus.png' style='width:1.2em;height:1.2em;color:#e0c46a;vertical-align:middle;'> 终结族遏制体系+</span><span class='efx' style='background:#ff99001f;border-color:#ff990066;color:#ff9900'><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/effect-predator-strain.png' style='width:1.2em;height:1.2em;color:#ff9900;vertical-align:middle;'> 掠食变种</span><span class='efx' style='background:#6bb7ea1f;border-color:#6bb7ea66;color:#6bb7ea'><img class='ic' src='file:///D:/QQ%20Bot/HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/img/assets/icons/effect-heavy-seaf.png' style='width:1.2em;height:1.2em;color:#6bb7ea;vertical-align:middle;'> 超级地球武装部队驻守</span></span></div>
|
||||
</div>
|
||||
</div></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"name": "AC-8 机炮",
|
||||
"path": "img/helldivers/AC-8 机炮.png",
|
||||
"path": "res/img/helldivers/AC-8 机炮.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"机炮"
|
||||
@@ -10,7 +10,7 @@
|
||||
},
|
||||
{
|
||||
"name": "APW-1 反器材步枪",
|
||||
"path": "img/helldivers/APW-1 反器材步枪.png",
|
||||
"path": "res/img/helldivers/APW-1 反器材步枪.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"反器材"
|
||||
@@ -19,7 +19,7 @@
|
||||
},
|
||||
{
|
||||
"name": "ARC-3 电弧发射器",
|
||||
"path": "img/helldivers/ARC-3 电弧发射器.png",
|
||||
"path": "res/img/helldivers/ARC-3 电弧发射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"电弧发射器"
|
||||
@@ -28,7 +28,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AX-LAS-5 漫游车",
|
||||
"path": "img/helldivers/AX-LAS-5 漫游车.png",
|
||||
"path": "res/img/helldivers/AX-LAS-5 漫游车.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"激光狗"
|
||||
@@ -37,7 +37,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AX·AR-23 护卫犬",
|
||||
"path": "img/helldivers/AX·AR-23 护卫犬.png",
|
||||
"path": "res/img/helldivers/AX·AR-23 护卫犬.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"实弹狗",
|
||||
@@ -47,7 +47,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AX·ARC-3 K-9",
|
||||
"path": "img/helldivers/AX·ARC-3 K-9.png",
|
||||
"path": "res/img/helldivers/AX·ARC-3 K-9.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"电狗"
|
||||
@@ -56,7 +56,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AX·FLAM-75 热狗",
|
||||
"path": "img/helldivers/AX·FLAM-75 热狗.png",
|
||||
"path": "res/img/helldivers/AX·FLAM-75 热狗.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"火狗"
|
||||
@@ -65,7 +65,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AX·TX-13 腐息",
|
||||
"path": "img/helldivers/AX·TX-13 腐息.png",
|
||||
"path": "res/img/helldivers/AX·TX-13 腐息.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"毒狗"
|
||||
@@ -74,7 +74,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·AC-8 自动哨戒炮",
|
||||
"path": "img/helldivers/A·AC-8 自动哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·AC-8 自动哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"机炮炮台"
|
||||
@@ -83,7 +83,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·ARC-3 特斯拉塔",
|
||||
"path": "img/helldivers/A·ARC-3 特斯拉塔.png",
|
||||
"path": "res/img/helldivers/A·ARC-3 特斯拉塔.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"电塔"
|
||||
@@ -92,7 +92,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·FLAM-40 火焰喷射哨戒炮",
|
||||
"path": "img/helldivers/A·FLAM-40 火焰喷射哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·FLAM-40 火焰喷射哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"喷火炮台"
|
||||
@@ -101,7 +101,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·G-16 加特林哨戒炮",
|
||||
"path": "img/helldivers/A·G-16 加特林哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·G-16 加特林哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"加特林炮台"
|
||||
@@ -110,7 +110,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·GM-17 瓦斯迫击哨戒炮",
|
||||
"path": "img/helldivers/A·GM-17 瓦斯迫击哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·GM-17 瓦斯迫击哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"毒迫"
|
||||
@@ -119,7 +119,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·LAS-98 激光哨戒炮",
|
||||
"path": "img/helldivers/A·LAS-98 激光哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·LAS-98 激光哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"激光炮台"
|
||||
@@ -128,7 +128,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·M-12 迫击哨戒炮",
|
||||
"path": "img/helldivers/A·M-12 迫击哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·M-12 迫击哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"炮击炮"
|
||||
@@ -137,7 +137,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·M-23 电磁冲击波迫击哨戒炮",
|
||||
"path": "img/helldivers/A·M-23 电磁冲击波迫击哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·M-23 电磁冲击波迫击哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"电磁迫击炮"
|
||||
@@ -146,7 +146,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·MG-43 哨戒机枪",
|
||||
"path": "img/helldivers/A·MG-43 哨戒机枪.png",
|
||||
"path": "res/img/helldivers/A·MG-43 哨戒机枪.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"小机枪炮塔"
|
||||
@@ -155,7 +155,7 @@
|
||||
},
|
||||
{
|
||||
"name": "A·MLS-X 火箭哨戒炮",
|
||||
"path": "img/helldivers/A·MLS-X 火箭哨戒炮.png",
|
||||
"path": "res/img/helldivers/A·MLS-X 火箭哨戒炮.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
""
|
||||
@@ -164,7 +164,7 @@
|
||||
},
|
||||
{
|
||||
"name": "B-1 补给背包",
|
||||
"path": "img/helldivers/B-1 补给背包.png",
|
||||
"path": "res/img/helldivers/B-1 补给背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"补包"
|
||||
@@ -173,7 +173,7 @@
|
||||
},
|
||||
{
|
||||
"name": "B-100 便携式地狱火炸弹",
|
||||
"path": "img/helldivers/B-100 便携式地狱火炸弹.png",
|
||||
"path": "res/img/helldivers/B-100 便携式地狱火炸弹.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"地狱火背包"
|
||||
@@ -182,7 +182,7 @@
|
||||
},
|
||||
{
|
||||
"name": "B·FLAM-80 焚燃者",
|
||||
"path": "img/helldivers/B·FLAM-80 焚燃者.png",
|
||||
"path": "res/img/helldivers/B·FLAM-80 焚燃者.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"背包喷火"
|
||||
@@ -191,7 +191,7 @@
|
||||
},
|
||||
{
|
||||
"name": "B·MD C4背包",
|
||||
"path": "img/helldivers/B·MD C4背包.png",
|
||||
"path": "res/img/helldivers/B·MD C4背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"C4背包"
|
||||
@@ -200,7 +200,7 @@
|
||||
},
|
||||
{
|
||||
"name": "CQC-1 唯一真旗",
|
||||
"path": "img/helldivers/CQC-1 唯一真旗.png",
|
||||
"path": "res/img/helldivers/CQC-1 唯一真旗.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"唯一真旗"
|
||||
@@ -209,7 +209,7 @@
|
||||
},
|
||||
{
|
||||
"name": "CQC-20 破门锤",
|
||||
"path": "img/helldivers/CQC-20 破门锤.png",
|
||||
"path": "res/img/helldivers/CQC-20 破门锤.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"锤子"
|
||||
@@ -218,7 +218,7 @@
|
||||
},
|
||||
{
|
||||
"name": "CQC-9 除叶工具",
|
||||
"path": "img/helldivers/CQC-9 除叶工具.png",
|
||||
"path": "res/img/helldivers/CQC-9 除叶工具.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"电锯"
|
||||
@@ -227,7 +227,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EAT-17 消耗性反坦克武器",
|
||||
"path": "img/helldivers/EAT-17 消耗性反坦克武器.png",
|
||||
"path": "res/img/helldivers/EAT-17 消耗性反坦克武器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"次抛"
|
||||
@@ -236,7 +236,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EAT-411 荡平者",
|
||||
"path": "img/helldivers/EAT-411 荡平者.png",
|
||||
"path": "res/img/helldivers/EAT-411 荡平者.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"大通碟"
|
||||
@@ -245,7 +245,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EAT-700 消耗性凝固汽油弹",
|
||||
"path": "img/helldivers/EAT-700 消耗性凝固汽油弹.png",
|
||||
"path": "res/img/helldivers/EAT-700 消耗性凝固汽油弹.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"火次抛"
|
||||
@@ -254,7 +254,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EXO-45 爱国者外骨骼机甲",
|
||||
"path": "img/helldivers/EXO-45 爱国者外骨骼机甲.png",
|
||||
"path": "res/img/helldivers/EXO-45 爱国者外骨骼机甲.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"机枪机甲"
|
||||
@@ -263,7 +263,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EXO-49 解放者外骨骼机甲",
|
||||
"path": "img/helldivers/EXO-49 解放者外骨骼机甲.png",
|
||||
"path": "res/img/helldivers/EXO-49 解放者外骨骼机甲.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"机炮机甲"
|
||||
@@ -272,7 +272,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EXO-51 伐木者",
|
||||
"path": "img/helldivers/EXO-51 伐木者.png",
|
||||
"path": "res/img/helldivers/EXO-51 伐木者.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"喷火机甲"
|
||||
@@ -281,7 +281,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EXO-55 突破",
|
||||
"path": "img/helldivers/EXO-55 突破.png",
|
||||
"path": "res/img/helldivers/EXO-55 突破.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"大盾机甲",
|
||||
@@ -291,7 +291,7 @@
|
||||
},
|
||||
{
|
||||
"name": "E·AT-12 反坦克炮台",
|
||||
"path": "img/helldivers/E·AT-12 反坦克炮台.png",
|
||||
"path": "res/img/helldivers/E·AT-12 反坦克炮台.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"轮椅炮"
|
||||
@@ -300,7 +300,7 @@
|
||||
},
|
||||
{
|
||||
"name": "E·GL-21 掷弹兵防卫墙",
|
||||
"path": "img/helldivers/E·GL-21 掷弹兵防卫墙.png",
|
||||
"path": "res/img/helldivers/E·GL-21 掷弹兵防卫墙.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"榴弹墙"
|
||||
@@ -309,7 +309,7 @@
|
||||
},
|
||||
{
|
||||
"name": "E·MG-101 重机枪部署支架",
|
||||
"path": "img/helldivers/E·MG-101 重机枪部署支架.png",
|
||||
"path": "res/img/helldivers/E·MG-101 重机枪部署支架.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"重机枪支架"
|
||||
@@ -318,7 +318,7 @@
|
||||
},
|
||||
{
|
||||
"name": "FAF-14 飞矛",
|
||||
"path": "img/helldivers/FAF-14 飞矛.png",
|
||||
"path": "res/img/helldivers/FAF-14 飞矛.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"飞矛"
|
||||
@@ -327,7 +327,7 @@
|
||||
},
|
||||
{
|
||||
"name": "FLAM-40 火焰喷射器",
|
||||
"path": "img/helldivers/FLAM-40 火焰喷射器.png",
|
||||
"path": "res/img/helldivers/FLAM-40 火焰喷射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"火焰喷射器"
|
||||
@@ -336,7 +336,7 @@
|
||||
},
|
||||
{
|
||||
"name": "FX-12 防护罩生成中继器",
|
||||
"path": "img/helldivers/FX-12 防护罩生成中继器.png",
|
||||
"path": "res/img/helldivers/FX-12 防护罩生成中继器.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"大蛋盾"
|
||||
@@ -345,7 +345,7 @@
|
||||
},
|
||||
{
|
||||
"name": "GL-21 榴弹发射器",
|
||||
"path": "img/helldivers/GL-21 榴弹发射器.png",
|
||||
"path": "res/img/helldivers/GL-21 榴弹发射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"榴弹发射器"
|
||||
@@ -354,7 +354,7 @@
|
||||
},
|
||||
{
|
||||
"name": "GL-28 弹链式榴弹发射器",
|
||||
"path": "img/helldivers/GL-28 弹链式榴弹发射器.png",
|
||||
"path": "res/img/helldivers/GL-28 弹链式榴弹发射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"弹链榴弹"
|
||||
@@ -363,7 +363,7 @@
|
||||
},
|
||||
{
|
||||
"name": "GL-52 缓和使者",
|
||||
"path": "img/helldivers/GL-52 缓和使者.png",
|
||||
"path": "res/img/helldivers/GL-52 缓和使者.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"电榴弹"
|
||||
@@ -372,7 +372,7 @@
|
||||
},
|
||||
{
|
||||
"name": "GR-8 无后坐力炮",
|
||||
"path": "img/helldivers/GR-8 无后坐力炮.png",
|
||||
"path": "res/img/helldivers/GR-8 无后坐力炮.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"无后坐"
|
||||
@@ -381,7 +381,7 @@
|
||||
},
|
||||
{
|
||||
"name": "LAS-98 激光大炮",
|
||||
"path": "img/helldivers/LAS-98 激光大炮.png",
|
||||
"path": "res/img/helldivers/LAS-98 激光大炮.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"激光大炮"
|
||||
@@ -390,7 +390,7 @@
|
||||
},
|
||||
{
|
||||
"name": "LAS-99 类星体加农炮",
|
||||
"path": "img/helldivers/LAS-99 类星体加农炮.png",
|
||||
"path": "res/img/helldivers/LAS-99 类星体加农炮.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"类星体"
|
||||
@@ -399,7 +399,7 @@
|
||||
},
|
||||
{
|
||||
"name": "LIFT-182 传送背包",
|
||||
"path": "img/helldivers/LIFT-182 传送背包.png",
|
||||
"path": "res/img/helldivers/LIFT-182 传送背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"传包"
|
||||
@@ -408,7 +408,7 @@
|
||||
},
|
||||
{
|
||||
"name": "LIFT-850 喷射背包",
|
||||
"path": "img/helldivers/LIFT-850 喷射背包.png",
|
||||
"path": "res/img/helldivers/LIFT-850 喷射背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"跳包"
|
||||
@@ -417,7 +417,7 @@
|
||||
},
|
||||
{
|
||||
"name": "LIFT-860 悬浮背包",
|
||||
"path": "img/helldivers/LIFT-860 悬浮背包.png",
|
||||
"path": "res/img/helldivers/LIFT-860 悬浮背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"悬浮背包"
|
||||
@@ -426,7 +426,7 @@
|
||||
},
|
||||
{
|
||||
"name": "M-1000 重装机枪",
|
||||
"path": "img/helldivers/M-1000 重装机枪.png",
|
||||
"path": "res/img/helldivers/M-1000 重装机枪.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"弹链机枪"
|
||||
@@ -435,7 +435,7 @@
|
||||
},
|
||||
{
|
||||
"name": "M-102 快速侦察载具",
|
||||
"path": "img/helldivers/M-102 快速侦察载具.png",
|
||||
"path": "res/img/helldivers/M-102 快速侦察载具.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"FRV",
|
||||
@@ -445,7 +445,7 @@
|
||||
},
|
||||
{
|
||||
"name": "M-105 盟友",
|
||||
"path": "img/helldivers/M-105 盟友.png",
|
||||
"path": "res/img/helldivers/M-105 盟友.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"盟友"
|
||||
@@ -454,7 +454,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MD-17 反坦克地雷",
|
||||
"path": "img/helldivers/MD-17 反坦克地雷.png",
|
||||
"path": "res/img/helldivers/MD-17 反坦克地雷.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"反坦克地雷"
|
||||
@@ -463,7 +463,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MD-6 反步兵雷区",
|
||||
"path": "img/helldivers/MD-6 反步兵雷区.png",
|
||||
"path": "res/img/helldivers/MD-6 反步兵雷区.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"反步兵雷区"
|
||||
@@ -472,7 +472,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MD-8 毒气地雷",
|
||||
"path": "img/helldivers/MD-8 毒气地雷.png",
|
||||
"path": "res/img/helldivers/MD-8 毒气地雷.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"毒气地雷",
|
||||
@@ -482,7 +482,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MD-I4 燃烧地雷",
|
||||
"path": "img/helldivers/MD-I4 燃烧地雷.png",
|
||||
"path": "res/img/helldivers/MD-I4 燃烧地雷.png",
|
||||
"type": "green",
|
||||
"alias": [
|
||||
"火地雷"
|
||||
@@ -491,7 +491,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MG-206 重机枪",
|
||||
"path": "img/helldivers/MG-206 重机枪.png",
|
||||
"path": "res/img/helldivers/MG-206 重机枪.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"重机枪"
|
||||
@@ -500,7 +500,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MG-43 机枪",
|
||||
"path": "img/helldivers/MG-43 机枪.png",
|
||||
"path": "res/img/helldivers/MG-43 机枪.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"中机枪"
|
||||
@@ -509,7 +509,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MGX-42 子弹风暴",
|
||||
"path": "img/helldivers/MGX-42 子弹风暴.png",
|
||||
"path": "res/img/helldivers/MGX-42 子弹风暴.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"子弹风暴"
|
||||
@@ -518,7 +518,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MLS-4X 突击兵",
|
||||
"path": "img/helldivers/MLS-4X 突击兵.png",
|
||||
"path": "res/img/helldivers/MLS-4X 突击兵.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"突击兵"
|
||||
@@ -527,7 +527,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MS-11 单兵导弹发射井",
|
||||
"path": "img/helldivers/MS-11 单兵导弹发射井.png",
|
||||
"path": "res/img/helldivers/MS-11 单兵导弹发射井.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"发射井"
|
||||
@@ -536,7 +536,7 @@
|
||||
},
|
||||
{
|
||||
"name": "PLAS-45 纪元",
|
||||
"path": "img/helldivers/PLAS-45 纪元.png",
|
||||
"path": "res/img/helldivers/PLAS-45 纪元.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"纪元"
|
||||
@@ -545,7 +545,7 @@
|
||||
},
|
||||
{
|
||||
"name": "RL-77 空爆火箭弹发射器",
|
||||
"path": "img/helldivers/RL-77 空爆火箭弹发射器.png",
|
||||
"path": "res/img/helldivers/RL-77 空爆火箭弹发射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"空爆"
|
||||
@@ -554,7 +554,7 @@
|
||||
},
|
||||
{
|
||||
"name": "RS-422 磁轨炮",
|
||||
"path": "img/helldivers/RS-422 磁轨炮.png",
|
||||
"path": "res/img/helldivers/RS-422 磁轨炮.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"磁轨",
|
||||
@@ -564,7 +564,7 @@
|
||||
},
|
||||
{
|
||||
"name": "S-11 矛枪",
|
||||
"path": "img/helldivers/S-11 矛枪.png",
|
||||
"path": "res/img/helldivers/S-11 矛枪.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"毒矛"
|
||||
@@ -573,7 +573,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SH-20 防弹护盾背包",
|
||||
"path": "img/helldivers/SH-20 防弹护盾背包.png",
|
||||
"path": "res/img/helldivers/SH-20 防弹护盾背包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"防弹盾"
|
||||
@@ -582,7 +582,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SH-32 防护罩生成包",
|
||||
"path": "img/helldivers/SH-32 防护罩生成包.png",
|
||||
"path": "res/img/helldivers/SH-32 防护罩生成包.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"蛋盾"
|
||||
@@ -591,7 +591,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SH-51 定向护盾",
|
||||
"path": "img/helldivers/SH-51 定向护盾.png",
|
||||
"path": "res/img/helldivers/SH-51 定向护盾.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"定向蛋盾"
|
||||
@@ -600,7 +600,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StA-X3 W.A.S.P.发射器",
|
||||
"path": "img/helldivers/StA-X3 W.A.S.P.发射器.png",
|
||||
"path": "res/img/helldivers/StA-X3 W.A.S.P.发射器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"小蜜蜂"
|
||||
@@ -609,7 +609,7 @@
|
||||
},
|
||||
{
|
||||
"name": "TD-220 堡垒MK XVI",
|
||||
"path": "img/helldivers/TD-220 堡垒MK XVI.png",
|
||||
"path": "res/img/helldivers/TD-220 堡垒MK XVI.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"坦克"
|
||||
@@ -618,7 +618,7 @@
|
||||
},
|
||||
{
|
||||
"name": "TX-41 灭菌器",
|
||||
"path": "img/helldivers/TX-41 灭菌器.png",
|
||||
"path": "res/img/helldivers/TX-41 灭菌器.png",
|
||||
"type": "blue",
|
||||
"alias": [
|
||||
"毒喷"
|
||||
@@ -627,7 +627,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道120MM高爆弹火力网",
|
||||
"path": "img/helldivers/轨道120MM高爆弹火力网.png",
|
||||
"path": "res/img/helldivers/轨道120MM高爆弹火力网.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"120"
|
||||
@@ -636,7 +636,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道380MM高爆弹火力网",
|
||||
"path": "img/helldivers/轨道380MM高爆弹火力网.png",
|
||||
"path": "res/img/helldivers/轨道380MM高爆弹火力网.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"380"
|
||||
@@ -645,7 +645,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道凝固汽油弹火力网",
|
||||
"path": "img/helldivers/轨道凝固汽油弹火力网.png",
|
||||
"path": "res/img/helldivers/轨道凝固汽油弹火力网.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道火"
|
||||
@@ -654,7 +654,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道加特林火力网",
|
||||
"path": "img/helldivers/轨道加特林火力网.png",
|
||||
"path": "res/img/helldivers/轨道加特林火力网.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道加特林"
|
||||
@@ -663,7 +663,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道毒气攻击",
|
||||
"path": "img/helldivers/轨道毒气攻击.png",
|
||||
"path": "res/img/helldivers/轨道毒气攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道毒"
|
||||
@@ -672,7 +672,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道游走火力网",
|
||||
"path": "img/helldivers/轨道游走火力网.png",
|
||||
"path": "res/img/helldivers/轨道游走火力网.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道游走"
|
||||
@@ -681,7 +681,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道激光炮",
|
||||
"path": "img/helldivers/轨道激光炮.png",
|
||||
"path": "res/img/helldivers/轨道激光炮.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道激光"
|
||||
@@ -690,7 +690,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道炮攻击",
|
||||
"path": "img/helldivers/轨道炮攻击.png",
|
||||
"path": "res/img/helldivers/轨道炮攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道自瞄"
|
||||
@@ -699,7 +699,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道烟雾攻击",
|
||||
"path": "img/helldivers/轨道烟雾攻击.png",
|
||||
"path": "res/img/helldivers/轨道烟雾攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道烟"
|
||||
@@ -708,7 +708,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道电磁冲击波攻击",
|
||||
"path": "img/helldivers/轨道电磁冲击波攻击.png",
|
||||
"path": "res/img/helldivers/轨道电磁冲击波攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道电磁"
|
||||
@@ -717,7 +717,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道空爆攻击",
|
||||
"path": "img/helldivers/轨道空爆攻击.png",
|
||||
"path": "res/img/helldivers/轨道空爆攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"轨道空爆"
|
||||
@@ -726,7 +726,7 @@
|
||||
},
|
||||
{
|
||||
"name": "轨道精准攻击",
|
||||
"path": "img/helldivers/轨道精准攻击.png",
|
||||
"path": "res/img/helldivers/轨道精准攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
""
|
||||
@@ -735,7 +735,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰110MM火箭巢",
|
||||
"path": "img/helldivers/飞鹰110MM火箭巢.png",
|
||||
"path": "res/img/helldivers/飞鹰110MM火箭巢.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"飞鹰110"
|
||||
@@ -744,7 +744,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰500KG炸弹",
|
||||
"path": "img/helldivers/飞鹰500KG炸弹.png",
|
||||
"path": "res/img/helldivers/飞鹰500KG炸弹.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"500",
|
||||
@@ -754,7 +754,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰凝固汽油弹空袭",
|
||||
"path": "img/helldivers/飞鹰凝固汽油弹空袭.png",
|
||||
"path": "res/img/helldivers/飞鹰凝固汽油弹空袭.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"飞鹰火"
|
||||
@@ -763,7 +763,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰机枪扫射",
|
||||
"path": "img/helldivers/飞鹰机枪扫射.png",
|
||||
"path": "res/img/helldivers/飞鹰机枪扫射.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"飞鹰机枪"
|
||||
@@ -772,7 +772,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰烟雾攻击",
|
||||
"path": "img/helldivers/飞鹰烟雾攻击.png",
|
||||
"path": "res/img/helldivers/飞鹰烟雾攻击.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"飞鹰烟"
|
||||
@@ -781,7 +781,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰空袭",
|
||||
"path": "img/helldivers/飞鹰空袭.png",
|
||||
"path": "res/img/helldivers/飞鹰空袭.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
""
|
||||
@@ -790,7 +790,7 @@
|
||||
},
|
||||
{
|
||||
"name": "飞鹰集束炸弹",
|
||||
"path": "img/helldivers/飞鹰集束炸弹.png",
|
||||
"path": "res/img/helldivers/飞鹰集束炸弹.png",
|
||||
"type": "red",
|
||||
"alias": [
|
||||
"飞鹰集束"
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
"""绝地潜兵小助手 —— Trigger 层。"""
|
||||
|
||||
from . import war # noqa: F401
|
||||
@@ -0,0 +1,129 @@
|
||||
"""绝地潜兵小助手 —— 触发器(Trigger)层。"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
import re
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
|
||||
import httpx
|
||||
from nonebot import logger, on_command
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, MessageSegment
|
||||
from nonebot.internal.params import ArgPlainText
|
||||
from nonebot.matcher import Matcher
|
||||
from PIL import Image
|
||||
|
||||
from ..services.equipment import get_equipment_by_combination, get_random_equipment
|
||||
from ..services.hd2_api import get_briefing_data
|
||||
from ..utils import gen_ms_img, pic2b64
|
||||
from ..utils.war_renderer import render_war_briefing
|
||||
|
||||
_BASE_DIR = Path(__file__).resolve().parents[1]
|
||||
_IMG_DIR = _BASE_DIR / "res" / "img"
|
||||
|
||||
|
||||
async def _send_war_card(matcher: Matcher, ev: MessageEvent, top_per_race: Optional[int]) -> None:
|
||||
await matcher.send("正在获取前线战况,请民主的等待!")
|
||||
try:
|
||||
data = await get_briefing_data()
|
||||
png = await render_war_briefing(data, top_per_race)
|
||||
except Exception as e:
|
||||
logger.exception("获取战况失败")
|
||||
await matcher.finish(
|
||||
MessageSegment.reply(ev.message_id)
|
||||
+ f"战况获取失败:{type(e).__name__}:{e}"
|
||||
)
|
||||
return
|
||||
mes = (MessageSegment.reply(ev.message_id), gen_ms_img(png))
|
||||
await matcher.send(mes)
|
||||
|
||||
|
||||
war_situation = on_command("简报", aliases={"简报"})
|
||||
war_detail = on_command("详报", aliases={"详报"})
|
||||
|
||||
|
||||
@war_situation.handle()
|
||||
async def get_war_info(ev: MessageEvent):
|
||||
await _send_war_card(war_situation, ev, top_per_race=4)
|
||||
|
||||
|
||||
@war_detail.handle()
|
||||
async def get_war_detail(ev: MessageEvent):
|
||||
await _send_war_card(war_detail, ev, top_per_race=None)
|
||||
|
||||
|
||||
async def download_url(url: str) -> bytes | None:
|
||||
async with httpx.AsyncClient() as client:
|
||||
for i in range(3):
|
||||
try:
|
||||
resp = await client.get(url)
|
||||
if resp.status_code != 200:
|
||||
continue
|
||||
return resp.content
|
||||
except Exception as e:
|
||||
logger.error(f"Error downloading {url}, retry {i}/3: {str(e)}")
|
||||
return None
|
||||
|
||||
|
||||
random_helldivers = on_command("随机战备", aliases={"随机战备"}, block=True)
|
||||
|
||||
board_path = str(_IMG_DIR / "board2.png")
|
||||
PROMPT = MessageSegment.image(pic2b64(Image.open(board_path)))
|
||||
|
||||
error_count = 0
|
||||
|
||||
|
||||
@random_helldivers.got("pick_type", prompt=PROMPT)
|
||||
async def got_random_helldivers(event: MessageEvent, pick_type: str = ArgPlainText()):
|
||||
global error_count
|
||||
if error_count >= 2:
|
||||
await random_helldivers.finish("已回归平民生活——")
|
||||
logger.info("持续输错退出随机战备")
|
||||
error_count = 0
|
||||
return
|
||||
logger.info(f"用户选择的战备类型: {pick_type}")
|
||||
if not is_number(pick_type):
|
||||
error_count += 1
|
||||
await random_helldivers.reject(f"您输入的 {pick_type} 非数字,请重新输入1到11,或者输入0退出")
|
||||
elif int(pick_type) not in range(12):
|
||||
error_count += 1
|
||||
await random_helldivers.reject(f"您输入的 {pick_type} 不在范围内,请重新输入1到11,或者输入0退出")
|
||||
elif int(pick_type) == 0:
|
||||
await random_helldivers.finish("已回归平民生活——")
|
||||
logger.info("用户选择退出随机战备")
|
||||
error_count = 0
|
||||
return
|
||||
|
||||
mix_msg = (MessageSegment.reply(event.message_id),)
|
||||
|
||||
type_combinations = {
|
||||
2: {"red": 2, "blue": 1, "green": 1},
|
||||
3: {"green": 2, "red": 1, "blue": 1},
|
||||
4: {"blue": 2, "green": 1, "red": 1},
|
||||
5: {"red": 3, "blue": 1},
|
||||
6: {"green": 3, "blue": 1},
|
||||
7: {"red": 2, "blue": 2},
|
||||
8: {"blue": 2, "green": 2},
|
||||
9: {"green": 2, "red": 2},
|
||||
10: {"red": 4},
|
||||
11: {"green": 4},
|
||||
}
|
||||
|
||||
if int(pick_type) == 1:
|
||||
logger.info("用户选择纯随机战备")
|
||||
result = await get_random_equipment(4)
|
||||
else:
|
||||
combination = type_combinations.get(int(pick_type))
|
||||
logger.info(f"用户选择的战备组合: {combination}")
|
||||
result = await get_equipment_by_combination(combination)
|
||||
|
||||
final_msg = MessageSegment.text("您的随机结果是:\n")
|
||||
image_tuple = gen_ms_img(result)
|
||||
mix_msg += (final_msg, image_tuple)
|
||||
|
||||
await random_helldivers.finish(mix_msg)
|
||||
|
||||
|
||||
def is_number(s):
|
||||
return bool(re.match(r"^[0-9]+$", s))
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loaded 100 of 2389 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user