接續第一部分,展示俄羅斯方塊核心遊戲邏輯:方塊繪製、下落、變形、移動、碰撞偵測、消行、結束判斷。
paintBrick():繪製當前下落方塊 (4x4 矩陣判斷)paintNextBrick():繪製下一個方塊預覽paintLevelAndScore():繪製分數與關卡brickDown():方塊下落邏輯 (觸底/碰撞 → 固定地圖 → 產生新方塊 → 檢查消行)generateBrick():隨機產生新方塊,初始位置reachBottom()、collisWithMap()、testNewPosition():邊界與碰撞偵測changeShape()、moveToLeft()、moveToRight():變形與左右移動 (含邊界檢查)clearAllFullRow()、isFullRow()、clearOneFullRow():消行邏輯 (上方行下落)isGameOver():新方塊產生即碰撞且超出畫面頂端判定結束highSpeed()/normalSpeed():下落速度控制int[][][][] brick; // [類型][旋轉狀態][4][4] 方塊形狀定義
int[][] map; // 遊戲區域地圖資料
int cRow, cCol; // 當前方塊左上角座標
int brickType, nextBrickType, index; // 類型、下一個類型、旋轉索引
完整代碼採用純邏輯運算,無平台相依性,易於移植與理解。