public override int GetHashCode() { unchecked { var hashCode = Id; hashCode = (hashCode * 397) ^ (SportType != null ? SportType.GetHashCode() : 0); hashCode = (hashCode * 397) ^ EventTime.GetHashCode(); hashCode = (hashCode * 397) ^ (HomePlayer != null ? HomePlayer.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (AwayPlayer != null ? AwayPlayer.GetHashCode() : 0); return(hashCode); } }
void Start() { var gameObjectFactory = new GameObjectFactory(cardPrefabMap, playerPrefab); var deployer = new Deployer(gameObjectFactory, arena, gameplayHUD); var gameActionFactory = new GameActionFactory(deployer); gameplayHUD.Setup(gestureRecognizer, arena); gameplayHUD.CreateCardSlots(PlayerHand.HandSize); HomePlayer = gameObjectFactory.CreatePlayer(Team.Home); VisitorPlayer = gameObjectFactory.CreatePlayer(Team.Visitor); HomePlayer.Setup(PlayerDeck.GetDummyDeck()); VisitorPlayer.Setup(PlayerDeck.GetDummyDeck()); Dealer.DealInitialCards(HomePlayer); Dealer.DealInitialCards(VisitorPlayer); matchReferee.Setup(gameActionFactory, players: new [] { HomePlayer, VisitorPlayer }); }