Bu kod, Pokemon savaş oyununun daha basit bir versiyonunu andırmak için tasarlandı. Sadece saldırılarda kodlandım. İyice test ettim ve kullanıcı saldırıyı onayladığında bir hata mesajının (Goto şu anda beklenmedik bir şekilde) bulunduğunu tespit etti. UYARI!! Kod 96 satırdır. Sonunda sorun bölümünü koyacağım, böylece ilk büyük parçayı atlayabilirsiniz.Goto bu seferde beklenmedik durumdaydı Windows 7 başlatıcısı
@echo off
Set H1=20
Set A1=8
Set D1=6
Set S1=5
Set H2=14
Set A2=5
Set D2=4
Set S2=8
:Begin
CLS
Echo Bulbasur
Echo %H2%/14 /\
Echo (__) ___
Echo l __lo.ol
Echo l_\ l_\"
Echo.
Echo _
Echo */\
Echo \\l )
Echo \\__l Charmander
Echo %H1%/20
Echo -Attack -Capture
Echo -Item -Run
Set /p Move=Action?
If %move%==Attack goto Attack
If %move%==Catpure goto capture
If %move%==Item goto Item
If %move%==Run Goto Run
Echo I'm sorry, Charmander can't do that.
Pause
goto Begin
:Attack
ClS
Echo Attacks
Echo 1)Tackle
Echo 2)Growl
Echo 3)Ember
Echo 4)Scratch
Set /p attack=Which one?
If %attack%==Tackle goto Tackle
If %attack%==1 goto Tackle
If %attack%==Growl Goto Growl
If %attack%==2 goto Growl
If %attack%==Ember goto Ember
If %attack%==3 goto Ember
If %attack%==Scratch goto Scratch
If %attack%==4 goto Scratch
If %attack%==Cancel goto Begin
Echo I didn't get that
Goto Attack
:Tackle
CLS
Echo Tackle Hits The opponent where it hurts. EVERYWHERE.
Echo Do you want to?
set /p accept=Yes/No?
If %acccept%==Yes goto Combat
If %acccept%==No goto Begin
Echo I didn't get that.
goto Tackle
:Growl
CLS
Echo Growl lowers the opponents attack.
Echo Do you want to?
set /p accept=Yes/No?
If %acccept%==Yes goto Status
If %acccept%==No goto Begin
Echo I didn't get that.
goto Growl
:Scratch
CLS
Echo Scratch hits the foe with a claw.
Echo Do you want to?
set /p accept=Yes/No?
If %acccept%==Yes goto Combat
If %acccept%==No goto Begin
Echo I didn't get that.
goto Scratch
:Ember
CLS
Echo Ember hits the opponent with a small fire.
Echo Do you want to?
set /p accept=Yes/No?
If %acccept%==Yes goto Combat
If %acccept%==No goto Begin
Echo I didn't get that.
goto Ember
:Combat
CLS
If NOT %attack%==Growl If NOT %attack%==2 set /a H2=%H2%-(%A1%^2/%D2%)
set /a H1=%H1%-(%A2%^2/%D1%)
goto Begin
:Status
CLS
Set /a A1=%A1%-1
goto Combat
Sorunlu Alan:
:Tackle
CLS
Echo Tackle Hits The opponent where it hurts. EVERYWHERE.
Echo Do you want to?
set /p accept=Yes/No?
If %acccept%==Yes goto Combat
If %acccept%==No goto Begin
Echo I didn't get that.
goto Tackle
kod burada ince alır, ama ben buradayım kez, bu Goto komutları beklemiyor. Bu sığır eti herkes düzeltebilir mi? (Not: Mücadele sadece bir örnektir. Saldırıların hiçbiri işe yaramıyor.) DÜZENLEME: Eğer kullanıcı "Evet", "Hayır", anlamsız ya da hiçbir şey koymazsa, hala aynı hata mesajını verir (bu seferde beklenmedik bir şey oldu))
kullanıcı şey girerse
Downvotes'u merak ediyorum; askere gönderilen kod, örnek bir sorun alanı ekledi ve hatta hata mesajını verdi. Bana iyi bir soru gibi görünüyor. Sadece toplu iş dosyaları için küçümsüyor mu? Bu sorunun iyi olup olmadığını etkilememelidir. –
@WesleyPetrowski, muhtemelen tüm senaryosunu yayınladığı için. Ve sonra sorunlu kodun ek bir kopyasını yayınladı. Sadece sorunlu olan kodu yayınlamalıydı. – mikerobi
'Eğer% move% == Catpure goto capture' Biliyorum, bu kediler purre, ama bence bu bir yazım hatası ^^ – Stephan