Hey guys just wondering, do you think a bullet animation would be hard?
On 9/12/07, Lamonte Harris <[EMAIL PROTECTED]> wrote: > > :) yuo need to finish your collision tutorial. > > On 9/12/07, DR0ID <[EMAIL PROTECTED]> wrote: > > > > > > http://dr0id.homepage.bluewin.ch/pygame_tutorial04.html > > > > ~DR0ID > > > > > > Casey Duncan schrieb: > > > > > > On Sep 11, 2007, at 9:00 PM, Ian Mallett wrote: > > > > > >> Opps. That's: > > >> > > >> if frame_number%10 == 0: #frame_number is a multiple of ten > > >> #draw frame 1 > > >> elif frame_number%9 == 0: #frame_number ends in 9 > > >> #draw frame 2 > > > [snip lots of elifs] > > > > > > Or assuming you store the images in a list, e.g.: > > > > > > images = [image1, image2, image3, image4, image5] > > > > > > then > > > > > > this_image = images[frame_number % len(images)] > > > > > > which works with any arbitrary number of images without code changes > > > and is faster and much more concise that a big if/elif block (which > > > IMO should be avoided as much as possible). > > > > > > I also have this handy class for loading lots of images from files > > > that I can match with a pattern: > > > > > > class Animation: > > > > > > def __init__(self, file_pattern, colorkey=(0,0,0), alpha=255, > > > fade=0): > > > self.images = [] > > > for path in glob.glob('data/%s' % file_pattern): > > > image = pygame.image.load(path).convert() > > > image.set_colorkey (colorkey, RLEACCEL) > > > image.set_alpha(max(alpha, 0), RLEACCEL) > > > alpha -= fade > > > self.images.append(image) > > > > > > Which I use for explosions where I want the alpha to fade to > > > transparent as it plays through. > > > > > > You use it like so: > > > > > > xplode = Animation('xplode/*.jpg', alpha=180, fade=8) > > > > > > or to just load it with everything opaque: > > > > > > anim = Animation('somedir/*.png') > > > > > > You said you were using sprite sheets though so it may not be that > > > helpful to you. > > > > > > -Casey > > > > > > > >