You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

批处理游戏活动功能异常:执行后续活动仍显示前一个活动

问题修复方案

你的批处理游戏活动系统出现的问题,核心原因是重复定义活动标签以及错误的跳转目标:

  • 代码在:save标签之后重复定义了所有活动标签(:a_activity到:j_activity),批处理的标签查找逻辑可能导致执行时跳转到错误的标签位置
  • 重复的活动标签中使用了goto activities,但不存在:activities标签,执行后会终止跳转,屏幕内容无法刷新,从而显示上一次的活动内容
  • 另外还有几处错误的跳转目标需要修正

修复步骤:

  1. 删除:save标签之后重复的所有活动标签(从:a_activity到:j_activity的第二组定义)
  2. 修正:the_activities中的错误跳转:将if "%errorlevel%" equ "255" goto activities改为if "%errorlevel%" equ "255" goto the_activities
  3. 修正:save中的错误跳转:将goto continue1改为goto continue

修复后的核心代码片段:

:the_activities
cls
title Activities - %charactername%
echo.
echo.
echo.
call :echo-align center "Activities"
call :echo-align center "[1] Take a walk"
call :echo-align center "[2] Meditate"
call :echo-align center "[3] Sleep"
call :echo-align center "[4] Sing a song"
call :echo-align center "[5] Dance"
call :echo-align center "[6] Eat"
call :echo-align center "[7] Drink"
call :echo-align center "[8] Hike"
call :echo-align center "[9] Play football"
choice /c 123456789
if "%errorlevel%" equ "255" goto the_activities
if "%errorlevel%" equ "9" goto j_activity
if "%errorlevel%" equ "8" goto i_activity
if "%errorlevel%" equ "7" goto g_activity
if "%errorlevel%" equ "6" goto f_activity
if "%errorlevel%" equ "5" goto e_activity
if "%errorlevel%" equ "4" goto d_activity
if "%errorlevel%" equ "3" goto c_activity
if "%errorlevel%" equ "2" goto b_activity
if "%errorlevel%" equ "1" goto a_activity
if "%errorlevel%" equ "0" goto the_activities
:a_activity
echo take a walk
pause>nul
goto the_activities

:b_activity
echo meditate
pause>nul
goto the_activities

:c_activity
echo sleep
pause>nul
goto the_activities

:d_activity
echo sing a song
pause>nul
goto the_activities

:e_activity
echo dance
pause>nul
goto the_activities

:f_activity
echo eat
pause>nul
goto the_activities

:g_activity
echo drink
pause>nul
goto the_activities

:h_activity
echo bike
pause>nul
goto the_activities

:i_activity
echo hike
pause>nul
goto the_activities

:j_activity
echo play football
pause>nul
goto the_activities

:save
cls
title Save Life
set "characterage=%charage%"
echo %charactername% > %charactername%.savefile
echo %chosecountry% >> %charactername%.savefile
echo %charage% >> %charactername%.savefile
timeout /t 3 /nobreak > nul
echo Saved
echo Do you want to continue with your life
choice /c:YN
if "%errorlevel%" equ "255" goto save
if "%errorlevel%" equ "2" exit
if "%errorlevel%" equ "1" goto continue
if "%errorlevel%" equ "0" goto save

修复说明:

删除重复标签后,每个活动执行完毕都会正确跳转到:the_activities,该标签开头的cls会清空屏幕,重新显示活动菜单,不会残留上一次的活动内容;修正所有错误的跳转目标后,流程逻辑会完全符合预期。

内容的提问来源于stack exchange,提问作者Legitz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 10:24:51