创建一个关于猜测的迷你游戏

时间:2017-07-01 12:27:23

标签: batch-file

所以我正在编写一个关于编写id代码的迷你游戏,然后让别人猜测它。我面临的问题是,每当有人试图使用游戏语法改变字体颜色时,只会显示一个错误:“(此时是意外的。”并且只是立即崩溃。这是我目前的代码:

3 个答案:

答案 0 :(得分:1)

您应该知道COLOR /?"颜色属性由两个十六进制数字指定&#34 ;;你只是用一个。您尚未添加任何代码来确定当前前景色是什么。 "如果尝试执行具有相同"的前景色和背景色的COLOR命令,则COLOR命令将ERRORLEVEL设置为1。如果您假设当前为8,则不要假设前景色属性,然后在8命令中的背景属性之后添加COLOR

您无需使用所有ELSE IF组合:

@ECHO OFF

:PLAY
SET/P "ID=Identification code: "

IF /I "%ID%"=="color:0" (
    COLOR 08
    GOTO PLAY
)
IF /I "%ID%"=="color:a" (
    COLOR A8
    GOTO PLAY
)
IF /I "%ID%"=="color:b" (
    COLOR B8
    GOTO PLAY
)
IF /I "%ID%"=="color:c" (
    COLOR C8
    GOTO PLAY
)
IF /I "%ID%"=="color:d" (
    COLOR D8
    GOTO PLAY
)
IF /I "%ID%"=="color:e" (
    COLOR E8
    GOTO PLAY
)
IF /I "%ID%"=="color:f" (
    COLOR F8
    GOTO PLAY
)

我已删除所有这些CLS命令,只需使用:PLAY开始CLS

答案 1 :(得分:0)

您缺少此块的右括号:

else if %conf% == #cheat.code:(acss_grnt.admn)$ (
        color c
        cls
        echo Cheating system..
        timeout 3 >nul
        tree
        dir
        timeout 1 >nul
        cls
        echo Access granted.
        pause
        exit

您还缺少此else块的右括号:

else (
    cls
    echo Identification stored.
    pause
    cls
    set /p conf=Enter identification: 

答案 2 :(得分:0)

您应该尝试保持结构简单的计算机/程序以避免繁琐的重复,因此颜色的东西放在一个逻辑行中,最后是行继续char ^并在成功时使用条件执行{发现字符串结果的{1}}或失败&& 我不知道我是否可以随时遵循你的逻辑,所以试一试。

||