コード例 #1
0
ファイル: ColorImageFields.cs プロジェクト: antfitch/HeroKit
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 4);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetIntegerField.BuildFieldA("Image ID:", actionParams, heroAction.actionFields[0]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetIntegerField.BuildFieldA("Speed:", actionParams, heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetColorValue.BuildField("New Color and Alpha:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetBoolValue.BuildField("Don't play next action until this action completes?", actionParams, heroAction.actionFields[3], true);
            SimpleLayout.EndVertical();
        }
コード例 #2
0
ファイル: SphereView.cs プロジェクト: unitycoder/GodComplex
        public unsafe void              RebuildSphereWithColor(GetColorValue _Delegate)
        {
            BitmapData LockedBitmap = m_Render.LockBits(new Rectangle(0, 0, WIDTH, HEIGHT), ImageLockMode.WriteOnly, PixelFormat.Format24bppRgb);

            for (int Y = 0; Y < HEIGHT; Y++)
            {
                float fDy = 1.0f - Y / (.5f * HEIGHT);

                byte *pScanline = (byte *)LockedBitmap.Scan0 + Y * LockedBitmap.Stride;

                for (int X = 0; X < WIDTH; X++)
                {
                    if (X < .5f * WIDTH)
                    {                           // Front sphere
                        float fDx        = (X - .25f * WIDTH) / (.25f * WIDTH);
                        float fSDistance = fDx * fDx + fDy * fDy;
                        if (fSDistance > 1.0f)
                        {                               // Put a black pixel
                            pScanline[3 * X + 0] = 32;
                            pScanline[3 * X + 1] = 32;
                            pScanline[3 * X + 2] = 32;
                            continue;
                        }

                        float fDz = (float)Math.Sqrt(1.0f - fSDistance);

                        Color Value = _Delegate(fDx, fDy, fDz);
                        pScanline[3 * X + 0] = Value.B;
                        pScanline[3 * X + 1] = Value.G;
                        pScanline[3 * X + 2] = Value.R;
                    }
                    else
                    {                           // Back sphere
                        float fDx        = (X - .75f * WIDTH) / (.25f * WIDTH);
                        float fSDistance = fDx * fDx + fDy * fDy;
                        if (fSDistance > 1.0f)
                        {                               // Put a black pixel
                            pScanline[3 * X + 0] = 32;
                            pScanline[3 * X + 1] = 32;
                            pScanline[3 * X + 2] = 32;
                            continue;
                        }

                        float fDz = -(float)Math.Sqrt(1.0f - fSDistance);

                        Color Value = _Delegate(fDx, fDy, fDz);
                        pScanline[3 * X + 0] = Value.B;
                        pScanline[3 * X + 1] = Value.G;
                        pScanline[3 * X + 2] = Value.R;
                    }
                }
            }

            m_Render.UnlockBits(LockedBitmap);
        }
コード例 #3
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 2);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetColorValue.BuildField("The color to use:", actionParams, heroAction.actionFields[0]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetIntegerField.BuildFieldA("Duration:", actionParams, heroAction.actionFields[1]);
            SimpleLayout.EndVertical();
        }
コード例 #4
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 5);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetSceneObjectValue.BuildField("text", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetColorValue.BuildField("The color to use:", actionParams, heroAction.actionFields[2]);
            GetIntegerField.BuildFieldA("Speed of the change:", actionParams, heroAction.actionFields[3]);
            GetBoolValue.BuildField("Don't play next action until this action completes?", actionParams, heroAction.actionFields[4], true);
            SimpleLayout.EndVertical();
        }
コード例 #5
0
ファイル: SphereView.cs プロジェクト: Patapom/GodComplex
        public unsafe void RebuildSphereWithColor( GetColorValue _Delegate )
        {
            BitmapData	LockedBitmap = m_Render.LockBits( new Rectangle( 0, 0, WIDTH, HEIGHT ), ImageLockMode.WriteOnly, PixelFormat.Format24bppRgb );

            for ( int Y=0; Y < HEIGHT; Y++ )
            {
                float	fDy = 1.0f - Y / (.5f * HEIGHT);

                byte*	pScanline = (byte*) LockedBitmap.Scan0 + Y * LockedBitmap.Stride;

                for ( int X=0; X < WIDTH; X++ )
                {
                    if ( X < .5f * WIDTH )
                    {	// Front sphere
                        float	fDx = (X - .25f * WIDTH) / (.25f * WIDTH);
                        float	fSDistance = fDx * fDx + fDy * fDy;
                        if ( fSDistance > 1.0f )
                        {	// Put a black pixel
                            pScanline[3*X+0] = 32;
                            pScanline[3*X+1] = 32;
                            pScanline[3*X+2] = 32;
                            continue;
                        }

                        float	fDz = (float) Math.Sqrt( 1.0f - fSDistance );

                        Color	Value = _Delegate( fDx, fDy, fDz );
                        pScanline[3*X+0] = Value.B;
                        pScanline[3*X+1] = Value.G;
                        pScanline[3*X+2] = Value.R;
                    }
                    else
                    {	// Back sphere
                        float	fDx = (X - .75f * WIDTH) / (.25f * WIDTH);
                        float	fSDistance = fDx * fDx + fDy * fDy;
                        if ( fSDistance > 1.0f )
                        {	// Put a black pixel
                            pScanline[3*X+0] = 32;
                            pScanline[3*X+1] = 32;
                            pScanline[3*X+2] = 32;
                            continue;
                        }

                        float	fDz = -(float) Math.Sqrt( 1.0f - fSDistance );

                        Color	Value = _Delegate( fDx, fDy, fDz );
                        pScanline[3*X+0] = Value.B;
                        pScanline[3*X+1] = Value.G;
                        pScanline[3*X+2] = Value.R;
                    }
                }
            }

            m_Render.UnlockBits( LockedBitmap );
        }
コード例 #6
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 24);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changePrintSettings = GetBoolValue.BuildField("Change print message settings?", actionParams, heroAction.actionFields[0], true);

            if (changePrintSettings)
            {
                bool printMessage = GetBoolValue.BuildField("Print message character by character?", actionParams, heroAction.actionFields[1], true);
                if (printMessage)
                {
                    GetSliderValue.BuildFieldB("Speed:", actionParams, heroAction.actionFields[2], 0, 100, true);
                }
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeAlignment = GetBoolValue.BuildField("Change alignment of message?", actionParams, heroAction.actionFields[3], true);

            if (changeAlignment)
            {
                string[] alignmentTypes = { "Top Left",    "Top Center",    "Top Right",
                                            "Middle Left", "Middle Center", "Middle Right",
                                            "Bottom Left", "Bottom Center", "Bottom Right", };
                GetDropDownField.BuildField("", actionParams, heroAction.actionFields[4], new GenericListField(alignmentTypes));
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeBackgroundSettings = GetBoolValue.BuildField("Change background alpha?", actionParams, heroAction.actionFields[5], true);

            if (changeBackgroundSettings)
            {
                GetSliderValue.BuildFieldB("", actionParams, heroAction.actionFields[6], 0, 100, true);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeBackgroundImage = GetBoolValue.BuildField("Change background image?", actionParams, heroAction.actionFields[7], true);

            if (changeBackgroundImage)
            {
                GetUnityObjectField.BuildFieldA <Sprite>("", actionParams, heroAction.actionFields[8]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeButtonImage = GetBoolValue.BuildField("Change button image?", actionParams, heroAction.actionFields[9], true);

            if (changeButtonImage)
            {
                GetUnityObjectField.BuildFieldA <Sprite>("", actionParams, heroAction.actionFields[10]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeButtonLayout = GetBoolValue.BuildField("Change button layout?", actionParams, heroAction.actionFields[11], true);

            if (changeButtonLayout)
            {
                string[] items = { "Horizontal", "Vertical" };
                GetDropDownField.BuildField("", actionParams, heroAction.actionFields[12], new GenericListField(items));
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeTextColor = GetBoolValue.BuildField("Change text body color?", actionParams, heroAction.actionFields[13], true);

            if (changeTextColor)
            {
                GetColorValue.BuildField("", actionParams, heroAction.actionFields[14]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeHeadingColor = GetBoolValue.BuildField("Change text heading color?", actionParams, heroAction.actionFields[15], true);

            if (changeHeadingColor)
            {
                GetColorValue.BuildField("", actionParams, heroAction.actionFields[16]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeButtonTextColor = GetBoolValue.BuildField("Change button text color?", actionParams, heroAction.actionFields[17], true);

            if (changeButtonTextColor)
            {
                GetColorValue.BuildField("", actionParams, heroAction.actionFields[18]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeButtonAlpha = GetBoolValue.BuildField("Change background button alpha?", actionParams, heroAction.actionFields[19], true);

            if (changeButtonAlpha)
            {
                GetSliderValue.BuildFieldB("", actionParams, heroAction.actionFields[20], 0, 100, true);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeButtonActiveColor = GetBoolValue.BuildField("Change selected button color?", actionParams, heroAction.actionFields[21], true);

            if (changeButtonActiveColor)
            {
                GetColorValue.BuildField("", actionParams, heroAction.actionFields[22]);
            }
            SimpleLayout.EndVertical();
        }