public static void WriteRandomEvents(Player p, DoubleStream stream, int eventsCount)
 {
     foreach (var r in p.Board.RandomList)
     {
         writeRandomEvent(p, stream, r, eventsCount);
     }
     stream.Skip(eventsCount + eventsCount);
 }
 void WriteBoard(Player p, DoubleStream stream)
 {
     foreach (var m in p.Minions)
     {
         WriteMinion(m, stream);
     }
     stream.Skip(BoardMinionsLenght);
 }
 void WriteHand(Player p, DoubleStream stream)
 {
     foreach (var card in p.HandCards)
     {
         if (card is Spell s)
         {
             WriteSpell(s, stream);
         }
         else if (card is MinionCard m)
         {
             WriteMCard(m, stream);
         }
         else
         {
             throw new Exception("LOL WHAT?");
         }
     }
     stream.Skip(HandCardsLength);
 }