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
def reset_level(self): if DataLoader.player_data[ "xp"] >= DataLoader.player_data["level"] * 100: DataLoader.change_file("reset_xp") DataLoader.change_file("add_level")
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)