Oh, there are several problems that will need attention. One of them is that a ball reflects the angle and doesn't turn 180 degrees.
You can use ball angles, but the logic becomes more tricky because you have mirror the angle rather than mutliply the ball's X or Y speed by -1.
I made some tweaks to get it more into a workable state and to keep the ball in motion.
--
TAZ
REM HIDE MOUSE
hide mouse:sync rate 40
ink rgb(244,214,210),1
REM BG
REM OBJECTS
make object box 1,1,1,3:color object 1,rgb(0,225,0)
make object sphere 3,1:color object 3,rgb(255,125,0)
make object box 4,30,0.1,30:position object 4,0,-0.55,0: color object 4,rgb(125,0,125)
REM INITIALIZE CAMERA POSITION AND ORIENTATION
position camera 20,30,0:point camera 0,0,0
REM INITIALIZE VARIABLES
balla#=80
playerRow# = 13.0
do
REM BALL MOVEMENT
ballx#=newxvalue(ballx#,balla#,0.3):ballz#=newzvalue(ballz#,balla#,0.3)
REM PLAYER 1 CONTROLS
IF rightkey() = 1 and player1pos# < 10.0 then player1pos# = player1pos#+0.5
IF leftkey() = 1 and player1pos# > -10.0 then player1pos# = player1pos#-0.5
REM BALL BOUNCES
if ballx#>playerRow# and (player1pos#-ballz#)<1.5 then balla#=balla#-180:ballx# = playerRow#
if ballx#<-playerRow# and ABS(player2pos#-ballz#)<1.5 then balla#=balla#-180:ballx# = -playerRow#
if ballz#>13 or ballz#<-13 then balla#=balla#-180
if ballx# >playerRow#+5 or ballx# < -(playerRow#+5) then balla#=balla#-180
rem MAKE SURE balla# IS LESS THAN 360 AND MORE THAN 0
balla#=wrapvalue(balla#)
REM CAMERA AND PLACEMENT
position object 3,ballx#,0,ballz#:yrotate object 3,balla#
position object 1,playerRow#,0,player1pos#
loop
REM THE PROGRAM NEVER GETS HERE, BUT IT IS WISE TO HAVE IT
end