firstly the get image should have ,1 command at the end to set it to not capture a texture - get image 1,100,118,180,200,1
Then the entire system you had for fading in did not work because it was all in a for - next loop before the sync, and so i changed all this to a counter system, as it is more flexible. You can change the variables counter,countermax and alphachange accordingly.
Set window off
`sync on is needed to stop
sync on
sync rate 50
cls
`set x and o
ink rgb(255,0,0),0
`set text font "Arial Bold"
set text size 100
set text to bold
text 100,100,"X"
`to save the X and O as images
get image 1,100,118,180,200,1
cls
`places the O and X sprite in the correct position and then hides them
`set sprite alpa to zero si that it can be manipulated in the main loop
sprite 2,150,70,1
set sprite alpha 2,0
counter=5
countermax=5
alphachange=5
Do
cls 0
`find out mouse position
mousePosX=mousex()
mousePosY=mousey()
box 150,70,250,170
`get mouse movement in relation to top left box
if mousePosX>150 and mousePosX<250 and mousePosY>70 and mousePosY<170
inBox = 1
else
inBox = 0
endif
`checks mouse is in ore out of box then shows or hides sprite accordingly
if inBox = 1
dec counter
if counter<0
counter=countermax
alpha=sprite alpha(2)+alphachange
if alpha>255 then alpha=255
set sprite alpha 2,alpha
endif
else
if inBox=0 and sprite alpha(2)>0 then set sprite alpha 2,0
endif
`print proof of action
ink rgb(255,255,255),0
set text size 12
Print "InBox = ",inBox
print "FadeIn = ",fadeIn
sync
loop