Почему из обеих колод можно брать только одну колоду? [закрыто]Python

Программы на Python
Ответить
Anonymous
 Почему из обеих колод можно брать только одну колоду? [закрыто]

Сообщение Anonymous »

По какой-то причине, когда я нажимаю mon_deck, он извлекает данные как из mon_deck, так и из loc_deck, и ничего не происходит, когда я нажимаю loc_deck.

Код: Выделить всё

elif event.type == pygame.MOUSEBUTTONDOWN:
if event.button == 1:
mouse_pos = event.pos
for deck in self.decks:
if deck.image.get_rect().collidepoint(mouse_pos):
if deck.cards:
if deck == self.mon_deck:
if len(self.mon_area.cards) < self.mon_area.size:
self.mon_area.add_card(self.mon_deck.take())
elif deck == self.loc_deck:
self.loc_area.add_card(self.loc_deck.take())
Колоды объявляются ранее как

Код: Выделить всё

# Load Decks
self.mon_deck = Deck(load_cards_from_json("Mon_Dungeon.json"), "Monster", MONSTER_DECK_COORDS)
self.loc_deck = Deck(load_cards_from_json("Loc_Dungeon.json"), "Location", LOCATION_DECK_COORDS)
# Set Areas
self.mon_area = PlayArea(MONSTER_AREA_COORDS, 6)
self.loc_area = PlayArea(LOCATION_AREA_COORDS, 1)
# Aggregate components
self.decks = [self.mon_deck, self.loc_deck]
self.areas = [self.mon_area, self.loc_area]
РЕДАКТИРОВАТЬ: Отладка (операторы печати) показала, что elif Deck == self.loc_deck: по какой-то причине игнорируется, поэтому он продолжает рисовать из loc_deck каждый раз, когда я нажимаю на mon_deck
Я знал, что это происходит, но не знал, почему.

Подробнее здесь: https://stackoverflow.com/questions/798 ... -from-both
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»