示例#1
0
    public void HandleCustomPlayerTexture()
    {
        CheckData();

        if (customCharacterData.isCustomType ||
            customCharacterData.isDefaultType)
        {
            //return;
        }
        else if (customCharacterDataCurrent.lastCustomTextureCode
                 != customCharacterData.presetTextureCode)
        {
            //if(AppColorPresets.Instance.CheckByCode(customTextureCode)) {

            //LogUtil.Log("HandleCustomPlayerColor:changing:" +
            //          " lastCustomColorCode:" + lastCustomTextureCode +
            //          " characterData.presetColorCode:" + characterData.presetTextureCode);

            AppContentAssetTexturePreset preset =
                AppContentAssetTexturePresets.Instance.GetByCode(
                    customCharacterData.presetTextureCode);

            if (preset != null)
            {
                // load from current code
                GameCustomController.UpdateTexturePresetObject(
                    gameObject, preset);
            }

            customCharacterDataCurrent.lastCustomTextureCode =
                customCharacterData.presetTextureCode;
            //}
        }
    }
示例#2
0
    public void ChangePreset(int index)
    {
        int countPresets =
            AppContentAssetTexturePresets.Instance.GetListByType(type).Count;


        if (index < -1)
        {
            index = countPresets - 1;
        }

        if (index > countPresets - 1)
        {
            index = -1;
        }

        currentIndex = index;

        if (index > -2 && index < countPresets)
        {
            if (initialProfileCustomItem == null)
            {
                initialProfileCustomItem = GameProfileCharacters.currentCustom;
            }

            currentProfileCustomItem = GameProfileCharacters.currentCustom;

            if (index == -1)
            {
                UIUtil.SetLabelValue(labelCurrentDisplayName, "My Previous Uniform");

                GameCustomController.UpdateTexturePresetObject(
                    initialProfileCustomItem, currentObject, type);
            }
            else
            {
                AppContentAssetTexturePreset preset =
                    AppContentAssetTexturePresets.Instance.GetListByType(type)[currentIndex];

                //AppColorPreset presetColor =
                //    AppColorPresets.Instance.GetListByType(type)[currentIndex];

                // change character to currently selected texture preset

                currentProfileCustomItem =
                    GameCustomController.UpdateTexturePresetObject(
                        currentProfileCustomItem, currentObject, preset);

                //profileCustomItem = GameCustomController.UpdateColorPresetObject(profileCustomItem, currentObject, presetColor);

                GameCustomController.SaveCustomItem(currentProfileCustomItem);

                UIUtil.SetLabelValue(labelCurrentDisplayName, preset.display_name);
            }
        }
    }
    // TEXTURE PRESETS

    // TODO use textures not preset...

    public virtual GameProfileCustomItem updateTexturePresetObject(
        GameProfileCustomItem profileCustomItem, GameObject go, string type)
    {
        string profilePreset = profileCustomItem.GetCustomTexturePreset();

        AppContentAssetTexturePreset preset = AppContentAssetTexturePresets.Instance.GetByCode(profilePreset);

        if (preset != null)
        {
            return(updateTexturePresetObject(profileCustomItem, go, preset));
        }

        return(profileCustomItem);
    }
示例#4
0
    public virtual GameProfileCustomItem updateTexturePresetObject(
        GameProfileCustomItem profileCustomItem, GameObject go, AppContentAssetTexturePreset preset)
    {
        if (preset == null)
        {
            return(null);
        }

        if (profileCustomItem.current_texture_preset == preset.code)
        {
            //return profileCustomItem;
        }

        //if (saveProfile)
        profileCustomItem.SetCustomTexturePreset(preset.code);

        if (go != null)
        {
            string path = ContentPaths.appCacheVersionSharedMaterials;

            //LogUtil.Log("UpdateObject:" + " path:" + path);

            foreach (AppContentAssetCustomItem customItem in
                     AppContentAssetCustomItems.Instance.GetListByType(preset.type))
            {
                //LogUtil.Log("UpdateObject:" + " customItem:" + customItem.code);

                foreach (AppContentAssetCustomItemProperty prop in customItem.properties)
                {
                    if (prop.IsTypeTexture())
                    {
                        string codeNew = prop.code + "-" + preset.code;

                        string pathMaterial = path + codeNew;

                        go.SetMaterialSwap(prop.code, pathMaterial);

                        //if (saveProfile)
                        profileCustomItem.SetCustomTexture(prop.code, codeNew);

                        //LogUtil.Log("UpdateObject:preset:" + " prop.code:" + prop.code);
                        //LogUtil.Log("UpdateObject:preset:" + " pathMaterial:" + pathMaterial);
                    }
                }
            }
        }

        return(profileCustomItem);
    }