public static void OnTradeRequestCancel(WorldClient client, INetPacketStream packet) { var tradePacket = new TradeRequestPacket(packet); var tradeEvent = new TradeRequestCancelEventArgs(tradePacket.Target); client.Player.NotifySystem <TradeSystem>(tradeEvent); }
/// <summary> /// Cancel/deny a trade request /// </summary> /// <param name="player"></param> /// <param name="e"></param> private static void TradeRequestCancel(IPlayerEntity player, TradeRequestCancelEventArgs e) { Logger.Debug("Trade request cancel"); if (e.TargetId == player.Id) { throw new RhisisSystemException($"Can't cancel a Trade with ourselve ({player.Object.Name})"); } var target = GetEntityFromContextOf(player, e.TargetId); WorldPacketFactory.SendTradeRequestCancel(target, player.Id); }