public void ModuleBuy(JournalModuleBuy e) { string sid = Key(e.ShipFD, e.ShipId); ShipInformation sm = EnsureShip(sid); // this either gets current ship or makes a new one. if (e.StoredItem.Length > 0) // if we stored something { StoredModules = StoredModules.StoreModule(e.StoredItem, e.StoredItemLocalised); } // if we sold it, who cares? Ships[sid] = sm.AddModule(e.Slot, e.SlotFD, e.BuyItem, e.BuyItemFD, e.BuyItemLocalised); // replace the slot with this itemlocalisation[e.BuyItem] = e.BuyItemLocalised; // record any localisations if (e.SellItem.Length > 0) { itemlocalisation[e.SellItem] = e.SellItemLocalised; } if (e.StoredItem.Length > 0) { itemlocalisation[e.StoredItem] = e.StoredItemLocalised; } currentid = sid; // must be in it to do this }
public void ModuleBuy(JournalModuleBuy e) { string sid = Key(e.ShipFD, e.ShipId); ShipInformation sm = EnsureShip(sid); // this either gets current ship or makes a new one. sm = sm.SetShipDetails(e.Ship, e.ShipFD); // shallow copy if changed if (e.StoredItem.Length > 0) // if we stored something { StoredModules = StoredModules.StoreModule(e.StoredItem, e.StoredItemLocalised); } // if we sold it, who cares? Ships[sid] = sm.AddModule(e.Slot, e.SlotFD, e.BuyItem, e.BuyItemFD, e.BuyItemLocalised); // replace the slot with this itemlocalisation[e.BuyItem] = e.BuyItemLocalised; // record any localisations if (e.SellItem.Length > 0) { itemlocalisation[e.SellItem] = e.SellItemLocalised; } if (e.StoredItem.Length > 0) { itemlocalisation[e.StoredItem] = e.StoredItemLocalised; } VerifyList(); }
public void MassModuleStore(JournalMassModuleStore e) { ShipInformation sm = EnsureShip(e.ShipId); // this either gets current ship or makes a new one. Ships[e.ShipId] = sm.RemoveModules(e.ModuleItems); StoredModules = StoredModules.StoreModule(e.ModuleItems, itemlocalisation); }
internal StoredModulesEvent InvokeEvent(StoredModulesEvent arg) { if (_api.ValidateEvent(arg)) { StoredModules?.Invoke(_api, arg); } return(arg); }
private IEnumerable <ApiEvent> ConvertEvent(StoredModules e) { var @event = new ApiEvent("setCommanderStorageModules") { Timestamp = e.Timestamp, EventData = e.Items.Select(ConvertStoredItem).ToArray() }; yield return(@event); }
public void MassModuleStore(JournalMassModuleStore e) { string sid = Key(e.ShipFD, e.ShipId); ShipInformation sm = EnsureShip(sid); // this either gets current ship or makes a new one. sm = sm.SetShipDetails(e.Ship, e.ShipFD); // will clone if data changed.. Ships[sid] = sm.RemoveModules(e.ModuleItems); StoredModules = StoredModules.StoreModule(e.ModuleItems, itemlocalisation); VerifyList(); }
public void ModuleRetrieve(JournalModuleRetrieve e) { ShipInformation sm = EnsureShip(e.ShipId); // this either gets current ship or makes a new one. if (e.SwapOutItem.Length > 0) { StoredModules = StoredModules.StoreModule(e.SwapOutItem, e.SwapOutItemLocalised); } Ships[e.ShipId] = sm.AddModule(e.Slot, e.SlotFD, e.RetrievedItem, e.RetrievedItemFD, e.RetrievedItemLocalised); StoredModules = StoredModules.RemoveModule(e.RetrievedItem); }
public void ModuleStore(JournalModuleStore e) { ShipInformation sm = EnsureShip(e.ShipId); // this either gets current ship or makes a new one. if (e.ReplacementItem.Length > 0) { Ships[e.ShipId] = sm.AddModule(e.Slot, e.SlotFD, e.ReplacementItem, e.ReplacementItemFD, e.ReplacementItemLocalised); } else { Ships[e.ShipId] = sm.RemoveModule(e.Slot, e.StoredItem); } StoredModules = StoredModules.StoreModule(e.StoredItem, e.StoredItemLocalised); currentid = e.ShipId; // must be in it to do this }
public void ModuleRetrieve(JournalModuleRetrieve e) { string sid = Key(e.ShipFD, e.ShipId); ShipInformation sm = EnsureShip(sid); // this either gets current ship or makes a new one. sm = sm.SetShipDetails(e.Ship, e.ShipFD); // shallow copy if changed if (e.SwapOutItem.Length > 0) { StoredModules = StoredModules.StoreModule(e.SwapOutItem, e.SwapOutItemLocalised); } Ships[sid] = sm.AddModule(e.Slot, e.SlotFD, e.RetrievedItem, e.RetrievedItemFD, e.RetrievedItemLocalised); StoredModules = StoredModules.RemoveModule(e.RetrievedItem); VerifyList(); }
public void UpdateStoredModules(JournalStoredModules s) { StoredModules = StoredModules.UpdateStoredModules(s.ModuleItems); VerifyList(); }
public void ModuleSellRemote(JournalModuleSellRemote e) { StoredModules = StoredModules.RemoveModule(e.SellItem); }