Skip to content

4.6.1#970

Merged
MakinoharaShoko merged 50 commits into
mainfrom
dev
Jun 6, 2026
Merged

4.6.1#970
MakinoharaShoko merged 50 commits into
mainfrom
dev

Conversation

@MakinoharaShoko

Copy link
Copy Markdown
Member

No description provided.

A-kirami and others added 30 commits April 7, 2026 08:20
Brazilian Portuguese translation
…time

feat: 切换编辑器预览同步到 V1 运行时
fix: 修复非官方引擎在 build 时版本号被错误覆盖的问题
fix: Fix parser vocal named-argument asset resolution
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
feat: support series argument for unlockCg
ChangeSuger and others added 19 commits May 23, 2026 16:53
- 增加 Enable_Continue 参数,配置继续游戏按钮是否启用
- 继续游戏按钮会在没有自动存档时置灰
- 修改自动存档的记录逻辑,现在会在 end 结束时删除自动存档
fix: avoid cumulative preview set-effect transforms
…tures-to-assets

refactor(webgal): 将引擎特效纹理从 game/tex 迁移到 assets
添加了韩文翻译
- Line 1: Change locale from zhCn to ko
- Line 55: Replace full-width colon(:) with half-width colon (:)
- Line 135: Replace full-width question Mark(?) to half-width question mark (?)
- Line 205: Update export default from zhCn to ko
chore: update locale from zhCn to ko

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces significant updates to the WebGAL engine, including a major overhaul of the editor preview protocol to V1 with a new WebSocket transport, support for grouping and stacking CGs in the gallery, custom dropdown language selection, and new Portuguese (Brazil) and Korean translations. It also refactors animation configurations to support ignoring default animations, introduces throttled auto-saving, and refines fast-skip behaviors. During review, two issues were identified: a critical bug in variable parsing where substring matches on 'true' or 'false' incorrectly coerce variable names to booleans, and a parser bug where empty argument values are incorrectly evaluated as the number zero.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment on lines +92 to +99
} else if (valExp.match(/true|false/)) {
if (valExp.match(/true/)) {
return true;
}
if (valExp.match(/false/)) {
return false;
}
} else if (valExp.length === 0) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

Using .match(/true|false/) on valExp causes a critical bug where any string containing the substring 'true' or 'false' (such as 'trueStory', 'falseAlarm'), or any variable name containing these substrings (such as 'isTrue', 'hasFalseValue'), will be incorrectly parsed as a boolean literal instead of being evaluated or treated as a string. This completely breaks variable lookups for such variables.

Instead, you should perform an exact match on the trimmed value.

  } else if (valExp.trim() === 'true' || valExp.trim() === 'false') {
    return valExp.trim() === 'true';
  }

});
}
// 是数字
else if (!isNaN(Number(argValue))) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

When argValue is an empty string "" (for example, when parsing an argument like -arg=), Number(argValue) evaluates to 0, and !isNaN(0) is true. This causes empty arguments to be incorrectly parsed as the number 0 instead of an empty string.

Adding a check to ensure argValue is not empty prevents this issue.

Suggested change
else if (!isNaN(Number(argValue))) {
else if (argValue !== '' && !isNaN(Number(argValue))) {

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 6, 2026

Copy link
Copy Markdown

Deploying webgal-dev with  Cloudflare Pages  Cloudflare Pages

Latest commit: 5f569eb
Status: ✅  Deploy successful!
Preview URL: https://108ccc3f.webgal-dev.pages.dev

View logs

@MakinoharaShoko MakinoharaShoko merged commit 5a9e59a into main Jun 6, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants