public ItemIconPickUpImplementor CreateIIPUImplementor(int transferableQuantity, int itemQuantity, int pickUpStepQuantity, out IItemIcon ii, out IItemIconTransactionManager iiTAM, out IPickUpSystemUIElementFactory uieFactory) { IItemIcon thisII = Substitute.For <IItemIcon>(); thisII.GetUIImage().Returns(Substitute.For <IUIImage>()); IItemTemplate itemTemp = Substitute.For <IItemTemplate>(); itemTemp.GetPickUpStepQuantity().Returns(pickUpStepQuantity); // thisII.GetItemTemplate().Returns(itemTemp); IUIItem item = Substitute.For <IUIItem>(); item.GetItemTemplate().Returns(itemTemp); thisII.GetUIItem().Returns(item); thisII.GetTransferableQuantity().Returns(transferableQuantity); thisII.GetItemQuantity().Returns(itemQuantity); thisII.GetIconGroup().Returns(Substitute.For <IIconGroup>()); IItemIconTransactionManager thisIITAM = Substitute.For <IItemIconTransactionManager>(); IPickUpSystemUIElementFactory thisUIEFactory = Substitute.For <IPickUpSystemUIElementFactory>(); ItemIconPickUpImplementor implementor = new ItemIconPickUpImplementor(thisIITAM, thisUIEFactory); implementor.SetItemIcon(thisII); ii = thisII; iiTAM = thisIITAM; uieFactory = thisUIEFactory; return(implementor); }
IItemIcon CreateLeftoverII(int pickedQuantity) { IItemIcon leftoverII = thisPickUpSystemUIElementFactory.CreateItemIcon(thisItem); IUIImage leftoverIIImage = leftoverII.GetUIImage(); leftoverII.SetParentUIE(thisItemIcon.GetParentUIE(), true); leftoverIIImage.CopyPosition(thisImage); thisIG.ReplaceAndUpdateII(thisItemIcon.GetSlotID(), leftoverII); leftoverII.DisemptifyInstantly(thisItem); leftoverII.DecreaseBy(pickedQuantity, doesIncrement: true, removesEmpty: false); return(leftoverII); }
public void SetItemIcon(IItemIcon itemIcon) { thisItemIcon = itemIcon; thisItemIconImage = (IItemIconImage)thisItemIcon.GetUIImage(); }