+++ /dev/null
-using System;\r
-using System.Collections.Generic;\r
-using System.Drawing;\r
-using System.Linq;\r
-using System.Text;\r
-using System.Threading.Tasks;\r
-using SharpDX;\r
-using FDK;\r
-using DTXMania.Coordinates;\r
-\r
-using Color = System.Drawing.Color;\r
-using Rectangle = System.Drawing.Rectangle;\r
-\r
-namespace DTXMania\r
-{\r
- class CAct演奏Lane : CActivity\r
- {\r
- private CTexture txLane;\r
-\r
- public override void OnManagedリソースの解放()\r
- {\r
- if (base.b活性化してる)\r
- {\r
- TextureFactory.tテクスチャの解放(ref txLane);\r
- base.OnManagedリソースの解放();\r
- }\r
- }\r
-\r
- public override void OnManagedリソースの作成()\r
- {\r
- if (base.b活性化してる)\r
- {\r
- using (Bitmap lanetex = new Bitmap(SampleFramework.GameWindowSize.Width, SampleFramework.GameWindowSize.Height))\r
- {\r
- using (Graphics g = Graphics.FromImage(lanetex))\r
- {\r
- using (Pen pen = new Pen(Brushes.White, 3f))\r
- {\r
- using (Pen grayPen = new Pen(Brushes.Gray, 1f))\r
- {\r
- using (Bitmap lanebg = new Bitmap(20, 20))\r
- {\r
- for (int y = 0; y < 20; ++y)\r
- {\r
- for (int x = 0; x < 20; ++x)\r
- {\r
- int p = (x / 5);\r
- int q = (y / 5);\r
-\r
- lanebg.SetPixel(x, y,\r
- (p + q) % 2 == 1 ? Color.FromArgb(CDTXMania.Instance.ConfigIni.nBGAlpha, 10, 10, 10) :\r
- Color.FromArgb(CDTXMania.Instance.ConfigIni.nBGAlpha, 20, 20, 20));\r
- }\r
- }\r
-\r
- Func<int, CRect, bool> drawer = (x, w) =>\r
- {\r
- using (TextureBrush tex = new TextureBrush(lanebg))\r
- {\r
- g.FillRectangle(tex, new Rectangle(x, 0, w.W, SampleFramework.GameWindowSize.Height));\r
- g.DrawLine(pen, x, 0, x, SampleFramework.GameWindowSize.Height);\r
- g.DrawLine(grayPen, x + 2, 0, x + 2, SampleFramework.GameWindowSize.Height);\r
- g.DrawLine(pen, x + w.W, 0, x + w.W, SampleFramework.GameWindowSize.Height);\r
- g.DrawLine(grayPen, x + w.W + 2, 0, x + w.W + 2, SampleFramework.GameWindowSize.Height);\r
- }\r
- return false;\r
- };\r
-\r
- if (CDTXMania.Instance.ConfigIni.bDrums有効 && CDTXMania.Instance.DTX.bチップがある[EPart.Drums])\r
- {\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.LC), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.CY]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.HH), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.HH]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.SD), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.SD]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.BD), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.BD]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.HT), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.HT]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.LT), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.LT]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.FT), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.FT]);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.CY), CDTXMania.Instance.Coordinates.ImgDrChip[EPad.CY]);\r
- }\r
- if (CDTXMania.Instance.ConfigIni.bGuitar有効)\r
- {\r
- if (CDTXMania.Instance.DTX.bチップがある[EPart.Guitar])\r
- {\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.GtR), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.GtG), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.GtB), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.GtW), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- }\r
- if (CDTXMania.Instance.DTX.bチップがある[EPart.Bass])\r
- {\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.BsR), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.BsG), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.BsB), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- drawer(CDTXMania.Instance.ConfigIni.GetLaneX(ELane.BsW), CDTXMania.Instance.Coordinates.ImgGtRGBButton);\r
- }\r
- }\r
- this.txLane = TextureFactory.tテクスチャの生成(lanetex, true);\r
- }\r
- }\r
- }\r
- }\r
- }\r
- base.OnManagedリソースの作成();\r
- }\r
- }\r
-\r
- public override int On進行描画()\r
- {\r
- if (b活性化してる && CDTXMania.Instance.ConfigIni.eDark == EDark.Off)\r
- {\r
- txLane.t2D描画(CDTXMania.Instance.Device, 0, 0);\r
- return base.On進行描画();\r
- }\r
- return 0;\r
- }\r
- }\r
-}\r