Буквально позавчера начал изучать Python до этого имел дело с pascal,delfi
Сделав несколько простеньких программ. Взял номер Linux Format №10 за 2008 год, где была статья об игре на Питоне с использованием pygame
Переписав из журнала код, начал разбирать его.
Запустил в Eric выполенение
from pygame import *
import random
class Sprite:
def init (self,xpos,ypos,filename):
self.x = xpos
self.y = ypos
self.bitmap = image.load(filename)
self.bitmap.set_colorkey((0,0,0))
def set_position(self,xpos,ypos):
self.x = xpos
self.y = ypos
def render (self):
screen.blit(self.bitmap, (self.x, self.y))
def Intersect(s1_x,s1_y,s2_x,s2_y):
if (s1_x > s2_x - 32) and (s1_x < s2_x + 32) and (s1_y > s2_y -32) and (s1_y < s2_y + 32):
return 1
else:
return 0
init()
screen = display.set_mode((640,480))
key.set_repeat(1,1)
display.set_caption('PyInvaders Realy Cool!')
backdrop = image.load('data/backdrop.bmp')
enemies = []
x=0
for count in range(10):
warrior = Sprite((50*x + 50),50,'data/baddie.bmp')
enemies.append(warrior) <---------------------------------------------------Error is Here!
x += 1
hero = Sprite (20, 400,'data/hero.bmp')
ourmissile = Sprite (0, 480,'data/heromissile.bmp')
enemymissile = Sprite (0, 480,'data/baddiemessile.bmp')
<дальнейший код опущен>
Отлаживаемая программа выбросила исключение unhandled TypeError
“this constructor takes no arguments”
Файл: /home/sergey/PyInvanders/PyInvanders.py, строка 31
Не могу понять в чем ошибка.
Поможете?