批量文件游戏加载到部分

时间:2018-01-19 23:01:45

标签: batch-file cmd goto

我正在制作一种基于文本的故事游戏和角色扮演游戏,我正在用标签标记每个“部分”,就像我所说的那样。一节基本上是任何定向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。有没有办法快速完成?

2 个答案:

答案 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中的冒号是可选的。为清楚起见,我喜欢它,其他人则不喜欢。选择您的选择)