/// <summary> /// Hire NPC and add to group. /// </summary> /// <returns>hired NPC</returns> protected Character HireNpc() { Character ch = GetHireableNpc(); if (ch.HireItems.Count > 0) { // clear items to prevent required item not getting in Player.Character.Items.Clear(); // add required item Player.Character.Items.Add(ch.HireItems.Last.Generate()); } // hire ch.Hire(Player); // clear items ch.Items.Clear(); // add weapon to npc if (ItemPool.HasWeapon()) { Item weapon = ItemPool.GetBestWeapon(); ch.Items.Add(weapon); ch.SelectItem(weapon); } return(ch); }