public void MergeFrom(AttackGymMessage other)
 {
     if (other == null)
     {
         return;
     }
     if (other.GymId.Length != 0)
     {
         GymId = other.GymId;
     }
     if (other.BattleId.Length != 0)
     {
         BattleId = other.BattleId;
     }
     attackActions_.Add(other.attackActions_);
     if (other.lastRetrievedActions_ != null)
     {
         if (lastRetrievedActions_ == null)
         {
             lastRetrievedActions_ = new global::PokemonGoDesktop.API.Proto.BattleAction();
         }
         LastRetrievedActions.MergeFrom(other.LastRetrievedActions);
     }
     if (other.PlayerLatitude != 0D)
     {
         PlayerLatitude = other.PlayerLatitude;
     }
     if (other.PlayerLongitude != 0D)
     {
         PlayerLongitude = other.PlayerLongitude;
     }
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (GymId.Length != 0)
            {
                hash ^= GymId.GetHashCode();
            }
            if (BattleId.Length != 0)
            {
                hash ^= BattleId.GetHashCode();
            }
            hash ^= attackActions_.GetHashCode();
            if (lastRetrievedActions_ != null)
            {
                hash ^= LastRetrievedActions.GetHashCode();
            }
            if (PlayerLatitude != 0D)
            {
                hash ^= PlayerLatitude.GetHashCode();
            }
            if (PlayerLongitude != 0D)
            {
                hash ^= PlayerLongitude.GetHashCode();
            }
            return(hash);
        }