예제 #1
0
def kill_enemy(enemies: list, index: int, board: Board,
               item_drops: list) -> list:
    """
    Kills the enemy provided and gets loot drop
    :param enemies: List of all enemies currently alive
    :param index: Index in enemies list of the enemy to kill
    :param board: Board object
    :param item_drops: List of all item drops currently on the board
    :return: Updated item_drops list
    """
    drop_data = enemies[index].kill()
    del enemies[index]

    if drop_data is not None:
        DataLoader.change_file("add_xp", drop_data[3])
        drop_data = drop_data[0] - board.x, drop_data[1] - board.y, drop_data[
            2]
        item_drops.append(ItemDrop(*drop_data))
        return item_drops
예제 #2
0
 def reset_level(self):
     if DataLoader.player_data[
             "xp"] >= DataLoader.player_data["level"] * 100:
         DataLoader.change_file("reset_xp")
         DataLoader.change_file("add_level")
예제 #3
0
                show_inv = not show_inv
                show_st = False

            # Switches tabs
            elif event.key == pygame.K_i and not show_menu:
                show_equipment = not show_equipment
                tab.selected_equipment = not tab.selected_equipment

            # Toggles skill tree
            elif event.key == pygame.K_k and not show_menu:
                show_st = not show_st
                show_inv = False

            # Adds xp to player -------------------------------------------------- Dev tool
            elif event.key == pygame.K_x:
                DataLoader.change_file("add_xp", 1)

            # Moves item from inv to hotbar
            elif event.key in [
                    pygame.K_1, pygame.K_2, pygame.K_3, pygame.K_4, pygame.K_5
            ] and not show_menu:
                if show_inv:
                    inv_collide_data = inv_collide(inv,
                                                   *pygame.mouse.get_pos())
                    if inv_collide_data is not None:
                        pos, space = inv_collide_data
                        DataLoader.change_file("remove_from_hotbar",
                                               num_pos[event.key] - 1)
                        DataLoader.change_file("add_to_hotbar", space[0][1],
                                               num_pos[event.key] - 1)
                        DataLoader.change_file("remove_from_inv", pos)