コード例 #1
0
 private bool OnBnetError(BnetErrorInfo info, object userData)
 {
     if (!Network.Get().OnIgnorableBnetError(info))
     {
         if (this.m_handleLastFatalBnetErrorNow)
         {
             return(true);
         }
         this.m_lastFatalBnetErrorInfo = info;
         switch (info.GetError())
         {
         case BattleNetErrors.ERROR_PARENTAL_CONTROL_RESTRICTION:
         case BattleNetErrors.ERROR_SESSION_DUPLICATE:
             this.m_handleLastFatalBnetErrorNow = true;
             break;
         }
     }
     return(true);
 }
コード例 #2
0
    private bool ShouldIgnoreErrorImpl(BnetErrorInfo errorInfo)
    {
        uint context = (uint)errorInfo.GetContext();

        if (context == 0)
        {
            return(false);
        }
        ClientRequestType clientRequest = this.GetClientRequest(context, "should_ignore_error", true);

        if (clientRequest == null)
        {
            return((this.GetDroppedRequest(context, "should_ignore", true) != null) || (this.GetPendingSendRequest(context, "should_ignore", true) != null));
        }
        BattleNetErrors error = errorInfo.GetError();

        if (clientRequest.IsSubsribeRequest)
        {
            if (clientRequest.System.SubscribeAttempt >= clientRequest.System.MaxResubscribeAttempts)
            {
                return(!clientRequest.ShouldRetryOnError);
            }
            return(true);
        }
        if (!clientRequest.ShouldRetryOnError)
        {
            return(true);
        }
        if (clientRequest.System.PendingResponseTimeout == 0)
        {
            return(false);
        }
        switch (error)
        {
        case (((BattleNetErrors)(BattleNetErrors.ERROR_INTERNAL && BattleNetErrors.ERROR_RPC_REQUEST_TIMED_OUT)) && BattleNetErrors.ERROR_GAME_UTILITY_SERVER_NO_SERVER):
            return(false);
        }
        return(this.ShouldIgnore_ERROR_GAME_UTILITY_SERVER_NO_SERVER(errorInfo, clientRequest));
    }
コード例 #3
0
    private bool OnBnetError(BnetErrorInfo info, object userData)
    {
        BnetFeature      feature      = info.GetFeature();
        BnetFeatureEvent featureEvent = info.GetFeatureEvent();

        if ((feature == BnetFeature.Friends) && (featureEvent == BnetFeatureEvent.Friends_OnSendInvitation))
        {
            string str;
            switch (info.GetError())
            {
            case BattleNetErrors.ERROR_OK:
                str = GameStrings.Get("GLOBAL_ADDFRIEND_SENT_CONFIRMATION");
                UIStatus.Get().AddInfo(str);
                return(true);

            case BattleNetErrors.ERROR_FRIENDS_FRIENDSHIP_ALREADY_EXISTS:
                str = GameStrings.Get("GLOBAL_ADDFRIEND_ERROR_ALREADY_FRIEND");
                UIStatus.Get().AddError(str);
                return(true);
            }
        }
        return(false);
    }
コード例 #4
0
 private bool OnBnetError(BnetErrorInfo info, object userData)
 {
     object[] args = new object[] { info.GetFeatureEvent(), info.GetError() };
     Log.Mike.Print("BnetFriendMgr.OnBnetError() - event={0} error={1}", args);
     return(true);
 }