Код IT
← Каталог

Python — карточная стратегия — Двухшаговый ввод (карта → цель)

Фрагмент из «Python — карточная стратегия»: Двухшаговый ввод (карта → цель).

python spinoffencyclopedia9-04-razrabotka-igr-praktikum-razrabotki-igr-7 embed URL статья в энциклопедии
Python main.py
def _handle_combat_click(self, pos):
    combat = self.run.combat
    if combat is None:
        return
    # 1) хитбоксы врагов из ui.last_enemy_rects
    for i, rect in enumerate(self.ui.last_enemy_rects):
        if rect.collidepoint(pos):
            combat.select_enemy(i)
            return
    # 2) карты
    for i, rect in enumerate(self.ui.last_hand_rects):
        if rect.collidepoint(pos):
            combat.play_card(i, combat.selected_enemy_index)
            return
    # 3) конец хода
    if self.ui.end_turn_rect.collidepoint(pos):
        combat.end_player_turn()
def _handle_combat_click(self, pos):
    combat = self.run.combat
    if combat is None:
        return
    # 1) хитбоксы врагов из ui.last_enemy_rects
    for i, rect in enumerate(self.ui.last_enemy_rects):
        if rect.collidepoint(pos):
            combat.select_enemy(i)
            return
    # 2) карты
    for i, rect in enumerate(self.ui.last_hand_rects):
        if rect.collidepoint(pos):
            combat.play_card(i, combat.selected_enemy_index)
            return
    # 3) конец хода
    if self.ui.end_turn_rect.collidepoint(pos):
        combat.end_player_turn()