public void CreateItem(ItemData item) { item.Count++; item.TotalCount++; itemLoader.Save(item); modelData.ItemsCreated++; modelLoader.Save(modelData); foreach (var requiredPart in item.RequiredParts) { var part = GetPart(requiredPart.PartId); part.Count -= requiredPart.RequiredCount; partLoader.Save(part); } if (OnItemCreated != null) { OnItemCreated(item); } }