我正在批量挑選自己的冒險遊戲,並且我希望擁有它的統計數據來跟蹤您在遊戲中的表現。我想顯示統計信息,但每次我有一個cls
命令時,我必須這樣做,並且由於我經常使用該命令,因此我創建了一個名爲:Stats
的塊,以便每次需要時都可以調用它。它工作正常,但統計顯示後的敘述似乎不再有效。我想保留:colorEcho
區塊,所以玩家可以區分對話,敘述和命令來輸入選項。有想法該怎麼解決這個嗎?通話功能不起作用?
:Start
::Game goes here.
cls
Echo Please enter your player name.
set /p PlayerName="Player name: "
cls
call :Stats
call :colorEcho 7 "You lay on the cold, hard ground, sleeping away. It's been 1 month since the Virus spread..."
Echo.
call :colorEcho 7 "The sun rises over the horizon, warming up your dirt-caked body."
Echo .
pause
exit
:Stats
call :colorEcho A "Current Health = "
call :colorEcho C " %Health%"
Echo.
call :colorEcho A "Hunger = "
call :colorEcho C " %Food%"
Echo.
call :colorEcho A "Thirst = "
call :colorEcho C " %Water%"
Echo.
call :colorEcho A "Infection = "
call :colorEcho C " %Infection%"
Echo.
call :colorEcho A "Stamina = "
call :colorEcho C " %Stamina%"
Echo.
Echo.
pause
:colorEcho
echo off
<nul set /p ".=%DEL%" > "%~2"
findstr /v /a:%1 /R "^$" "%~2" nul
del "%~2" > nul 2>&1i
附註:我已經定義了所有的變量。我確定了。
請告訴我應該發生:
實際發生的:
你忘了'退出/ b'或者'goto:eof'結尾ubroutine,所以':Start'屬於':colorEcho'。 – dbenham
那究竟做了什麼? –