2016-09-23 66 views
-1

我为了好玩而批量制作游戏。在游戏中,我想参加一些游戏,你可以试图说服某人给你更多的钱用于任务或做某事。每次我尝试这样做时,都会收到一条消息,说明“失败”不会被识别为内部或外部命令,可操作程序或批处理文件。 我的代码看起来像这样错误地批评批处理组

@echo off 
SETLOCAL EnableDelayedExpansion 
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in   (1) do rem"') do (
set "DEL=%%a" 
) 
color 0a 
Echo King Redwood: So 2000? 
pause >nul 

echo. 
call :colorText 09 "1. 2500" 
echo. 
call :colorText 0e "2. 3000" 
echo. 
call :colorText 0c "3. 4000" 
echo. 
echo 4. 2000 
echo. 

set /p purs=Enter: 
if %purs% == 1 goto CheckB 
if %purs% == 2 goto CheckY 
if %purs% == 3 Goto CheckR 
if %purs% == 4 goto Convo 


:CheckB 
set bleu=%random:~-2,1% 
if %bleu% GTR 10 (
goto CheckB) 
if %bleu% LSS 0 (
goto CheckB) 
set num = 2 
set reward = 2500 
goto Res 

:Res 
if %bleu% GEQ %num% goto Succeed 
if NOT %bleu% GEQ %num% goto Fail 

:Succeed 
Echo OK 2500 will work. 
pause >nul 
goto end 

:Fail 
echo If 2000 isn't good enough for you, I'll just have someone else do it. 

:end 
exit 












:colorText 
echo off 
<nul set /p ".=%DEL%" > "%~2" 
findstr /v /a:%1 /R "^$" "%~2" nul 
del "%~2" > nul 2>&1i 

基本上,我只有它第一个成立。
我很喜欢任何类型的编码。此外,:colorText是不是我的,我不很记得我从

回答

1

得到它当我跑了我:

C:\temp\Batches>if NOT 5 GEQ goto Fail 
'Fail' is not recognized as an internal or external command, operable program or batch file. 

正如你可以看到有什么GEQgoto之间出现。您需要使用延迟扩展%num%!num!

+0

您在哪里看到我需要添加此@FloatingKiwi – QuantumPrimus

+0

对不起,我在我的示例中修改了一下逻辑。我现在做了一个编辑。把这个放在你称之为'goto fail'的线上。 – FloatingKiwi

+0

我这样做了,但是现在它从来没有回应失败,即使我做了9次。你知道为什么会这样吗? @FloatingKiwi? – QuantumPrimus