public override void RemovedFrom(DeckLocation location, Player player) { base.RemovedFrom(location, player); if (_TrashedEventHandler != null) player.Trashed -= _TrashedEventHandler; _TrashedEventHandler = null; }
void Feodum_OwnerChanged(object sender, OwnerChangedEventArgs e) { if (_TrashedEventHandler != null && e.OldOwner != null) { e.OldOwner.Trashed -= _TrashedEventHandler; _TrashedEventHandler = null; } if (e.NewOwner != null) { _TrashedEventHandler = new Player.TrashedEventHandler(player_Trashed); e.NewOwner.Trashed += _TrashedEventHandler; } }
public override void AddedTo(DeckLocation location, Player player) { base.AddedTo(location, player); if (location == DeckLocation.Hand) { if (_TrashedEventHandler != null) player.Trashed -= _TrashedEventHandler; _TrashedEventHandler = new Player.TrashedEventHandler(player_Trashed); player.Trashed += _TrashedEventHandler; } }