TGC Codebase Backup



Animated CrossHair Function by Caleb7

23rd Jan 2009 2:02
Summary

!A simple crosshair function!



Description

This function has four different types of Crosshairs.
0. Simple static cross
1. Four horizontal lined separating crosshair
2. Four inverted courners separating crosshair
3. Wider Four inverted courner separating crosshair
4. Round Twisting crosshair

The move variable adjusts how much the crosshairs move
The scale variable scales how large the entire crosshair is, but is best kept at one.



Code
                                    ` This code was downloaded from The Game Creators
                                    ` It is reproduced here with full permission
                                    ` http://www.thegamecreators.com
                                    
                                    rem My Cross Hair Function
function crosshair(style,scale,move)
move=ABS(move)
sw=screen width()/2
sh=screen height()/2
if style=0
line sw-10*scale,sh,sw+10*scale,sh
line sw,sh-10*scale,sw,sh+10*scale
endif
if style=1
line sw-10*scale-move,sh-10*scale-move,sw-30*scale-move,sh-10*scale-move
line sw-10*scale-move,sh+10*scale+move,sw-30*scale-move,sh+10*scale+move
line sw+10*scale+move,sh-10*scale-move,sw+30*scale+move,sh-10*scale-move
line sw+10*scale+move,sh+10*scale+move,sw+30*scale+move,sh+10*scale+move
endif
if style=2
line sw-10*scale-move,sh-10*scale-move,sw-30*scale-move,sh-10*scale-move
line sw-10*scale-move,sh+10*scale+move,sw-30*scale-move,sh+10*scale+move
line sw+10*scale+move,sh-10*scale-move,sw+30*scale+move,sh-10*scale-move
line sw+10*scale+move,sh+10*scale+move,sw+30*scale+move,sh+10*scale+move
line sw-10*scale-move,sh-10*scale-move,sw-10*scale-move,sh-30*scale-move
line sw+10*scale+move,sh-10*scale-move,sw+10*scale+move,sh-30*scale-move
line sw-10*scale-move,sh+10*scale+move,sw-10*scale-move,sh+30*scale+move
line sw+10*scale+move,sh+10*scale+move,sw+10*scale+move,sh+30*scale+move
endif
if style=3
line sw-5*scale-move,sh-5*scale-move,sw-30*scale-move,sh-5*scale-move
line sw-5*scale-move,sh+5*scale+move,sw-30*scale-move,sh+5*scale+move
line sw+5*scale+move,sh-5*scale-move,sw+30*scale+move,sh-5*scale-move
line sw+5*scale+move,sh+5*scale+move,sw+30*scale+move,sh+5*scale+move
line sw-5*scale-move,sh-5*scale-move,sw-5*scale-move,sh-20*scale-move
line sw+5*scale+move,sh-5*scale-move,sw+5*scale+move,sh-20*scale-move
line sw-5*scale-move,sh+5*scale+move,sw-5*scale-move,sh+20*scale+move
line sw+5*scale+move,sh+5*scale+move,sw+5*scale+move,sh+20*scale+move
endif
if style=4
circle sw,sh,move*2+10
cx=newxvalue(sw,wrapvalue(move*8),(move*2)*scale)
cy=newzvalue(sh,wrapvalue(move*8),(move*2)*scale)
circle cx,cy,10
cx=newxvalue(sw,wrapvalue(move*8+90),(move*2)*scale)
cy=newzvalue(sh,wrapvalue(move*8+90),(move*2)*scale)
circle cx,cy,10
cx=newxvalue(sw,wrapvalue(move*8-90),(move*2)*scale)
cy=newzvalue(sh,wrapvalue(move*8-90),(move*2)*scale)
circle cx,cy,10
cx=newxvalue(sw,wrapvalue(move*8-180),(move*2)*scale)
cy=newzvalue(sh,wrapvalue(move*8-180),(move*2)*scale)
circle cx,cy,10
endif

endfunction