Beispiel #1
0
        public static void On_Send_CHG_INTIMACY_CONFIRM(CSPkg msg)
        {
            Singleton <CUIManager> .GetInstance().CloseSendMsgAlert();

            SCPKG_CMD_CHG_INTIMACY_CONFIRM stChgIntimacyConfirmRsp = msg.stPkgData.stChgIntimacyConfirmRsp;

            if (stChgIntimacyConfirmRsp.dwResult == 0u)
            {
                if (stChgIntimacyConfirmRsp.bRelationChgType == 1 && IntimacyRelationViewUT.IsRelaState(stChgIntimacyConfirmRsp.bIntimacyState))
                {
                    CFriendRelationship.FRData.Add(stChgIntimacyConfirmRsp.stUin.ullUid, stChgIntimacyConfirmRsp.stUin.dwLogicWorldId, (COM_INTIMACY_STATE)stChgIntimacyConfirmRsp.bIntimacyState, (COM_INTIMACY_RELATION_CHG_TYPE)stChgIntimacyConfirmRsp.bRelationChgType, 0u, false);
                }
                if (stChgIntimacyConfirmRsp.bRelationChgType == 2 && IntimacyRelationViewUT.IsRelaState(stChgIntimacyConfirmRsp.bIntimacyState))
                {
                    CFriendRelationship.FRData.Add(stChgIntimacyConfirmRsp.stUin.ullUid, stChgIntimacyConfirmRsp.stUin.dwLogicWorldId, COM_INTIMACY_STATE.COM_INTIMACY_STATE_VALUE_FULL, (COM_INTIMACY_RELATION_CHG_TYPE)stChgIntimacyConfirmRsp.bRelationChgType, stChgIntimacyConfirmRsp.dwTerminateTime, false);
                }
            }
            else
            {
                Singleton <CUIManager> .GetInstance().OpenTips(UT.ErrorCode_String(stChgIntimacyConfirmRsp.dwResult), false, 1.5f, null, new object[0]);

                COMDT_ACNT_UNIQ stUin = stChgIntimacyConfirmRsp.stUin;
                if (stUin != null)
                {
                    FriendRelationNetCore.ProcessByErrorCode(stChgIntimacyConfirmRsp.dwResult, stUin.ullUid, stUin.dwLogicWorldId);
                }
            }
        }
        private void On_IntimacyRela_Cancle(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            COM_INTIMACY_STATE tag  = uievent.m_eventParams.tag;
            int tag2 = uievent.m_eventParams.tag2;

            Singleton <CFriendContoller> .get_instance().model.FRData.ResetChoiseRelaState(commonUInt64Param, tagUInt);

            if (tag == 20)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, 1, 1);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, 24, 0, 0u, false);
            }
            if (tag == 22)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, 2, 1);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, 24, 0, 0u, false);
            }
            if (tag == 21)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, 1, 2);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, 1, 0, 0u, false);
            }
            if (tag == 23)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, 2, 2);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, 2, 0, 0u, false);
            }
        }
        private void On_IntimacyRela_Delete_Relation_OK(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            CFR   cfr = Singleton <CFriendContoller> .instance.model.FRData.GetCfr(commonUInt64Param, tagUInt);

            if (cfr != null && IntimacyRelationViewUT.IsRelaState(cfr.state))
            {
                FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, cfr.state, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_DEL);
            }
        }
        private void On_IntimacyRela_FristChoise(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            CFR   cfr = Singleton <CFriendContoller> .instance.model.FRData.GetCfr(commonUInt64Param, tagUInt);

            if (cfr != null)
            {
                FriendRelationNetCore.Send_CHG_INTIMACYPRIORITY(cfr.state);
            }
        }
        private void On_IntimacyRela_OK(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            COM_INTIMACY_STATE tag  = uievent.m_eventParams.tag;
            int tag2 = uievent.m_eventParams.tag2;

            if (tag == 24 && tag2 != -1)
            {
                CFriendRelationship fRData = Singleton <CFriendContoller> .get_instance().model.FRData;

                CFriendRelationship.FRConfig cFGByIndex = fRData.GetCFGByIndex(tag2);
                if (cFGByIndex.state == 1)
                {
                    if (fRData.FindFrist(1) == null)
                    {
                        FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, 1, 1);
                        Singleton <CFriendContoller> .get_instance().model.FRData.ResetChoiseRelaState(commonUInt64Param, tagUInt);
                    }
                    else
                    {
                        Singleton <CUIManager> .get_instance().OpenTips(UT.FRData().IntimRela_Tips_AlreadyHasGay, true, 1.5f, null, new object[0]);
                    }
                }
                if (cFGByIndex.state == 2)
                {
                    if (fRData.FindFrist(2) == null)
                    {
                        FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, 2, 1);
                        Singleton <CFriendContoller> .get_instance().model.FRData.ResetChoiseRelaState(commonUInt64Param, tagUInt);
                    }
                    else
                    {
                        Singleton <CUIManager> .get_instance().OpenTips(UT.FRData().IntimRela_Tips_AlreadyHasLover, true, 1.5f, null, new object[0]);
                    }
                }
            }
            else if (tag == 20)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, 1, 1);
            }
            else if (tag == 22)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, 2, 1);
            }
            else if (tag == 21)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, 1, 2);
            }
            else if (tag == 23)
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, 2, 2);
            }
        }
        private void On_IntimacyRela_Delete_Relation(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            CFR   cfr = Singleton <CFriendContoller> .get_instance().model.FRData.GetCfr(commonUInt64Param, tagUInt);

            if (cfr != null)
            {
                if (cfr.state == 1)
                {
                    FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, 1, 2);
                }
                if (cfr.state == 2)
                {
                    FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, 2, 2);
                }
            }
        }
        private void On_IntimacyRela_OK(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            COM_INTIMACY_STATE tag  = (COM_INTIMACY_STATE)uievent.m_eventParams.tag;
            int tag2 = uievent.m_eventParams.tag2;

            if (tag == COM_INTIMACY_STATE.COM_INTIMACY_STATE_VALUE_FULL && tag2 != -1)
            {
                CFriendRelationship          fRData     = Singleton <CFriendContoller> .instance.model.FRData;
                CFriendRelationship.FRConfig cFGByIndex = fRData.GetCFGByIndex(tag2);
                if (cFGByIndex == null)
                {
                    return;
                }
                if (IntimacyRelationViewUT.IsRelaState(cFGByIndex.state))
                {
                    if (fRData.FindFrist(cFGByIndex.state) == null)
                    {
                        FriendRelationNetCore.Send_INTIMACY_RELATION_REQUEST(commonUInt64Param, tagUInt, cFGByIndex.state, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_ADD);
                        Singleton <CFriendContoller> .instance.model.FRData.ResetChoiseRelaState(commonUInt64Param, tagUInt);
                    }
                    else
                    {
                        RelationConfig relaTextCfg = Singleton <CFriendContoller> .instance.model.FRData.GetRelaTextCfg(cFGByIndex.state);

                        if (relaTextCfg != null)
                        {
                            Singleton <CUIManager> .instance.OpenTips(relaTextCfg.IntimRela_Tips_AlreadyHas, true, 1.5f, null, new object[0]);
                        }
                    }
                }
            }
            else if (IntimacyRelationViewUT.IsRelaStateConfirm(tag))
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, IntimacyRelationViewUT.GetStateByConfirmState(tag), COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_ADD);
            }
            else if (IntimacyRelationViewUT.IsRelaStateDeny(tag))
            {
                FriendRelationNetCore.Send_CHG_INTIMACY_CONFIRM(commonUInt64Param, tagUInt, IntimacyRelationViewUT.GetStateByDenyState(tag), COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_DEL);
            }
        }
        private void On_IntimacyRela_Cancle(CUIEvent uievent)
        {
            ulong commonUInt64Param = uievent.m_eventParams.commonUInt64Param1;
            uint  tagUInt           = uievent.m_eventParams.tagUInt;
            COM_INTIMACY_STATE tag  = (COM_INTIMACY_STATE)uievent.m_eventParams.tag;

            Singleton <CFriendContoller> .instance.model.FRData.ResetChoiseRelaState(commonUInt64Param, tagUInt);

            if (IntimacyRelationViewUT.IsRelaStateConfirm(tag))
            {
                COM_INTIMACY_STATE stateByConfirmState = IntimacyRelationViewUT.GetStateByConfirmState(tag);
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, stateByConfirmState, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_ADD);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, COM_INTIMACY_STATE.COM_INTIMACY_STATE_VALUE_FULL, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_NULL, 0u, false);
            }
            if (IntimacyRelationViewUT.IsRelaStateDeny(tag))
            {
                COM_INTIMACY_STATE stateByDenyState = IntimacyRelationViewUT.GetStateByDenyState(tag);
                FriendRelationNetCore.Send_CHG_INTIMACY_DENY(commonUInt64Param, tagUInt, stateByDenyState, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_DEL);
                CFriendRelationship.FRData.Add(commonUInt64Param, tagUInt, stateByDenyState, COM_INTIMACY_RELATION_CHG_TYPE.COM_INTIMACY_RELATION_NULL, 0u, false);
            }
        }