private void ProcessSpeedUp(TetrisGame game, TetrisGame.UpdateBeginEventArgs e) // 按得分加速 { if (game.ScoreSystem.Score >= _nextSpeedUp) { game.GameSpeed++; _nextSpeedUp += 20; } }
private void ProcessItem(TetrisGame game, TetrisGame.UpdateBeginEventArgs e) // 处理道具操作 { if (game.Block is ItemBlock) { if (game.Block is GunItemBlock) { var block = game.Block as GunItemBlock; if (block.Acted()) { var j = block.RPos; for (var i = game.Height - 1; i >= 0; i--) { if (game.UnderLying[i, j] != null) { game.UnderLying[i, j] = null; break; } } block.ResetDirection(); } } if (game.Block is InverseGunItemBlock) { var block = game.Block as InverseGunItemBlock; if (block.Acted()) { var j = block.RPos; var i = game.Height - 1; for (; i >= 0; i--) { if (game.UnderLying[i, j] != null) { break; } } var s = new Square(GameColor.InverseGunFillSquare); game.UnderLying[i + 1, j] = s; game.PushNewSquare(s); block.ResetDirection(); } } } }