我想在TIBasic中製作一個像Galaga這樣的簡單街機射擊遊戲。我成功地創建了一些代碼,可以讓你在屏幕上水平移動你的角色(一個「X」),同時拍攝一個清理沿着它所需的垂直路徑的所有東西的子彈。但是,我對於應該從屏幕上掉下來的「岩石」有問題,並在擊中時消失。當我拍攝岩石時,它會被子彈清除,然後繼續沿着屏幕向下,直到它碰到屏幕的底部。下面是岩石的代碼:Tibasic檢查字符是否在屏幕上的位置
//outside the game loop:
1->R
//inside game loop:
If not(R=8)
Then
R+1->R
If R>1
Then
Output(E-1, 1, " " //removes last rock
End
Output(R, 1, "R" //replaces last rock with one below it (traveling towards the ground)
End
此代碼顯然不能持續下去的畫面時,它被清除(順便說一下停止「R」,我只是無論子彈是用Output(...," ")
清除子彈擊中的任何東西)。那麼,如何在遊戲循環的最後一次迭代中檢查岩石是否被清除?有沒有辦法檢查屏幕上某處(「R」)是否在屏幕上的某個位置,以檢查它是否在最後一次迭代中被子彈清除了?或者,還有更好的方法?謝謝您的幫助!
我不認爲TI-BASIC允許您檢查屏幕上顯示的內容。但是,您始終可以學習如何在z80 ASM中編寫程序並以這種方式訪問屏幕緩衝區。一旦你編寫了一個程序來完成它,你可以在你的主程序中調用它。但是,這將必須特定於它的精確計算器和操作系統版本。 – fuzzything44
好的,謝謝你的幫助 –
你最簡單的做法就是保持它在變量中的位置(列表對於保存比你通常得到的28更多的變量是很好的)並檢查它。 – fuzzything44