private boolean combatStartFight(Enemy enemy, MovableObject weapon, Player player)
    {
        boolean playerWin = false;
        int enemyDealt = 0;
        int playerDealt = 0;
        int totalEnemyDealt = 0;
        int totalPlayerDealt = 0;

        while(!playerWin) {
            // validate the movable object weapon before using it (do this in the 'fight' method in CommandActions
            playerDealt = (int) Math.floor(15*weapon.getWeaponModifier());                
            enemyDealt = (int) Math.floor(14*enemy.getInventory().getWeapon().getWeaponModifier()+2);

            totalEnemyDealt += enemyDealt;
            totalPlayerDealt += playerDealt;

            enemy.updateHealth(enemy.getHealth() - playerDealt);
            player.updateHealth(player.getHealth() - enemyDealt);

            if(player.getHealth() <= 0) {
                playerWin = false;
                System.out.println("You fight the evil " + enemy.getName() + " to death with your " + weapon.getObjectName());
                System.out.println("unfortunately it was your death.\nGAME OVER");
                break;
            }

            if(enemy.getHealth() <= 0) {
                playerWin = true;
                System.out.println("You fight the evil " + enemy.getName() + " to the death with your " + weapon.getObjectName());
                System.out.println("and kill him only taking " + totalEnemyDealt + " health points.\n");
                gameData.getCurrentLocation().removeEnemyByName(enemy.getName());
                
                HashMap<String, MovableObject> enemyHash = enemy.getInventory().getArrayInventory(); // Convert Hash Map to arrayList
                ArrayList<MovableObject> enemyArray = new ArrayList<MovableObject>(enemyHash.values());

                for (MovableObject item : enemyArray){
                    enemy.getInventory().dropFromInventory(item.getObjectName());
                    gameData.getCurrentLocation().andHasObject(item);
                }
                break;
            }
        }

        return playerWin;
    }