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(); }
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); }
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(); }
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(); }
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 ); }
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(); }