Rem Project: 2d radar
Rem Created: Sunday, March 19, 2017
Rem ***** Main Source File *****
cls 0
sync on
sync rate 30
SET DISPLAY MODE 1024, 768, 32
autocam off
make object cube 10,10
position object 10,rnd(500)-250,rnd(200)-100,rnd(500)-250
MAXIMIZE WINDOW
disable escapekey
make object cube 1,1
position object 1,0,0,0
position camera 0,0,0
do
CONTROL CAMERA USING ARROWKEYS 0,1, 1
gosub _psevdo_radar:
gosub _rotate_radar:
sync
if ESCAPEKEY()=1
delete object 1
delete object 10
end
ENDIF
LOOP
_psevdo_radar:
INK rgb(0,250,0),0
if object visible(1) then hide object 1
position object 1,0,0,0
SET OBJECT TO CAMERA ORIENTATION 1
move object 1,100
line 1024/2,768/2,OBJECT POSITION X(1)+1024/2,OBJECT POSITION z(1)+768/2
circle OBJECT POSITION X(10)-camera position x()+1024/2,OBJECT POSITION z(10)-camera position z()+768/2,5
return
_rotate_radar:
INK rgb(0,0,250),0
if object visible(1) then hide object 1
position object 1,camera position x(),0,camera position z()
SET OBJECT TO CAMERA ORIENTATION 1
move object 1,100
line 1024/2,768/2,1024/2-100,768/2-100
line 1024/2,768/2,1024/2+100,768/2-100
x#=abs(OBJECT POSITION X(10))-abs(camera position x())
y#=abs(OBJECT POSITION z(10))-abs(camera position z())
qqq#=abs(sqrt(x#^2+y#^2))
xalfa#=CAMERA ANGLE Y(0)
yalfa#=CAMERA ANGLE Y(0)
point camera OBJECT POSITION X(10),0,OBJECT POSITION z(10)
xalfa1#=CAMERA ANGLE Y(0)
yalfa1#=CAMERA ANGLE Y(0)
point camera OBJECT POSITION X(1),0,OBJECT POSITION z(1)
xx#=-qqq#*cos(xalfa#-xalfa1#-90)
yy#=qqq#*sin(yalfa#-yalfa1#-90)
set cursor 1,1
print CAMERA ANGLE Y(0)
qy#=OBJECT POSITION y(10)
set cursor 0,100
print qy#
circle xx#+1024/2,yy#+768/2-qy#,5
line xx#+1024/2,yy#+768/2,xx#+1024/2,yy#+768/2-qy#
return
Your remarks on the program.