Lamonte Harris wrote:
> :D I'm making progress, taught my self some what of how to move images
> using keyboard keys. First I took some animated ball moving script
> ripped it apart tried understanding it and edited it a bit, was fun.
> Then I rewrote it using classes :D with my basic Python Knowledge I've
> been studying for forever and I pulled it off. So far so good.
> [snip code]
> (Gmail messed up my spacing -.-)
That's why you should always attach large blocks of code instead of
putting them in the message body. Gmail doesn't mess with attachments.
> So quick question, How come when I used my class it doesn't load any
> faster then I thought it would?
Why would you think it would load faster?
Just because you used classes?
Classes aren't meant to make code faster, they're just a different level
of abstraction that makes your code easier to manage and more logical to
humans.
-Luke
import sys, pygame from pygame.locals import * pygame.init() size = width , height = 320, 240 speed = [0,0] pace = 10 black = 0, 0, 0 screen = pygame.display.set_mode(size) pygame.display.set_caption("Demonics Ball Game[Rofl]") ball = pygame.image.load("ball.gif") ballrect = ball.get_rect() print ballrect[3] wi = 10 hi = 10 x = 0 while True: for event in pygame.event.get(): pygame.key.set_repeat() if event.type == pygame.QUIT: sys.exit() elif event.type == pygame.KEYDOWN: pygame.event.pump() key = pygame.key.get_pressed() ballrect = speed if key[K_DOWN] and speed[1] < height-wi: speed[1] += pace if key[K_UP] and speed[1] > 0: speed[1] -= pace if key[K_LEFT] and speed[0] > 0: speed[0] -= pace if key[K_RIGHT] and speed[0] < width-hi: speed[0] += pace #ballrect = ballrect.move(speed) #if ballrect.left < 0 or ballrect.right > width: # speed[0] = -speed[0] #if ballrect.top < 0 or ballrect.bottom > height: # speed[1] = -speed[1] screen.fill(black) screen.blit(ball, ballrect) pygame.display.update()
import sys,pygame from pygame.locals import * class MoveBall(object): def __init__(self,size,pace,background,caption="Game Practice"): pygame.init() self.size = self.width,self.height = size self.speed = [0,0] self.pace = pace self.color = background self.window = pygame.display.set_mode(self.size) pygame.display.set_caption(caption) def load_image(self,img): image = pygame.image.load(img) return image def update(self,img): ball = img rect_ = ball.get_rect() bw = rect_[2] bh = rect_[3] while True: ballrect = self.speed for event in pygame.event.get(): pygame.key.set_repeat() if event.type == pygame.QUIT: sys.exit() elif event.type == pygame.KEYDOWN: pygame.event.pump() key = pygame.key.get_pressed() ballrect = self.speed if key[K_DOWN] and self.speed[1] < self.height-bw: self.speed[1] += self.pace if key[K_UP] and self.speed[1] > 0: self.speed[1] -= self.pace if key[K_LEFT] and self.speed[0] > 0: self.speed[0] -= self.pace if key[K_RIGHT] and self.speed[0] < self.width-bh: self.speed[0] += self.pace self.window.fill(self.color) self.window.blit(ball, ballrect) pygame.display.update() Ball = MoveBall((320,240),2,(0,0,0)) image = Ball.load_image("ball.gif") Ball.update(image)
Attachment:
ball.gif
Description: GIF image