public Builder mergeFrom(org.bwapi.proxy.messages.GameMessages.Bullet other) {
        if (other == org.bwapi.proxy.messages.GameMessages.Bullet.getDefaultInstance()) return this;
        if (other.hasId()) {
          setId(other.getId());
        }
        if (other.hasPlayer()) {
          setPlayer(other.getPlayer());
        }
        if (other.hasType()) {
          setType(other.getType());
        }
        if (other.hasSource()) {
          mergeSource(other.getSource());
        }
        if (other.hasPosition()) {
          mergePosition(other.getPosition());
        }
        if (other.hasAngle()) {
          setAngle(other.getAngle());
        }
        if (other.hasVelocityX()) {
          setVelocityX(other.getVelocityX());
        }
        if (other.hasVelocityY()) {
          setVelocityY(other.getVelocityY());
        }
        if (other.hasTarget()) {
          mergeTarget(other.getTarget());
        }
        if (other.hasTargetPosition()) {
          mergeTargetPosition(other.getTargetPosition());
        }
        if (other.hasRemoveTimer()) {
          setRemoveTimer(other.getRemoveTimer());
        }
        if (other.hasExists()) {
          setExists(other.getExists());
        }
        if (other.hasIsVisible()) {
          setIsVisible(other.getIsVisible());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }