Sorry to say ur looking at the wrong file. Try one of my latest replies w/ an attachement... or http://cleanscript.com/Map/main3.py
On 9/12/07, Michael George <[EMAIL PROTECTED]> wrote: > > A much easier approach would simply be: > > # draw frame (frame_number % 10) > > In fact now that I think about it the way you wrote it isn't even > correct: frame % 2 == 0 whenever the frame number is even so every other > frame you'll get frame 9. > > --Mike > > Lamonte Harris wrote: > > Nvm I fixed it. :D > > > > On 9/11/07, *Lamonte Harris* <[EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> wrote: > > > > Okay this is really complicated, it seem like its looping > > correctly but the images aren't switching. > > > > On 9/11/07, *Lamonte Harris* < [EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> wrote: > > > > Okay thanks sounds like a plan. > > > > > > On 9/11/07, *Ian Mallett* <[EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> 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 > > elif frame_number%8 == 0: #frame_number ends in 8 > > #draw frame 3 > > elif frame_number%7 == 0: #frame_number ends in 7 > > #draw frame 4 > > elif frame_number%6 == 0: #frame_number ends in 6 > > #draw frame 5 > > elif frame_number%5 == 0: #frame_number ends in 5 > > #draw frame 6 > > elif frame_number%4 == 0: #frame_number ends in 4 > > #draw frame 7 > > elif frame_number%3 == 0: #frame_number ends in 3 > > #draw frame 8 > > elif frame_number%2 == 0: #frame_number ends in 2 > > #draw frame 9 > > else: #frame_number ends in 1 > > #draw frame 10 > > > > Ian > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > #Lamonte > > import pygame,sys,string > > from pygame.locals import * > > class Block(pygame.sprite.Sprite): > > def __init__(self): > > pygame.sprite.Sprite.__init__(self) > > class SpriteSheet: > > def __init__(self,image): > > self.sprite = pygame.image.load(image).convert() > > self.rect = '' > > self.imag = '' > > def slice(self,rect,key): > > rect = Rect(rect) > > img = pygame.Surface(rect.size).convert() > > img.set_colorkey(key) > > img.blit(self.sprite,(0,0),rect) > > self.rect = rect > > self.imag = img > > class map_(object): > > def __init__(self,block=100,wndow=(300,300)): > > self.BLOCK = block > > self.size = wndow > > self.window = pygame.display.set_mode(self.size) > > self.blocks = [] > > self.map = [] > > self.ANIMATION = [] > > self.clock = pygame.time.Clock() > > self.frame = 0 > > pygame.init() > > def hex_converter(self,hexcolorcode): > > hexcolorcode = hexcolorcode[1:] > > red = hexcolorcode[0:2] > > red = int(red,16) > > blue = hexcolorcode[2:4] > > blue = int(blue,16) > > green = hexcolorcode[4:6] > > green = int(green,16) > > return (red,green,blue) > > def create_box(self,size,color,rect): > > box = Block() > > box.image = pygame.Surface((size)) > > pygame.draw.rect(box.image,color,box.image.get_rect()) > > box.color = color > > box.point = rect > > self.blocks.append(box) > > def load_text_map(self,map): > > file = open(map,"r") > > links = file.readlines() > > file.close() > > x = 0 > > total = len(links) > > k = 0 > > while k<total: > > self.map.append([]) > > k += 1 > > for i in links: > > i = string.replace(i,"\n","") > > i = i.split(",") > > for e in i: > > self.map[x].append(e) > > x += 1 > > def render_map(self,aray,dict): > > x=0 > > for e in aray: > > z = 0 > > for y in e: > > aray[x][z] = dict[int(y)] > > z += 1 > > x += 1 > > return aray > > def main(self): > > z = 0 > > x = 0 > > y = 0 > > m = 0 > > while z < len(self.map): > > q = 0 > > while q < len(self.map[z]): > > self.create_box(self.map[z][q][0],self.map > [z][q][1],(x,y)) > > x += self.BLOCK > > q += 1 > > x = 0 > > y += self.BLOCK > > z += 1 > > self.draw_box() > > def draw_box(self): > > g1 = SpriteSheet("player.png") > > g2 = SpriteSheet("player.png") > > g1.slice((0,0,40,57),(255,255,255)) > > g2.slice((80,114,40,57),(255,255,255)) > > self.ANIMATION.append(g1) > > self.ANIMATION.append(g2) > > print self.ANIMATION > > while True: > > for event in pygame.event.get(): > > if event.type == pygame.QUIT: sys.exit() > > e = 0 > > while e < len(self.blocks): > > self.window.blit(self.blocks[e].image, > self.blocks[e].point) > > e += 1 > > u = 0 > > if self.frame > 1: > > self.frame = 0 > > print self.frame > > self.window.blit(self.ANIMATION[self.frame > ].imag,(400,400)) > > #print self.ANIMATION[self.frame].imag > > pygame.display.update() > > pygame.display.flip() > > self.clock.tick(2) > > self.frame += 1 > > Map = map_(25,(700,600)) > > tiles = {1 : [(25,25),Map.hex_converter("#E0ECFF")], 2 : [(25,25), > Map.hex_converter("#B5EDBC")], 3 : [(25,25),Map.hex_converter("#F3E807")] > } > > Map.load_text_map("map1.map") > > Map.render_map(Map.map,tiles) > > Map.main() > >