News:

Building a 3D Ray Tracer  By stevmjon

Main Menu

CenterSpriteHandle on X and Y axis separately

Started by kevin, June 17, 2008, 01:17:55 PM

Previous topic - Next topic

kevin

 CenterSpriteHandle on X and Y axis separately

  This snippet includes a pair of functions (CenterSpriteHandleX & CenterSpriteHandleY) that will center a sprite either the X or Y axis.


PlayBASIC Code: [Select]
 Setfps 60

Cls 255
Getimage 1,0,0,255,255

Spr=NewSprite(400,300,1)

Do
Cls rgb(0,0,0)

; Space to reset
if Spacekey() then Spritehandle spr,0,0

; press C to center
if KeyState(46) then CenterSpriteHandleX(Spr)

; press X to center X axis
if KeyState(45) then CenterSpriteHandleX(Spr)

; press Y to center Y axis
if KeyState(21) then CenterSpriteHandleY(Spr)

DrawAllSprites

Circle GetSpritex(spr),getspritey(spr),5,false

print GetSpriteHandleX(Spr)
print GetSpriteHandleY(Spr)

Sync
loop




Function CenterSpriteHandleX(ThisSprite)
If GetSpriteStatus(thisSprite)
hy#=GetSpriteHandleY(ThisSprite)
CenterSpriteHandle Thissprite
SpriteHandle ThisSprite,GetSpriteHandleX(ThisSprite),hy#
Endif
EndFunction


Function CenterSpriteHandleY(ThisSprite)
If GetSpriteStatus(thisSprite)
hx#=GetSpriteHandleX(ThisSprite)
CenterSpriteHandle Thissprite
SpriteHandle ThisSprite,hx#,GetSpriteHandleY(ThisSprite)
Endif
EndFunction