Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 27, 2011 09:58:36

sp3
От:
Зарегистрирован: 2010-01-12
Сообщения: 405
Репутация: +  18  -
Профиль   Отправить e-mail  

ООП

Уважаемые программисты передо мной не стоит цель написать идеальную игру с идеальным кодом (пока к этому стремлюсь). Основной критерий: игра должна быть написана с подходом ООП. Это всего лишь программа для получения зачета.
Спасибо за Ваши советы.

пс. собрал с помощью py2exe. При создании объекта Font падает с ошибкой
ImportError: DLL load failed: Не найден указанный модуль.
Сделал как здесь http://thadeusb.com/weblog/2009/4/15/pygame_font_and_py2exe
непомогло.

python2.6
win7
py2exe 0.6.9
pygame 1.9.1release-svn2575



Отредактировано (Фев. 27, 2011 10:01:23)

Офлайн

#2 Фев. 27, 2011 16:30:51

udav
От:
Зарегистрирован: 2010-05-30
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

ООП

dimabest
Ход невозможен, если:
8.А также взятие “на проходе” возможно только следующим ходом.



Офлайн

#3 Фев. 28, 2011 14:43:20

sp3
От:
Зарегистрирован: 2010-01-12
Сообщения: 405
Репутация: +  18  -
Профиль   Отправить e-mail  

ООП

Проблема с Font решилась с помощью этого совета
http://thadeusb.com/weblog/2009/4/15/pygame_font_and_py2exe
и заменой

self.font = pygame.font.Font(None, 24)
# на
self.font = pygame.font.SysFont('arial', 24)



Офлайн

#4 Март 2, 2011 14:59:25

leechuck
От:
Зарегистрирован: 2010-11-30
Сообщения: 44
Репутация: +  1  -
Профиль   Отправить e-mail  

ООП

Kogrom
Мне вот такой код не нравится:
        for x in xrange(8):
self.board[x][1] = BlackFigure(name = u'пешка',image= self.manager.get_image('bp.png'))
self.board[x][6] = WhiteFigure(name = u'пешка' ,image= self.manager.get_image('wp.png'))
self.board[0][7] = WhiteFigure(name = u'ладья',image= self.manager.get_image('wl.png'))

...

self.board[3][0] = BlackFigure(name = u'ферзь' ,image= self.manager.get_image('bf.png'))
self.board[4][0] = BlackFigure(name = u'король',image= self.manager.get_image('bk.png'))
Ctrl-c, Ctrl-v какое-то. Не могу дать готового решения, но ожидалось что-то типа:
Доска.расставить_фигуры(…)

Ну и далее, ставим каждую фигуру в соответствии с классом, в соответствии с состоянием объекта. Наследование для черных и белых фигур - сомнительная фишка. Можно цвет в конструкторе задавать. Я бы наследовал пешек, слонов, ферзей и т.д. ибо у них и поведение разное и вид, и ценность.

Ну а в целом - нормально.
А я бы сделал что то типа такого


class Figure(Display):

def __init__(self,name='',image=None):
self.font = pygame.font.Font(None, 24)

if not image:
image = self.font.render(name, 0, {'black':(0,0,0),'white':(250,250,250)}[self.color])
self.image = image

def draw(self,source,pos):
source.blit(self.image, (pos[0]*60,pos[1]*60))

color = "undefined"
position = [0,0]
Потом одмин славарем бы задал начальные значение в классе доски.



Отредактировано (Март 2, 2011 15:01:52)

Офлайн

#5 Март 3, 2011 07:22:56

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

ООП

leechuck
Потом одмин славарем бы задал начальные значение в классе доски.
А лучше вообще данные начальной расстановки фигур в файл вынести



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#6 Март 4, 2011 12:40:18

leechuck
От:
Зарегистрирован: 2010-11-30
Сообщения: 44
Репутация: +  1  -
Профиль   Отправить e-mail  

ООП

PooH
leechuck
Потом одмин славарем бы задал начальные значение в классе доски.
А лучше вообще данные начальной расстановки фигур в файл вынести
Или в строку.

И в целях экономии половина строки белые - половина другие.



Офлайн

#7 Март 4, 2011 13:04:52

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

ООП

leechuck
PooH
А лучше вообще данные начальной расстановки фигур в файл вынести
Или в строку.
Я настаиваю на файле :) тогда можно будет задавать разные начальные позиции.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#8 Март 4, 2011 13:17:08

leechuck
От:
Зарегистрирован: 2010-11-30
Сообщения: 44
Репутация: +  1  -
Профиль   Отправить e-mail  

ООП

PooH
leechuck
PooH
А лучше вообще данные начальной расстановки фигур в файл вынести
Или в строку.
Я настаиваю на файле :) тогда можно будет задавать разные начальные позиции.
И сохранять состояние игры



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version