Esempio n. 1
0
    private void AdditionalColorSet(Library_SpriteStudio6.Control.AdditionalColor additionalColor)
    {
        AdditionalColor = additionalColor;

        if ((null != DataAnimation) && (null != TableControlParts))
        {
            int   count;
            int   indexParts;
            int[] tableIndexParts = null;

            /* Set child-"Instance"s */
            tableIndexParts = DataAnimation.CatalogParts.TableIDPartsInstance;
            if (null != tableIndexParts)
            {
                count = tableIndexParts.Length;
                for (int i = 0; i < count; i++)
                {
                    indexParts = tableIndexParts[i];
                    if (null != TableControlParts[indexParts].InstanceRootUnderControl)
                    {
                        TableControlParts[indexParts].InstanceRootUnderControl.AdditionalColorSet(additionalColor);
                    }
                }
            }

            /* Set child-"Effect"s */
            tableIndexParts = DataAnimation.CatalogParts.TableIDPartsEffect;
            if (null != tableIndexParts)
            {
                count = tableIndexParts.Length;
                for (int i = 0; i < count; i++)
                {
                    indexParts = tableIndexParts[i];
                    if (null != TableControlParts[indexParts].InstanceRootEffectUnderControl)
                    {
                        TableControlParts[indexParts].InstanceRootEffectUnderControl.AdditionalColor = additionalColor;
                    }
                }
            }
        }
    }
Esempio n. 2
0
    /* ******************************************************** */
    //! Create "AdditionalColor" Parameter

    /*!
     * @param	flagInvolveChildren
     *      true == Children are set same buffer.<br>
     *      false == only oneself.<br>
     *      default: true
     * @retval	Return-Value
     *      "AdditionalColor" Setting Buffer
     *
     * Get(Create) the Parameter-Buffer of "AdditionalColor" for instances of this class.<br>
     * <br>
     * Caution that "Additional-Color" affects differs for each animation-object.<br>
     * <br>
     * - Script_SpriteStudio 6_Root (Animation)<br>
     * Overwrite "Parts Color" attribute state for all sprite data used in animation. (No effect to "Mask")<br>
     * <br>
     * - Script_SpriteStudio6_RootEffect (Effect)<br>
     * Execute processing equivalent to animation's "Parts Color" attribute for all particles' vertex-color used in "Effect".<br>
     * (The result color is "particles' vertex-color processed with AdditionalColor" * "pixel of particle")<br>
     * <br>
     * When continue using AdditionalColor, need not to call this function more than once.<br>
     * <br>
     * The detail of how to set, refer to the commentary of "Library_SpriteStudio6.Control.AdditionalColor".<br>
     */
    public Library_SpriteStudio6.Control.AdditionalColor AdditionalColorCreate(bool flagInvolveChildren = true)
    {
        Library_SpriteStudio6.Control.AdditionalColor additionalColor = AdditionalColor;
        if (null == additionalColor)
        {
            /* Create Parameter-instance */
            additionalColor = new Library_SpriteStudio6.Control.AdditionalColor();
            if (null == additionalColor)
            {                   /* Error */
                return(null);
            }
            additionalColor.BootUp();

            if (true == flagInvolveChildren)
            {
                AdditionalColorSet(additionalColor);
            }
            else
            {
                AdditionalColor = additionalColor;
            }
        }
        return(additionalColor);
    }
Esempio n. 3
0
    void Start()
    {
        /* Initialize WorkArea */
        FlagPaddingZeroPrevious = !FlagPaddingZero;	/* Since this value can not be set with initializer... */
        FlagProportionalPrevious = !FlagProportional;
        FlagChangeColorPrevious = !FlagChangeColorPrevious;
        FlagVibrationPrevious = !FlagVibrationPrevious;

        /* Get Animation Control Script-Component */
        GameObject gameObjectBase = GameObjectRoot;
        if(null == gameObjectBase)
        {
            gameObjectBase = gameObject;
        }
        /* MEMO: "Script_SpriteStudio6_Root.Parts.RootGet" is function for finding "Script_SpriteStudio6_Root" in GameObjects below.       */
        /*       (However, "Instance" is excluded. Find only "Highest-Root"-parts)                                                         */
        /*       You can find "shallowest hierarchy"-one from direct-children, but not guarantee the shallowest when deeper than children. */
        /*       Because wasteful to search every time access, recommend to cache.                                                         */
        ScriptRoot = Script_SpriteStudio6_Root.Parts.RootGet(gameObjectBase);
        if(null == ScriptRoot)
        {	/* Error */
            return;
        }

        /* Set UserData callback function */
        /* MEMO: Set up function to handle UserData callback.                                     */
        /*       To avoid receiving UserData callback, set "ScriptRoot.FunctionUserData" to null. */
        ScriptRoot.FunctionUserData = FunctionCallBackUserData;

        /* Get Animation Index */
        /* MEMO: Collect animation-indexs ahead of time.                 */
        /*       Every change animation, also you can get index by name. */
        /*       But wasteful to search each time.                       */
        TableIndexAnimation = AnimationIndexGet();
        if(null == TableIndexAnimation)
        {
            return;
        }

        /* Animation Start */
        KindAnimationPlay = (true == FlagVibration) ? KindAnimation.ANIMATION_VIBRATION : KindAnimation.ANIMATION_NOMOVE;
        AnimationPlay();

        /* Get Digit's Animation Parts */
        TablePartsDigit = PartsInformationGet();
        if(null == TablePartsDigit)
        {
            return;
        }
        /* MEMO: When position refresh occurs at animation initialize, refresh is prohibited                  */
        /*        to prevent overwriting position of digits' animation parts set at Update() with refreshing. */
        int countPartsDigit = TablePartsDigit.Length;
        int idParts;
        for(int i=0; i<countPartsDigit; i++)
        {
            idParts = TablePartsDigit[i].IDParts;
            if(0 <= idParts)
            {
                ScriptRoot.RefreshCancelTransform(idParts, true, false, false);
            }
        }

        /* Get Cell Information */
        TableCellCharacter = CellInformationGet();
        if(null == TableCellCharacter)
        {
            return;
        }

        /* Create Additional-Color Parameter */
        /* MEMO: Call "AdditionalColorRelease" when created parameter with "AdditionalColorCreate" are no longer used. */
        AdditionalColor = ScriptRoot.AdditionalColorCreate();

        /* Initialize Complete */
        FlagInitialized = true;
    }