If you watch the arrow spin long enough you may become brain washed. (I am not serious)
(By the way, this turtle tool has been advanced from the older version: PROCt("a",r) :REM this is your angle
* the command "a" is a specific angle. So if you want 90' then you basically type: PROCt("a",90)
* the difference is that it is 90 degrees from home position at 0 degrees. And 0 degrees is map wise EAST ward bound.
* my interpretation may be wrong, but it seems to be right
HEY GUYS !! If you want to try your hand at making complex things rotate, lets try some graphics stuff !!
I would like to see something from everyone including Richard if he wants to post a example.

Code: Select all
REM and the answer is >>>>>
REM Copy and paste in BBCSDL and run :
MODE 8
GCOL 15
r=1:REM this is your rotation
REPEAT
PROCt("m",500)
PROCt("a",r) :REM this is your angle
PROCt("d",1)
PROCt("c",15)
PROCt("f",25)
PROCt("r",90)
PROCt("f",5)
PROCt("l",135)
PROCt("f",25)
PROCt("l",90)
PROCt("f",25)
PROCt("l",135)
PROCt("f",5)
PROCt("r",90)
PROCt("f",25)
PROCt("l",90)
PROCt("f",10)
PROCt("f",10)
PROCt("f",5)
WAIT 10
r+=1:IF r>360 THEN r=0
CLG
UNTIL FALSE
END
DEFPROCt(mess$,amt%)
PRIVATE angle,x%,y%,pen$,dracol%,sz%
IF sz%<1 THEN sz=1
GCOL dracol%
IF pen$="" THEN pen$="down"
IF mess$="a" THEN angle=amt%
IF mess$= "r" THEN angle=angle - amt%
IF mess$= "l" THEN angle=angle + amt%
IF mess$= "f" THEN VDU 23,23,sz%|:PROC_turtle(amt%,angle,pen$,x%,y%)
IF mess$= "u" THEN pen$="up"
IF mess$= "d" THEN pen$="down"
IF mess$= "p" THEN FILL x%,y%
IF mess$= "c" THEN IF amt%=16 THEN amt%=0
IF mess$= "c" THEN GCOL amt%:dracol%=amt%
IF mess$= "s" THEN sz%=amt%
VDU 23,23,sz%|
IF mess$= "m" THEN
x%=amt%:y%=amt%
pen$="move"
ENDIF
PROC_turtle(0,angle,pen$,x%,y%)
ENDPROC
DEFPROC_turtle(coun%,angle,pen$,RETURN x%,RETURN y%)
PRIVATE sx%,sy%
IF pen$="move" THEN sx%=x%:sy%=y%
IF pen$="up" OR pen$="down" THEN
sx%+=coun%*COS(RAD(angle))
sy%+=coun%*SIN(RAD(angle))
IF pen$="down" THEN LINE x%,y%,sx%,sy%
ENDIF
x%=sx%:y%=sy%
ENDPROC