void Applydata_infosUnits(List <object> lstData)
    {
        for (int i = 0; i < lstData.Count; i++)
        {
            List <object> _unit       = (List <object>)lstData[i];
            infos_unit    _infos_unit = new infos_unit();
            for (int j = 0; j < _unit.Count; j++)
            {
                switch (j)
                {
                case 0: _infos_unit.UnitIdx = Convert.ToUInt32(_unit[j]); break;

                case 1: _infos_unit.UnitName = (_unit[j].ToString()); break;

                case 2: _infos_unit.SkillKind = Convert.ToByte(_unit[j]); break;

                case 3: _infos_unit.Hp = Convert.ToInt32(_unit[j]); break;

                case 4: _infos_unit.MvSpeed = Convert.ToInt32(_unit[j]); break;

                case 5: _infos_unit.SellItTp = (ITEMTYPE)Convert.ToByte(_unit[j]); break;

                case 6: _infos_unit.SellItNum = Convert.ToUInt32(_unit[j]); break;

                case 7: _infos_unit.RldSpeed = Convert.ToUInt16(_unit[j]); break;
                }
            }
            Infos_units[_infos_unit.UnitIdx] = _infos_unit;
        }
    }
Ejemplo n.º 2
0
    public void Init_chrctBasicInfo(User_Units _userUnit, infos_unit _infoUnit)
    {
        //오브젝트이름 바꾸기
        //gameObject.name = string.Format("{0}{1}", gameObject.name, unitIdx);

        gainUserUnit = _userUnit;
        unitInfos    = _infoUnit;
        unitIdx      = (int)gainUserUnit.Unitidx;


        //캐릭터 스킨메터릴얼 체크
        Chk_ChrctSkinMeterial();

        //오브젝트에 붙어있는 아이템 정보 가져오기
        Chk_getItemInfo(Dic_ItemHead, EquipItemType.Head);
        Chk_getItemInfo(Dic_ItemFace, EquipItemType.FACE);
        Chk_getItemInfo(Dic_ItemBody, EquipItemType.Body);
        Chk_getItemInfo(Dic_ItemRightWpn, EquipItemType.RWeapon);
        Chk_getItemInfo(Dic_ItemLeftWpn, EquipItemType.LWeapon);
        Chk_getItemInfo(Dic_OverOBJ, EquipItemType.Over);


        if (gainUserUnit != null)
        {
            Apply_CharacterEquip();
        }
    }
    //캐릭터 정보
    void Set_TapCharacterInfomation()
    {
        infos_unit _infoUnit = null;
        User_Units _userUnit = null;

        if (user.User_Units.ContainsKey(nowSelectUnitIdx))
        {
            _userUnit = user.User_Units[nowSelectUnitIdx];
        }

        if (TableDataManager.instance.Infos_units.ContainsKey(nowSelectUnitIdx))
        {
            _infoUnit = TableDataManager.instance.Infos_units[nowSelectUnitIdx];
        }

        if (_infoUnit != null)
        {
            //스킬이미지
            Image_MainSkillTumnail.sprite = ImageManager.instance.Get_Sprite(string.Format("{0}{1}", DefineKey.lobbySkill, (int)_infoUnit.SkillKind));

            //이름
            Text_UnitName.text = _infoUnit.UnitName;

            //스킬설명
            Text_SkillDescrip.text = TextDataManager.Dic_TranslateText[(int)_infoUnit.UnitIdx];

            //레벨
            int lv = _userUnit != null ? _userUnit.RefLv : 1;
            Text_RefLv.text = string.Format("Lv.{0}", lv);



            float initHp  = _infoUnit.Hp;
            float initMv  = _infoUnit.MvSpeed;
            float initRld = _infoUnit.RldSpeed;
            int   reflv   = _userUnit != null ? _userUnit.RefLv : 1;

            //hp
            Text_Hp.text = ((int)StaticMethod.Get_nextSpec(initHp, reflv, true)).ToString();

            //movespeed
            Text_MoveSpeed.text = reflv > 4
            ? (StaticMethod.Get_nextSpec(initMv, reflv, false, 0.05f, 4)).ToString() //5렙이상시
            : initMv.ToString();                                                     // 5렙이하시 기본값

            //reloadSpeed
            Text_ReloadSpeed.text = reflv > 9
            ? "+" + Mathf.Abs((int)StaticMethod.Get_nextSpec(initRld, reflv, true, 5f, 9)).ToString() //9렙이상시
            : "+" + initRld.ToString();                                                               // 9렙이하시 기본값



            //선택 캐릭와 현재배치의캐릭 과 같은지 체크
            bool isUseChar = nowSelectUnitIdx == user.User_useUnit.UnitIdxs[(int)user.User_useUnit.nowSelectBatch]
                ? true : false;
            //같으면 disable 활성
            DisableUseCharObj.SetActive(isUseChar);
        }
    }
Ejemplo n.º 4
0
    public void Refresh_ChrctInfo(User_Units _userUnit, infos_unit _infoUnit)
    {
        gainUserUnit = _userUnit;
        unitInfos    = _infoUnit;
        unitIdx      = gainUserUnit != null ?(int)gainUserUnit.Unitidx : (int)unitInfos.UnitIdx;

        Apply_CharacterEquip();

        Active_SkinnedMeshMeterial();
    }
Ejemplo n.º 5
0
 public infos_unit(infos_unit _infosUnit)
 {
     UnitIdx   = _infosUnit.UnitIdx;
     UnitName  = _infosUnit.UnitName;
     SkillKind = _infosUnit.SkillKind;
     Hp        = _infosUnit.Hp;
     MvSpeed   = _infosUnit.MvSpeed;
     SellItTp  = _infosUnit.SellItTp;
     SellItNum = _infosUnit.SellItNum;
 }
    void Set_ViewCharacter()
    {
        User_Units _userUnit = null;
        infos_unit _infoUnit = null;

        if (user.User_Units.ContainsKey(nowSelectUnitIdx))
        {
            _userUnit = user.User_Units[nowSelectUnitIdx];
        }

        if (TableDataManager.instance.Infos_units.ContainsKey(nowSelectUnitIdx))
        {
            _infoUnit = TableDataManager.instance.Infos_units[nowSelectUnitIdx];
        }

        if (viewCharacter == null)
        {
            if (_userUnit != null)
            {
                //선택한 캐릭터 생성
                Transform unitTr = ObjectPoolManager.Getinstance.Get_ObjectLobbyUnit(nowSelectUnitIdx.ToString());
                unitTr.transform.parent        = viewCharacterParentTr;
                unitTr.transform.localPosition = new Vector3(0, 0, 500f);
                unitTr.transform.localRotation = Quaternion.Euler(new Vector3(0, 180, 0));
                unitTr.transform.localScale    = new Vector3(225.0f, 225.0f, 225.0f); // 크기 225로 잡기

                characterInfo lc = unitTr.GetComponent <characterInfo>();

                //캐릭 초기화
                lc.Init_chrctBasicInfo(_userUnit, _infoUnit);

                //회전관련 값 할당
                CharRotateSector.Init_RotateSector(unitTr);

                //생성된캐릭 할당
                viewCharacter = lc;
            }
        }
        else
        {
            //소유중인 유닛이면
            //if (_userUnit != null)
            {
                // characterInfo 갱신위한 파라미터 재할당
                viewCharacter.Refresh_ChrctInfo(_userUnit, _infoUnit);
            }
        }


        //배치값
        Text_BatchNum.text = user.GetBatchTxt(user.User_useUnit.nowSelectBatch);
    }
Ejemplo n.º 7
0
    //캐릭터 슬롯정보
    void Apply_CharacterSlot(User_Units _userUnit, BatchType batch)
    {
        if (_userUnit != null)
        {
            infos_unit infoUnit = null;
            if (Dic_infosUnit.ContainsKey(_userUnit.Unitidx))
            {
                infoUnit = Dic_infosUnit[_userUnit.Unitidx];
            }
            //이름
            Lst_TextCharName[(int)batch].text = infoUnit.UnitName;

            //강화 레벨
            Lst_TextCharRefLv[(int)batch].text = string.Format("Lv.{0}", _userUnit.RefLv);
        }
    }
Ejemplo n.º 8
0
    /// <summary>
    /// 특정캐릭터의 현재강화레벨 대한 능력치 반환
    /// </summary>
    public infos_unit Get_ReinfCharacter(uint unitIdx, byte RefLv)
    {
        infos_unit _unit = new infos_unit(TableDataManager.instance.Infos_units[unitIdx]);

        _unit.Hp = StaticMethod.Get_nextSpec(_unit.Hp, RefLv, true);

        if (RefLv >= 5)
        {
            _unit.MvSpeed = StaticMethod.Get_nextSpec(_unit.MvSpeed, RefLv, false, 0.05f, 4);
        }

        if (RefLv >= 10)
        {
            _unit.RldSpeed = (ushort)StaticMethod.Get_nextSpec(_unit.RldSpeed, RefLv, true, 5f, 9);
        }

        return(_unit);
    }
Ejemplo n.º 9
0
    //캐릭터 오브젝트정보
    void Apply_CharacterConfig(User_Units _userUnit, BatchType batch)
    {
        if (_userUnit != null)
        {
            Lst_LobbyChar[(int)batch].gameObject.SetActive(true);

            if (!Dic_characterInfos.ContainsKey((int)batch))
            {
                //캐릭에 구성정보 할당
                infos_unit infoUnit = null;
                if (Dic_infosUnit.ContainsKey(_userUnit.Unitidx))
                {
                    infoUnit = Dic_infosUnit[_userUnit.Unitidx];
                }

                //캐릭 초기화
                Lst_LobbyChar[(int)batch].Init_chrctBasicInfo(_userUnit, infoUnit);


                //초기화된 캐릭터 Dic에 할당
                Dic_characterInfos[(int)batch] = Lst_LobbyChar[(int)batch];
            }
            else
            {
                infos_unit infoUnit = null;
                if (Dic_infosUnit.ContainsKey(_userUnit.Unitidx))
                {
                    infoUnit = Dic_infosUnit[_userUnit.Unitidx];
                }

                //characterInfo 갱신위한 파라미터 재할당
                Dic_characterInfos[(int)batch].Refresh_ChrctInfo(_userUnit, infoUnit);
            }
        }
        else
        {
            Lst_LobbyChar[(int)batch].gameObject.SetActive(false);
        }
    }
    //tap종류에따른 object 활성하기
    CharSettingTapType Activation_TapInfomation(CharSettingTapType _nowTapType, uint unitidx)
    {
        bool isOnBtnBuyChar     = false;
        bool isOnBtnDeco        = false;
        bool isOnTapToggleGroup = false;
        bool isOnUnlockBg       = false;
        bool isOnUnlock         = false;
        bool isOnWeapon         = false;

        //캐릭을 소유중
        if (user.User_Units.ContainsKey(unitidx))
        {
            isOnBtnBuyChar     = false; // 구매버튼 비활성
            isOnBtnDeco        = true;  // 꾸미기버튼 활성
            isOnUnlockBg       = true;  // unlock 뒷배경활성
            isOnTapToggleGroup = true;  //tap토글 활성
        }
        else
        {
            //소유하지 않고 잇으니 info 로
            _nowTapType        = CharSettingTapType.Info;
            isOnBtnBuyChar     = true;  // 구매버튼 활성
            isOnBtnDeco        = false; // 꾸미기버튼 비활성
            isOnUnlockBg       = false; // unlock 뒷배경 비활성
            isOnTapToggleGroup = false; //탭 토글 비활성


            //구매버튼활성 하엿으니 구매가격및 구매재화
            infos_unit _infoUnit = null;
            if (TableDataManager.instance.Infos_units.ContainsKey(nowSelectUnitIdx))
            {
                _infoUnit = TableDataManager.instance.Infos_units[nowSelectUnitIdx];
            }

            if (_infoUnit != null)
            {
                //구매가격
                Text_CharBuyNum.text = _infoUnit.SellItNum.ToString();

                //구매재화이미지
                if (_infoUnit.SellItTp == ITEMTYPE.GEM)
                {
                    Image_CharBuyType.sprite = ImageManager.instance.Get_Sprite(DefineKey.Gem);
                }
                else if (_infoUnit.SellItTp == ITEMTYPE.GOLD)
                {
                    Image_CharBuyType.sprite = ImageManager.instance.Get_Sprite(DefineKey.Gold);
                }
            }
        }



        if (_nowTapType == CharSettingTapType.Info)
        {
            isOnWeapon = false;
            isOnUnlock = true;
        }
        else if (_nowTapType == CharSettingTapType.Weapon)
        {
            isOnWeapon = true;
            isOnUnlock = false;
        }

        Active_tapConfigUIObj(TapConfigUIObjectKind.UnlockBg, isOnUnlockBg);
        Active_tapConfigUIObj(TapConfigUIObjectKind.Btn_BuyChar, isOnBtnBuyChar);
        Active_tapConfigUIObj(TapConfigUIObjectKind.TapToggleGroup, isOnTapToggleGroup);
        Active_tapConfigUIObj(TapConfigUIObjectKind.Btn_Deco, isOnBtnDeco);
        Active_tapConfigUIObj(TapConfigUIObjectKind.Unlock, isOnUnlock);
        Active_tapConfigUIObj(TapConfigUIObjectKind.Weapon, isOnWeapon);

        return(_nowTapType);
    }