コード例 #1
0
    /// <summary>
    /// 修改眼睛
    /// </summary>
    /// <param name="eyeId"></param>
    public void ChangeEye(long eyeId)
    {
        this.characterData.eyeId = eyeId;
        CharacterInfoBean characterInfo = CreatureHandler.Instance.manager.GetCharacterInfoEye(eyeId);

        if (characterInfo == null)
        {
            LogUtil.LogError($"查询眼睛数据失败,没有ID为 {eyeId} 的眼睛数据");
        }
        else
        {
            CreatureHandler.Instance.manager.GetCharacterEyeTex(characterInfo.model_name,
                                                                (data) =>
            {
                if (data == null)
                {
                    LogUtil.LogError($"查询眼睛贴图失败,没有名字为 {characterInfo.model_name} 的眼睛贴图");
                }
                else
                {
                    headMat.SetTexture("Tex_Eye", data);
                }
            });
        }
    }
コード例 #2
0
    /// <summary>
    /// 修改嘴巴
    /// </summary>
    /// <param name="mouthId"></param>
    public void ChangeMouth(long mouthId)
    {
        this.characterData.mouthId = mouthId;
        CharacterInfoBean characterInfo = CreatureHandler.Instance.manager.GetCharacterInfoMouth(mouthId);

        if (characterInfo == null)
        {
            LogUtil.LogError($"查询嘴巴数据失败,没有ID为 {mouthId} 的嘴巴数据");
        }
        else
        {
            CreatureHandler.Instance.manager.GetCharacterMouthTex(characterInfo.model_name,
                                                                  (data) =>
            {
                if (data == null)
                {
                    LogUtil.LogError($"查询嘴巴贴图失败,没有名字为 {characterInfo.model_name} 的嘴巴贴图");
                }
                else
                {
                    headMat.SetTexture("Tex_Mouth", data);
                }
            });
        }
    }
コード例 #3
0
ファイル: UIMainCreate.cs プロジェクト: wobushiren79/ThaumAge
    /// <summary>
    /// 选择回调
    /// </summary>
    /// <param name="selectView"></param>
    /// <param name="position"></param>
    public void ChangeSelectPosition(SelectView selectView, int position)
    {
        CreatureCptCharacter character = GetCharacter();

        if (character == null)
        {
            LogUtil.LogError("没有找到Character组件");
            return;
        }
        if (selectView == ui_ViewSelectChange_Hair)
        {
            CharacterInfoBean characterInfo = listHairInfoData[position];
            character.characterSkin.ChangeHair(characterInfo.id);
        }
        else if (selectView == ui_ViewSelectChange_Eye)
        {
            CharacterInfoBean characterInfo = listEyeInfoData[position];
            character.characterSkin.ChangeEye(characterInfo.id);
        }
        else if (selectView == ui_ViewSelectChange_Mouth)
        {
            CharacterInfoBean characterInfo = listMouthInfoData[position];
            character.characterSkin.ChangeMouth(characterInfo.id);
        }
        else if (selectView == ui_ViewSelectChange_Clothes)
        {
            ItemsInfoBean itemsInfo = listClotehsInfoData[position];
            character.characterEquip.ChangeClothes(itemsInfo.id);
        }
    }
コード例 #4
0
    /// <summary>
    /// 获取角色嘴巴信息
    /// </summary>
    /// <param name="ids"></param>
    /// <returns></returns>
    public List <CharacterInfoBean> GetCharacterInfoMouth(List <long> ids)
    {
        List <CharacterInfoBean> listData = new List <CharacterInfoBean>();

        for (int i = 0; i < ids.Count; i++)
        {
            CharacterInfoBean itemData = GetCharacterInfoMouth(ids[i]);
            listData.Add(itemData);
        }
        return(listData);
    }
コード例 #5
0
    /// <summary>
    /// 获取名字列表
    /// </summary>
    /// <param name="listCharacterInfo"></param>
    /// <returns></returns>
    public static List <string> GetNameList(List <CharacterInfoBean> listCharacterInfo)
    {
        List <string> listName = new List <string>(listCharacterInfo.Count);

        for (int i = 0; i < listCharacterInfo.Count; i++)
        {
            CharacterInfoBean itemData = listCharacterInfo[i];
            listName.Add(itemData.name);
        }

        return(listName);
    }
コード例 #6
0
ファイル: UIMainCreate.cs プロジェクト: wobushiren79/ThaumAge
    /// <summary>
    /// 初始化数据
    /// </summary>
    public void InitData()
    {
        //设置回调
        ui_ViewSelectChange_Hair.SetCallBack(this);
        ui_ViewSelectChange_Eye.SetCallBack(this);
        ui_ViewSelectChange_Mouth.SetCallBack(this);
        ui_ViewSelectChange_Clothes.SetCallBack(this);

        ui_ViewSelectColorChange_Hair.SetCallBack(this);
        ui_ViewSelectColorChange_Skin.SetCallBack(this);

        //设置头发
        List <long> listHairId = GameDataHandler.Instance.GetBaseInfoListLong(1);

        listHairInfoData = CreatureHandler.Instance.manager.GetCharacterInfoHair(listHairId);
        List <string> listHairData = CharacterInfoBean.GetNameList(listHairInfoData);

        ui_ViewSelectChange_Hair.SetListData(listHairData);

        //设置眼睛
        List <long> listEyeId = GameDataHandler.Instance.GetBaseInfoListLong(2);

        listEyeInfoData = CreatureHandler.Instance.manager.GetCharacterInfoEye(listEyeId);
        List <string> listEyeData = CharacterInfoBean.GetNameList(listEyeInfoData);

        ui_ViewSelectChange_Eye.SetListData(listEyeData);

        //设置嘴巴
        List <long> listMouthId = GameDataHandler.Instance.GetBaseInfoListLong(3);

        listMouthInfoData = CreatureHandler.Instance.manager.GetCharacterInfoMouth(listMouthId);
        List <string> listMouthData = CharacterInfoBean.GetNameList(listMouthInfoData);

        ui_ViewSelectChange_Mouth.SetListData(listMouthData);

        //设置衣服
        List <long> listClothesId = GameDataHandler.Instance.GetBaseInfoListLong(4);

        listClotehsInfoData = ItemsHandler.Instance.manager.GetItemsInfoById(listClothesId);
        List <string> listClothesData = ItemsInfoBean.GetNameList(listClotehsInfoData);

        ui_ViewSelectChange_Clothes.SetListData(listClothesData);
    }
コード例 #7
0
    /// <summary>
    /// 改变性别
    /// </summary>
    /// <param name="sexType"></param>
    public void ChangeSex(SexTypeEnum sexType)
    {
        this.characterData.SetSex(sexType);
        long skinId = 0;

        switch (sexType)
        {
        case SexTypeEnum.Man:
            skinId = 2;
            break;

        case SexTypeEnum.Woman:
            skinId = 1;
            break;
        }

        CharacterInfoBean characterInfo = CreatureHandler.Instance.manager.GetCharacterInfoSkin(skinId);

        if (characterInfo == null)
        {
            LogUtil.LogError($"查询皮肤数据失败,没有ID为 {skinId} 的皮肤数据");
        }
        else
        {
            CreatureHandler.Instance.manager.GetCharacterSkinTex(characterInfo.model_name,
                                                                 (data) =>
            {
                if (data == null)
                {
                    LogUtil.LogError($"查询皮肤贴图失败,没有名字为 {characterInfo.model_name} 的皮肤贴图");
                }
                else
                {
                    bodyMat.mainTexture = data;
                }
            });
        }
    }
コード例 #8
0
    /// <summary>
    /// 改变发型
    /// </summary>
    /// <param name="hairId"></param>
    public void ChangeHair(long hairId)
    {
        this.characterData.hairId = hairId;
        CptUtil.RemoveChild(objHairContainer.transform);
        if (hairId == 0)
        {
            //没有头发
            return;
        }
        CharacterInfoBean characterInfo = CreatureHandler.Instance.manager.GetCharacterInfoHair(hairId);

        if (characterInfo == null)
        {
            LogUtil.LogError($"查询发型数据失败,没有ID为 {hairId} 的发型数据");
        }
        else
        {
            CreatureHandler.Instance.manager.GetCharacterHairModel(characterInfo.model_name,
                                                                   (data) =>
            {
                if (data == null)
                {
                    LogUtil.LogError($"查询发型失败,没有名字为 {characterInfo.model_name} 的发型模型");
                }
                else
                {
                    GameObject objHair = CreatureHandler.Instance.Instantiate(objHairContainer, data);
                    objHair.transform.localPosition = Vector3.zero;
                    //objHair.transform.localEulerAngles = Vector3.zero;
                    MeshRenderer hairMeshRebderer = objHair.GetComponent <MeshRenderer>();
                    hairMeshRebderer.material     = hairMatModel;
                    hairMat = hairMeshRebderer.material;
                }
            });
        }
    }
コード例 #9
0
 public bool UpdateMouthData(CharacterInfoBean data)
 {
     return(UpdateData(tableNameMouthForMain, data));
 }
コード例 #10
0
 /// <summary>
 /// 更新数据
 /// </summary>
 /// <param name="data"></param>
 /// <returns></returns>
 public bool UpdateHairData(CharacterInfoBean data)
 {
     return(UpdateData(tableNameHairForMain, data));
 }
コード例 #11
0
 public void SetCharacterInfoMouthData(CharacterInfoBean data)
 {
     serviceCharacterInfo.UpdateMouthData(data);
 }
コード例 #12
0
 public void SetCharacterInfoEyeData(CharacterInfoBean data)
 {
     serviceCharacterInfo.UpdateEyeData(data);
 }
コード例 #13
0
 /// <summary>
 /// 保存游戏数据
 /// </summary>
 /// <param name="data"></param>
 public void SetCharacterInfoHairData(CharacterInfoBean data)
 {
     serviceCharacterInfo.UpdateHairData(data);
 }