Sprite bug?

Just starting out? Need help? Post your questions and find answers here.
User avatar
SPH
Enthusiast
Enthusiast
Posts: 612
Joined: Tue Jan 04, 2011 6:21 pm

Sprite bug?

Post by SPH »

PB 6.12

Incomprehensible!

Look at this short code and tell me why the sprite I'm drawing isn't always the right one!

Code: Select all

InitSprite()
InitKeyboard()

OpenScreen(1920,1080,32,"Sprite")

LoadSprite(0,"d:/amy.bmp")

DisplaySprite(0,0,0)

taille_x=36
taille_y=42


nb=1
For u=0 To 8
  For i=1 To 8
    GrabSprite(nb,i*taille_x,u*taille_y,taille_x,taille_y)
    nb+1
  Next
Next

;;;

For i=1 To nb-1
    DisplaySprite(i,20+i*taille_x,400)
Next

FlipBuffers()
Repeat
  ExamineKeyboard()
Until KeyboardPushed(#PB_Key_All)

I'm not including the sprite table because the code is easy to read without it.

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Portable LENOVO ideapad 110-17ACL 64 bits
Version de PB : 6.12LTS - 64 bits
User avatar
SPH
Enthusiast
Enthusiast
Posts: 612
Joined: Tue Jan 04, 2011 6:21 pm

Re: Sprite bug?

Post by SPH »

It only displays the sprites from the first row!

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Portable LENOVO ideapad 110-17ACL 64 bits
Version de PB : 6.12LTS - 64 bits
User avatar
moulder61
Enthusiast
Enthusiast
Posts: 211
Joined: Sun Sep 19, 2021 6:16 pm
Location: U.K.

Re: Sprite bug?

Post by moulder61 »

The For/Next loop before FlipBuffers() will run from 1 to 71 rather than 0 to 71.

nb in a previous nested loop will be 72. Could that be it?

Moulder.
"If it ain't broke, fix it until it is!

This message is brought to you thanks to SenselessComments.com

My PB stuff for Linux: "https://u.pcloud.link/publink/show?code ... z3MR0T3jyV
User avatar
SPH
Enthusiast
Enthusiast
Posts: 612
Joined: Tue Jan 04, 2011 6:21 pm

Re: Sprite bug?

Post by SPH »


!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Portable LENOVO ideapad 110-17ACL 64 bits
Version de PB : 6.12LTS - 64 bits
Post Reply