Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 如果变量=0,则批处理不检查_Variables_Batch File - Fatal编程技术网

Variables 如果变量=0,则批处理不检查

Variables 如果变量=0,则批处理不检查,variables,batch-file,Variables,Batch File,所以,我用批量编码制作了一个游戏,我在游戏中有一个商店,每个商店只卖一件物品。不幸的是,当我将项目的变量设置为1,然后将其减少为0时,代码不会确认没有更多的项目要出售 :ForestHagShop cls set WSwrdHag=1 set WShldHag=1 set GldApHag=1 echo "What would you like, my dear?" echo 1.) Wooden Sword - 50 gold - (+10 Attack) echo 2.) Wooden S

所以,我用批量编码制作了一个游戏,我在游戏中有一个商店,每个商店只卖一件物品。不幸的是,当我将项目的变量设置为1,然后将其减少为0时,代码不会确认没有更多的项目要出售

:ForestHagShop
cls
set WSwrdHag=1
set WShldHag=1
set GldApHag=1
echo "What would you like, my dear?"
echo 1.) Wooden Sword  - 50 gold - (+10 Attack)
echo 2.) Wooden Shield - 70 gold - (+30 Max HP)
echo 3.) Shiny Apple   - 40 gold - (+30 HP)
echo.
set /p input6=)
if %input6% equ 1 goto BuySwrdHagChk
if %input6% equ 2 goto BuyShldHag
if %input6% equ 3 goto BuyAplHag

:BuySwrdHagChk
echo Checking...
echo.
echo **PRESS A KEY**
Pause >nul
if WSwrdHag LSS 1 goto OutSwordHag

:BuySwrdHag
set /a Gold=Gold-50
set /a Attack=Attack+10
set /a WSwrdHag=WSwrdHag-1
echo You hand over 50 gold for the
echo wooden sword. Your new stats are...
echo Health Points .. .. .. %HP%/%MaxHP%
echo Gold .. .. .. .. .. .. %Gold%
echo Attack Power  .. .. .. %Attack%
echo.
echo **PRESS A KEY**
pause >nul
goto ForestHagShop

:OutSwordHag
echo The hag frowns, looking at you like
echo you're stupid. 
echo "You already bought my wood sword,
echo idiot!"
echo.
echo **PRESS A KEY**
pause >nul
goto ForestHagShop

看起来您在检查变量时忘记了
%
分隔符

改变

if WSwrdHag LSS 1 goto OutSwordHag
将来

还有这些

set /a Gold=Gold-50
set /a Attack=Attack+10
set /a WSwrdHag=WSwrdHag-1
将来

set /a Gold=%Gold%-50
set /a Attack=%Attack%+10
set /a WSwrdHag=%WSwrdHag%-1

看起来您在检查变量时忘记了
%
分隔符

改变

if WSwrdHag LSS 1 goto OutSwordHag
将来

还有这些

set /a Gold=Gold-50
set /a Attack=Attack+10
set /a WSwrdHag=WSwrdHag-1
将来

set /a Gold=%Gold%-50
set /a Attack=%Attack%+10
set /a WSwrdHag=%WSwrdHag%-1

看起来您在检查变量时忘记了
%
分隔符

改变

if WSwrdHag LSS 1 goto OutSwordHag
将来

还有这些

set /a Gold=Gold-50
set /a Attack=Attack+10
set /a WSwrdHag=WSwrdHag-1
将来

set /a Gold=%Gold%-50
set /a Attack=%Attack%+10
set /a WSwrdHag=%WSwrdHag%-1

看起来您在检查变量时忘记了
%
分隔符

改变

if WSwrdHag LSS 1 goto OutSwordHag
将来

还有这些

set /a Gold=Gold-50
set /a Attack=Attack+10
set /a WSwrdHag=WSwrdHag-1
将来

set /a Gold=%Gold%-50
set /a Attack=%Attack%+10
set /a WSwrdHag=%WSwrdHag%-1

这把剑仍在库存中,而且会无限循环。。D:这是因为在:BuyswrdHag结束时,您将bak循环到ForestHagShop,在那里您将WSwrdHag重置为1…..您对
if
比较是正确的,但是
set/a
命令不需要变量名周围的%符号。剑仍然在库存中,并且循环无限。。D:这是因为在:BuyswrdHag结束时,您将bak循环到ForestHagShop,在那里您将WSwrdHag重置为1…..您对
if
比较是正确的,但是
set/a
命令不需要变量名周围的%符号。剑仍然在库存中,并且循环无限。。D:这是因为在:BuyswrdHag结束时,您将bak循环到ForestHagShop,在那里您将WSwrdHag重置为1…..您对
if
比较是正确的,但是
set/a
命令不需要变量名周围的%符号。剑仍然在库存中,并且循环无限。。D:这是因为在:BuyswrdHag结束时,您将bak循环到ForestHagShop,在那里您将WSwrdHag重置为1…..您对
if
比较的看法是正确的,但是
set/a
命令不需要变量名周围的%符号。