Example #1
0
 /// <summary>
 /// Fills the provided <see cref="item"/> with a base material.
 /// </summary>
 /// <remarks>
 /// By default, the base item is the Material key of the recipe, but the functions is also given
 /// the original <see cref="material"/> item with container access, such that the information can
 /// be copied/derived from instance data on the original item.
 /// </remarks>
 /// <param name="item">Item to fill with base item data</param>
 /// <param name="material">Original item to derive information from (unused by default)</param>
 public virtual void FillBaseItem(IHasContainers item, IHasContainers material)
 {
     if (item.HasContainer <BaseItemContainer>())
     {
         item.GetContainer <BaseItemContainer>().Unwrap().BaseItem = Material;
     }
 }
Example #2
0
 public override void FillBaseItem(IHasContainers item, IHasContainers material)
 {
     if (!DoesProduceCaviar(item) && item.HasContainer <BaseItemContainer>() && material.HasContainer <BaseItemContainer>())
     {
         item.GetContainer <BaseItemContainer>().Unwrap().BaseItem =
             material.GetContainer <BaseItemContainer>().Unwrap().BaseItem;
     }
 }
Example #3
0
 public override int GetTimeToReady(IHasContainers item)
 {
     return(DoesProduceCaviar(item) ? CaviarTime : base.GetTimeToReady(item));
 }
Example #4
0
 public override ResourceKey GetResult(IHasContainers item)
 {
     return(DoesProduceCaviar(item) ? CaviarKey : base.GetResult(item));
 }
Example #5
0
 private static bool DoesProduceCaviar(IHasContainers item)
 {
     return(item.HasContainer <BaseItemContainer>() &&
            Equals(item.GetContainer <BaseItemContainer>().Unwrap().BaseItem, SturgeonKey));
 }
Example #6
0
 public virtual int GetTimeToReady(IHasContainers item)
 {
     return(TimeToReady);
 }
Example #7
0
 public virtual ResourceKey GetResult(IHasContainers item)
 {
     return(Result);
 }
Example #8
0
 public virtual int GetTimeToReady(IHasContainers containers)
 {
     return(_timeToReady);
 }
Example #9
0
 public virtual ResourceKey GetAnimalToSpawn(IHasContainers containers)
 {
     return(_animalToSpawn);
 }