private void DrawWaterBounds(DevicePanel d, ObjectDrawing.EditorAnimation editorAnim, int x, int y, int Transparency, int animID, int type, int widthPixels, int heightPixels, int heightX, int r, int g, int b, bool Selected) { //Draw Icon editorAnim = LoadAnimation("EditorIcons2", d, 0, 8); DrawTexturePivotNormal(d, editorAnim, editorAnim.RequestedAnimID, editorAnim.RequestedFrameID, x, y, Transparency); if (widthPixels != 0 && heightPixels != 0 && Selected) { int x1 = x + widthPixels / -2; int x2 = x + widthPixels / 2 - 1; int y1 = y + heightPixels / -2; int y2 = y + heightPixels / 2 - 1; if (Methods.Solution.SolutionState.Main.ShowWaterLevel) { if (!ManiacEditor.Properties.Settings.MyPerformance.UseSimplifedWaterRendering) { if (Methods.Solution.SolutionState.Main.AlwaysShowWaterLevel) { int startX = (Methods.Solution.SolutionState.Main.SizeWaterLevelwithBounds ? x1 : 0); int endX = (Methods.Solution.SolutionState.Main.SizeWaterLevelwithBounds ? x2 : Methods.Solution.CurrentSolution.SceneWidth); editorAnim = LoadAnimation("Global/Water.bin", d, 0, 0); d.DrawRectangle(startX, heightX, endX, Methods.Solution.CurrentSolution.SceneHeight, Methods.Solution.SolutionState.Main.waterColor); d.DrawLine(startX, heightX, endX, heightX, SystemColors.White); for (int i = startX; i < endX; i = i + 32) { DrawTexturePivotNormal(d, editorAnim, editorAnim.RequestedAnimID, editorAnim.RequestedFrameID, i, heightX, Transparency); } } } else { if (Methods.Solution.SolutionState.Main.AlwaysShowWaterLevel || Selected) { int startX = (Methods.Solution.SolutionState.Main.SizeWaterLevelwithBounds ? x1 : 0); int endX = (Methods.Solution.SolutionState.Main.SizeWaterLevelwithBounds ? x2 : Methods.Solution.CurrentSolution.SceneWidth); d.DrawRectangle(startX, heightX, endX, Methods.Solution.CurrentSolution.SceneHeight, Methods.Solution.SolutionState.Main.waterColor); d.DrawLine(startX, heightX, endX, heightX, SystemColors.White); } } } DrawBounds2(d, x2, y2, x1, y1, Transparency, SystemColors.Aqua, SystemColors.Transparent); } }
private void DrawGHZWater(DevicePanel d, ObjectDrawing.EditorAnimation editorAnim, int x, int y, int Transparency, int animID, int type, int widthPixels, int heightPixels, int heightX, int r, int g, int b, bool Selected) { //Draw Icon editorAnim = LoadAnimation("EditorIcons2", d, 0, 8); DrawTexturePivotNormal(d, editorAnim, editorAnim.RequestedAnimID, editorAnim.RequestedFrameID, x, y, Transparency); if (widthPixels != 0 && heightPixels != 0) { int x1 = x + widthPixels / -2; int x2 = x + widthPixels / 2 - 1; int y1 = y + heightPixels / -2; int y2 = y + heightPixels / 2 - 1; if (Selected) { //DrawWaterTileMap(d, x, y, x1, y1, widthPixels, heightPixels, GetWaterColors(255, r, g, b), Transparency); d.DrawRectangle(x1, y1, x2, y2, GetWaterColors(255, r, g, b)); if (TilesNeedUpdate) { TilesNeedUpdate = false; } } DrawBounds2(d, x2, y2, x1, y1, Transparency, SystemColors.Aqua, SystemColors.Transparent); } SystemColors GetWaterColors(int _a, int _r, int _g, int _b) { int red = _r; int green = _g; int blue = _b; if (red > 255) { red = 255; } if (blue > 255) { blue = 255; } if (green > 255) { green = 255; } if (red < 0) { red = 0; } if (blue < 0) { blue = 0; } if (green < 0) { green = 0; } return(SystemColors.FromArgb(_a, red, green, blue)); } }
private void DrawBigBubble(DevicePanel d, ObjectDrawing.EditorAnimation editorAnim, int x, int y, int Transparency, int animID, int type) { editorAnim = LoadAnimation("HCZ/BigBubble.bin", d, 7, 0); DrawTexturePivotNormal(d, editorAnim, editorAnim.RequestedAnimID, editorAnim.RequestedFrameID, x, y, Transparency); }
private void DrawWaterBase(DevicePanel d, ObjectDrawing.EditorAnimation editorAnim, int x, int y, int Transparency, int animID, int type) { DrawTexturePivotNormal(d, editorAnim, editorAnim.RequestedAnimID, editorAnim.RequestedFrameID, x, y, Transparency); }