Пример #1
0
 public void SetPickChar(NrCharBase pkChar)
 {
     if (pkChar != null)
     {
         this.PickChar         = pkChar;
         this.LastPickCharID   = pkChar.GetID();
         this.PickCharTime     = Time.time;
         this.PickCharMousePos = NkInputManager.mousePosition;
         if (this.PickChar.IsCharKindATB(8L))
         {
             this.PickChar.SetClickMe();
         }
         else if (this.PickChar.IsCharKindATB(4L))
         {
             this.PickChar.SetClickMe();
         }
         else if (this.PickChar.IsCharKindATB(16L))
         {
             this.PickChar.SetClickMe();
         }
     }
     else
     {
         this.InitPickChar();
     }
 }
Пример #2
0
    public override void Close()
    {
        if (this.m_bOK)
        {
            NrCharBase charByCharUnique = NrTSingleton <NkCharManager> .Instance.GetCharByCharUnique(this.m_i16CharUnique);

            if (charByCharUnique != null)
            {
                NrTSingleton <NkCharManager> .Instance.DeleteChar(charByCharUnique.GetID());
            }
        }
        NrTSingleton <FormsManager> .Instance.CloseForm(G_ID.TAKE_DLG);

        NrTSingleton <NkClientLogic> .Instance.SetNPCTalkState(false);

        NrTSingleton <FormsManager> .Instance.Main_UI_Show(FormsManager.eMAIN_UI_VISIBLE_MODE.COMMON);

        if (this.m_nTalkMode == 1)
        {
            Inventory_Dlg inventory_Dlg = NrTSingleton <FormsManager> .Instance.LoadForm(G_ID.INVENTORY_DLG) as Inventory_Dlg;

            inventory_Dlg.Show();
        }
        NrTSingleton <NkQuestManager> .Instance.ReleaseQuestCamera();

        if (null != this.m_WorldCamera)
        {
            this.m_WorldCamera.RestoreCameraInfo();
        }
        base.Close();
    }
Пример #3
0
    public override void Update()
    {
        if (!this.m_bSendPacket)
        {
            if (this.m_eAnitype == Dlg_Collect.eANISTATE.eANISTATE_STARTANI)
            {
                this.StartBarAni();
            }
            else if (this.m_eAnitype == Dlg_Collect.eANISTATE.eANISTATE_DECIDEANI)
            {
                GS_COLLECT_FINISH_REQ gS_COLLECT_FINISH_REQ = new GS_COLLECT_FINISH_REQ();
                gS_COLLECT_FINISH_REQ.i32CharUnique = this.m_CharUnique;
                SendPacket.GetInstance().SendObject(eGAME_PACKET_ID.GS_COLLECT_FINISH_REQ, gS_COLLECT_FINISH_REQ);
                this.m_bSendPacket = true;
            }
            NrCharBase charByCharUnique = NrTSingleton <NkCharManager> .Instance.GetCharByCharUnique((short)this.m_CharUnique);

            float num;
            if (charByCharUnique == null)
            {
                num = 10f;
            }
            else
            {
                num = NrTSingleton <NkCharManager> .Instance.GetDistanceCharPos(1, charByCharUnique.GetID());
            }
            if (Mathf.Abs(this.m_fDistanceFromUser - num) > 1f)
            {
                this.OnClose();
            }
        }
    }
        public bool AddGeneral(string ActorName, bool Hide)
        {
            NrCharBase @char = NrTSingleton <NkCharManager> .Instance.GetChar(1);

            return(@char != null && this.AddActor(ActorName, new NkCharIDInfo
            {
                m_nCharUnique = @char.GetCharUnique(),
                m_nClientID = @char.GetID(),
                m_nWorldID = @char.GetWorldID()
            }, false, Hide));
        }
Пример #5
0
 public void MakeChar()
 {
     if (this.m_CenterChar == null || this._MakeCharCodes == null)
     {
         UnityEngine.Object.Destroy(base.gameObject);
         return;
     }
     this.MakeComplete = false;
     base.enabled      = true;
     if (this.m_MakeNpcTable == null)
     {
         this.m_MakeNpcTable = new Dictionary <string, SubNpc>();
     }
     for (int i = 0; i < this._MakeCharCodes.Count; i++)
     {
         float y    = this.m_CenterChar.m_k3DChar.GetRootGameObject().transform.localEulerAngles.y;
         float num  = 0f;
         int   num2 = this._PositionList[i];
         if (num2 == -1)
         {
             num = y + this.degreeTemp[this._GetEmptySlot()];
         }
         else if (0 <= num2 && 5 > num2)
         {
             num = y + this.degreeTemp[num2];
         }
         float f     = num * 0.0174532924f;
         POS3D pOS3D = new POS3D();
         pOS3D.x = this.m_CenterChar.GetPersonInfo().GetCharPos().x + 15f * Mathf.Sin(f);
         pOS3D.y = 0f;
         pOS3D.z = this.m_CenterChar.GetPersonInfo().GetCharPos().z + 15f * Mathf.Cos(f);
         float f2     = (num + 180f) * 0.0174532924f;
         POS3D pOS3D2 = new POS3D();
         pOS3D2.x = 1f * Mathf.Sin(f2);
         pOS3D2.y = 0f;
         pOS3D2.z = 1f * Mathf.Cos(f2);
         NrCharBase nrCharBase = this._CreateClientNPC(this._MakeCharCodes[i], pOS3D, pOS3D2);
         if (nrCharBase != null)
         {
             SubNpc subNpc = new SubNpc();
             subNpc.i32ID         = nrCharBase.GetID();
             subNpc.CharCode      = nrCharBase.GetCharKindInfo().GetCode();
             subNpc.i16CharUnique = nrCharBase.GetCharUnique();
             if (!this.m_MakeNpcTable.ContainsKey(nrCharBase.GetCharKindInfo().GetCode()))
             {
                 this.m_MakeNpcTable.Add(nrCharBase.GetCharKindInfo().GetCode(), subNpc);
             }
         }
     }
 }
        public bool AddChar(string ActorName, string CharKindCode, float X, float Y, int Angle, bool Hide)
        {
            if (string.IsNullOrEmpty(ActorName) || string.IsNullOrEmpty(CharKindCode))
            {
                return(false);
            }
            if (this.IsActor(ActorName))
            {
                TsLog.LogWarning(string.Format("[EventTriggerMiniDrama] ActorManager : Have Equal CharName {0}", ActorName), new object[0]);
                return(false);
            }
            NrCharKindInfo charKindInfoFromCode = NrTSingleton <NrCharKindInfoManager> .Instance.GetCharKindInfoFromCode(CharKindCode);

            if (charKindInfoFromCode == null)
            {
                return(false);
            }
            NEW_MAKECHAR_INFO nEW_MAKECHAR_INFO = new NEW_MAKECHAR_INFO();

            nEW_MAKECHAR_INFO.CharName  = TKString.StringChar(charKindInfoFromCode.GetName());
            nEW_MAKECHAR_INFO.CharPos.x = X;
            nEW_MAKECHAR_INFO.CharPos.y = EventTriggerGameHelper.GetGroundPosition(X, Y);
            nEW_MAKECHAR_INFO.CharPos.z = Y;
            float f = (float)Angle * 0.0174532924f;

            nEW_MAKECHAR_INFO.Direction.x  = 1f * Mathf.Sin(f);
            nEW_MAKECHAR_INFO.Direction.y  = 0f;
            nEW_MAKECHAR_INFO.Direction.z  = 1f * Mathf.Cos(f);
            nEW_MAKECHAR_INFO.CharKind     = charKindInfoFromCode.GetCharKind();
            nEW_MAKECHAR_INFO.CharKindType = 3;
            nEW_MAKECHAR_INFO.CharUnique   = NrTSingleton <NkQuestManager> .Instance.GetClientNpcUnique();

            int id = NrTSingleton <NkCharManager> .Instance.SetChar(nEW_MAKECHAR_INFO, false, false);

            NrCharBase @char = NrTSingleton <NkCharManager> .Instance.GetChar(id);

            NkCharIDInfo nkCharIDInfo = new NkCharIDInfo();

            nkCharIDInfo.m_nClientID   = @char.GetID();
            nkCharIDInfo.m_nCharUnique = @char.GetCharUnique();
            nkCharIDInfo.m_nWorldID    = @char.GetWorldID();
            @char.SetExceptHideForLoad(true);
            return(this.AddActor(ActorName, nkCharIDInfo, true, Hide));
        }
Пример #7
0
    public void UpdateAgitNPC(int iMapIdx)
    {
        if (NrTSingleton <ContentsLimitManager> .Instance.IsAgitLimit())
        {
            return;
        }
        if (iMapIdx != 12)
        {
            return;
        }
        this.m_NewGuildAgit.ClearNPCInfo();
        for (byte b = 1; b < 6; b += 1)
        {
            AgitNPCData agitNPCData = NrTSingleton <NrBaseTableManager> .Instance.GetAgitNPCData(b.ToString());

            if (agitNPCData != null)
            {
                NrCharKindInfo charKindInfoFromCode = NrTSingleton <NrCharKindInfoManager> .Instance.GetCharKindInfoFromCode(agitNPCData.strCharCode);

                if (charKindInfoFromCode != null)
                {
                    NrCharBase charByCharKind = NrTSingleton <NkCharManager> .Instance.GetCharByCharKind(charKindInfoFromCode.GetCharKind());

                    if (charByCharKind != null)
                    {
                        NrTSingleton <NkCharManager> .Instance.DeleteChar(charByCharKind.GetID());
                    }
                }
            }
        }
        for (int i = 0; i < this.m_NewGuildAgit.GetAgitNPCSubDataCount(); i++)
        {
            AGIT_NPC_SUB_DATA agitNPCSubData = this.m_NewGuildAgit.GetAgitNPCSubData(i);
            if (agitNPCSubData != null)
            {
                this.MakeAgitNPC(agitNPCSubData.ui8NPCType);
            }
        }
        this.ShowAgitInfoDLG();
    }