Я немного поправил, а то не запускалось и вот что получилось:
InitSprite() InitMouse() ; Установка начальных параметров Global bRunning = 1 Global fBallX = 200 Global fBallY = 300 Global fBallDX = 3 Global fBallDY = -3 Global fPaddleX = 200 Global fPaddleY = 450 Global iPaddleWidth = 80 Global iPaddleHeight = 20 Global iBlockWidth = 50 Global iBlockHeight = 20 Global Dim iBlocks(10, 5) ; Инициализация блока For x = 0 To 9 For y = 0 To 4 iBlocks(x, y) = 1 ; 1 означает, что блок существует Next Next ; Инициализация окна If OpenWindow(0, 0, 0, 600, 500, "Arkanoid", #PB_Window_ScreenCentered | #PB_Window_SystemMenu) OpenWindowedScreen(WindowID(0), 1,1, 600, 500) Repeat ; Обработка ввода If ExamineMouse() fPaddleX = MouseX() - (iPaddleWidth / 2) If fPaddleX < 0 : fPaddleX = 0 : EndIf If fPaddleX > 600 - iPaddleWidth : fPaddleX = 600 - iPaddleWidth : EndIf EndIf ; Обновление позиции мяча fBallX + fBallDX fBallY + fBallDY ; Проверка столкновений If fBallX < 0 Or fBallX > 590 fBallDX = -fBallDX ; Отскок от стены EndIf If fBallY < 0 fBallDY = -fBallDY ; Отскок от верхней стены EndIf ; Проверка столкновения с платформой If fBallY > fPaddleY - 10 And fBallX > fPaddleX And fBallX < fPaddleX + iPaddleWidth fBallDY = -fBallDY ; Отскок от платформы fBallY = fPaddleY - 10 ; Чтобы мяч не застревал EndIf ; Проверка столкновения с блоками For x = 0 To 9 For y = 0 To 4 If iBlocks(x, y) = 1 If fBallX > x * iBlockWidth And fBallX < (x + 1) * iBlockWidth And fBallY > y * iBlockHeight And fBallY < (y + 1) * iBlockHeight iBlocks(x, y) = 0 ; Удаляем блок fBallDY = -fBallDY ; Отскок от блока EndIf EndIf Next Next ; Проверка падения мяча If fBallY > 500 bRunning = 0 ; Игра окончена EndIf ; Отрисовка ClearScreen(0) StartDrawing(ScreenOutput()) ; Отрисovка блоков For x = 0 To 9 For y = 0 To 4 If iBlocks(x, y) = 1 Box(x * iBlockWidth, y * iBlockHeight, iBlockWidth, iBlockHeight, $00FF00) EndIf Next Next ; Рисуем платформу Box(fPaddleX, fPaddleY, iPaddleWidth, iPaddleHeight, $FFFFFF) ; Рисуем мяч Circle(fBallX, fBallY, 10, $FF0000) ; Обновляем экран StopDrawing() FlipBuffers() Until WindowEvent() = #PB_Event_CloseWindow Or bRunning = 0 EndIf End