private void LogReaderOnCardMovement(HsLogReader sender, CardMovementArgs args) { Logger.WriteLine(string.Format("{0} (id:{1} turn:{2} from:{3})", args.MovementType.ToString(), args.CardId, sender.GetTurnNumber(), args.From), "LogReader"); switch (args.MovementType) { case CardMovementType.PlayerGet: HandlePlayerGet(args.CardId); break; case CardMovementType.PlayerDraw: HandlePlayerDraw(args.CardId); break; case CardMovementType.PlayerMulligan: HandlePlayerMulligan(args.CardId); break; case CardMovementType.PlayerHandDiscard: HandlePlayerHandDiscard(args.CardId); break; case CardMovementType.PlayerPlay: HandlePlayerPlay(args.CardId); break; case CardMovementType.PlayerDeckDiscard: HandlePlayerDeckDiscard(args.CardId); break; case CardMovementType.OpponentSecretTrigger: HandleOpponentSecretTrigger(args.CardId); break; case CardMovementType.OpponentPlay: //moved to CardPosChange break; case CardMovementType.OpponentHandDiscard: //moved to CardPosChange (included in play) break; case CardMovementType.OpponentDeckDiscard: HandleOpponentDeckDiscard(args.CardId); break; case CardMovementType.OpponentPlayToHand: HandleOpponentPlayToHand(args.CardId, sender.GetTurnNumber()); break; default: Logger.WriteLine("Invalid card movement"); break; } }
private void LogReaderOnTurnStart(HsLogReader sender, TurnStartArgs args) { Logger.WriteLine(string.Format("{0}-turn ({1})", args.Turn, sender.GetTurnNumber() + 1), "LogReader"); //doesn't really matter whose turn it is for now, just restart timer //maybe add timer to player/opponent windows _turnTimer.SetCurrentPlayer(args.Turn); _turnTimer.Restart(); if (args.Turn == Turn.Player && !_game.IsInMenu) { if (_config.FlashHs) User32.FlashHs(); if (_config.BringHsToForeground) User32.BringHsToForeground(); } }