Skip to content

Commit

Permalink
Merge pull request #206 from H-J-Granger/feature/th18-backspace-menu-…
Browse files Browse the repository at this point in the history
…translation

Add th18 backspace menu translation
  • Loading branch information
32th-System authored Feb 4, 2025
2 parents f95a1ba + 99e6136 commit 4018d97
Show file tree
Hide file tree
Showing 5 changed files with 49 additions and 41 deletions.
45 changes: 23 additions & 22 deletions thprac/src/thprac/thprac_games_def.json
Original file line number Diff line number Diff line change
Expand Up @@ -543,12 +543,12 @@
"TH185_TITLE": [
"TH18.5 弹幕狂们的黑市 ~ 100th Black Market.",
"TH18.5 100th Black Market",
"TH18.5 バレットフィリア達の闇市場  100th Black Market."
"TH18.5 バレットフィリア達の闇市場  100th Black Market."
],
"TH19_TITLE": [
"TH19 东方兽王园 Unfinished Dream of All Living Ghost.",
"TH19 东方兽王园 ~ Unfinished Dream of All Living Ghost.",
"TH19 Unfinished Dream of All Living Ghost",
"TH19 東方獣王園 Unfinished Dream of All Living Ghost."
"TH19 東方獣王園 ~ Unfinished Dream of All Living Ghost."
]
},

Expand Down Expand Up @@ -4708,11 +4708,11 @@
},

"th125": {
"namespace": "TH125",

"glossary": {
"TH125_SPOILER_HISCORE_FIX": [ "修复了 SP 分数更新错误", "High-score fix for Spoiler scenes", "SPスコア更新バグ修正" ]
}
"namespace": "TH125",

"glossary": {
"TH125_SPOILER_HISCORE_FIX": [ "修复了 SP 分数更新错误", "High-score fix for Spoiler scenes", "SPスコア更新バグ修正" ]
}
},

"th128": {
Expand Down Expand Up @@ -8380,8 +8380,9 @@
"TH18_CARD": [ "卡片", "Card", "カード" ],
"TH18_CARD_FORMAT": [ "卡片 %d", "Card %d", "カード %d" ],
"TH18_INFFUNDS": [ "锁资金", "Inf. Funds", "資金力減らない" ],
"TH18_ZERO_CD": [ "0CD", "0CD", "0CD" ],
"TH18_ZERO_CD": [ "无冷却", "No cooldown", "クールタイムがない" ],
"TH18_MARKET_MANIP": [ "市场操纵", "Market Manip.", "市場操作" ],
"TH18_OPEN_MARKET": [ "打开市场", "Open shop", "市場に入る" ],
"TH18_MARKET_MANIP_DESC1": [ "1-8: 顺序展示卡片", "1-8: Display cards in order", "1-8: カードを順番に表示する " ],
"TH18_MARKET_MANIP_DESC2": [ "0: 获取选中卡片", "0: Acquire selected card", "0: 選択したカードを取得する" ],
"TH18_MARKET_MANIP_DESC3": [ "Ctrl+0: 获取所有卡片", "Ctrl+0: Acquire all cards", "Ctrl+0: すべてのカードを取得する " ],
Expand All @@ -8393,7 +8394,7 @@
"TH18_MIKOFLASH_CD": [ "神子冷却", "Miko CD", "神子CD" ],
"TH18_VAMPIRE_CD": [ "牙冷却", "Fang CD", "牙CD" ],
"TH18_SUN_CD": [ "太阳冷却", "Sun CD", "太陽CD" ],
"TH18_LILY_COUNT": [ "莉莉用计数", "Lily Count", "リリ使回数" ],
"TH18_LILY_COUNT": [ "莉莉使用数", "Lily Count", "リリ使回数" ],
"TH18_LILY_CD": [ "莉莉冷却", "Lily CD", "リリCD" ],
"TH18_BASSDRUM_CD": [ "鼓冷却", "Drum CD", "低音鼓CD" ],
"TH18_PSYCO_CD": [ "菫子冷却", "Sumi CD", "菫子CD" ],
Expand All @@ -8402,9 +8403,9 @@
"TH18_UNCAP": [ "移除分数限制", "Score uncap", "スコアキャップ解放" ],
"TH18_UNCAP_OVERWRITE": [ "...并写入replay中", "...and write into the replay", "...そしてリプレイに書き込みます " ],
"TH18_REPLAY_BONUS": [ "播放replay时计算关卡/Clear Bonus", "Add stage/clear bonus when playing replay", "リプレイを再生するときにステージ/クリアボーナスを加算する" ],
"TH18_STATIC_MALLET": [ "在重播时,将万宝槌的金币转换率固定为30里的11", "Fix Mallet gold conversion ratio to 11:30 when playing replay", "リプレイ再生時の小槌の金変換率を十一の三十に変更" ],
"TH18_STATIC_MALLET": [ "在播放replay时,将万宝槌的金币转换率固定为11/30", "Fix Mallet gold conversion ratio to 11/30 when playing replay", "リプレイ再生時の小槌の金変換率を十一の三十に変更" ],
"TH18_STATIC_MALLET_DESC": [
"启用后,在回放中,万宝槌的物品转换将不再受到RNG影响(每30子弹为11金物品和19绿物品;接近原版游戏的比率)。",
"启用后,在回放中,万宝槌的物品转换将不再受到RNG影响(每30颗子弹变为11个金钱道具和19个得分道具;接近原版游戏的比率)。",
"When enabled, RNG will no longer play a part in the Miracle Mallet's item conversion during replays (11 gold items and 19 green items for every 30 bullets; close to vanilla rate).",
"有効にすると、リプレイ中の打ち出の小槌のアイテム変換においてRNGは影響しません(30弾毎に11の金アイテムと19の緑アイテム;ほぼバニラゲームのレートに近い)。" ],
"TH18_MUKADE_FIX": [ "蜈蚣卡牌修复", "Centipede card fix", "ムカデカード修復" ],
Expand Down Expand Up @@ -9152,15 +9153,15 @@
}
},
"th19": {
"namespace": "TH19",

"glossary": {
"TH19_C_RANK_P1": [ "C3/C4 Rank (P1)", "C3/C4 Rank (P1)", "C3/C4ランク(P1)" ],
"TH19_C_RANK_P2": [ "C3/C4 Rank (P2)", "C3/C4 Rank (P2)", "C3/C4ランク(P2)" ],

"TH19_BARRIER": [ "", "Barrier", "バリア" ],
"TH19_RANK_FORMAT": [ "Rank: %d", "Rank: %d", "ランク: %d" ],
"TH19_SHOW_ENEMY_HP": [ "显示敌人HP", "Show Enemy HP", "敵のHPを表示する" ]
}
"namespace": "TH19",

"glossary": {
"TH19_C_RANK_P1": [ "C3/C4 Rank (P1)", "C3/C4 Rank (P1)", "C3/C4ランク(P1)" ],
"TH19_C_RANK_P2": [ "C3/C4 Rank (P2)", "C3/C4 Rank (P2)", "C3/C4ランク(P2)" ],

"TH19_BARRIER": [ "", "Barrier", "バリア" ],
"TH19_RANK_FORMAT": [ "Rank: %d", "Rank: %d", "ランク: %d" ],
"TH19_SHOW_ENEMY_HP": [ "显示敌人HP", "Show Enemy HP", "敵のHPを表示する" ]
}
}
}
31 changes: 16 additions & 15 deletions thprac/src/thprac/thprac_locale_def.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

namespace THPrac {

const char* th_glossary_str[3][907]
const char* th_glossary_str[3][908]
{
{
"",
Expand Down Expand Up @@ -478,7 +478,7 @@ const char* th_glossary_str[3][907]
"基石冷却",
"锤子冷却",
"莉莉冷却",
"莉莉用计数",
"莉莉使用数",
"市场操纵",
"1-8: 顺序展示卡片",
"0: 获取选中卡片",
Expand All @@ -489,6 +489,7 @@ const char* th_glossary_str[3][907]
"蜈蚣",
"蜈蚣卡牌修复",
"开启时,能够从一面开始正常播放含有蜈蚣卡牌的replay。",
"打开市场",
"菫子冷却",
"你可以使用这个区域中的功能修复被“关卡间切换主动卡”bug影响的replay。\n修复的replay可以使用原版游戏播放(不需要thprac)。",
"隐藏说明##th18",
Expand All @@ -511,20 +512,20 @@ const char* th_glossary_str[3][907]
"开启时,能够正常播放含有卷轴卡牌的replay(仅限Extra)。",
"修复「弹幕的庇护所」",
"开启时,在符卡练习中全避「弹幕的庇护所」将不再使游戏崩溃。",
"在重播时,将万宝槌的金币转换率固定为30里的11",
"启用后,在回放中,万宝槌的物品转换将不再受到RNG影响(每30子弹为11金物品和19绿物品;接近原版游戏的比率)。",
"在播放replay时,将万宝槌的金币转换率固定为11/30",
"启用后,在回放中,万宝槌的物品转换将不再受到RNG影响(每30颗子弹变为11个金钱道具和19个得分道具;接近原版游戏的比率)。",
"太阳冷却",
"TH18 东方虹龙洞 ~ Unconnected Marketeers.",
"移除分数限制",
"...并写入replay中",
"牙冷却",
"0CD",
"无冷却",
"盾",
"C3/C4 Rank (P1)",
"C3/C4 Rank (P2)",
"Rank: %d",
"显示敌人HP",
"TH19 东方兽王园 Unfinished Dream of All Living Ghost.",
"TH19 东方兽王园 ~ Unfinished Dream of All Living Ghost.",
"中止",
"以管理员身份启动thprac",
"启动游戏后:",
Expand Down Expand Up @@ -1398,6 +1399,7 @@ const char* th_glossary_str[3][907]
"Centipede",
"Centipede card fix",
"When enabled, allowing replays that contain the centipede card to play normally if start from stage one.",
"Open shop",
"Sumi CD",
"This section allows you to fix replays that were affected by the \"switching active cards in-between stages\" bug.\nRepaired replays can be played with the original game (thprac is not needed).",
"Hide instruction##th18",
Expand All @@ -1420,14 +1422,14 @@ const char* th_glossary_str[3][907]
"When enabled, allowing replays (Extra only) that contain the scroll card to play normally.",
"Fix \"Asylum of Danmaku\"",
"When enabled, timeouting \"Asylum of Danmaku\" in spell practice no longer crashes the game.",
"Fix Mallet gold conversion ratio to 11:30 when playing replay",
"Fix Mallet gold conversion ratio to 11/30 when playing replay",
"When enabled, RNG will no longer play a part in the Miracle Mallet's item conversion during replays (11 gold items and 19 green items for every 30 bullets; close to vanilla rate).",
"Sun CD",
"TH18 Unconnected Marketeers",
"Score uncap",
"...and write into the replay",
"Fang CD",
"0CD",
"No cooldown",
"Barrier",
"C3/C4 Rank (P1)",
"C3/C4 Rank (P2)",
Expand Down Expand Up @@ -2211,7 +2213,7 @@ const char* th_glossary_str[3][907]
"「身軽な生首ライフ」",
"「剽掠のさざ波」",
"石符「エイジャの積石」",
"TH18.5 バレットフィリア達の闇市場  100th Black Market.",
"TH18.5 バレットフィリア達の闇市場  100th Black Market.",
"Wave 1",
"Wave 10",
"Wave 11",
Expand Down Expand Up @@ -2307,6 +2309,7 @@ const char* th_glossary_str[3][907]
"ムカデ",
"ムカデカード修復",
"有効にすると、ムカデカードを含むリプレイを一面から再生した場合に正常に再生できるようになります。",
"市場に入る",
"菫子CD",
"このセクションでは、「ステージ間で使用カードを切り替える」バグの影響を受けたリプレイを修正できます。\n修復されたリプレイは、オリジナルゲームで再生できます(thpracは必要ありません)。",
"指示を非表示##th18",
Expand Down Expand Up @@ -2336,13 +2339,13 @@ const char* th_glossary_str[3][907]
"スコアキャップ解放",
"...そしてリプレイに書き込みます ",
"牙CD",
"0CD",
"クールタイムがない",
"バリア",
"C3/C4ランク(P1)",
"C3/C4ランク(P2)",
"ランク: %d",
"敵のHPを表示する",
"TH19 東方獣王園 Unfinished Dream of All Living Ghost.",
"TH19 東方獣王園 ~ Unfinished Dream of All Living Ghost.",
"中止",
"管理者権限でthpracを起動する",
"ゲーム起動後:",
Expand Down Expand Up @@ -20143,7 +20146,7 @@ const th_sections_t th_sections_cbt[1][2][1]

}

const wchar_t __thprac_loc_range_zh[3145] {
const wchar_t __thprac_loc_range_zh[3143] {
0x0020, 0x00FF,
0x2014, 0x2014,
0x201c, 0x201c,
Expand All @@ -20153,7 +20156,6 @@ const wchar_t __thprac_loc_range_zh[3145] {
0x3002, 0x3002,
0x300c, 0x300c,
0x300d, 0x300d,
0x301c, 0x301c,
0x4e00, 0x4e00,
0x4e03, 0x4e03,
0x4e07, 0x4e07,
Expand Down Expand Up @@ -21740,7 +21742,7 @@ const wchar_t __thprac_loc_range_en[35] {
0
};

const wchar_t __thprac_loc_range_ja[2671] {
const wchar_t __thprac_loc_range_ja[2669] {
0x0020, 0x00FF,
0x2026, 0x2026,
0x3000, 0x3000,
Expand All @@ -21750,7 +21752,6 @@ const wchar_t __thprac_loc_range_ja[2671] {
0x3006, 0x3006,
0x300c, 0x300c,
0x300d, 0x300d,
0x301c, 0x301c,
0x3042, 0x3042,
0x3044, 0x3044,
0x3046, 0x3046,
Expand Down
7 changes: 4 additions & 3 deletions thprac/src/thprac/thprac_locale_def.h
Original file line number Diff line number Diff line change
Expand Up @@ -489,6 +489,7 @@ enum th_glossary_t
TH18_MUKADE,
TH18_MUKADE_FIX,
TH18_MUKADE_FIX_DESC,
TH18_OPEN_MARKET,
TH18_PSYCO_CD,
TH18_REPFIX_DESC,
TH18_REPFIX_HIDE_INS,
Expand Down Expand Up @@ -919,7 +920,7 @@ enum th_glossary_t
TH_WARP,
};

extern const char* th_glossary_str[3][907];
extern const char* th_glossary_str[3][908];

extern const th_glossary_t TH_TYPE_SELECT[13];

Expand Down Expand Up @@ -2449,10 +2450,10 @@ extern const th_sections_t th_sections_cbt[1][2][1];

}

extern const wchar_t __thprac_loc_range_zh[3145];
extern const wchar_t __thprac_loc_range_zh[3143];

extern const wchar_t __thprac_loc_range_en[35];

extern const wchar_t __thprac_loc_range_ja[2671];
extern const wchar_t __thprac_loc_range_ja[2669];

}
5 changes: 5 additions & 0 deletions thprac/src/thprac/thprac_main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,11 @@ THGameSig* CheckOngoingGame(PROCESSENTRY32W& proc, uintptr_t* base, HANDLE* pOut
if (gameDef.exeSig.textSize != sig.textSize || gameDef.exeSig.timeStamp != sig.timeStamp) {
continue;
}
if (pOutHandle) {
*pOutHandle = hProc;
} else {
CloseHandle(hProc);
}
return &gameDef;
}
}
Expand Down
2 changes: 1 addition & 1 deletion thprac/src/thprac/thprac_th18.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -787,7 +787,7 @@ namespace TH18 {
bool f11_enable = !GetMemContent(ABILITY_SHOP_PTR) && GetMemContent(0x4cf2e4);
if (!f11_enable)
ImGui::BeginDisabled();
ImGui::TextUnformatted("F11: Open shop");
ImGui::Text("%s: %s", "F11", S(TH18_OPEN_MARKET));
if (!f11_enable)
ImGui::EndDisabled();
} else {
Expand Down

0 comments on commit 4018d97

Please sign in to comment.