我正在制作一种基于文本的故事游戏和角色扮演游戏,我正在用标签标记每个“部分”,就像我所说的那样。一节基本上是任何定向goto,如:section1
。您可以:section1
获得goto section1
。
我使用字母和数字系统为每个屏幕分配了一个标签。我所做的是使用.sav
的简单保存/加载代码,并使用以下内容。
保存:
(
echo %tag%
echo %points%
echo %weapon%
) > savegame.sav
负载:
< savegame.sav (
set /p tag=
set /p points=
set /p weapon=
)
顺便说一下,游戏是线性的。我正在尝试尝试加载,我收集标签并转到与标签关联的屏幕。例如,如果我将游戏保存在标签23,我希望能够加载标签23并自动进入第23节,而无需手动输入if %tag% == 23 goto 23
。有没有办法快速完成?
答案 0 :(得分:0)
echo Save Game Loaded.
IF %tag%==02 goto tag02
IF %tag%==03 goto tag03
:tag02
IF NOT %tag%==02 set tag=02
(your save code goes here)
echo this is tag02
:tag03
IF NOT %tag%==03 set tag=03
(your save code goes here)
echo this is tag03
它试图保持简单。但是你可以这样。
答案 1 :(得分:0)
您可以将变量用作目标:
@echo off
set "tag=213"
goto :%tag%
this line is never reached.
:23
echo reached 23
goto :eof
您还可以结合使用修订字符串goto :Section%tag%
和:Section23
作为标签。
(注意:goto :destination
中的冒号是可选的。为清楚起见,我喜欢它,其他人则不喜欢。选择您的选择)