private string DoBossItem(GameUser user, BossItem bossItem, int randId) { string prizeItemMsg = string.Empty; ////筛选物品 var itemInfoList = new ConfigCacheSet<ItemBaseInfo>().FindAll(m => m.ItemType == bossItem.Type && m.MedicineLv == bossItem.ItemLv); if (itemInfoList.Count > 0) { for (int i = 0; i < bossItem.Num; i++) { ItemBaseInfo itemInfo = itemInfoList[RandomUtils.GetRandom(0, itemInfoList.Count)]; if (itemInfo == null) continue; UserItemHelper.AddUserItem(user.UserID, itemInfo.ItemID, 1); if (prizeItemMsg.Length > 0) prizeItemMsg += " "; prizeItemMsg += string.Format(LanguageManager.GetLang().St5405_CombatNum, itemInfo.ItemName, 1); } } return prizeItemMsg; }
private string DoBossItem(GameUser user, BossItem bossItem, int randId) { string prizeItemMsg = string.Empty; //筛选物品 var itemInfoList = new ShareCacheStruct<ItemBaseInfo>().FindAll(m => { bool result = false; if (m.ItemType == bossItem.Type) { if (m.ItemID == bossItem.ItemId) { return true; } if (m.ItemType == ItemType.TuZhi) { result = m.MedicineLv <= bossItem.ItemLv; } else { if (bossItem.ItemLv > 0 && bossItem.Quality > 0) { result = m.DemandLv == bossItem.ItemLv && (short)m.QualityType == bossItem.Quality; } else if (bossItem.ItemLv > 0) { result = m.DemandLv == bossItem.ItemLv; } else if (bossItem.Quality > 0) { result = (short)m.QualityType == bossItem.Quality; } } } return result; }); if (itemInfoList.Count > 0) { for (int i = 0; i < bossItem.Num; i++) { ItemBaseInfo itemInfo = itemInfoList[RandomUtils.GetRandom(0, itemInfoList.Count)]; if (itemInfo == null) continue; UserItemHelper.AddUserItem(user.UserID, itemInfo.ItemID, 1); if (prizeItemMsg.Length > 0) prizeItemMsg += " "; prizeItemMsg += string.Format("{0}*{1}", itemInfo.ItemName, 1); } } return prizeItemMsg; }