public void CargoRemoved(object sender, ITransactionRemoveStatefulCargo transaction) { if (transaction.CargoType == StatefulCargoTypes.Module) { RemoveModule((Module)transaction.RemovedCargo); } }
/// <summary> /// TODO: clean this nasty mess up. /// </summary> void _addCargoToArea(object sender, ITransactionRemoveStatefulCargo tr) { IFloatyAreaObject fa = (IFloatyAreaObject)tr.RemovedCargo; List <IFloatyAreaObject> l = new List <IFloatyAreaObject> { fa }; IArea a = _areaLocator.GetArea(fa.NextAreaID); a.AddFloatyAreaObjects(l); ConsoleManager.WriteLine("NPC dropped " + tr.RemovedCargo.GetType().Name, ConsoleMessageType.Notification); }
public void NotifyCargoRemoved(object sender, ITransactionRemoveStatefulCargo transaction) { if (transaction.CargoHolder is IShip) { IShip s = transaction.CargoHolder as IShip; Player p = s.GetPlayer(); if (p.IsOnline) { var data = new MessageRemoveCargoFromShip { ShipID = s.Id }; data.StatefulCargoIDs.Add((int)transaction.CargoID); p.SendMessage(new NetworkMessageContainer(data, MessageTypes.RemoveCargoFromShip)); } } }