统一游戏内提示与强化描述文案
This commit is contained in:
+39
-39
@@ -335,7 +335,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
};
|
||||
SelectObject(hdc, bodyFont);
|
||||
SetTextColor(hdc, textColor);
|
||||
DrawText(hdc, _T("\u8bf7\u9009\u62e9\u5f00\u59cb\u6a21\u5f0f"), -1, &subtitleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("选择你的战局"), -1, &subtitleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
const TCHAR* modeNames[3] =
|
||||
{
|
||||
@@ -346,9 +346,9 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
|
||||
const TCHAR* modeDescriptions[3] =
|
||||
{
|
||||
_T("\u4fdd\u7559\u5f53\u524d\u539f\u7248\u4fc4\u7f57\u65af\u65b9\u5757\u73a9\u6cd5\uff0c\u76f4\u63a5\u5f00\u59cb\u5bf9\u5c40\u3002"),
|
||||
_T("\u8fdb\u5165 Rogue \u6a21\u5f0f\uff0c\u5df2\u63a5\u5165\u72ec\u7acb HUD \u4e0e\u7b49\u7ea7 / \u7ecf\u9a8c\u7ed3\u7b97\u3002"),
|
||||
_T("\u5355\u72ec\u67e5\u770b\u64cd\u4f5c\u65b9\u5f0f\u3001Rogue \u673a\u5236\u4e0e\u5f53\u524d\u7248\u672c\u8bf4\u660e\u3002")
|
||||
_T("纯粹方块挑战,专注消行、堆叠与生存。"),
|
||||
_T("在不断升级的棋盘中收集强化,构筑本局专属流派。"),
|
||||
_T("查看操作、成长、主动技能与特殊方块规则。")
|
||||
};
|
||||
|
||||
for (int i = 0; i < menuState.optionCount; i++)
|
||||
@@ -507,10 +507,10 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
_T("\u2191 / W\uff1a\u65cb\u8f6c\u65b9\u5757\r\n")
|
||||
_T("\u2193 / S\uff1a\u8f6f\u964d\r\n")
|
||||
_T("Space\uff1a\u786c\u964d\r\n")
|
||||
_T("C / Shift\uff1aHold\uff08\u89e3\u9501\u540e\uff09\r\n")
|
||||
_T("Z\uff1a\u91ca\u653e\u9ed1\u6d1e\uff08\u83b7\u5f97\u540e\uff09\r\n")
|
||||
_T("X\uff1a\u91ca\u653e\u6e05\u5c4f\u70b8\u5f39\uff08\u83b7\u5f97\u540e\uff09\r\n")
|
||||
_T("V\uff1a\u7a7a\u4e2d\u6362\u5f62\uff08\u83b7\u5f97\u540e\uff09\r\n")
|
||||
_T("C / Shift\uff1a备用仓\uff08获得后\uff09\r\n")
|
||||
_T("Z\uff1a黑洞奇点\uff08获得后\uff09\r\n")
|
||||
_T("X\uff1a清屏炸弹\uff08获得后\uff09\r\n")
|
||||
_T("V\uff1a空中换形\uff08获得后\uff09\r\n")
|
||||
_T("P\uff1a\u6682\u505c / \u7ee7\u7eed\r\n")
|
||||
_T("R\uff1a\u91cd\u5f00\u5f53\u524d\u5bf9\u5c40\r\n")
|
||||
_T("M\uff1a\u8fd4\u56de\u4e3b\u83dc\u5355"),
|
||||
@@ -538,10 +538,10 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
};
|
||||
DrawText(
|
||||
hdc,
|
||||
_T("\u7ecf\u5178\u6a21\u5f0f\uff1a\u4fdd\u6301\u539f\u7248\u4fc4\u7f57\u65af\u65b9\u5757\u73a9\u6cd5\uff0c\u4ee5\u6d88\u884c\u548c\u751f\u5b58\u4e3a\u4e3b\u3002\r\n\r\n")
|
||||
_T("Rogue \u6a21\u5f0f\uff1a\u6d88\u884c\u540e\u9664\u4e86\u83b7\u5f97\u5206\u6570\uff0c\u8fd8\u4f1a\u83b7\u5f97 EXP\u3002EXP \u8fbe\u5230\u9608\u503c\u540e\u89e6\u53d1\u5347\u7ea7\uff0c\u4ece\u4e09\u4e2a\u5f3a\u5316\u4e2d\u9009\u4e00\u4e2a\u3002\r\n\r\n")
|
||||
_T("\u5f53\u524d\u5df2\u63a5\u5165\uff1a\u7206\u7834\u8def\u7ebf\u3001\u96f7\u7535\u8def\u7ebf\u3001\u72c2\u70ed\u8def\u7ebf\u53ca\u591a\u79cd Rogue \u7279\u6b8a\u5f3a\u5316\u3002\r\n\r\n")
|
||||
_T("\u63d0\u793a\uff1a\u6682\u505c\u3001\u5931\u8d25\u548c\u5347\u7ea7\u4f1a\u8fdb\u5165\u4e0d\u540c\u754c\u9762\uff0c\u8bf7\u6839\u636e\u5c4f\u5e55\u63d0\u793a\u64cd\u4f5c\u3002"),
|
||||
_T("经典模式:没有成长与主动技能,只考验基础堆叠、消行和生存。\r\n\r\n")
|
||||
_T("Rogue \u6a21\u5f0f\uff1a消行获得分数与 EXP。EXP 满后选择强化,逐步塑造本局能力。\r\n\r\n")
|
||||
_T("强化会带来爆破、雷霆、狂热、黑洞、备用仓等能力;部分进阶强化需要先掌握对应前置。\r\n\r\n")
|
||||
_T("战斗持续越久,危险等级越高,底部封锁区会逐步压缩可用空间。"),
|
||||
-1,
|
||||
&rulesBody,
|
||||
DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
@@ -664,7 +664,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
lockedRect.right - SS(12),
|
||||
lockedRect.bottom - SS(8)
|
||||
};
|
||||
DrawText(hdc, _T("\u96be\u5ea6\u538b\u7f29\u533a"), -1, &lockedTextRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("封锁区"), -1, &lockedTextRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
}
|
||||
|
||||
for (int i = 0; i < nGameHeight; i++)
|
||||
@@ -792,8 +792,8 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
}
|
||||
|
||||
HFONT oldFont = (HFONT)SelectObject(hdc, titleFont);
|
||||
DrawPanelHeader(leftPanelRect, _T("\u5bf9\u5c40\u4fe1\u606f"), 120);
|
||||
DrawPanelHeader(rightPanelRect, _T("\u9884\u89c8\u4e0e\u63d0\u793a"), 148);
|
||||
DrawPanelHeader(leftPanelRect, _T("战局信息"), 120);
|
||||
DrawPanelHeader(rightPanelRect, _T("预览与战术"), 148);
|
||||
|
||||
SelectObject(hdc, sectionFont);
|
||||
SetTextColor(hdc, textColor);
|
||||
@@ -816,7 +816,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
overviewRect.right - SS(18),
|
||||
overviewRect.top + SS(42)
|
||||
};
|
||||
DrawText(hdc, _T("\u57fa\u7840\u72b6\u6001"), -1, &overviewTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("战场状态"), -1, &overviewTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
SelectObject(hdc, bodyFont);
|
||||
TCHAR overviewText[160];
|
||||
@@ -825,7 +825,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
{
|
||||
_stprintf_s(
|
||||
overviewText,
|
||||
_T("\u5f53\u524d\u5f97\u5206 %d\r\n\u5f53\u524d\u6a21\u5f0f Rogue\r\n\u7d2f\u8ba1\u6d88\u884c %d\r\n\u96be\u5ea6 Lv.%d \u9501\u884c %d"),
|
||||
_T("得分 %d\r\n模式 Rogue\r\n消行 %d\r\n危险 Lv.%d 封锁 %d"),
|
||||
tScore,
|
||||
totalLines,
|
||||
rogueStats.difficultyLevel,
|
||||
@@ -835,7 +835,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
{
|
||||
_stprintf_s(
|
||||
overviewText,
|
||||
_T("\u5f53\u524d\u5f97\u5206 %d\r\n\u5f53\u524d\u6a21\u5f0f \u7ecf\u5178\r\n\u7d2f\u8ba1\u6d88\u884c %d"),
|
||||
_T("得分 %d\r\n模式 经典\r\n消行 %d"),
|
||||
tScore,
|
||||
totalLines);
|
||||
}
|
||||
@@ -868,11 +868,11 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
progressRect.right - SS(18),
|
||||
progressRect.top + SS(42)
|
||||
};
|
||||
DrawText(hdc, _T("\u6210\u957f\u8fdb\u5ea6"), -1, &progressTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("成长进度"), -1, &progressTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
SelectObject(hdc, bodyFont);
|
||||
TCHAR progressText[96];
|
||||
_stprintf_s(progressText, _T("\u5f53\u524d\u7b49\u7ea7 %d\r\nEXP %d / %d"), rogueStats.level, rogueStats.exp, rogueStats.requiredExp);
|
||||
_stprintf_s(progressText, _T("等级 %d\r\nEXP %d / %d"), rogueStats.level, rogueStats.exp, rogueStats.requiredExp);
|
||||
RECT progressTextRect =
|
||||
{
|
||||
progressRect.left + SS(22),
|
||||
@@ -963,7 +963,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
|
||||
SelectObject(hdc, sectionFont);
|
||||
SetTextColor(hdc, textColor);
|
||||
TextOut(hdc, upgradeListRect.left + SS(18), upgradeListRect.top + SS(16), _T("\u5df2\u83b7\u5f97\u5f3a\u5316"), lstrlen(_T("\u5df2\u83b7\u5f97\u5f3a\u5316")));
|
||||
TextOut(hdc, upgradeListRect.left + SS(18), upgradeListRect.top + SS(16), _T("已掌握强化"), lstrlen(_T("已掌握强化")));
|
||||
|
||||
SelectObject(hdc, smallFont);
|
||||
SetTextColor(hdc, RGB(128, 104, 118));
|
||||
@@ -1151,7 +1151,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
}
|
||||
if (lstrlen(upgradeSummary) == 0)
|
||||
{
|
||||
_stprintf_s(upgradeSummary, _T("\u6682\u672a\u9009\u62e9\u4efb\u4f55\u5f3a\u5316\u3002\r\n\u5347\u7ea7\u540e\u4f1a\u5728\u8fd9\u91cc\u7d2f\u79ef\u663e\u793a\u3002"));
|
||||
_stprintf_s(upgradeSummary, _T("尚未掌握强化。\r\n下一次升级将开启构筑。"));
|
||||
}
|
||||
|
||||
DrawText(hdc, upgradeSummary, -1, &upgradeBodyRect, DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
@@ -1177,7 +1177,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
classicInfoRect.right - SS(22),
|
||||
classicInfoRect.bottom - SS(24)
|
||||
};
|
||||
DrawText(hdc, _T("\u7ecf\u5178\u6a21\u5f0f\u4fdd\u6301\u539f\u7248\u7b80\u5355\u8ba1\u5206\u3002\r\n\r\n\u6682\u4e0d\u63a5\u5165\u7b49\u7ea7\u3001EXP \u548c\u5f3a\u5316\u7cfb\u7edf\uff0c\u4e13\u6ce8\u4e8e\u57fa\u7840\u4fc4\u7f57\u65af\u65b9\u5757\u5bf9\u5c40\u3002"), -1, &classicBodyRect, DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
DrawText(hdc, _T("经典模式:没有成长、EXP 和强化,只保留纯粹的消行挑战。\r\n\r\n在有限空间中保持阵型,尽可能活得更久。"), -1, &classicBodyRect, DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
}
|
||||
RECT holdNextRect =
|
||||
{
|
||||
@@ -1238,8 +1238,8 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
DrawText(
|
||||
hdc,
|
||||
currentMode == MODE_ROGUE && rogueStats.holdUnlocked > 0
|
||||
? (holdUsedThisTurn ? _T("\u5df2\u4f7f\u7528\r\n\u843d\u5730\u540e\u6062\u590d") : _T("C / Shift\r\n\u6682\u5b58\u4e00\u6b21"))
|
||||
: _T("\u672a\u89e3\u9501\r\nHold \u5f3a\u5316"),
|
||||
? (holdUsedThisTurn ? _T("已使用\r\n落地后恢复") : _T("C / Shift\r\n暂存一次"))
|
||||
: _T("未开启\r\n需备用仓"),
|
||||
-1,
|
||||
&holdHintRect,
|
||||
DT_LEFT | DT_VCENTER | DT_WORDBREAK);
|
||||
@@ -1257,7 +1257,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
holdCard.right - SS(10),
|
||||
holdCard.bottom - SS(10)
|
||||
};
|
||||
DrawText(hdc, _T("\u9501\u5b9a"), -1, &holdLockedRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
DrawText(hdc, _T("封存"), -1, &holdLockedRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
}
|
||||
else if (holdType >= 0)
|
||||
{
|
||||
@@ -1403,7 +1403,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
|
||||
SelectObject(hdc, sectionFont);
|
||||
SetTextColor(hdc, textColor);
|
||||
TextOut(hdc, controlRect.left + SS(18), controlRect.top + SS(16), _T("\u6e38\u620f\u63d0\u793a"), lstrlen(_T("\u6e38\u620f\u63d0\u793a")));
|
||||
TextOut(hdc, controlRect.left + SS(18), controlRect.top + SS(16), _T("战斗日志"), lstrlen(_T("战斗日志")));
|
||||
|
||||
RECT feedbackPanelRect =
|
||||
{
|
||||
@@ -1425,7 +1425,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
};
|
||||
DrawText(
|
||||
hdc,
|
||||
feedbackState.visibleTicks > 0 ? feedbackState.title : _T("\u5f53\u524d\u52a8\u6001"),
|
||||
feedbackState.visibleTicks > 0 ? feedbackState.title : _T("局势平稳"),
|
||||
-1,
|
||||
&feedbackTitleRect,
|
||||
DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
@@ -1443,7 +1443,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
hdc,
|
||||
feedbackState.visibleTicks > 0
|
||||
? feedbackState.detail
|
||||
: _T("\u6682\u65e0\u65b0\u4e8b\u4ef6\u3002\u5347\u7ea7\u9009\u62e9\u3001\u4e3b\u52a8\u6280\u80fd\u548c\u7279\u6b8a\u89e6\u53d1\u90fd\u4f1a\u5728\u8fd9\u91cc\u663e\u793a\u3002"),
|
||||
: _T("连消、主动技能和特殊方块的战斗记录会出现在这里。"),
|
||||
-1,
|
||||
&feedbackBodyRect,
|
||||
DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
@@ -1457,7 +1457,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
controlRect.right - SS(22),
|
||||
controlRect.top + SS(224)
|
||||
};
|
||||
DrawText(hdc, _T("\u57fa\u672c\u6309\u952e"), -1, &tipsTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("操作指令"), -1, &tipsTitleRect, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
SelectObject(hdc, bodyFont);
|
||||
SetTextColor(hdc, RGB(128, 104, 118));
|
||||
@@ -1474,8 +1474,8 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
hdc,
|
||||
_T("\u79fb\u52a8\uff1a\u2190/\u2192 \u6216 A/D\r\n")
|
||||
_T("\u65cb\u8f6c/\u4e0b\u843d\uff1a\u2191/W\u3001\u2193/S\u3001Space\r\n")
|
||||
_T("\u5bf9\u5c40\uff1aP \u6682\u505c R \u91cd\u5f00 M \u83dc\u5355\r\n")
|
||||
_T("Rogue\uff1aC Hold Z \u9ed1\u6d1e X \u6e05\u5c4f V \u6362\u5f62"),
|
||||
_T("战局:P 暂停 R 重开 M 菜单\r\n")
|
||||
_T("技能:C 备用仓 Z 黑洞 X 炸弹 V 换形"),
|
||||
-1,
|
||||
&controlBodyRect,
|
||||
DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
@@ -1486,7 +1486,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
hdc,
|
||||
_T("\u79fb\u52a8\uff1a\u2190/\u2192 \u6216 A/D\r\n")
|
||||
_T("\u65cb\u8f6c/\u4e0b\u843d\uff1a\u2191/W\u3001\u2193/S\u3001Space\r\n")
|
||||
_T("\u5bf9\u5c40\uff1aP \u6682\u505c R \u91cd\u5f00 M \u83dc\u5355"),
|
||||
_T("战局:P 暂停 R 重开 M 菜单"),
|
||||
-1,
|
||||
&controlBodyRect,
|
||||
DT_LEFT | DT_TOP | DT_WORDBREAK);
|
||||
@@ -1533,15 +1533,15 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
|
||||
if (suspendFlag)
|
||||
{
|
||||
DrawText(hdc, _T("\u6e38\u620f\u5df2\u6682\u505c"), -1, &titleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("时间静止"), -1, &titleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
SelectObject(hdc, bodyFont);
|
||||
DrawText(hdc, _T("\u6309 P \u952e\u7ee7\u7eed\u6e38\u620f"), -1, &tipRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
DrawText(hdc, _T("按 P 继续战斗"), -1, &tipRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
}
|
||||
else
|
||||
{
|
||||
DrawText(hdc, _T("\u6e38\u620f\u7ed3\u675f"), -1, &titleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("战局崩塌"), -1, &titleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
SelectObject(hdc, bodyFont);
|
||||
DrawText(hdc, _T("\u6309 R \u952e\u91cd\u65b0\u5f00\u59cb\r\n\u6216\u6309 M \u8fd4\u56de\u83dc\u5355"), -1, &tipRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
DrawText(hdc, _T("按 R 重新挑战\r\n或按 M 返回菜单"), -1, &tipRect, DT_CENTER | DT_VCENTER | DT_WORDBREAK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1583,7 +1583,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
overlayRect.right,
|
||||
overlayRect.top + SS(68)
|
||||
};
|
||||
DrawText(hdc, _T("\u5347\u7ea7\u9009\u62e9"), -1, &overlayTitleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
DrawText(hdc, _T("选择强化"), -1, &overlayTitleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
SelectObject(hdc, bodyFont);
|
||||
SetTextColor(hdc, textColor);
|
||||
@@ -1597,7 +1597,7 @@ void TDrawScreen(HDC hdc, HWND hWnd)
|
||||
TCHAR overlaySubtitle[128];
|
||||
_stprintf_s(
|
||||
overlaySubtitle,
|
||||
_T("\u672c\u6b21\u51fa\u73b0 %d \u4e2a\u9009\u9879\uff0c\u8fd8\u53ef\u9009 %d \u4e2a"),
|
||||
_T("出现 %d 个强化,还可选择 %d 个"),
|
||||
upgradeUiState.optionCount,
|
||||
upgradeUiState.picksRemaining);
|
||||
DrawText(hdc, overlaySubtitle, -1, &overlaySubtitleRect, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||
|
||||
Reference in New Issue
Block a user