protected virtual int GetProgress( ConquestState state, Item item, int quality, bool slayer, CraftResource res, CraftSystem craft) { if (state.User == null) { return(0); } if (item == null || craft == null) { return(0); } if (ItemType.IsNotNull && !item.TypeEquals(ItemType, ItemChildren)) { if (ItemChangeReset) { return(-state.Progress); } return(0); } if (IsExceptional && quality == 0) { return(0); } if (IsSlayer && !slayer) { return(0); } if (IsCloth && !(item is BaseClothing)) { return(0); } if (Resource != CraftResource.None && res != Resource) { return(0); } if (CraftSystem.IsNotNull && !craft.TypeEquals(CraftSystem, false)) { return(0); } // This function is only called after a successful completion so amount will // not be zero except for the case of a potion that was created and auto-consolidated // into a keg by the oncraft handler in BasePotion if (item.Amount <= 0) { return(1); } return(item.Amount); }