private static Item GetItem(int id) { if (id > ModdedHelper.LastUnmoddedItemId) { return(ModdedHelper.GetModdedItem(id)); } if (Items.RebirthItems.ContainsKey(id)) { return(Items.RebirthItems[id]); } if (Items.AfterbirthItems.ContainsKey(id)) { return(Items.AfterbirthItems[id]); } return(Items.AfterbirthPlusItems.ContainsKey(id) ? Items.AfterbirthPlusItems[id] : null); }
public List <Item> GetSmeltedTrinkets() { var smeltedTrinketsOffset = GetPlayerInfo(SmeltedTrinketsPointerOffset); var trinketsCount = ModdedHelper.LastUnmoddedTrinketId + ModdedHelper.ModdedTrinketsCount(); var smeltedTrinkets = Read(smeltedTrinketsOffset + 1, trinketsCount); var currentSmeltedTrinkets = new List <Item>(); for (var i = 0; i < smeltedTrinkets.Length; i++) { if (smeltedTrinkets[i] != 1) { continue; } var trinket = i < ModdedHelper.LastUnmoddedTrinketId ? Trinkets.AllTrinkets[i + 1] : ModdedHelper.GetModdedTrinket(i + 1); currentSmeltedTrinkets.Add(trinket); } currentSmeltedTrinkets.Sort((trinketA, trinketB) => string.CompareOrdinal(trinketA.I18N, trinketB.I18N)); return(currentSmeltedTrinkets); }
public override List <Item> GetPillPool() { var pillPool = new List <Item>(); var playermanagetInstruct = GetPlayerManagetInstruct(); var numberOfPlayers = GetNumberOfPlayers(playermanagetInstruct); if (playermanagetInstruct == 0 || numberOfPlayers == 0) { return(pillPool); } var pillPoolArray = Read(playermanagetInstruct + PillsOffset, 13 * 4); for (var i = 0; i < 13; i++) { var pillId = MemoryReaderUtils.ConvertLittleEndian(pillPoolArray, i * 4, 4); if (pillId < 0) { pillPool.Add(null); continue; } pillPool.Add(pillId < ModdedHelper.UnmoddedPillsCount ? Pills.AllPills[pillId] : ModdedHelper.GetModdedPill(pillId)); } return(pillPool); }