このサイトで質問を検索しましたが、問題の解決策が見つかりませんでした。
システムは、プレイヤーとコンピューターに 2 から 12 までの乱数を与えます。
これには、X が Y よりも大きい場合、X が Y よりも小さい場合、および X が Y と同じ場合の 3 つの部分があります。
を開始する.bat
と、うまく機能し、 を選択Play Game
し、ベット (たとえば 20) を入力しますが、このプロセスを開始すると、ウィンドウが閉じて、何が書かれているかを読むことができません。点滅するテキストがいくつか表示されます。'Your' と 'syntax' も見ましたが、すぐに消えてしまいます。
3 つのものを削除するとif if if
、お金、賭け金、統計、その他すべてが表示され、私が書いた「チート」でそれを増減することさえできるので、うまくいったと確信しています。
だから、ここにあります:
set /p setbet=Please type a number to select bet:
if "%setbet%"=="1" set bet=20
if "%setbet%"=="2" set bet=50
if "%setbet%"=="3" set bet=100
if "%setbet%"=="4" set bet=150
if "%setbet%"=="5" set bet=200
if "%setbet%"=="6" set bet=250
if "%setbet%"=="7" set bet=300
echo.
echo Your bet is %bet%.
echo.
pause
cls
set /a money-=bet
set /a playernum=%random% %%12 +2
set /a enemynum=%random% %%12 +2
echo.
echo You roll: %playernum%
echo Enemy rolls: %enemynum%
echo.
if %playernum% LSS %enemynum%
(
echo Enemy wins. Please try again.
echo Your current money is %money%.
echo You lost %bet% money.
echo.
pause
goto INTRO
)
if %enemynum% LSS %playernum%
(
set /a money+=bet*2
echo You win.
echo Your current money is %money%.
echo You won %bet% money.
echo.
pause
goto INTRO
)
if %enemynum% EQU %playernum%
(
set /a money+=bet
echo It's a tie.
echo You won the bet (%bet%), but your money didn't changed.
echo Your money is now %money%.
echo.
pause
goto INTRO
ありがとうございました!