簡體   English   中英

Windows批卡游戲無法正常工作,不知道如何解決

[英]Windows batch card game not working properly, don't know how to fix

因此,對於我們的計算機科學課程,我們不得不編寫一個隨機生成卡的程序,我決定分批進行挖掘,因為在大型noob XD上,我有信心可以做到,因為我對此非常有經驗。 即使批處理絕對不是一個好的“語言”,如果您要稱呼它的話。 通過一些辛勤的工作,我能夠自己解決大多數問題。 但是,我仍然遇到一些我不知道如何解決的問題。

我不知道如何解決的最大問題是...

  • 文字無法正確顯示。
  • 數字(我用於AI和卡片生成的基礎)有時未在變量中正確定義。
  • 無論我做什么,積分系統都拒絕工作。
  • 如果我跳過“超時”或“暫停”,有時它會突然崩潰而決定崩潰。
  • 即使某些“ IF”語句與其他語句完全相同,也無法正確執行。

如果這個問題過於籠統,我感到很抱歉,但是我真的不知道該如何總結。

這是我的紙牌游戲的鏈接: http : //pastebin.com/t2S3yWk5

這是我們的問題:

1)創建一個程序,該程序將生成兩個隨機數-一個映射到西服(心,鑽石,棍棒或黑桃)的隨機數,一個映射到卡上的隨機數(Ace,2、3 ..... Jack,Queen,王)

*Mine is slightly different, it generates two different suits based on two random numbers.*

2)創建一個程序,該程序將生成一張隨機卡片,然后要求用戶選擇“更高”,“更低”或“退出”。 如果玩家選擇“更高”,則下一張紙牌必須具有更高的價值,否則玩家將被淘汰。 下層也是如此。

3)擴展前一個程序,用戶將在游戲開始時選擇一個王牌套裝。 如果卡牌是王牌,那么無論卡牌的價值如何,游戲都會繼續進行。 該程序將保留分數並將分數保存到高分文件中。 用戶還將能夠顯示當前的高分文件。

我想嘗試自己做(上面列出的)這些東西。 我只需要幫助嘗試修復現有程序。

我希望,如果您閱讀此書,可以對我的一些問題給我一些建議或提供解決方案。 提前致謝! :3

好消息; 您的代碼沒有什么超級錯的,只是一堆看起來很多的小事情。 我只能假設一些錯誤的錯誤和丟失的變量是通過復制和粘貼復制的。

文字顯示不正確

我假設這是您的代碼而不是AI的注釋所產生的“訪問被拒絕”錯誤。 這是因為><用於輸出重定向,因此您添加的表情符號試圖在您無權訪問的位置創建文件。 要么擺脫它們(推薦),要么使用^使它們轉義( ^>:) )。

數字(我用於AI和卡片生成的基礎)有時未在變量中正確定義

%random% %% 5得出集合0、1、2、3、4中的數字之一。您當前沒有if語句來說明如果隨機選擇0會發生什么。 if選擇0,則添加if語句或使代碼返回到該部分的頂部。

積分系統無論我做什么都拒絕工作

你要踢自己...

您的set語句缺少分配部分。 SET /A %p1p% + 2應該是SET /A p1p=%p1p% + 2依此類推(或者,如果您認為更好,則set /a p1p+=2 )。

如果有時候我只是略微平緩而決定崩潰,而我跳過“超時”或“暫停”

我無法復制它,但是當我刪除這些語句時,代碼似乎運行良好。

即使某些“ IF”語句與其他語句完全相同,也無法正確執行

您的注釋指示行119-132,其中包括分配點的if語句。 請參閱上面的內容以了解為何這些無效。

您的代碼的其他一些建議

您的變量名稱應更具描述性。 例如, ctog沒有告訴我該變量應該是什么。 我可以查看代碼以查看其功能,但是如果沒有任何上下文,那可能會做任何事情。

您應該將/i標志添加到if語句中,以檢查放下的卡,以便對C1和c1進行相同的處理。 在相關說明中,您應該添加一個對玩家何時輸入C1或C2以外的內容的檢查。 您甚至可以像之前一樣使用choice命令。

:pvic缺少exit命令,因此如果獲勝,您會自動再次播放。 加之您只檢查lt是否等於2,不大於或等於2的事實,如果您獲勝,就無法停止比賽。 同樣,關於最終游戲的條件,如果您綁定計算機,也沒有if陳述。

cp1和num1實際上是相同的變量,沒有理由同時使用它們(與cp2 / num2,ap1 / num3和ap2 / num4相同)。

您需要在:pc1的末尾進行某種goto ,以使:pc2在:pc1完成后不會自動運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM