Esempio n. 1
0
    private void RefreshModel()
    {
        var info = PlayerDataManager.Instance.BattleMishiMaster;

        if (null == info)
        {
            if (null != mFackeCharacter)
            {
                mFackeCharacter.Destroy();
                mFackeCharacter.OnWingLoadedCallback = null;
                mFackeCharacter = null;
            }

            return;
        }
        var dataId = info.TypeId;
        var objId  = info.Id;
        var equip  = info.EquipsModel;
        var name   = String.Format(GameUtils.GetDictionaryText(300000059), info.Name);


        /*
         *      var info = ObjManager.Instance.MyPlayer;
         *      var dataId = info.GetDataId();
         *      var objId = info.GetObjId();
         *      var equip = info.EquipList;
         *      var name = info.Name;
         *      var allianceName = "WWWWW";
         */
        if (mFackeCharacter != null)
        {
            mFackeCharacter.Destroy();
        }
        mFackeCharacter = ObjFakeCharacter.Create(dataId, equip, character =>
        {
            if (null == mFackeCharacter)
            {
                character.Destroy();
                return;
            }

            if (character.GetObjId() != mFackeCharacter.GetObjId())
            {
                character.Destroy();
                return;
            }

            var collider    = character.gameObject.AddComponent <CapsuleCollider>();
            collider.center = new Vector3(0, 1, 0);
            collider.height = 2;

            //character.transform.parent = transform;
            character.transform.position = gameObject.transform.position + Offset;
            character.transform.forward  = Quaternion.Euler(ForwardAngle.x, ForwardAngle.y, ForwardAngle.z) *
                                           Vector3.forward;
            character.transform.localScale = Scale;
            //var anis = character.gameObject.GetComponentsInChildren<Animation>();
            //StartCoroutine(StopAni(0.8f));
            character.CreateNameBoard(name);
        }, 0, false, -1, objId);
        mFackeCharacter.SetObjId(objId);
        //mFackeCharacter.OnWingLoadedCallback = OnWingLoaded;
        mFackeCharacter.gameObject.layer = LayerMask.NameToLayer("ObjLogic");
        mFackeCharacter.iType            = (int)eFakeCharacterTypeDefine.MieShiFakeCharacterType;
    }
Esempio n. 2
0
    private void RefreshModel()
    {
        var info = PlayerDataManager.Instance.BattleUnionMaster;

        if (null == info)
        {
            return;
        }
        var dataId       = info.TypeId;
        var objId        = info.Id;
        var equip        = info.EquipsModel;
        var name         = info.Name;
        var allianceName = string.Empty;
        var battleDic    = PlayerDataManager.Instance._battleCityDic;

        foreach (var item in battleDic)
        {
            if (item.Value.Type == 0)
            {
                allianceName = item.Value.Name;
                break;
            }
        }

        /*
         *      var info = ObjManager.Instance.MyPlayer;
         *      var dataId = info.GetDataId();
         *      var objId = info.GetObjId();
         *      var equip = info.EquipList;
         *      var name = info.Name;
         *      var allianceName = "WWWWW";
         */
        if (mFackeCharacter != null)
        {
            mFackeCharacter.Destroy();
        }
        mFackeCharacter = ObjFakeCharacter.Create(dataId, equip, character =>
        {
            if (null == mFackeCharacter)
            {
                character.Destroy();
                return;
            }

            if (character.GetObjId() != mFackeCharacter.GetObjId())
            {
                character.Destroy();
                return;
            }

            var collider    = character.gameObject.AddComponent <CapsuleCollider>();
            collider.center = new Vector3(0, 1, 0);
            collider.height = 2;

            //character.transform.parent = transform;
            character.transform.position = gameObject.transform.position + Offset;
            character.transform.forward  = Quaternion.Euler(ForwardAngle.x, ForwardAngle.y, ForwardAngle.z) *
                                           Vector3.forward;
            character.transform.localScale = Scale;
            //var anis = character.gameObject.GetComponentsInChildren<Animation>();

            //StartCoroutine(StopAni(0.8f));
            var titles = new Dictionary <int, string>();
            titles.Add(2000, allianceName);
            titles.Add(5000, allianceName);
            character.CreateNameBoard(name, titles);
        }, 0, false, -1, objId);
        mFackeCharacter.SetObjId(objId);
        //mFackeCharacter.OnWingLoadedCallback = OnWingLoaded;
        mFackeCharacter.gameObject.layer = LayerMask.NameToLayer("ObjLogic");
    }
Esempio n. 3
0
    private void RefreshModel(PlayerInfoMsg info)
    {
        if (ObjManager.Instance.ObjPool.ContainsKey((ulong)GetNpcObjId(professionIndex)))
        {
            ObjManager.Instance.RemoveObj((ulong)GetNpcObjId(professionIndex));
        }
        if (null == info)
        {
            var init       = new InitNPCData();
            var npcId      = GetNpcId(professionIndex);
            var tbSceneNpc = Table.GetSceneNpc(npcId);
            if (null == tbSceneNpc)
            {
                return;
            }
            var tbNpc = Table.GetNpcBase(tbSceneNpc.DataID);
            if (null == tbNpc)
            {
                return;
            }
            var tbCharacterBase = Table.GetCharacterBase(tbSceneNpc.DataID);
            if (null == tbCharacterBase)
            {
                return;
            }
            init.DataId = tbSceneNpc.DataID;
            init.ObjId  = (ulong)tbSceneNpc.DataID * 1000;
            init.Name   = tbNpc.Name;
            init.Level  = tbNpc.Level;
            init.HpMax  = init.HpNow = tbCharacterBase.Attr[13];
            init.MpMax  = init.MpNow = tbCharacterBase.Attr[14];
            init.DirX   = (float)Math.Cos(tbSceneNpc.FaceDirection);
            init.DirZ   = (float)Math.Sin(tbSceneNpc.FaceDirection);
            init.X      = (float)tbSceneNpc.PosX;
            init.Z      = (float)tbSceneNpc.PosZ;
            init.Y      = GameLogic.GetTerrainHeight(init.X, init.Z);
            ObjManager.Instance.CreateNPCAsync(init);
            return;
        }
        var dataId       = info.TypeId;
        var objId        = info.Id;
        var equip        = info.EquipsModel;
        var name         = info.Name;
        var allianceName = string.Empty;
        var battleDic    = PlayerDataManager.Instance._battleCityDic;

        foreach (var item in battleDic)
        {
            if (item.Value.Type == 0)
            {
                allianceName = item.Value.Name;
                break;
            }
        }

        /*
         *      var info = ObjManager.Instance.MyPlayer;
         *      var dataId = info.GetDataId();
         *      var objId = info.GetObjId();
         *      var equip = info.EquipList;
         *      var name = info.Name;
         *      var allianceName = "WWWWW";
         */
        if (mFackeCharacter != null)
        {
            mFackeCharacter.Destroy();
        }
        mFackeCharacter = ObjFakeCharacter.Create(dataId, equip, character =>
        {
            if (null == mFackeCharacter)
            {
                character.Destroy();
                return;
            }

            if (character.GetObjId() != mFackeCharacter.GetObjId())
            {
                character.Destroy();
                return;
            }

            var collider    = character.gameObject.AddComponent <CapsuleCollider>();
            collider.center = new Vector3(0, 1, 0);
            collider.height = 2;

            //character.transform.parent = transform;
            character.transform.position = gameObject.transform.position + Offset;
            character.transform.rotation = Quaternion.Euler(0, 180f, 0);
            //character.transform.forward = Quaternion.Euler(ForwardAngle.x, ForwardAngle.y, ForwardAngle.z) * Vector3.forward;
            character.transform.localScale = Scale;


            int inde = 0;
            switch (info.TypeId)
            {
            case 0:
                inde = 460;
                break;

            case 1:
                inde = 461;
                break;

            case 2:
                inde = 462;
                break;
            }
            var tab_Config = DataTable.Table.GetClientConfig(inde);
            if (null != tab_Config)
            {
                var titles = new Dictionary <int, string>();
                var tabid  = 0;
                if (int.TryParse(tab_Config.Value, out tabid))
                {
                    titles.Add(tabid, null);
                    character.CreateNameBoard(name, titles);
                }
            }
        }, 0, false, -1, objId);
        mFackeCharacter.SetObjId(objId);
        //mFackeCharacter.OnWingLoadedCallback = OnWingLoaded;
        mFackeCharacter.gameObject.layer = LayerMask.NameToLayer("ObjLogic");
        mFackeCharacter.iType            = (int)OBJ.TYPE.FAKE_FIGHTLEADER;
    }