uthman
QQ:3749615
級別: 家園常客
|
上午沒事,寫了個俄羅斯方塊程序。 test.zip (301 K) 下载次数:3389 因為用的是16位指令,最大列可以是(16-2)14列,當前程序用的是12列,各位可以自己改成14列,也可以用32位指令改成更多列的,改變行數就不用說了 基本圖形用的是4點的,可以換成5點的(游戲難度更高) 程序詳解 P0 7種基本圖形4個方向,7*4=28個數據 D1000-D1027 P2 邊界檢測用數據 D1100-D1128[背景圖形] 生成 110000000011 110000000011 …… 110000000011 111111111111 111111111111 P1 根據D0 D1 D2生成圖形 存在D100-D103數組里 D0 1-7種基本圖形 D1 1-4種方向 D2 指定圖形所在的列 P3 碰撞檢測 [背景圖形] + [動態圖形] =0? 不等于0說明碰到邊界 [當前圖形] + [動態圖形] =0? 不等于0說明與當前圖形有干涉 都為0 輸出M1 P4 圖形移動 調用P1 將D100-D103放入 [動態圖形] 中(D3指定行) 調用P3 進行 碰撞檢測 未碰撞更新位置 D10 D11 D12 D13 P5 消行得分 [當前圖形] D1200-D1231 逐字(行)檢測 =001111111100 時 前面所有字左移一位 (下降了一行) P6 畫面顯示 [當前圖形] OR [動態圖形] = [顯示圖形] D1600是人機上的點,用作顯示 P7 隨機數產生圖形 隨機產生 1-7 1-4 兩組數據,并初始行,列 [D20,D21,D22,D23] 下次下落方塊數組 調用P1 生成 下一個圖形 [D1632,D1633,D1634,D1635] 用于人機顯示 P8 下一個方塊下落 將下次下落方塊數組 放入 當前方塊數組 [D10,D11,D12,D13] 調用P1 合成圖形 用于人機顯示 [ 此帖被uthman在2016-06-17 16:34重新編輯 ] |
---|---|
本帖最近評分記錄: |