Files
HeXi/hexi/plugins/nonebot_plugin_helldivers_tools/brief_preview_single.html
T
sansenhoshiandClaude b61d09f09f Add HeXi bot codebase: custom plugins, web frontends, tests
- hexi core: message handling, rate limiting, cooldown, plugin manager
- Custom plugins: BF stats, daily check-in, quotes, persona cards, etc.
- Community plugins vendored under hexi/plugins with local fixes
- Web admin frontends (learning-chat, persona-admin), unified hexi/web
- Tests for rate_limit/cooldown/memes/persona; poetry.lock

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-01 13:13:40 +08:00

178 lines
21 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!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>