rendered paste body# -*- coding: cp1252 -*-import os, sys, pygamepygame.init()pygame.mixer.init()from time import sleep# RANDOM settings#size = width, height = 700, 700speed = [2, 2]black = 0, 0, 0## AssignmentsSP = 1screen = pygame.display.set_mode((700, 700))background = pygame.Surface(screen.get_size())background = background.convert()background.fill((250, 250, 250))# SOUND LOADINGdef load_sound(name): class NoneSound: def play(self): pass if not pygame.mixer or not pygame.mixer.get_init(): return NoneSound() fullname = os.path.join('sound', name) try: sound = pygame.mixer.Sound(fullname) except pygame.error, message: print 'cannot find\load sound: ', fullname raise SystemExit, message return sound # IMAGE LOADINGdef load_ball(name, colorkey=None): fullname = os.path.join('image', name) try: image = pygame.image.load(fullname) except pygame.error, message: print 'Cannot load image:', name raise SystemExit, message image = image.convert() if colorkey is not None: if colorkey is -1: colorkey = image.get_at((0,0)) image.set_colorkey(colorkey)#RLEACCEL return image, image.get_rect()# Classesclass crosshair(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image, self.rect = load_ball('crosshair.gif', -1) self.firing = 0 def update(self): pos = pygame.mouse.get_pos() self.rect.midtop = pos if self.firing: self.rect.move_ip(5, 10) def fire(self, target): if not self.firing: self.firing = 1 hitbox = self.rect.inflate(-5, -5) return hitbox.colliderect(target.rect) def unfire(self): self.firing = 0 sleep(0.26) load_sound('cock.wav')class ball(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image, self.rect = load_ball('ball.bmp', -1) screen = pygame.display.get_surface() self.area = screen.get_rect() self.rect.topleft = 10, 10 self.move = 9 self.hit = 0 def update(self): if self.hit: self._hit() else: self._walk() self.image = load_ball('ball.bmp') def _walk(self): newpos = self.rect.move((self.move, 0)) if self.rect.left < self.area.left or \ self.rect.right > self.area.right: self.move = -self.move newpos = self.rect.move((self.move, 0))## if not self.area.contains(newpos):## if self.rect.left < self.area.left or \## self.rect.right > self.area.right:## self.move = -self.move## newpos = self.rect.move((self.move, 0))## if self.rect.top < self.area.top or \## self.rect.bottom > self.area.bottom:## self.move = -self.move## self.rect = newpos def _hit(self): if self.hit: self.image = load_ball('BS1.gif') sleep(0.25) self.image = load_ball('BS4.gif') def punched(self): if not self.hit: self.hit = 1 self.original = self.imageallsprites = pygame.sprite.RenderPlain((crosshair(), ball()))def ControllerTick(): for event in pygame.event.get(): if event.type == pygame.QUIT: load_sound('gameover.wav') sleep(1.2) sys.exit() SP = 0 elif event.type == pygame.MOUSEBUTTONDOWN: load_sound('M3_Fire.wav') #FIRE_sound.play() if crosshair.fire(crosshair(), ball()): load_sound('bodysplat.wav') #Bsplatter_sound.play() ball.punched(ball()) elif event.type == pygame.MOUSEBUTTONUP: crosshair.unfire(crosshair())def ViewTick(): PS = pygame.Surface allsprites.update() screen.blit(background, (0, 0)) screen.draw(allsprites) <-- changed pygame.display.flip()def main(): pygame.init() #screen = pygame.display.set_mode((700, 700)) pygame.display.set_caption('BALL') pygame.mouse.set_visible(0)## background = pygame.Surface(screen.get_size())## background = background.convert()## background.fill((250, 250, 250)) if pygame.font: font = pygame.font.Font('4yeostamp.ttf', 40) text = font.render("Made by lillEkU", 1, (10, 10, 10)) TP = text.get_rect() background.blit(text, TP) #screen.blit(background, (0, 0)) #pygame.display.flip() B = ball() CH = crosshair() #allsprites = pygame.sprite.RenderPlain((crosshair(), ball())) clock = pygame.time.Clock() SP = 1 while (SP==1): clock.tick(60) if ControllerTick() == 0: return ViewTick()#if __name__ == '__main__': main()if SP == 1: main()------------------------------------------------------END OF CODE------------------------------------------------------ERROR MESSAGE:Traceback (most recent call last): File "H:\programmer-python\SICKball\ball.py", line 176, in ? main() File "H:\programmer-python\SICKball\ball.py", line 172, in main ViewTick() File "H:\programmer-python\SICKball\ball.py", line 141, in ViewTick allsprites.draw(PS,screen)TypeError: draw() takes exactly 2 arguments (3 given)----------------------------------------------------------PS = pygame.Surfaceif i write : allsprites.draw(screen)i get a message saying that "the first argument must be pygame.Surface"