View.Set ("graphics:max,max") setscreen ("nocursor") setscreen ("offscreenonly") var x, y : int := 200 var speedx, speedy : int := 0 var ch : string (1) := " " var one : int := Pic.FileNew ("one.jpg") var ballx, bally : int := 50 var hit : string := "no" loop cls loop exit when not hasch getch (ch) end loop Pic.Draw (one, 200, 100, picCopy) if ord (ch) = 200 then % up speedy := 1 speedx := 0 elsif ord (ch) = 203 then % left speedy := 0 speedx := -1 elsif ord (ch) = 208 then % down speedy := -1 speedx := 0 elsif ord (ch) = 205 then % right speedy := 0 speedx := 1 end if x += speedx y += speedy drawfilloval (x, y, 2, 2, red) put whatdotcolour (x, y) for i : 1 .. 3 % top of ball if whatdotcolour (x - 3 + i, y + 3) = black then hit := "yes" exit end if if whatdotcolour (x - 3 + i, y - 3) = black then hit := "yes" exit end if if whatdotcolour (x + 3, y - 3 + i) = black then hit := "yes" exit end if if whatdotcolour (x - 3, y - 3 + i) = black then hit := "yes" exit end if end for for i : 1 .. 3 % top of ball if whatdotcolour (x - 3 + i, y + 3) = 42 then hit := "finish" exit end if if whatdotcolour (x - 3 + i, y - 3) = 42 then hit := "finish" exit end if if whatdotcolour (x + 3, y - 3 + i) = 42 then hit := "finish" exit end if if whatdotcolour (x - 3, y - 3 + i) = 42 then hit := "finish" exit end if end for View.Update exit when hit = "yes" exit when hit="finish" end loop